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

This commit is contained in:
zhou-hongcheng
2026-04-22 14:52:39 +08:00
68 changed files with 7155 additions and 50 deletions
@@ -8,6 +8,8 @@ import com.mhd.common.core.exception.ServiceException;
import com.mhd.common.core.utils.OrderSequence;
import com.mhd.common.core.utils.bean.BeanUtils;
import com.mhd.common.security.utils.SecurityUtils;
import com.mhd.system.api.OmsServiceFeign;
import com.mhd.system.api.domain.MaterialInventoryOmsParamDO;
import com.mhd.system.api.model.LoginUser;
import com.mhd.wms.domain.copyCodeReference.entity.CopyCodeReference;
import com.mhd.wms.domain.copyCodeReference.repository.facade.ICopyCodeReferenceService;
@@ -81,6 +83,8 @@ public class HandoverTaskOrderDomainService {
private IStockOutOrderService stockOutOrderService;
@Autowired
private CopyCodeReferenceDomainService copyCodeReferenceDomainService;
@Autowired
private OmsServiceFeign omsServiceFeign;
/**
@@ -427,6 +431,12 @@ public class HandoverTaskOrderDomainService {
materialInventoryParamDO.setType("4");
materialInventoryService.kctzjl(materialInventoryParamDO,"出库",loginUser);
materialInventoryService.xgkc(materialInventoryParamDO);
MaterialInventoryOmsParamDO materialInventoryOmsParamDO = new MaterialInventoryOmsParamDO();
BeanUtils.copyProperties(materialInventoryParamDO, materialInventoryOmsParamDO);
materialInventoryOmsParamDO.setKctzType("出库");
materialInventoryOmsParamDO.setLoginUser(loginUser);
//库存推送oms
omsServiceFeign.omsEdit(materialInventoryOmsParamDO);
//库存调整记录
// InventoryAdjustmentRecord inventoryAdjustmentRecord = new InventoryAdjustmentRecord();
// inventoryAdjustmentRecord.setAdjustAction("出库");
@@ -11,6 +11,7 @@ import com.mhd.common.core.web.domain.BaseVOEntity;
import com.mhd.common.security.utils.SecurityUtils;
import com.mhd.system.api.OmsServiceFeign;
import com.mhd.system.api.domain.InMaterialDetail;
import com.mhd.system.api.domain.MaterialInventoryOmsParamDO;
import com.mhd.system.api.domain.OutMaterialDetail;
import com.mhd.system.api.domain.StockOutOrder;
import com.mhd.system.api.model.LoginUser;
@@ -466,6 +467,11 @@ public class InventoryAdjustmentRecordDomainService {
materialInventoryParamDO.setType("7");
materialInventoryService.kctzjl(materialInventoryParamDO,"库存冻结",loginUser);
materialInventoryService.xgkc(materialInventoryParamDO);
MaterialInventoryOmsParamDO materialInventoryOmsParamDO = new MaterialInventoryOmsParamDO();
BeanUtils.copyProperties(materialInventoryParamDO, materialInventoryOmsParamDO);
materialInventoryOmsParamDO.setKctzType("库存冻结");
materialInventoryOmsParamDO.setLoginUser(loginUser);
omsServiceFeign.omsEdit(materialInventoryOmsParamDO);
return true;
} catch (Exception e) {
e.printStackTrace();
@@ -584,9 +584,23 @@ public class MaterialInventoryImpl extends ServiceImpl<MaterialInventoryMapper,
inventoryAdjustmentRecord.setAdjustBeforeStatusName(materialInventory.getMaterialStatusName() == null ? "" : materialInventory.getMaterialStatusName());
inventoryAdjustmentRecord.setMaterialBaseInfoId(materialInventory.getMaterialBaseInfoId());
inventoryAdjustmentRecord.setLotNumber(materialInventoryParamDO.getLotNumber());
inventoryAdjustmentRecord.setInOrderNumber(materialInventoryParamDO.getInOrderNumber());
inventoryAdjustmentRecord.setBatchNumber(materialInventoryParamDO.getBatchNumber());
// 分配/取消分配/完成交接(出库):调整记录 LOT 以库存行 material_inventory.lot_number 为准;仅库存为空时再用入参兜底
// 其它业务(入上架、移库等):入参优先,入参无则取库存
String lotForRecord;
if ("分配库存".equals(adjustAction) || "取消分配".equals(adjustAction) || "出库".equals(adjustAction)) {
lotForRecord = StringUtils.hasText(materialInventory.getLotNumber())
? materialInventory.getLotNumber() : materialInventoryParamDO.getLotNumber();
} else {
lotForRecord = StringUtils.hasText(materialInventoryParamDO.getLotNumber())
? materialInventoryParamDO.getLotNumber() : materialInventory.getLotNumber();
}
inventoryAdjustmentRecord.setLotNumber(lotForRecord);
String inOrderForRecord = StringUtils.hasText(materialInventoryParamDO.getInOrderNumber())
? materialInventoryParamDO.getInOrderNumber() : materialInventory.getInOrderNumber();
inventoryAdjustmentRecord.setInOrderNumber(inOrderForRecord);
String batchForRecord = StringUtils.hasText(materialInventoryParamDO.getBatchNumber())
? materialInventoryParamDO.getBatchNumber() : materialInventory.getBatchNumber();
inventoryAdjustmentRecord.setBatchNumber(batchForRecord);
if (ObjectUtil.isNotNull(materialBaseInfo)) {
inventoryAdjustmentRecord.setMaterialCode(materialBaseInfo.getMaterialCode());
inventoryAdjustmentRecord.setMaterialName(materialBaseInfo.getMaterialName());
@@ -13,6 +13,8 @@ import com.mhd.common.core.utils.StringUtils;
import com.mhd.common.core.utils.bean.BeanUtils;
import com.mhd.common.core.utils.uuid.IdGenerator;
import com.mhd.common.security.utils.SecurityUtils;
import com.mhd.system.api.OmsServiceFeign;
import com.mhd.system.api.domain.MaterialInventoryOmsParamDO;
import com.mhd.system.api.model.LoginUser;
import com.mhd.wms.domain.copyCodeReference.entity.CopyCodeReference;
import com.mhd.wms.domain.copyCodeReference.repository.facade.ICopyCodeReferenceService;
@@ -84,6 +86,8 @@ public class OutMaterialDetailImpl extends ServiceImpl<OutMaterialDetailMapper,
private IMaterialBarCodeService materialBarCodeService;
@Autowired
private IMaterialInventoryService materialInventoryService;
@Autowired
private OmsServiceFeign omsServiceFeign;
/**
@@ -570,6 +574,12 @@ public class OutMaterialDetailImpl extends ServiceImpl<OutMaterialDetailMapper,
materialInventoryParamDO.setInOrderNumber(outMaterialDetail.getInOrderNumber());
materialInventoryService.kctzjl(materialInventoryParamDO,"分配库存",loginUser);
materialInventoryService.xgkc(materialInventoryParamDO);
MaterialInventoryOmsParamDO materialInventoryOmsParamDO = new MaterialInventoryOmsParamDO();
BeanUtils.copyProperties(materialInventoryParamDO, materialInventoryOmsParamDO);
materialInventoryOmsParamDO.setKctzType("分配库存");
materialInventoryOmsParamDO.setLoginUser(loginUser);
omsServiceFeign.omsEdit(materialInventoryOmsParamDO);
//materialInventoryMapper.updateById(materialInventory);
//库存调整记录
@@ -955,6 +965,11 @@ public class OutMaterialDetailImpl extends ServiceImpl<OutMaterialDetailMapper,
materialInventoryParamDO.setRelateNo(cancelRelateNo);
materialInventoryService.kctzjl(materialInventoryParamDO,"取消分配",loginUser);
materialInventoryService.xgkc(materialInventoryParamDO);
MaterialInventoryOmsParamDO materialInventoryOmsParamDO = new MaterialInventoryOmsParamDO();
BeanUtils.copyProperties(materialInventoryParamDO, materialInventoryOmsParamDO);
materialInventoryOmsParamDO.setKctzType("取消分配");
materialInventoryOmsParamDO.setLoginUser(loginUser);
omsServiceFeign.omsEdit(materialInventoryOmsParamDO);
// //更新库存数量
// //可用数量
// BigDecimal oldAllocationQuantity = materialInventoryPO.getAllocationQuantity();
@@ -1050,6 +1065,11 @@ public class OutMaterialDetailImpl extends ServiceImpl<OutMaterialDetailMapper,
materialInventoryParamDO.setRelateNo(cancelRelateNoCh);
materialInventoryService.kctzjl(materialInventoryParamDO,"取消分配",loginUser);
materialInventoryService.xgkc(materialInventoryParamDO);
MaterialInventoryOmsParamDO materialInventoryOmsParamDO = new MaterialInventoryOmsParamDO();
BeanUtils.copyProperties(materialInventoryParamDO, materialInventoryOmsParamDO);
materialInventoryOmsParamDO.setKctzType("取消分配");
materialInventoryOmsParamDO.setLoginUser(loginUser);
omsServiceFeign.omsEdit(materialInventoryOmsParamDO);
// //更新库存数量
// //可用数量
@@ -24,9 +24,9 @@ public interface StockShelfOrderMapper extends BaseMapper<StockShelfOrder>
public void updateOmsOrder(@Param("orderNumber") String orderNumber, @Param("status") Integer status, @Param("shelvesQuantity") Integer shelvesQuantity);
void updateOmsDocument(BigDecimal shelvesQuantity, BigDecimal totalNetWeight, String omsInMaterialDetail);
void updateOmsDocument(@Param("shelvesQuantity") BigDecimal shelvesQuantity, @Param("totalNetWeight") BigDecimal totalNetWeight, @Param("omsInMaterialDetail") String omsInMaterialDetail);
void updateOmsHandover(BigDecimal checkQuantity, BigDecimal totalNetWeight, String outOrderNumber, Long uniqueId);
void updateOmsHandover(@Param("checkQuantity") BigDecimal checkQuantity, @Param("totalNetWeight") BigDecimal totalNetWeight, @Param("outOrderNumber") String outOrderNumber, @Param("uniqueId") Long uniqueId);
void updateOmsDocumentLot(BigDecimal shelvesQuantity, BigDecimal totalNetWeight, String lotNumber);
void updateOmsDocumentLot(@Param("shelvesQuantity") BigDecimal shelvesQuantity, @Param("totalNetWeight") BigDecimal totalNetWeight, @Param("lotNumber") String lotNumber);
}
@@ -19,8 +19,10 @@ import com.mhd.common.core.utils.bean.BeanUtils;
import com.mhd.common.core.utils.uuid.IdGenerator;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.common.security.utils.SecurityUtils;
import com.mhd.system.api.OmsServiceFeign;
import com.mhd.system.api.SystemServiceFeign;
import com.mhd.system.api.domain.ContainerFeignPO;
import com.mhd.system.api.domain.MaterialInventoryOmsParamDO;
import com.mhd.system.api.model.LoginUser;
import com.mhd.wms.domain.containerUsageRecord.repository.facade.IContainerUsageRecordService;
import com.mhd.wms.domain.containerUsageRecord.repository.todo.ContainerUsageRecordDO;
@@ -135,6 +137,8 @@ public class StockShelfOrderDomainService {
private MaterialBaseInfoMapper materialBaseInfoMapper;
@Autowired
private ICopyCodeReferenceService copyCodeReferenceService;
@Autowired
private OmsServiceFeign omsServiceFeign;
/**
* 分页查询上架单列表
@@ -1068,6 +1072,11 @@ public class StockShelfOrderDomainService {
//库存调整记录
materialInventoryService.xgkc(inventoryParamDO);
materialInventoryService.kctzjl(inventoryParamDO,"入库", loginUser);
MaterialInventoryOmsParamDO materialInventoryOmsParamDO = new MaterialInventoryOmsParamDO();
BeanUtils.copyProperties(inventoryParamDO, materialInventoryOmsParamDO);
materialInventoryOmsParamDO.setKctzType("入库");
materialInventoryOmsParamDO.setLoginUser(loginUser);
omsServiceFeign.omsEdit(materialInventoryOmsParamDO);
//抄码商品对照数据插入
copyCodeProductComparison(materialBaseInfo,shelfMaterialDetail,inventoryParamDO);
} else if (materialInventoryPOS.size() == 1) {
@@ -1125,6 +1134,11 @@ public class StockShelfOrderDomainService {
//库存调整记录
materialInventoryService.kctzjl(inventoryParamDO, "入库", loginUser);
materialInventoryService.xgkc(inventoryParamDO);
MaterialInventoryOmsParamDO materialInventoryOmsParamDO = new MaterialInventoryOmsParamDO();
BeanUtils.copyProperties(inventoryParamDO, materialInventoryOmsParamDO);
materialInventoryOmsParamDO.setKctzType("入库");
materialInventoryOmsParamDO.setLoginUser(loginUser);
omsServiceFeign.omsEdit(materialInventoryOmsParamDO);
//抄码商品对照数据插入
copyCodeProductComparison(materialBaseInfo,shelfMaterialDetail,inventoryParamDO);
}