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
6b5d51cc
Commit
6b5d51cc
authored
Aug 15, 2025
by
R10
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
智写-文书提取
parent
e441f5b1
Hide whitespace changes
Inline
Side-by-side
Showing
32 changed files
with
369 additions
and
60 deletions
+369
-60
CaseContactInfo.java
...m/poc/law/entity/legislativeDocument/CaseContactInfo.java
+1
-1
CaseInfo.java
...a/cn/com/poc/law/entity/legislativeDocument/CaseInfo.java
+2
-1
ClientInfo.java
...cn/com/poc/law/entity/legislativeDocument/ClientInfo.java
+1
-1
ConflictInfo.java
.../com/poc/law/entity/legislativeDocument/ConflictInfo.java
+1
-1
SupplementaryInfo.java
...poc/law/entity/legislativeDocument/SupplementaryInfo.java
+1
-1
Agent.java
...om/poc/law/entity/motorVehicleDrivingComplaint/Agent.java
+1
-1
Claim.java
...om/poc/law/entity/motorVehicleDrivingComplaint/Claim.java
+13
-7
Defendant.java
...oc/law/entity/motorVehicleDrivingComplaint/Defendant.java
+19
-12
DefendantOrg.java
...law/entity/motorVehicleDrivingComplaint/DefendantOrg.java
+1
-1
FactsAndReasons.java
.../entity/motorVehicleDrivingComplaint/FactsAndReasons.java
+1
-1
MotorVehicleDrivingComplaintEntity.java
...eDrivingComplaint/MotorVehicleDrivingComplaintEntity.java
+1
-1
Plaintiff.java
...oc/law/entity/motorVehicleDrivingComplaint/Plaintiff.java
+6
-1
PlaintiffOrg.java
...law/entity/motorVehicleDrivingComplaint/PlaintiffOrg.java
+1
-1
Preservation.java
...law/entity/motorVehicleDrivingComplaint/Preservation.java
+1
-1
ThirdParty.java
...c/law/entity/motorVehicleDrivingComplaint/ThirdParty.java
+6
-1
ThirdPartyOrg.java
...aw/entity/motorVehicleDrivingComplaint/ThirdPartyOrg.java
+1
-1
UnderstandsMediationBenefit.java
...rVehicleDrivingComplaint/UnderstandsMediationBenefit.java
+1
-1
ExtractEntityStrategy.java
.../poc/law/extractEntityStrategy/ExtractEntityStrategy.java
+14
-1
LawyerExtractTypeConstants.java
...law/extractEntityStrategy/LawyerExtractTypeConstants.java
+1
-1
MotorVehicleDrivingComplaintDownload.java
...rategy/download/MotorVehicleDrivingComplaintDownload.java
+30
-0
MotorVehicleDrivingComplaintItem.java
...tyStrategy/download/MotorVehicleDrivingComplaintItem.java
+49
-0
MotorVehicleDrivingComplaint.java
...ategy/extractEntityType/MotorVehicleDrivingComplaint.java
+66
-2
JacksonDateArrayDeSerializer.java
.../poc/law/jsonSerializer/JacksonDateArrayDeSerializer.java
+33
-0
JacksonDateFormatDeSerializer.java
...poc/law/jsonSerializer/JacksonDateFormatDeSerializer.java
+34
-0
JacksonDateFormatSerializer.java
...m/poc/law/jsonSerializer/JacksonDateFormatSerializer.java
+35
-0
JacksonStringNotNullSerializer.java
...oc/law/jsonSerializer/JacksonStringNotNullSerializer.java
+1
-1
BizAiLawyerWritingTemplateDataRest.java
.../com/poc/law/rest/BizAiLawyerWritingTemplateDataRest.java
+1
-1
BizAiLawyerWritingTemplateDataRestImpl.java
...law/rest/impl/BizAiLawyerWritingTemplateDataRestImpl.java
+3
-4
LegalRestImpl.java
src/main/java/cn/com/poc/law/rest/impl/LegalRestImpl.java
+0
-1
BizAiLawyerWritingTemplateDataService.java
...oc/law/service/BizAiLawyerWritingTemplateDataService.java
+16
-3
AiLawServiceImpl.java
...in/java/cn/com/poc/law/service/impl/AiLawServiceImpl.java
+4
-4
BizAiLawyerWritingTemplateDataServiceImpl.java
...rvice/impl/BizAiLawyerWritingTemplateDataServiceImpl.java
+24
-8
No files found.
src/main/java/cn/com/poc/law/entity/legislativeDocument/CaseContactInfo.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
.
legislativeDocument
;
import
cn.com.poc.law.
entity
.JacksonStringNotNullSerializer
;
import
cn.com.poc.law.
jsonSerializer
.JacksonStringNotNullSerializer
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
/**
...
...
src/main/java/cn/com/poc/law/entity/legislativeDocument/CaseInfo.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
.
legislativeDocument
;
import
cn.com.poc.law.entity.JacksonStringNotNullSerializer
;
import
cn.com.poc.law.jsonSerializer.JacksonStringNotNullSerializer
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
/**
...
...
src/main/java/cn/com/poc/law/entity/legislativeDocument/ClientInfo.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
.
legislativeDocument
;
import
cn.com.poc.law.
entity
.JacksonStringNotNullSerializer
;
import
cn.com.poc.law.
jsonSerializer
.JacksonStringNotNullSerializer
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
/**
...
...
src/main/java/cn/com/poc/law/entity/legislativeDocument/ConflictInfo.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
.
legislativeDocument
;
import
cn.com.poc.law.
entity
.JacksonStringNotNullSerializer
;
import
cn.com.poc.law.
jsonSerializer
.JacksonStringNotNullSerializer
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
/**
...
...
src/main/java/cn/com/poc/law/entity/legislativeDocument/SupplementaryInfo.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
.
legislativeDocument
;
import
cn.com.poc.law.
entity
.JacksonStringNotNullSerializer
;
import
cn.com.poc.law.
jsonSerializer
.JacksonStringNotNullSerializer
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
/**
...
...
src/main/java/cn/com/poc/law/entity/Agent.java
→
src/main/java/cn/com/poc/law/entity/
motorVehicleDrivingComplaint/
Agent.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
;
package
cn
.
com
.
poc
.
law
.
entity
.
motorVehicleDrivingComplaint
;
/**
* @Author:Roger Wu
...
...
src/main/java/cn/com/poc/law/entity/Claim.java
→
src/main/java/cn/com/poc/law/entity/
motorVehicleDrivingComplaint/
Claim.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
;
package
cn
.
com
.
poc
.
law
.
entity
.
motorVehicleDrivingComplaint
;
import
cn.com.poc.law.jsonSerializer.JacksonDateArrayDeSerializer
;
import
cn.com.poc.law.jsonSerializer.JacksonDateFormatDeSerializer
;
import
com.fasterxml.jackson.databind.annotation.JsonDeserialize
;
/**
* @Author:Roger Wu
...
...
@@ -7,7 +11,8 @@ package cn.com.poc.law.entity;
*/
public
class
Claim
{
private
String
treatmentPeriod
;
@JsonDeserialize
(
contentUsing
=
JacksonDateArrayDeSerializer
.
class
)
private
String
[]
treatmentPeriod
;
private
String
hospitalName
;
private
String
medicalExpenses
;
private
String
hasMedicalReceipts
;
...
...
@@ -20,7 +25,8 @@ public class Claim {
private
String
hasNutritionProof
;
private
String
mealAllowance
;
private
String
hasMealAllowanceProof
;
private
String
lostWagesPeriod
;
@JsonDeserialize
(
contentUsing
=
JacksonDateArrayDeSerializer
.
class
)
private
String
[]
lostWagesPeriod
;
private
String
lostWagesAmount
;
private
String
transportationFee
;
private
String
hasTransportationReceipts
;
...
...
@@ -36,11 +42,11 @@ public class Claim {
private
String
otherFees
;
private
String
totalClaimAmount
;
public
String
getTreatmentPeriod
()
{
public
String
[]
getTreatmentPeriod
()
{
return
treatmentPeriod
;
}
public
void
setTreatmentPeriod
(
String
treatmentPeriod
)
{
public
void
setTreatmentPeriod
(
String
[]
treatmentPeriod
)
{
this
.
treatmentPeriod
=
treatmentPeriod
;
}
...
...
@@ -140,11 +146,11 @@ public class Claim {
this
.
hasMealAllowanceProof
=
hasMealAllowanceProof
;
}
public
String
getLostWagesPeriod
()
{
public
String
[]
getLostWagesPeriod
()
{
return
lostWagesPeriod
;
}
public
void
setLostWagesPeriod
(
String
lostWagesPeriod
)
{
public
void
setLostWagesPeriod
(
String
[]
lostWagesPeriod
)
{
this
.
lostWagesPeriod
=
lostWagesPeriod
;
}
...
...
src/main/java/cn/com/poc/law/entity/Defendant.java
→
src/main/java/cn/com/poc/law/entity/
motorVehicleDrivingComplaint/
Defendant.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
;
package
cn
.
com
.
poc
.
law
.
entity
.
motorVehicleDrivingComplaint
;
import
cn.com.poc.law.jsonSerializer.JacksonDateFormatDeSerializer
;
import
cn.com.poc.law.jsonSerializer.JacksonDateFormatSerializer
;
import
com.fasterxml.jackson.databind.annotation.JsonDeserialize
;
import
com.fasterxml.jackson.databind.annotation.JsonSerialize
;
/**
* @Author:Roger Wu
...
...
@@ -7,17 +13,18 @@ package cn.com.poc.law.entity;
*/
public
class
Defendant
{
private
String
defendantName
;
private
String
defendantGender
;
private
String
defendantDob
;
private
String
defendantEthnicity
;
private
String
defendantWorkUnit
;
private
String
defendantTitle
;
private
String
defendantPhone
;
private
String
defendantDomicile
;
private
String
defendantHabitualResidence
;
private
String
defendantIdType
;
private
String
defendantIdNumber
;
private
String
defendantName
;
private
String
defendantGender
;
@JsonDeserialize
(
using
=
JacksonDateFormatDeSerializer
.
class
)
private
String
defendantDob
;
private
String
defendantEthnicity
;
private
String
defendantWorkUnit
;
private
String
defendantTitle
;
private
String
defendantPhone
;
private
String
defendantDomicile
;
private
String
defendantHabitualResidence
;
private
String
defendantIdType
;
private
String
defendantIdNumber
;
public
String
getDefendantName
()
{
return
defendantName
;
...
...
src/main/java/cn/com/poc/law/entity/DefendantOrg.java
→
src/main/java/cn/com/poc/law/entity/
motorVehicleDrivingComplaint/
DefendantOrg.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
;
package
cn
.
com
.
poc
.
law
.
entity
.
motorVehicleDrivingComplaint
;
/**
* @Author:Roger Wu
...
...
src/main/java/cn/com/poc/law/entity/FactsAndReasons.java
→
src/main/java/cn/com/poc/law/entity/
motorVehicleDrivingComplaint/
FactsAndReasons.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
;
package
cn
.
com
.
poc
.
law
.
entity
.
motorVehicleDrivingComplaint
;
/**
* @Author:Roger Wu
...
...
src/main/java/cn/com/poc/law/entity/MotorVehicleDrivingComplaintEntity.java
→
src/main/java/cn/com/poc/law/entity/
motorVehicleDrivingComplaint/
MotorVehicleDrivingComplaintEntity.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
;
package
cn
.
com
.
poc
.
law
.
entity
.
motorVehicleDrivingComplaint
;
import
cn.com.poc.law.dto.LegalTemplateDto
;
...
...
src/main/java/cn/com/poc/law/entity/Plaintiff.java
→
src/main/java/cn/com/poc/law/entity/
motorVehicleDrivingComplaint/
Plaintiff.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
;
package
cn
.
com
.
poc
.
law
.
entity
.
motorVehicleDrivingComplaint
;
import
cn.com.poc.law.jsonSerializer.JacksonDateFormatDeSerializer
;
import
com.fasterxml.jackson.databind.annotation.JsonDeserialize
;
import
java.util.Date
;
/**
* @Author:Roger Wu
...
...
@@ -9,6 +13,7 @@ public class Plaintiff {
private
String
plaintiffName
;
private
String
plaintiffGender
;
@JsonDeserialize
(
using
=
JacksonDateFormatDeSerializer
.
class
)
private
String
plaintiffDob
;
private
String
plaintiffEthnicity
;
private
String
plaintiffWorkUnit
;
...
...
src/main/java/cn/com/poc/law/entity/PlaintiffOrg.java
→
src/main/java/cn/com/poc/law/entity/
motorVehicleDrivingComplaint/
PlaintiffOrg.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
;
package
cn
.
com
.
poc
.
law
.
entity
.
motorVehicleDrivingComplaint
;
/**
* @Author:Roger Wu
...
...
src/main/java/cn/com/poc/law/entity/Preservation.java
→
src/main/java/cn/com/poc/law/entity/
motorVehicleDrivingComplaint/
Preservation.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
;
package
cn
.
com
.
poc
.
law
.
entity
.
motorVehicleDrivingComplaint
;
/**
* @Author:Roger Wu
...
...
src/main/java/cn/com/poc/law/entity/ThirdParty.java
→
src/main/java/cn/com/poc/law/entity/
motorVehicleDrivingComplaint/
ThirdParty.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
;
package
cn
.
com
.
poc
.
law
.
entity
.
motorVehicleDrivingComplaint
;
import
com.fasterxml.jackson.databind.annotation.JsonDeserialize
;
import
cn.com.poc.law.jsonSerializer.JacksonDateFormatDeSerializer
;
/**
* @Author:Roger Wu
...
...
@@ -9,6 +12,8 @@ public class ThirdParty {
private
String
thirdPartyName
;
private
String
thirdPartyGender
;
@JsonDeserialize
(
using
=
JacksonDateFormatDeSerializer
.
class
)
private
String
thirdPartyDob
;
private
String
thirdPartyEthnicity
;
private
String
thirdPartyWorkUnit
;
...
...
src/main/java/cn/com/poc/law/entity/ThirdPartyOrg.java
→
src/main/java/cn/com/poc/law/entity/
motorVehicleDrivingComplaint/
ThirdPartyOrg.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
;
package
cn
.
com
.
poc
.
law
.
entity
.
motorVehicleDrivingComplaint
;
/**
* @Author:Roger Wu
...
...
src/main/java/cn/com/poc/law/entity/UnderstandsMediationBenefit.java
→
src/main/java/cn/com/poc/law/entity/
motorVehicleDrivingComplaint/
UnderstandsMediationBenefit.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
;
package
cn
.
com
.
poc
.
law
.
entity
.
motorVehicleDrivingComplaint
;
/**
* @Author:Roger Wu
...
...
src/main/java/cn/com/poc/law/extractEntityStrategy/ExtractEntityStrategy.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
extractEntityStrategy
;
import
cn.com.poc.law.dto.LegalTemplateDto
;
import
cn.com.poc.law.dto.TemplateCallDto
;
import
java.util.concurrent.ExecutionException
;
...
...
@@ -13,8 +14,20 @@ public interface ExtractEntityStrategy {
/**
* 提取实体
*
* @return
*/
LegalTemplateDto
extractEntity
(
String
input
)
throws
ExecutionException
,
InterruptedException
;
LegalTemplateDto
extractEntity
(
String
input
)
throws
Exception
;
/**
* 下载文件
*
* @param dto 法律模板数据传输对象,包含下载文件所需的信息
* @return 返回下载文件的路径或文件标识符
* @throws Exception 当下载过程中发生错误时抛出异常
*/
String
downloadFile
(
LegalTemplateDto
dto
)
throws
Exception
;
}
src/main/java/cn/com/poc/law/extractEntityStrategy/LawyerExtractTypeConstants.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
extractEntityStrategy
;
import
cn.com.poc.law.entity.MotorVehicleDrivingComplaintEntity
;
import
cn.com.poc.law.entity.
motorVehicleDrivingComplaint.
MotorVehicleDrivingComplaintEntity
;
import
java.lang.reflect.Type
;
...
...
src/main/java/cn/com/poc/law/extractEntityStrategy/download/MotorVehicleDrivingComplaintDownload.java
0 → 100644
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
extractEntityStrategy
.
download
;
/**
* @Author:Roger Wu
* @name:ss
* @Date:2025-08-14 19:03
*/
public
class
MotorVehicleDrivingComplaintDownload
{
MotorVehicleDrivingComplaintItem
[]
item
;
public
MotorVehicleDrivingComplaintItem
[]
getItem
()
{
return
item
;
}
public
void
setItem
(
MotorVehicleDrivingComplaintItem
[]
item
)
{
this
.
item
=
item
;
}
String
filePath
;
public
String
getFilePath
()
{
return
filePath
;
}
public
void
setFilePath
(
String
filePath
)
{
this
.
filePath
=
filePath
;
}
}
src/main/java/cn/com/poc/law/extractEntityStrategy/download/MotorVehicleDrivingComplaintItem.java
0 → 100644
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
extractEntityStrategy
.
download
;
/**
* @Author:Roger Wu
* @name:MotorVehicleDrivingComplaintItem
* @Date:2025-08-14 19:15
*/
public
class
MotorVehicleDrivingComplaintItem
{
private
String
key
;
private
String
[]
value
;
private
String
type
;
private
String
[]
options
;
public
String
getKey
()
{
return
key
;
}
public
void
setKey
(
String
key
)
{
this
.
key
=
key
;
}
public
String
[]
getValue
()
{
return
value
;
}
public
void
setValue
(
String
[]
value
)
{
this
.
value
=
value
;
}
public
String
getType
()
{
return
type
;
}
public
void
setType
(
String
type
)
{
this
.
type
=
type
;
}
public
String
[]
getOptions
()
{
return
options
;
}
public
void
setOptions
(
String
[]
options
)
{
this
.
options
=
options
;
}
}
src/main/java/cn/com/poc/law/extractEntityStrategy/extractEntityType/MotorVehicleDrivingComplaint.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
extractEntityStrategy
.
extractEntityType
;
import
cn.com.poc.law.extractEntityStrategy.download.MotorVehicleDrivingComplaintItem
;
import
cn.com.poc.agent_application.entity.BizAgentApplicationGcConfigEntity
;
import
cn.com.poc.agent_application.service.BizAgentApplicationGcConfigService
;
import
cn.com.poc.common.utils.DocumentLoad
;
import
cn.com.poc.common.utils.JsonUtils
;
import
cn.com.poc.law.entity.motorVehicleDrivingComplaint.*
;
import
cn.com.poc.law.extractEntityStrategy.ExtractEntityStrategy
;
import
cn.com.poc.law.dto.LegalTemplateDto
;
import
cn.com.poc.law.e
ntity.*
;
import
cn.com.poc.law.e
xtractEntityStrategy.download.MotorVehicleDrivingComplaintDownload
;
import
cn.com.poc.thirdparty.resource.demand.ai.constants.LLMRoleEnum
;
import
cn.com.poc.thirdparty.resource.demand.ai.entity.dialogue.Message
;
import
cn.com.poc.thirdparty.resource.demand.ai.entity.largemodel.LargeModelDemandResult
;
...
...
@@ -20,7 +22,9 @@ import org.springframework.stereotype.Service;
import
javax.annotation.Resource
;
import
java.io.File
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.concurrent.*
;
/**
...
...
@@ -46,7 +50,7 @@ public class MotorVehicleDrivingComplaint implements ExtractEntityStrategy {
* @return
*/
@Override
public
LegalTemplateDto
extractEntity
(
String
input
)
throws
Ex
ecutionException
,
InterruptedEx
ception
{
public
LegalTemplateDto
extractEntity
(
String
input
)
throws
Exception
{
CompletableFuture
<
Plaintiff
>
extractPlaintiffFuture
=
CompletableFuture
.
supplyAsync
(()
->
{
...
...
@@ -214,6 +218,66 @@ public class MotorVehicleDrivingComplaint implements ExtractEntityStrategy {
return
motorVehicleDrivingComplaintEntity
;
}
/**
* 下载文件
*
* @param dto 法律模板数据传输对象,包含下载文件所需的信息
* @return 返回下载文件的路径或文件标识符
* @throws Exception 当下载过程中发生错误时抛出异常
*/
@Override
public
String
downloadFile
(
LegalTemplateDto
dto
)
throws
Exception
{
MotorVehicleDrivingComplaintEntity
motorVehicleDrivingComplaintEntity
=
(
MotorVehicleDrivingComplaintEntity
)
dto
;
String
templateFileUrl
=
"https://gsst-poe-sit.gz.bcebos.com/v1/%E6%B0%91%E9%97%B4%E5%80%9F%E8%B4%B7%E7%BA%A0%E7%BA%B7%E6%B0%91%E4%BA%8B%E8%B5%B7%E8%AF%89%E7%8A%B6.docx"
;
//
MotorVehicleDrivingComplaintDownload
motorVehicleDrivingComplaintDownload
=
new
MotorVehicleDrivingComplaintDownload
();
motorVehicleDrivingComplaintDownload
.
setItem
(
new
MotorVehicleDrivingComplaintItem
[
0
]);
MotorVehicleDrivingComplaintItem
motorVehicleDrivingComplaintItem
=
new
MotorVehicleDrivingComplaintItem
();
motorVehicleDrivingComplaintItem
.
setKey
(
"check"
);
motorVehicleDrivingComplaintItem
.
setValue
(
new
String
[]{
motorVehicleDrivingComplaintEntity
.
getAgent
().
getAgentAuthority
()});
motorVehicleDrivingComplaintItem
.
setType
(
"checkbox"
);
motorVehicleDrivingComplaintItem
.
setOptions
(
new
String
[]{
"国有控股"
,
"国有参股"
,
"民营"
});
Map
<
String
,
String
>
plaintiffMap
=
new
HashMap
<>();
plaintiffMap
.
put
(
"男"
,
"☑"
);
plaintiffMap
.
put
(
"女"
,
"□"
);
// MotorVehicleDrivingComplaintItem plaintiffNameMotorVehicleDrivingComplaintItem = builderText("plaintiffName", new String[]{plaintiff.getPlaintiffName()});
// MotorVehicleDrivingComplaintItem plaintiffGenderMotorVehicleDrivingComplaintItem = builderText("plaintiffGender", new String[]{plaintiff.getPlaintiffGender()});
// MotorVehicleDrivingComplaintItem plaintiffDobMotorVehicleDrivingComplaintItem = builderText("plaintiffDob", new String[]{plaintiff.getPlaintiffDob()});
// MotorVehicleDrivingComplaintItem plaintiffEthnicityMotorVehicleDrivingComplaintItem = builderText("plaintiffEthnicity", new String[]{plaintiff.getPlaintiffEthnicity()});
motorVehicleDrivingComplaintDownload
.
setFilePath
(
""
);
return
null
;
}
private
MotorVehicleDrivingComplaintItem
builderText
(
String
boxName
,
String
[]
boxValue
)
{
MotorVehicleDrivingComplaintItem
motorVehicleDrivingComplaintItem
=
new
MotorVehicleDrivingComplaintItem
();
motorVehicleDrivingComplaintItem
.
setKey
(
boxName
);
motorVehicleDrivingComplaintItem
.
setValue
(
boxValue
);
motorVehicleDrivingComplaintItem
.
setType
(
"text"
);
motorVehicleDrivingComplaintItem
.
setOptions
(
null
);
return
motorVehicleDrivingComplaintItem
;
}
private
Plaintiff
extractPlaintiff
(
String
input
)
throws
Exception
{
// 获取对话提示词
...
...
src/main/java/cn/com/poc/law/jsonSerializer/JacksonDateArrayDeSerializer.java
0 → 100644
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
jsonSerializer
;
import
com.fasterxml.jackson.core.JsonParser
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.fasterxml.jackson.databind.DeserializationContext
;
import
com.fasterxml.jackson.databind.JsonDeserializer
;
import
java.io.IOException
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
/**
* @Author:Roger Wu
* @name:JacksonDateFormatDeSerializer
* @Date:2025-08-14 16:07
*/
public
class
JacksonDateArrayDeSerializer
extends
JsonDeserializer
<
String
>
{
private
static
final
SimpleDateFormat
dateFormat
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
@Override
public
String
deserialize
(
JsonParser
p
,
DeserializationContext
ctxt
)
throws
IOException
,
JsonProcessingException
{
//[]
String
date
=
p
.
getText
();
try
{
// 解析为 Date 对象
return
String
.
valueOf
(
dateFormat
.
parse
(
date
).
getTime
());
}
catch
(
ParseException
e
)
{
// 抛出运行时异常,如果解析失败
return
null
;
}
}
}
src/main/java/cn/com/poc/law/jsonSerializer/JacksonDateFormatDeSerializer.java
0 → 100644
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
jsonSerializer
;
import
com.fasterxml.jackson.core.JsonParser
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.fasterxml.jackson.databind.DeserializationContext
;
import
com.fasterxml.jackson.databind.JsonDeserializer
;
import
java.io.IOException
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
/**
* @Author:Roger Wu
* @name:JacksonDateFormatDeSerializer
* @Date:2025-08-14 16:07
*/
public
class
JacksonDateFormatDeSerializer
extends
JsonDeserializer
<
String
>
{
private
static
final
SimpleDateFormat
dateFormat
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
@Override
public
String
deserialize
(
JsonParser
p
,
DeserializationContext
ctxt
)
throws
IOException
,
JsonProcessingException
{
String
date
=
p
.
getText
();
try
{
// 解析为 Date 对象
return
String
.
valueOf
(
dateFormat
.
parse
(
date
).
getTime
());
}
catch
(
ParseException
e
)
{
// 抛出运行时异常,如果解析失败
return
null
;
}
}
}
src/main/java/cn/com/poc/law/jsonSerializer/JacksonDateFormatSerializer.java
0 → 100644
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
jsonSerializer
;
import
cn.com.poc.common.utils.StringUtils
;
import
com.fasterxml.jackson.core.JsonGenerator
;
import
com.fasterxml.jackson.databind.JsonSerializer
;
import
com.fasterxml.jackson.databind.SerializerProvider
;
import
org.springframework.context.annotation.Configuration
;
import
java.io.IOException
;
import
java.text.SimpleDateFormat
;
/**
* @Author:Roger Wu
* @name:JacksonDateFormatlSerializer
* @Date:2025-08-13 18:58
*/
@Configuration
public
class
JacksonDateFormatSerializer
extends
JsonSerializer
<
String
>
{
private
static
final
SimpleDateFormat
dateFormat
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
@Override
public
void
serialize
(
String
value
,
JsonGenerator
jsonGenerator
,
SerializerProvider
serializerProvider
)
throws
IOException
{
if
(
StringUtils
.
isBlank
(
value
))
{
value
=
null
;
}
jsonGenerator
.
writeString
(
value
);
if
(
value
!=
null
)
{
jsonGenerator
.
writeString
(
dateFormat
.
format
(
value
));
}
else
{
jsonGenerator
.
writeNull
();
}
}
}
src/main/java/cn/com/poc/law/
entity
/JacksonStringNotNullSerializer.java
→
src/main/java/cn/com/poc/law/
jsonSerializer
/JacksonStringNotNullSerializer.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
entity
;
package
cn
.
com
.
poc
.
law
.
jsonSerializer
;
import
cn.com.poc.common.utils.StringUtils
;
import
com.fasterxml.jackson.core.JsonGenerator
;
...
...
src/main/java/cn/com/poc/law/rest/BizAiLawyerWritingTemplateDataRest.java
View file @
6b5d51cc
...
...
@@ -27,7 +27,7 @@ public interface BizAiLawyerWritingTemplateDataRest extends BaseRest {
void
updateTemplateData
(
@RequestBody
SaveTemplateDataDto
saveTemplateDataDto
)
throws
Exception
;
String
downloadTemplateData
(
@RequestParam
Long
recordId
);
String
downloadTemplateData
(
@RequestParam
Long
recordId
)
throws
Exception
;
TemplateDataDetailDto
getTemplateDataDetail
(
@RequestParam
String
dialoguesId
)
throws
Exception
;
}
\ No newline at end of file
src/main/java/cn/com/poc/law/rest/impl/BizAiLawyerWritingTemplateDataRestImpl.java
View file @
6b5d51cc
...
...
@@ -63,9 +63,8 @@ public class BizAiLawyerWritingTemplateDataRestImpl implements BizAiLawyerWritin
}
@Override
public
String
downloadTemplateData
(
Long
recordId
){
service
.
downloadTemplateData
(
recordId
);
return
null
;
public
String
downloadTemplateData
(
Long
recordId
)
throws
Exception
{
return
service
.
downloadTemplateData
(
recordId
);
}
@Override
...
...
@@ -74,7 +73,7 @@ public class BizAiLawyerWritingTemplateDataRestImpl implements BizAiLawyerWritin
if
(
userBaseEntity
==
null
)
{
throw
new
BusinessException
(
"用户未登录"
);
}
return
service
.
getTemplateDataDetail
(
dialoguesId
,
userBaseEntity
.
getUserId
());
return
service
.
getTemplateDataDetail
(
dialoguesId
,
userBaseEntity
.
getUserId
()
,
true
);
}
...
...
src/main/java/cn/com/poc/law/rest/impl/LegalRestImpl.java
View file @
6b5d51cc
...
...
@@ -32,7 +32,6 @@ public class LegalRestImpl implements LegalRest {
Assert
.
notBlank
(
legalFileDto
.
getFilePath
(),
"文件路径不能为空"
);
Assert
.
notEmpty
(
legalFileDto
.
getItems
(),
"文件项不能为空"
);
LegalFileResponse
response
=
new
LegalFileResponse
();
response
.
setFilePath
(
legalFileDto
.
getFilePath
());
response
.
setItems
(
legalFileDto
.
getItems
());
...
...
src/main/java/cn/com/poc/law/service/BizAiLawyerWritingTemplateDataService.java
View file @
6b5d51cc
...
...
@@ -22,7 +22,20 @@ public interface BizAiLawyerWritingTemplateDataService extends BaseService {
void
updateTemplateData
(
Long
recordId
,
String
data
)
throws
Exception
;
void
downloadTemplateData
(
Long
recordId
);
TemplateDataDetailDto
getTemplateDataDetail
(
String
dialoguesId
,
Long
userId
)
throws
Exception
;
/**
* 下载模板数据
* @param recordId
* @return
* @throws Exception
*/
String
downloadTemplateData
(
Long
recordId
)
throws
Exception
;
/**
* 获取模板数据详情
* @param dialoguesId
* @param userId
* @return
* @throws Exception
*/
TemplateDataDetailDto
getTemplateDataDetail
(
String
dialoguesId
,
Long
userId
,
boolean
ifException
)
throws
Exception
;
}
\ No newline at end of file
src/main/java/cn/com/poc/law/service/impl/AiLawServiceImpl.java
View file @
6b5d51cc
...
...
@@ -75,7 +75,7 @@ public class AiLawServiceImpl implements AiLawService {
private
BizAgentApplicationGcConfigService
bizAgentApplicationGcConfigService
;
@Resource
LawyerTemplateExtractServiceBuilder
L
awyerTemplateExtractServiceBuilder
;
LawyerTemplateExtractServiceBuilder
l
awyerTemplateExtractServiceBuilder
;
@Resource
BizAiLawyerWritingTemplateDataService
bizAiLawyerWritingTemplateDataService
;
...
...
@@ -222,12 +222,12 @@ public class AiLawServiceImpl implements AiLawService {
fileContent
=
DocumentLoad
.
documentToText
(
file
);
}
ExtractEntityStrategy
extractEntityStrategy
=
L
awyerTemplateExtractServiceBuilder
.
getService
(
LawyerExtractTypeConstants
.
LawyerExtractTypeEnum
.
get
(
templateCode
));
ExtractEntityStrategy
extractEntityStrategy
=
l
awyerTemplateExtractServiceBuilder
.
getService
(
LawyerExtractTypeConstants
.
LawyerExtractTypeEnum
.
get
(
templateCode
));
LegalTemplateDto
legalTemplateDto
=
extractEntityStrategy
.
extractEntity
(
input
+
fileContent
);
LegalTemplateDto
returnLegalTemplateDto
=
legalTemplateDto
;
if
(!
ifCover
)
{
TemplateDataDetailDto
templateDataDetail
=
bizAiLawyerWritingTemplateDataService
.
getTemplateDataDetail
(
dialoguesId
,
userId
);
TemplateDataDetailDto
templateDataDetail
=
bizAiLawyerWritingTemplateDataService
.
getTemplateDataDetail
(
dialoguesId
,
userId
,
false
);
if
(!
ifCover
&&
templateDataDetail
!=
null
)
{
LegalTemplateDto
oldLegalTemplateDto
=
templateDataDetail
.
getLegalTemplateDto
();
JSONObject
legalTemplateDtoJsonObject
=
JSONObject
.
parseObject
(
JsonUtils
.
serialize
(
legalTemplateDto
));
JSONObject
oldLegalTemplateDtoJsonObject
=
JSONObject
.
parseObject
(
JsonUtils
.
serialize
(
oldLegalTemplateDto
));
...
...
src/main/java/cn/com/poc/law/service/impl/BizAiLawyerWritingTemplateDataServiceImpl.java
View file @
6b5d51cc
package
cn
.
com
.
poc
.
law
.
service
.
impl
;
import
cn.com.poc.common.utils.JsonUtils
;
import
cn.com.poc.common.utils.StringUtils
;
import
cn.com.poc.law.dto.LegalTemplateDto
;
...
...
@@ -8,8 +9,9 @@ import cn.com.poc.ai_dialogues.service.BizAiDialoguesService;
import
cn.com.poc.common.constant.CommonConstant
;
import
cn.com.poc.law.dto.TemplateCallDto
;
import
cn.com.poc.law.dto.TemplateDataDetailDto
;
import
cn.com.poc.law.e
ntity.MotorVehicleDrivingComplaintEntit
y
;
import
cn.com.poc.law.e
xtractEntityStrategy.ExtractEntityStrateg
y
;
import
cn.com.poc.law.extractEntityStrategy.LawyerExtractTypeConstants
;
import
cn.com.poc.law.extractEntityStrategy.LawyerTemplateExtractServiceBuilder
;
import
cn.com.yict.framemax.core.exception.BusinessException
;
import
cn.com.yict.framemax.core.service.impl.BaseServiceImpl
;
import
cn.com.poc.law.service.BizAiLawyerWritingTemplateDataService
;
...
...
@@ -40,6 +42,8 @@ public class BizAiLawyerWritingTemplateDataServiceImpl extends BaseServiceImpl
@Resource
private
BizAiDialoguesService
bizAiDialoguesService
;
@Resource
LawyerTemplateExtractServiceBuilder
LawyerTemplateExtractServiceBuilder
;
public
BizAiLawyerWritingTemplateDataEntity
get
(
java
.
lang
.
Integer
id
)
throws
Exception
{
Assert
.
notNull
(
id
);
...
...
@@ -140,12 +144,21 @@ public class BizAiLawyerWritingTemplateDataServiceImpl extends BaseServiceImpl
}
@Override
public
void
downloadTemplateData
(
Long
recordId
)
{
public
String
downloadTemplateData
(
Long
recordId
)
throws
Exception
{
BizAiLawyerWritingTemplateDataModel
model
=
new
BizAiLawyerWritingTemplateDataModel
();
model
.
setBizAiLawyerWritingTemplateDialoguesRecordId
(
recordId
);
model
.
setIsDeleted
(
"N"
);
List
<
BizAiLawyerWritingTemplateDataModel
>
models
=
this
.
repository
.
findByExample
(
model
,
null
);
if
(
org
.
springframework
.
util
.
CollectionUtils
.
isEmpty
(
models
))
{
throw
new
Exception
(
"找不到该记录"
);
}
ExtractEntityStrategy
extractEntityStrategy
=
LawyerTemplateExtractServiceBuilder
.
getService
(
LawyerExtractTypeConstants
.
LawyerExtractTypeEnum
.
get
(
models
.
get
(
0
).
getBizAiLawyerWritingTemplateCode
()));
return
extractEntityStrategy
.
downloadFile
(
JsonUtils
.
deSerialize
(
models
.
get
(
0
).
getBizAiLawyerWritingTemplateData
(),
LegalTemplateDto
.
class
));
}
@Override
public
TemplateDataDetailDto
getTemplateDataDetail
(
String
dialoguesId
,
Long
userId
)
throws
Exception
{
public
TemplateDataDetailDto
getTemplateDataDetail
(
String
dialoguesId
,
Long
userId
,
boolean
ifException
)
throws
Exception
{
BizAiDialoguesEntity
bizAiDialoguesEntity
=
new
BizAiDialoguesEntity
();
bizAiDialoguesEntity
.
setDialoguesId
(
dialoguesId
);
bizAiDialoguesEntity
.
setMemberId
(
userId
);
...
...
@@ -158,12 +171,15 @@ public class BizAiLawyerWritingTemplateDataServiceImpl extends BaseServiceImpl
BizAiLawyerWritingTemplateDataEntity
example
=
new
BizAiLawyerWritingTemplateDataEntity
();
example
.
setBizAiLawyerWritingTemplateDialoguesId
(
dialoguesId
);
example
.
setIsDeleted
(
CommonConstant
.
IsDeleted
.
N
);
List
<
BizAiLawyerWritingTemplateDataEntity
>
bizAiLawyerWritingTemplateDataEntityList
=
findByExample
(
example
,
null
);
BizAiLawyerWritingTemplateDataEntity
bizAiLawyerWritingTemplateDataEntity
=
bizAiLawyerWritingTemplateDataEntityList
.
get
(
bizAiLawyerWritingTemplateDataEntityList
.
size
()-
1
);
if
(
CollectionUtils
.
isEmpty
(
bizAiLawyerWritingTemplateDataEntityList
)
||
StringUtils
.
isBlank
(
bizAiLawyerWritingTemplateDataEntity
.
getBizAiLawyerWritingTemplateData
())){
throw
new
BusinessException
(
"查询不到模板内容信息"
);
List
<
BizAiLawyerWritingTemplateDataEntity
>
bizAiLawyerWritingTemplateDataEntityList
=
findByExample
(
example
,
null
);
if
(
CollectionUtils
.
isEmpty
(
bizAiLawyerWritingTemplateDataEntityList
)
||
StringUtils
.
isBlank
(
bizAiLawyerWritingTemplateDataEntityList
.
get
(
bizAiLawyerWritingTemplateDataEntityList
.
size
()
-
1
).
getBizAiLawyerWritingTemplateData
()))
{
if
(
ifException
)
{
throw
new
BusinessException
(
"查询不到模板内容信息"
);
}
else
{
return
null
;
}
}
BizAiLawyerWritingTemplateDataEntity
bizAiLawyerWritingTemplateDataEntity
=
bizAiLawyerWritingTemplateDataEntityList
.
get
(
bizAiLawyerWritingTemplateDataEntityList
.
size
()
-
1
);
Type
aClass
=
LawyerExtractTypeConstants
.
LawyerExtractTypeEnum
.
getClass
(
bizAiLawyerWritingTemplateDataEntity
.
getBizAiLawyerWritingTemplateCode
());
LegalTemplateDto
legalTemplateDto
=
JSON
.
deSerialize
(
aClass
,
bizAiLawyerWritingTemplateDataEntity
.
getBizAiLawyerWritingTemplateData
());
TemplateDataDetailDto
templateDataDetailDto
=
new
TemplateDataDetailDto
();
...
...
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