Merge remote-tracking branch 'origin/dev_WMS20260401' into dev_WMS20260401

This commit is contained in:
王奎兴
2026-04-17 08:59:25 +08:00
8 changed files with 140 additions and 2 deletions
@@ -25,6 +25,7 @@ import com.mhd.system.api.domain.WarehouseFeignPO;
import com.mhd.system.api.domain.cache.AssociationWarehouseCacheDO; import com.mhd.system.api.domain.cache.AssociationWarehouseCacheDO;
import com.mhd.system.api.domain.cache.SystemServiceCacheUtil; import com.mhd.system.api.domain.cache.SystemServiceCacheUtil;
import com.mhd.system.api.model.LoginUser; import com.mhd.system.api.model.LoginUser;
import com.mhd.wms.domain.copyCodeReference.repository.po.CopyCodeReferencePO;
import com.mhd.wms.domain.inMaterialDetail.entity.InMaterialDetail; import com.mhd.wms.domain.inMaterialDetail.entity.InMaterialDetail;
import com.mhd.wms.domain.materialInventory.entity.MaterialInventory; import com.mhd.wms.domain.materialInventory.entity.MaterialInventory;
import com.mhd.wms.domain.materialInventory.repository.mapper.MaterialInventoryMapper; import com.mhd.wms.domain.materialInventory.repository.mapper.MaterialInventoryMapper;
@@ -1401,4 +1402,14 @@ public class StockOutOrderApplicationService {
public List<OutMaterialDetailPO> queryOutStockNoticePrintDetail(StockOutOrderDTO stockOutOrderDTO) { public List<OutMaterialDetailPO> queryOutStockNoticePrintDetail(StockOutOrderDTO stockOutOrderDTO) {
return stockOutOrderDomainService.queryOutStockNoticePrintDetail(stockOutOrderDTO); return stockOutOrderDomainService.queryOutStockNoticePrintDetail(stockOutOrderDTO);
} }
public List<OutMaterialDetailPO> queryOutStockNoticePrintDetailGF(StockOutOrderDTO stockOutOrderDTO) {
return stockOutOrderDomainService.queryOutStockNoticePrintDetailGF(stockOutOrderDTO);
}
public List<CopyCodeReferencePO> queryCopyCodeWeightListByBatch(String batchNumber, Long materialBaseInfoId, Long warehouseId) {
return stockOutOrderDomainService.queryCopyCodeWeightListByBatch(batchNumber,materialBaseInfoId,warehouseId);
}
} }
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.mhd.common.core.annotation.Excel; import com.mhd.common.core.annotation.Excel;
import com.mhd.wms.domain.copyCodeReference.repository.po.CopyCodeReferencePO;
import com.mhd.wms.domain.materialMoreDetail.repository.po.MaterialMoreDetailPO; import com.mhd.wms.domain.materialMoreDetail.repository.po.MaterialMoreDetailPO;
import com.mhd.wms.domain.stockOutOrder.repository.todo.StockOutOrderBaseDO; import com.mhd.wms.domain.stockOutOrder.repository.todo.StockOutOrderBaseDO;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
@@ -537,4 +538,7 @@ public class OutMaterialDetailPO extends StockOutOrderBaseDO {
@ApiModelProperty("是否抄码: 1-是 2-否") @ApiModelProperty("是否抄码: 1-是 2-否")
@Excel(name = "是否抄码: 1-是 2-否") @Excel(name = "是否抄码: 1-是 2-否")
private Integer copyCode; private Integer copyCode;
@ApiModelProperty("重量列表(抄码商品使用)")
private List<CopyCodeReferencePO> weightList;
} }
@@ -1,6 +1,7 @@
package com.mhd.wms.domain.stockOutOrder.repository.facade; package com.mhd.wms.domain.stockOutOrder.repository.facade;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.mhd.wms.domain.copyCodeReference.repository.po.CopyCodeReferencePO;
import com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO; import com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO;
import com.mhd.wms.domain.stockOutOrder.entity.StockOutOrder; import com.mhd.wms.domain.stockOutOrder.entity.StockOutOrder;
import com.mhd.wms.domain.stockOutOrder.repository.po.StockOutOrderPO; import com.mhd.wms.domain.stockOutOrder.repository.po.StockOutOrderPO;
@@ -46,4 +47,8 @@ public interface IStockOutOrderService extends IService<StockOutOrder>
List<StockOutOrderPO> queryOutStockNoticePrint(StockOutOrderDTO stockOutOrderDTO); List<StockOutOrderPO> queryOutStockNoticePrint(StockOutOrderDTO stockOutOrderDTO);
List<OutMaterialDetailPO> queryOutStockNoticePrintDetail(StockOutOrderDTO stockOutOrderDTO); List<OutMaterialDetailPO> queryOutStockNoticePrintDetail(StockOutOrderDTO stockOutOrderDTO);
List<CopyCodeReferencePO> queryCopyCodeWeightListByBatch(String batchNumber, Long materialBaseInfoId, Long warehouseId);
List<OutMaterialDetailPO> queryOutStockNoticePrintDetailGF(StockOutOrderDTO stockOutOrderDTO);
} }
@@ -1,6 +1,7 @@
package com.mhd.wms.domain.stockOutOrder.repository.mapper; package com.mhd.wms.domain.stockOutOrder.repository.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mhd.wms.domain.copyCodeReference.repository.po.CopyCodeReferencePO;
import com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO; import com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO;
import com.mhd.wms.domain.stockOutOrder.entity.StockOutOrder; import com.mhd.wms.domain.stockOutOrder.entity.StockOutOrder;
import com.mhd.wms.domain.stockOutOrder.repository.po.StockOutOrderPO; import com.mhd.wms.domain.stockOutOrder.repository.po.StockOutOrderPO;
@@ -25,4 +26,8 @@ public interface StockOutOrderMapper extends BaseMapper<StockOutOrder>
List<StockOutOrderPO> queryOutStockNoticePrint(StockOutOrderDTO stockOutOrderDTO); List<StockOutOrderPO> queryOutStockNoticePrint(StockOutOrderDTO stockOutOrderDTO);
List<OutMaterialDetailPO> queryOutStockNoticePrintDetail(StockOutOrderDTO stockOutOrderDTO); List<OutMaterialDetailPO> queryOutStockNoticePrintDetail(StockOutOrderDTO stockOutOrderDTO);
List<CopyCodeReferencePO> queryCopyCodeWeightListByBatch(String batchNumber, Long materialBaseInfoId, Long warehouseId);
List<OutMaterialDetailPO> queryOutStockNoticePrintDetailGF(StockOutOrderDTO stockOutOrderDTO);
} }
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mhd.common.security.utils.SecurityUtils; import com.mhd.common.security.utils.SecurityUtils;
import com.mhd.system.api.model.LoginUser; import com.mhd.system.api.model.LoginUser;
import com.mhd.wms.domain.copyCodeReference.repository.po.CopyCodeReferencePO;
import com.mhd.wms.domain.deliveTask.repository.facade.IDeliveTaskTypeService; import com.mhd.wms.domain.deliveTask.repository.facade.IDeliveTaskTypeService;
import com.mhd.wms.domain.deliveTask.repository.todo.DeliveTaskDO; import com.mhd.wms.domain.deliveTask.repository.todo.DeliveTaskDO;
import com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO; import com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO;
@@ -124,5 +125,18 @@ public class StockOutOrderImpl extends ServiceImpl<StockOutOrderMapper, StockOut
return stockOutOrderMapper.queryOutStockNoticePrintDetail(stockOutOrderDTO); return stockOutOrderMapper.queryOutStockNoticePrintDetail(stockOutOrderDTO);
} }
@Override
public List<OutMaterialDetailPO> queryOutStockNoticePrintDetailGF(StockOutOrderDTO stockOutOrderDTO) {
return stockOutOrderMapper.queryOutStockNoticePrintDetailGF(stockOutOrderDTO);
}
@Override
public List<CopyCodeReferencePO> queryCopyCodeWeightListByBatch(String batchNumber, Long materialBaseInfoId, Long warehouseId) {
return stockOutOrderMapper.queryCopyCodeWeightListByBatch(batchNumber,materialBaseInfoId,warehouseId);
}
} }
@@ -17,6 +17,7 @@ import com.mhd.system.api.SystemServiceFeign;
import com.mhd.system.api.domain.BatchDetailFeignPO; import com.mhd.system.api.domain.BatchDetailFeignPO;
import com.mhd.system.api.domain.PackDetailFeignPO; import com.mhd.system.api.domain.PackDetailFeignPO;
import com.mhd.system.api.model.LoginUser; import com.mhd.system.api.model.LoginUser;
import com.mhd.wms.domain.copyCodeReference.repository.po.CopyCodeReferencePO;
import com.mhd.wms.domain.deliveTask.repository.facade.IDeliveTaskService; import com.mhd.wms.domain.deliveTask.repository.facade.IDeliveTaskService;
import com.mhd.wms.domain.deliveTask.repository.todo.DeliveTaskDO; import com.mhd.wms.domain.deliveTask.repository.todo.DeliveTaskDO;
import com.mhd.wms.domain.handoverTaskOrder.repository.facade.IHandoverTaskOrderService; import com.mhd.wms.domain.handoverTaskOrder.repository.facade.IHandoverTaskOrderService;
@@ -1674,4 +1675,12 @@ public class StockOutOrderDomainService {
public List<OutMaterialDetailPO> queryOutStockNoticePrintDetail(StockOutOrderDTO stockOutOrderDTO) { public List<OutMaterialDetailPO> queryOutStockNoticePrintDetail(StockOutOrderDTO stockOutOrderDTO) {
return stockOutOrderService.queryOutStockNoticePrintDetail(stockOutOrderDTO); return stockOutOrderService.queryOutStockNoticePrintDetail(stockOutOrderDTO);
} }
public List<CopyCodeReferencePO> queryCopyCodeWeightListByBatch(String batchNumber, Long materialBaseInfoId, Long warehouseId) {
return stockOutOrderService.queryCopyCodeWeightListByBatch(batchNumber,materialBaseInfoId,warehouseId);
}
public List<OutMaterialDetailPO> queryOutStockNoticePrintDetailGF(StockOutOrderDTO stockOutOrderDTO) {
return stockOutOrderService.queryOutStockNoticePrintDetailGF(stockOutOrderDTO);
}
} }
@@ -7,9 +7,12 @@ import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.common.core.web.page.TableDataInfo; import com.mhd.common.core.web.page.TableDataInfo;
import com.mhd.wms.application.service.handoverTaskOrder.HandoverTaskOrderApplicationService; import com.mhd.wms.application.service.handoverTaskOrder.HandoverTaskOrderApplicationService;
import com.mhd.wms.application.service.stockOutOrder.StockOutOrderApplicationService; import com.mhd.wms.application.service.stockOutOrder.StockOutOrderApplicationService;
import com.mhd.wms.domain.copyCodeReference.entity.CopyCodeReference;
import com.mhd.wms.domain.copyCodeReference.repository.po.CopyCodeReferencePO;
import com.mhd.wms.domain.handoverTaskOrder.entity.HandoverTaskOrder; import com.mhd.wms.domain.handoverTaskOrder.entity.HandoverTaskOrder;
import com.mhd.wms.domain.handoverTaskOrder.repository.facade.IHandoverTaskOrderService; import com.mhd.wms.domain.handoverTaskOrder.repository.facade.IHandoverTaskOrderService;
import com.mhd.wms.domain.inMaterialDetail.entity.InMaterialDetail; import com.mhd.wms.domain.inMaterialDetail.entity.InMaterialDetail;
import com.mhd.wms.domain.materialInventory.repository.po.MaterialInventoryPO;
import com.mhd.wms.domain.outMaterialDetail.entity.OutMaterialDetail; import com.mhd.wms.domain.outMaterialDetail.entity.OutMaterialDetail;
import com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO; import com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO;
import com.mhd.wms.domain.outMaterialDetail.repository.todo.OutMaterialDetailDO; import com.mhd.wms.domain.outMaterialDetail.repository.todo.OutMaterialDetailDO;
@@ -424,4 +427,25 @@ public class StockOutOrderApi extends BaseController {
} }
@ApiOperation("出库单提货单打印")
@PostMapping("/queryOutStockNoticePrintGF")
public AjaxResult queryOutStockNoticePrintGF(@RequestBody StockOutOrderDTO stockOutOrderDTO) {
List<StockOutOrderPO> headerList = stockOutOrderApplicationService.queryOutStockNoticePrint(stockOutOrderDTO);
List<OutMaterialDetailPO> detailList = stockOutOrderApplicationService.queryOutStockNoticePrintDetailGF(stockOutOrderDTO);
for (OutMaterialDetailPO detail : detailList) {
if (detail.getCopyCode() != null && detail.getCopyCode() == 1) {
List<CopyCodeReferencePO> weightList = stockOutOrderApplicationService.queryCopyCodeWeightListByBatch(
detail.getBatchNumber(), detail.getMaterialBaseInfoId(), detail.getWarehouseId());
detail.setWeightList(weightList);
}
}
Map<String, Object> result = new HashMap<>();
if (!headerList.isEmpty()) {
result.put("header", headerList.get(0));
}
result.put("detailList", detailList);
return AjaxResult.success(result);
}
} }
@@ -334,6 +334,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SELECT SELECT
a.notice_number, a.notice_number,
a.out_order_number, a.out_order_number,
a.supply_chain_number,
a.shipper_name, a.shipper_name,
a.expect_time, a.expect_time,
a.document_creator_name, a.document_creator_name,
@@ -350,10 +351,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SELECT SELECT
b.lot_no, b.lot_no,
b.warehouse_code, b.warehouse_code,
b.warehouse_name,
b.material_name, b.material_name,
b.storage_location_name, b.storage_location_name,
b.storage_location_code,
b.piece_count, b.piece_count,
b.unit_code b.unit_name
FROM out_material_detail b FROM out_material_detail b
WHERE b.del_flag = 1 WHERE b.del_flag = 1
AND b.out_order_number = (SELECT out_order_number FROM stock_out_order WHERE out_order_id = #{outOrderId} AND del_flag = 1) AND b.out_order_number = (SELECT out_order_number FROM stock_out_order WHERE out_order_id = #{outOrderId} AND del_flag = 1)
@@ -364,10 +367,73 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<resultMap type="com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO" id="OutMaterialDetailPOResult"> <resultMap type="com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO" id="OutMaterialDetailPOResult">
<result property="lotNo" column="lot_no"/> <result property="lotNo" column="lot_no"/>
<result property="warehouseCode" column="warehouse_code"/> <result property="warehouseCode" column="warehouse_code"/>
<result property="warehouseName" column="warehouse_name"/>
<result property="materialName" column="material_name"/> <result property="materialName" column="material_name"/>
<result property="storageLocationName" column="storage_location_name"/> <result property="storageLocationName" column="storage_location_name"/>
<result property="storageLocationCode" column="storage_location_code"/>
<result property="pieceCount" column="piece_count"/> <result property="pieceCount" column="piece_count"/>
<result property="unitCode" column="unit_code"/> <result property="unitName" column="unit_name"/>
<result property="batchNumber" column="batch_number"/>
<result property="materialCode" column="material_code"/>
<result property="specificationModel" column="specification_model"/>
<result property="quantity" column="quantity"/>
<result property="warehouseId" column="warehouse_id"/>
<result property="materialBaseInfoId" column="material_base_info_id"/>
<result property="copyCode" column="copy_code"/>
<result property="outboundQuantity" column="outbound_quantity"/>
<result property="packName" column="pack_name"/>
</resultMap> </resultMap>
<resultMap type="com.mhd.wms.domain.copyCodeReference.repository.po.CopyCodeReferencePO" id="CopyCodeWeightResult">
<result property="netWeight" column="net_weight"/>
<result property="grossWeight" column="gross_weight"/>
<result property="inventoryQuantity" column="inventory_quantity"/>
<result property="lotNumber" column="lot_number"/>
<result property="boxPalletNo" column="box_pallet_no"/>
</resultMap>
<select id="queryCopyCodeWeightListByBatch" resultMap="CopyCodeWeightResult">
SELECT
ccr.net_weight,
ccr.gross_weight,
ccr.inventory_quantity,
ccr.lot_number,
ccr.box_pallet_no
FROM copy_code_reference ccr
WHERE ccr.del_flag = 1
AND ccr.batch_number = #{batchNumber}
AND ccr.material_base_info_id = #{materialBaseInfoId}
AND ccr.warehouse_id = #{warehouseId}
</select>
<select id="queryOutStockNoticePrintDetailGF" resultMap="OutMaterialDetailPOResult">
SELECT
b.batch_number,
b.material_code,
b.material_name,
b.specification_model,
b.quantity,
b.unit_name,
b.pack_name,
b.warehouse_code,
b.warehouse_id,
b.storage_location_name,
b.lot_no,
b.piece_count,
b.material_base_info_id,
b.outbound_quantity,
mbi.copy_code
FROM out_material_detail b
LEFT JOIN material_base_info mbi ON b.material_base_info_id = mbi.material_base_info_id
WHERE b.del_flag = 1
AND b.out_order_number = (SELECT out_order_number FROM stock_out_order WHERE out_order_id = #{outOrderId} AND del_flag = 1)
ORDER BY b.material_detail_id
</select>
</mapper> </mapper>