From 65d11fdc47783f0eb9327aeb8b0e5daa5c4d8985 Mon Sep 17 00:00:00 2001 From: guojunyun Date: Mon, 10 Nov 2025 11:21:30 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E5=9B=BD=E8=B4=B82.0=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E6=8E=A8=E9=80=81=E5=90=88=E5=90=8C=EF=BC=9A=E5=A4=84=E7=90=86?= =?UTF-8?q?=E7=BB=93=E6=9E=9C=E5=BC=82=E6=AD=A5=E8=BF=94=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/contractorder/api/ContractApi.java | 3 +- .../international/IntPushContractReqVO.java | 24 ++ .../international/IntPushContractRespVO.java | 29 +++ .../contractorder/api/ContractApiImpl.java | 211 ++++++++++-------- .../admin/contract/ContractController.java | 7 +- .../contractorder/util/ShareServiceUtil.java | 4 +- 6 files changed, 182 insertions(+), 96 deletions(-) create mode 100644 zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/international/IntPushContractReqVO.java create mode 100644 zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/international/IntPushContractRespVO.java diff --git a/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/ContractApi.java b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/ContractApi.java index 217a20d..55b7e76 100644 --- a/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/ContractApi.java +++ b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/ContractApi.java @@ -9,6 +9,7 @@ import com.zt.plat.module.contractorder.api.dto.order.PurchaseOrderWithDetailsDT import com.zt.plat.module.contractorder.api.dto.order.SalesOrdDtlDTO; import com.zt.plat.module.contractorder.api.vo.contract.international.IntContract; import com.zt.plat.module.contractorder.api.vo.contract.international.IntContractPageReq; +import com.zt.plat.module.contractorder.api.vo.contract.international.IntPushContractReqVO; import com.zt.plat.module.contractorder.enums.ApiConstants; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; @@ -44,7 +45,7 @@ public interface ContractApi { @PostMapping(PREFIX + "/push") @Operation(summary = "国贸2.0系统推送合同") - CommonResult push(@Valid @RequestBody IntContract reqVO); + void push(@Valid @RequestBody IntPushContractReqVO pushReqVO); @GetMapping(PREFIX + "/logistics/list/page") @Operation(summary = "国贸2.0系统合同分页查询") diff --git a/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/international/IntPushContractReqVO.java b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/international/IntPushContractReqVO.java new file mode 100644 index 0000000..4758570 --- /dev/null +++ b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/international/IntPushContractReqVO.java @@ -0,0 +1,24 @@ +package com.zt.plat.module.contractorder.api.vo.contract.international; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Schema(description = "国贸2.0系统推送合同 Request VO") +@Data +public class IntPushContractReqVO { + + @Schema(description = "接口请求号") + private String __requestId_; + @Schema(description = "接口类型") + private String __interfaceType__; + @Schema(description = "操作标志") + private String operateFlag; + @Schema(description = "发送时间 yyyyMMddHHmmss") + private String datetime; + @Schema(description = "单据号") + private String busiBillCode; + @Schema(description = "发送方系统") + private String system; + @Schema(description = "发送数据") + private IntContract data; +} diff --git a/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/international/IntPushContractRespVO.java b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/international/IntPushContractRespVO.java new file mode 100644 index 0000000..c26f9bf --- /dev/null +++ b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/international/IntPushContractRespVO.java @@ -0,0 +1,29 @@ +package com.zt.plat.module.contractorder.api.vo.contract.international; + +import cn.hutool.json.JSONObject; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Schema(description = "国贸2.0系统推送合同 Response VO") +@Data +public class IntPushContractRespVO { + + @Schema(description = "接口请求号") + private String __requestId_; + @Schema(description = "接口类型") + private String __interfaceType__; + @Schema(description = "单据号") + private String busiBillCode; + @Schema(description = "返回状态") + private Integer code; + @Schema(description = "返回信息") + private String message; + @Schema(description = "返回时间 yyyyMMddHHmmss") + private String datetime; + @Schema(description = "返回方系统") + private String system; + @Schema(description = "操作标志") + private String operateFlag; + @Schema(description = "返回数据") + private JSONObject data; +} diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java index cd3efdb..72ed16c 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java @@ -11,9 +11,7 @@ import com.zt.plat.module.contractorder.api.dto.contract.ContractRespDTO; import com.zt.plat.module.contractorder.api.dto.order.PrchOrdDtlDTO; import com.zt.plat.module.contractorder.api.dto.order.PurchaseOrderWithDetailsDTO; import com.zt.plat.module.contractorder.api.dto.order.SalesOrdDtlDTO; -import com.zt.plat.module.contractorder.api.vo.contract.international.IntContract; -import com.zt.plat.module.contractorder.api.vo.contract.international.IntContractPageReq; -import com.zt.plat.module.contractorder.api.vo.contract.international.Partner; +import com.zt.plat.module.contractorder.api.vo.contract.international.*; import com.zt.plat.module.contractorder.controller.admin.purchaseorder.vo.PurchaseOrderDetailsRespVO; import com.zt.plat.module.contractorder.dal.dataobject.contract.ContractMainDO; import com.zt.plat.module.contractorder.dal.dataobject.contract.ContractOtherFieldDO; @@ -33,10 +31,12 @@ import com.zt.plat.module.contractorder.dal.mysql.salesorder.SalesOrderMapper; import com.zt.plat.module.contractorder.enums.contract.DictEnum; import com.zt.plat.module.contractorder.service.contract.ContractService; import com.zt.plat.module.contractorder.service.purchaseorder.PurchaseOrderService; +import com.zt.plat.module.contractorder.util.ShareServiceUtil; import com.zt.plat.module.erp.controller.admin.erp.vo.ErpContractSaveReqVO; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.RequestBody; @@ -73,6 +73,8 @@ public class ContractApiImpl implements ContractApi { private ContractOtherFieldMapper contractOtherFieldMapper; @Resource private SystemRelativityMapper systemRelativityMapper; + @Autowired + private ShareServiceUtil shareServiceUtil; @Override public ContractRespDTO getContractByPaperNumber(String contractPaperNumber) { @@ -158,100 +160,105 @@ public class ContractApiImpl implements ContractApi { @Transactional @Override - public CommonResult push(@RequestBody IntContract reqVO) { + public void push(@RequestBody IntPushContractReqVO pushReqVO) { - // 合同主信息表映射 - ContractMainDO contractMainDO = internationalToMainDO(reqVO); + log.info("接受到国贸2.0系统推送合同数据:{}", new JSONObject(pushReqVO)); + try { + // 合同主信息表映射 + ContractMainDO contractMainDO = internationalToMainDO(pushReqVO.getData()); - // 逻辑处理 - // 操作标志 I 新增/更新;D 删除 - String operateFlag = reqVO.getOperateFlag(); - // 合同唯一键 - String externalId = reqVO.getContractId(); - // 系统合同ID - Long contractId = null; - // 查询系统关联合同 - SystemRelativityDO systemRelativityDO = systemRelativityMapper.selectOne("UP_ID", externalId); - if ("I".equals(operateFlag)) { - if (systemRelativityDO != null && systemRelativityDO.getDownId() != null) { // 修改合同 + // 逻辑处理 + // 操作标志 I 新增/更新;D 删除 + String operateFlag = pushReqVO.getData().getOperateFlag(); + // 合同唯一键 + String externalId = pushReqVO.getData().getContractId(); + // 系统合同ID + Long contractId = null; + // 查询系统关联合同 + SystemRelativityDO systemRelativityDO = systemRelativityMapper.selectOne("UP_ID", externalId); + if ("I".equals(operateFlag)) { + if (systemRelativityDO != null && systemRelativityDO.getDownId() != null) { // 修改合同 + contractId = systemRelativityDO.getDownId(); + contractMainDO.setId(contractId); + contractMainMapper.updateById(contractMainDO); + } else { // 新增合同 + contractMainMapper.insert(contractMainDO); + contractId = contractMainDO.getId(); + + // 生成关联数据 + SystemRelativityDO saveRelation = new SystemRelativityDO(); + saveRelation.setUpId(Long.parseLong(externalId)); + saveRelation.setDownId(contractId); + saveRelation.setWay(DictEnum.BSE_SYS_REL_WY_EXTERNAL.getCode()); + saveRelation.setStatus(DictEnum.BSE_SYS_REL_TP_CONTRACT.getCode()); + systemRelativityMapper.insert(saveRelation); + } + } else if ("D".equals(operateFlag)) { + if (systemRelativityDO == null || systemRelativityDO.getDownId() == null) throw exception(CONTRACT_NOT_EXISTS); contractId = systemRelativityDO.getDownId(); - contractMainDO.setId(contractId); - contractMainMapper.updateById(contractMainDO); - } else { // 新增合同 - contractMainMapper.insert(contractMainDO); - contractId = contractMainDO.getId(); - - // 生成关联数据 - SystemRelativityDO saveRelation = new SystemRelativityDO(); - saveRelation.setUpId(Long.parseLong(externalId)); - saveRelation.setDownId(contractId); - saveRelation.setWay(DictEnum.BSE_SYS_REL_WY_EXTERNAL.getCode()); - saveRelation.setStatus(DictEnum.BSE_SYS_REL_TP_CONTRACT.getCode()); - systemRelativityMapper.insert(saveRelation); + contractMainMapper.deleteById(contractId); + // 删除动态条款信息 + contractOtherFormMapper.delete("CTRT_MAIN_ID", contractId.toString()); + contractOtherFieldMapper.delete("CTRT_MAIN_ID", contractId.toString()); + pushResult(pushReqVO, 1, null); + } else { + throw exception(CONTRACT_UNKNOWN_OPERATE); } - } else if ("D".equals(operateFlag)) { - if (systemRelativityDO == null || systemRelativityDO.getDownId() == null) throw exception(CONTRACT_NOT_EXISTS); - contractId = systemRelativityDO.getDownId(); - contractMainMapper.deleteById(contractId); + + // 根据客商信息列表提交多个合同映射到erp + if (pushReqVO.getData().getPartnerList() == null || pushReqVO.getData().getPartnerList().isEmpty()) { + throw exception(CONTRACT_PARTNER_NOT_EXISTS); + } + + // 合同主信息-合同编号 + String contractPaperNumber = contractMainDO.getContractPaperNumber(); + // 合同主信息-合同名称 + String contractName = contractMainDO.getContractName(); + for (int i = 0; i < pushReqVO.getData().getPartnerList().size(); i++) { + Partner partner = pushReqVO.getData().getPartnerList().get(i); + + // 根据客商信息设置合同信息 + // 合同编号 + contractMainDO.setContractPaperNumber(contractPaperNumber + "_" + String.format("%03d", (i+1))); + pushReqVO.getData().getPartnerList().get(i) + .setErpContractPaperNumber(contractPaperNumber + "_" + String.format("%03d", (i+1))); + // 合同名称 + contractMainDO.setContractName(contractName + "_" + String.format("%03d", (i+1))); + // 境内/境外 -> 客商信息:境内/外 + contractMainDO.setIsDomestic(partner.getDomesticOrOverseas()); + // 乙方公司编号(销售方) -> 客商信息:供应商代码 + contractMainDO.setSalesCompanyNumber(partner.getPartnerCode()); + // ERP乙方公司编码 + contractMainDO.setErpSalesCompanyNumber(partner.getPartnerCode()); + // 乙方公司名称 -> 客商信息:供应商名称 + contractMainDO.setSalesCompanyName(partner.getPartnerName()); + // ERP乙方公司名称 + contractMainDO.setErpSalesCompanyName(partner.getPartnerName()); + + // 生成ERP合同映射表 + ErpContractSaveReqVO erpContractVO = contractService.getErpContract(contractMainDO); + + // 调用ERP模块 + JSONObject erpResult = contractService.sendToErp(erpContractVO); + log.info("合同提交ERP结果:{}", erpResult); + + // 调用ERP失败 + if (!erpResult.getBool("success")) { + throw exception(CONTRACT_SUBMIT_ERP_FAIL, erpResult.getStr("errMsg")); + } + } + // 删除动态条款信息 contractOtherFormMapper.delete("CTRT_MAIN_ID", contractId.toString()); contractOtherFieldMapper.delete("CTRT_MAIN_ID", contractId.toString()); - return success(true); - } else { - throw exception(CONTRACT_UNKNOWN_OPERATE); + + // 请求参数保存到动态条款 + saveIntContractFields(pushReqVO.getData(), contractId); + + pushResult(pushReqVO, 1, null); + } catch (Exception e) { + pushResult(pushReqVO, -1, e.getMessage()); } - - // 根据客商信息列表提交多个合同映射到erp - if (reqVO.getPartnerList() == null || reqVO.getPartnerList().isEmpty()) { - throw exception(CONTRACT_PARTNER_NOT_EXISTS); - } - - // 合同主信息-合同编号 - String contractPaperNumber = contractMainDO.getContractPaperNumber(); - // 合同主信息-合同名称 - String contractName = contractMainDO.getContractName(); - for (int i = 0; i < reqVO.getPartnerList().size(); i++) { - Partner partner = reqVO.getPartnerList().get(i); - - // 根据客商信息设置合同信息 - // 合同编号 - contractMainDO.setContractPaperNumber(contractPaperNumber + "_" + String.format("%03d", (i+1))); - reqVO.getPartnerList().get(i) - .setErpContractPaperNumber(contractPaperNumber + "_" + String.format("%03d", (i+1))); - // 合同名称 - contractMainDO.setContractName(contractName + "_" + String.format("%03d", (i+1))); - // 境内/境外 -> 客商信息:境内/外 - contractMainDO.setIsDomestic(partner.getDomesticOrOverseas()); - // 乙方公司编号(销售方) -> 客商信息:供应商代码 - contractMainDO.setSalesCompanyNumber(partner.getPartnerCode()); - // ERP乙方公司编码 - contractMainDO.setErpSalesCompanyNumber(partner.getPartnerCode()); - // 乙方公司名称 -> 客商信息:供应商名称 - contractMainDO.setSalesCompanyName(partner.getPartnerName()); - // ERP乙方公司名称 - contractMainDO.setErpSalesCompanyName(partner.getPartnerName()); - - // 生成ERP合同映射表 - ErpContractSaveReqVO erpContractVO = contractService.getErpContract(contractMainDO); - - // 调用ERP模块 - JSONObject erpResult = contractService.sendToErp(erpContractVO); - log.info("合同提交ERP结果:{}", erpResult); - - // 调用ERP失败 - if (!erpResult.getBool("success")) { - throw exception(CONTRACT_SUBMIT_ERP_FAIL, erpResult.getStr("errMsg")); - } - } - - // 删除动态条款信息 - contractOtherFormMapper.delete("CTRT_MAIN_ID", contractId.toString()); - contractOtherFieldMapper.delete("CTRT_MAIN_ID", contractId.toString()); - - // 请求参数保存到动态条款 - saveIntContractFields(reqVO, contractId); - - return success(true); } /** @@ -365,6 +372,32 @@ public class ContractApiImpl implements ContractApi { } } + private void pushResult(IntPushContractReqVO pushReqVO, Integer code, String msg) { + + // 返回数据 + IntPushContractRespVO body = new IntPushContractRespVO(); + body.set__requestId_(pushReqVO.get__requestId_()); + body.set__interfaceType__(pushReqVO.get__interfaceType__()); + body.setBusiBillCode(pushReqVO.getBusiBillCode()); + body.setCode(code); + body.setMessage(String.format("推送合同[%s]%s", pushReqVO.getData().getContractCode(), code >= 0 ? "成功" : "失败:" + msg)); + body.setDatetime(DateTimeFormatter.ofPattern("yyyyMMddHHmmss").format(LocalDateTime.now())); + body.setSystem("JYGK"); + body.setOperateFlag(pushReqVO.getOperateFlag()); + + // 回调参数 + JSONObject req = new JSONObject(); + req.set("messageKey", pushReqVO.getBusiBillCode()); + req.set("messageBody", body.toString()); + try { + log.info("国贸2.0系统推送合同回调参数:{}",req); + String res = shareServiceUtil.callShareService("S_EPLAT_04", req.toString()); + log.info("国贸2.0系统推送合同回调成功:{}",res); + } catch (Exception e) { + log.error("国贸2.0系统推送合同回调失败:{}",e.getMessage(), e); + } + } + @Override public CommonResult> logisticsListPage(IntContractPageReq pageReq) { diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/ContractController.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/ContractController.java index 7373558..052c138 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/ContractController.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/ContractController.java @@ -9,6 +9,7 @@ import com.zt.plat.module.contractorder.api.ContractApi; import com.zt.plat.module.contractorder.api.vo.contract.*; import com.zt.plat.module.contractorder.api.vo.contract.international.IntContract; import com.zt.plat.module.contractorder.api.vo.contract.international.IntContractPageReq; +import com.zt.plat.module.contractorder.api.vo.contract.international.IntPushContractReqVO; import com.zt.plat.module.contractorder.dal.dataobject.contract.ContractMainDO; import com.zt.plat.module.contractorder.service.contract.ContractService; import io.swagger.v3.oas.annotations.Operation; @@ -195,14 +196,14 @@ public class ContractController implements BusinessControllerMarker { @PostMapping("/push") @Operation(summary = "国贸2.0系统推送合同") @PreAuthorize("@ss.hasPermission('base:contract:create')") - CommonResult push(@Valid @RequestBody IntContract reqVO) { - return contractApi.push(reqVO); + public void push(@Valid @RequestBody IntPushContractReqVO pushReqVO) { + contractApi.push(pushReqVO); } @PostMapping("/logistics/list/page") @Operation(summary = "国贸2.0系统合同分页查询") @PreAuthorize("@ss.hasPermission('base:contract:query')") - CommonResult> logisticsListPage(IntContractPageReq pageReq) { + public CommonResult> logisticsListPage(IntContractPageReq pageReq) { return contractApi.logisticsListPage(pageReq); } } diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/util/ShareServiceUtil.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/util/ShareServiceUtil.java index 5565b4e..4ee6cb0 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/util/ShareServiceUtil.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/util/ShareServiceUtil.java @@ -14,8 +14,6 @@ import org.springframework.web.client.RestTemplate; /** * ePlat共享服务调用工具类 - * @author ChenZhaoxue - * @date 2025/3/27 */ @Slf4j @Configuration @@ -43,7 +41,7 @@ public class ShareServiceUtil { * ePlat共享服务调用 * @param serviceNo 服务号 * @param request 请求json字符串 - * @return + * @return 调用结果 */ public String callShareService(String serviceNo, String request) { String url = String.format("%s/service/%s", urlPrex, serviceNo); From 712ce5606d097f64aae26f21af3784b257e1ff8e Mon Sep 17 00:00:00 2001 From: guojunyun Date: Mon, 10 Nov 2025 14:23:02 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E5=9B=BD=E8=B4=B82.0=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E6=8E=A8=E9=80=81=E5=90=88=E5=90=8C=EF=BC=9A=E6=97=A5=E5=BF=97?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plat/module/contractorder/api/ContractApiImpl.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java index 72ed16c..e4cc53b 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java @@ -162,7 +162,7 @@ public class ContractApiImpl implements ContractApi { @Override public void push(@RequestBody IntPushContractReqVO pushReqVO) { - log.info("接受到国贸2.0系统推送合同数据:{}", new JSONObject(pushReqVO)); + log.info("接受到国贸系统推送的合同数据:{}", new JSONObject(pushReqVO)); try { // 合同主信息表映射 ContractMainDO contractMainDO = internationalToMainDO(pushReqVO.getData()); @@ -257,6 +257,7 @@ public class ContractApiImpl implements ContractApi { pushResult(pushReqVO, 1, null); } catch (Exception e) { + log.info("国贸系统推送合同异常:{}", e.getMessage(), e); pushResult(pushReqVO, -1, e.getMessage()); } } @@ -390,11 +391,11 @@ public class ContractApiImpl implements ContractApi { req.set("messageKey", pushReqVO.getBusiBillCode()); req.set("messageBody", body.toString()); try { - log.info("国贸2.0系统推送合同回调参数:{}",req); + log.info("国贸系统推送合同回调参数:{}",req); String res = shareServiceUtil.callShareService("S_EPLAT_04", req.toString()); - log.info("国贸2.0系统推送合同回调成功:{}",res); + log.info("国贸系统推送合同回调成功:{}",res); } catch (Exception e) { - log.error("国贸2.0系统推送合同回调失败:{}",e.getMessage(), e); + log.error("国贸系统推送合同回调失败:{}",e.getMessage(), e); } } From 1c11f52636fe368ae66f192b09da68983abb100f Mon Sep 17 00:00:00 2001 From: hewencai <2357300448@qq.com> Date: Mon, 10 Nov 2025 15:04:38 +0800 Subject: [PATCH 3/5] =?UTF-8?q?feat:=20=E9=9B=86=E6=88=90seata?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- base-server/pom.xml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/base-server/pom.xml b/base-server/pom.xml index b2c88ee..d78949c 100644 --- a/base-server/pom.xml +++ b/base-server/pom.xml @@ -82,6 +82,16 @@ + + org.apache.seata + seata-spring-boot-starter + + + com.alibaba + druid + + + From bb5375d2568537a3393fd91f4cfbe65709b8ccc6 Mon Sep 17 00:00:00 2001 From: liss <1780094091@qq.com> Date: Mon, 10 Nov 2025 15:37:51 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E9=87=91=E5=B1=9E=E5=85=83=E7=B4=A0?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/admin/base/vo/ElementPageReqVO.java | 2 ++ .../controller/admin/base/vo/ElementRespVO.java | 2 ++ .../controller/admin/base/vo/ElementSaveReqVO.java | 3 +++ .../module/base/dal/dataobject/base/ElementDO.java | 3 +++ .../module/base/dal/mysql/base/ElementMapper.java | 5 +++-- .../admin/contract/ContractController.java | 8 ++++++++ .../contractorder/ContractOrderController.java | 13 +++++++++---- 7 files changed, 30 insertions(+), 6 deletions(-) diff --git a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/base/vo/ElementPageReqVO.java b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/base/vo/ElementPageReqVO.java index 459d019..c69b2d3 100644 --- a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/base/vo/ElementPageReqVO.java +++ b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/base/vo/ElementPageReqVO.java @@ -35,4 +35,6 @@ public class ElementPageReqVO extends PageParam { @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime[] createTime; + @Schema(description = "排序") + private Integer sort; } \ No newline at end of file diff --git a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/base/vo/ElementRespVO.java b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/base/vo/ElementRespVO.java index 549daf7..dc5f688 100644 --- a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/base/vo/ElementRespVO.java +++ b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/base/vo/ElementRespVO.java @@ -44,4 +44,6 @@ public class ElementRespVO { @ExcelProperty("创建时间") private LocalDateTime createTime; + @Schema(description = "排序") + private Integer sort; } \ No newline at end of file diff --git a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/base/vo/ElementSaveReqVO.java b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/base/vo/ElementSaveReqVO.java index 5d5c8e7..b632998 100644 --- a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/base/vo/ElementSaveReqVO.java +++ b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/base/vo/ElementSaveReqVO.java @@ -34,4 +34,7 @@ public class ElementSaveReqVO { @NotEmpty(message = "品位单位不能为空") private String gradeUnit; + @Schema(description = "排序") + private Integer sort; + } \ No newline at end of file diff --git a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/dal/dataobject/base/ElementDO.java b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/dal/dataobject/base/ElementDO.java index 32ed81b..357af72 100644 --- a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/dal/dataobject/base/ElementDO.java +++ b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/dal/dataobject/base/ElementDO.java @@ -94,4 +94,7 @@ public class ElementDO extends BusinessBaseDO { @TableField("UPDATER_NAME") private String updaterName; + @TableField("SORT") + private Integer sort; + } \ No newline at end of file diff --git a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/dal/mysql/base/ElementMapper.java b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/dal/mysql/base/ElementMapper.java index 83b90bb..766d73c 100644 --- a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/dal/mysql/base/ElementMapper.java +++ b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/dal/mysql/base/ElementMapper.java @@ -26,13 +26,14 @@ public interface ElementMapper extends BaseMapperX { .likeIfPresent(ElementDO::getCoding, reqVO.getCoding()) .eqIfPresent(ElementDO::getGradeUnit, reqVO.getGradeUnit()) .betweenIfPresent(ElementDO::getCreateTime, reqVO.getCreateTime()) - .orderByDesc(ElementDO::getId)); + .orderByDesc(ElementDO::getSort)); } String selectMaxCode(); default List getElementNoPage() { return selectList(new LambdaQueryWrapperX() - .orderByDesc(ElementDO::getId)); + .eq(ElementDO::getIsEnable, 1) + .orderByDesc(ElementDO::getSort)); } } \ No newline at end of file diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/ContractController.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/ContractController.java index 052c138..4857d3c 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/ContractController.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/ContractController.java @@ -6,6 +6,7 @@ import com.zt.plat.framework.common.pojo.CommonResult; import com.zt.plat.framework.common.pojo.PageResult; import com.zt.plat.framework.common.util.object.BeanUtils; import com.zt.plat.module.contractorder.api.ContractApi; +import com.zt.plat.module.contractorder.api.dto.order.PurchaseOrderWithDetailsDTO; import com.zt.plat.module.contractorder.api.vo.contract.*; import com.zt.plat.module.contractorder.api.vo.contract.international.IntContract; import com.zt.plat.module.contractorder.api.vo.contract.international.IntContractPageReq; @@ -206,4 +207,11 @@ public class ContractController implements BusinessControllerMarker { public CommonResult> logisticsListPage(IntContractPageReq pageReq) { return contractApi.logisticsListPage(pageReq); } + + @PostMapping("/order-by-order-no") + @Operation(summary = "通过订单编号获取订单信息", description = "通过订单编号获取订单信息") + @PreAuthorize("@ss.hasPermission('base:contract:query')") + public CommonResult> getOrderByOrderNo(@RequestBody List orderNoS){ + return contractApi.getOrderByOrderNo(orderNoS); + }; } diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contractorder/ContractOrderController.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contractorder/ContractOrderController.java index 6245150..d18a421 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contractorder/ContractOrderController.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contractorder/ContractOrderController.java @@ -1,13 +1,16 @@ package com.zt.plat.module.contractorder.controller.admin.contractorder; +import com.zt.plat.module.contractorder.api.dto.order.PurchaseOrderWithDetailsDTO; +import com.zt.plat.module.contractorder.service.contract.ContractService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import jakarta.annotation.Resource; +import org.springframework.web.bind.annotation.*; import com.zt.plat.framework.common.pojo.CommonResult; +import java.util.List; + import static com.zt.plat.framework.common.pojo.CommonResult.success; /** @@ -20,10 +23,12 @@ import static com.zt.plat.framework.common.pojo.CommonResult.success; @RequestMapping("/admin/contract-order/contract-order") public class ContractOrderController { + @Resource + private ContractService contractService; + @GetMapping("/hello") @Operation(summary = "Hello ContractOrder") public CommonResult hello() { return success("Hello, ContractOrder!"); } - } From c2fdfee1499d1833637e09e39e6a9c23bd21cdff Mon Sep 17 00:00:00 2001 From: guojunyun Date: Mon, 10 Nov 2025 16:56:31 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E5=9B=BD=E8=B4=B82.0=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E6=8E=A8=E9=80=81=E5=90=88=E5=90=8C=EF=BC=9A=E5=9B=9E=E8=B0=83?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E5=8F=82=E6=95=B0=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/zt/plat/module/contractorder/api/ContractApiImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java index e4cc53b..f718bef 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/api/ContractApiImpl.java @@ -389,7 +389,7 @@ public class ContractApiImpl implements ContractApi { // 回调参数 JSONObject req = new JSONObject(); req.set("messageKey", pushReqVO.getBusiBillCode()); - req.set("messageBody", body.toString()); + req.set("messageBody", body); try { log.info("国贸系统推送合同回调参数:{}",req); String res = shareServiceUtil.callShareService("S_EPLAT_04", req.toString());