邱宇豪
2023-11-06 a13c11ad715c82debac45c38a92d0e0b9f4f09ef
20231106_qiuyh_发运计划
已修改1个文件
12 ■■■■■ 文件已修改
hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/pipeoutplan/service/impl/PipeOutPlanServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/pipeoutplan/service/impl/PipeOutPlanServiceImpl.java
@@ -29,6 +29,8 @@
    @Autowired
    private PipeOutPlanMapper pipeOutPlanMapper;
    public static final Object LOCK = new Object();
    @Override
    @Transactional(rollbackFor = Exception.class)
    public BasicResult insert(PipeOutPlanEntity pipeOutPlanEntity) {
@@ -60,7 +62,7 @@
    @Transactional(rollbackFor = Exception.class)
    public BasicResult update(PipeOutPlanEntity pipeOutPlanEntity) {
        PipeOutPlanEntity isExit = pipeOutPlanMapper.selectInfoByProIdAndYear(pipeOutPlanEntity.getProId(), pipeOutPlanEntity.getPlanYear());
        if (!pipeOutPlanEntity.getPlanOutId().equals(isExit.getPlanOutId()) && isExit != null){
        if (isExit != null && !pipeOutPlanEntity.getPlanOutId().equals(isExit.getPlanOutId()) ){
            return BasicResult.faild("500","同一项目、年份有且只有一个计划",null);
        }
        pipeOutPlanMapper.update(pipeOutPlanEntity);
@@ -97,9 +99,11 @@
            String planOutId = obj.getPlanOutId();
            List<PipeOutPlanMothEntity> mothListByProIdAndYear = pipeOutPlanMapper.findMothListByProIdAndYear(proId, planYear.toString(), planOutId);
            Integer completePlanProductNum = 0;
            for (PipeOutPlanMothEntity pipeOutPlanMothEntity : mothListByProIdAndYear) {
                Integer completePlanProduct = pipeOutPlanMothEntity.getCompletePlanProduct();
                completePlanProductNum+=completePlanProduct;
            synchronized (this.LOCK){
                for (PipeOutPlanMothEntity pipeOutPlanMothEntity : mothListByProIdAndYear) {
                    Integer completePlanProduct = pipeOutPlanMothEntity.getCompletePlanProduct();
                    completePlanProductNum+=completePlanProduct;
                }
            }
            obj.setMonthList(mothListByProIdAndYear);
            obj.setCompletePipeNum(completePlanProductNum);