From 726c0bc9de9e4f7d2d3b60ebcd032dc58c24115b Mon Sep 17 00:00:00 2001 From: mashuai Date: Wed, 4 Feb 2026 18:36:05 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E7=AB=8B=E4=BD=93=E4=BB=93=E6=A0=87?= =?UTF-8?q?=E5=87=86=E7=AE=B1=EF=BC=8C=E9=A2=86=E6=96=99=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/biz/utils/AutomaticHttpHelper.java | 3 + .../basic/controller/BmQrBoxController.java | 13 +++++ .../material/basic/mapper/BmQrBoxMapper.java | 7 +++ .../basic/service/BmQrBoxService.java | 7 +++ .../service/impl/BmQrBoxServiceImpl.java | 13 +++++ .../controller/LeaseApplyInfoController.java | 1 - .../impl/LeaseApplyInfoServiceImpl.java | 34 +++++++++--- .../mapper/material/basic/BmQrBoxMapper.xml | 55 +++++++++++++++++++ .../lease/LeaseApplyDetailsMapper.xml | 45 ++++++++------- 9 files changed, 150 insertions(+), 28 deletions(-) diff --git a/bonus-common-biz/src/main/java/com/bonus/common/biz/utils/AutomaticHttpHelper.java b/bonus-common-biz/src/main/java/com/bonus/common/biz/utils/AutomaticHttpHelper.java index d1de641b..d5533517 100644 --- a/bonus-common-biz/src/main/java/com/bonus/common/biz/utils/AutomaticHttpHelper.java +++ b/bonus-common-biz/src/main/java/com/bonus/common/biz/utils/AutomaticHttpHelper.java @@ -2,6 +2,7 @@ package com.bonus.common.biz.utils; import com.alibaba.fastjson2.JSONObject; import com.bonus.common.biz.constant.MaterialConstants; +import lombok.extern.slf4j.Slf4j; import org.apache.http.HttpEntity; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpPost; @@ -20,6 +21,7 @@ import java.nio.charset.StandardCharsets; /** * @author bonus */ +@Slf4j public class AutomaticHttpHelper { public static final String KEY = "$jqgcYouote@c103"; @@ -190,6 +192,7 @@ public class AutomaticHttpHelper { //String tokenUrl = MaterialConstants.TEST_TOKEN_URL; // 立体库生产环境token路径 String tokenUrl = MaterialConstants.PROD_TOKEN_URL; + log.info("立体仓获取token路径:{}", tokenUrl); try { String userName = "ZNXT"; String password = "123456"; diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmQrBoxController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmQrBoxController.java index 01fc9d3c..333f1db1 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmQrBoxController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmQrBoxController.java @@ -79,6 +79,19 @@ public class BmQrBoxController extends BaseController { return getDataTable(list); } + /** + * 查询葫芦类及立体仓类标准箱混合信息 + * @param bmQrBoxInfo + * @return + */ + @ApiOperation(value = "查询葫芦类及立体仓类标准箱混合信息") + @GetMapping("/getTotalList") + public TableDataInfo getTotalList(BmQrBoxInfo bmQrBoxInfo) { + startPage(); + List list = qrBoxService.getTotalList(bmQrBoxInfo); + return getDataTable(list); + } + /** * APP -- 查询二维码标准箱绑定列表 -- 不分页 * @param diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmQrBoxMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmQrBoxMapper.java index 961b2015..f89255b5 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmQrBoxMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmQrBoxMapper.java @@ -230,4 +230,11 @@ public interface BmQrBoxMapper { * @return */ List exportDetails(BmQrBoxInfo bean); + + /** + * 查询葫芦类及立体仓类标准箱混合信息 + * @param bmQrBoxInfo + * @return + */ + List getTotalList(BmQrBoxInfo bmQrBoxInfo); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/BmQrBoxService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/BmQrBoxService.java index e21cfa4a..10879159 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/BmQrBoxService.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/BmQrBoxService.java @@ -177,4 +177,11 @@ public interface BmQrBoxService { * @return */ List exportDetails(BmQrBoxInfo bean); + + /** + * 查询葫芦类及立体仓类标准箱混合信息 + * @param bmQrBoxInfo + * @return + */ + List getTotalList(BmQrBoxInfo bmQrBoxInfo); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmQrBoxServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmQrBoxServiceImpl.java index fb57d614..f0ae06f4 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmQrBoxServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmQrBoxServiceImpl.java @@ -925,6 +925,19 @@ public class BmQrBoxServiceImpl implements BmQrBoxService { return bmQrBoxMapper.exportDetails(bean); } + /** + * 查询葫芦类及立体仓类标准箱混合信息 + * @param bmQrBoxInfo + * @return + */ + @Override + public List getTotalList(BmQrBoxInfo bmQrBoxInfo) { + if (bmQrBoxInfo == null || StringUtils.isBlank(bmQrBoxInfo.getBoxCode())) { + throw new RuntimeException("标准箱编码为空,请完善后重试!"); + } + return bmQrBoxMapper.getTotalList(bmQrBoxInfo); + } + private int updateBoxStatus(BoxBindWarehouseDto boxMa) { int result = 0; result = bmQrBoxMapper.updateBoxStatus(boxMa); diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/controller/LeaseApplyInfoController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/controller/LeaseApplyInfoController.java index a8553ae5..817f8fed 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/controller/LeaseApplyInfoController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/controller/LeaseApplyInfoController.java @@ -221,7 +221,6 @@ public class LeaseApplyInfoController extends BaseController { String title = "领料明细" + "(" + "导出时间:" + DateUtils.getTime() + ")"; ExcelUtil util = new ExcelUtil<>(LeaseApplyDetailExport.class); util.exportExcel(response, list, fileName, title); -// expOutExcel(response, list, fileName); } catch (Exception e) { logger.error("导出领料明细失败", e); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseApplyInfoServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseApplyInfoServiceImpl.java index df2e4b86..d5d52139 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseApplyInfoServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseApplyInfoServiceImpl.java @@ -1329,6 +1329,10 @@ public class LeaseApplyInfoServiceImpl implements ILeaseApplyInfoService { public List selectLeaseApplyDetailList(LeaseApplyInfo bean) { Long userId = SecurityUtils.getLoginUser().getSysUser().getUserId() ; bean.setUserId(userId); + // 转换为HashSet提高contains操作的效率(O(1)) + Set statusSet = CollectionUtils.isEmpty(bean.getStatusList()) ? + Collections.emptySet() : + new HashSet<>(bean.getStatusList()); List listAll = new ArrayList<>(); //领料 List listOne = leaseApplyDetailsMapper.selectLeaseApplyLL(bean); @@ -1344,16 +1348,26 @@ public class LeaseApplyInfoServiceImpl implements ILeaseApplyInfoService { // 对合并后的列表进行排序 if (!CollectionUtils.isEmpty(listAll)) { - String keyWord = bean.getKeyWord(); - if (StringUtils.isNotBlank(keyWord)) { - listAll = listAll.stream() - .filter(item -> StringUtils.isBlank(keyWord) || containsKeywordDetail(item, keyWord)) - .collect(Collectors.toList()); + for (LeaseApplyDetailExport leaseApplyDetailExport : listAll) { + if (leaseApplyDetailExport.getAlNum().compareTo(leaseApplyDetailExport.getOutNum()) == 0) { + leaseApplyDetailExport.setTaskStatus(LeaseTaskStatusEnum.LEASE_TASK_FINISHED.getStatus()); + } else { + leaseApplyDetailExport.setTaskStatus(LeaseTaskStatusEnum.LEASE_TASK_IN_PROGRESS.getStatus()); + } } + listAll = listAll.stream() - // 先按code升序,再按releaseTime降序(null排末尾),一次sorted完成多条件排序 - .sorted(Comparator.comparing(LeaseApplyDetailExport::getCode) - .thenComparing(LeaseApplyDetailExport::getReleaseTime)) + // 状态过滤 + .filter(item -> statusSet.isEmpty() || statusSet.contains(item.getTaskStatus())) + // 分公司 + .filter(item -> StringUtils.isBlank(bean.getImpUnitName()) + || Objects.equals(item.getImpUnitName(), bean.getImpUnitName())) + // 关键字 + .filter(item -> StringUtils.isBlank(bean.getKeyWord()) + || containsKeywordDetail(item, bean.getKeyWord())) + // 按releaseTime降序(null排末尾) + .sorted(Comparator.comparing(LeaseApplyDetailExport::getReleaseTime, + Comparator.nullsFirst(Comparator.naturalOrder())).reversed()) .collect(Collectors.toList()); } return listAll; @@ -1615,6 +1629,7 @@ public class LeaseApplyInfoServiceImpl implements ILeaseApplyInfoService { // 根据parentId查询属于立体仓的数据 List detailsList = leaseApplyInfoMapper.selectLeaseApplyInfoByParentId(leaseApplyInfo.getId()); if (!CollectionUtils.isEmpty(detailsList)) { + log.info("----------------开始同步数据到立体仓----------------"); // 向第三方发送出库请求,创建出库单 ArrayList list = new ArrayList<>(); // 数量出库 @@ -1641,13 +1656,16 @@ public class LeaseApplyInfoServiceImpl implements ILeaseApplyInfoService { //String url = MaterialConstants.TEST_CREATE_OUT_URL; // 立体库生产建立出库单接口路径 String url = MaterialConstants.PROD_CREATE_OUT_URL; + log.info("立体仓建立出库单路径:{}", url); String data = AutomaticHttpHelper.sendHttpPostPushCost(url, body); + log.info("传输立体仓返回data:{}", data); if (StringUtils.isEmpty(data)) { System.err.println("立体仓出库单创建失败"); throw new RuntimeException("立体仓出库单创建失败"); } JSONObject object = JSONObject.parseObject(data); String code = object.getString("code"); + log.info("传输立体仓返回code:{}", code); if (!"0".equals(code)) { System.err.println("立体仓出库单创建失败"); throw new RuntimeException("立体仓出库单创建失败"); diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmQrBoxMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmQrBoxMapper.xml index 444c3507..cf4a2609 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmQrBoxMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmQrBoxMapper.xml @@ -586,6 +586,61 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" DESC + + UPDATE tm_task SET task_status = 22 WHERE task_id = #{taskId} diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/lease/LeaseApplyDetailsMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/lease/LeaseApplyDetailsMapper.xml index 64989d4a..ea52ff49 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/lease/LeaseApplyDetailsMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/lease/LeaseApplyDetailsMapper.xml @@ -816,19 +816,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" From dd1839c59b612eacf0fc1a5e3c0911307c25d848 Mon Sep 17 00:00:00 2001 From: syruan <15555146157@163.com> Date: Thu, 5 Feb 2026 09:46:24 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=8E=A8=E9=80=81=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3=EF=BC=8C=E5=85=81=E8=AE=B8=E8=B4=9F=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/mapper/material/push/IwsCostPushMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/push/IwsCostPushMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/push/IwsCostPushMapper.xml index 16470d9a..0d13901e 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/push/IwsCostPushMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/push/IwsCostPushMapper.xml @@ -112,7 +112,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" WHERE pmc.type = 1 and - ( pmc.LEASE_MONEY > 0 OR pmc.LOST_MONEY != 0 OR pmc.REPAIR_MONEY > 0 OR pmc.SCRAP_MONEY > 0 ) + ( (pmc.LEASE_MONEY > 0 or pmc.LEASE_MONEY < 0) OR pmc.LOST_MONEY != 0 OR pmc.REPAIR_MONEY > 0 OR pmc.SCRAP_MONEY > 0 ) AND a.pushStatus = #{pushStatus}