diff --git a/bonus-admin/src/main/java/com/bonus/web/service/analysis/AnalysisService.java b/bonus-admin/src/main/java/com/bonus/web/service/analysis/AnalysisService.java index a8931d9..f0db0cf 100644 --- a/bonus-admin/src/main/java/com/bonus/web/service/analysis/AnalysisService.java +++ b/bonus-admin/src/main/java/com/bonus/web/service/analysis/AnalysisService.java @@ -173,7 +173,8 @@ public class AnalysisService { RabbitMqMessage msg = new RabbitMqMessage(); String taskId = UUID.randomUUID().toString(); msg.setMessageId(taskId); - msg.setUploadPath(dto.getFiles().get(i).getFilePath()); +// msg.setUploadPath(dto.getFiles().get(i).getFilePath()); + msg.setUploadPath("analysisDatabase/2025/11/29/2055f27b7a8c4fb883b1f9d12d95872a.pdf"); msg.setProId(dto.getProId()); msg.setTemplateId(dto.getTemplateId()); msg.setAnalysisLabelId(dto.getAnalysisLabelId()); @@ -233,6 +234,9 @@ public class AnalysisService { */ public AjaxResult getProDetail(AnalysisDto.TemplateDto dto) { AnalysisVo analysisVo = analysisService.getProDetail(dto); + // 查询标段文件的文件组成 + List bidCompositions = analysisService.getBidCompositionByBid(analysisVo); + analysisVo.setBidCompositions(bidCompositions); // 查询类型为2时查询文件 if(dto.getQueryType() == 2){ // 查询项目组成文件 diff --git a/bonus-analysis/src/main/java/com/bonus/analysis/mapper/IASAnalysisMapper.java b/bonus-analysis/src/main/java/com/bonus/analysis/mapper/IASAnalysisMapper.java index bf0145c..f30fbe8 100644 --- a/bonus-analysis/src/main/java/com/bonus/analysis/mapper/IASAnalysisMapper.java +++ b/bonus-analysis/src/main/java/com/bonus/analysis/mapper/IASAnalysisMapper.java @@ -137,4 +137,13 @@ public interface IASAnalysisMapper { * @date 2025/11/29 15:51 */ void delProBidAnalysisResult(AnalysisDto.TemplateDto dto); + + /** + * 查询标段文件的文件组成 + * @param analysisVo + * @return List + * @author cwchen + * @date 2025/11/30 13:29 + */ + List getBidCompositionByBid(AnalysisVo analysisVo); } diff --git a/bonus-analysis/src/main/java/com/bonus/analysis/service/IASAnalysisService.java b/bonus-analysis/src/main/java/com/bonus/analysis/service/IASAnalysisService.java index d16d826..326f016 100644 --- a/bonus-analysis/src/main/java/com/bonus/analysis/service/IASAnalysisService.java +++ b/bonus-analysis/src/main/java/com/bonus/analysis/service/IASAnalysisService.java @@ -135,4 +135,13 @@ public interface IASAnalysisService { * @date 2025/11/29 15:48 */ void delProBidAnalysisResult(AnalysisDto.TemplateDto dto); + + /** + * 查询标段文件的文件组成 + * @param analysisVo + * @return List + * @author cwchen + * @date 2025/11/30 13:28 + */ + List getBidCompositionByBid(AnalysisVo analysisVo); } diff --git a/bonus-analysis/src/main/java/com/bonus/analysis/service/impl/ASAnalysisServiceImpl.java b/bonus-analysis/src/main/java/com/bonus/analysis/service/impl/ASAnalysisServiceImpl.java index dbfb6d8..072c948 100644 --- a/bonus-analysis/src/main/java/com/bonus/analysis/service/impl/ASAnalysisServiceImpl.java +++ b/bonus-analysis/src/main/java/com/bonus/analysis/service/impl/ASAnalysisServiceImpl.java @@ -14,6 +14,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.Optional; @@ -107,4 +108,15 @@ public class ASAnalysisServiceImpl implements IASAnalysisService { public void delProBidAnalysisResult(AnalysisDto.TemplateDto dto) { analysisMapper.delProBidAnalysisResult(dto); } + + @Override + public List getBidCompositionByBid(AnalysisVo analysisVo) { + try { + List list = Optional.ofNullable(analysisMapper.getBidCompositionByBid(analysisVo)).orElse(new ArrayList<>()); + return list; + } catch (Exception e) { + log.error(e.getMessage()); + return new ArrayList<>(); + } + } } diff --git a/bonus-analysis/src/main/resources/mapper/AnalysisMapper.xml b/bonus-analysis/src/main/resources/mapper/AnalysisMapper.xml index f54dcb0..e0e6417 100644 --- a/bonus-analysis/src/main/resources/mapper/AnalysisMapper.xml +++ b/bonus-analysis/src/main/resources/mapper/AnalysisMapper.xml @@ -34,9 +34,9 @@ INSERT INTO tb_pro(template_id,create_user_id,create_user_name,update_user_id, - update_user_name,analysis_status) + update_user_name) VALUES ( - #{templateId},#{createUserId},#{createUserName},#{updateUserId},#{updateUserName},'0' + #{templateId},#{createUserId},#{createUserName},#{updateUserId},#{updateUserName} ) @@ -82,7 +82,8 @@ tp.bid_opening_method AS bidOpeningMethod, tp.create_time AS createTime, tp.analysis_status AS analysisStatus, - tp.pro_introduction AS proIntroduction + tp.pro_introduction AS proIntroduction, + tp.template_id AS templateId FROM tb_pro tp WHERE pro_id = #{proId} AND del_flag = '0' @@ -122,8 +123,8 @@ + + diff --git a/bonus-common/src/main/java/com/bonus/common/domain/analysis/vo/AnalysisLabelItemOcrVo.java b/bonus-common/src/main/java/com/bonus/common/domain/analysis/vo/AnalysisLabelItemOcrVo.java index b258d99..efe8714 100644 --- a/bonus-common/src/main/java/com/bonus/common/domain/analysis/vo/AnalysisLabelItemOcrVo.java +++ b/bonus-common/src/main/java/com/bonus/common/domain/analysis/vo/AnalysisLabelItemOcrVo.java @@ -23,12 +23,12 @@ public class AnalysisLabelItemOcrVo { /** * 解析名称 */ - private String search_keyword; + private String searchKeyword; /** * 解析编码 */ - private String target_field; + private String targetField; /** * 父节点 diff --git a/bonus-common/src/main/java/com/bonus/common/domain/analysis/vo/AnalysisVo.java b/bonus-common/src/main/java/com/bonus/common/domain/analysis/vo/AnalysisVo.java index 8a38bff..e390bd0 100644 --- a/bonus-common/src/main/java/com/bonus/common/domain/analysis/vo/AnalysisVo.java +++ b/bonus-common/src/main/java/com/bonus/common/domain/analysis/vo/AnalysisVo.java @@ -89,6 +89,9 @@ public class AnalysisVo { * */ private List bidList; - /**文件组成*/ + /**项目文件组成*/ List compositions; + + /**标段文件组成*/ + private List bidCompositions; } diff --git a/bonus-common/src/main/java/com/bonus/common/domain/ocr/dto/AnalysisOcrRequest.java b/bonus-common/src/main/java/com/bonus/common/domain/ocr/dto/AnalysisOcrRequest.java index 4921a0b..d8a8df0 100644 --- a/bonus-common/src/main/java/com/bonus/common/domain/ocr/dto/AnalysisOcrRequest.java +++ b/bonus-common/src/main/java/com/bonus/common/domain/ocr/dto/AnalysisOcrRequest.java @@ -5,6 +5,7 @@ import com.fasterxml.jackson.annotation.JsonProperty; import lombok.Data; import java.io.File; +import java.util.ArrayList; import java.util.List; /** @@ -32,12 +33,12 @@ public class AnalysisOcrRequest { private String gpus = "2"; private String doc_folder_path; - private String cover_keys; +// private List cover_keys = new ArrayList<>(); private List extraction_items; - public AnalysisOcrRequest(String doc_folder_path, String cover_keys, List extraction_items) { + public AnalysisOcrRequest(String doc_folder_path, /*List cover_keys,*/ List extraction_items) { this.doc_folder_path = doc_folder_path; - this.cover_keys = cover_keys; +// this.cover_keys = cover_keys; this.extraction_items = extraction_items; } diff --git a/bonus-common/src/main/java/com/bonus/common/domain/ocr/vo/AnalysisResponse.java b/bonus-common/src/main/java/com/bonus/common/domain/ocr/vo/AnalysisResponse.java index d41a5db..33bc5cc 100644 --- a/bonus-common/src/main/java/com/bonus/common/domain/ocr/vo/AnalysisResponse.java +++ b/bonus-common/src/main/java/com/bonus/common/domain/ocr/vo/AnalysisResponse.java @@ -24,7 +24,7 @@ public class AnalysisResponse { private String message; // 消息 @JsonProperty("data") - private Map data; // 识别数据 + private Map data; // 识别数据 public boolean isSuccess() { return Objects.equals(status, "success"); diff --git a/bonus-rabbitmq/src/main/java/com/bonus/rabbitmq/consumer/RabbitMQConsumerService.java b/bonus-rabbitmq/src/main/java/com/bonus/rabbitmq/consumer/RabbitMQConsumerService.java index 4b3433e..cab6c6a 100644 --- a/bonus-rabbitmq/src/main/java/com/bonus/rabbitmq/consumer/RabbitMQConsumerService.java +++ b/bonus-rabbitmq/src/main/java/com/bonus/rabbitmq/consumer/RabbitMQConsumerService.java @@ -169,6 +169,14 @@ public class RabbitMQConsumerService { public void performAnalysisRecognition2(RabbitMqMessage message,String folderPath){ try { + + if(message.getBidId() == null){ + // 1.项目解析 + + }else { + // 2.标段解析 + } + List labelItemVoList = analysisService.getAnalysisLabels(message.getAnalysisLabelId(),message.getTemplateId()); AnalysisOcrRequest analysisOcrRequest = buildOcrRequest2(folderPath, labelItemVoList); AnalysisResponse ocrResponse2 = analysisOcrService.callOcrService(analysisOcrRequest); @@ -206,7 +214,6 @@ public class RabbitMQConsumerService { */ private AnalysisOcrRequest buildOcrRequest2(String filePath,List list) { AnalysisOcrRequest ocrRequest = new AnalysisOcrRequest(); - ocrRequest.setCover_keys(""); ocrRequest.setExtraction_items(list); ocrRequest.setDoc_folder_path(filePath); ocrRequest.setAnalysisType("2");