From d20b53e1cf8993868052624be0e1d7620981a61c Mon Sep 17 00:00:00 2001 From: purple7433 <zhuxiang@seaskysh.com> Date: Fri, 27 Sep 2024 11:11:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=98=AF=E5=90=A6=E5=85=AC=E5=8A=A1=E7=A5=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../seasky/seaskyocr/api/IHeHeController.java | 3 +- .../seasky/seaskyocr/api/IOcrController.java | 2 - .../claimAudit/ClaimAuditTempServiceImpl.java | 2 +- .../command/claimAudit/XCDService.java | 4 +- .../command/claimAudit/XCDServiceImpl.java | 42 +++++++++++++++---- .../domain/aggregate/file/FileEntity.java | 2 - 6 files changed, 38 insertions(+), 17 deletions(-) diff --git a/ServiceSite/facade/src/main/java/com/seasky/seaskyocr/api/IHeHeController.java b/ServiceSite/facade/src/main/java/com/seasky/seaskyocr/api/IHeHeController.java index 075e3cb7..2eb42077 100644 --- a/ServiceSite/facade/src/main/java/com/seasky/seaskyocr/api/IHeHeController.java +++ b/ServiceSite/facade/src/main/java/com/seasky/seaskyocr/api/IHeHeController.java @@ -2,12 +2,11 @@ package com.seasky.seaskyocr.api; import com.seasky.core.common.Result; import com.seasky.seaskyocr.dto.contract.ContractCmd; -import com.seasky.seaskyocr.dto.invoice.InvoiceCmd; import com.seasky.seaskyocr.dto.invoice.HeHeInvoiceQry; +import com.seasky.seaskyocr.dto.invoice.InvoiceCmd; import com.seasky.seaskyocr.dto.invoice.SeaSkyInvoiceQry; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.multipart.MultipartFile; diff --git a/ServiceSite/facade/src/main/java/com/seasky/seaskyocr/api/IOcrController.java b/ServiceSite/facade/src/main/java/com/seasky/seaskyocr/api/IOcrController.java index f8016d76..5f84ddad 100644 --- a/ServiceSite/facade/src/main/java/com/seasky/seaskyocr/api/IOcrController.java +++ b/ServiceSite/facade/src/main/java/com/seasky/seaskyocr/api/IOcrController.java @@ -3,8 +3,6 @@ package com.seasky.seaskyocr.api; import com.seasky.core.common.Result; import com.seasky.seaskyocr.dto.TableKey; import com.seasky.seaskyocr.dto.TableKeys; -import com.seasky.seaskyocr.dto.account.AccountOut; -import com.seasky.seaskyocr.dto.account.AccountQry; import com.seasky.seaskyocr.dto.ocr.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/ServiceSite/src/main/java/com/seasky/seaskyocr/application/command/claimAudit/ClaimAuditTempServiceImpl.java b/ServiceSite/src/main/java/com/seasky/seaskyocr/application/command/claimAudit/ClaimAuditTempServiceImpl.java index 643d8e01..a0d93afd 100644 --- a/ServiceSite/src/main/java/com/seasky/seaskyocr/application/command/claimAudit/ClaimAuditTempServiceImpl.java +++ b/ServiceSite/src/main/java/com/seasky/seaskyocr/application/command/claimAudit/ClaimAuditTempServiceImpl.java @@ -156,7 +156,7 @@ public class ClaimAuditTempServiceImpl implements ClaimAuditTempService { // 鍦扮◣绁ㄥ鐞嗭紝涓婚〉鏄湴绋庣エ锛岄攢璐ф竻鍗曚笉鏌ラ獙 dspService.handleDSP(mapList); if ("5.0".equals(fileEntity.getVersion())) { - xcdService.handleXCD(mapList); + xcdService.handleXCD(mapList, fileEntity); } return mapList; } diff --git a/ServiceSite/src/main/java/com/seasky/seaskyocr/application/command/claimAudit/XCDService.java b/ServiceSite/src/main/java/com/seasky/seaskyocr/application/command/claimAudit/XCDService.java index c212fb56..5f57929b 100644 --- a/ServiceSite/src/main/java/com/seasky/seaskyocr/application/command/claimAudit/XCDService.java +++ b/ServiceSite/src/main/java/com/seasky/seaskyocr/application/command/claimAudit/XCDService.java @@ -1,5 +1,7 @@ package com.seasky.seaskyocr.application.command.claimAudit; +import com.seasky.seaskyocr.domain.aggregate.file.FileEntity; + import java.util.List; import java.util.Map; @@ -9,5 +11,5 @@ import java.util.Map; */ public interface XCDService { - void handleXCD(List<Map<String, Object>> mapList); + void handleXCD(List<Map<String, Object>> mapList, FileEntity fileEntity); } diff --git a/ServiceSite/src/main/java/com/seasky/seaskyocr/application/command/claimAudit/XCDServiceImpl.java b/ServiceSite/src/main/java/com/seasky/seaskyocr/application/command/claimAudit/XCDServiceImpl.java index 96091d23..585c5fc9 100644 --- a/ServiceSite/src/main/java/com/seasky/seaskyocr/application/command/claimAudit/XCDServiceImpl.java +++ b/ServiceSite/src/main/java/com/seasky/seaskyocr/application/command/claimAudit/XCDServiceImpl.java @@ -1,6 +1,7 @@ package com.seasky.seaskyocr.application.command.claimAudit; import cn.hutool.core.util.ObjectUtil; +import com.seasky.seaskyocr.domain.aggregate.file.FileEntity; import com.seasky.seaskyocr.dto.claimAudit.ClaimAuditOcrOut; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -17,27 +18,50 @@ import java.util.Map; public class XCDServiceImpl implements XCDService { @Override - public void handleXCD(List<Map<String, Object>> mapList) { + public void handleXCD(List<Map<String, Object>> mapList, FileEntity fileEntity) { for (Map<String, Object> map : mapList) { String billType = map.get("billType").toString(); if (ObjectUtil.isEmpty(billType)) { return; } - if (!"鑸┖杩愯緭鐢靛瓙瀹㈢エ琛岀▼鍗�".equals(billType)) { + if (!"鑸┖杩愯緭鐢靛瓙瀹㈢エ琛岀▼鍗�".equals(billType) && !"鐢靛瓙鍙戠エ锛堣埅绌鸿繍杈撶數瀛愬绁ㄨ绋嬪崟锛�".equals(billType)) { return; } - + boolean isOfficialTicket = false; List<List<ClaimAuditOcrOut>> claimAuditOcrDetailList = (List<List<ClaimAuditOcrOut>>) map.get("detailList"); - for (Integer j = 0; j < claimAuditOcrDetailList.size(); j++) { - List<ClaimAuditOcrOut> claimAuditOcrList = claimAuditOcrDetailList.get(j); + for (List<ClaimAuditOcrOut> claimAuditOcrList : claimAuditOcrDetailList) { + for (ClaimAuditOcrOut claimAuditOcrOut : claimAuditOcrList) { + if ("officialTicketCode".equals(claimAuditOcrOut.getKey())) { + String val = claimAuditOcrOut.getValue(); + if (val.contains("GP")) { + isOfficialTicket = true; + } + } + } + } + for (List<ClaimAuditOcrOut> claimAuditOcrList : claimAuditOcrDetailList) { for (ClaimAuditOcrOut claimAuditOcrOut : claimAuditOcrList) { if ("officialTicket".equals(claimAuditOcrOut.getKey())) { String val = claimAuditOcrOut.getValue(); - String ret = "false"; - if ("鍏姟".equals(val)) { - ret = "true"; + if ("5.0".equals(fileEntity.getVersion())) { + String ret = "false"; + if ("鍏姟".equals(val)) { + ret = "true"; + } + if (isOfficialTicket) { + ret = "true"; + } + claimAuditOcrOut.setValue(ret); + } else { + String ret = ""; + if ("鍏姟".equals(val)) { + ret = "鍏姟"; + } + if (isOfficialTicket) { + ret = "鍏姟"; + } + claimAuditOcrOut.setValue(ret); } - claimAuditOcrOut.setValue(ret); } } } diff --git a/ServiceSite/src/main/java/com/seasky/seaskyocr/domain/aggregate/file/FileEntity.java b/ServiceSite/src/main/java/com/seasky/seaskyocr/domain/aggregate/file/FileEntity.java index 098d6c70..8898f1df 100644 --- a/ServiceSite/src/main/java/com/seasky/seaskyocr/domain/aggregate/file/FileEntity.java +++ b/ServiceSite/src/main/java/com/seasky/seaskyocr/domain/aggregate/file/FileEntity.java @@ -7,12 +7,10 @@ import com.seasky.seaskyocr.application.command.utils.FileUtil; import lombok.Getter; import org.apache.commons.codec.binary.Base64; import org.apache.pdfbox.pdmodel.PDDocument; -import org.apache.pdfbox.text.PDFTextStripper; import org.springframework.web.multipart.MultipartFile; import sun.misc.BASE64Decoder; import javax.xml.bind.DatatypeConverter; -import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; -- GitLab