Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
elleai
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ai-tech
E
ellehuis-group
backend
elleai
Commits
94708e1f
Commit
94708e1f
authored
Oct 17, 2024
by
陈立彬
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
接口规范&接口调整
parent
224b181a
Changes
38
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
38 changed files
with
661 additions
and
317 deletions
+661
-317
ExamineQaRequestDto.java
...e/elleai/application/dto/request/ExamineQaRequestDto.java
+2
-2
ExamineRecordMobileRequestDto.java
...pplication/dto/request/ExamineRecordMobileRequestDto.java
+24
-0
ExamineRecordRequestDto.java
...leai/application/dto/request/ExamineRecordRequestDto.java
+2
-2
ExamineRequestDto.java
...eze/elleai/application/dto/request/ExamineRequestDto.java
+2
-2
ExamineSceneMobileRequestDto.java
...application/dto/request/ExamineSceneMobileRequestDto.java
+19
-0
ExamineSceneRequestDto.java
...lleai/application/dto/request/ExamineSceneRequestDto.java
+2
-2
ExamineUpdateResultDto.java
...lleai/application/dto/request/ExamineUpdateResultDto.java
+4
-7
QaAssistantRequestDto.java
...elleai/application/dto/request/QaAssistantRequestDto.java
+2
-5
StartExamineMobileRequestDto.java
...application/dto/request/StartExamineMobileRequestDto.java
+20
-0
SubmitAnswerMobileRequestDto.java
...application/dto/request/SubmitAnswerMobileRequestDto.java
+28
-0
SwitchAssistantMobileRequestDto.java
...lication/dto/request/SwitchAssistantMobileRequestDto.java
+15
-0
UserQaHistoryMobileRequestDto.java
...pplication/dto/request/UserQaHistoryMobileRequestDto.java
+34
-0
UserQaHistoryRequestDto.java
...leai/application/dto/request/UserQaHistoryRequestDto.java
+0
-15
UserQaMobileRequestDto.java
...lleai/application/dto/request/UserQaMobileRequestDto.java
+19
-0
UserQaRequestDto.java
...eeze/elleai/application/dto/request/UserQaRequestDto.java
+2
-2
CompleteExamineMobileDto.java
...ai/application/dto/response/CompleteExamineMobileDto.java
+15
-0
ExamineFinalResultDto.java
...lleai/application/dto/response/ExamineFinalResultDto.java
+4
-0
ExamineMobileDto.java
...eze/elleai/application/dto/response/ExamineMobileDto.java
+0
-28
ExamineRecordMobileDto.java
...leai/application/dto/response/ExamineRecordMobileDto.java
+1
-1
ExamineSceneCategoryMobileDto.java
...plication/dto/response/ExamineSceneCategoryMobileDto.java
+28
-0
ExamineSceneMobileDto.java
...lleai/application/dto/response/ExamineSceneMobileDto.java
+28
-0
ExamineStartResultDto.java
...lleai/application/dto/response/ExamineStartResultDto.java
+28
-0
NewCompletionResultMobileDto.java
...pplication/dto/response/NewCompletionResultMobileDto.java
+15
-0
UserAskResultMobileDto.java
...leai/application/dto/response/UserAskResultMobileDto.java
+21
-0
UserChatCompletionDto.java
...lleai/application/dto/response/UserChatCompletionDto.java
+35
-0
UserChatCompletionHistoryMobileDto.java
...tion/dto/response/UserChatCompletionHistoryMobileDto.java
+41
-0
UserChatCompletionMobileDto.java
...application/dto/response/UserChatCompletionMobileDto.java
+28
-0
AppChatCompletionService.java
.../elleai/application/service/AppChatCompletionService.java
+44
-51
AppExamineService.java
.../breeze/elleai/application/service/AppExamineService.java
+32
-34
ChatCompletionMobileController.java
...leai/controller/front/ChatCompletionMobileController.java
+28
-18
ExamineMobileController.java
...eeze/elleai/controller/front/ExamineMobileController.java
+25
-146
ExamineRecordResponseModel.java
...n/sparring/model/response/ExamineRecordResponseModel.java
+15
-0
UserChatCompletionResponseModel.java
...rring/model/response/UserChatCompletionResponseModel.java
+25
-0
ChatCompletionServiceImpl.java
...ai/domain/sparring/service/ChatCompletionServiceImpl.java
+1
-0
UserChatCompletionEntity.java
.../breeze/elleai/infra/entity/UserChatCompletionEntity.java
+25
-0
UserExamineRecordEntity.java
...n/breeze/elleai/infra/entity/UserExamineRecordEntity.java
+15
-0
UserChatCompletionTableDef.java
...elleai/infra/entity/table/UserChatCompletionTableDef.java
+16
-1
UserExamineRecordTableDef.java
.../elleai/infra/entity/table/UserExamineRecordTableDef.java
+16
-1
No files found.
src/main/java/cn/breeze/elleai/application/dto/request/ExamineQaRequestDto.java
View file @
94708e1f
...
...
@@ -11,11 +11,11 @@ public class ExamineQaRequestDto implements Serializable {
@Schema
(
description
=
"页码"
)
@JsonProperty
(
"page_no"
)
private
Integer
pageNo
;
private
Integer
pageNo
=
1
;
@Schema
(
description
=
"分页数量"
)
@JsonProperty
(
"page_size"
)
private
Integer
pageSize
;
private
Integer
pageSize
=
10
;
@Schema
(
description
=
"题目名称"
)
private
String
name
;
...
...
src/main/java/cn/breeze/elleai/application/dto/request/ExamineRecordMobileRequestDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
request
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.Date
;
@Data
public
class
ExamineRecordMobileRequestDto
implements
Serializable
{
@Schema
(
description
=
"页码"
)
@JsonProperty
(
"page_no"
)
private
Integer
pageNo
=
1
;
@Schema
(
description
=
"分页数量"
)
@JsonProperty
(
"page_size"
)
private
Integer
pageSize
=
10
;
@Schema
(
description
=
"对练模式(0练习 1对练)"
)
@JsonProperty
(
"examine_mode"
)
private
Integer
examineMode
;
}
src/main/java/cn/breeze/elleai/application/dto/request/ExamineRecordRequestDto.java
View file @
94708e1f
...
...
@@ -12,11 +12,11 @@ public class ExamineRecordRequestDto implements Serializable {
@Schema
(
description
=
"页码"
)
@JsonProperty
(
"page_no"
)
private
Integer
pageNo
;
private
Integer
pageNo
=
1
;
@Schema
(
description
=
"分页数量"
)
@JsonProperty
(
"page_size"
)
private
Integer
pageSize
;
private
Integer
pageSize
=
10
;
@Schema
(
description
=
"用户ID"
)
@JsonProperty
(
"user_id"
)
...
...
src/main/java/cn/breeze/elleai/application/dto/request/ExamineRequestDto.java
View file @
94708e1f
...
...
@@ -11,11 +11,11 @@ public class ExamineRequestDto implements Serializable {
@Schema
(
description
=
"页码"
)
@JsonProperty
(
"page_no"
)
private
Integer
pageNo
;
private
Integer
pageNo
=
1
;
@Schema
(
description
=
"分页数量"
)
@JsonProperty
(
"page_size"
)
private
Integer
pageSize
;
private
Integer
pageSize
=
10
;
@Schema
(
description
=
"对练名称"
)
private
String
name
;
...
...
src/main/java/cn/breeze/elleai/application/dto/request/ExamineSceneMobileRequestDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
request
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
ExamineSceneMobileRequestDto
implements
Serializable
{
@Schema
(
description
=
"页码"
)
@JsonProperty
(
"page_no"
)
private
Integer
pageNo
=
1
;
@Schema
(
description
=
"分页数量"
)
@JsonProperty
(
"page_size"
)
private
Integer
pageSize
=
10
;
}
src/main/java/cn/breeze/elleai/application/dto/request/ExamineSceneRequestDto.java
View file @
94708e1f
...
...
@@ -12,11 +12,11 @@ public class ExamineSceneRequestDto implements Serializable {
@Schema
(
description
=
"页码"
)
@JsonProperty
(
"page_no"
)
private
Integer
pageNo
;
private
Integer
pageNo
=
1
;
@Schema
(
description
=
"分页数量"
)
@JsonProperty
(
"page_size"
)
private
Integer
pageSize
;
private
Integer
pageSize
=
10
;
@Schema
(
description
=
"场景名称"
)
private
String
name
;
...
...
src/main/java/cn/breeze/elleai/application/dto/request/ExamineUpdateResultDto.java
View file @
94708e1f
...
...
@@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
java.io.Serializable
;
import
java.util.Date
;
...
...
@@ -16,11 +17,7 @@ public class ExamineUpdateResultDto implements Serializable {
@JsonProperty
(
"examine_id"
)
private
Integer
examineId
;
@Schema
(
description
=
"用户ID"
)
@JsonProperty
(
"user_id"
)
private
String
userId
;
@Schema
(
description
=
"考试总点评"
)
@JsonProperty
(
"exam_criteria"
)
private
String
examCriteria
;
@Schema
(
description
=
"考试流水号"
)
@JsonProperty
(
"business_no"
)
String
businessNo
;
}
src/main/java/cn/breeze/elleai/application/dto/request/QaAssistantRequestDto.java
View file @
94708e1f
...
...
@@ -11,13 +11,10 @@ public class QaAssistantRequestDto implements Serializable {
@Schema
(
description
=
"页码"
)
@JsonProperty
(
"page_no"
)
private
Integer
pageNo
;
private
Integer
pageNo
=
1
;
@Schema
(
description
=
"分页数量"
)
@JsonProperty
(
"page_size"
)
private
Integer
pageSize
;
@Schema
(
description
=
"助手名称"
)
private
String
name
;
private
Integer
pageSize
=
10
;
}
src/main/java/cn/breeze/elleai/application/dto/request/StartExamineMobileRequestDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
request
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
java.io.Serializable
;
@Data
public
class
StartExamineMobileRequestDto
implements
Serializable
{
@Schema
(
description
=
"对练ID"
)
@JsonProperty
(
"examine_id"
)
private
Integer
examineId
;
@Schema
(
description
=
"对练模式(0练习 1对练)"
)
@JsonProperty
(
"examine_mode"
)
private
Integer
examineMode
;
}
src/main/java/cn/breeze/elleai/application/dto/request/SubmitAnswerMobileRequestDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
request
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
java.io.Serializable
;
@Data
public
class
SubmitAnswerMobileRequestDto
implements
Serializable
{
@Schema
(
description
=
"对练ID"
)
@JsonProperty
(
"examine_id"
)
private
Integer
examineId
;
@Schema
(
description
=
"考试流水号,答题、结束考试都需要传此参数"
)
@JsonProperty
(
"business_no"
)
private
String
businessNo
;
@Schema
(
description
=
"题目ID"
)
@JsonProperty
(
"question_id"
)
private
Integer
questionId
;
@Schema
(
description
=
"用户答案"
)
@JsonProperty
(
"answer"
)
private
String
answer
;
}
src/main/java/cn/breeze/elleai/application/dto/request/SwitchAssistantMobileRequestDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
request
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
SwitchAssistantMobileRequestDto
implements
Serializable
{
@Schema
(
description
=
"助手ID"
)
@JsonProperty
(
"assistant_id"
)
private
Integer
assistantId
;
}
src/main/java/cn/breeze/elleai/application/dto/request/UserQaHistoryMobileRequestDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
request
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
UserQaHistoryMobileRequestDto
implements
Serializable
{
@Schema
(
description
=
"页码"
)
@JsonProperty
(
"page_no"
)
private
Integer
pageNo
;
@Schema
(
description
=
"分页数量"
)
@JsonProperty
(
"page_size"
)
private
Integer
pageSize
;
@Schema
(
description
=
"用户ID"
)
@JsonProperty
(
"user_id"
)
private
String
userId
;
@Schema
(
description
=
"会话ID"
)
@JsonProperty
(
"session_id"
)
private
String
sessionId
;
@Schema
(
description
=
"内容"
)
private
String
content
;
@Schema
(
description
=
"会话记录ID"
)
@JsonProperty
(
"chat_completion_id"
)
private
Integer
chatCompletionId
;
}
src/main/java/cn/breeze/elleai/application/dto/request/UserQaHistoryRequestDto.java
View file @
94708e1f
...
...
@@ -16,19 +16,4 @@ public class UserQaHistoryRequestDto implements Serializable {
@Schema
(
description
=
"分页数量"
)
@JsonProperty
(
"page_size"
)
private
Integer
pageSize
;
@Schema
(
description
=
"用户ID"
)
@JsonProperty
(
"user_id"
)
private
String
userId
;
@Schema
(
description
=
"会话ID"
)
@JsonProperty
(
"session_id"
)
private
String
sessionId
;
@Schema
(
description
=
"内容"
)
private
String
content
;
@Schema
(
description
=
"会话记录ID"
)
@JsonProperty
(
"chat_completion_id"
)
private
Integer
chatCompletionId
;
}
src/main/java/cn/breeze/elleai/application/dto/request/UserQaMobileRequestDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
request
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
UserQaMobileRequestDto
implements
Serializable
{
@Schema
(
description
=
"会话ID,首次提问没有则不传,提问后接口返回会话ID,则后续提问都需要传"
)
@JsonProperty
(
"chat_completion_id"
)
private
Integer
chatCompletionId
;
@Schema
(
description
=
"提问内容"
)
@JsonProperty
(
"content"
)
private
String
content
;
}
src/main/java/cn/breeze/elleai/application/dto/request/UserQaRequestDto.java
View file @
94708e1f
...
...
@@ -11,11 +11,11 @@ public class UserQaRequestDto implements Serializable {
@Schema
(
description
=
"页码"
)
@JsonProperty
(
"page_no"
)
private
Integer
pageNo
;
private
Integer
pageNo
=
1
;
@Schema
(
description
=
"分页数量"
)
@JsonProperty
(
"page_size"
)
private
Integer
pageSize
;
private
Integer
pageSize
=
10
;
@Schema
(
description
=
"用户ID"
)
@JsonProperty
(
"user_id"
)
...
...
src/main/java/cn/breeze/elleai/application/dto/response/CompleteExamineMobileDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
response
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
CompleteExamineMobileDto
implements
Serializable
{
@Schema
(
description
=
"考试记录ID"
)
@JsonProperty
(
"record_id"
)
private
Integer
recordId
;
}
src/main/java/cn/breeze/elleai/application/dto/response/ExamineFinalResultDto.java
View file @
94708e1f
...
...
@@ -18,6 +18,10 @@ public class ExamineFinalResultDto implements Serializable {
@JsonProperty
(
"total_score"
)
private
Double
totalScore
;
@Schema
(
description
=
"考试总点评"
)
@JsonProperty
(
"exam_criteria"
)
private
String
examCriteria
;
@Schema
(
description
=
"答题数量"
)
@JsonProperty
(
"answered_num"
)
private
Integer
answeredNum
;
...
...
src/main/java/cn/breeze/elleai/application/dto/response/ExamineMobileDto.java
View file @
94708e1f
...
...
@@ -30,34 +30,6 @@ public class ExamineMobileDto implements Serializable {
@Schema
(
description
=
"海报图"
)
private
String
poster
;
/**
* 对练场景ID
*/
@Schema
(
description
=
"对练场景ID"
)
@JsonProperty
(
"scene_id"
)
private
Integer
sceneId
;
/**
* 对练分类ID
*/
@Schema
(
description
=
"对练分类ID"
)
@JsonProperty
(
"category_id"
)
private
Integer
categoryId
;
/**
* 开始时间
*/
@Schema
(
description
=
"对练开始时间"
)
@JsonProperty
(
"start_time"
)
private
Long
startTime
;
/**
* 结束时间
*/
@Schema
(
description
=
"对练结束时间"
)
@JsonProperty
(
"end_time"
)
private
Long
endTime
;
/**
* 题目数量
*/
...
...
src/main/java/cn/breeze/elleai/application/dto/response/ExamineRecordMobileDto.java
View file @
94708e1f
...
...
@@ -61,7 +61,7 @@ public class ExamineRecordMobileDto implements Serializable {
/**
* 综合评分
*/
@Schema
(
description
=
"
用户ID
"
)
@Schema
(
description
=
"
综合评分
"
)
@JsonProperty
(
"overall_score"
)
private
Float
overallScore
;
...
...
src/main/java/cn/breeze/elleai/application/dto/response/ExamineSceneCategoryMobileDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
response
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.Date
;
@Data
public
class
ExamineSceneCategoryMobileDto
implements
Serializable
{
@Schema
(
description
=
"场景分类ID"
)
private
Integer
id
;
/**
* 分类名称
*/
@Schema
(
description
=
"场景分类名称"
)
private
String
name
;
/**
* 分类描述
*/
@Schema
(
description
=
"场景分类描述"
)
private
String
description
;
}
src/main/java/cn/breeze/elleai/application/dto/response/ExamineSceneMobileDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
response
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.Date
;
@Data
public
class
ExamineSceneMobileDto
implements
Serializable
{
@Schema
(
description
=
"场景ID"
)
private
Integer
id
;
/**
* 场景名称
*/
@Schema
(
description
=
"场景名称"
)
private
String
name
;
/**
* 场景描述
*/
@Schema
(
description
=
"场景描述"
)
private
String
description
;
}
src/main/java/cn/breeze/elleai/application/dto/response/ExamineStartResultDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
response
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
ExamineStartResultDto
implements
Serializable
{
@Schema
(
description
=
"考试流水号,答题、结束考试都需要传此参数"
)
@JsonProperty
(
"business_no"
)
private
String
businessNo
;
@Schema
(
description
=
"题目ID"
)
@JsonProperty
(
"question_id"
)
private
Integer
questionId
;
@Schema
(
description
=
"问题"
)
private
String
question
;
@Schema
(
description
=
"标准答案"
)
private
String
answer
;
@Schema
(
description
=
"是否有下一题"
)
private
boolean
next
;
}
src/main/java/cn/breeze/elleai/application/dto/response/NewCompletionResultMobileDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
response
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
NewCompletionResultMobileDto
implements
Serializable
{
@Schema
(
description
=
"新会话ID"
)
@JsonProperty
(
"chat_completion_id"
)
private
Integer
chatCompletionId
;
}
src/main/java/cn/breeze/elleai/application/dto/response/UserAskResultMobileDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
response
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.Date
;
@Data
public
class
UserAskResultMobileDto
implements
Serializable
{
@Schema
(
description
=
"会话记录ID,后续用户提问需传此ID"
)
@JsonProperty
(
"chat_completion_id"
)
private
Integer
chatCompletionId
;
@Schema
(
description
=
"AI回复内容"
)
@JsonProperty
(
"reply_content"
)
private
String
replyContent
;
}
src/main/java/cn/breeze/elleai/application/dto/response/UserChatCompletionDto.java
View file @
94708e1f
...
...
@@ -20,6 +20,27 @@ public class UserChatCompletionDto implements Serializable {
@JsonProperty
(
"user_id"
)
private
String
userId
;
/**
* 用户名称
*/
@Schema
(
description
=
"用户名称"
)
@JsonProperty
(
"user_name"
)
private
String
userName
;
/**
* 所属门店ID
*/
@Schema
(
description
=
"所属门店ID"
)
@JsonProperty
(
"shop_id"
)
private
String
shopId
;
/**
* 所属门店名称
*/
@Schema
(
description
=
"所属门店名称"
)
@JsonProperty
(
"shop_name"
)
private
String
shopName
;
/**
* 会话ID
*/
...
...
@@ -27,6 +48,20 @@ public class UserChatCompletionDto implements Serializable {
@JsonProperty
(
"session_id"
)
private
String
sessionId
;
/**
* 首次提问
*/
@Schema
(
description
=
"首次提问"
)
@JsonProperty
(
"first_question"
)
private
String
firstQuestion
;
/**
* 最后一次提问
*/
@Schema
(
description
=
"最后提问"
)
@JsonProperty
(
"last_question"
)
private
String
lastQuestion
;
/**
* 创建时间
*/
...
...
src/main/java/cn/breeze/elleai/application/dto/response/UserChatCompletionHistoryMobileDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
response
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.Date
;
@Data
public
class
UserChatCompletionHistoryMobileDto
implements
Serializable
{
@Schema
(
description
=
"会话历史ID"
)
private
Integer
id
;
/**
* 会话ID
*/
@Schema
(
description
=
"会话记录ID"
)
@JsonProperty
(
"chat_completion_id"
)
private
Integer
chatCompletionId
;
/**
* 类型(0用户提问 1AI回答)
*/
@Schema
(
description
=
"类型(0用户提问 1AI回答)"
)
private
Integer
type
;
/**
* 内容
*/
@Schema
(
description
=
"内容"
)
private
String
content
;
/**
* 创建时间
*/
@Schema
(
description
=
"创建时间"
)
@JsonProperty
(
"create_time"
)
private
Date
createTime
;
}
src/main/java/cn/breeze/elleai/application/dto/response/UserChatCompletionMobileDto.java
0 → 100644
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
dto
.
response
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.Date
;
@Data
public
class
UserChatCompletionMobileDto
implements
Serializable
{
@Schema
(
description
=
"会话记录ID"
)
private
Integer
id
;
/**
* 内容
*/
@Schema
(
description
=
"内容"
)
private
String
content
;
/**
* 创建时间
*/
@Schema
(
description
=
"创建时间"
)
@JsonProperty
(
"create_time"
)
private
Date
createTime
;
}
src/main/java/cn/breeze/elleai/application/service/AppChatCompletionService.java
View file @
94708e1f
package
cn
.
breeze
.
elleai
.
application
.
service
;
import
cn.breeze.elleai.application.dto.PageResult
;
import
cn.breeze.elleai.application.dto.request.QaAssistantRequestDto
;
import
cn.breeze.elleai.application.dto.request.QaAssistantSaveDto
;
import
cn.breeze.elleai.application.dto.request.UserQaHistoryRequestDto
;
import
cn.breeze.elleai.application.dto.request.UserQaRequestDto
;
import
cn.breeze.elleai.application.dto.response.QaAssistantDto
;
import
cn.breeze.elleai.application.dto.response.UserChatCompletionDto
;
import
cn.breeze.elleai.application.dto.response.UserChatCompletionHistoryDto
;
import
cn.breeze.elleai.application.dto.request.*
;
import
cn.breeze.elleai.application.dto.response.*
;
import
cn.breeze.elleai.domain.sparring.model.request.QaAssistantRequestModel
;
import
cn.breeze.elleai.domain.sparring.model.request.QaAssistantSaveModel
;
import
cn.breeze.elleai.domain.sparring.model.request.UserQaHistoryRequestModel
;
...
...
@@ -16,6 +11,7 @@ import cn.breeze.elleai.domain.sparring.model.response.QaAssistantResponseModel;
import
cn.breeze.elleai.domain.sparring.model.response.UserChatCompletionHistoryResponseModel
;
import
cn.breeze.elleai.domain.sparring.model.response.UserChatCompletionResponseModel
;
import
cn.breeze.elleai.domain.sparring.service.ChatCompletionService
;
import
cn.breeze.elleai.util.UserPrincipal
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.collection.CollectionUtil
;
import
com.alibaba.fastjson.JSONObject
;
...
...
@@ -30,10 +26,7 @@ import org.springframework.http.ResponseEntity;
import
org.springframework.stereotype.Component
;
import
org.springframework.web.client.RestTemplate
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.*
;
import
java.util.stream.Collectors
;
...
...
@@ -200,21 +193,23 @@ public class AppChatCompletionService {
* @param request
* @return
*/
public
List
<
UserChatCompletionDto
>
userQaList
(
UserQaRequestDto
request
)
{
List
<
UserChatCompletionDto
>
resultList
=
new
ArrayList
<>();
public
PageResult
<
UserChatCompletionDto
>
userQaMobilePaginQuery
(
UserQaRequestDto
request
)
{
UserQaRequestModel
requestModel
=
BeanUtil
.
copyProperties
(
request
,
UserQaRequestModel
.
class
);
List
<
UserChatCompletionResponseModel
>
models
=
chatCompletionService
.
userQaList
(
requestModel
);
if
(
CollectionUtil
.
isNotEmpty
(
models
))
{
resultList
=
models
.
stream
().
map
(
v
->
{
Page
<
UserChatCompletionResponseModel
>
page
=
chatCompletionService
.
userQaPaginQuery
(
requestModel
);
PageResult
<
UserChatCompletionDto
>
pageResult
=
PageResult
.
of
(
request
.
getPageNo
(),
request
.
getPageSize
(),
(
int
)
page
.
getTotalRow
(),
null
);
if
(
CollectionUtil
.
isNotEmpty
(
page
.
getRecords
()))
{
List
<
UserChatCompletionDto
>
dtoList
=
page
.
getRecords
().
stream
().
map
(
v
->
{
UserChatCompletionDto
dto
=
BeanUtil
.
copyProperties
(
v
,
UserChatCompletionDto
.
class
);
return
dto
;
}).
collect
(
Collectors
.
toList
());
}
return
resultList
;
pageResult
.
setItems
(
dtoList
);
}
return
pageResult
;
}
/**
...
...
@@ -222,33 +217,28 @@ public class AppChatCompletionService {
* @param request
* @return
*/
public
PageResult
<
UserChatCompletion
HistoryDto
>
userQaHistoryPaginQuery
(
UserQaHistoryRequestDto
request
)
{
public
PageResult
<
UserChatCompletion
MobileDto
>
userQaHistoryPaginQuery
(
UserPrincipal
userPrincipal
,
UserQaHistoryRequestDto
request
)
{
UserQaRequestDto
req
=
new
UserQaRequestDto
();
req
.
setUserId
(
request
.
getUserId
());
List
<
UserChatCompletionDto
>
chatCompletionDtos
=
this
.
userQaList
(
req
);
if
(
CollectionUtil
.
isNotEmpty
(
chatCompletionDtos
))
{
List
<
Integer
>
idList
=
chatCompletionDtos
.
stream
().
map
(
UserChatCompletionDto:
:
getId
).
collect
(
Collectors
.
toList
());
UserQaHistoryRequestModel
requestModel
=
BeanUtil
.
copyProperties
(
request
,
UserQaHistoryRequestModel
.
class
);
requestModel
.
setChatCompletionIdList
(
idList
);
requestModel
.
setType
(
0
);
Page
<
UserChatCompletionHistoryResponseModel
>
page
=
chatCompletionService
.
userQaHistoryPaginQuery
(
requestModel
);
PageResult
<
UserChatCompletionHistoryDto
>
pageResult
=
PageResult
.
of
(
request
.
getPageNo
(),
request
.
getPageSize
(),
(
int
)
page
.
getTotalRow
(),
null
);
if
(
CollectionUtil
.
isNotEmpty
(
page
.
getRecords
()))
{
List
<
UserChatCompletionHistoryDto
>
dtoList
=
page
.
getRecords
().
stream
().
map
(
v
->
{
UserChatCompletionHistoryDto
dto
=
BeanUtil
.
copyProperties
(
v
,
UserChatCompletionHistoryDto
.
class
);
return
dto
;
}).
collect
(
Collectors
.
toList
());
pageResult
.
setItems
(
dtoList
);
}
return
pageResult
;
req
.
setUserId
(
userPrincipal
.
getUserId
());
PageResult
<
UserChatCompletionDto
>
userChatCompletionPageResult
=
userQaMobilePaginQuery
(
req
);
PageResult
<
UserChatCompletionMobileDto
>
pageResult
=
PageResult
.
of
(
userChatCompletionPageResult
.
getPageNo
(),
userChatCompletionPageResult
.
getPageSize
(),
userChatCompletionPageResult
.
getTotal
(),
null
);
if
(
Objects
.
nonNull
(
userChatCompletionPageResult
)
&&
CollectionUtil
.
isNotEmpty
(
userChatCompletionPageResult
.
getItems
()))
{
List
<
UserChatCompletionMobileDto
>
items
=
userChatCompletionPageResult
.
getItems
().
stream
().
map
(
v
->
{
UserChatCompletionMobileDto
dto
=
BeanUtil
.
copyProperties
(
v
,
UserChatCompletionMobileDto
.
class
);
dto
.
setContent
(
v
.
getFirstQuestion
());
return
dto
;
}).
collect
(
Collectors
.
toList
());
BeanUtil
.
copyProperties
(
userChatCompletionPageResult
,
pageResult
);
pageResult
.
setItems
(
items
);
}
return
null
;
return
pageResult
;
}
/**
...
...
@@ -256,17 +246,20 @@ public class AppChatCompletionService {
* @param request
* @return
*/
public
String
userAsk
(
UserQaHistory
RequestDto
request
)
{
public
UserAskResultMobileDto
userAsk
(
UserPrincipal
userPrincipal
,
UserQaMobile
RequestDto
request
)
{
//TODO 生成sessionId
UserAskResultMobileDto
result
=
new
UserAskResultMobileDto
();
result
.
setChatCompletionId
(
1
);
result
.
setReplyContent
(
"moke ai reply."
);
// 更新问答记录
Integer
recordId
=
chatCompletionService
.
saveUserQaSession
(
request
.
getUserId
(),
request
.
getSessionId
());
// 保存问答详情
String
content
=
request
.
getContent
();
chatCompletionService
.
saveUserQaRecord
(
recordId
,
0
,
content
);
return
ask4Knowledge
(
request
.
getSessionId
(),
request
.
getUserId
(),
content
);
// Integer recordId = chatCompletionService.saveUserQaSession(request.getUserId(), request.getSessionId());
//
// // 保存问答详情
// String content = request.getContent();
// chatCompletionService.saveUserQaRecord(recordId, 0, content);
//
// return ask4Knowledge(request.getSessionId(), request.getUserId(), content);
return
result
;
}
...
...
src/main/java/cn/breeze/elleai/application/service/AppExamineService.java
View file @
94708e1f
...
...
@@ -7,6 +7,7 @@ import cn.breeze.elleai.application.dto.response.*;
import
cn.breeze.elleai.domain.sparring.model.request.*
;
import
cn.breeze.elleai.domain.sparring.model.response.*
;
import
cn.breeze.elleai.domain.sparring.service.ExamineService
;
import
cn.breeze.elleai.util.UserPrincipal
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.lang.Assert
;
...
...
@@ -138,25 +139,18 @@ public class AppExamineService {
* @param request
* @return
*/
public
PageResult
<
ExamineSceneCategoryDto
>
examineSceneCategoryMobilePaginQuery
(
ExamineSceneCategoryRequestDto
request
)
{
public
PageResult
<
ExamineSceneCategory
Mobile
Dto
>
examineSceneCategoryMobilePaginQuery
(
ExamineSceneCategoryRequestDto
request
)
{
ExamineSceneCategoryRequestModel
requestModel
=
BeanUtil
.
copyProperties
(
request
,
ExamineSceneCategoryRequestModel
.
class
);
requestModel
.
setStatus
(
1
);
Page
<
ExamineSceneCategoryResponseModel
>
page
=
examineService
.
sceneCategoryPaginQuery
(
requestModel
);
PageResult
<
ExamineSceneCategoryDto
>
pageResult
=
PageResult
.
of
(
request
.
getPageNo
(),
request
.
getPageSize
(),
(
int
)
page
.
getTotalRow
(),
null
);
PageResult
<
ExamineSceneCategory
Mobile
Dto
>
pageResult
=
PageResult
.
of
(
request
.
getPageNo
(),
request
.
getPageSize
(),
(
int
)
page
.
getTotalRow
(),
null
);
if
(
CollectionUtil
.
isNotEmpty
(
page
.
getRecords
()))
{
List
<
ExamineSceneCategoryDto
>
dtoList
=
page
.
getRecords
().
stream
().
map
(
v
->
{
ExamineSceneCategoryDto
dto
=
BeanUtil
.
copyProperties
(
v
,
ExamineSceneCategoryDto
.
class
);
if
(
Objects
.
nonNull
(
dto
.
getSceneId
()))
{
ExamineSceneResponseModel
sceneResponseModel
=
examineService
.
sceneDetail
(
dto
.
getSceneId
());
if
(
Objects
.
nonNull
(
sceneResponseModel
))
{
dto
.
setSceneName
(
sceneResponseModel
.
getName
());
}
}
List
<
ExamineSceneCategoryMobileDto
>
dtoList
=
page
.
getRecords
().
stream
().
map
(
v
->
{
ExamineSceneCategoryMobileDto
dto
=
BeanUtil
.
copyProperties
(
v
,
ExamineSceneCategoryMobileDto
.
class
);
return
dto
;
}).
collect
(
Collectors
.
toList
());
...
...
@@ -264,7 +258,7 @@ public class AppExamineService {
* @param request
* @return
*/
public
PageResult
<
ExamineScene
Dto
>
examineMobileScenePaginQuery
(
ExamineScen
eRequestDto
request
)
{
public
PageResult
<
ExamineScene
MobileDto
>
examineMobileScenePaginQuery
(
ExamineSceneMobil
eRequestDto
request
)
{
ExamineSceneRequestModel
requestModel
=
BeanUtil
.
copyProperties
(
request
,
ExamineSceneRequestModel
.
class
);
// 移动端默认查询启用状态
...
...
@@ -272,11 +266,11 @@ public class AppExamineService {
Page
<
ExamineSceneResponseModel
>
page
=
examineService
.
scenePaginQuery
(
requestModel
);
PageResult
<
ExamineSceneDto
>
pageResult
=
PageResult
.
of
(
request
.
getPageNo
(),
request
.
getPageSize
(),
(
int
)
page
.
getTotalRow
(),
null
);
PageResult
<
ExamineScene
Mobile
Dto
>
pageResult
=
PageResult
.
of
(
request
.
getPageNo
(),
request
.
getPageSize
(),
(
int
)
page
.
getTotalRow
(),
null
);
if
(
CollectionUtil
.
isNotEmpty
(
page
.
getRecords
()))
{
List
<
ExamineSceneDto
>
dtoList
=
page
.
getRecords
().
stream
().
map
(
v
->
{
ExamineScene
Dto
dto
=
BeanUtil
.
copyProperties
(
v
,
ExamineScen
eDto
.
class
);
List
<
ExamineScene
Mobile
Dto
>
dtoList
=
page
.
getRecords
().
stream
().
map
(
v
->
{
ExamineScene
MobileDto
dto
=
BeanUtil
.
copyProperties
(
v
,
ExamineSceneMobil
eDto
.
class
);
return
dto
;
}).
collect
(
Collectors
.
toList
());
...
...
@@ -593,9 +587,6 @@ public class AppExamineService {
List
<
ExamineMobileDto
>
dtoList
=
page
.
getRecords
().
stream
().
map
(
v
->
{
ExamineMobileDto
dto
=
BeanUtil
.
copyProperties
(
v
,
ExamineMobileDto
.
class
);
dto
.
setStartTime
(
v
.
getStartTime
().
getTime
());
dto
.
setEndTime
(
v
.
getEndTime
().
getTime
());
// 已考人数
long
examCount
=
0
;
ExamineRecordRequestModel
req
=
new
ExamineRecordRequestModel
();
...
...
@@ -639,7 +630,7 @@ public class AppExamineService {
* @param request
* @return
*/
public
PageResult
<
ExamineRecordMobileDto
>
examineRecordMobilePaginQuery
(
ExamineRecordRequestDto
request
)
{
public
PageResult
<
ExamineRecordMobileDto
>
examineRecordMobilePaginQuery
(
ExamineRecord
Mobile
RequestDto
request
)
{
ExamineRecordRequestModel
requestModel
=
BeanUtil
.
copyProperties
(
request
,
ExamineRecordRequestModel
.
class
);
...
...
@@ -928,24 +919,31 @@ public class AppExamineService {
* @param examineMode
* @return
*/
public
Examine
QaDifyDto
getQuestion
(
Integer
examineId
,
String
userId
,
Integer
examineMode
)
{
public
Examine
StartResultDto
startExamine
(
UserPrincipal
userPrincipal
,
StartExamineMobileRequestDto
request
)
{
// 获取缓存考试会话信息
String
examSessionKey
=
String
.
format
(
EXAM_REDIS_SESSION_KEY
,
examineId
,
examineMode
,
userId
);
String
sessionId
=
redisTemplate
.
opsForValue
().
get
(
examSessionKey
);
if
(
StrUtil
.
isEmptyIfStr
(
sessionId
))
{
// 生成sessionId
sessionId
=
UUID
.
randomUUID
().
toString
();
redisTemplate
.
opsForValue
().
set
(
examSessionKey
,
sessionId
,
1
,
TimeUnit
.
DAYS
);
}
ExamineStartResultDto
result
=
new
ExamineStartResultDto
();
// 获取缓存考题信息
String
questionKey
=
String
.
format
(
EXAM_REDIS_QUESTION_KEY
,
examineId
,
examineMode
,
userId
,
sessionId
);
result
.
setBusinessNo
(
UUID
.
randomUUID
().
toString
());
result
.
setQuestionId
(
1
);
result
.
setQuestion
(
"请问毛巾都是干净的嘛?"
);
result
.
setAnswer
(
"是的"
);
result
.
setNext
(
true
);
ExamineQaDifyDto
result
=
new
ExamineQaDifyDto
();
ExamineQaRequestModel
req
=
null
;
examineService
.
examineQaList
(
req
);
// // 获取缓存考试会话信息
// String examSessionKey = String.format(EXAM_REDIS_SESSION_KEY, examineId, examineMode, userId);
// String sessionId = redisTemplate.opsForValue().get(examSessionKey);
// if(StrUtil.isEmptyIfStr(sessionId)) {
// // 生成sessionId
// sessionId = UUID.randomUUID().toString();
// redisTemplate.opsForValue().set(examSessionKey, sessionId, 1, TimeUnit.DAYS);
// }
//
// // 获取缓存考题信息
// String questionKey = String.format(EXAM_REDIS_QUESTION_KEY, examineId, examineMode, userId, sessionId);
//
//
// ExamineQaRequestModel req = null;
// examineService.examineQaList(req);
// // 根据分类获取考题
// ExamineResponseModel model = examineService.examineDetail(examineId);
...
...
src/main/java/cn/breeze/elleai/controller/front/ChatCompletionMobileController.java
View file @
94708e1f
...
...
@@ -3,22 +3,22 @@ package cn.breeze.elleai.controller.front;
import
cn.breeze.elleai.application.dto.ApiResponse
;
import
cn.breeze.elleai.application.dto.PageResult
;
import
cn.breeze.elleai.application.dto.request.QaAssistantRequestDto
;
import
cn.breeze.elleai.application.dto.request.UserQaHistoryRequestDto
;
import
cn.breeze.elleai.application.dto.response.HotQaMobileDto
;
import
cn.breeze.elleai.application.dto.response.QaAssistantDto
;
import
cn.breeze.elleai.application.dto.response.UserChatCompletionHistoryDto
;
import
cn.breeze.elleai.application.dto.request.*
;
import
cn.breeze.elleai.application.dto.response.*
;
import
cn.breeze.elleai.application.service.AppChatCompletionService
;
import
cn.breeze.elleai.config.QueryParam
;
import
cn.breeze.elleai.util.UserPrincipal
;
import
com.alibaba.fastjson.JSON
;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.Parameter
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.web.bind.annotation.*
;
@RestController
@RequestMapping
(
value
=
"/front/chat"
)
@Tag
(
name
=
"
AI问答移动端
"
)
@Tag
(
name
=
"
移动端-AI问答
"
)
@RequiredArgsConstructor
public
class
ChatCompletionMobileController
{
...
...
@@ -42,25 +42,35 @@ public class ChatCompletionMobileController {
@Operation
(
summary
=
"历史对话"
)
@GetMapping
(
"/history"
)
public
ApiResponse
<
PageResult
<
UserChatCompletion
HistoryDto
>>
history
(
@RequestParam
(
"user_id"
)
String
userId
,
@QueryParam
UserQaHistoryRequestDto
request
)
{
request
.
setUserId
(
userId
);
PageResult
<
UserChatCompletion
HistoryDto
>
pageResult
=
chatCompletionService
.
userQaHistoryPaginQuery
(
request
);
public
ApiResponse
<
PageResult
<
UserChatCompletion
MobileDto
>>
history
(
@Parameter
(
hidden
=
true
)
UserPrincipal
userPrincipal
,
@QueryParam
UserQaHistoryRequestDto
request
)
{
PageResult
<
UserChatCompletion
MobileDto
>
pageResult
=
chatCompletionService
.
userQaHistoryPaginQuery
(
userPrincipal
,
request
);
return
ApiResponse
.
ok
(
pageResult
);
}
@Operation
(
summary
=
"用户提问"
)
@PostMapping
(
"/ask"
)
public
ApiResponse
<
String
>
ask
(
@RequestParam
(
"user_id"
)
String
userId
,
@RequestBody
UserQaHistoryRequestDto
request
)
{
request
.
setUserId
(
userId
);
String
aiReply
=
chatCompletionService
.
userAsk
(
request
);
return
ApiResponse
.
ok
(
aiReply
);
public
ApiResponse
<
UserAskResultMobileDto
>
ask
(
@Parameter
(
hidden
=
true
)
UserPrincipal
userPrincipal
,
@RequestBody
UserQaMobileRequestDto
request
)
{
UserAskResultMobileDto
result
=
chatCompletionService
.
userAsk
(
userPrincipal
,
request
);
return
ApiResponse
.
ok
(
result
);
}
@Operation
(
summary
=
"开启新会话"
)
@PostMapping
(
"/new"
)
public
ApiResponse
<
String
>
newChatCompletion
(
@RequestParam
(
"user_id"
)
String
userId
)
{
@Operation
(
summary
=
"切换助手"
)
@PostMapping
(
"/assistant/switch"
)
public
ApiResponse
<
String
>
switchAssistant
(
@Parameter
(
hidden
=
true
)
UserPrincipal
userPrincipal
,
@RequestBody
SwitchAssistantMobileRequestDto
request
)
{
return
ApiResponse
.
ok
(
"ok"
);
}
@Operation
(
summary
=
"开启新会话,返回新会话ID"
)
@PostMapping
(
"/new_completion"
)
public
ApiResponse
<
NewCompletionResultMobileDto
>
newChatCompletion
(
@Parameter
(
hidden
=
true
)
UserPrincipal
userPrincipal
)
{
NewCompletionResultMobileDto
result
=
new
NewCompletionResultMobileDto
();
result
.
setChatCompletionId
(
1
);
return
ApiResponse
.
ok
(
result
);
}
}
src/main/java/cn/breeze/elleai/controller/front/ExamineMobileController.java
View file @
94708e1f
This diff is collapsed.
Click to expand it.
src/main/java/cn/breeze/elleai/domain/sparring/model/response/ExamineRecordResponseModel.java
View file @
94708e1f
...
...
@@ -19,6 +19,21 @@ public class ExamineRecordResponseModel implements Serializable {
*/
private
String
userId
;
/**
* 用户名称
*/
private
String
userName
;
/**
* 所属门店ID
*/
private
String
shopId
;
/**
* 所属门店名称
*/
private
String
shopName
;
/**
* 会话ID
*/
...
...
src/main/java/cn/breeze/elleai/domain/sparring/model/response/UserChatCompletionResponseModel.java
View file @
94708e1f
...
...
@@ -16,11 +16,36 @@ public class UserChatCompletionResponseModel implements Serializable {
*/
private
String
userId
;
/**
* 用户名称
*/
private
String
userName
;
/**
* 所属门店ID
*/
private
String
shopId
;
/**
* 所属门店名称
*/
private
String
shopName
;
/**
* 会话ID
*/
private
String
sessionId
;
/**
* 首次提问时间
*/
private
String
firstQuestion
;
/**
* 最后一次提问
*/
private
String
lastQuestion
;
/**
* 创建时间
*/
...
...
src/main/java/cn/breeze/elleai/domain/sparring/service/ChatCompletionServiceImpl.java
View file @
94708e1f
...
...
@@ -52,6 +52,7 @@ public class ChatCompletionServiceImpl implements ChatCompletionService{
if
(
StrUtil
.
isNotEmpty
(
request
.
getUserId
()))
{
queryWrapper
.
where
(
USER_CHAT_COMPLETION_ENTITY
.
USER_ID
.
eq
(
request
.
getUserId
()));
}
queryWrapper
.
orderBy
(
USER_CHAT_COMPLETION_ENTITY
.
CREATE_TIME
,
false
);
Page
<
UserChatCompletionResponseModel
>
page
=
chatCompletionMapper
.
paginateAs
(
pageNo
,
pageSize
,
queryWrapper
,
UserChatCompletionResponseModel
.
class
);
...
...
src/main/java/cn/breeze/elleai/infra/entity/UserChatCompletionEntity.java
View file @
94708e1f
...
...
@@ -37,11 +37,36 @@ public class UserChatCompletionEntity implements Serializable {
*/
private
String
userId
;
/**
* 用户名称
*/
private
String
userName
;
/**
* 所属门店ID
*/
private
String
shopId
;
/**
* 所属门店名称
*/
private
String
shopName
;
/**
* 会话ID
*/
private
String
sessionId
;
/**
* 首次提问时间
*/
private
String
firstQuestion
;
/**
* 最后一次提问
*/
private
String
lastQuestion
;
/**
* 创建时间
*/
...
...
src/main/java/cn/breeze/elleai/infra/entity/UserExamineRecordEntity.java
View file @
94708e1f
...
...
@@ -37,6 +37,21 @@ public class UserExamineRecordEntity implements Serializable {
*/
private
String
userId
;
/**
* 用户名称
*/
private
String
userName
;
/**
* 所属门店ID
*/
private
String
shopId
;
/**
* 所属门店名称
*/
private
String
shopName
;
/**
* 会话ID
*/
...
...
src/main/java/cn/breeze/elleai/infra/entity/table/UserChatCompletionTableDef.java
View file @
94708e1f
...
...
@@ -34,6 +34,21 @@ public class UserChatCompletionTableDef extends TableDef {
*/
public
final
QueryColumn
USER_ID
=
new
QueryColumn
(
this
,
"user_id"
);
/**
* 用户名称
*/
public
final
QueryColumn
USER_NAME
=
new
QueryColumn
(
this
,
"user_name"
);
/**
* 所属门店ID
*/
public
final
QueryColumn
SHOP_ID
=
new
QueryColumn
(
this
,
"shop_id"
);
/**
* 所属门店名称
*/
public
final
QueryColumn
SHOP_NAME
=
new
QueryColumn
(
this
,
"shop_name"
);
/**
* DIFY会话ID
*/
...
...
@@ -62,7 +77,7 @@ public class UserChatCompletionTableDef extends TableDef {
/**
* 默认字段,不包含逻辑删除或者 large 等字段。
*/
public
final
QueryColumn
[]
DEFAULT_COLUMNS
=
new
QueryColumn
[]{
ID
,
USER_ID
,
SESSION_ID
,
TYPE
,
CONTENT
,
CREATE_TIME
,
UPDATE_TIME
};
public
final
QueryColumn
[]
DEFAULT_COLUMNS
=
new
QueryColumn
[]{
ID
,
USER_ID
,
USER_NAME
,
SHOP_ID
,
SHOP_NAME
,
SESSION_ID
,
TYPE
,
CONTENT
,
CREATE_TIME
,
UPDATE_TIME
};
public
UserChatCompletionTableDef
()
{
super
(
""
,
"ai_user_chat_completion"
);
...
...
src/main/java/cn/breeze/elleai/infra/entity/table/UserExamineRecordTableDef.java
View file @
94708e1f
...
...
@@ -29,6 +29,21 @@ public class UserExamineRecordTableDef extends TableDef {
*/
public
final
QueryColumn
USER_ID
=
new
QueryColumn
(
this
,
"user_id"
);
/**
* 用户名称
*/
public
final
QueryColumn
USER_NAME
=
new
QueryColumn
(
this
,
"user_name"
);
/**
* 所属门店ID
*/
public
final
QueryColumn
SHOP_ID
=
new
QueryColumn
(
this
,
"shop_id"
);
/**
* 所属门店名称
*/
public
final
QueryColumn
SHOP_NAME
=
new
QueryColumn
(
this
,
"shop_name"
);
/**
* 对练ID
*/
...
...
@@ -77,7 +92,7 @@ public class UserExamineRecordTableDef extends TableDef {
/**
* 默认字段,不包含逻辑删除或者 large 等字段。
*/
public
final
QueryColumn
[]
DEFAULT_COLUMNS
=
new
QueryColumn
[]{
ID
,
USER_ID
,
SESSION_ID
,
EXAMINE_ID
,
EXAMINE_MODE
,
ANSWERED_NUM
,
OVERALL_SCORE
,
OVERALL_EVALUATION
,
CREATE_TIME
,
UPDATE_TIME
};
public
final
QueryColumn
[]
DEFAULT_COLUMNS
=
new
QueryColumn
[]{
ID
,
USER_ID
,
USER_NAME
,
SHOP_ID
,
SHOP_NAME
,
SESSION_ID
,
EXAMINE_ID
,
EXAMINE_MODE
,
ANSWERED_NUM
,
OVERALL_SCORE
,
OVERALL_EVALUATION
,
CREATE_TIME
,
UPDATE_TIME
};
public
UserExamineRecordTableDef
()
{
super
(
""
,
"ai_user_examine_record"
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment