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
1
Merge Requests
1
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
54c1b683
Commit
54c1b683
authored
Oct 30, 2025
by
R10
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
获取单据结果修改
parent
6777bb2b
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
282 additions
and
74 deletions
+282
-74
BizAiDataAuditTaskRest.java
...cn/com/poc/ai_data_audit/rest/BizAiDataAuditTaskRest.java
+2
-1
BizAiDataAuditTaskRestImpl.java
...c/ai_data_audit/rest/impl/BizAiDataAuditTaskRestImpl.java
+6
-0
DataAuditRestImpl.java
...cn/com/poc/ai_data_audit/rest/impl/DataAuditRestImpl.java
+3
-58
BizAiDataAuditTaskService.java
.../poc/ai_data_audit/service/BizAiDataAuditTaskService.java
+2
-0
DataAuditService.java
...va/cn/com/poc/ai_data_audit/service/DataAuditService.java
+20
-0
BizAiDataAuditTaskServiceImpl.java
...ata_audit/service/impl/BizAiDataAuditTaskServiceImpl.java
+10
-2
DataAuditTaskServiceImpl.java
.../ai_data_audit/service/impl/DataAuditTaskServiceImpl.java
+225
-0
MinerUOcrService.java
...dparty/resource/demand/ai/aggregate/MinerUOcrService.java
+4
-2
MinerUOcrServiceImpl.java
...source/demand/ai/aggregate/impl/MinerUOcrServiceImpl.java
+10
-11
No files found.
src/main/java/cn/com/poc/ai_data_audit/rest/BizAiDataAuditTaskRest.java
View file @
54c1b683
...
@@ -16,5 +16,6 @@ public interface BizAiDataAuditTaskRest extends BaseRest {
...
@@ -16,5 +16,6 @@ public interface BizAiDataAuditTaskRest extends BaseRest {
List
<
BizAiDataAuditTaskDto
>
getTaskList
()
throws
Exception
;
List
<
BizAiDataAuditTaskDto
>
getTaskList
()
throws
Exception
;
BizAiDataAuditTaskDto
getByTaskId
(
@RequestParam
Integer
taskId
)
throws
Exception
;
BizAiDataAuditTaskDto
getByTaskId
(
@RequestParam
Integer
taskId
)
throws
Exception
;
void
delete
(
@RequestParam
Integer
taskId
)
throws
Exception
;
}
}
\ No newline at end of file
src/main/java/cn/com/poc/ai_data_audit/rest/impl/BizAiDataAuditTaskRestImpl.java
View file @
54c1b683
...
@@ -46,4 +46,10 @@ public class BizAiDataAuditTaskRestImpl implements BizAiDataAuditTaskRest {
...
@@ -46,4 +46,10 @@ public class BizAiDataAuditTaskRestImpl implements BizAiDataAuditTaskRest {
}
}
return
BizAiDataAuditTaskConvert
.
entityToDto
(
bizAiDataAuditTaskEntity
);
return
BizAiDataAuditTaskConvert
.
entityToDto
(
bizAiDataAuditTaskEntity
);
}
}
@Override
public
void
delete
(
Integer
taskId
)
throws
Exception
{
Assert
.
notNull
(
taskId
,
"taskId can not be null"
);
bizAiDataAuditTaskService
.
delete
(
taskId
);
}
}
}
\ No newline at end of file
src/main/java/cn/com/poc/ai_data_audit/rest/impl/DataAuditRestImpl.java
View file @
54c1b683
...
@@ -6,22 +6,13 @@ import cn.com.poc.ai_data_audit.dto.FileUploadConfirmDto;
...
@@ -6,22 +6,13 @@ import cn.com.poc.ai_data_audit.dto.FileUploadConfirmDto;
import
cn.com.poc.ai_data_audit.dto.FileUploadDto
;
import
cn.com.poc.ai_data_audit.dto.FileUploadDto
;
import
cn.com.poc.ai_data_audit.dto.FileUploadReturnDto
;
import
cn.com.poc.ai_data_audit.dto.FileUploadReturnDto
;
import
cn.com.poc.ai_data_audit.service.BizAiDataAuditTaskService
;
import
cn.com.poc.ai_data_audit.service.BizAiDataAuditTaskService
;
import
cn.com.poc.common.service.BosConfigService
;
import
cn.com.poc.ai_data_audit.service.DataAuditService
;
import
cn.com.poc.common.utils.StringUtils
;
import
cn.com.poc.thirdparty.resource.demand.ai.aggregate.MinerUOcrService
;
import
cn.com.poc.thirdparty.resource.demand.ai.entity.orc.minerU.MinerUOcrResponse
;
import
cn.com.poc.thirdparty.resource.demand.ai.entity.orc.minerU.MinerUOcrResult
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
java.io.InputStream
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
/**
* @Author:Roger Wu
* @Author:Roger Wu
...
@@ -35,62 +26,16 @@ public class DataAuditRestImpl implements DataAuditRest {
...
@@ -35,62 +26,16 @@ public class DataAuditRestImpl implements DataAuditRest {
private
BizAiDataAuditTaskService
bizAiDataAuditTaskService
;
private
BizAiDataAuditTaskService
bizAiDataAuditTaskService
;
@Resource
@Resource
private
MinerUOcrService
minerUOcr
Service
;
private
DataAuditService
dataAudit
Service
;
@Override
@Override
public
List
<
FileUploadReturnDto
>
fileUpload
(
List
<
FileUploadDto
>
fileUploadDtoList
)
throws
Exception
{
public
List
<
FileUploadReturnDto
>
fileUpload
(
List
<
FileUploadDto
>
fileUploadDtoList
)
throws
Exception
{
if
(
CollectionUtils
.
isEmpty
(
fileUploadDtoList
))
{
if
(
CollectionUtils
.
isEmpty
(
fileUploadDtoList
))
{
throw
new
Exception
(
"please upload files"
);
throw
new
Exception
(
"please upload files"
);
}
}
// 获取单个文件的文件名
List
<
String
>
fileNames
=
fileUploadDtoList
.
stream
()
.
map
(
item
->
item
.
getFileName
())
.
collect
(
Collectors
.
toList
());
Map
<
String
,
String
>
fileNameMap
=
new
HashMap
<>();
return
dataAuditService
.
fileUploadAndProcessing
(
fileUploadDtoList
);
// fileNameMap.put("DOC-01","Work Permit Application Details");
// fileNameMap.put("DOC-02","Work Permit Extension Details");
fileNameMap
.
put
(
"DOC-03"
,
"Work Method Statement"
);
fileNameMap
.
put
(
"DOC-04"
,
"Safety Method Statement or Safety Plan"
);
fileNameMap
.
put
(
"DOC-05"
,
"Risk Assessment"
);
fileNameMap
.
put
(
"DOC-06"
,
"Work Programme"
);
fileNameMap
.
put
(
"DOC-07"
,
"Location Plan"
);
fileNameMap
.
put
(
"DOC-08"
,
"HKIA Contractor Safety (Construction & Maintenance) Training Record"
);
fileNameMap
.
put
(
"DOC-09"
,
"HKIA BRAAS Check Form or BRAAS Exemption Declaration Form"
);
fileNameMap
.
put
(
"DOC-10"
,
"Premises Endorser Declaration Form for Work Permit Application"
);
fileNameMap
.
put
(
"DOC-11"
,
"OCWIP"
);
fileNameMap
.
put
(
"DOC-12"
,
"Insurance"
);
fileNameMap
.
put
(
"DOC-13"
,
"Pay-in-Slip for Work Permit Processing Fee"
);
fileNameMap
.
put
(
"DOC-14"
,
"HKIA APM Safety Video Training and Examination Record"
);
fileNameMap
.
put
(
"DOC-15"
,
"Aerodrome Safety Risk Assessment"
);
fileNameMap
.
put
(
"DOC-16"
,
"System Change Request (SCR)"
);
fileNameMap
.
put
(
"DOC-17"
,
"CCTV Equipment Configuration Request Form"
);
fileNameMap
.
put
(
"DOC-18"
,
"Permit to Dig"
);
fileNameMap
.
put
(
"DOC-19"
,
"Temporary Traffic Management Plan"
);
//执行文件名匹配
//执行类型匹配
MinerUOcrResponse
minerUOcrResponse
=
new
MinerUOcrResponse
();
// minerUOcrResponse.setFile();
// minerUOcrResponse.setOutput_dir();
// minerUOcrResponse.setLang_list();
// minerUOcrResponse.setBackend();
// minerUOcrResponse.setParse_method();
// minerUOcrResponse.setFormula_enable();
// minerUOcrResponse.setTable_enable();
// minerUOcrResponse.setServer_url();
// minerUOcrResponse.setReturn_md();
// minerUOcrResponse.setReturn_middle_json();
// minerUOcrResponse.setReturn_model_output();
// minerUOcrResponse.setReturn_content_list();
// minerUOcrResponse.setReturn_images();
// minerUOcrResponse.setResponse_format_zip();
// minerUOcrResponse.setStart_page_id();
// minerUOcrResponse.setEnd_page_id();
MinerUOcrResult
minerUOcrResult
=
minerUOcrService
.
fileParse
(
minerUOcrResponse
);
return
new
ArrayList
<
FileUploadReturnDto
>();
}
}
@Override
@Override
...
...
src/main/java/cn/com/poc/ai_data_audit/service/BizAiDataAuditTaskService.java
View file @
54c1b683
...
@@ -11,6 +11,8 @@ public interface BizAiDataAuditTaskService extends BaseService {
...
@@ -11,6 +11,8 @@ public interface BizAiDataAuditTaskService extends BaseService {
BizAiDataAuditTaskEntity
get
(
Integer
id
)
throws
Exception
;
BizAiDataAuditTaskEntity
get
(
Integer
id
)
throws
Exception
;
void
delete
(
Integer
id
)
throws
Exception
;
List
<
BizAiDataAuditTaskEntity
>
findByExample
(
BizAiDataAuditTaskEntity
example
,
PagingInfo
pagingInfo
)
throws
Exception
;
List
<
BizAiDataAuditTaskEntity
>
findByExample
(
BizAiDataAuditTaskEntity
example
,
PagingInfo
pagingInfo
)
throws
Exception
;
void
createDataAuditTask
(
String
taskName
,
FileUploadConfirmDto
fileUploadConfirmDto
)
throws
Exception
;
void
createDataAuditTask
(
String
taskName
,
FileUploadConfirmDto
fileUploadConfirmDto
)
throws
Exception
;
...
...
src/main/java/cn/com/poc/ai_data_audit/service/DataAuditService.java
0 → 100644
View file @
54c1b683
package
cn
.
com
.
poc
.
ai_data_audit
.
service
;
import
cn.com.poc.ai_data_audit.dto.FileUploadConfirmDto
;
import
cn.com.poc.ai_data_audit.dto.FileUploadDto
;
import
cn.com.poc.ai_data_audit.entity.BizAiDataAuditTaskEntity
;
import
cn.com.yict.framemax.core.service.BaseService
;
import
cn.com.yict.framemax.data.model.PagingInfo
;
import
java.util.List
;
public
interface
DataAuditService
extends
BaseService
{
public
List
fileUploadAndProcessing
(
List
<
FileUploadDto
>
fileUploadDtoList
);
public
List
matchOriginalTemplateAndUploadFile
();
}
\ No newline at end of file
src/main/java/cn/com/poc/ai_data_audit/service/impl/BizAiDataAuditTaskServiceImpl.java
View file @
54c1b683
...
@@ -36,8 +36,6 @@ public class BizAiDataAuditTaskServiceImpl extends BaseServiceImpl
...
@@ -36,8 +36,6 @@ public class BizAiDataAuditTaskServiceImpl extends BaseServiceImpl
@Resource
@Resource
private
BizAiDataAuditTaskRepository
repository
;
private
BizAiDataAuditTaskRepository
repository
;
@Resource
@Resource
private
BosConfigService
bosConfigService
;
@Resource
private
BizAiDataAuditFileService
bizAiDataAuditFileService
;
private
BizAiDataAuditFileService
bizAiDataAuditFileService
;
@Override
@Override
...
@@ -56,6 +54,16 @@ public class BizAiDataAuditTaskServiceImpl extends BaseServiceImpl
...
@@ -56,6 +54,16 @@ public class BizAiDataAuditTaskServiceImpl extends BaseServiceImpl
return
BizAiDataAuditTaskConvert
.
modelToEntity
(
model
);
return
BizAiDataAuditTaskConvert
.
modelToEntity
(
model
);
}
}
@Override
public
void
delete
(
Integer
id
)
throws
Exception
{
Assert
.
notNull
(
id
);
BizAiDataAuditTaskEntity
bizAiDataAuditTaskEntity
=
get
(
id
);
if
(
bizAiDataAuditTaskEntity
==
null
)
{
throw
new
Exception
(
"the task can not be found"
);
}
deletedById
(
id
);
}
@Override
@Override
public
List
<
BizAiDataAuditTaskEntity
>
findByExample
(
BizAiDataAuditTaskEntity
example
,
PagingInfo
pagingInfo
)
throws
Exception
{
public
List
<
BizAiDataAuditTaskEntity
>
findByExample
(
BizAiDataAuditTaskEntity
example
,
PagingInfo
pagingInfo
)
throws
Exception
{
...
...
src/main/java/cn/com/poc/ai_data_audit/service/impl/DataAuditTaskServiceImpl.java
0 → 100644
View file @
54c1b683
package
cn
.
com
.
poc
.
ai_data_audit
.
service
.
impl
;
import
cn.com.poc.agent_application.entity.BizAgentApplicationDialoguesRecordEntity
;
import
cn.com.poc.agent_application.entity.BizAgentApplicationGcConfigEntity
;
import
cn.com.poc.agent_application.service.BizAgentApplicationGcConfigService
;
import
cn.com.poc.ai_data_audit.constants.DataAuditConstants
;
import
cn.com.poc.ai_data_audit.convert.BizAiDataAuditTaskConvert
;
import
cn.com.poc.ai_data_audit.dto.FileUploadConfirmDto
;
import
cn.com.poc.ai_data_audit.dto.FileUploadDto
;
import
cn.com.poc.ai_data_audit.dto.FileUploadReturnDto
;
import
cn.com.poc.ai_data_audit.entity.BizAiDataAuditFileEntity
;
import
cn.com.poc.ai_data_audit.entity.BizAiDataAuditTaskEntity
;
import
cn.com.poc.ai_data_audit.model.BizAiDataAuditTaskModel
;
import
cn.com.poc.ai_data_audit.repository.BizAiDataAuditTaskRepository
;
import
cn.com.poc.ai_data_audit.service.BizAiDataAuditFileService
;
import
cn.com.poc.ai_data_audit.service.BizAiDataAuditTaskService
;
import
cn.com.poc.ai_data_audit.service.DataAuditService
;
import
cn.com.poc.common.constant.CommonConstant
;
import
cn.com.poc.common.service.BosConfigService
;
import
cn.com.poc.common.utils.BlContext
;
import
cn.com.poc.common.utils.DocumentLoad
;
import
cn.com.poc.common.utils.JsonUtils
;
import
cn.com.poc.common.utils.UUIDTool
;
import
cn.com.poc.law.entity.legislativeDocument.LegislativeDocumentResult
;
import
cn.com.poc.law.entity.motorVehicleDrivingComplaint.Plaintiff
;
import
cn.com.poc.thirdparty.resource.demand.ai.aggregate.MinerUOcrService
;
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
;
import
cn.com.poc.thirdparty.resource.demand.ai.entity.largemodel.LargeModelResponse
;
import
cn.com.poc.thirdparty.resource.demand.ai.entity.orc.minerU.MinerUOcrResponse
;
import
cn.com.poc.thirdparty.resource.demand.ai.entity.orc.minerU.MinerUOcrResult
;
import
cn.com.yict.framemax.core.exception.BusinessException
;
import
cn.com.yict.framemax.core.i18n.I18nMessageException
;
import
cn.com.yict.framemax.core.service.impl.BaseServiceImpl
;
import
cn.com.yict.framemax.data.model.PagingInfo
;
import
cn.hutool.core.util.ObjectUtil
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.Assert
;
import
javax.annotation.Resource
;
import
java.io.File
;
import
java.io.FileOutputStream
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.net.URL
;
import
java.net.URLConnection
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.concurrent.CompletableFuture
;
import
java.util.concurrent.LinkedBlockingDeque
;
import
java.util.concurrent.ThreadPoolExecutor
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
@Service
public
class
DataAuditTaskServiceImpl
extends
BaseServiceImpl
implements
DataAuditService
{
@Resource
private
MinerUOcrService
minerUOcrService
;
@Resource
private
BizAgentApplicationGcConfigService
bizAgentApplicationGcConfigService
;
final
private
ThreadPoolExecutor
executor
=
new
ThreadPoolExecutor
(
16
,
64
,
10
,
TimeUnit
.
SECONDS
,
new
LinkedBlockingDeque
<>(
100
));
@Override
public
List
fileUploadAndProcessing
(
List
<
FileUploadDto
>
fileUploadDtoList
)
{
fileUploadDtoList
.
stream
().
collect
(
Collectors
.
groupingBy
(
item
->
item
.
getFileName
()));
// 获取单个文件的文件名
List
<
String
>
fileNames
=
fileUploadDtoList
.
stream
()
.
map
(
item
->
item
.
getFileName
())
.
collect
(
Collectors
.
toList
());
// CompletableFuture<Plaintiff> extractFileFuture = CompletableFuture.supplyAsync(() -> {
// try {
// return extractFile(input);
// } catch (Exception e) {
// throw new RuntimeException(e);
// }
// }, executor).exceptionally(ex -> {
// return new Plaintiff();
// });
//
//
// String url = fileUploadDtoList.get(0).getFileUrl();
//
// CompletableFuture<MinerUOcrResult> ocrFuture = CompletableFuture.supplyAsync(() -> {
// try {
// return ocrPrase(url);
// } catch (Exception e) {
// throw new RuntimeException(e);
// }
// }, executor).exceptionally(ex -> {
// return new MinerUOcrResult();
// });
Map
<
String
,
String
>
fileNameMap
=
new
HashMap
<>();
// fileNameMap.put("DOC-01","Work Permit Application Details");
// fileNameMap.put("DOC-02","Work Permit Extension Details");
fileNameMap
.
put
(
"DOC-03"
,
"Work Method Statement"
);
fileNameMap
.
put
(
"DOC-04"
,
"Safety Method Statement or Safety Plan"
);
fileNameMap
.
put
(
"DOC-05"
,
"Risk Assessment"
);
fileNameMap
.
put
(
"DOC-06"
,
"Work Programme"
);
fileNameMap
.
put
(
"DOC-07"
,
"Location Plan"
);
fileNameMap
.
put
(
"DOC-08"
,
"HKIA Contractor Safety (Construction & Maintenance) Training Record"
);
fileNameMap
.
put
(
"DOC-09"
,
"HKIA BRAAS Check Form or BRAAS Exemption Declaration Form"
);
fileNameMap
.
put
(
"DOC-10"
,
"Premises Endorser Declaration Form for Work Permit Application"
);
fileNameMap
.
put
(
"DOC-11"
,
"OCWIP"
);
fileNameMap
.
put
(
"DOC-12"
,
"Insurance"
);
fileNameMap
.
put
(
"DOC-13"
,
"Pay-in-Slip for Work Permit Processing Fee"
);
fileNameMap
.
put
(
"DOC-14"
,
"HKIA APM Safety Video Training and Examination Record"
);
fileNameMap
.
put
(
"DOC-15"
,
"Aerodrome Safety Risk Assessment"
);
fileNameMap
.
put
(
"DOC-16"
,
"System Change Request (SCR)"
);
fileNameMap
.
put
(
"DOC-17"
,
"CCTV Equipment Configuration Request Form"
);
fileNameMap
.
put
(
"DOC-18"
,
"Permit to Dig"
);
fileNameMap
.
put
(
"DOC-19"
,
"Temporary Traffic Management Plan"
);
//执行文件名匹配
//执行类型匹配
List
<
FileUploadReturnDto
>
fileUploadReturnDtoList
=
new
ArrayList
<>();
FileUploadReturnDto
fileUploadReturnDto
=
new
FileUploadReturnDto
();
fileUploadReturnDto
.
setOrginalTemplateName
(
"xxxxx"
);
fileUploadReturnDto
.
setOrginalTemplateCode
(
"doc1"
);
fileUploadReturnDto
.
setUploadFileName
(
"yyyyyyyy"
);
fileUploadReturnDtoList
.
add
(
fileUploadReturnDto
);
FileUploadReturnDto
fileUploadReturnDto1
=
new
FileUploadReturnDto
();
fileUploadReturnDto1
.
setOrginalTemplateName
(
"xxxxx"
);
fileUploadReturnDto1
.
setOrginalTemplateCode
(
"doc2"
);
fileUploadReturnDto1
.
setUploadFileName
(
"yyyyyyyy"
);
fileUploadReturnDtoList
.
add
(
fileUploadReturnDto1
);
return
fileUploadReturnDtoList
;
}
@Override
public
List
matchOriginalTemplateAndUploadFile
()
{
return
new
ArrayList
();
// // 获取对话提示词
// String promptCode = "AIDataAuditMatchFileName";
// BizAgentApplicationGcConfigEntity documentDialoguePrompt = bizAgentApplicationGcConfigService.getByConfigCode(promptCode);
// if (documentDialoguePrompt == null || StringUtils.isBlank(documentDialoguePrompt.getConfigSystem())) {
// throw new BusinessException("获取对话提示词失败");
// }
//
// String prompt = documentDialoguePrompt.getConfigSystem().replace("${input}", "input");
//
//
// //组装请求参数
// List<Message> messages = buildMessages(input, null, prompt);
// LargeModelResponse largeModelResponse = new LargeModelResponse();
// largeModelResponse.setModel("deepseek-v3");//获取模型);
// largeModelResponse.setMessages(messages.toArray(new Message[0]));
// largeModelResponse.setStream(false);
// LargeModelDemandResult chat = llmService.chat(largeModelResponse);
// Plaintiff plaintiff = new Plaintiff();
// if (ObjectUtil.isEmpty(chat) || !chat.getCode().equals("0")) {
// throw new BusinessException("获取失败");
// }
// String message = chat.getMessage().replaceAll("```json", StringUtils.EMPTY).replaceAll("```", StringUtils.EMPTY);
// plaintiff = JsonUtils.deSerialize(message, Plaintiff.class);
// if (ObjectUtil.isEmpty(plaintiff)) {
// throw new BusinessException("提取失败");
// }
// return plaintiff;
}
private
List
<
Message
>
buildMessages
(
String
input
,
String
fileUrl
,
String
prompt
)
throws
Exception
{
// 加载文件
String
fileContent
=
StringUtils
.
EMPTY
;
if
(
StringUtils
.
isNoneBlank
(
fileUrl
))
{
File
file
=
DocumentLoad
.
downloadURLDocument
(
fileUrl
);
fileContent
=
DocumentLoad
.
documentToText
(
file
);
}
// 加载对话提示词
// String prompt = documentDialoguePrompt.getConfigSystem();
// if (CollectionUtils.isNotEmpty(knowledgeContentResults)) {
// String knowledgeContent = JsonUtils.serialize(knowledgeContentResults);
// prompt = prompt.replace("${knowledgeContent}", knowledgeContent);
// } else {
// prompt = prompt.replace("${knowledgeContent}", StringUtils.EMPTY);
// }
// if (toolFunction != null) {
// prompt = prompt.replace("${toolFunction}", JsonUtils.serialize(toolFunction));
// }
//
// prompt = prompt.replace("${question}", input).replace("${fileContent}", fileContent);
// 配置message
List
<
Message
>
messages
=
new
ArrayList
<>();
Message
systemMessage
=
new
Message
();
systemMessage
.
setContent
(
prompt
);
systemMessage
.
setRole
(
LLMRoleEnum
.
SYSTEM
.
getRole
());
messages
.
add
(
systemMessage
);
// 用户输入
Message
message
=
new
Message
();
message
.
setContent
(
"请根据要求提取"
);
message
.
setRole
(
LLMRoleEnum
.
USER
.
getRole
());
messages
.
add
(
message
);
// logger.info("--------- Build Messages dialogsId:{},messages:{}--------------", dialogsId, messages);
return
messages
;
}
public
MinerUOcrResult
ocrPrase
(
File
file
)
{
return
minerUOcrService
.
fileParse
(
file
);
}
}
\ No newline at end of file
src/main/java/cn/com/poc/thirdparty/resource/demand/ai/aggregate/MinerUOcrService.java
View file @
54c1b683
...
@@ -3,6 +3,8 @@ package cn.com.poc.thirdparty.resource.demand.ai.aggregate;
...
@@ -3,6 +3,8 @@ package cn.com.poc.thirdparty.resource.demand.ai.aggregate;
import
cn.com.poc.thirdparty.resource.demand.ai.entity.orc.minerU.MinerUOcrResponse
;
import
cn.com.poc.thirdparty.resource.demand.ai.entity.orc.minerU.MinerUOcrResponse
;
import
cn.com.poc.thirdparty.resource.demand.ai.entity.orc.minerU.MinerUOcrResult
;
import
cn.com.poc.thirdparty.resource.demand.ai.entity.orc.minerU.MinerUOcrResult
;
import
java.io.File
;
/**
/**
* @author alex.yao
* @author alex.yao
* @date 2025/7/28
* @date 2025/7/28
...
@@ -12,8 +14,8 @@ public interface MinerUOcrService {
...
@@ -12,8 +14,8 @@ public interface MinerUOcrService {
/**
/**
* 文件OCR
* 文件OCR
*
*
* @param
respons
e
* @param
fil
e
* @return
* @return
*/
*/
MinerUOcrResult
fileParse
(
MinerUOcrResponse
respons
e
);
MinerUOcrResult
fileParse
(
File
fil
e
);
}
}
src/main/java/cn/com/poc/thirdparty/resource/demand/ai/aggregate/impl/MinerUOcrServiceImpl.java
View file @
54c1b683
...
@@ -9,11 +9,15 @@ import cn.com.poc.thirdparty.resource.demand.ai.entity.orc.minerU.MinerUOcrResul
...
@@ -9,11 +9,15 @@ import cn.com.poc.thirdparty.resource.demand.ai.entity.orc.minerU.MinerUOcrResul
import
cn.com.poc.thirdparty.resource.demand.ai.route.DgtoolsApiRoute
;
import
cn.com.poc.thirdparty.resource.demand.ai.route.DgtoolsApiRoute
;
import
cn.com.poc.thirdparty.resource.demand.dgTools.DgtoolsAbstractHttpClient
;
import
cn.com.poc.thirdparty.resource.demand.dgTools.DgtoolsAbstractHttpClient
;
import
cn.com.poc.thirdparty.resource.demand.member.service.DemandAuthService
;
import
cn.com.poc.thirdparty.resource.demand.member.service.DemandAuthService
;
import
cn.com.poc.thirdparty.resource.minerU.MinerUResponse
;
import
cn.com.poc.thirdparty.resource.minerU.api.MinerUAPI
;
import
org.apache.http.Header
;
import
org.apache.http.Header
;
import
org.apache.http.message.BasicHeader
;
import
org.apache.http.message.BasicHeader
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
java.io.File
;
import
java.io.InputStream
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
...
@@ -24,20 +28,15 @@ import java.util.List;
...
@@ -24,20 +28,15 @@ import java.util.List;
@Service
@Service
public
class
MinerUOcrServiceImpl
implements
MinerUOcrService
{
public
class
MinerUOcrServiceImpl
implements
MinerUOcrService
{
@Resource
private
DgtoolsAbstractHttpClient
dgToolsAbstractHttpClient
;
@Resource
@Resource
private
DemandAuthService
demandAuthService
;
private
MinerUAPI
minerUAPI
;
@Override
@Override
public
MinerUOcrResult
fileParse
(
MinerUOcrResponse
response
){
public
MinerUOcrResult
fileParse
(
File
file
){
String
url
=
DgtoolsApiRoute
.
DgtoolsAI
.
LEGAL_FILE
;
MinerUResponse
minerUResponse
=
new
MinerUResponse
();
List
<
Header
>
headers
=
new
ArrayList
<
Header
>()
{{
minerUResponse
.
setFiles
(
file
);
add
(
DgtoolsApiRoute
.
JSON_HEADER
);
return
(
MinerUOcrResult
)
minerUAPI
.
parsePDF
(
minerUResponse
);
add
(
DgtoolsApiRoute
.
AI_HEADER
);
add
(
new
BasicHeader
(
DgtoolsApiRoute
.
HEADER_X_PLATFORM_AUTHORIZATION
,
demandAuthService
.
getToken
()));
}};
return
null
;
}
}
}
}
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