From 186c5d1b94fb709330a470c5e035f292cdcc22b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=A6=E9=B8=BF=E5=B1=95?= <18031053041@163.com> Date: Fri, 23 Jan 2026 15:42:37 +0800 Subject: [PATCH] =?UTF-8?q?WMS=E5=85=A5=E5=BA=93=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E6=A8=A1=E5=9D=97bug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mhd/system/api/SystemServiceFeign.java | 6 ++ .../RemoteSystemFeignFallbackFactory.java | 5 ++ .../StockInOrderApplicationService.java | 58 +++++++++---------- .../StockReceiptOrderApplicationService.java | 32 ++++++++-- .../StockShelfOrderApplicationService.java | 32 +++++----- .../entity/InMaterialDetail.java | 12 ++-- .../repository/po/InMaterialDetailPO.java | 12 ++-- .../repository/todo/InMaterialDetailDO.java | 12 ++-- .../service/StockInOrderDomainService.java | 7 +-- .../repository/todo/StockReceiptOrderDO.java | 3 + .../StockReceiptOrderDomainService.java | 40 +++++++++++++ .../inMaterialDetail/InMaterialDetailDTO.java | 12 ++-- .../materialBaseInfo/MaterialBaseInfoDTO.java | 24 ++++++++ .../InMaterialDetailMapper.xml | 19 +++--- .../ReceiptMaterialDetailMapper.xml | 20 +++---- .../stockShelfOrder/StockShelfOrderMapper.xml | 2 +- 16 files changed, 200 insertions(+), 96 deletions(-) diff --git a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/SystemServiceFeign.java b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/SystemServiceFeign.java index 581e8c257..bfd94ccba 100644 --- a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/SystemServiceFeign.java +++ b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/SystemServiceFeign.java @@ -275,6 +275,12 @@ public interface SystemServiceFeign { @GetMapping("/associationWarehouseApi/setWarehouseInfo") public AjaxResult setWarehouseInfo(@RequestBody AssociationWarehouseFeign associationWarehouseFeign); + /** + * 查询仓库关联的用户ID集合 + */ + @GetMapping("/associationWarehouseApi/queryListCorrelationId") + public AjaxResult queryListCorrelationId(@RequestParam(value = "warehouseId", required = false) Long warehouseId); + /** * 根据code编码查询费用科目 diff --git a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/factory/RemoteSystemFeignFallbackFactory.java b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/factory/RemoteSystemFeignFallbackFactory.java index f9e020923..4b199c215 100644 --- a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/factory/RemoteSystemFeignFallbackFactory.java +++ b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/factory/RemoteSystemFeignFallbackFactory.java @@ -219,6 +219,11 @@ public class RemoteSystemFeignFallbackFactory implements FallbackFactory 0) { + StockReceiptOrderDO queryDO = new StockReceiptOrderDO(); + queryDO.setReceiptOrderId(stockReceiptOrderDO.getReceiptOrderIds().get(0)); + StockReceiptOrderPO stockReceiptOrderPO = stockReceiptOrderDomainService.getInfo(queryDO.getReceiptOrderId()); + if (stockReceiptOrderPO != null && stockReceiptOrderPO.getWarehouseId() != null) { + //查询该仓库绑定的用户ID列表 + AjaxResult ajaxResult = systemServiceFeign.queryListCorrelationId(stockReceiptOrderPO.getWarehouseId()); + if ("200".equals(String.valueOf(ajaxResult.get("code")))) { + List warehouseUserIds = JSON.parseArray(JSONUtil.toJsonStr(ajaxResult.get("data")), Long.class); + stockReceiptOrderDO.setWarehouseUserIds(warehouseUserIds); + } + } + } + //设置作业人员信息(会验证操作人员是否属于该仓库绑定的用户) operatorsParam(stockReceiptOrderDO); return stockReceiptOrderDomainService.taskDistribution(stockReceiptOrderDO); } @@ -313,6 +328,15 @@ public class StockReceiptOrderApplicationService { * @param stockReceiptOrderDO */ private void operatorsParam(StockReceiptOrderDO stockReceiptOrderDO){ + if (stockReceiptOrderDO.getOperatorsBy() == null) { + throw new ServiceException("操作人员不能为空"); + } + //如果指定了仓库绑定的用户列表,验证操作人员是否在该列表中 + if (stockReceiptOrderDO.getWarehouseUserIds() != null && !stockReceiptOrderDO.getWarehouseUserIds().isEmpty()) { + if (!stockReceiptOrderDO.getWarehouseUserIds().contains(stockReceiptOrderDO.getOperatorsBy())) { + throw new ServiceException("操作人员必须属于当前收货单对应仓库绑定的用户"); + } + } AjaxResult ajaxResult = userServiceFeign.getInfo(stockReceiptOrderDO.getOperatorsBy()); if(!"200".equals(String.valueOf(ajaxResult.get("code")))){ throw new ServiceException("获取作业人员信息失败"); @@ -591,7 +615,7 @@ public class StockReceiptOrderApplicationService { */ private void setMaterialMoreDetailInfo(ReceiptMaterialDetailDO receiptMaterialDetailDO){ - if(ObjectUtil.isNotNull(receiptMaterialDetailDO.getMaterialStatusCode())){ + if(ObjectUtil.isNotNull(receiptMaterialDetailDO.getMaterialStatusCode()) && StringUtils.isNotBlank(receiptMaterialDetailDO.getMaterialStatusCode())){ //翻译物料状态 AjaxResult materialsStatusResult = systemServiceFeign.selectListByDictType(DictCode.MATERIALS_STATUS.getCode()); if (!"200".equals(String.valueOf(materialsStatusResult.get("code")))) { diff --git a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockShelfOrder/StockShelfOrderApplicationService.java b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockShelfOrder/StockShelfOrderApplicationService.java index e9e059efe..49392d4dc 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockShelfOrder/StockShelfOrderApplicationService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockShelfOrder/StockShelfOrderApplicationService.java @@ -67,8 +67,8 @@ public class StockShelfOrderApplicationService { if (topOrganizationId != null && topOrganizationId != 1){ stockShelfOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); } - AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid()); - stockShelfOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId()); +// AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid()); +// stockShelfOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId()); } return stockShelfOrderDomainService.queryList(stockShelfOrderDO); } @@ -245,7 +245,7 @@ public class StockShelfOrderApplicationService { //设置上架信息 setStorageLocationInfo(shelfMaterialDetailDO); //设置容器信息 - setContainerInfo(shelfMaterialDetailDO); +// setContainerInfo(shelfMaterialDetailDO); //上架后 设置该记录不允许被修改 shelfMaterialDetailDO.setAllowModify(2); //未上过架 统计到当前收货单作业收货数 @@ -267,7 +267,7 @@ public class StockShelfOrderApplicationService { //设置上架信息 setStorageLocationInfo(shelfMaterialDetailDOChild); //设置容器信息 - setContainerInfo(returnShelfMaterialDetailDOChild); +// setContainerInfo(returnShelfMaterialDetailDOChild); //上架后 设置该记录不允许被修改 shelfMaterialDetailDO.setAllowModify(2); returnShelfMaterialDetailDOChild.setMaterialDetailSerialNumberList(shelfMaterialDetailDOChild.getMaterialDetailSerialNumberList()); @@ -348,18 +348,18 @@ public class StockShelfOrderApplicationService { * @date 2024/5/23 14:03 * @param shelfMaterialDetailDO */ - private void setContainerInfo(ShelfMaterialDetailDO shelfMaterialDetailDO){ - - //获取容器详情 - AjaxResult ajaxResult = systemServiceFeign.getContainerInfoByContainerId(shelfMaterialDetailDO.getContainerId()); - if(!"200".equals(String.valueOf(ajaxResult.get("code")))){ - throw new ServiceException("获取容器信息失败"); - } - ContainerFeignPO containerFeignPO = JSON.parseObject(JSONObject.toJSONString(ajaxResult.get("data")), ContainerFeignPO.class); - shelfMaterialDetailDO.setContainerCode(containerFeignPO.getContainerCode()); - shelfMaterialDetailDO.setContainerType(containerFeignPO.getContainerType()); - shelfMaterialDetailDO.setContainerTypeName(containerFeignPO.getContainerTypeName()); - } +// private void setContainerInfo(ShelfMaterialDetailDO shelfMaterialDetailDO){ +// +// //获取容器详情 +// AjaxResult ajaxResult = systemServiceFeign.getContainerInfoByContainerId(shelfMaterialDetailDO.getContainerId()); +// if(!"200".equals(String.valueOf(ajaxResult.get("code")))){ +// throw new ServiceException("获取容器信息失败"); +// } +// ContainerFeignPO containerFeignPO = JSON.parseObject(JSONObject.toJSONString(ajaxResult.get("data")), ContainerFeignPO.class); +// shelfMaterialDetailDO.setContainerCode(containerFeignPO.getContainerCode()); +// shelfMaterialDetailDO.setContainerType(containerFeignPO.getContainerType()); +// shelfMaterialDetailDO.setContainerTypeName(containerFeignPO.getContainerTypeName()); +// } /** * @description 判断上架数量是否存在超收 diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/entity/InMaterialDetail.java b/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/entity/InMaterialDetail.java index 06cf1aaee..ae1e868b2 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/entity/InMaterialDetail.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/entity/InMaterialDetail.java @@ -253,12 +253,12 @@ public class InMaterialDetail extends BaseVOEntity { private Long overStockType; // ========== 报关相关明细字段 ========== - @ApiModelProperty("规格型号/ITEM") + @ApiModelProperty("规格型号") @Excel(name = "规格型号/ITEM") - private String specification; + private String specificationModel; - @ApiModelProperty("商品SKU码") - @Excel(name = "商品SKU码") + @ApiModelProperty("SKU码") + @Excel(name = "SKU码") private String skuCode; @ApiModelProperty("Invoice No.") @@ -275,7 +275,7 @@ public class InMaterialDetail extends BaseVOEntity { @ApiModelProperty("申报单位") @Excel(name = "申报单位") - private String declaredUnit; + private String declarationUnit; @ApiModelProperty("Batch Ref NO's") @Excel(name = "Batch Ref NO's") @@ -287,7 +287,7 @@ public class InMaterialDetail extends BaseVOEntity { @ApiModelProperty("原产国") @Excel(name = "原产国") - private String countryOfOrigin; + private String originCountry; @ApiModelProperty("箱号/卡板号") @Excel(name = "箱号/卡板号") diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/repository/po/InMaterialDetailPO.java b/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/repository/po/InMaterialDetailPO.java index b0151f378..d830c38fc 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/repository/po/InMaterialDetailPO.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/repository/po/InMaterialDetailPO.java @@ -264,12 +264,12 @@ public class InMaterialDetailPO extends StockInOrderBasePO { private Long overStockType; // ========== 报关相关明细字段 ========== - @ApiModelProperty("规格型号/ITEM") + @ApiModelProperty("规格型号") @Excel(name = "规格型号/ITEM") - private String specification; + private String specificationModel; - @ApiModelProperty("商品SKU码") - @Excel(name = "商品SKU码") + @ApiModelProperty("SKU码") + @Excel(name = "SKU码") private String skuCode; @ApiModelProperty("Invoice No.") @@ -286,7 +286,7 @@ public class InMaterialDetailPO extends StockInOrderBasePO { @ApiModelProperty("申报单位") @Excel(name = "申报单位") - private String declaredUnit; + private String declarationUnit; @ApiModelProperty("Batch Ref NO's") @Excel(name = "Batch Ref NO's") @@ -298,7 +298,7 @@ public class InMaterialDetailPO extends StockInOrderBasePO { @ApiModelProperty("原产国") @Excel(name = "原产国") - private String countryOfOrigin; + private String originCountry; @ApiModelProperty("箱号/卡板号") @Excel(name = "箱号/卡板号") diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/repository/todo/InMaterialDetailDO.java b/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/repository/todo/InMaterialDetailDO.java index 4372d379f..8b8d021bd 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/repository/todo/InMaterialDetailDO.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/inMaterialDetail/repository/todo/InMaterialDetailDO.java @@ -260,12 +260,12 @@ public class InMaterialDetailDO extends StockInOrderBaseDO { private List inOrderNumberList; // ========== 报关相关明细字段 ========== - @ApiModelProperty("规格型号/ITEM(选择物料后自动带出,不可编辑)") + @ApiModelProperty("规格型号(选择物料后自动带出,不可编辑)") @Excel(name = "规格型号/ITEM") - private String specification; + private String specificationModel; - @ApiModelProperty("商品SKU码(选择物料后自动带出,不可编辑)") - @Excel(name = "商品SKU码") + @ApiModelProperty("SKU码(选择物料后自动带出,不可编辑)") + @Excel(name = "SKU码") private String skuCode; @ApiModelProperty("Invoice No.") @@ -282,7 +282,7 @@ public class InMaterialDetailDO extends StockInOrderBaseDO { @ApiModelProperty("申报单位") @Excel(name = "申报单位") - private String declaredUnit; + private String declarationUnit; @ApiModelProperty("Batch Ref NO's") @Excel(name = "Batch Ref NO's") @@ -294,7 +294,7 @@ public class InMaterialDetailDO extends StockInOrderBaseDO { @ApiModelProperty("原产国") @Excel(name = "原产国") - private String countryOfOrigin; + private String originCountry; @ApiModelProperty("箱号/卡板号") @Excel(name = "箱号/卡板号") diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/stockInOrder/service/StockInOrderDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/stockInOrder/service/StockInOrderDomainService.java index 08abdc5b0..66993f687 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/stockInOrder/service/StockInOrderDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/stockInOrder/service/StockInOrderDomainService.java @@ -107,7 +107,6 @@ public class StockInOrderDomainService { /** * 批量新增入库单 */ - @Transactional(rollbackFor = Exception.class) public Boolean batchInsert(List stockInOrderDOList) { for (StockInOrderDO stockInOrderDO : stockInOrderDOList){ if (StringUtils.isBlank(stockInOrderDO.getInOrderNumber())){ @@ -409,12 +408,12 @@ public class StockInOrderDomainService { //自动填充规格型号和SKU码(如果物料基础信息中有相关字段且明细中未设置) //规格型号:优先使用物料种类名称,如果为空则使用物料类型名称 - if (StringUtils.isBlank(inMaterialDetailDO.getSpecification())) { + if (StringUtils.isBlank(inMaterialDetailDO.getSpecificationModel())) { if (StringUtils.isNotBlank(materialBaseInfoPO.getMaterialTypeName())) { - inMaterialDetailDO.setSpecification(materialBaseInfoPO.getMaterialTypeName()); + inMaterialDetailDO.setSpecificationModel(materialBaseInfoPO.getMaterialTypeName()); } } - //商品SKU码:使用物料条形码 + //SKU码:使用物料条形码 if (StringUtils.isBlank(inMaterialDetailDO.getSkuCode())) { if (StringUtils.isNotBlank(materialBaseInfoPO.getBarCode())) { inMaterialDetailDO.setSkuCode(materialBaseInfoPO.getBarCode()); diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/stockReceiptOrder/repository/todo/StockReceiptOrderDO.java b/mhd_wms/src/main/java/com/mhd/wms/domain/stockReceiptOrder/repository/todo/StockReceiptOrderDO.java index a2c23e31c..9a085b6e4 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/stockReceiptOrder/repository/todo/StockReceiptOrderDO.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/stockReceiptOrder/repository/todo/StockReceiptOrderDO.java @@ -158,4 +158,7 @@ public class StockReceiptOrderDO extends StockInOrderBaseDO { @ApiModelProperty("物料明细") private List materialDetailList; + @ApiModelProperty("仓库绑定的用户ID列表(用于任务下发时筛选操作人员)") + private List warehouseUserIds; + } diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/stockReceiptOrder/service/StockReceiptOrderDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/stockReceiptOrder/service/StockReceiptOrderDomainService.java index 97f3a1d0b..984567fcb 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/stockReceiptOrder/service/StockReceiptOrderDomainService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/stockReceiptOrder/service/StockReceiptOrderDomainService.java @@ -53,6 +53,9 @@ import com.mhd.wms.domain.stockReceiptOrder.repository.facade.IStockReceiptOrder import com.mhd.wms.domain.stockReceiptOrder.repository.po.StockReceiptOrderPO; import com.mhd.wms.domain.stockReceiptOrder.repository.todo.NoReceiptOrderDO; import com.mhd.wms.domain.stockReceiptOrder.repository.todo.StockReceiptOrderDO; +import com.mhd.wms.domain.stockShelfOrder.entity.StockShelfOrder; +import com.mhd.wms.domain.stockShelfOrder.repository.facade.IStockShelfOrderService; +import com.mhd.wms.domain.stockShelfOrder.repository.po.StockShelfOrderPO; import com.mhd.wms.domain.stockShelfOrder.repository.todo.StockShelfOrderDO; import com.mhd.wms.domain.stockShelfOrder.service.StockShelfOrderDomainService; import com.mhd.wms.domain.taskReceiptMaterialDetail.repository.todo.TaskReceiptMaterialDetailDO; @@ -88,6 +91,8 @@ public class StockReceiptOrderDomainService { @Autowired private StockShelfOrderDomainService stockShelfOrderDomainService; @Autowired + private IStockShelfOrderService stockShelfOrderService; + @Autowired private IQualityInspectionService qualityInspectionService; @Autowired private IInMaterialDetailSerialNumberService inMaterialDetailSerialNumberService; @@ -145,6 +150,7 @@ public class StockReceiptOrderDomainService { receiptMaterialDetail.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); receiptMaterialDetail.setUniqueId(idGenerator.snowflakeId(SnowFlakeConstants.wmsId)); receiptMaterialDetail.setReceiptOrderNumber(stockReceiptOrder.getReceiptOrderNumber()); + receiptMaterialDetail.setGenStockShelf(2); // 设置需要生成上架单 receiptMaterialDetail.setCreateBy(loginUser.getUserid()); receiptMaterialDetail.setCreateByName(loginUser.getUsername()); receiptMaterialDetail.setCreateTime(new Date()); @@ -455,6 +461,40 @@ public class StockReceiptOrderDomainService { //根据收货数量生成上架 genStockShelfOrder(stockReceiptOrderPO); + //收货完成后自动生成上架任务 + try { + //查询刚生成的上架单 + StockShelfOrderDO stockShelfOrderDOQuery = new StockShelfOrderDO(); + stockShelfOrderDOQuery.setReceiptOrderNumber(stockReceiptOrderPO.getReceiptOrderNumber()); + stockShelfOrderDOQuery.setTaskDistribution(2); // 查询未下发的上架单 + List stockShelfOrderPOList = stockShelfOrderService.queryList(stockShelfOrderDOQuery); + if (!CollectionUtils.isEmpty(stockShelfOrderPOList)) { + //创建上架任务参数 + StockShelfOrderDO stockShelfOrderDO = new StockShelfOrderDO(); + stockShelfOrderDO.setShelfOrderIds(stockShelfOrderPOList.stream() + .map(StockShelfOrderPO::getShelfOrderId) + .collect(Collectors.toList())); + //如果没有指定操作人员,使用当前登录用户 + if (stockShelfOrderDO.getOperatorsBy() == null) { + stockShelfOrderDO.setOperatorsBy(loginUser.getUserid()); + stockShelfOrderDO.setOperatorsName(loginUser.getUsername()); + } + //生成上架任务 + stockShelfOrderDomainService.genDeliveTask(stockShelfOrderPOList, stockShelfOrderDO); + //标记上架单任务已下发 + stockShelfOrderService.update(null, new UpdateWrapper().lambda() + .set(StockShelfOrder::getTaskDistribution, 1) + .set(StockShelfOrder::getTaskDistributionTime, new Date()) + .set(StockShelfOrder::getUpdateBy, loginUser.getUserid()) + .set(StockShelfOrder::getUpdateByName, loginUser.getUsername()) + .set(StockShelfOrder::getUpdateTime, new Date()) + .in(StockShelfOrder::getShelfOrderId, stockShelfOrderDO.getShelfOrderIds())); + } + } catch (Exception e) { + //如果生成上架任务失败,记录日志但不影响收货完成流程 + log.error("收货完成后生成上架任务失败,收货单号:{}", stockReceiptOrderPO.getReceiptOrderNumber(), e); + } + //生成收货追溯记录 genInventoryStandingDetail(stockReceiptOrderPO); //存在异常 生成记录 diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/inMaterialDetail/InMaterialDetailDTO.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/inMaterialDetail/InMaterialDetailDTO.java index b00a29dc7..c7c00abdf 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/inMaterialDetail/InMaterialDetailDTO.java +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/inMaterialDetail/InMaterialDetailDTO.java @@ -264,12 +264,12 @@ public class InMaterialDetailDTO extends BaseVOEntity { private Integer isDifferentType; // ========== 报关相关明细字段 ========== - @ApiModelProperty("规格型号/ITEM(选择物料后自动带出,不可编辑)") + @ApiModelProperty("规格型号(选择物料后自动带出,不可编辑)") @Excel(name = "规格型号/ITEM") - private String specification; + private String specificationModel; - @ApiModelProperty("商品SKU码(选择物料后自动带出,不可编辑)") - @Excel(name = "商品SKU码") + @ApiModelProperty("SKU码(选择物料后自动带出,不可编辑)") + @Excel(name = "SKU码") private String skuCode; @ApiModelProperty("Invoice No.") @@ -286,7 +286,7 @@ public class InMaterialDetailDTO extends BaseVOEntity { @ApiModelProperty("申报单位") @Excel(name = "申报单位") - private String declaredUnit; + private String declarationUnit; @ApiModelProperty("Batch Ref NO's") @Excel(name = "Batch Ref NO's") @@ -298,7 +298,7 @@ public class InMaterialDetailDTO extends BaseVOEntity { @ApiModelProperty("原产国") @Excel(name = "原产国") - private String countryOfOrigin; + private String originCountry; @ApiModelProperty("箱号/卡板号") @Excel(name = "箱号/卡板号") diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/materialBaseInfo/MaterialBaseInfoDTO.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/materialBaseInfo/MaterialBaseInfoDTO.java index 0f40a6c79..aeba674ec 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/materialBaseInfo/MaterialBaseInfoDTO.java +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/materialBaseInfo/MaterialBaseInfoDTO.java @@ -190,4 +190,28 @@ public class MaterialBaseInfoDTO extends BaseVOEntity { @ApiModelProperty("是否公用: 1-是 2-否") @Excel(name = "是否公用: 1-是 2-否") private Integer common; + + @ApiModelProperty("SKU码") + private String skuCode; + + @ApiModelProperty("单价") + private BigDecimal unitPrice; + + @ApiModelProperty("币制") + private String currency; + + @ApiModelProperty("原产国") + private String originCountry; + + @ApiModelProperty("HS码") + private String hsCode; + + @ApiModelProperty("申报单位") + private String declarationUnit; + + @ApiModelProperty("法定单位") + private String statutoryUnit; + + @ApiModelProperty("法定第二单位") + private String statutorySecondUnit; } diff --git a/mhd_wms/src/main/resources/mapper/inMaterialDetail/InMaterialDetailMapper.xml b/mhd_wms/src/main/resources/mapper/inMaterialDetail/InMaterialDetailMapper.xml index 2a9eea0d8..94013f033 100644 --- a/mhd_wms/src/main/resources/mapper/inMaterialDetail/InMaterialDetailMapper.xml +++ b/mhd_wms/src/main/resources/mapper/inMaterialDetail/InMaterialDetailMapper.xml @@ -19,7 +19,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + @@ -52,15 +52,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + - + - + @@ -80,14 +80,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" a.material_detail_id, a.organization_id, a.organization_name, a.top_organization_id, a.unique_id, a.in_order_number, a.material_base_info_id, a.material_code, a.material_name, a.bar_code, a.quantity, a.receipt_quantity, a.shelves_quantity, a.receipt_status, a.shelves_status, a.pack_id, a.pack_code, a.pack_name, - a.pack_detail_id, a.unit_code, a.unit_name, a.material_warehouse_control_id, a.serial_number_manage, a.quality_inspection_manage, + CASE + WHEN a.pack_detail_id IS NULL OR TRIM(a.pack_detail_id) = '' THEN NULL + ELSE CAST(a.pack_detail_id AS BIGINT) + END as pack_detail_id, a.unit_code, a.unit_name, a.material_warehouse_control_id, a.serial_number_manage, a.quality_inspection_manage, a.quality_inspection_stage, a.quality_inspection_rule, a.quality_inspection_ratio, a.quality_inspection_term, a.quality_inspection_results, a.allow_overcharge, a.overcharge_ratio, a.batch_number, a.material_status_code, a.material_status_name, a.distribute_rule_id, a.distribute_rule_code, a.distribute_rule_name, a.container_id, a.container_code, a.container_type, a.container_type_name, a.warehouse_id, a.warehouse_code, a.warehouse_name, a.storage_section_id, a.storage_code, a.storage_name, a.storage_location_id, a.storage_location_code, a.storage_location_name, a.level, a.parent_unique_id, a.remark, a.create_time, a.create_by,a.create_by_name, a.update_time, a.update_by, a.update_by_name, a.del_flag, a.over_stock_id, a.over_stock_status, a.over_stock_type, - a.SPECIFICATION, a.SKU_CODE, a.INVOICE_NO, a.LITER, a.DIMENSIONS, a.DECLARED_UNIT, a.BATCH_REF_NO, a.SHEET_REF_NO, - a.COUNTRY_OF_ORIGIN, a.BOX_PALLET_NO, a.CURRENCY, a.UNIT, a.DECLARED_QUANTITY, a.BOX_COUNT, a.PIECE_COUNT, a.OUTBOUND_QUANTITY, + a.SPECIFICATION_MODEL, a.SKU_CODE, a.INVOICE_NO, a.LITER, a.DIMENSIONS, a.DECLARATION_UNIT, a.BATCH_REF_NO, a.SHEET_REF_NO, + a.ORIGIN_COUNTRY, a.BOX_PALLET_NO, a.CURRENCY, a.UNIT, a.DECLARED_QUANTITY, a.BOX_COUNT, a.PIECE_COUNT, a.OUTBOUND_QUANTITY, a.TOTAL_NET_WEIGHT, a.TOTAL_GROSS_WEIGHT, a.TOTAL_VOLUME, a.TOTAL_AREA, a.TOTAL_PRICE ,CASE WHEN (a.quantity - a.receipt_quantity) < 0 THEN 0 @@ -142,7 +145,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and a.pack_name like concat('%', #{packName}, '%') - + and a.pack_detail_id = #{packDetailId} diff --git a/mhd_wms/src/main/resources/mapper/receiptMaterialDetail/ReceiptMaterialDetailMapper.xml b/mhd_wms/src/main/resources/mapper/receiptMaterialDetail/ReceiptMaterialDetailMapper.xml index d81785a84..31f4faf9a 100644 --- a/mhd_wms/src/main/resources/mapper/receiptMaterialDetail/ReceiptMaterialDetailMapper.xml +++ b/mhd_wms/src/main/resources/mapper/receiptMaterialDetail/ReceiptMaterialDetailMapper.xml @@ -13,7 +13,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + @@ -60,7 +60,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select material_detail_id, organization_id, organization_name, top_organization_id, unique_id, receipt_order_number, material_base_info_id, material_code, material_name, bar_code, quantity, already_receipt_quantity, receipt_quantity, receipt_status, pack_id, pack_code, pack_name, pack_detail_id, unit_code, unit_name, unit_number, material_warehouse_control_id, serial_number_manage, quality_inspection_manage, quality_inspection_stage, quality_inspection_rule, quality_inspection_ratio, quality_inspection_term, quality_inspection_results, allow_overcharge, overcharge_ratio, batch_number, material_status_code, material_status_name, distribute_rule_id, distribute_rule_code, distribute_rule_name, container_id, container_code, container_type, container_type_name, level, parent_unique_id, in_unique_id, allow_modify, remark, create_time, create_by, create_by_name, update_time, update_by, update_by_name, gen_stock_shelf, del_flag from receipt_material_detail + select MATERIAL_DETAIL_ID, ORGANIZATION_ID, ORGANIZATION_NAME, TOP_ORGANIZATION_ID, UNIQUE_ID, RECEIPT_ORDER_NUMBER, MATERIAL_BASE_INFO_ID, MATERIAL_CODE, MATERIAL_NAME, BAR_CODE, QUANTITY, ALREADY_RECEIPT_QUANTITY, RECEIPT_QUANTITY, RECEIPT_STATUS, PACK_ID, PACK_CODE, PACK_NAME, PACK_DETAIL_ID, UNIT_CODE, UNIT_NAME, UNIT_NUMBER, MATERIAL_WAREHOUSE_CONTROL_ID, SERIAL_NUMBER_MANAGE, QUALITY_INSPECTION_MANAGE, QUALITY_INSPECTION_STAGE, QUALITY_INSPECTION_RULE, QUALITY_INSPECTION_RATIO, QUALITY_INSPECTION_TERM, QUALITY_INSPECTION_RESULTS, ALLOW_OVERCHARGE, OVERCHARGE_RATIO, BATCH_NUMBER, MATERIAL_STATUS_CODE, MATERIAL_STATUS_NAME, DISTRIBUTE_RULE_ID, DISTRIBUTE_RULE_CODE, DISTRIBUTE_RULE_NAME, CONTAINER_ID, CONTAINER_CODE, CONTAINER_TYPE, CONTAINER_TYPE_NAME, LEVEL, PARENT_UNIQUE_ID, IN_UNIQUE_ID, ALLOW_MODIFY, REMARK, CREATE_TIME, CREATE_BY, CREATE_BY_NAME, UPDATE_TIME, UPDATE_BY, UPDATE_BY_NAME, GEN_STOCK_SHELF, DEL_FLAG from RECEIPT_MATERIAL_DETAIL @@ -78,16 +78,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and unique_id = #{uniqueId} - and receipt_order_number = #{receiptOrderNumber} + and RECEIPT_ORDER_NUMBER = #{receiptOrderNumber} - and material_base_info_id = #{materialBaseInfoId} + and MATERIAL_BASE_INFO_ID = #{materialBaseInfoId} - and material_code = #{materialCode} + and MATERIAL_CODE = #{materialCode} - and material_name like concat('%', #{materialName}, '%') + and MATERIAL_NAME like concat('%', #{materialName}, '%') and bar_code = #{barCode} @@ -198,15 +198,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and gen_stock_shelf = #{genStockShelf} - and ( instr(material_name, #{compoundOrQuery}) > 0 + and ( instr(MATERIAL_NAME, #{compoundOrQuery}) > 0 or - instr(material_code, #{compoundOrQuery}) > 0 + instr(MATERIAL_CODE, #{compoundOrQuery}) > 0 or - instr(bar_code, #{compoundOrQuery}) > 0 + instr(BAR_CODE, #{compoundOrQuery}) > 0 ) - and receipt_order_number in + and RECEIPT_ORDER_NUMBER in #{item} diff --git a/mhd_wms/src/main/resources/mapper/stockShelfOrder/StockShelfOrderMapper.xml b/mhd_wms/src/main/resources/mapper/stockShelfOrder/StockShelfOrderMapper.xml index 15dc61202..60495de2c 100644 --- a/mhd_wms/src/main/resources/mapper/stockShelfOrder/StockShelfOrderMapper.xml +++ b/mhd_wms/src/main/resources/mapper/stockShelfOrder/StockShelfOrderMapper.xml @@ -51,7 +51,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and a.in_order_number = #{inOrderNumber} - + and a.receipt_order_number = #{receiptOrderNumber}