diff --git a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/assember/expenseAccount/ExpenseAccountAssembler.java b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/assember/expenseAccount/ExpenseAccountAssembler.java index 830767dbe..02f610808 100644 --- a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/assember/expenseAccount/ExpenseAccountAssembler.java +++ b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/assember/expenseAccount/ExpenseAccountAssembler.java @@ -35,7 +35,15 @@ public class ExpenseAccountAssembler { if (ObjectUtil.isNull(loginUser)) { throw new DigitalLogisticsException(UserError.TIMEOUT); } - String userName = loginUser.getUsername(); + // 获取用户姓名,优先使用userPo中的userName,如果为空则使用realname,最后使用username + String userName = null; + if (loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null) { + userName = loginUser.getUserPo().getUserName(); + } else if (loginUser.getRealname() != null) { + userName = loginUser.getRealname(); + } else { + userName = loginUser.getUsername(); + } // 获取登录人id Long userId = loginUser.getUserid(); diff --git a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/assember/serviceItemsManage/ServiceItemsManageAssembler.java b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/assember/serviceItemsManage/ServiceItemsManageAssembler.java index d3b340d79..766d4b5ef 100644 --- a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/assember/serviceItemsManage/ServiceItemsManageAssembler.java +++ b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/assember/serviceItemsManage/ServiceItemsManageAssembler.java @@ -35,7 +35,15 @@ public class ServiceItemsManageAssembler { if (ObjectUtil.isNull(loginUser)) { throw new DigitalLogisticsException(UserError.TIMEOUT); } - String userName = loginUser.getUsername(); + // 获取用户姓名,优先使用userPo中的userName,如果为空则使用realname,最后使用username + String userName = null; + if (loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null) { + userName = loginUser.getUserPo().getUserName(); + } else if (loginUser.getRealname() != null) { + userName = loginUser.getRealname(); + } else { + userName = loginUser.getUsername(); + } // 获取登录人id Long userId = loginUser.getUserid(); diff --git a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/facade/expenseAccount/ExpenseAccountApi.java b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/facade/expenseAccount/ExpenseAccountApi.java index d1f0baa38..3679d7509 100644 --- a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/facade/expenseAccount/ExpenseAccountApi.java +++ b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/facade/expenseAccount/ExpenseAccountApi.java @@ -57,18 +57,13 @@ public class ExpenseAccountApi extends BaseController{ { logger.info("收到查询费用科目列表请求,参数:{}", expenseAccountDTO); try { - //转换实体,如果 expenseAccountDTO 为 null,创建一个新的对象 + //转换实体(查询时不需要设置创建人和更新人信息) if (expenseAccountDTO == null) { expenseAccountDTO = new ExpenseAccountDTO(); logger.info("expenseAccountDTO 为 null,创建新对象"); } - ExpenseAccountDO expenseAccountDO = expenseAccountAssembler.toDO(expenseAccountDTO); - if(StringUtils.isBlank(expenseAccountDTO.getCreateByName())){ - expenseAccountDO.setCreateByName(null); - } - if(StringUtils.isBlank(expenseAccountDTO.getUpdateByName())){ - expenseAccountDO.setUpdateByName(null); - } + ExpenseAccountDO expenseAccountDO = new ExpenseAccountDO(); + BeanUtils.copyProperties(expenseAccountDTO, expenseAccountDO); logger.info("转换后的 ExpenseAccountDO:{}", expenseAccountDO); startPage(); logger.info("分页参数已设置"); diff --git a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/facade/serviceItemsManage/ServiceItemsManageApi.java b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/facade/serviceItemsManage/ServiceItemsManageApi.java index b862613d7..60b213989 100644 --- a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/facade/serviceItemsManage/ServiceItemsManageApi.java +++ b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/interfaces/facade/serviceItemsManage/ServiceItemsManageApi.java @@ -9,6 +9,7 @@ import com.mhd.basic.interfaces.assember.serviceItemsManage.ServiceItemsManageAs import com.mhd.basic.interfaces.dto.serviceItemsManage.ServiceItemsManageDTO; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang.StringUtils; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -39,14 +40,9 @@ public class ServiceItemsManageApi extends BaseController{ @GetMapping("/list") public TableDataInfo list(ServiceItemsManageDTO serviceItemsManageDTO) { - //转换实体 - ServiceItemsManageDO serviceItemsManageDO = serviceItemsManageAssembler.toDO(serviceItemsManageDTO); - if(StringUtils.isBlank(serviceItemsManageDTO.getCreateByName())){ - serviceItemsManageDO.setCreateByName(null); - } - if(StringUtils.isBlank(serviceItemsManageDTO.getUpdateByName())){ - serviceItemsManageDO.setUpdateByName(null); - } + //转换实体(查询时不需要设置创建人和更新人信息) + ServiceItemsManageDO serviceItemsManageDO = new ServiceItemsManageDO(); + BeanUtils.copyProperties(serviceItemsManageDTO, serviceItemsManageDO); startPage(); List list = serviceItemsManageApplicationService.queryList(serviceItemsManageDO); return getDataTable(list); diff --git a/mhd-modules/mhd-system/src/main/resources/mapper/basic/ContractManageMapper.xml b/mhd-modules/mhd-system/src/main/resources/mapper/basic/ContractManageMapper.xml index e30db65c0..14d09a526 100644 --- a/mhd-modules/mhd-system/src/main/resources/mapper/basic/ContractManageMapper.xml +++ b/mhd-modules/mhd-system/src/main/resources/mapper/basic/ContractManageMapper.xml @@ -11,7 +11,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" from contract_manage where del_flag = 1 - order by create_time desc @@ -116,6 +115,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" resultType="com.mhd.basic.domain.contractManage.repository.po.ContractManagePO"> + order by create_time desc diff --git a/mhd-modules/mhd-system/src/main/resources/mapper/basic/ExpenseAccountMapper.xml b/mhd-modules/mhd-system/src/main/resources/mapper/basic/ExpenseAccountMapper.xml index 41cf1fdd0..88cf0987e 100644 --- a/mhd-modules/mhd-system/src/main/resources/mapper/basic/ExpenseAccountMapper.xml +++ b/mhd-modules/mhd-system/src/main/resources/mapper/basic/ExpenseAccountMapper.xml @@ -102,7 +102,7 @@ WHERE a.del_flag = 1 - order by a.update_time DESC + order by a.create_time DESC AND top_organization_id = #{conditionalMappingDO.topOrganizationId} + + AND organization_id = #{conditionalMappingDO.organizationId} + AND source_content like concat('%', #{conditionalMappingDO.sourceContent}, '%') diff --git a/mhd_bms/src/main/resources/mapper/MappingMethodMapper.xml b/mhd_bms/src/main/resources/mapper/MappingMethodMapper.xml index b757f6179..bd5cc8a84 100644 --- a/mhd_bms/src/main/resources/mapper/MappingMethodMapper.xml +++ b/mhd_bms/src/main/resources/mapper/MappingMethodMapper.xml @@ -14,12 +14,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" from mapping_method where del_flag = 1 + ORDER BY create_time DESC AND top_organization_id = #{mappingMethodDO.topOrganizationId} + + AND organization_id = #{mappingMethodDO.organizationId} + and method_name like concat('%', #{mappingMethodDO.methodName}, '%') diff --git a/mhd_wms/src/main/java/com/mhd/wms/application/service/pickingOrder/PickingOrderApplicationService.java b/mhd_wms/src/main/java/com/mhd/wms/application/service/pickingOrder/PickingOrderApplicationService.java index eec9a2bd5..e803c68e9 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/application/service/pickingOrder/PickingOrderApplicationService.java +++ b/mhd_wms/src/main/java/com/mhd/wms/application/service/pickingOrder/PickingOrderApplicationService.java @@ -24,6 +24,10 @@ import com.mhd.wms.domain.pickingMaterialDetail.service.PickingMaterialDetailDom import com.mhd.wms.domain.pickingOrder.repository.po.PickingOrderPO; import com.mhd.wms.domain.pickingOrder.repository.todo.PickingOrderDO; import com.mhd.wms.domain.pickingOrder.service.PickingOrderDomainService; +import com.mhd.wms.domain.outMaterialDetail.repository.facade.IOutMaterialDetailService; +import com.mhd.wms.domain.outMaterialDetail.entity.OutMaterialDetail; +import com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -53,6 +57,8 @@ public class PickingOrderApplicationService { private UserServiceFeign userServiceFeign; @Autowired private SystemServiceFeign systemServiceFeign; + @Autowired + private IOutMaterialDetailService outMaterialDetailService; /** @@ -611,10 +617,43 @@ public class PickingOrderApplicationService { PickingMaterialDetailDO returnPickingMaterialDetailDO = new PickingMaterialDetailDO(); BeanUtils.copyProperties(pickingMaterialDetailPO, returnPickingMaterialDetailDO); returnPickingMaterialDetailDO.setActualQuantity(pickingMaterialDetailDO.getActualQuantity()); - returnPickingMaterialDetailDO.setTotalArea(pickingMaterialDetailDO.getTotalArea()); - returnPickingMaterialDetailDO.setTotalVolume(pickingMaterialDetailDO.getTotalVolume()); - returnPickingMaterialDetailDO.setTotalGrossWeight(pickingMaterialDetailDO.getTotalGrossWeight()); - returnPickingMaterialDetailDO.setTotalNetWeight(pickingMaterialDetailDO.getTotalNetWeight()); + + // 毛重、净重、面积、体积:如果前端传递了值,使用前端传递的值(允许修改);否则从出库单明细中自动带出 + Long outUniqueId = pickingMaterialDetailPO.getOutUniqueId(); + OutMaterialDetail outMaterialDetail = null; + if (outUniqueId != null) { + outMaterialDetail = outMaterialDetailService.getOne(new QueryWrapper().lambda() + .eq(OutMaterialDetail::getUniqueId, outUniqueId) + .eq(OutMaterialDetail::getDelFlag, 1)); + } + + // 总面积:优先使用前端传递的值,如果为空则从出库单明细中获取 + if (pickingMaterialDetailDO.getTotalArea() != null) { + returnPickingMaterialDetailDO.setTotalArea(pickingMaterialDetailDO.getTotalArea()); + } else if (outMaterialDetail != null && outMaterialDetail.getTotalArea() != null) { + returnPickingMaterialDetailDO.setTotalArea(outMaterialDetail.getTotalArea()); + } + + // 总体积:优先使用前端传递的值,如果为空则从出库单明细中获取 + if (pickingMaterialDetailDO.getTotalVolume() != null) { + returnPickingMaterialDetailDO.setTotalVolume(pickingMaterialDetailDO.getTotalVolume()); + } else if (outMaterialDetail != null && outMaterialDetail.getTotalVolume() != null) { + returnPickingMaterialDetailDO.setTotalVolume(outMaterialDetail.getTotalVolume()); + } + + // 总毛重:优先使用前端传递的值,如果为空则从出库单明细中获取 + if (pickingMaterialDetailDO.getTotalGrossWeight() != null) { + returnPickingMaterialDetailDO.setTotalGrossWeight(pickingMaterialDetailDO.getTotalGrossWeight()); + } else if (outMaterialDetail != null && outMaterialDetail.getTotalGrossWeight() != null) { + returnPickingMaterialDetailDO.setTotalGrossWeight(outMaterialDetail.getTotalGrossWeight()); + } + + // 总净重:优先使用前端传递的值,如果为空则从出库单明细中获取 + if (pickingMaterialDetailDO.getTotalNetWeight() != null) { + returnPickingMaterialDetailDO.setTotalNetWeight(pickingMaterialDetailDO.getTotalNetWeight()); + } else if (outMaterialDetail != null && outMaterialDetail.getTotalNetWeight() != null) { + returnPickingMaterialDetailDO.setTotalNetWeight(outMaterialDetail.getTotalNetWeight()); + } //是否开启了序列号管理 if (pickingMaterialDetailPO.getSerialNumberManage() == 1){ if (CollectionUtils.isEmpty(pickingMaterialDetailDO.getMaterialDetailSerialNumberList())){ 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 9c0001448..d25ed4add 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 @@ -665,18 +665,20 @@ public class StockReceiptOrderApplicationService { List receiptMaterialDetailDOList = stockReceiptOrderDO.getMaterialDetailList(); receiptMaterialDetailDOList.forEach(receiptMaterialDetailDO -> { List receiptMaterialDetailDOChildrenList1 = receiptMaterialDetailDO.getChildren(); - ReceiptMaterialDetailDO receiptMaterialDetailDOChildren = receiptMaterialDetailDOChildrenList1.stream().filter(p -> 1 == p.getLevel()).collect(Collectors.toList()).get(0); - receiptMaterialDetailDO.setMaterialDetailId(receiptMaterialDetailDOChildren.getMaterialDetailId()); - receiptMaterialDetailDO.setReceiptQuantity(receiptMaterialDetailDOChildren.getReceiptQuantity()); - receiptMaterialDetailDO.setMaterialStatusCode(receiptMaterialDetailDOChildren.getMaterialStatusCode()); - receiptMaterialDetailDO.setBatchNumber(receiptMaterialDetailDOChildren.getBatchNumber()); - receiptMaterialDetailDO.setContainerId(receiptMaterialDetailDOChildren.getContainerId()); - receiptMaterialDetailDO.setLevel(receiptMaterialDetailDOChildren.getLevel()); - receiptMaterialDetailDO.setMaterialMoreDetailList(receiptMaterialDetailDOChildren.getMaterialMoreDetailList()); - receiptMaterialDetailDO.setMaterialDetailSerialNumberList(receiptMaterialDetailDOChildren.getMaterialDetailSerialNumberList()); - //只留二级 - List receiptMaterialDetailDOChildrenList2 = receiptMaterialDetailDOChildrenList1.stream().filter(p -> 2 == p.getLevel()).collect(Collectors.toList()); - receiptMaterialDetailDO.setChildren(receiptMaterialDetailDOChildrenList2); + if (receiptMaterialDetailDOChildrenList1 != null && receiptMaterialDetailDOChildrenList1.size() > 0) { + ReceiptMaterialDetailDO receiptMaterialDetailDOChildren = receiptMaterialDetailDOChildrenList1.stream().filter(p -> 1 == p.getLevel()).collect(Collectors.toList()).get(0); + receiptMaterialDetailDO.setMaterialDetailId(receiptMaterialDetailDOChildren.getMaterialDetailId()); + receiptMaterialDetailDO.setReceiptQuantity(receiptMaterialDetailDOChildren.getReceiptQuantity()); + receiptMaterialDetailDO.setMaterialStatusCode(receiptMaterialDetailDOChildren.getMaterialStatusCode()); + receiptMaterialDetailDO.setBatchNumber(receiptMaterialDetailDOChildren.getBatchNumber()); + receiptMaterialDetailDO.setContainerId(receiptMaterialDetailDOChildren.getContainerId()); + receiptMaterialDetailDO.setLevel(receiptMaterialDetailDOChildren.getLevel()); + receiptMaterialDetailDO.setMaterialMoreDetailList(receiptMaterialDetailDOChildren.getMaterialMoreDetailList()); + receiptMaterialDetailDO.setMaterialDetailSerialNumberList(receiptMaterialDetailDOChildren.getMaterialDetailSerialNumberList()); + //只留二级 + List receiptMaterialDetailDOChildrenList2 = receiptMaterialDetailDOChildrenList1.stream().filter(p -> 2 == p.getLevel()).collect(Collectors.toList()); + receiptMaterialDetailDO.setChildren(receiptMaterialDetailDOChildrenList2); + } }); //收货装配参数 StockReceiptOrderDO assembleStockReceiptOrderDO = assembleParamByReceipt(stockReceiptOrderDO); @@ -727,24 +729,26 @@ public class StockReceiptOrderApplicationService { List receiptMaterialDetailDOList = stockReceiptOrderDO.getMaterialDetailList(); receiptMaterialDetailDOList.forEach(receiptMaterialDetailDO -> { List receiptMaterialDetailDOChildrenList1 = receiptMaterialDetailDO.getChildren(); - ReceiptMaterialDetailDO receiptMaterialDetailDOChildren = receiptMaterialDetailDOChildrenList1.get(0); - receiptMaterialDetailDO.setMaterialDetailId(receiptMaterialDetailDOChildren.getMaterialDetailId()); - receiptMaterialDetailDO.setReceiptQuantity(receiptMaterialDetailDOChildren.getReceiptQuantity()); - receiptMaterialDetailDO.setMaterialStatusCode(receiptMaterialDetailDOChildren.getMaterialStatusCode()); - receiptMaterialDetailDO.setBatchNumber(receiptMaterialDetailDOChildren.getBatchNumber()); - receiptMaterialDetailDO.setContainerId(receiptMaterialDetailDOChildren.getContainerId()); - receiptMaterialDetailDO.setLevel(receiptMaterialDetailDOChildren.getLevel()); - receiptMaterialDetailDO.setMaterialMoreDetailList(receiptMaterialDetailDOChildren.getMaterialMoreDetailList()); - receiptMaterialDetailDO.setMaterialDetailSerialNumberList(receiptMaterialDetailDOChildren.getMaterialDetailSerialNumberList()); - //只留二级 - List receiptMaterialDetailDOChildrenList2 = new ArrayList<>(); - for (int i = 0; i < receiptMaterialDetailDOChildrenList1.size(); i++){ - if (i == 0){ - continue; + if (receiptMaterialDetailDOChildrenList1 != null && receiptMaterialDetailDOChildrenList1.size() > 0) { + ReceiptMaterialDetailDO receiptMaterialDetailDOChildren = receiptMaterialDetailDOChildrenList1.get(0); + receiptMaterialDetailDO.setMaterialDetailId(receiptMaterialDetailDOChildren.getMaterialDetailId()); + receiptMaterialDetailDO.setReceiptQuantity(receiptMaterialDetailDOChildren.getReceiptQuantity()); + receiptMaterialDetailDO.setMaterialStatusCode(receiptMaterialDetailDOChildren.getMaterialStatusCode()); + receiptMaterialDetailDO.setBatchNumber(receiptMaterialDetailDOChildren.getBatchNumber()); + receiptMaterialDetailDO.setContainerId(receiptMaterialDetailDOChildren.getContainerId()); + receiptMaterialDetailDO.setLevel(receiptMaterialDetailDOChildren.getLevel()); + receiptMaterialDetailDO.setMaterialMoreDetailList(receiptMaterialDetailDOChildren.getMaterialMoreDetailList()); + receiptMaterialDetailDO.setMaterialDetailSerialNumberList(receiptMaterialDetailDOChildren.getMaterialDetailSerialNumberList()); + //只留二级 + List receiptMaterialDetailDOChildrenList2 = new ArrayList<>(); + for (int i = 0; i < receiptMaterialDetailDOChildrenList1.size(); i++){ + if (i == 0){ + continue; + } + receiptMaterialDetailDOChildrenList2.add(receiptMaterialDetailDOChildrenList1.get(i)); } - receiptMaterialDetailDOChildrenList2.add(receiptMaterialDetailDOChildrenList1.get(i)); + receiptMaterialDetailDO.setChildren(receiptMaterialDetailDOChildrenList2); } - receiptMaterialDetailDO.setChildren(receiptMaterialDetailDOChildrenList2); }); NoReceiptOrderDO noReceiptOrderDO = assembleParamByNoOrderReceipt(stockReceiptOrderDO); return stockReceiptOrderDomainService.noOrderReceipt(noReceiptOrderDO);