sfd
2025-05-09 e4e498bd271942d95d40809028fa8f65354c8f2c
aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireBomOrderDetailServiceImpl.java
@@ -1,7 +1,14 @@
package com.aps.core.service.impl;
import java.math.BigDecimal;
import java.util.List;
import cn.hutool.core.util.IdUtil;
import com.aps.common.core.utils.DateUtils;
import com.aps.common.security.utils.SecurityUtils;
import com.aps.core.domain.ApsPlatePlan;
import com.aps.core.domain.ApsPlateStandardRequire;
import com.aps.core.mapper.ApsPlatePlanMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.aps.core.mapper.ApsPlateStandardRequireBomOrderDetailMapper;
@@ -19,7 +26,8 @@
{
    @Autowired
    private ApsPlateStandardRequireBomOrderDetailMapper apsPlateStandardRequireBomOrderDetailMapper;
    @Autowired
    private ApsPlatePlanMapper apsPlatePlanMapper;
    /**
     * 查询ApsPlateStandardRequireBomOrderDetail
     * 
@@ -93,4 +101,28 @@
    {
        return apsPlateStandardRequireBomOrderDetailMapper.deleteApsPlateStandardRequireBomOrderDetailById(id);
    }
    @Override
    public void savePlastPlanAndBomOrderDetail(ApsPlateStandardRequire require, ApsPlatePlan platePlan, BigDecimal subtract, BigDecimal stock, BigDecimal netRequirement) {
        platePlan.setUnmatchedQuantity(subtract);
        apsPlatePlanMapper.updatePlanUnMatchQtyByVersion(platePlan);
        /* 记录工单与净需求的匹配关系*/
        ApsPlateStandardRequireBomOrderDetail bomOrderDetail = ApsPlateStandardRequireBomOrderDetail.builder()
                .id(IdUtil.getSnowflakeNextId())
                .requireId(require.getId())
                .requireTrackId(require.getRequireTrackId())
                .bomLineId(require.getBomLineId())
                .bomLineCode(require.getBomLineCode())
                .docNo(platePlan.getDocumentNumber())
                .beforeProdAmount(stock)
                .deductionAmount(netRequirement)
                .afterProdAmount(subtract)
                .batchNumber(require.getBatchNumber())
                .orgCode(require.getOrgCode())
                .delFlag("0")
                .build();
        bomOrderDetail.setCreateTime(DateUtils.getNowDate());
        bomOrderDetail.setCreateBy(SecurityUtils.getUsername());
        apsPlateStandardRequireBomOrderDetailMapper.insertApsPlateStandardRequireBomOrderDetail(bomOrderDetail);
    }
}