Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
P
poc-api
Project
Project
Details
Activity
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
poc
poc-api
Commits
dad21e4d
Commit
dad21e4d
authored
Jun 26, 2025
by
alex yao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: ai写作 优化
parent
da5a7be2
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
1419 additions
and
26 deletions
+1419
-26
AiWritingService.java
...n/java/cn/com/poc/writing/aggregate/AiWritingService.java
+10
-0
AiWritingServiceImpl.java
.../com/poc/writing/aggregate/impl/AiWritingServiceImpl.java
+55
-26
BizAiWritingDialoguesRecordConvert.java
...c/writing/convert/BizAiWritingDialoguesRecordConvert.java
+93
-0
AiWritingDialoguesContextDto.java
.../cn/com/poc/writing/dto/AiWritingDialoguesContextDto.java
+116
-0
BizAiWritingDialoguesRecordDto.java
...n/com/poc/writing/dto/BizAiWritingDialoguesRecordDto.java
+199
-0
BizAiWritingDialoguesRecordEntity.java
...poc/writing/entity/BizAiWritingDialoguesRecordEntity.java
+199
-0
BizAiWritingDialoguesRecordModel.java
...m/poc/writing/model/BizAiWritingDialoguesRecordModel.java
+286
-0
AiWritingDialoguesRecordQuery.sql
...n/com/poc/writing/query/AiWritingDialoguesRecordQuery.sql
+14
-0
AiWritingDialoguesRecordQueryCondition.java
...writing/query/AiWritingDialoguesRecordQueryCondition.java
+23
-0
AiWritingDialoguesRecordQueryItem.java
.../poc/writing/query/AiWritingDialoguesRecordQueryItem.java
+166
-0
BizAiWritingDialoguesRecordRepository.java
...ing/repository/BizAiWritingDialoguesRecordRepository.java
+6
-0
AiWritingRest.java
src/main/java/cn/com/poc/writing/rest/AiWritingRest.java
+8
-0
BizAiWritingDialoguesRecordRest.java
...com/poc/writing/rest/BizAiWritingDialoguesRecordRest.java
+24
-0
AiWritingRestImpl.java
.../java/cn/com/poc/writing/rest/impl/AiWritingRestImpl.java
+6
-0
BizAiWritingDialoguesRecordRestImpl.java
...riting/rest/impl/BizAiWritingDialoguesRecordRestImpl.java
+51
-0
BizAiWritingDialoguesRecordService.java
...c/writing/service/BizAiWritingDialoguesRecordService.java
+25
-0
BizAiWritingDialoguesRecordServiceImpl.java
.../service/impl/BizAiWritingDialoguesRecordServiceImpl.java
+138
-0
No files found.
src/main/java/cn/com/poc/writing/aggregate/AiWritingService.java
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
aggregate
;
package
cn
.
com
.
poc
.
writing
.
aggregate
;
import
cn.com.poc.writing.dto.AiWritingDialoguesContextDto
;
import
cn.com.poc.writing.dto.AiWritingExampleDto
;
import
cn.com.poc.writing.dto.AiWritingExampleDto
;
import
cn.com.poc.writing.dto.AiWritingExampleTypeDto
;
import
cn.com.poc.writing.dto.AiWritingExampleTypeDto
;
import
cn.com.poc.writing.dto.AiWritingTitleGenerationDto
;
import
cn.com.poc.writing.dto.AiWritingTitleGenerationDto
;
...
@@ -48,4 +49,13 @@ public interface AiWritingService {
...
@@ -48,4 +49,13 @@ public interface AiWritingService {
AiWritingTitleGenerationDto
titleGeneration
(
String
input
);
AiWritingTitleGenerationDto
titleGeneration
(
String
input
);
/**
* 获取对话上下文
*
* @param dialogueId
* @return
*/
List
<
AiWritingDialoguesContextDto
>
getDialogueContext
(
String
dialogueId
);
}
}
src/main/java/cn/com/poc/writing/aggregate/impl/AiWritingServiceImpl.java
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
aggregate
.
impl
;
package
cn
.
com
.
poc
.
writing
.
aggregate
.
impl
;
import
cn.com.poc.thirdparty.resource.demand.ai.entity.dialogue.Tool
;
import
cn.com.poc.expose.dto.DialoguesContextDto
;
import
com.google.common.collect.Maps
;
import
cn.com.poc.writing.dto.AiWritingDialoguesContextDto
;
import
cn.com.poc.writing.entity.BizAiWritingDialoguesRecordEntity
;
import
cn.com.poc.writing.query.AiWritingDialoguesRecordQueryItem
;
import
cn.com.poc.writing.service.BizAiWritingDialoguesRecordService
;
import
cn.com.poc.agent_application.entity.BizAgentApplicationDialoguesRecordEntity
;
import
cn.com.poc.agent_application.entity.BizAgentApplicationDialoguesRecordEntity
;
import
cn.com.poc.agent_application.entity.BizAgentApplicationGcConfigEntity
;
import
cn.com.poc.agent_application.entity.BizAgentApplicationGcConfigEntity
;
import
cn.com.poc.agent_application.entity.KnowledgeContentResult
;
import
cn.com.poc.agent_application.entity.KnowledgeContentResult
;
import
cn.com.poc.agent_application.service.BizAgentApplicationDialoguesRecordService
;
import
cn.com.poc.agent_application.service.BizAgentApplicationGcConfigService
;
import
cn.com.poc.agent_application.service.BizAgentApplicationGcConfigService
;
import
cn.com.poc.ai_dialogues.constant.AiDialoguesTypeEnum
;
import
cn.com.poc.ai_dialogues.constant.AiDialoguesTypeEnum
;
import
cn.com.poc.ai_dialogues.entity.BizAiDialoguesEntity
;
import
cn.com.poc.ai_dialogues.entity.BizAiDialoguesEntity
;
import
cn.com.poc.ai_dialogues.service.BizAiDialoguesService
;
import
cn.com.poc.ai_dialogues.service.BizAiDialoguesService
;
import
cn.com.poc.common.constant.CommonConstant
;
import
cn.com.poc.common.constant.CommonConstant
;
import
cn.com.poc.common.service.BizFileUploadRecordService
;
import
cn.com.poc.common.utils.DocumentLoad
;
import
cn.com.poc.common.utils.DocumentLoad
;
import
cn.com.poc.common.utils.JsonUtils
;
import
cn.com.poc.common.utils.JsonUtils
;
import
cn.com.poc.common.utils.SSEUtil
;
import
cn.com.poc.common.utils.SSEUtil
;
...
@@ -22,7 +23,6 @@ import cn.com.poc.knowledge.entity.BizKnowledgeDocumentEntity;
...
@@ -22,7 +23,6 @@ import cn.com.poc.knowledge.entity.BizKnowledgeDocumentEntity;
import
cn.com.poc.knowledge.query.KnowledgeDocumentRelationQueryItem
;
import
cn.com.poc.knowledge.query.KnowledgeDocumentRelationQueryItem
;
import
cn.com.poc.knowledge.service.BizKnowledgeDocumentService
;
import
cn.com.poc.knowledge.service.BizKnowledgeDocumentService
;
import
cn.com.poc.long_document.domain.LongtextDialoguesResult
;
import
cn.com.poc.long_document.domain.LongtextDialoguesResult
;
import
cn.com.poc.long_document.service.BizLongTextExampleService
;
import
cn.com.poc.thirdparty.resource.demand.ai.aggregate.DemandKnowledgeService
;
import
cn.com.poc.thirdparty.resource.demand.ai.aggregate.DemandKnowledgeService
;
import
cn.com.poc.thirdparty.resource.demand.ai.constants.KnowledgeSearchTypeEnum
;
import
cn.com.poc.thirdparty.resource.demand.ai.constants.KnowledgeSearchTypeEnum
;
import
cn.com.poc.thirdparty.resource.demand.ai.constants.LLMRoleEnum
;
import
cn.com.poc.thirdparty.resource.demand.ai.constants.LLMRoleEnum
;
...
@@ -68,17 +68,11 @@ public class AiWritingServiceImpl implements AiWritingService {
...
@@ -68,17 +68,11 @@ public class AiWritingServiceImpl implements AiWritingService {
@Resource
@Resource
private
LLMService
llmService
;
private
LLMService
llmService
;
@Resource
private
BizFileUploadRecordService
bizFileUploadRecordService
;
@Resource
@Resource
private
BizAiDialoguesService
bizAiDialoguesService
;
private
BizAiDialoguesService
bizAiDialoguesService
;
@Resource
@Resource
private
BizAgentApplicationDialoguesRecordService
bizAgentApplicationDialoguesRecordService
;
private
BizAiWritingDialoguesRecordService
bizAiWritingDialoguesRecordService
;
@Resource
private
BizLongTextExampleService
bizLongTextExampleService
;
@Resource
@Resource
private
BizAgentApplicationGcConfigService
bizAgentApplicationGcConfigService
;
private
BizAgentApplicationGcConfigService
bizAgentApplicationGcConfigService
;
...
@@ -119,11 +113,11 @@ public class AiWritingServiceImpl implements AiWritingService {
...
@@ -119,11 +113,11 @@ public class AiWritingServiceImpl implements AiWritingService {
aiDialoguesEntity
.
setTitle
(
input
.
substring
(
0
,
Math
.
min
(
input
.
length
(),
150
)));
aiDialoguesEntity
.
setTitle
(
input
.
substring
(
0
,
Math
.
min
(
input
.
length
(),
150
)));
aiDialoguesEntity
=
bizAiDialoguesService
.
update
(
aiDialoguesEntity
);
aiDialoguesEntity
=
bizAiDialoguesService
.
update
(
aiDialoguesEntity
);
}
}
BizA
gentApplicationDialoguesRecordEntity
dialoguesRecordEntity
=
new
BizAgentApplication
DialoguesRecordEntity
();
BizA
iWritingDialoguesRecordEntity
dialoguesRecordEntity
=
new
BizAiWriting
DialoguesRecordEntity
();
dialoguesRecordEntity
.
setDialogsId
(
dialoguesId
);
dialoguesRecordEntity
.
setDialogsId
(
dialoguesId
);
dialoguesRecordEntity
.
setMemberId
(
userId
);
dialoguesRecordEntity
.
setMemberId
(
userId
);
dialoguesRecordEntity
.
setIsDeleted
(
CommonConstant
.
IsDeleted
.
N
);
dialoguesRecordEntity
.
setIsDeleted
(
CommonConstant
.
IsDeleted
.
N
);
List
<
BizA
gentApplicationDialoguesRecordEntity
>
dialoguesRecordEntities
=
bizAgentApplication
DialoguesRecordService
.
findByExample
(
dialoguesRecordEntity
,
null
);
List
<
BizA
iWritingDialoguesRecordEntity
>
dialoguesRecordEntities
=
bizAiWriting
DialoguesRecordService
.
findByExample
(
dialoguesRecordEntity
,
null
);
boolean
isInit
=
false
;
boolean
isInit
=
false
;
if
(
CollectionUtils
.
isEmpty
(
dialoguesRecordEntities
))
{
if
(
CollectionUtils
.
isEmpty
(
dialoguesRecordEntities
))
{
...
@@ -167,9 +161,15 @@ public class AiWritingServiceImpl implements AiWritingService {
...
@@ -167,9 +161,15 @@ public class AiWritingServiceImpl implements AiWritingService {
sseUtil
.
send
(
JsonUtils
.
serialize
(
result
));
sseUtil
.
send
(
JsonUtils
.
serialize
(
result
));
}
}
//作文标题生成
AiWritingTitleGenerationDto
aiWritingTitleGenerationDto
=
titleGeneration
(
input
);
Boolean
needWriting
=
aiWritingTitleGenerationDto
.
getNeedWriting
();
if
(
needWriting
&&
StringUtils
.
isNotBlank
(
aiWritingTitleGenerationDto
.
getTitle
()))
{
sseUtil
.
send
(
JsonUtils
.
serialize
(
aiWritingTitleGenerationDto
));
}
//组装请求参数
//组装请求参数
List
<
Message
>
messages
=
buildMessages
(
dialoguesId
,
userId
,
input
,
fileUrl
,
knowledgeResult
);
List
<
Message
>
messages
=
buildMessages
(
dialoguesId
,
userId
,
input
,
fileUrl
,
knowledgeResult
,
aiWritingTitleGenerationDto
);
LargeModelResponse
largeModelResponse
=
new
LargeModelResponse
();
LargeModelResponse
largeModelResponse
=
new
LargeModelResponse
();
largeModelResponse
.
setModel
(
"deepseek-chat"
);
largeModelResponse
.
setModel
(
"deepseek-chat"
);
largeModelResponse
.
setMessages
(
messages
.
toArray
(
new
Message
[
0
]));
largeModelResponse
.
setMessages
(
messages
.
toArray
(
new
Message
[
0
]));
...
@@ -179,7 +179,7 @@ public class AiWritingServiceImpl implements AiWritingService {
...
@@ -179,7 +179,7 @@ public class AiWritingServiceImpl implements AiWritingService {
// 保存用户输入记录
// 保存用户输入记录
BizA
gentApplicationDialoguesRecordEntity
inputRecord
=
new
BizAgentApplication
DialoguesRecordEntity
();
BizA
iWritingDialoguesRecordEntity
inputRecord
=
new
BizAiWriting
DialoguesRecordEntity
();
inputRecord
.
setMemberId
(
userId
);
inputRecord
.
setMemberId
(
userId
);
inputRecord
.
setContent
(
input
);
inputRecord
.
setContent
(
input
);
if
(
isFileUrlChanged
)
{
if
(
isFileUrlChanged
)
{
...
@@ -190,16 +190,19 @@ public class AiWritingServiceImpl implements AiWritingService {
...
@@ -190,16 +190,19 @@ public class AiWritingServiceImpl implements AiWritingService {
inputRecord
.
setTimestamp
(
inputTimestamp
);
inputRecord
.
setTimestamp
(
inputTimestamp
);
// 保存AI回复记录
// 保存AI回复记录
BizA
gentApplicationDialoguesRecordEntity
assistantRecord
=
new
BizAgentApplication
DialoguesRecordEntity
();
BizA
iWritingDialoguesRecordEntity
assistantRecord
=
new
BizAiWriting
DialoguesRecordEntity
();
assistantRecord
.
setMemberId
(
userId
);
assistantRecord
.
setMemberId
(
userId
);
assistantRecord
.
setContent
(
longtextDialoguesResult
.
getMessage
());
assistantRecord
.
setContent
(
longtextDialoguesResult
.
getMessage
());
assistantRecord
.
setReasoningContent
(
longtextDialoguesResult
.
getReasoningContent
());
assistantRecord
.
setReasoningContent
(
longtextDialoguesResult
.
getReasoningContent
());
if
(
needWriting
)
{
assistantRecord
.
setDocumentTitle
(
aiWritingTitleGenerationDto
.
getTitle
());
}
assistantRecord
.
setDialogsId
(
dialoguesId
);
assistantRecord
.
setDialogsId
(
dialoguesId
);
assistantRecord
.
setRole
(
LLMRoleEnum
.
ASSISTANT
.
getRole
());
assistantRecord
.
setRole
(
LLMRoleEnum
.
ASSISTANT
.
getRole
());
assistantRecord
.
setTimestamp
(
System
.
currentTimeMillis
());
assistantRecord
.
setTimestamp
(
System
.
currentTimeMillis
());
bizA
gentApplication
DialoguesRecordService
.
save
(
inputRecord
);
bizA
iWriting
DialoguesRecordService
.
save
(
inputRecord
);
bizA
gentApplication
DialoguesRecordService
.
save
(
assistantRecord
);
bizA
iWriting
DialoguesRecordService
.
save
(
assistantRecord
);
}
}
...
@@ -284,14 +287,14 @@ public class AiWritingServiceImpl implements AiWritingService {
...
@@ -284,14 +287,14 @@ public class AiWritingServiceImpl implements AiWritingService {
}
}
String
substring
=
message
.
substring
(
startEnd
,
endIndex
+
1
);
String
substring
=
message
.
substring
(
startEnd
,
endIndex
+
1
);
AiWritingTitleGenerationDto
aiWritingTitleGenerationDto
=
JsonUtils
.
deSerialize
(
substring
,
AiWritingTitleGenerationDto
.
class
);
AiWritingTitleGenerationDto
aiWritingTitleGenerationDto
=
JsonUtils
.
deSerialize
(
substring
,
AiWritingTitleGenerationDto
.
class
);
if
(
aiWritingTitleGenerationDto
==
null
){
if
(
aiWritingTitleGenerationDto
==
null
)
{
aiWritingTitleGenerationDto
.
setNeedWriting
(
false
);
aiWritingTitleGenerationDto
.
setNeedWriting
(
false
);
aiWritingTitleGenerationDto
.
setTitle
(
StringUtils
.
EMPTY
);
aiWritingTitleGenerationDto
.
setTitle
(
StringUtils
.
EMPTY
);
}
}
return
aiWritingTitleGenerationDto
;
return
aiWritingTitleGenerationDto
;
}
}
private
List
<
Message
>
buildMessages
(
String
dialogsId
,
Long
userId
,
String
input
,
String
fileUrl
,
List
<
KnowledgeContentResult
>
knowledgeContentResults
)
throws
Exception
{
private
List
<
Message
>
buildMessages
(
String
dialogsId
,
Long
userId
,
String
input
,
String
fileUrl
,
List
<
KnowledgeContentResult
>
knowledgeContentResults
,
AiWritingTitleGenerationDto
aiWritingTitleGenerationDto
)
throws
Exception
{
// 获取对话提示词
// 获取对话提示词
String
promptCode
=
"AiWritingPrompt"
;
String
promptCode
=
"AiWritingPrompt"
;
BizAgentApplicationGcConfigEntity
documentDialoguePrompt
=
bizAgentApplicationGcConfigService
.
getByConfigCode
(
promptCode
);
BizAgentApplicationGcConfigEntity
documentDialoguePrompt
=
bizAgentApplicationGcConfigService
.
getByConfigCode
(
promptCode
);
...
@@ -308,7 +311,6 @@ public class AiWritingServiceImpl implements AiWritingService {
...
@@ -308,7 +311,6 @@ public class AiWritingServiceImpl implements AiWritingService {
fileContent
=
DocumentLoad
.
documentToText
(
file
);
fileContent
=
DocumentLoad
.
documentToText
(
file
);
}
}
// 加载对话提示词
// 加载对话提示词
String
prompt
=
documentDialoguePrompt
.
getConfigSystem
();
String
prompt
=
documentDialoguePrompt
.
getConfigSystem
();
if
(
CollectionUtils
.
isNotEmpty
(
knowledgeContentResults
))
{
if
(
CollectionUtils
.
isNotEmpty
(
knowledgeContentResults
))
{
...
@@ -317,6 +319,11 @@ public class AiWritingServiceImpl implements AiWritingService {
...
@@ -317,6 +319,11 @@ public class AiWritingServiceImpl implements AiWritingService {
}
else
{
}
else
{
prompt
=
prompt
.
replace
(
"${knowledgeContent}"
,
StringUtils
.
EMPTY
);
prompt
=
prompt
.
replace
(
"${knowledgeContent}"
,
StringUtils
.
EMPTY
);
}
}
if
(
aiWritingTitleGenerationDto
!=
null
&&
aiWritingTitleGenerationDto
.
getNeedWriting
())
{
prompt
=
prompt
.
replace
(
"${title}"
,
aiWritingTitleGenerationDto
.
getTitle
());
}
else
{
prompt
=
prompt
.
replace
(
"${title}"
,
StringUtils
.
EMPTY
);
}
prompt
=
prompt
.
replace
(
"${fileContent}"
,
fileContent
);
prompt
=
prompt
.
replace
(
"${fileContent}"
,
fileContent
);
...
@@ -328,13 +335,13 @@ public class AiWritingServiceImpl implements AiWritingService {
...
@@ -328,13 +335,13 @@ public class AiWritingServiceImpl implements AiWritingService {
messages
.
add
(
systemMessage
);
messages
.
add
(
systemMessage
);
// 对话记录
// 对话记录
BizA
gentApplicationDialoguesRecordEntity
recordEntity
=
new
BizAgentApplication
DialoguesRecordEntity
();
BizA
iWritingDialoguesRecordEntity
recordEntity
=
new
BizAiWriting
DialoguesRecordEntity
();
recordEntity
.
setDialogsId
(
dialogsId
);
recordEntity
.
setDialogsId
(
dialogsId
);
recordEntity
.
setIsDeleted
(
CommonConstant
.
IsDeleted
.
N
);
recordEntity
.
setIsDeleted
(
CommonConstant
.
IsDeleted
.
N
);
recordEntity
.
setMemberId
(
userId
);
recordEntity
.
setMemberId
(
userId
);
List
<
BizA
gentApplicationDialoguesRecordEntity
>
recordEntities
=
bizAgentApplication
DialoguesRecordService
.
findByExample
(
recordEntity
,
null
);
List
<
BizA
iWritingDialoguesRecordEntity
>
recordEntities
=
bizAiWriting
DialoguesRecordService
.
findByExample
(
recordEntity
,
null
);
if
(
CollectionUtils
.
isNotEmpty
(
recordEntities
))
{
if
(
CollectionUtils
.
isNotEmpty
(
recordEntities
))
{
for
(
BizA
gentApplication
DialoguesRecordEntity
entity
:
recordEntities
)
{
for
(
BizA
iWriting
DialoguesRecordEntity
entity
:
recordEntities
)
{
Message
message
=
new
Message
();
Message
message
=
new
Message
();
message
.
setContent
(
entity
.
getContent
());
message
.
setContent
(
entity
.
getContent
());
message
.
setRole
(
entity
.
getRole
());
message
.
setRole
(
entity
.
getRole
());
...
@@ -345,7 +352,7 @@ public class AiWritingServiceImpl implements AiWritingService {
...
@@ -345,7 +352,7 @@ public class AiWritingServiceImpl implements AiWritingService {
if
(
CollectionUtils
.
isNotEmpty
(
messages
))
{
if
(
CollectionUtils
.
isNotEmpty
(
messages
))
{
if
(
LLMRoleEnum
.
USER
.
getRole
().
equals
(
messages
.
get
(
messages
.
size
()
-
1
).
getRole
()))
{
if
(
LLMRoleEnum
.
USER
.
getRole
().
equals
(
messages
.
get
(
messages
.
size
()
-
1
).
getRole
()))
{
Long
recordId
=
recordEntities
.
get
(
recordEntities
.
size
()
-
1
).
getId
();
Long
recordId
=
recordEntities
.
get
(
recordEntities
.
size
()
-
1
).
getId
();
bizA
gentApplication
DialoguesRecordService
.
deletedById
(
recordId
);
bizA
iWriting
DialoguesRecordService
.
deletedById
(
recordId
);
messages
.
remove
(
messages
.
size
()
-
1
);
messages
.
remove
(
messages
.
size
()
-
1
);
}
}
}
}
...
@@ -359,6 +366,28 @@ public class AiWritingServiceImpl implements AiWritingService {
...
@@ -359,6 +366,28 @@ public class AiWritingServiceImpl implements AiWritingService {
return
messages
;
return
messages
;
}
}
@Override
public
List
<
AiWritingDialoguesContextDto
>
getDialogueContext
(
String
dialogueId
)
{
List
<
AiWritingDialoguesRecordQueryItem
>
items
=
bizAiWritingDialoguesRecordService
.
getDialogueRecord
(
dialogueId
);
if
(
CollectionUtils
.
isNotEmpty
(
items
))
{
return
items
.
stream
().
map
(
value
->
{
AiWritingDialoguesContextDto
dto
=
new
AiWritingDialoguesContextDto
();
dto
.
setRole
(
value
.
getRole
());
dto
.
setAgentId
(
value
.
getAgentId
());
dto
.
setDocumentTitle
(
value
.
getDocumentTitle
());
dto
.
setContent
(
value
.
getContent
());
dto
.
setReasoningContent
(
value
.
getReasoningContent
());
dto
.
setTimestamp
(
value
.
getTimestamp
());
dto
.
setAgentTitle
(
value
.
getAgentTitle
());
dto
.
setAgentAvatar
(
value
.
getAgentAvatar
());
return
dto
;
}
).
collect
(
Collectors
.
toList
());
}
return
Collections
.
emptyList
();
}
/**
/**
* 文本输出结果
* 文本输出结果
*
*
...
...
src/main/java/cn/com/poc/writing/convert/BizAiWritingDialoguesRecordConvert.java
0 → 100644
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
convert
;
import
cn.com.poc.writing.model.BizAiWritingDialoguesRecordModel
;
import
cn.com.poc.writing.entity.BizAiWritingDialoguesRecordEntity
;
import
cn.com.poc.writing.dto.BizAiWritingDialoguesRecordDto
;
public
class
BizAiWritingDialoguesRecordConvert
{
public
static
BizAiWritingDialoguesRecordEntity
modelToEntity
(
BizAiWritingDialoguesRecordModel
model
){
BizAiWritingDialoguesRecordEntity
entity
=
new
BizAiWritingDialoguesRecordEntity
();
entity
.
setId
(
model
.
getId
());
entity
.
setRole
(
model
.
getRole
());
entity
.
setAgentId
(
model
.
getAgentId
());
entity
.
setDialogsId
(
model
.
getDialogsId
());
entity
.
setMemberId
(
model
.
getMemberId
());
entity
.
setContent
(
model
.
getContent
());
entity
.
setDocumentTitle
(
model
.
getDocumentTitle
());
entity
.
setTimestamp
(
model
.
getTimestamp
());
entity
.
setIsDeleted
(
model
.
getIsDeleted
());
entity
.
setCreator
(
model
.
getCreator
());
entity
.
setCreatedTime
(
model
.
getCreatedTime
());
entity
.
setModifier
(
model
.
getModifier
());
entity
.
setModifiedTime
(
model
.
getModifiedTime
());
entity
.
setSysVersion
(
model
.
getSysVersion
());
entity
.
setReasoningContent
(
model
.
getReasoningContent
());
entity
.
setFileUrl
(
model
.
getFileUrl
());
return
entity
;
}
public
static
BizAiWritingDialoguesRecordModel
entityToModel
(
BizAiWritingDialoguesRecordEntity
entity
){
BizAiWritingDialoguesRecordModel
model
=
new
BizAiWritingDialoguesRecordModel
();
model
.
setId
(
entity
.
getId
());
model
.
setRole
(
entity
.
getRole
());
model
.
setAgentId
(
entity
.
getAgentId
());
model
.
setDialogsId
(
entity
.
getDialogsId
());
model
.
setMemberId
(
entity
.
getMemberId
());
model
.
setContent
(
entity
.
getContent
());
model
.
setDocumentTitle
(
entity
.
getDocumentTitle
());
model
.
setTimestamp
(
entity
.
getTimestamp
());
model
.
setIsDeleted
(
entity
.
getIsDeleted
());
model
.
setCreator
(
entity
.
getCreator
());
model
.
setCreatedTime
(
entity
.
getCreatedTime
());
model
.
setModifier
(
entity
.
getModifier
());
model
.
setModifiedTime
(
entity
.
getModifiedTime
());
model
.
setSysVersion
(
entity
.
getSysVersion
());
model
.
setReasoningContent
(
entity
.
getReasoningContent
());
model
.
setFileUrl
(
entity
.
getFileUrl
());
return
model
;
}
public
static
BizAiWritingDialoguesRecordDto
entityToDto
(
BizAiWritingDialoguesRecordEntity
entity
){
BizAiWritingDialoguesRecordDto
dto
=
new
BizAiWritingDialoguesRecordDto
();
dto
.
setId
(
entity
.
getId
());
dto
.
setRole
(
entity
.
getRole
());
dto
.
setAgentId
(
entity
.
getAgentId
());
dto
.
setDialogsId
(
entity
.
getDialogsId
());
dto
.
setMemberId
(
entity
.
getMemberId
());
dto
.
setContent
(
entity
.
getContent
());
dto
.
setDocumentTitle
(
entity
.
getDocumentTitle
());
dto
.
setTimestamp
(
entity
.
getTimestamp
());
dto
.
setIsDeleted
(
entity
.
getIsDeleted
());
dto
.
setCreator
(
entity
.
getCreator
());
dto
.
setCreatedTime
(
entity
.
getCreatedTime
());
dto
.
setModifier
(
entity
.
getModifier
());
dto
.
setModifiedTime
(
entity
.
getModifiedTime
());
dto
.
setSysVersion
(
entity
.
getSysVersion
());
dto
.
setReasoningContent
(
entity
.
getReasoningContent
());
dto
.
setFileUrl
(
entity
.
getFileUrl
());
return
dto
;
}
public
static
BizAiWritingDialoguesRecordEntity
dtoToEntity
(
BizAiWritingDialoguesRecordDto
dto
){
BizAiWritingDialoguesRecordEntity
entity
=
new
BizAiWritingDialoguesRecordEntity
();
entity
.
setId
(
dto
.
getId
());
entity
.
setRole
(
dto
.
getRole
());
entity
.
setAgentId
(
dto
.
getAgentId
());
entity
.
setDialogsId
(
dto
.
getDialogsId
());
entity
.
setMemberId
(
dto
.
getMemberId
());
entity
.
setContent
(
dto
.
getContent
());
entity
.
setDocumentTitle
(
dto
.
getDocumentTitle
());
entity
.
setTimestamp
(
dto
.
getTimestamp
());
entity
.
setIsDeleted
(
dto
.
getIsDeleted
());
entity
.
setCreator
(
dto
.
getCreator
());
entity
.
setCreatedTime
(
dto
.
getCreatedTime
());
entity
.
setModifier
(
dto
.
getModifier
());
entity
.
setModifiedTime
(
dto
.
getModifiedTime
());
entity
.
setSysVersion
(
dto
.
getSysVersion
());
entity
.
setReasoningContent
(
dto
.
getReasoningContent
());
entity
.
setFileUrl
(
dto
.
getFileUrl
());
return
entity
;
}
}
\ No newline at end of file
src/main/java/cn/com/poc/writing/dto/AiWritingDialoguesContextDto.java
0 → 100644
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
dto
;
import
java.io.Serializable
;
public
class
AiWritingDialoguesContextDto
implements
Serializable
{
/**
* role
* 角色 user-用户 assistant-助手
*/
private
String
role
;
public
String
getRole
()
{
return
this
.
role
;
}
public
void
setRole
(
String
role
)
{
this
.
role
=
role
;
}
/**
* agent_id
* agent应用ID
*/
private
String
agentId
;
public
String
getAgentId
()
{
return
this
.
agentId
;
}
public
void
setAgentId
(
String
agentId
)
{
this
.
agentId
=
agentId
;
}
/**
* 文档标题
*/
private
String
documentTitle
;
public
String
getDocumentTitle
()
{
return
documentTitle
;
}
public
void
setDocumentTitle
(
String
documentTitle
)
{
this
.
documentTitle
=
documentTitle
;
}
/**
* content
* 内容
*/
private
String
content
;
public
String
getContent
()
{
return
this
.
content
;
}
public
void
setContent
(
String
content
)
{
this
.
content
=
content
;
}
/**
* 推理内容
*/
private
String
reasoningContent
;
public
String
getReasoningContent
()
{
return
reasoningContent
;
}
public
void
setReasoningContent
(
String
reasoningContent
)
{
this
.
reasoningContent
=
reasoningContent
;
}
/**
* timestamp
* 时间戳
*/
private
Long
timestamp
;
public
Long
getTimestamp
()
{
return
this
.
timestamp
;
}
public
void
setTimestamp
(
Long
timestamp
)
{
this
.
timestamp
=
timestamp
;
}
/**
* 应用名
*/
private
String
agentTitle
;
public
String
getAgentTitle
()
{
return
agentTitle
;
}
public
void
setAgentTitle
(
String
agentTitle
)
{
this
.
agentTitle
=
agentTitle
;
}
/**
* 应用头像
*/
private
String
agentAvatar
;
public
String
getAgentAvatar
()
{
return
agentAvatar
;
}
public
void
setAgentAvatar
(
String
agentAvatar
)
{
this
.
agentAvatar
=
agentAvatar
;
}
}
src/main/java/cn/com/poc/writing/dto/BizAiWritingDialoguesRecordDto.java
0 → 100644
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
dto
;
public
class
BizAiWritingDialoguesRecordDto
{
private
static
final
long
serialVersionUID
=
1L
;
/** id
*主键ID
*/
private
java
.
lang
.
Long
id
;
public
java
.
lang
.
Long
getId
(){
return
this
.
id
;
}
public
void
setId
(
java
.
lang
.
Long
id
){
this
.
id
=
id
;
}
/** role
*角色 user-用户 assistant-助手
*/
private
java
.
lang
.
String
role
;
public
java
.
lang
.
String
getRole
(){
return
this
.
role
;
}
public
void
setRole
(
java
.
lang
.
String
role
){
this
.
role
=
role
;
}
/** agent_id
*agent应用ID
*/
private
java
.
lang
.
String
agentId
;
public
java
.
lang
.
String
getAgentId
(){
return
this
.
agentId
;
}
public
void
setAgentId
(
java
.
lang
.
String
agentId
){
this
.
agentId
=
agentId
;
}
/** dialogs_id
*会话ID
*/
private
java
.
lang
.
String
dialogsId
;
public
java
.
lang
.
String
getDialogsId
(){
return
this
.
dialogsId
;
}
public
void
setDialogsId
(
java
.
lang
.
String
dialogsId
){
this
.
dialogsId
=
dialogsId
;
}
/** member_id
*用户ID
*/
private
java
.
lang
.
Long
memberId
;
public
java
.
lang
.
Long
getMemberId
(){
return
this
.
memberId
;
}
public
void
setMemberId
(
java
.
lang
.
Long
memberId
){
this
.
memberId
=
memberId
;
}
/** content
*内容
*/
private
java
.
lang
.
String
content
;
public
java
.
lang
.
String
getContent
(){
return
this
.
content
;
}
public
void
setContent
(
java
.
lang
.
String
content
){
this
.
content
=
content
;
}
/** document_title
*文章标题
*/
private
java
.
lang
.
String
documentTitle
;
public
java
.
lang
.
String
getDocumentTitle
(){
return
this
.
documentTitle
;
}
public
void
setDocumentTitle
(
java
.
lang
.
String
documentTitle
){
this
.
documentTitle
=
documentTitle
;
}
/** timestamp
*时间戳
*/
private
java
.
lang
.
Long
timestamp
;
public
java
.
lang
.
Long
getTimestamp
(){
return
this
.
timestamp
;
}
public
void
setTimestamp
(
java
.
lang
.
Long
timestamp
){
this
.
timestamp
=
timestamp
;
}
/** is_deleted
*是否删除 1、Y 是 2、N 否
*/
private
java
.
lang
.
String
isDeleted
;
public
java
.
lang
.
String
getIsDeleted
(){
return
this
.
isDeleted
;
}
public
void
setIsDeleted
(
java
.
lang
.
String
isDeleted
){
this
.
isDeleted
=
isDeleted
;
}
/** CREATOR
*创建人
*/
private
java
.
lang
.
String
creator
;
public
java
.
lang
.
String
getCreator
(){
return
this
.
creator
;
}
public
void
setCreator
(
java
.
lang
.
String
creator
){
this
.
creator
=
creator
;
}
/** CREATED_TIME
*创建时间
*/
private
java
.
util
.
Date
createdTime
;
public
java
.
util
.
Date
getCreatedTime
(){
return
this
.
createdTime
;
}
public
void
setCreatedTime
(
java
.
util
.
Date
createdTime
){
this
.
createdTime
=
createdTime
;
}
/** MODIFIER
*修改人
*/
private
java
.
lang
.
String
modifier
;
public
java
.
lang
.
String
getModifier
(){
return
this
.
modifier
;
}
public
void
setModifier
(
java
.
lang
.
String
modifier
){
this
.
modifier
=
modifier
;
}
/** MODIFIED_TIME
*修改时间
*/
private
java
.
util
.
Date
modifiedTime
;
public
java
.
util
.
Date
getModifiedTime
(){
return
this
.
modifiedTime
;
}
public
void
setModifiedTime
(
java
.
util
.
Date
modifiedTime
){
this
.
modifiedTime
=
modifiedTime
;
}
/** SYS_VERSION
*乐观锁,版本号
*/
private
java
.
lang
.
Integer
sysVersion
;
public
java
.
lang
.
Integer
getSysVersion
(){
return
this
.
sysVersion
;
}
public
void
setSysVersion
(
java
.
lang
.
Integer
sysVersion
){
this
.
sysVersion
=
sysVersion
;
}
/** reasoning_content
*推理内容
*/
private
java
.
lang
.
String
reasoningContent
;
public
java
.
lang
.
String
getReasoningContent
(){
return
this
.
reasoningContent
;
}
public
void
setReasoningContent
(
java
.
lang
.
String
reasoningContent
){
this
.
reasoningContent
=
reasoningContent
;
}
/** file_url
*对话文件地址
*/
private
java
.
lang
.
String
fileUrl
;
public
java
.
lang
.
String
getFileUrl
(){
return
this
.
fileUrl
;
}
public
void
setFileUrl
(
java
.
lang
.
String
fileUrl
){
this
.
fileUrl
=
fileUrl
;
}
}
\ No newline at end of file
src/main/java/cn/com/poc/writing/entity/BizAiWritingDialoguesRecordEntity.java
0 → 100644
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
entity
;
public
class
BizAiWritingDialoguesRecordEntity
{
private
static
final
long
serialVersionUID
=
1L
;
/** id
*主键ID
*/
private
java
.
lang
.
Long
id
;
public
java
.
lang
.
Long
getId
(){
return
this
.
id
;
}
public
void
setId
(
java
.
lang
.
Long
id
){
this
.
id
=
id
;
}
/** role
*角色 user-用户 assistant-助手
*/
private
java
.
lang
.
String
role
;
public
java
.
lang
.
String
getRole
(){
return
this
.
role
;
}
public
void
setRole
(
java
.
lang
.
String
role
){
this
.
role
=
role
;
}
/** agent_id
*agent应用ID
*/
private
java
.
lang
.
String
agentId
;
public
java
.
lang
.
String
getAgentId
(){
return
this
.
agentId
;
}
public
void
setAgentId
(
java
.
lang
.
String
agentId
){
this
.
agentId
=
agentId
;
}
/** dialogs_id
*会话ID
*/
private
java
.
lang
.
String
dialogsId
;
public
java
.
lang
.
String
getDialogsId
(){
return
this
.
dialogsId
;
}
public
void
setDialogsId
(
java
.
lang
.
String
dialogsId
){
this
.
dialogsId
=
dialogsId
;
}
/** member_id
*用户ID
*/
private
java
.
lang
.
Long
memberId
;
public
java
.
lang
.
Long
getMemberId
(){
return
this
.
memberId
;
}
public
void
setMemberId
(
java
.
lang
.
Long
memberId
){
this
.
memberId
=
memberId
;
}
/** content
*内容
*/
private
java
.
lang
.
String
content
;
public
java
.
lang
.
String
getContent
(){
return
this
.
content
;
}
public
void
setContent
(
java
.
lang
.
String
content
){
this
.
content
=
content
;
}
/** document_title
*文章标题
*/
private
java
.
lang
.
String
documentTitle
;
public
java
.
lang
.
String
getDocumentTitle
(){
return
this
.
documentTitle
;
}
public
void
setDocumentTitle
(
java
.
lang
.
String
documentTitle
){
this
.
documentTitle
=
documentTitle
;
}
/** timestamp
*时间戳
*/
private
java
.
lang
.
Long
timestamp
;
public
java
.
lang
.
Long
getTimestamp
(){
return
this
.
timestamp
;
}
public
void
setTimestamp
(
java
.
lang
.
Long
timestamp
){
this
.
timestamp
=
timestamp
;
}
/** is_deleted
*是否删除 1、Y 是 2、N 否
*/
private
java
.
lang
.
String
isDeleted
;
public
java
.
lang
.
String
getIsDeleted
(){
return
this
.
isDeleted
;
}
public
void
setIsDeleted
(
java
.
lang
.
String
isDeleted
){
this
.
isDeleted
=
isDeleted
;
}
/** CREATOR
*创建人
*/
private
java
.
lang
.
String
creator
;
public
java
.
lang
.
String
getCreator
(){
return
this
.
creator
;
}
public
void
setCreator
(
java
.
lang
.
String
creator
){
this
.
creator
=
creator
;
}
/** CREATED_TIME
*创建时间
*/
private
java
.
util
.
Date
createdTime
;
public
java
.
util
.
Date
getCreatedTime
(){
return
this
.
createdTime
;
}
public
void
setCreatedTime
(
java
.
util
.
Date
createdTime
){
this
.
createdTime
=
createdTime
;
}
/** MODIFIER
*修改人
*/
private
java
.
lang
.
String
modifier
;
public
java
.
lang
.
String
getModifier
(){
return
this
.
modifier
;
}
public
void
setModifier
(
java
.
lang
.
String
modifier
){
this
.
modifier
=
modifier
;
}
/** MODIFIED_TIME
*修改时间
*/
private
java
.
util
.
Date
modifiedTime
;
public
java
.
util
.
Date
getModifiedTime
(){
return
this
.
modifiedTime
;
}
public
void
setModifiedTime
(
java
.
util
.
Date
modifiedTime
){
this
.
modifiedTime
=
modifiedTime
;
}
/** SYS_VERSION
*乐观锁,版本号
*/
private
java
.
lang
.
Integer
sysVersion
;
public
java
.
lang
.
Integer
getSysVersion
(){
return
this
.
sysVersion
;
}
public
void
setSysVersion
(
java
.
lang
.
Integer
sysVersion
){
this
.
sysVersion
=
sysVersion
;
}
/** reasoning_content
*推理内容
*/
private
java
.
lang
.
String
reasoningContent
;
public
java
.
lang
.
String
getReasoningContent
(){
return
this
.
reasoningContent
;
}
public
void
setReasoningContent
(
java
.
lang
.
String
reasoningContent
){
this
.
reasoningContent
=
reasoningContent
;
}
/** file_url
*对话文件地址
*/
private
java
.
lang
.
String
fileUrl
;
public
java
.
lang
.
String
getFileUrl
(){
return
this
.
fileUrl
;
}
public
void
setFileUrl
(
java
.
lang
.
String
fileUrl
){
this
.
fileUrl
=
fileUrl
;
}
}
\ No newline at end of file
src/main/java/cn/com/poc/writing/model/BizAiWritingDialoguesRecordModel.java
0 → 100644
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
model
;
import
java.io.Serializable
;
import
cn.com.yict.framemax.data.model.BaseModelClass
;
import
javax.persistence.Column
;
import
javax.persistence.Entity
;
import
javax.persistence.Table
;
import
javax.persistence.Id
;
import
org.hibernate.annotations.DynamicInsert
;
import
org.hibernate.annotations.DynamicUpdate
;
import
javax.persistence.Version
;
import
javax.persistence.GeneratedValue
;
import
javax.persistence.GenerationType
;
/**
* Model class for biz_ai_writing_dialogues_record
* AI写作-用户对话记录
*/
@Entity
@Table
(
name
=
"biz_ai_writing_dialogues_record"
)
@DynamicInsert
@DynamicUpdate
public
class
BizAiWritingDialoguesRecordModel
extends
BaseModelClass
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/** id
*主键ID
*/
private
java
.
lang
.
Long
id
;
@Column
(
name
=
"id"
,
length
=
19
)
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
AUTO
)
public
java
.
lang
.
Long
getId
(){
return
this
.
id
;
}
public
void
setId
(
java
.
lang
.
Long
id
){
this
.
id
=
id
;
super
.
addValidField
(
"id"
);
}
/** role
*角色 user-用户 assistant-助手
*/
private
java
.
lang
.
String
role
;
@Column
(
name
=
"role"
,
length
=
100
)
public
java
.
lang
.
String
getRole
(){
return
this
.
role
;
}
public
void
setRole
(
java
.
lang
.
String
role
){
this
.
role
=
role
;
super
.
addValidField
(
"role"
);
}
/** agent_id
*agent应用ID
*/
private
java
.
lang
.
String
agentId
;
@Column
(
name
=
"agent_id"
,
length
=
200
)
public
java
.
lang
.
String
getAgentId
(){
return
this
.
agentId
;
}
public
void
setAgentId
(
java
.
lang
.
String
agentId
){
this
.
agentId
=
agentId
;
super
.
addValidField
(
"agentId"
);
}
/** dialogs_id
*会话ID
*/
private
java
.
lang
.
String
dialogsId
;
@Column
(
name
=
"dialogs_id"
,
length
=
100
)
public
java
.
lang
.
String
getDialogsId
(){
return
this
.
dialogsId
;
}
public
void
setDialogsId
(
java
.
lang
.
String
dialogsId
){
this
.
dialogsId
=
dialogsId
;
super
.
addValidField
(
"dialogsId"
);
}
/** member_id
*用户ID
*/
private
java
.
lang
.
Long
memberId
;
@Column
(
name
=
"member_id"
,
length
=
19
)
public
java
.
lang
.
Long
getMemberId
(){
return
this
.
memberId
;
}
public
void
setMemberId
(
java
.
lang
.
Long
memberId
){
this
.
memberId
=
memberId
;
super
.
addValidField
(
"memberId"
);
}
/** content
*内容
*/
private
java
.
lang
.
String
content
;
@Column
(
name
=
"content"
,
length
=
2147483647
)
public
java
.
lang
.
String
getContent
(){
return
this
.
content
;
}
public
void
setContent
(
java
.
lang
.
String
content
){
this
.
content
=
content
;
super
.
addValidField
(
"content"
);
}
/** document_title
*文章标题
*/
private
java
.
lang
.
String
documentTitle
;
@Column
(
name
=
"document_title"
,
length
=
120
)
public
java
.
lang
.
String
getDocumentTitle
(){
return
this
.
documentTitle
;
}
public
void
setDocumentTitle
(
java
.
lang
.
String
documentTitle
){
this
.
documentTitle
=
documentTitle
;
super
.
addValidField
(
"documentTitle"
);
}
/** timestamp
*时间戳
*/
private
java
.
lang
.
Long
timestamp
;
@Column
(
name
=
"timestamp"
,
length
=
19
)
public
java
.
lang
.
Long
getTimestamp
(){
return
this
.
timestamp
;
}
public
void
setTimestamp
(
java
.
lang
.
Long
timestamp
){
this
.
timestamp
=
timestamp
;
super
.
addValidField
(
"timestamp"
);
}
/** is_deleted
*是否删除 1、Y 是 2、N 否
*/
private
java
.
lang
.
String
isDeleted
;
@Column
(
name
=
"is_deleted"
,
length
=
1
)
public
java
.
lang
.
String
getIsDeleted
(){
return
this
.
isDeleted
;
}
public
void
setIsDeleted
(
java
.
lang
.
String
isDeleted
){
this
.
isDeleted
=
isDeleted
;
super
.
addValidField
(
"isDeleted"
);
}
/** CREATOR
*创建人
*/
private
java
.
lang
.
String
creator
;
@Column
(
name
=
"CREATOR"
,
length
=
225
)
public
java
.
lang
.
String
getCreator
(){
return
this
.
creator
;
}
public
void
setCreator
(
java
.
lang
.
String
creator
){
this
.
creator
=
creator
;
super
.
addValidField
(
"creator"
);
}
/** CREATED_TIME
*创建时间
*/
private
java
.
util
.
Date
createdTime
;
@Column
(
name
=
"CREATED_TIME"
,
length
=
19
)
public
java
.
util
.
Date
getCreatedTime
(){
return
this
.
createdTime
;
}
public
void
setCreatedTime
(
java
.
util
.
Date
createdTime
){
this
.
createdTime
=
createdTime
;
super
.
addValidField
(
"createdTime"
);
}
/** MODIFIER
*修改人
*/
private
java
.
lang
.
String
modifier
;
@Column
(
name
=
"MODIFIER"
,
length
=
225
)
public
java
.
lang
.
String
getModifier
(){
return
this
.
modifier
;
}
public
void
setModifier
(
java
.
lang
.
String
modifier
){
this
.
modifier
=
modifier
;
super
.
addValidField
(
"modifier"
);
}
/** MODIFIED_TIME
*修改时间
*/
private
java
.
util
.
Date
modifiedTime
;
@Column
(
name
=
"MODIFIED_TIME"
,
length
=
19
)
public
java
.
util
.
Date
getModifiedTime
(){
return
this
.
modifiedTime
;
}
public
void
setModifiedTime
(
java
.
util
.
Date
modifiedTime
){
this
.
modifiedTime
=
modifiedTime
;
super
.
addValidField
(
"modifiedTime"
);
}
/** SYS_VERSION
*乐观锁,版本号
*/
private
java
.
lang
.
Integer
sysVersion
;
@Column
(
name
=
"SYS_VERSION"
,
length
=
10
)
@Version
public
java
.
lang
.
Integer
getSysVersion
(){
return
this
.
sysVersion
;
}
public
void
setSysVersion
(
java
.
lang
.
Integer
sysVersion
){
this
.
sysVersion
=
sysVersion
;
super
.
addValidField
(
"sysVersion"
);
}
/** reasoning_content
*推理内容
*/
private
java
.
lang
.
String
reasoningContent
;
@Column
(
name
=
"reasoning_content"
,
length
=
2147483647
)
public
java
.
lang
.
String
getReasoningContent
(){
return
this
.
reasoningContent
;
}
public
void
setReasoningContent
(
java
.
lang
.
String
reasoningContent
){
this
.
reasoningContent
=
reasoningContent
;
super
.
addValidField
(
"reasoningContent"
);
}
/** file_url
*对话文件地址
*/
private
java
.
lang
.
String
fileUrl
;
@Column
(
name
=
"file_url"
,
length
=
120
)
public
java
.
lang
.
String
getFileUrl
(){
return
this
.
fileUrl
;
}
public
void
setFileUrl
(
java
.
lang
.
String
fileUrl
){
this
.
fileUrl
=
fileUrl
;
super
.
addValidField
(
"fileUrl"
);
}
}
\ No newline at end of file
src/main/java/cn/com/poc/writing/query/AiWritingDialoguesRecordQuery.sql
0 → 100644
View file @
dad21e4d
select
baadr
.
role
,
baadr
.
agent_id
,
baadr
.
dialogs_id
,
baadr
.
member_id
,
baadr
.
content
,
baadr
.
reasoning_content
,
baadr
.
document_title
,
baadr
.
`timestamp`
,
baap
.
agent_avatar
,
baap
.
agent_title
from
biz_ai_writing_dialogues_record
baadr
left
join
biz_agent_application_publish
baap
on
baadr
.
agent_id
=
baap
.
agent_id
and
baap
.
is_deleted
=
'N'
where
baadr
.
is_deleted
=
'N'
<<
and
baadr
.
dialogs_id
=
:
dialogueId
>>
order
by
baadr
.
`timestamp`
asc
\ No newline at end of file
src/main/java/cn/com/poc/writing/query/AiWritingDialoguesRecordQueryCondition.java
0 → 100644
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
query
;
import
java.io.Serializable
;
/**
* Query Condition class for AgentApplicationDialoguesRecordQuery
*/
public
class
AiWritingDialoguesRecordQueryCondition
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
String
dialogueId
;
public
String
getDialogueId
(){
return
this
.
dialogueId
;
}
public
void
setDialogueId
(
String
dialogueId
){
this
.
dialogueId
=
dialogueId
;
}
}
\ No newline at end of file
src/main/java/cn/com/poc/writing/query/AiWritingDialoguesRecordQueryItem.java
0 → 100644
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
query
;
import
cn.com.yict.framemax.data.model.BaseItemClass
;
import
javax.persistence.Column
;
import
javax.persistence.Entity
;
import
java.io.Serializable
;
/**
* Query Item class for AgentApplicationDialoguesRecordQuery
*/
@Entity
public
class
AiWritingDialoguesRecordQueryItem
extends
BaseItemClass
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* role
* role
*/
private
String
role
;
@Column
(
name
=
"role"
)
public
String
getRole
()
{
return
this
.
role
;
}
public
void
setRole
(
String
role
)
{
this
.
role
=
role
;
}
/**
* agent_id
* agent_id
*/
private
String
agentId
;
@Column
(
name
=
"agent_id"
)
public
String
getAgentId
()
{
return
this
.
agentId
;
}
public
void
setAgentId
(
String
agentId
)
{
this
.
agentId
=
agentId
;
}
/**
* dialogs_id
* dialogs_id
*/
private
String
dialogsId
;
@Column
(
name
=
"dialogs_id"
)
public
String
getDialogsId
()
{
return
this
.
dialogsId
;
}
public
void
setDialogsId
(
String
dialogsId
)
{
this
.
dialogsId
=
dialogsId
;
}
/**
* member_id
* member_id
*/
private
Long
memberId
;
@Column
(
name
=
"member_id"
)
public
Long
getMemberId
()
{
return
this
.
memberId
;
}
public
void
setMemberId
(
Long
memberId
)
{
this
.
memberId
=
memberId
;
}
/**
* document_title
*/
private
String
documentTitle
;
@Column
(
name
=
"document_title"
)
public
String
getDocumentTitle
()
{
return
documentTitle
;
}
public
void
setDocumentTitle
(
String
documentTitle
)
{
this
.
documentTitle
=
documentTitle
;
}
/**
* content
* content
*/
private
String
content
;
@Column
(
name
=
"content"
)
public
String
getContent
()
{
return
this
.
content
;
}
public
void
setContent
(
String
content
)
{
this
.
content
=
content
;
}
/**
* reasoning_content
*/
private
String
reasoningContent
;
@Column
(
name
=
"reasoning_content"
)
public
String
getReasoningContent
()
{
return
reasoningContent
;
}
public
void
setReasoningContent
(
String
reasoningContent
)
{
this
.
reasoningContent
=
reasoningContent
;
}
/**
* timestamp
* timestamp
*/
private
Long
timestamp
;
@Column
(
name
=
"timestamp"
)
public
Long
getTimestamp
()
{
return
this
.
timestamp
;
}
public
void
setTimestamp
(
Long
timestamp
)
{
this
.
timestamp
=
timestamp
;
}
/**
* agent_avatar
* agent_avatar
*/
private
String
agentAvatar
;
@Column
(
name
=
"agent_avatar"
)
public
String
getAgentAvatar
()
{
return
this
.
agentAvatar
;
}
public
void
setAgentAvatar
(
String
agentAvatar
)
{
this
.
agentAvatar
=
agentAvatar
;
}
/**
* agent_title
* agent_title
*/
private
String
agentTitle
;
@Column
(
name
=
"agent_title"
)
public
String
getAgentTitle
()
{
return
this
.
agentTitle
;
}
public
void
setAgentTitle
(
String
agentTitle
)
{
this
.
agentTitle
=
agentTitle
;
}
}
\ No newline at end of file
src/main/java/cn/com/poc/writing/repository/BizAiWritingDialoguesRecordRepository.java
0 → 100644
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
repository
;
import
cn.com.yict.framemax.data.repository.Repository
;
import
cn.com.poc.writing.model.BizAiWritingDialoguesRecordModel
;
public
interface
BizAiWritingDialoguesRecordRepository
extends
Repository
<
BizAiWritingDialoguesRecordModel
,
java
.
lang
.
Long
>
{
}
\ No newline at end of file
src/main/java/cn/com/poc/writing/rest/AiWritingRest.java
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
rest
;
package
cn
.
com
.
poc
.
writing
.
rest
;
import
cn.com.poc.expose.dto.DialoguesContextDto
;
import
cn.com.poc.writing.dto.*
;
import
cn.com.poc.writing.dto.*
;
import
cn.com.yict.framemax.core.rest.BaseRest
;
import
cn.com.yict.framemax.core.rest.BaseRest
;
import
cn.com.yict.framemax.web.permission.Access
;
import
cn.com.yict.framemax.web.permission.Access
;
...
@@ -25,4 +26,11 @@ public interface AiWritingRest extends BaseRest {
...
@@ -25,4 +26,11 @@ public interface AiWritingRest extends BaseRest {
AiWritingTitleGenerationDto
titleGeneration
(
@RequestBody
TitleGenerationDto
titleGenerationDto
);
AiWritingTitleGenerationDto
titleGeneration
(
@RequestBody
TitleGenerationDto
titleGenerationDto
);
/**
* 获取对话上下文
*
* @param dialogueId 对话ID
*/
List
<
AiWritingDialoguesContextDto
>
getDialogueContext
(
@RequestParam
String
dialogueId
)
throws
Exception
;
}
}
src/main/java/cn/com/poc/writing/rest/BizAiWritingDialoguesRecordRest.java
0 → 100644
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
rest
;
import
cn.com.yict.framemax.core.rest.BaseRest
;
import
cn.com.poc.writing.dto.BizAiWritingDialoguesRecordDto
;
import
cn.com.yict.framemax.data.model.PagingInfo
;
import
java.util.Collection
;
import
java.util.List
;
import
cn.com.yict.framemax.web.permission.Access
;
import
cn.com.yict.framemax.web.permission.Permission
;
import
org.springframework.web.bind.annotation.RequestBody
;
public
interface
BizAiWritingDialoguesRecordRest
extends
BaseRest
{
BizAiWritingDialoguesRecordDto
getById
(
java
.
lang
.
Long
id
)
throws
Exception
;
List
<
BizAiWritingDialoguesRecordDto
>
getList
(
BizAiWritingDialoguesRecordDto
example
,
PagingInfo
pagingInfo
)
throws
Exception
;
BizAiWritingDialoguesRecordDto
save
(
BizAiWritingDialoguesRecordDto
dto
)
throws
Exception
;
BizAiWritingDialoguesRecordDto
update
(
BizAiWritingDialoguesRecordDto
dto
)
throws
Exception
;
void
deletedById
(
java
.
lang
.
Long
id
)
throws
Exception
;
}
\ No newline at end of file
src/main/java/cn/com/poc/writing/rest/impl/AiWritingRestImpl.java
View file @
dad21e4d
...
@@ -55,4 +55,10 @@ public class AiWritingRestImpl implements AiWritingRest {
...
@@ -55,4 +55,10 @@ public class AiWritingRestImpl implements AiWritingRest {
Assert
.
notBlank
(
titleGenerationDto
.
getInput
(),
"input is null"
);
Assert
.
notBlank
(
titleGenerationDto
.
getInput
(),
"input is null"
);
return
aiWritingService
.
titleGeneration
(
titleGenerationDto
.
getInput
());
return
aiWritingService
.
titleGeneration
(
titleGenerationDto
.
getInput
());
}
}
@Override
public
List
<
AiWritingDialoguesContextDto
>
getDialogueContext
(
String
dialogueId
)
throws
Exception
{
Assert
.
notBlank
(
dialogueId
,
"dialogues id is null"
);
return
aiWritingService
.
getDialogueContext
(
dialogueId
);
}
}
}
src/main/java/cn/com/poc/writing/rest/impl/BizAiWritingDialoguesRecordRestImpl.java
0 → 100644
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
rest
.
impl
;
import
java.util.List
;
import
javax.annotation.Resource
;
import
org.springframework.stereotype.Component
;
import
cn.com.poc.writing.rest.BizAiWritingDialoguesRecordRest
;
import
cn.com.poc.writing.service.BizAiWritingDialoguesRecordService
;
import
cn.com.poc.writing.dto.BizAiWritingDialoguesRecordDto
;
import
cn.com.poc.writing.entity.BizAiWritingDialoguesRecordEntity
;
import
cn.com.yict.framemax.data.model.PagingInfo
;
import
cn.com.poc.writing.convert.BizAiWritingDialoguesRecordConvert
;
import
java.util.stream.Collectors
;
import
org.springframework.util.Assert
;
@Component
public
class
BizAiWritingDialoguesRecordRestImpl
implements
BizAiWritingDialoguesRecordRest
{
@Resource
private
BizAiWritingDialoguesRecordService
service
;
public
BizAiWritingDialoguesRecordDto
getById
(
java
.
lang
.
Long
id
)
throws
Exception
{
Assert
.
notNull
(
id
);
return
BizAiWritingDialoguesRecordConvert
.
entityToDto
(
service
.
get
(
id
));
}
public
List
<
BizAiWritingDialoguesRecordDto
>
getList
(
BizAiWritingDialoguesRecordDto
dto
,
PagingInfo
pagingInfo
)
throws
Exception
{
return
service
.
findByExample
(
BizAiWritingDialoguesRecordConvert
.
dtoToEntity
(
dto
),
pagingInfo
)
.
stream
()
.
map
(
BizAiWritingDialoguesRecordConvert:
:
entityToDto
)
.
collect
(
Collectors
.
toList
());
}
public
BizAiWritingDialoguesRecordDto
save
(
BizAiWritingDialoguesRecordDto
dto
)
throws
Exception
{
Assert
.
notNull
(
dto
);
BizAiWritingDialoguesRecordEntity
entity
=
BizAiWritingDialoguesRecordConvert
.
dtoToEntity
(
dto
);
return
BizAiWritingDialoguesRecordConvert
.
entityToDto
(
service
.
save
(
entity
));
}
public
BizAiWritingDialoguesRecordDto
update
(
BizAiWritingDialoguesRecordDto
dto
)
throws
Exception
{
Assert
.
notNull
(
dto
);
BizAiWritingDialoguesRecordEntity
entity
=
BizAiWritingDialoguesRecordConvert
.
dtoToEntity
(
dto
);
return
BizAiWritingDialoguesRecordConvert
.
entityToDto
(
service
.
update
(
entity
));
}
public
void
deletedById
(
java
.
lang
.
Long
id
)
throws
Exception
{
Assert
.
notNull
(
id
);
service
.
deletedById
(
id
);
}
}
\ No newline at end of file
src/main/java/cn/com/poc/writing/service/BizAiWritingDialoguesRecordService.java
0 → 100644
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
service
;
import
cn.com.poc.writing.query.AiWritingDialoguesRecordQueryItem
;
import
cn.com.yict.framemax.core.service.BaseService
;
import
cn.com.poc.writing.entity.BizAiWritingDialoguesRecordEntity
;
import
cn.com.yict.framemax.data.model.PagingInfo
;
import
java.util.Collection
;
import
java.util.List
;
public
interface
BizAiWritingDialoguesRecordService
extends
BaseService
{
BizAiWritingDialoguesRecordEntity
get
(
java
.
lang
.
Long
id
)
throws
Exception
;
List
<
BizAiWritingDialoguesRecordEntity
>
findByExample
(
BizAiWritingDialoguesRecordEntity
example
,
PagingInfo
pagingInfo
)
throws
Exception
;
BizAiWritingDialoguesRecordEntity
save
(
BizAiWritingDialoguesRecordEntity
entity
)
throws
Exception
;
BizAiWritingDialoguesRecordEntity
update
(
BizAiWritingDialoguesRecordEntity
entity
)
throws
Exception
;
void
deletedById
(
java
.
lang
.
Long
id
)
throws
Exception
;
List
<
AiWritingDialoguesRecordQueryItem
>
getDialogueRecord
(
String
dialogueId
);
}
\ No newline at end of file
src/main/java/cn/com/poc/writing/service/impl/BizAiWritingDialoguesRecordServiceImpl.java
0 → 100644
View file @
dad21e4d
package
cn
.
com
.
poc
.
writing
.
service
.
impl
;
import
cn.com.poc.writing.query.AiWritingDialoguesRecordQueryCondition
;
import
cn.com.poc.writing.query.AiWritingDialoguesRecordQueryItem
;
import
cn.com.yict.framemax.core.service.impl.BaseServiceImpl
;
import
cn.com.poc.writing.service.BizAiWritingDialoguesRecordService
;
import
cn.com.poc.writing.model.BizAiWritingDialoguesRecordModel
;
import
cn.com.poc.writing.entity.BizAiWritingDialoguesRecordEntity
;
import
cn.com.poc.writing.convert.BizAiWritingDialoguesRecordConvert
;
import
cn.com.poc.writing.repository.BizAiWritingDialoguesRecordRepository
;
import
cn.com.yict.framemax.data.model.PagingInfo
;
import
org.springframework.stereotype.Service
;
import
org.apache.commons.collections4.CollectionUtils
;
import
java.util.ArrayList
;
import
java.util.stream.Collectors
;
import
java.util.List
;
import
javax.annotation.Resource
;
import
org.springframework.util.Assert
;
@Service
public
class
BizAiWritingDialoguesRecordServiceImpl
extends
BaseServiceImpl
implements
BizAiWritingDialoguesRecordService
{
@Resource
private
BizAiWritingDialoguesRecordRepository
repository
;
public
BizAiWritingDialoguesRecordEntity
get
(
java
.
lang
.
Long
id
)
throws
Exception
{
Assert
.
notNull
(
id
);
BizAiWritingDialoguesRecordModel
model
=
this
.
repository
.
get
(
id
);
if
(
model
==
null
)
{
return
null
;
}
if
(
"Y"
.
equals
(
model
.
getIsDeleted
()))
{
return
null
;
}
return
BizAiWritingDialoguesRecordConvert
.
modelToEntity
(
model
);
}
public
List
<
BizAiWritingDialoguesRecordEntity
>
findByExample
(
BizAiWritingDialoguesRecordEntity
example
,
PagingInfo
pagingInfo
)
throws
Exception
{
List
<
BizAiWritingDialoguesRecordEntity
>
result
=
new
ArrayList
<
BizAiWritingDialoguesRecordEntity
>();
BizAiWritingDialoguesRecordModel
model
=
new
BizAiWritingDialoguesRecordModel
();
if
(
example
!=
null
)
{
model
=
BizAiWritingDialoguesRecordConvert
.
entityToModel
(
example
);
}
model
.
setIsDeleted
(
"N"
);
List
<
BizAiWritingDialoguesRecordModel
>
models
=
this
.
repository
.
findByExample
(
model
,
pagingInfo
);
if
(
CollectionUtils
.
isNotEmpty
(
models
))
{
result
=
models
.
stream
().
map
(
BizAiWritingDialoguesRecordConvert:
:
modelToEntity
).
collect
(
Collectors
.
toList
());
}
return
result
;
}
public
BizAiWritingDialoguesRecordEntity
save
(
BizAiWritingDialoguesRecordEntity
entity
)
throws
Exception
{
Assert
.
notNull
(
entity
);
entity
.
setId
(
null
);
entity
.
setIsDeleted
(
"N"
);
BizAiWritingDialoguesRecordModel
model
=
BizAiWritingDialoguesRecordConvert
.
entityToModel
(
entity
);
BizAiWritingDialoguesRecordModel
saveModel
=
this
.
repository
.
save
(
model
);
return
BizAiWritingDialoguesRecordConvert
.
modelToEntity
(
saveModel
);
}
public
BizAiWritingDialoguesRecordEntity
update
(
BizAiWritingDialoguesRecordEntity
entity
)
throws
Exception
{
Assert
.
notNull
(
entity
);
Assert
.
notNull
(
entity
.
getId
(),
"update pk can not be null"
);
BizAiWritingDialoguesRecordModel
model
=
this
.
repository
.
get
(
entity
.
getId
());
if
(
entity
.
getRole
()
!=
null
)
{
model
.
setRole
(
entity
.
getRole
());
}
if
(
entity
.
getAgentId
()
!=
null
)
{
model
.
setAgentId
(
entity
.
getAgentId
());
}
if
(
entity
.
getDialogsId
()
!=
null
)
{
model
.
setDialogsId
(
entity
.
getDialogsId
());
}
if
(
entity
.
getMemberId
()
!=
null
)
{
model
.
setMemberId
(
entity
.
getMemberId
());
}
if
(
entity
.
getContent
()
!=
null
)
{
model
.
setContent
(
entity
.
getContent
());
}
if
(
entity
.
getDocumentTitle
()
!=
null
)
{
model
.
setDocumentTitle
(
entity
.
getDocumentTitle
());
}
if
(
entity
.
getTimestamp
()
!=
null
)
{
model
.
setTimestamp
(
entity
.
getTimestamp
());
}
if
(
entity
.
getIsDeleted
()
!=
null
)
{
model
.
setIsDeleted
(
entity
.
getIsDeleted
());
}
if
(
entity
.
getCreator
()
!=
null
)
{
model
.
setCreator
(
entity
.
getCreator
());
}
if
(
entity
.
getCreatedTime
()
!=
null
)
{
model
.
setCreatedTime
(
entity
.
getCreatedTime
());
}
if
(
entity
.
getModifier
()
!=
null
)
{
model
.
setModifier
(
entity
.
getModifier
());
}
if
(
entity
.
getModifiedTime
()
!=
null
)
{
model
.
setModifiedTime
(
entity
.
getModifiedTime
());
}
if
(
entity
.
getSysVersion
()
!=
null
)
{
model
.
setSysVersion
(
entity
.
getSysVersion
());
}
if
(
entity
.
getReasoningContent
()
!=
null
)
{
model
.
setReasoningContent
(
entity
.
getReasoningContent
());
}
if
(
entity
.
getFileUrl
()
!=
null
)
{
model
.
setFileUrl
(
entity
.
getFileUrl
());
}
BizAiWritingDialoguesRecordModel
saveModel
=
this
.
repository
.
save
(
model
);
return
BizAiWritingDialoguesRecordConvert
.
modelToEntity
(
saveModel
);
}
public
void
deletedById
(
java
.
lang
.
Long
id
)
throws
Exception
{
Assert
.
notNull
(
id
);
BizAiWritingDialoguesRecordModel
model
=
this
.
repository
.
get
(
id
);
if
(
model
!=
null
)
{
if
(
"N"
.
equals
(
model
.
getIsDeleted
()))
{
model
.
setIsDeleted
(
"Y"
);
this
.
repository
.
save
(
model
);
}
}
}
@Override
public
List
<
AiWritingDialoguesRecordQueryItem
>
getDialogueRecord
(
String
dialogueId
)
{
AiWritingDialoguesRecordQueryCondition
condition
=
new
AiWritingDialoguesRecordQueryCondition
();
condition
.
setDialogueId
(
dialogueId
);
return
this
.
sqlDao
.
query
(
condition
,
AiWritingDialoguesRecordQueryItem
.
class
);
}
}
\ No newline at end of file
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