Sfoglia il codice sorgente

•如果坯料需求的坯料来源是新料,并且首道工序作业的是否坯料工序=否,错误提示:坯料是新料,首道工序必须是坯料工序:{首道工序作业的工序}

DLC 5 mesi fa
parent
commit
9197690b75

+ 28 - 5
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsBlankOrderServiceImpl.java

@@ -2,7 +2,6 @@ package com.rongwei.bscommon.sys.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.collection.CollUtil;
-import cn.hutool.core.collection.ListUtil;
 import cn.hutool.core.date.*;
 import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -12,7 +11,6 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.google.gson.Gson;
 import com.rongwei.bscommon.sys.dao.*;
 import com.rongwei.bscommon.sys.service.*;
 import com.rongwei.bscommon.sys.utils.ApsUtils;
@@ -41,7 +39,6 @@ import org.springframework.transaction.annotation.Transactional;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
 import java.text.Collator;
-import java.time.LocalTime;
 import java.time.ZoneId;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -979,7 +976,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
 
             //更新生产状态为“待发布”(20)
             List<ApsBlankOrderVo> toupstatus = apsBlankOrders.stream().filter(v ->
-                            blankids.contains(v.getId()) && (StringUtils.isBlank(v.getIfcp()) || "N".equals(v.getIfcp())))
+                    blankids.contains(v.getId()) && (StringUtils.isBlank(v.getIfcp()) || "N".equals(v.getIfcp())))
                     .collect(Collectors.toList());
             updateProductStatusByOrderIds(toupstatus);
             // 自动加锁坯料计划下的工序作业
@@ -2237,6 +2234,19 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
                         break;
                     }
                 }
+            } else {
+                //•如果坯料需求的坯料来源是新料,并且首道工序作业的是否坯料工序=否,错误提示:坯料是新料,首道工序必须是坯料工序:{首道工序作业的工序}
+                //查询坯料计划的工序作业
+                List<ApsProcessOperationDo> processOperationList = apsProcessOperationService.list(new QueryWrapper<ApsProcessOperationDo>().lambda().eq(ApsProcessOperationDo::getBlankid, apsBlankOrderDo.getId()));
+                for (ApsProcessOperationDo processOperationDo : processOperationList) {
+                    //没有前道工序作业ID
+                    if (ObjectUtil.isEmpty(processOperationDo.getPreviousprocessid())) {
+                        if (processOperationDo.getIfblankprocess().equals("否")) {
+                            return R.error("坯料是新料,首道工序必须是坯料工序:" + processOperationDo.getProcess());
+                        }
+                        break;
+                    }
+                }
             }
         }
 
@@ -2710,6 +2720,19 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
                         break;
                     }
                 }
+            } else {
+                //•如果坯料需求的坯料来源是新料,并且首道工序作业的是否坯料工序=否,错误提示:坯料是新料,首道工序必须是坯料工序:{首道工序作业的工序}
+                //查询坯料计划的工序作业
+                List<ApsProcessOperationDo> processOperationList = apsProcessOperationService.list(new QueryWrapper<ApsProcessOperationDo>().lambda().eq(ApsProcessOperationDo::getBlankid, apsBlankOrderDo.getId()));
+                for (ApsProcessOperationDo processOperationDo : processOperationList) {
+                    //没有前道工序作业ID
+                    if (ObjectUtil.isEmpty(processOperationDo.getPreviousprocessid())) {
+                        if (processOperationDo.getIfblankprocess().equals("否")) {
+                            return R.error("坯料计划" + apsBlankOrderDo.getBlanknumber() + " 坯料是新料,首道工序必须是坯料工序:" + processOperationDo.getProcess());
+                        }
+                        break;
+                    }
+                }
             }
         }
 
@@ -4177,7 +4200,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
         if (ObjectUtil.isNotEmpty(needScheduleDate)) {
 
             //将实际完工时间大于明天的作业挪到实际完工时间
-            this.baseMapper.updateFinishDateAboutProcessEqu(needScheduleDate, CXCommonUtils.getCurrentUserFactoryId(null),chongpaiStartDate,chongpaiEndDate);
+            this.baseMapper.updateFinishDateAboutProcessEqu(needScheduleDate, CXCommonUtils.getCurrentUserFactoryId(null), chongpaiStartDate, chongpaiEndDate);
             //锁定所有 未锁定的 作业和作业明细
             apsProcessOperationProcessEquService.update(new LambdaUpdateWrapper<ApsProcessOperationProcessEquDo>()
                     .set(ApsProcessOperationProcessEquDo::getLockmarkdetail, "y")