1111from rest_framework .request import Request
1212from rest_framework .views import APIView
1313
14- from chat .api .chat_api import HistoricalConversationAPI , PageHistoricalConversationAPI
14+ from chat .api .chat_api import HistoricalConversationAPI , PageHistoricalConversationAPI , \
15+ PageHistoricalConversationRecordAPI , HistoricalConversationRecordAPI
1516from chat .api .vote_api import VoteAPI
16- from chat .serializers .chat_record import VoteSerializer , ChatRecordSerializer
17+ from chat .serializers .chat_record import VoteSerializer , HistoricalConversationSerializer , \
18+ HistoricalConversationRecordSerializer
1719from common import result
1820from common .auth import TokenAuth
1921
@@ -51,7 +53,7 @@ class HistoricalConversationView(APIView):
5153 tags = [_ ('Chat' )] # type: ignore
5254 )
5355 def get (self , request : Request ):
54- return result .success (ChatRecordSerializer (
56+ return result .success (HistoricalConversationSerializer (
5557 data = {
5658 'application_id' : request .auth .application_id ,
5759 'chat_user_id' : request .auth .chat_user_id ,
@@ -70,8 +72,49 @@ class PageView(APIView):
7072 tags = [_ ('Chat' )] # type: ignore
7173 )
7274 def get (self , request : Request , current_page : int , page_size : int ):
73- return result .success (ChatRecordSerializer (
75+ return result .success (HistoricalConversationSerializer (
7476 data = {
7577 'application_id' : request .auth .application_id ,
7678 'chat_user_id' : request .auth .chat_user_id ,
7779 }).page (current_page , page_size ))
80+
81+
82+ class HistoricalConversationRecordView (APIView ):
83+ authentication_classes = [TokenAuth ]
84+
85+ @extend_schema (
86+ methods = ['GET' ],
87+ description = _ ("Get historical conversation records" ),
88+ summary = _ ("Get historical conversation records" ),
89+ operation_id = _ ("Get historical conversation records" ), # type: ignore
90+ parameters = HistoricalConversationRecordAPI .get_parameters (),
91+ responses = HistoricalConversationRecordAPI .get_response (),
92+ tags = [_ ('Chat' )] # type: ignore
93+ )
94+ def get (self , request : Request , chat_id : str ):
95+ return result .success (HistoricalConversationRecordSerializer (
96+ data = {
97+ 'chat_id' : chat_id ,
98+ 'application_id' : request .auth .application_id ,
99+ 'chat_user_id' : request .auth .chat_user_id ,
100+ }).list ())
101+
102+ class PageView (APIView ):
103+ authentication_classes = [TokenAuth ]
104+
105+ @extend_schema (
106+ methods = ['GET' ],
107+ description = _ ("Get historical conversation records by page " ),
108+ summary = _ ("Get historical conversation records by page" ),
109+ operation_id = _ ("Get historical conversation records by page" ), # type: ignore
110+ parameters = PageHistoricalConversationRecordAPI .get_parameters (),
111+ responses = PageHistoricalConversationRecordAPI .get_response (),
112+ tags = [_ ('Chat' )] # type: ignore
113+ )
114+ def get (self , request : Request , chat_id : str , current_page : int , page_size : int ):
115+ return result .success (HistoricalConversationRecordSerializer (
116+ data = {
117+ 'chat_id' : chat_id ,
118+ 'application_id' : request .auth .application_id ,
119+ 'chat_user_id' : request .auth .chat_user_id ,
120+ }).page (current_page , page_size ))
0 commit comments