From 205d678a0ef44f7ca8654235489d6326cd72e888 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BD=98=E8=8D=A3=E6=99=9F?= <9691125+pan-rongsheng@user.noreply.gitee.com> Date: Fri, 31 Oct 2025 18:05:55 +0800 Subject: [PATCH 01/14] =?UTF-8?q?1=E3=80=81=E4=BF=AE=E6=94=B9bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PurchaseOrderController.java | 17 +++++--------- .../salesorder/SalesOrderController.java | 5 +++-- .../PurchaseOrderServiceImpl.java | 12 +++++++--- .../salesorder/SalesOrderServiceImpl.java | 22 ++++++++++++------- 4 files changed, 31 insertions(+), 25 deletions(-) diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/purchaseorder/PurchaseOrderController.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/purchaseorder/PurchaseOrderController.java index da2dfad..a2de655 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/purchaseorder/PurchaseOrderController.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/purchaseorder/PurchaseOrderController.java @@ -144,20 +144,16 @@ public class PurchaseOrderController implements BusinessControllerMarker { @PreAuthorize("@ss.hasPermission('bse:purchase-order:update')") public CommonResult submitErp061(@RequestBody @Validated @NotEmpty(message = "采购订单id不能为空") List idsStr) { List ids = idsStr.stream().map(Long::valueOf).toList(); - // TODO 推送ERP订单 - // purchaseOrderService.submitErp061(ids); - //随机生成六位数 - - return success(R()); + // todo 推送ERP订单 + return success(purchaseOrderService.submitErp061(ids)); } @PostMapping("/submit-erp062") @Operation(summary = "推送ERP订单", description = "062当每次调更新接口后都需要调此接口") @PreAuthorize("@ss.hasPermission('bse:purchase-order:update')") public CommonResult submitErp062(@RequestParam @Validated @NotNull(message = "采购订单id不能为空") String id) { - //TODO 推送ERP订单 - - return success(R()); + // todo 推送ERP订单 + return success(purchaseOrderService.submitErp062(Long.valueOf(id))); } //通过订单号查询订单信息 @@ -213,8 +209,5 @@ public class PurchaseOrderController implements BusinessControllerMarker { return success(purchaseOrderService.getBindOrderByOrder(reqVO)); } - private String R(){ - int number = (int) (Math.random() * 900000 + 100000); - return String.valueOf(number); - } + } diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/salesorder/SalesOrderController.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/salesorder/SalesOrderController.java index b516f88..15467c3 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/salesorder/SalesOrderController.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/salesorder/SalesOrderController.java @@ -129,8 +129,9 @@ public class SalesOrderController implements BusinessControllerMarker { //推送erp091 @PostMapping("/push-erp091") @Operation(summary = "推送erp091") - public CommonResult pushErp091(@RequestParam("id") String id) { - return success(salesOrderService.pushErp091(id)); + public CommonResult pushErp091(@RequestBody @Validated @NotEmpty(message = "销售订单id不能为空") List ids) { + ids.forEach(id -> salesOrderService.pushErp091(id)); + return success(true); } //提交审批 diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/purchaseorder/PurchaseOrderServiceImpl.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/purchaseorder/PurchaseOrderServiceImpl.java index 2ba7012..bb27ac3 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/purchaseorder/PurchaseOrderServiceImpl.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/purchaseorder/PurchaseOrderServiceImpl.java @@ -351,18 +351,19 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService { erpOrderSaveReqVO.setItems(items); } - // 4. 推送ERP并处理返回结果 - String s = erpOrderService.submitOrderToErp061(erpOrderSaveReqVO); + //todo 4. 推送ERP并处理返回结果 + // String s = erpOrderService.submitOrderToErp061(erpOrderSaveReqVO); log.info("订单推送成功,订单id【{}】", order.getId()); // 解析ERP返回的ID - JSONObject jsonObject = JSONObject.parseObject(s); + JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(Map.of("id",R()))); String erpId = jsonObject.getString("id"); if (erpId != null && !erpId.isEmpty()) { // 更新订单的ERP编号 PurchaseOrderDO updateDO = new PurchaseOrderDO(); updateDO.setId(order.getId()); updateDO.setOrderSAPNumber(erpId); + updateDO.setStatus(OrderStatusEnum.IN_PROGRESS.getCode()); int updateCount = purchaseOrderMapper.updateById(updateDO); if (updateCount > 0) { log.info("更新订单ERPID成功,订单id【{}】", order.getId()); @@ -786,4 +787,9 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService { return new IllegalArgumentException("BPM状态码不能为null"); }); } + + private String R(){ + int number = (int) (Math.random() * 900000 + 100000); + return String.valueOf(number); + } } diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/salesorder/SalesOrderServiceImpl.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/salesorder/SalesOrderServiceImpl.java index 4c88b5d..79be6c4 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/salesorder/SalesOrderServiceImpl.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/salesorder/SalesOrderServiceImpl.java @@ -40,10 +40,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; -import java.util.ArrayList; -import java.util.List; -import java.util.Objects; -import java.util.Optional; +import java.util.*; import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception; import static com.zt.plat.module.contractorder.enums.ErrorCodeConstants.CONTRACT_ORDER_EXISTS; @@ -242,13 +239,17 @@ public class SalesOrderServiceImpl implements SalesOrderService { } }); erpSalesOrderSaveReqVO.setConds(conds); - String result = erpOrderService.submitOrderToErp091(erpSalesOrderSaveReqVO); + // String result = erpOrderService.submitOrderToErp091(erpSalesOrderSaveReqVO); + String result="3333"; if (result != null) { - JSONObject jsonObject = JSONObject.parseObject(result); + JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(Map.of("salesdocument",R()))); String salesdocument = jsonObject.getString("salesdocument"); if (salesdocument != null) { - salesOrderDO.setOrderSAPNumber(salesdocument); - salesOrderMapper.updateById(salesOrderDO); + SalesOrderDO upVo = new SalesOrderDO(); + upVo.setId(salesOrderDO.getId()); + upVo.setOrderSAPNumber(salesdocument); + upVo.setStatus(OrderStatusEnum.IN_PROGRESS.getCode()); + salesOrderMapper.updateById(upVo); } } @@ -540,4 +541,9 @@ public class SalesOrderServiceImpl implements SalesOrderService { }) .orElseThrow(() -> new IllegalArgumentException("BPM状态码不能为null")); } + + private String R(){ + int number = (int) (Math.random() * 900000 + 100000); + return String.valueOf(number); + } } From bb96b9b6dd674793e03ec476e4e4bb7cd0c7d8dc Mon Sep 17 00:00:00 2001 From: guojunyun Date: Tue, 4 Nov 2025 15:30:04 +0800 Subject: [PATCH 02/14] =?UTF-8?q?=E5=9B=BD=E8=B4=B82.0=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E5=90=88=E5=90=8C=E5=88=86=E9=A1=B5=E6=9F=A5=E8=AF=A2=EF=BC=9A?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=9F=A5=E8=AF=A2=E6=9D=A1=E4=BB=B6=EF=BC=9A?= =?UTF-8?q?=E5=90=88=E5=90=8C=E6=9C=89=E6=95=88=E6=9C=9F=E8=B5=B7=E3=80=81?= =?UTF-8?q?=E5=90=88=E5=90=8C=E6=9C=89=E6=95=88=E6=9C=9F=E6=AD=A2=E3=80=81?= =?UTF-8?q?=E7=AD=BE=E7=BA=A6=E5=9C=B0=E3=80=81=E7=AD=BE=E7=BA=A6=E6=97=A5?= =?UTF-8?q?=E6=9C=9F=EF=BC=9B=E5=8E=BB=E9=99=A4=E6=9F=A5=E8=AF=A2=E6=9D=A1?= =?UTF-8?q?=E4=BB=B6=EF=BC=9A=E5=90=88=E5=90=8C=E7=BC=96=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../international/IntContractPageReq.java | 20 ++- .../contractorder/api/ContractApiImpl.java | 145 +++++++++++------- 2 files changed, 108 insertions(+), 57 deletions(-) diff --git a/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/international/IntContractPageReq.java b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/international/IntContractPageReq.java index abddeca..477b801 100644 --- a/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/international/IntContractPageReq.java +++ b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/international/IntContractPageReq.java @@ -6,8 +6,24 @@ import lombok.Data; @Data public class IntContractPageReq extends PageParam { - @Schema(description = "合同编号") - private String contractCode; + + // 合同名称:模糊搜索 @Schema(description = "合同名称") private String contractName; + // 合同有效期起:日期选择 + @Schema(description = "合同有效期起") + private String contractStartDate; + // 合同有效期止:日期选择 + @Schema(description = "合同有效期止") + private String contractEndDate; + // 合同版本号:精确搜索 TODO 不确定 + // 签约地:模糊搜索 + @Schema(description = "签约地") + private String signSite; + // 经办人姓名:模糊搜索 + @Schema(description = "经办人姓名") + private String createdUserName; + // 签约日期: 模糊搜索 + @Schema(description = "签约日期") + private String signDate; } 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 3b68e79..fde683f 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 @@ -42,7 +42,9 @@ import org.springframework.web.bind.annotation.RestController; import java.lang.reflect.Field; import java.lang.reflect.Method; +import java.time.LocalDate; import java.time.LocalDateTime; +import java.time.LocalTime; import java.time.format.DateTimeFormatter; import java.util.*; import java.util.stream.Collectors; @@ -250,6 +252,12 @@ public class ContractApiImpl implements ContractApi { return success(true); } + /** + * 国贸合同信息未映射合同主信息字段保存到动态条款 + * + * @param reqVO 国贸合同信息 + * @param contractId 合同主信息ID + */ private void saveIntContractFields(IntContract reqVO, Long contractId) { try { @@ -370,10 +378,28 @@ public class ContractApiImpl implements ContractApi { DictEnum.SPLY_BSN_TP_03BX.getCode() ) ); - // 合同编号 - queryWrapperX.likeIfPresent(ContractMainDO::getContractPaperNumber, pageReq.getContractCode()); - // 合同名称 + // 合同名称:模糊搜索 queryWrapperX.likeIfPresent(ContractMainDO::getContractName, pageReq.getContractName()); + // 合同有效期起:日期选择 + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd"); + queryWrapperX.geIfPresent(ContractMainDO::getStartDate, + pageReq.getContractStartDate() != null + ? LocalDateTime.of(LocalDate.parse(pageReq.getContractStartDate(), formatter), LocalTime.MIN) + .format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + : null); + // 合同有效期止:日期选择 + queryWrapperX.leIfPresent(ContractMainDO::getEndDate, + pageReq.getContractEndDate() != null + ? LocalDateTime.of(LocalDate.parse(pageReq.getContractEndDate(), formatter), LocalTime.MAX) + .format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + : null); + // 签约地:模糊搜索 + queryWrapperX.likeIfPresent(ContractMainDO::getSignPlace, pageReq.getSignSite()); + // 经办人姓名:模糊搜索 + // 签约日期: 模糊搜索 + if (pageReq.getSignDate() != null) { + queryWrapperX.apply("to_char(SGN_DT, 'yyyymmdd') like concat('%',{0},'%')", pageReq.getSignDate()); + } // 查询 PageResult pageResult = contractMainMapper.selectPage(pageReq, queryWrapperX); @@ -387,63 +413,66 @@ public class ContractApiImpl implements ContractApi { // 遍历查询结果,设置返回数据列表 if (pageResult.getTotal() > 0) { - pageResult.getList().forEach(contractMainDO -> { - - // 合同ID - Long mainDOId = contractMainDO.getId(); - - // 合同动态条款查询 - List otherFormDOs = contractOtherFormMapper.selectList( - new LambdaQueryWrapperX() - .eq(ContractOtherFormDO::getContractMainId, mainDOId) - ); - // 合同动态条款明细查询 - List otherFieldDOs = contractOtherFieldMapper.selectList( - new LambdaQueryWrapperX() - .eq(ContractOtherFieldDO::getContractMainId, mainDOId) - ); - - JSONObject resultJson = new JSONObject(); - - // 设置主信息 - otherFieldDOs.stream() - .filter(otherFieldDO -> otherFieldDO.getRelativityId() == null) - .forEach(otherFieldDO - -> resultJson.putOnce(otherFieldDO.getFieldNumber(), otherFieldDO.getFieldValue())); - - // 设置明细信息 - otherFormDOs.stream() - .collect(Collectors.groupingBy(ContractOtherFormDO::getFormNumber)) - .forEach((key, value) -> { - JSONArray detailsJson = new JSONArray(); - value.forEach(detail -> { - // 根据条款id筛选条款明细 - Stream stream = otherFieldDOs.stream() - .filter(otherFieldDO - -> Objects.equals(otherFieldDO.getRelativityId(), detail.getId())); - if ("attachList".equals(key)) { - // 基础数据类型 - stream.forEach(otherFieldDO - -> detailsJson.add(otherFieldDO.getFieldValue())); - } else { - // 对象数据类型 - JSONObject detailJson = new JSONObject(); - stream.forEach(otherFieldDO - -> detailJson.putOnce(otherFieldDO.getFieldNumber(), otherFieldDO.getFieldValue())); - detailsJson.add(detailJson); - } - }); - resultJson.putOnce(key, detailsJson); - }); - - // 添加到结果集 - resultList.add(resultJson.toBean(IntContract.class)); - }); + pageResult.getList().forEach(contractMainDO + -> resultList.add(getIntContractByMainId(contractMainDO.getId()))); } return success(result); } + /** + * 获取国贸合同信息通过合同主信息ID + * + * @param mainId 同主信息ID + * @return 国贸合同信息 + */ + private IntContract getIntContractByMainId(Long mainId) { + // 合同动态条款查询 + List otherFormDOs = contractOtherFormMapper.selectList( + new LambdaQueryWrapperX() + .eq(ContractOtherFormDO::getContractMainId, mainId) + ); + // 合同动态条款明细查询 + List otherFieldDOs = contractOtherFieldMapper.selectList( + new LambdaQueryWrapperX() + .eq(ContractOtherFieldDO::getContractMainId, mainId) + ); + + JSONObject resultJson = new JSONObject(); + + // 设置主信息 + otherFieldDOs.stream() + .filter(otherFieldDO -> otherFieldDO.getRelativityId() == null) + .forEach(otherFieldDO + -> resultJson.putOnce(otherFieldDO.getFieldNumber(), otherFieldDO.getFieldValue())); + + // 设置明细信息 + otherFormDOs.stream() + .collect(Collectors.groupingBy(ContractOtherFormDO::getFormNumber)) + .forEach((key, value) -> { + JSONArray detailsJson = new JSONArray(); + value.forEach(detail -> { + // 根据条款id筛选条款明细 + Stream stream = otherFieldDOs.stream() + .filter(otherFieldDO + -> Objects.equals(otherFieldDO.getRelativityId(), detail.getId())); + if ("attachList".equals(key)) { + // 基础数据类型 + stream.forEach(otherFieldDO + -> detailsJson.add(otherFieldDO.getFieldValue())); + } else { + // 对象数据类型 + JSONObject detailJson = new JSONObject(); + stream.forEach(otherFieldDO + -> detailJson.putOnce(otherFieldDO.getFieldNumber(), otherFieldDO.getFieldValue())); + detailsJson.add(detailJson); + } + }); + resultJson.putOnce(key, detailsJson); + }); + return resultJson.toBean(IntContract.class); + } + @Override public CommonResult> getOrderByOrderIds(List ids) { if (ids == null || ids.isEmpty()) { @@ -475,6 +504,12 @@ public class ContractApiImpl implements ContractApi { return CommonResult.success(purchaseOrderDetails); } + /** + * 国贸合同信息映射到合同主信息 + * + * @param reqVO 国贸合同信息 + * @return 合同主信息 + */ private ContractMainDO internationalToMainDO(IntContract reqVO) { // 合同主信息表映射 From 8420a67fc35d55a3191e025092b2e32eaaeae5e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BD=98=E8=8D=A3=E6=99=9F?= <9691125+pan-rongsheng@user.noreply.gitee.com> Date: Tue, 4 Nov 2025 16:48:02 +0800 Subject: [PATCH 03/14] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E5=B1=9E=E6=80=A7=20=E7=A8=8E=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/dto/order/PurchaseOrderWithDetailsDTO.java | 4 ++++ .../dal/dataobject/salesorder/SalesOrderDO.java | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/dto/order/PurchaseOrderWithDetailsDTO.java b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/dto/order/PurchaseOrderWithDetailsDTO.java index 194843d..020f5c0 100644 --- a/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/dto/order/PurchaseOrderWithDetailsDTO.java +++ b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/dto/order/PurchaseOrderWithDetailsDTO.java @@ -189,6 +189,10 @@ public class PurchaseOrderWithDetailsDTO { * 订单类型 */ private String splyBsnTp; + /** + * 税码 + */ + private String taxNum; /** * 采购订单明细 */ diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/dataobject/salesorder/SalesOrderDO.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/dataobject/salesorder/SalesOrderDO.java index b00d54b..30602a3 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/dataobject/salesorder/SalesOrderDO.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/dataobject/salesorder/SalesOrderDO.java @@ -303,4 +303,9 @@ public class SalesOrderDO extends BusinessBaseDO { */ @TableField("PYER_NUM") private String payerNum; + /** + * 税码 + */ + @TableField("TAX_NUM") + private String taxNum; } From 320913a6268c8af76bdee60033cbd392cfe8ba1c Mon Sep 17 00:00:00 2001 From: guojunyun Date: Tue, 4 Nov 2025 17:24:56 +0800 Subject: [PATCH 04/14] =?UTF-8?q?=E5=88=86=E9=A1=B5=E4=BF=AE=E6=94=B9&sql?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=9C=AA=E5=88=A0=E9=99=A4=E6=9D=A1=E4=BB=B6?= =?UTF-8?q?=EF=BC=9A=E6=9F=A5=E8=AF=A2=E4=B8=8D=E8=AE=A1=E4=BB=B7=E8=A7=84?= =?UTF-8?q?=E5=88=99=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3=E3=80=81=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E5=8F=82=E6=95=B0=E9=99=8D=E7=BA=A7=E8=A7=84=E5=88=99?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3=E3=80=81=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E7=BB=93=E7=AE=97=E5=85=AC=E5=BC=8F=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/vo/contract/DemotesQueryReqVO.java | 3 +- .../api/vo/contract/FormulasQueryReqVO.java | 3 +- .../api/vo/contract/NotsQueryReqVO.java | 3 +- .../admin/contract/ContractController.java | 6 +-- .../mysql/contract/ContractDemoteMapper.java | 5 +- .../mysql/contract/ContractFormulaMapper.java | 5 +- .../dal/mysql/contract/ContractNotMapper.java | 5 +- .../service/contract/ContractService.java | 6 +-- .../service/contract/ContractServiceImpl.java | 50 ++++++++++++++++--- 9 files changed, 64 insertions(+), 22 deletions(-) diff --git a/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/DemotesQueryReqVO.java b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/DemotesQueryReqVO.java index ad5c2d0..f19447b 100644 --- a/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/DemotesQueryReqVO.java +++ b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/DemotesQueryReqVO.java @@ -1,11 +1,12 @@ package com.zt.plat.module.contractorder.api.vo.contract; +import com.zt.plat.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; @Schema(description = "管理后台 - 查询参数降级规则列表 Request VO") @Data -public class DemotesQueryReqVO { +public class DemotesQueryReqVO extends PageParam { @Schema(description = "合同名称") private String contractName; diff --git a/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/FormulasQueryReqVO.java b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/FormulasQueryReqVO.java index e1e6176..b5664ed 100644 --- a/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/FormulasQueryReqVO.java +++ b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/FormulasQueryReqVO.java @@ -1,11 +1,12 @@ package com.zt.plat.module.contractorder.api.vo.contract; +import com.zt.plat.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; @Schema(description = "管理后台 - 查询结算公式列表 Request VO") @Data -public class FormulasQueryReqVO { +public class FormulasQueryReqVO extends PageParam { @Schema(description = "合同名称") private String contractName; diff --git a/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/NotsQueryReqVO.java b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/NotsQueryReqVO.java index 1748592..7e69149 100644 --- a/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/NotsQueryReqVO.java +++ b/zt-module-contract-order/zt-module-contract-order-api/src/main/java/com/zt/plat/module/contractorder/api/vo/contract/NotsQueryReqVO.java @@ -1,11 +1,12 @@ package com.zt.plat.module.contractorder.api.vo.contract; +import com.zt.plat.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; @Schema(description = "管理后台 - 查询不计价规则列表 Request VO") @Data -public class NotsQueryReqVO { +public class NotsQueryReqVO extends PageParam { @Schema(description = "合同名称") private String contractName; 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 4d1f09d..7373558 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 @@ -51,21 +51,21 @@ public class ContractController implements BusinessControllerMarker { @GetMapping("/nots") @Operation(summary = "查询不计价规则列表") @PreAuthorize("@ss.hasPermission('base:contract:query')") - public CommonResult> getNots(NotsQueryReqVO queryReqVO) { + public CommonResult> getNots(NotsQueryReqVO queryReqVO) { return success(contractService.getNots(queryReqVO)); } @GetMapping("/demotes") @Operation(summary = "查询参数降级规则列表") @PreAuthorize("@ss.hasPermission('base:contract:query')") - public CommonResult> getDemotes(DemotesQueryReqVO queryReqVO) { + public CommonResult> getDemotes(DemotesQueryReqVO queryReqVO) { return success(contractService.getDemotes(queryReqVO)); } @GetMapping("/formulas") @Operation(summary = "查询结算公式列表") @PreAuthorize("@ss.hasPermission('base:contract:query')") - public CommonResult> getFormulas(FormulasQueryReqVO queryReqVO) { + public CommonResult> getFormulas(FormulasQueryReqVO queryReqVO) { return success(contractService.getFormulas(queryReqVO)); } diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/mysql/contract/ContractDemoteMapper.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/mysql/contract/ContractDemoteMapper.java index b961ee9..f95b610 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/mysql/contract/ContractDemoteMapper.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/mysql/contract/ContractDemoteMapper.java @@ -1,5 +1,6 @@ package com.zt.plat.module.contractorder.dal.mysql.contract; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX; import com.zt.plat.module.contractorder.api.vo.contract.DemoteRespVO; import com.zt.plat.module.contractorder.dal.dataobject.contract.ContractDemoteDO; @@ -22,7 +23,7 @@ public interface ContractDemoteMapper extends BaseMapperX { ", (select ctrt_name from BSE_CTRT_MAIN where id = ctrt_id) contractName", ", (select ctrt_ppr_num from BSE_CTRT_MAIN where id = ctrt_id) contractPaperNumber", "from bse_ctrt_dmot", - "where 1 = 1", + "where DELETED = 0", " 0\">", "and ctrt_id in", "", @@ -37,5 +38,5 @@ public interface ContractDemoteMapper extends BaseMapperX { "", "" }) - List selectDemotes(List contractIds, String materialName, String elementName); + IPage selectDemotes(IPage page, List contractIds, String materialName, String elementName); } \ 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/dal/mysql/contract/ContractFormulaMapper.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/mysql/contract/ContractFormulaMapper.java index 968260a..0833950 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/mysql/contract/ContractFormulaMapper.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/mysql/contract/ContractFormulaMapper.java @@ -1,5 +1,6 @@ package com.zt.plat.module.contractorder.dal.mysql.contract; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX; import com.zt.plat.module.contractorder.api.vo.contract.FormulaRespVO; import com.zt.plat.module.contractorder.dal.dataobject.contract.ContractFormulaDO; @@ -22,7 +23,7 @@ public interface ContractFormulaMapper extends BaseMapperX { ", (select ctrt_name from BSE_CTRT_MAIN where id = ctrt_id) contractName", ", (select ctrt_ppr_num from BSE_CTRT_MAIN where id = ctrt_id) contractPaperNumber", "from bse_ctrt_fmu", - "where 1 = 1", + "where DELETED = 0", " 0\">", "and ctrt_id in", "", @@ -37,5 +38,5 @@ public interface ContractFormulaMapper extends BaseMapperX { "", "" }) - List selectFormulas(List contractIds, String materialName, String elementName); + IPage selectFormulas(IPage page, List contractIds, String materialName, String elementName); } \ 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/dal/mysql/contract/ContractNotMapper.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/mysql/contract/ContractNotMapper.java index 8f10f5c..f3bc060 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/mysql/contract/ContractNotMapper.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/mysql/contract/ContractNotMapper.java @@ -1,5 +1,6 @@ package com.zt.plat.module.contractorder.dal.mysql.contract; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX; import com.zt.plat.module.contractorder.api.vo.contract.NotRespVO; import com.zt.plat.module.contractorder.dal.dataobject.contract.ContractNotDO; @@ -22,7 +23,7 @@ public interface ContractNotMapper extends BaseMapperX { ", (select ctrt_name from BSE_CTRT_MAIN where id = ctrt_id) contractName", ", (select ctrt_ppr_num from BSE_CTRT_MAIN where id = ctrt_id) contractPaperNumber", "from bse_ctrt_nt", - "where 1 = 1", + "where DELETED = 0", " 0\">", "and ctrt_id in", "", @@ -37,5 +38,5 @@ public interface ContractNotMapper extends BaseMapperX { "", "" }) - List selectNots(List contractIds, String materialName, String elementName); + IPage selectNots(IPage page, List contractIds, String materialName, String elementName); } \ 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/service/contract/ContractService.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractService.java index 6228688..7e1899f 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractService.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractService.java @@ -73,7 +73,7 @@ public interface ContractService { * @param queryReqVO 查询参数 * @return 不计价规则列表 */ - List getNots(NotsQueryReqVO queryReqVO); + PageResult getNots(NotsQueryReqVO queryReqVO); /** * 查询参数降级规则列表 @@ -81,7 +81,7 @@ public interface ContractService { * @param queryReqVO 查询参数 * @return 参数降级规则列表 */ - List getDemotes(DemotesQueryReqVO queryReqVO); + PageResult getDemotes(DemotesQueryReqVO queryReqVO); /** * 查询结算公式列表 @@ -89,7 +89,7 @@ public interface ContractService { * @param queryReqVO 查询参数 * @return 结算公式列表 */ - List getFormulas(FormulasQueryReqVO queryReqVO); + PageResult getFormulas(FormulasQueryReqVO queryReqVO); /** * 通过合同编号获取对应的合同信息 diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractServiceImpl.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractServiceImpl.java index 07abdea..c8700ae 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractServiceImpl.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractServiceImpl.java @@ -4,6 +4,8 @@ import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; 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; @@ -1185,33 +1187,67 @@ public class ContractServiceImpl implements ContractService { } @Override - public List getNots(NotsQueryReqVO queryReqVO) { + public PageResult getNots(NotsQueryReqVO queryReqVO) { + // 查合同ID集合 List contractIds = new ArrayList<>(); - if (StringUtils.isNotEmpty(queryReqVO.getContractName()) || StringUtils.isNotEmpty(queryReqVO.getContractPaperNumber())) { + if (StringUtils.isNotEmpty(queryReqVO.getContractName()) + || StringUtils.isNotEmpty(queryReqVO.getContractPaperNumber())) { contractIds = getContractIds(queryReqVO.getContractName(), queryReqVO.getContractPaperNumber()); } - return contractNotMapper.selectNots(contractIds, queryReqVO.getMaterialName(), queryReqVO.getElementName()); + + // 分页查询 + IPage ipage = contractNotMapper.selectNots( + new Page().setCurrent(queryReqVO.getPageNo()).setSize(queryReqVO.getPageSize()), + contractIds, + queryReqVO.getMaterialName(), + queryReqVO.getElementName() + ); + + // 分页返回 + return new PageResult().setTotal(ipage.getTotal()).setList(ipage.getRecords()); } @Override - public List getDemotes(DemotesQueryReqVO queryReqVO) { + public PageResult getDemotes(DemotesQueryReqVO queryReqVO) { + // 查合同ID集合 List contractIds = new ArrayList<>(); if (StringUtils.isNotEmpty(queryReqVO.getContractName()) || StringUtils.isNotEmpty(queryReqVO.getContractPaperNumber())) { contractIds = getContractIds(queryReqVO.getContractName(), queryReqVO.getContractPaperNumber()); } - return contractDemoteMapper.selectDemotes(contractIds, queryReqVO.getMaterialName(), queryReqVO.getElementName()); + + // 分页查询 + IPage ipage = contractDemoteMapper.selectDemotes( + new Page<>().setCurrent(queryReqVO.getPageNo()).setSize(queryReqVO.getPageSize()), + contractIds, + queryReqVO.getMaterialName(), + queryReqVO.getElementName() + ); + + // 分页返回 + return new PageResult().setTotal(ipage.getTotal()).setList(ipage.getRecords()); } @Override - public List getFormulas(FormulasQueryReqVO queryReqVO) { + public PageResult getFormulas(FormulasQueryReqVO queryReqVO) { + // 查合同ID集合 List contractIds = new ArrayList<>(); if (StringUtils.isNotEmpty(queryReqVO.getContractName()) || StringUtils.isNotEmpty(queryReqVO.getContractPaperNumber())) { contractIds = getContractIds(queryReqVO.getContractName(), queryReqVO.getContractPaperNumber()); } - return contractFormulaMapper.selectFormulas(contractIds, queryReqVO.getMaterialName(), queryReqVO.getElementName()); + + // 分页查询 + IPage ipage = contractFormulaMapper.selectFormulas( + new Page<>().setCurrent(queryReqVO.getPageNo()).setSize(queryReqVO.getPageSize()), + contractIds, + queryReqVO.getMaterialName(), + queryReqVO.getElementName() + ); + + // 分页返回 + return new PageResult().setTotal(ipage.getTotal()).setList(ipage.getRecords()); } @Override From a7872ab2c104c65656f881c395e55dedc8c0ed2a Mon Sep 17 00:00:00 2001 From: guojunyun Date: Wed, 5 Nov 2025 09:56:26 +0800 Subject: [PATCH 05/14] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E7=BB=93=E6=9E=9Cnull?= =?UTF-8?q?=E5=80=BCbug=E4=BF=AE=E6=94=B9=EF=BC=9A=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E4=B8=8D=E8=AE=A1=E4=BB=B7=E8=A7=84=E5=88=99=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E3=80=81=E6=9F=A5=E8=AF=A2=E5=8F=82=E6=95=B0=E9=99=8D=E7=BA=A7?= =?UTF-8?q?=E8=A7=84=E5=88=99=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3=E3=80=81?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E7=BB=93=E7=AE=97=E5=85=AC=E5=BC=8F=E5=88=97?= =?UTF-8?q?=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dal/mysql/contract/ContractDemoteMapper.java | 12 +++++++++++- .../dal/mysql/contract/ContractFormulaMapper.java | 14 +++++++++++++- .../dal/mysql/contract/ContractNotMapper.java | 12 +++++++++++- 3 files changed, 35 insertions(+), 3 deletions(-) diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/mysql/contract/ContractDemoteMapper.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/mysql/contract/ContractDemoteMapper.java index f95b610..280b47d 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/mysql/contract/ContractDemoteMapper.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/dal/mysql/contract/ContractDemoteMapper.java @@ -19,7 +19,17 @@ public interface ContractDemoteMapper extends BaseMapperX { @Select({ "