From 954addf7f777908f78daa455ddd17e7abd7a40e6 Mon Sep 17 00:00:00 2001 From: x_z Date: Mon, 29 Aug 2022 09:12:44 +0800 Subject: [PATCH 1/2] =?UTF-8?q?1.=E5=8D=95=E6=8D=AE=E5=AE=9E=E4=BD=93?= =?UTF-8?q?=E7=B1=BB=E5=A2=9E=E5=8A=A0=E4=B8=89=E6=9C=9F=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/inout/WareHouseController.java | 1 + .../api/admin/entity/inout/OrderEntity.java | 5 + .../mybatis/mapper/inout/OrderDao.xml | 93 ++++++++++--------- 3 files changed, 54 insertions(+), 45 deletions(-) diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/inout/WareHouseController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/inout/WareHouseController.java index 52c43f23..45282cd9 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/inout/WareHouseController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/inout/WareHouseController.java @@ -299,6 +299,7 @@ public class WareHouseController { orderEntity1.setOutChangeEnable(addOrderRequest.isOutChangeEnable()); orderEntity1.setPreCheck(addOrderRequest.isPreCheck()); orderEntity1.setUpdateTime(new Date()); + orderEntity1.setCodeFillCheck(addOrderRequest.isCodeFillCheck()); orderService.updateOrder(orderEntity1); WarehouseEntity warehouseEntity = new WarehouseEntity(); warehouseEntity.setOrderId(addOrderRequest.getOrderId()); diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/inout/OrderEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/inout/OrderEntity.java index 60388d25..c4f47d20 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/entity/inout/OrderEntity.java +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/inout/OrderEntity.java @@ -71,4 +71,9 @@ public class OrderEntity { private String deptName; private String printRemark; + + /** + * 采集UDI码时进行三期校验 + */ + private boolean codeFillCheck; } diff --git a/api-admin/src/main/resources/mybatis/mapper/inout/OrderDao.xml b/api-admin/src/main/resources/mybatis/mapper/inout/OrderDao.xml index d9f51077..c41b7b06 100644 --- a/api-admin/src/main/resources/mybatis/mapper/inout/OrderDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/inout/OrderDao.xml @@ -34,7 +34,8 @@ receiveStatus, erpFk, stockCheckFk, thirdBillNo, supId, exportFilePath, locStorageCode, supplementNo, ullageSupNo, createUser, reviewUser, outChangeEnable, originUllageSupNo, preCheck, updateTime, replicateNo, invWarehouseCode, - fromSubInvCode, createTime, originFromType,invStorageCode,deptCode,printRemark) + fromSubInvCode, createTime, originFromType, invStorageCode, deptCode, printRemark, + codeFillCheck) values (#{id}, #{action}, #{corpOrderId}, @@ -54,53 +55,55 @@ #{stockCheckFk}, #{thirdBillNo}, #{supId}, #{exportFilePath}, #{locStorageCode}, #{supplementNo}, #{ullageSupNo}, #{createUser}, #{reviewUser}, #{outChangeEnable}, #{originUllageSupNo}, #{preCheck}, - #{updateTime}, #{replicateNo}, #{invWarehouseCode}, #{fromSubInvCode}, #{createTime}, #{originFromType},#{invStorageCode},#{deptCode},#{printRemark}) + #{updateTime}, #{replicateNo}, #{invWarehouseCode}, #{fromSubInvCode}, #{createTime}, #{originFromType}, + #{invStorageCode}, #{deptCode}, #{printRemark}, + #{codeFillCheck}) insert - ignore - INTO io_order(id, action, corpOrderId, actDate, fromCorpId, actor, mainAction, - fromCorp, status, remark, exportStatus, fromType, contrastStatus, signStatus, - receiveStatus, erpFk, stockCheckFk, thirdBillNo, supId, - exportFilePath, locStorageCode, supplementNo, ullageSupNo, createUser, reviewUser, - outChangeEnable, originUllageSupNo, preCheck,updateTime,replicateNo,invWarehouseCode,fromSubInvCode,createTime,originFromType,invStorageCode,deptCode,printRemark) - values ( - #{id}, - #{action}, - #{corpOrderId}, - #{actDate}, - #{fromCorpId}, - #{actor}, - #{mainAction}, - #{fromCorp}, - #{status}, - #{remark}, - #{exportStatus}, - #{fromType}, - #{contrastStatus}, - #{signStatus}, - #{receiveStatus}, - #{erpFk}, - #{stockCheckFk}, - #{thirdBillNo}, - #{supId}, - #{exportFilePath}, - #{locStorageCode}, - #{supplementNo}, - #{ullageSupNo}, - #{createUser}, - #{reviewUser}, - #{outChangeEnable}, - #{originUllageSupNo}, - #{preCheck}, - #{updateTime}, - #{replicateNo}, - #{invWarehouseCode}, - #{fromSubInvCode}, - #{createTime}, - #{originFromType},#{invStorageCode},#{deptCode}, #{printRemark} - ) + ignore + INTO io_order(id, action, corpOrderId, actDate, fromCorpId, actor, mainAction, + fromCorp, status, remark, exportStatus, fromType, contrastStatus, signStatus, + receiveStatus, erpFk, stockCheckFk, thirdBillNo, supId, + exportFilePath, locStorageCode, supplementNo, ullageSupNo, createUser, reviewUser, + outChangeEnable, originUllageSupNo, preCheck, updateTime, replicateNo, invWarehouseCode, + fromSubInvCode, createTime, originFromType, invStorageCode, deptCode, printRemark, codeFillCheck) + values (#{id}, + #{action}, + #{corpOrderId}, + #{actDate}, + #{fromCorpId}, + #{actor}, + #{mainAction}, + #{fromCorp}, + #{status}, + #{remark}, + #{exportStatus}, + #{fromType}, + #{contrastStatus}, + #{signStatus}, + #{receiveStatus}, + #{erpFk}, + #{stockCheckFk}, + #{thirdBillNo}, + #{supId}, + #{exportFilePath}, + #{locStorageCode}, + #{supplementNo}, + #{ullageSupNo}, + #{createUser}, + #{reviewUser}, + #{outChangeEnable}, + #{originUllageSupNo}, + #{preCheck}, + #{updateTime}, + #{replicateNo}, + #{invWarehouseCode}, + #{fromSubInvCode}, + #{createTime}, + #{originFromType}, #{invStorageCode}, #{deptCode}, #{printRemark}, + #{codeFillCheck}) @@ -144,7 +147,7 @@ originFromType=#{originFromType}, deptCode=#{deptCode}, printRemark=#{printRemark}, - + codeFillCheck=#{codeFillCheck}, WHERE id = #{id} From d8d3ae739310dce8d454677afa186ec5a575990e Mon Sep 17 00:00:00 2001 From: x_z Date: Mon, 29 Aug 2022 17:27:36 +0800 Subject: [PATCH 2/2] =?UTF-8?q?1.=E6=B7=BB=E5=8A=A0=E6=9D=A1=E7=A0=81?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C=E6=89=B9=E6=AC=A1=E5=8F=B7=EF=BC=8C=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=E4=BA=A7=E5=93=81=E8=AE=BE=E7=BD=AE=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E5=81=9A=E4=B8=80=E6=AC=A1=E6=A0=A1=E9=AA=8C=202.=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E5=BA=93=E5=AD=98=E7=BB=9F=E8=AE=A1=E6=8A=A5=E9=94=99?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../business/StockOrderController.java | 4 +- .../business/StockOrderDetailController.java | 4 +- .../controller/inout/WareHouseController.java | 38 ++++++++++--------- .../thrsys/ThrOrderReceiveController.java | 5 ++- .../entity/business/StockOrderEntity.java | 2 +- .../inventory/impl/InvProductServiceImpl.java | 17 +++++---- .../mybatis/mapper/business/StockOrderDao.xml | 3 +- 7 files changed, 40 insertions(+), 33 deletions(-) diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/business/StockOrderController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/business/StockOrderController.java index dbf3cfe2..4d9be0df 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/business/StockOrderController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/business/StockOrderController.java @@ -2,6 +2,7 @@ package com.glxp.api.admin.controller.business; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.date.DatePattern; import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageInfo; import com.glxp.api.admin.annotation.AuthRuleAnnotation; @@ -228,7 +229,7 @@ public class StockOrderController { stockOrderEntity.setUnitIdFk(stockOrderPostRequest.getUnitIdFk()); stockOrderEntity.setCustomerId(stockOrderPostRequest.getCustomerId()); - stockOrderEntity.setBilldate(DateUtil.formatDate(new Date())); + stockOrderEntity.setBilldate(cn.hutool.core.date.DateUtil.parse(stockOrderPostRequest.getBilldate(), DatePattern.UTC_MS_WITH_XXX_OFFSET_PATTERN).toString()); b = stockOrderService.insertStockOrder(stockOrderEntity); } else { stockOrderService.updateById(stockOrderEntity); @@ -307,7 +308,6 @@ public class StockOrderController { filterInvUserRequest.setCode(invWarehouseEntity.getCode()); filterInvUserRequest.setUserid(userId.longValue()); filterInvUserRequest.setIsDirector(true); - List warehouseUserEntities = warehouseUserService.filterWarehouseUsers(filterInvUserRequest); } else { return ResultVOUtils.error(500, "请先选择当前仓库"); } diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/business/StockOrderDetailController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/business/StockOrderDetailController.java index 63565377..8dd8434a 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/business/StockOrderDetailController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/business/StockOrderDetailController.java @@ -94,14 +94,12 @@ public class StockOrderDetailController { StockOrderEntity stockOrderEntity = stockOrderService.findById(stockOrderDetailFilterRequest.getOrderIdFk()); List stockOrderDetailEntityList = stockOrderDetailService.filterStockOrderDetail(stockOrderDetailFilterRequest); + PageInfo pageInfo = new PageInfo<>(stockOrderDetailEntityList); BussinessLocalTypeEntity bussinessLocalTypeEntity = bussinessLocalTypeService.findBTByAction(stockOrderEntity.getBillType()); if (bussinessLocalTypeEntity.getOrderVisibleType() == 1 && (stockOrderEntity.getStatus().equals("4") || stockOrderEntity.getStatus().equals("5"))) { stockOrderDetailEntityList = transferSerList(stockOrderDetailEntityList, stockOrderEntity.getOrderIdFk()); } - - PageInfo pageInfo; - pageInfo = new PageInfo<>(stockOrderDetailEntityList); PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); pageSimpleResponse.setTotal(pageInfo.getTotal()); pageSimpleResponse.setList(stockOrderDetailEntityList); diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/inout/WareHouseController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/inout/WareHouseController.java index 45282cd9..ff7e87dd 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/inout/WareHouseController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/inout/WareHouseController.java @@ -66,11 +66,11 @@ import java.util.stream.Collectors; @RestController public class WareHouseController { + @Resource private CodesService codesService; @Resource private OrderService orderService; - @Resource private IoTransInoutService ioTransInoutService; @Resource @@ -78,9 +78,9 @@ public class WareHouseController { @Resource private BussinessTypeService bussinessTypeService; @Resource - AuthAdminService authAdminService; + private AuthAdminService authAdminService; @Resource - BasicUnitMaintainService basicUnitMaintainService; + private BasicUnitMaintainService basicUnitMaintainService; @Resource private AuthLicenseDao authLicenseDao; @Resource @@ -88,30 +88,29 @@ public class WareHouseController { @Resource private WarehouseBussinessTypeService warehouseBussinessTypeService; @Resource - CustomerService customerService; + private CustomerService customerService; @Resource - UdiRelevanceService udiRelevanceService; + private UdiRelevanceService udiRelevanceService; @Resource - CompanyProductRelevanceService companyProductRelevanceService; + private CompanyProductRelevanceService companyProductRelevanceService; @Resource - SystemParamConfigService systemParamConfigService; + private SystemParamConfigService systemParamConfigService; @Resource - StockOrderService stockOrderService; + private StockOrderService stockOrderService; @Resource - GennerOrderUtils gennerOrderUtils; + private GennerOrderUtils gennerOrderUtils; @Resource - InvPreInProductDetailService invPreInProductDetailService; + private InvPreInProductDetailService invPreInProductDetailService; @Resource - SpsDirectClient spsDirectClient; + private SpsDirectClient spsDirectClient; @Resource - InvWarehouseDao invWarehouseService; + private InvWarehouseDao invWarehouseService; @Resource - InvSubWarehouseService invSubWarehouseService; + private InvSubWarehouseService invSubWarehouseService; @Resource private UdiInfoService udiInfoService; - @Resource - InvBusUserService invBusUserService; + private InvBusUserService invBusUserService; @AuthRuleAnnotation("") @GetMapping("admin/warehouse/inout/list") @@ -641,9 +640,14 @@ public class WareHouseController { //批次号校验 - if (StrUtil.isEmpty(udiEntity.getSerialNo()) && StrUtil.isEmpty(udiEntity.getBatchNo())) { - return ResultVOUtils.error(500, "批次号不能为空!"); + //判断此产品是否开启允许无批次号 + UdiInfoEntity udiInfoEntity = udiInfoService.findByNameCode(udiEntity.getUdi()); + if (!udiInfoEntity.isAllowNoBatch()) { + if (StrUtil.isEmpty(udiEntity.getSerialNo()) && StrUtil.isEmpty(udiEntity.getBatchNo())) { + return ResultVOUtils.error(500, "批次号不能为空!"); + } } + String orderId = addOrderRequest.getOrderId(); // String isCheck = systemParamConfigService.selectValueByParamKey("code_fill_check"); diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderReceiveController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderReceiveController.java index 92f64236..f7ba47b7 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderReceiveController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrOrderReceiveController.java @@ -1,6 +1,8 @@ package com.glxp.api.admin.controller.thrsys; //领用单 +import cn.hutool.core.date.DatePattern; +import cn.hutool.core.date.DateUtil; import com.glxp.api.admin.annotation.AuthRuleAnnotation; import com.glxp.api.admin.constant.Constant; import com.glxp.api.admin.entity.business.StockOrderDetailEntity; @@ -10,7 +12,6 @@ import com.glxp.api.admin.req.business.StockOrderPostRequest; import com.glxp.api.admin.service.auth.CustomerService; import com.glxp.api.admin.service.thrsys.ThrOrderDetailService; import com.glxp.api.admin.service.thrsys.ThrOrderService; -import com.glxp.api.admin.util.DateUtil; import com.glxp.api.admin.util.GennerOrderUtils; import com.glxp.api.admin.util.OrderNoTypeBean; import com.glxp.api.common.enums.ResultEnum; @@ -52,7 +53,7 @@ public class ThrOrderReceiveController { stockOrderEntity.setCreateUser(userId + ""); stockOrderEntity.setType(1);//领用单据 stockOrderEntity.setUpdateTime(new Date()); - stockOrderEntity.setBilldate(DateUtil.formatDate(new Date())); + stockOrderEntity.setBilldate(DateUtil.parse(stockOrderEntity.getBilldate(), DatePattern.NORM_DATETIME_PATTERN).toString()); ThrOrderEntity temp = thrOrderService.findByUnique(stockOrderEntity.getBillNo(), stockOrderEntity.getThirdSysFk()); if (temp != null) { stockOrderEntity.setId(temp.getId()); diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/business/StockOrderEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/business/StockOrderEntity.java index 65562fc2..c6d2c67e 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/entity/business/StockOrderEntity.java +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/business/StockOrderEntity.java @@ -10,7 +10,7 @@ import java.util.Date; public class StockOrderEntity { private String id; private String billNo; - @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private String billdate; private String corpId; private String corpName; diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/inventory/impl/InvProductServiceImpl.java b/api-admin/src/main/java/com/glxp/api/admin/service/inventory/impl/InvProductServiceImpl.java index 9b246505..bc225de6 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/service/inventory/impl/InvProductServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/api/admin/service/inventory/impl/InvProductServiceImpl.java @@ -104,13 +104,16 @@ public class InvProductServiceImpl implements InvProductService { for (String relIdFk : relIdFkSet) { if (CollUtil.isNotEmpty(batchNoSet)) { for (String batchNo : batchNoSet) { - InvProductResponse invProductResponse = data.stream().filter(product -> product.getRelIdFk().equals(relIdFk)).filter(product -> product.getBatchNo().equals(batchNo)).collect(Collectors.toList()).get(0); - int inCount = data.stream().filter(product -> product.getRelIdFk().equals(relIdFk)).filter(product -> product.getBatchNo().equals(batchNo)).mapToInt(InvProductResponse::getInCount).sum(); - int outCount = data.stream().filter(product -> product.getRelIdFk().equals(relIdFk)).filter(product -> product.getBatchNo().equals(batchNo)).mapToInt(InvProductResponse::getOutCount).sum(); - invProductResponse.setInCount(inCount); - invProductResponse.setOutCount(outCount); - invProductResponse.setReCount(inCount - outCount); - result.add(invProductResponse); + List list = data.stream().filter(product -> product.getRelIdFk().equals(relIdFk)).filter(product -> product.getBatchNo().equals(batchNo)).collect(Collectors.toList()); + if (CollUtil.isNotEmpty(list)) { + InvProductResponse invProductResponse = list.get(0); + int inCount = data.stream().filter(product -> product.getRelIdFk().equals(relIdFk)).filter(product -> product.getBatchNo().equals(batchNo)).mapToInt(InvProductResponse::getInCount).sum(); + int outCount = data.stream().filter(product -> product.getRelIdFk().equals(relIdFk)).filter(product -> product.getBatchNo().equals(batchNo)).mapToInt(InvProductResponse::getOutCount).sum(); + invProductResponse.setInCount(inCount); + invProductResponse.setOutCount(outCount); + invProductResponse.setReCount(inCount - outCount); + result.add(invProductResponse); + } } } else { InvProductResponse invProductResponse = data.stream().filter(product -> product.getRelIdFk().equals(relIdFk)).collect(Collectors.toList()).get(0); diff --git a/api-admin/src/main/resources/mybatis/mapper/business/StockOrderDao.xml b/api-admin/src/main/resources/mybatis/mapper/business/StockOrderDao.xml index 2e424179..3705a4f6 100644 --- a/api-admin/src/main/resources/mybatis/mapper/business/StockOrderDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/business/StockOrderDao.xml @@ -398,8 +398,9 @@