zhanghl
2025-05-13 a9f55fb1ab24f43fee70b16e1a8c58a33fc59fa6
aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireBomStockDetailServiceImpl.java
@@ -13,6 +13,7 @@
import org.springframework.stereotype.Service;
import com.aps.core.mapper.ApsPlateStandardRequireBomStockDetailMapper;
import com.aps.core.service.IApsPlateStandardRequireBomStockDetailService;
import org.springframework.transaction.annotation.Transactional;
/**
 * ApsPlateStandardRequireBomStockDetailService业务层处理
@@ -108,17 +109,22 @@
    /**
     * 计算物料剩余库存 并保存物料剩余库存明细。
     * */
    @Transactional
    @Override
    public void saveStorageAndDetail(ApsMaterialStorageManagement itemStorage, ApsPlatePlan plan, ApsBom bomLine, String batchNum, BigDecimal deductionAmount, BigDecimal afterStockAmount,String requireId){
        /*更新物料剩余库存*/
        itemStorageMapper.updateMaterialStorageByVersion(afterStockAmount,itemStorage.getVersion());
    public void saveStorageAndDetail(ApsMaterialStorageManagement itemStorage, ApsPlatePlan plan, String bomLineId,
                                     String itemCode, String batchNum, BigDecimal deductionAmount,
                                     BigDecimal afterStockAmount,Long requireId
            ,List<ApsPlateStandardRequireBomStockDetail> stockDetailsList){
        itemStorageMapper.updateMaterialStorageByVersion(itemStorage.getId(), afterStockAmount,itemStorage.getVersion());
        /*记录扣减明细*/
        ApsPlateStandardRequireBomStockDetail bomStockDetail = ApsPlateStandardRequireBomStockDetail.builder()
                .id(IdUtil.getSnowflakeNextId())
                .requireId(requireId)
                .requireTrackId(plan.getRequireId())
                .bomLineId(bomLine.getBomLineId())
                .bomLineCode(bomLine.getItemCode())
                .bomLineId(bomLineId)
                .bomLineCode(itemCode)
                .beforeStockAmount(itemStorage.getRemainderStock())
                .deductionAmount(deductionAmount)
                .afterStockAmount(afterStockAmount)
@@ -129,8 +135,14 @@
        bomStockDetail.setCreateBy(SecurityUtils.getUsername());
        bomStockDetail.setCreateTime(DateUtils.getNowDate());
        stockDetailsList.add(bomStockDetail);
        plateBomStockDetailMapper.insertApsPlateStandardRequireBomStockDetail(bomStockDetail);
        /*更新内存中物料剩余库存*/
        /*itemStorage.setRemainderStock(afterStockAmount);
        if(null== itemStorage.getVersion()){
            itemStorage.setVersion(1);
        }else{
            itemStorage.setVersion(itemStorage.getVersion()+1);
        }*/
    }
}