|
@@ -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")
|