diff --git a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/WmsServiceFeign.java b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/WmsServiceFeign.java index 6551d451e..7f29e0f56 100644 --- a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/WmsServiceFeign.java +++ b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/WmsServiceFeign.java @@ -5,7 +5,7 @@ import com.mhd.common.core.web.domain.AjaxResult; import com.mhd.system.api.domain.MaterialBaseInfoFeign; import com.mhd.system.api.domain.MaterialInventoryDTO; import com.mhd.system.api.domain.NoticeOrderDTO; -import com.mhd.system.api.factory.RemoteTicketFeignFallbackFactory; +import com.mhd.system.api.factory.RemoteWmsFallbackFactory; import com.mhd.system.api.feign.FeignAutoConfiguration; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.*; @@ -18,7 +18,7 @@ import java.util.Map; * @description: TODO * @date 2024/5/10 8:58 **/ -@FeignClient(contextId = "remoteWmsServiceFeign", value = ServiceNameConstants.WMS_SERVICE, fallbackFactory = RemoteTicketFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class) +@FeignClient(contextId = "remoteWmsServiceFeign", value = ServiceNameConstants.WMS_SERVICE, fallbackFactory = RemoteWmsFallbackFactory.class, configuration = FeignAutoConfiguration.class) public interface WmsServiceFeign { /** diff --git a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/domain/MaterialBaseInfoFeign.java b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/domain/MaterialBaseInfoFeign.java index 6e8c58bf0..a2399b08f 100644 --- a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/domain/MaterialBaseInfoFeign.java +++ b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/domain/MaterialBaseInfoFeign.java @@ -211,5 +211,15 @@ public class MaterialBaseInfoFeign extends BaseVOEntity{ @ApiModelProperty("币制") private String currency; + + @ApiModelProperty("货主编码") + @Excel(name = "货主编码") + private String shipperCode; + + @ApiModelProperty("复合条件查询 物料名称 物料编码 物料条码") + private String compoundOrQuery; + + @ApiModelProperty("批次ID") + private Long batchId; } diff --git a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/materialBaseInfo/repository/persistence/MaterialBaseInfoImpl.java b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/materialBaseInfo/repository/persistence/MaterialBaseInfoImpl.java index c876598ab..19ff6d760 100644 --- a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/materialBaseInfo/repository/persistence/MaterialBaseInfoImpl.java +++ b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/domain/materialBaseInfo/repository/persistence/MaterialBaseInfoImpl.java @@ -1,6 +1,7 @@ package com.mhd.basic.domain.materialBaseInfo.repository.persistence; import cn.hutool.json.JSONUtil; +import com.alibaba.nacos.client.naming.utils.CollectionUtils; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.mhd.basic.domain.batch.entity.Batch; @@ -14,7 +15,7 @@ import com.mhd.common.core.exception.ServiceException; import com.mhd.common.core.web.domain.AjaxResult; import com.mhd.common.security.utils.SecurityUtils; import com.mhd.system.api.WmsServiceFeign; -import com.mhd.system.api.domain.MaterialBaseInfoFeign; +import com.mhd.system.api.domain.*; import com.mhd.system.api.model.LoginUser; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -24,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.stream.Collectors; /** * 物料基础信息Service业务层处理 @@ -87,7 +89,7 @@ public class MaterialBaseInfoImpl extends ServiceImpl copyMaterialInventoryWarningList(List sourceList) { + if (CollectionUtils.isEmpty(sourceList)) { + return null; + } + return sourceList.stream() + .map(source -> { + MaterialInventoryWarningFeign target = new MaterialInventoryWarningFeign(); + BeanUtils.copyProperties(source, target); + return target; + }) + .collect(Collectors.toList()); + } + + /** + * 深拷贝条码列表 + */ + private List copyMaterialBarCodeList(List sourceList) { + if (CollectionUtils.isEmpty(sourceList)) { + return null; + } + return sourceList.stream() + .map(source -> { + MaterialBarCodeFeign target = new MaterialBarCodeFeign(); + BeanUtils.copyProperties(source, target); + return target; + }) + .collect(Collectors.toList()); + } + + /** + * 批量转换(如果有需要) + */ + public List toFeignList(List sourceList) { + if (CollectionUtils.isEmpty(sourceList)) { + return null; + } + return sourceList.stream() + .map(this::toFeign) + .collect(Collectors.toList()); + } + /** * @description 校验唯一 * @author ZhouGY diff --git a/mhd-modules/mhd-system/src/main/resources/bootstrap.yml b/mhd-modules/mhd-system/src/main/resources/bootstrap.yml index d2ad81e8f..2afad33b3 100644 --- a/mhd-modules/mhd-system/src/main/resources/bootstrap.yml +++ b/mhd-modules/mhd-system/src/main/resources/bootstrap.yml @@ -14,20 +14,20 @@ spring: nacos: discovery: # server-addr: 127.0.0.1:8848 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 # 线上测试环境配置 容器名+端口号 - server-addr: 10.102.192.5:6848 - username: nacos - password: manhuoda@2023 +# server-addr: 10.102.192.5:6848 +# username: nacos +# password: manhuoda@2023 #线上正式环境 # server-addr: 10.102.192.105:6848 config: # server-addr: 127.0.0.1:8848 -# server-addr: 10.33.0.129:6010 + server-addr: 10.33.0.129:6010 # 线上测试环境配置 容器名+端口号 - server-addr: 10.102.192.5:6848 - username: nacos - password: manhuoda@2023 +# server-addr: 10.102.192.5:6848 +# username: nacos +# password: manhuoda@2023 #线上正式环境 # server-addr: 10.102.192.105:6848 group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置 diff --git a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java index 7b9805dbc..0c1b2d9fd 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/application/service/stockReceiptOrder/StockReceiptOrderApplicationService.java @@ -381,7 +381,7 @@ public class StockReceiptOrderApplicationService { } /** - * 扁平化明细:将第一条子项变为主行,两条子项收货数量累加到主行 ALREADY_RECEIPT_QUANTITY,主行展示第一条子项的批次属性(收货时修改的值) + * 扁平化明细:主行保留自身 receiptQuantity,alreadyReceiptQuantity 汇总主行+所有子项;保留父子结构,子项作为 children 展示 * @param receiptMaterialDetailPOList 物料明细列表(树形,level 1 父级含 children) */ private void flattenMaterialDetailList(List receiptMaterialDetailPOList) { @@ -393,43 +393,23 @@ public class StockReceiptOrderApplicationService { if (CollectionUtils.isEmpty(children)) { continue; } - // 第一条子项变为主行:用第一条子项的数据(含批次属性)覆盖主行展示 - ReceiptMaterialDetailPO firstChild = children.get(0); - if (!CollectionUtils.isEmpty(firstChild.getMaterialMoreDetailList())) { - parent.setMaterialMoreDetailList(firstChild.getMaterialMoreDetailList()); - } - parent.setBatchRefNo(firstChild.getBatchRefNo()); - parent.setSheetRefNo(firstChild.getSheetRefNo()); - parent.setBoxPalletNo(firstChild.getBoxPalletNo()); - parent.setProductionDate(firstChild.getProductionDate()); - parent.setExpiryDate(firstChild.getExpiryDate()); - parent.setInventoryDate(firstChild.getInventoryDate()); - parent.setExtAttr1(firstChild.getExtAttr1()); - parent.setExtAttr2(firstChild.getExtAttr2()); - parent.setExtAttr3(firstChild.getExtAttr3()); - parent.setExtAttr4(firstChild.getExtAttr4()); - // 两条子项收货数量累加到主行(净重、毛重、体积、面积不累加,保持主行原值) - BigDecimal receiptQuantitySum = parent.getReceiptQuantity() != null ? parent.getReceiptQuantity() : BigDecimal.ZERO; + // 主行 alreadyReceiptQuantity = 主行 receiptQuantity + 所有子项 receiptQuantity + BigDecimal alreadyReceiptQuantitySum = parent.getReceiptQuantity() != null ? parent.getReceiptQuantity() : BigDecimal.ZERO; Integer maxReceiptStatus = parent.getReceiptStatus(); for (ReceiptMaterialDetailPO child : children) { if (child.getReceiptQuantity() != null) { - receiptQuantitySum = receiptQuantitySum.add(child.getReceiptQuantity()); + alreadyReceiptQuantitySum = alreadyReceiptQuantitySum.add(child.getReceiptQuantity()); } if (child.getReceiptStatus() != null && (maxReceiptStatus == null || child.getReceiptStatus() > maxReceiptStatus)) { maxReceiptStatus = child.getReceiptStatus(); } - // 子项不需要展示计划数量字段 child.setQuantity(null); } - parent.setReceiptQuantity(receiptQuantitySum); - // 主行 ALREADY_RECEIPT_QUANTITY:DB 已存汇总时用其值,否则用子项合计 - if (parent.getAlreadyReceiptQuantity() == null || parent.getAlreadyReceiptQuantity().compareTo(receiptQuantitySum) < 0) { - parent.setAlreadyReceiptQuantity(receiptQuantitySum); - } + parent.setAlreadyReceiptQuantity(alreadyReceiptQuantitySum); if (maxReceiptStatus != null) { parent.setReceiptStatus(maxReceiptStatus); } - // 保留子项,子项展示其自己填写的值(收货数量、批次属性、净重毛重体积面积等) + // 保留父子结构,子项在 parent.children 中,前端按树形展示 } } @@ -926,6 +906,9 @@ public class StockReceiptOrderApplicationService { // 物料条码为空时取物料维护的条码信息第一行的 barCode Map materialBarCodeMap = buildMaterialBarCodeMap(materialBaseInfoIdSet); fillBarCodeFromMaterialBarCodeRecursively(materialDetailList, materialBarCodeMap); + // PDA 端与 PC 端一致:主行收货数量取第一条子项,已收货数量汇总所有子项 + flattenMaterialDetailList(materialDetailList); + clearChildQuantityRecursively(materialDetailList); } return stockReceiptOrderPO; } diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/investigationManage/repository/persistence/InvestigationManageImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/investigationManage/repository/persistence/InvestigationManageImpl.java index b4b0dbc3c..5a4dc0e31 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/investigationManage/repository/persistence/InvestigationManageImpl.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/investigationManage/repository/persistence/InvestigationManageImpl.java @@ -364,7 +364,7 @@ public class InvestigationManageImpl extends ServiceImpl outOrderIds = stockOutOrderDO.getOutOrderIds(); + if (outOrderIds == null || outOrderIds.size() == 0) { + throw new ServiceException("未选择出库单,或出库单不存在"); + } StockOutOrderDO stockOutOrderDOQuery = new StockOutOrderDO(); - stockOutOrderDOQuery.setOutOrderIds(stockOutOrderDO.getOutOrderIds()); + stockOutOrderDOQuery.setOutOrderIds(outOrderIds); stockOutOrderDOQuery.setCheckTaskDistribution(2); List stockOutOrderPOList = stockOutOrderService.queryList(stockOutOrderDOQuery); if (CollectionUtils.isEmpty(stockOutOrderPOList)) { - throw new ServiceException("复合单已下发,请重新选择"); + throw new ServiceException("出库单不存在或已下发,请重新选择"); } - //复核下发任务 + //复核下发任务(插入 delive_task,PDA 从此表查任务) genDeliveTask(stockOutOrderPOList, stockOutOrderDO); - //标记收货单任务已下发 + //标记出库单任务已下发,并同步复核人信息到 stock_out_order(与 genDeliveTask 中逻辑一致) + Long checkOperatorsBy = stockOutOrderDO.getCheckOperatorsBy(); + String checkOperatorsName = stockOutOrderDO.getCheckOperatorsName(); + if (checkOperatorsBy == null || checkOperatorsBy == 0) { + checkOperatorsBy = loginUser.getUserid(); + checkOperatorsName = (loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null && !loginUser.getUserPo().getUserName().trim().isEmpty()) + ? loginUser.getUserPo().getUserName() + : (loginUser.getRealname() != null && !loginUser.getRealname().trim().isEmpty()) ? loginUser.getRealname() : loginUser.getUsername(); + } return stockOutOrderService.update(null, new UpdateWrapper().lambda() .set(StockOutOrder::getCheckTaskDistribution, 1) .set(StockOutOrder::getCheckTaskDistributionTime, new Date()) + .set(StockOutOrder::getCheckOperatorsBy, checkOperatorsBy) + .set(StockOutOrder::getCheckOperatorsName, checkOperatorsName) .set(StockOutOrder::getUpdateBy, loginUser.getUserid()) .set(StockOutOrder::getUpdateByName, loginUser.getUsername()) .set(StockOutOrder::getUpdateTime, new Date()) - .in(StockOutOrder::getOutOrderId, stockOutOrderDO.getOutOrderIds())); + .in(StockOutOrder::getOutOrderId, outOrderIds)); } /** @@ -1436,8 +1450,15 @@ public class StockOutOrderDomainService { deliveTaskDO.setTaskDistributionId(loginUser.getUserid()); deliveTaskDO.setTaskDistributionName(userRealName); deliveTaskDO.setTaskDistributionTime(new Date()); - deliveTaskDO.setOperatorsBy(stockOutOrderDO.getCheckOperatorsBy()); - deliveTaskDO.setOperatorsName(stockOutOrderDO.getCheckOperatorsName()); + // 若未指定复核人(null 或 0),默认分配给当前操作用户;前端未选择时可能传 0,0 在 PDA 两个 tab 都查不到 + Long operatorsBy = stockOutOrderDO.getCheckOperatorsBy(); + String operatorsName = stockOutOrderDO.getCheckOperatorsName(); + if (operatorsBy == null || operatorsBy == 0) { + operatorsBy = loginUser.getUserid(); + operatorsName = (operatorsName != null && !operatorsName.isEmpty()) ? operatorsName : userRealName; + } + deliveTaskDO.setOperatorsBy(operatorsBy); + deliveTaskDO.setOperatorsName(operatorsName); deliveTaskDO.setCreateBy(loginUser.getUserid()); deliveTaskDO.setCreateByName(userRealName); deliveTaskDO.setCreateTime(new Date()); diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/materialBaseInfo/MaterialBaseInfoAssembler.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/materialBaseInfo/MaterialBaseInfoAssembler.java index 7daf41eaf..8a026d9e6 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/materialBaseInfo/MaterialBaseInfoAssembler.java +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/materialBaseInfo/MaterialBaseInfoAssembler.java @@ -1,6 +1,7 @@ package com.mhd.wms.interfaces.assember.materialBaseInfo; import cn.hutool.json.JSONUtil; +import com.mhd.system.api.domain.MaterialBaseInfoFeign; import com.mhd.wms.domain.materialBaseInfo.repository.todo.MaterialBaseInfoDO; import com.mhd.wms.interfaces.dto.materialBaseInfo.MaterialBaseInfoDTO; import org.springframework.stereotype.Component; @@ -21,4 +22,11 @@ public class MaterialBaseInfoAssembler { return JSONUtil.toBean(JSONUtil.toJsonStr(materialBaseInfoDTO), MaterialBaseInfoDO.class); } + /** + * 转换实体 + */ + public MaterialBaseInfoDO toDO2(MaterialBaseInfoFeign materialBaseInfoDTO) { + return JSONUtil.toBean(JSONUtil.toJsonStr(materialBaseInfoDTO), MaterialBaseInfoDO.class); + } + } diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/stockOutOrder/StockOutOrderDTO.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/stockOutOrder/StockOutOrderDTO.java index 76de1ab1a..ef5b8ddd7 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/stockOutOrder/StockOutOrderDTO.java +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/stockOutOrder/StockOutOrderDTO.java @@ -1,5 +1,6 @@ package com.mhd.wms.interfaces.dto.stockOutOrder; +import com.fasterxml.jackson.annotation.JsonAlias; import com.fasterxml.jackson.annotation.JsonFormat; import com.mhd.common.core.annotation.Excel; import com.mhd.wms.interfaces.dto.outMaterialDetail.OutMaterialDetailDTO; @@ -234,6 +235,7 @@ public class StockOutOrderDTO extends StockOutOrderBaseDTO { @ApiModelProperty("复核作业人用户ID") @Excel(name = "复核作业人用户ID") + @JsonAlias({"checkOperatorId", "operatorId"}) private Long checkOperatorsBy; @ApiModelProperty("复核作业人姓名") diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/materialBaseInfo/MaterialBaseInfoApi.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/materialBaseInfo/MaterialBaseInfoApi.java index 3f789154e..b6a53bd1e 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/materialBaseInfo/MaterialBaseInfoApi.java +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/materialBaseInfo/MaterialBaseInfoApi.java @@ -4,6 +4,7 @@ import com.mhd.common.core.domain.entity.R; import com.mhd.common.core.web.controller.BaseController; import com.mhd.common.core.web.domain.AjaxResult; import com.mhd.common.core.web.page.TableDataInfo; +import com.mhd.system.api.domain.MaterialBaseInfoFeign; import com.mhd.wms.application.service.materialBaseInfo.MaterialBaseInfoApplicationService; import com.mhd.wms.domain.materialBaseInfo.repository.po.MaterialBaseInfoPO; import com.mhd.wms.domain.materialBaseInfo.repository.todo.MaterialBaseInfoDO; @@ -50,10 +51,10 @@ public class MaterialBaseInfoApi extends BaseController { */ @ApiOperation("编辑物料基础信息") @PostMapping("/edit") - public AjaxResult edit(@RequestBody MaterialBaseInfoDTO materialBaseInfoDTO) + public AjaxResult edit(@RequestBody MaterialBaseInfoFeign materialBaseInfoDTO) { //转换实体 - MaterialBaseInfoDO materialBaseInfoDO = materialBaseInfoAssembler.toDO(materialBaseInfoDTO); + MaterialBaseInfoDO materialBaseInfoDO = materialBaseInfoAssembler.toDO2(materialBaseInfoDTO); if(1 == materialBaseInfoDTO.getUpdateFeign()){ return toAjax(materialBaseInfoApplicationService.update(materialBaseInfoDO)); }else { diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/stockOutOrder/StockOutOrderApi.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/stockOutOrder/StockOutOrderApi.java index 3a47e522e..7fa177656 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/stockOutOrder/StockOutOrderApi.java +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/stockOutOrder/StockOutOrderApi.java @@ -19,6 +19,7 @@ import com.mhd.wms.interfaces.assember.stockOutOrder.StockOutOrderAssembler; import com.mhd.wms.interfaces.dto.outMaterialDetail.OutMaterialDetailDTO; import com.mhd.wms.interfaces.dto.stockOutOrder.StockOutOrderDTO; import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpRequest; @@ -39,6 +40,7 @@ import java.util.List; * @author gen * @date 2024-05-28 */ +@Slf4j @RestController @RequestMapping("/stockOutOrderApi") public class StockOutOrderApi extends BaseController { @@ -281,6 +283,8 @@ public class StockOutOrderApi extends BaseController { @ApiOperation("复核下发") @PostMapping("/checkTaskDistribution") public AjaxResult checkTaskDistribution(@RequestBody StockOutOrderDTO stockOutOrderDTO) { + log.debug("复核下发入参 checkOperatorsBy={}, checkOperatorsName={}, outOrderIds={}", + stockOutOrderDTO.getCheckOperatorsBy(), stockOutOrderDTO.getCheckOperatorsName(), stockOutOrderDTO.getOutOrderIds()); StockOutOrderDO stockOutOrderDO = JSONUtil.toBean(JSONUtil.toJsonStr(stockOutOrderDTO), StockOutOrderDO.class); return AjaxResult.success(stockOutOrderApplicationService.checkTaskDistribution(stockOutOrderDO)); } diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApp/stockOutOrder/StockOutOrderAppApi.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApp/stockOutOrder/StockOutOrderAppApi.java index 64beb5a22..2589461f2 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApp/stockOutOrder/StockOutOrderAppApi.java +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApp/stockOutOrder/StockOutOrderAppApi.java @@ -5,6 +5,10 @@ import com.mhd.common.core.web.controller.BaseController; import com.mhd.common.core.web.domain.AjaxResult; import com.mhd.common.core.web.page.TableDataInfoApi; import com.mhd.common.security.utils.SecurityUtils; +import com.mhd.system.api.domain.cache.AssociationWarehouseCacheDO; +import com.mhd.system.api.domain.cache.SystemServiceCacheUtil; +import com.mhd.common.core.domain.po.UserPo; +import com.mhd.system.api.model.LoginUser; import com.mhd.wms.application.service.stockOutOrder.StockOutOrderApplicationService; import com.mhd.wms.domain.stockOutOrder.repository.po.StockOutOrderPO; import com.mhd.wms.domain.stockOutOrder.repository.todo.StockOutOrderDO; @@ -33,15 +37,25 @@ public class StockOutOrderAppApi extends BaseController { private StockOutOrderAssembler stockOutOrderAssembler; /** - * 分页查询出库单列表 + * 分页查询出库单列表(PDA复核查询) + * 查询条件:warehouse_id(用户关联仓库)、check_operators_by(当前用户)、check_status<3 等 */ @ApiOperation("查询出库单列表") @GetMapping("/list") public TableDataInfoApi list(StockOutOrderDTO stockOutOrderDTO) { - //转换实体 StockOutOrderDO stockOutOrderDO = stockOutOrderAssembler.toDO(stockOutOrderDTO); startPage(); - stockOutOrderDO.setCheckOperatorsBy(SecurityUtils.getLoginUser().getUserPo().getUserId()); + LoginUser loginUser = SecurityUtils.getLoginUser(); + UserPo userPo = loginUser.getUserPo(); + stockOutOrderDO.setCheckOperatorsBy(userPo.getUserId()); + stockOutOrderDO.setOrganizationId(userPo.getOrganizationId()); + stockOutOrderDO.setTopOrganizationId(userPo.getTopOrganizationId()); + stockOutOrderDO.setLtCheckStatus(3); + stockOutOrderDO.setDelFlag(1); + AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid()); + if (associationWarehouseCacheDO != null) { + stockOutOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId()); + } List list = stockOutOrderApplicationService.queryList(stockOutOrderDO); return getDataTableApi(list); } diff --git a/mhd_wms/src/main/resources/mapper/differentManage/DifferentManageMapper.xml b/mhd_wms/src/main/resources/mapper/differentManage/DifferentManageMapper.xml index b2b382160..284e70e39 100644 --- a/mhd_wms/src/main/resources/mapper/differentManage/DifferentManageMapper.xml +++ b/mhd_wms/src/main/resources/mapper/differentManage/DifferentManageMapper.xml @@ -116,5 +116,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" \ No newline at end of file