|
@@ -1900,7 +1900,9 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
apsProcessOutputProductDo.setBlankid(apsBlankOrderDo.getId());
|
|
|
apsProcessOutputProductDo.setTenantid(tenantId);
|
|
|
}
|
|
|
- apsProcessOutputProductService.saveOrUpdateBatch(apsProcessOutputProductDoList);
|
|
|
+ if(ObjectUtil.isNotEmpty(apsProcessOutputProductDoList)) {
|
|
|
+ apsProcessOutputProductService.saveOrUpdateBatch(apsProcessOutputProductDoList);
|
|
|
+ }
|
|
|
|
|
|
//如果在制品不为空,并且为新增备料
|
|
|
if (ObjectUtil.isNotEmpty(req.getProgressId()) && apsBlankOrderDo.getPreparematerial().equals("是")) {
|
|
@@ -1981,6 +1983,13 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
}
|
|
|
|
|
|
public R checkBlankOrder(CheckAndSaveOrUpdateBlankReq req, int j) {
|
|
|
+
|
|
|
+ //校验坯料计划的必填项
|
|
|
+ R checkRes = checkBlankMustWrite(req);
|
|
|
+ if (!checkRes.getCode().equals("200")) {
|
|
|
+ return R.error("第" + j + "个坯料计划 " + checkRes.getMsg());
|
|
|
+ }
|
|
|
+
|
|
|
//获取校验等级
|
|
|
Integer checkLevel = req.getCheckLevel();
|
|
|
//获取坯料计划内容
|
|
@@ -2265,6 +2274,58 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
return R.ok();
|
|
|
}
|
|
|
|
|
|
+ private R checkBlankMustWrite(CheckAndSaveOrUpdateBlankReq req) {
|
|
|
+ ApsBlankOrderDo apsBlankOrderDo = req.getApsBlankOrderDo();
|
|
|
+ List<ApsProcessOutputProductDo> apsProcessOutputProductDoList = req.getApsProcessOutputProductDoList();
|
|
|
+
|
|
|
+ if (ObjectUtil.isEmpty(apsBlankOrderDo.getBlanknumber())) {
|
|
|
+ return R.error("坯料计划编号不能为空");
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isEmpty(apsBlankOrderDo.getMaterialname())) {
|
|
|
+ return R.error("物料名称不能为空");
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isEmpty(apsBlankOrderDo.getBlanktype())) {
|
|
|
+ return R.error("坯料类型不能为空");
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isEmpty(apsBlankOrderDo.getProducttype())) {
|
|
|
+ return R.error("产品类型不能为空");
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isEmpty(apsBlankOrderDo.getAlloy())) {
|
|
|
+ return R.error("合金不能为空");
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isEmpty(apsBlankOrderDo.getThickness())) {
|
|
|
+ return R.error("厚度不能为空");
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isEmpty(apsBlankOrderDo.getProwidth())) {
|
|
|
+ return R.error("宽度不能为空");
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isEmpty(apsBlankOrderDo.getSinglerollweight())) {
|
|
|
+ return R.error("单卷重不能为空");
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isEmpty(apsBlankOrderDo.getNumberunit())) {
|
|
|
+ return R.error("数量单位不能为空");
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isEmpty(apsBlankOrderDo.getRollnum())) {
|
|
|
+ return R.error("卷数不能为空");
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isEmpty(apsBlankOrderDo.getBlankappearance())) {
|
|
|
+ return R.error("坯料外观类型不能为空");
|
|
|
+ }
|
|
|
+ if (ObjectUtil.isNotEmpty(apsProcessOutputProductDoList)) {
|
|
|
+ for (ApsProcessOutputProductDo apsProcessOutputProductDo : apsProcessOutputProductDoList) {
|
|
|
+ if (ObjectUtil.isEmpty(apsProcessOutputProductDo.getProducttype())
|
|
|
+ || ObjectUtil.isEmpty(apsProcessOutputProductDo.getOutputonerollweigth())
|
|
|
+ || ObjectUtil.isEmpty(apsProcessOutputProductDo.getPlanoutputorderroll())
|
|
|
+ || ObjectUtil.isEmpty(apsProcessOutputProductDo.getHadrollcount())) {
|
|
|
+ return R.error("输出成品的必填项未填");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ return R.error("输出成品必填");
|
|
|
+ }
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
@Transactional
|
|
|
public R removeBlankOrder(ApsBlankOrderDo req) {
|
|
@@ -2576,8 +2637,8 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
// 更新数据
|
|
|
this.update(new LambdaUpdateWrapper<ApsBlankOrderDo>().eq(ApsBlankOrderDo::getId, apsBlankOrderDo.getId())
|
|
|
.set(BaseDo::getDeleted, 0)
|
|
|
- .set(ApsBlankOrderDo::getScheduledatestart,startDate)
|
|
|
- .set(ApsBlankOrderDo::getScheduledateend,startDate)
|
|
|
+ .set(ApsBlankOrderDo::getScheduledatestart, startDate)
|
|
|
+ .set(ApsBlankOrderDo::getScheduledateend, startDate)
|
|
|
.set(apsBlankOrderDo.getPromisedatestart() == null, ApsBlankOrderDo::getPromisedatestart, timeAddHour(startDate, 48))
|
|
|
.set(apsBlankOrderDo.getPromisedateend() == null, ApsBlankOrderDo::getPromisedateend, timeAddHour(endDate, 48)));
|
|
|
apsBlankOrderDo.setPromisedatestart(timeAddHour(startDate, 48));
|