|
|
|
@@ -1818,7 +1818,7 @@ public class SlitterServiceImpl implements SlitterService {
|
|
|
|
|
|
|
|
|
|
|
|
Deliverycachepointivt deliverycachepointivt = deliverycachepointivtService.getPintByCode(pointCode1, false);
|
|
|
|
Deliverycachepointivt deliverycachepointivt = deliverycachepointivtService.getPintByCode(pointCode1, false);
|
|
|
|
if (ObjectUtil.isNotEmpty(deliverycachepointivt)) {
|
|
|
|
if (ObjectUtil.isNotEmpty(deliverycachepointivt)) {
|
|
|
|
String parentContainer = "临时" + TaskUtils.getDateTime("yyMMddHHmmSSS") + "*";
|
|
|
|
String parentContainer = "临时虚拟" + TaskUtils.getDateTime("yyMMddHHmmSSS") + "*";
|
|
|
|
String qzzNo = resourceName.substring(0, 2)
|
|
|
|
String qzzNo = resourceName.substring(0, 2)
|
|
|
|
+ resourceName.substring(resourceName.length() - 2)
|
|
|
|
+ resourceName.substring(resourceName.length() - 2)
|
|
|
|
+ "A"
|
|
|
|
+ "A"
|
|
|
|
@@ -4204,15 +4204,17 @@ public class SlitterServiceImpl implements SlitterService {
|
|
|
|
private void doBindNewPlanInfo(String shelfCode, String containerName, String force, String device) {
|
|
|
|
private void doBindNewPlanInfo(String shelfCode, String containerName, String force, String device) {
|
|
|
|
Deliverycachepointivt shelf = deliverycachepointivtService.getPintByCode(shelfCode, true);
|
|
|
|
Deliverycachepointivt shelf = deliverycachepointivtService.getPintByCode(shelfCode, true);
|
|
|
|
StIvtCutpointivt cutDevice = cutpointivtService.getPintByExtCode(device, false);
|
|
|
|
StIvtCutpointivt cutDevice = cutpointivtService.getPintByExtCode(device, false);
|
|
|
|
if (ObjectUtil.isNotEmpty(shelf)) {
|
|
|
|
if (ObjectUtil.isEmpty(shelf)) {
|
|
|
|
|
|
|
|
throw new BadRequestException("不存在气胀轴库:" + shelfCode);
|
|
|
|
|
|
|
|
}
|
|
|
|
if (!"05".equals(shelf.getPoint_status())) {
|
|
|
|
if (!"05".equals(shelf.getPoint_status())) {
|
|
|
|
throw new BadRequestException("点位" + shelfCode + "已经绑定过分切计划");
|
|
|
|
throw new BadRequestException("点位" + shelfCode + "已经绑定过分切计划");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (!shelf.getProduct_area().equals(cutDevice.getProduct_area()) || !shelf.getPlan().equals(cutDevice.getPlan())) {
|
|
|
|
if (!shelf.getProduct_area().equals(cutDevice.getProduct_area()) || !shelf.getPlan().equals(cutDevice.getPlan())) {
|
|
|
|
throw new BadRequestException("分切机的区域与架子不在同一个子区域!");
|
|
|
|
throw new BadRequestException("分切机的区域与架子不在同一个子区域!");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
List<PdmBiSlittingproductionplan> qzzs = slittingproductionplanService.getByQzzNoNotDeleted(shelf.getQzzno());
|
|
|
|
List<PdmBiSlittingproductionplan> xnPlans = slittingproductionplanService.getByQzzNoNotDeleted(shelf.getQzzno());
|
|
|
|
log.info("{} 架子的气胀轴信息:{}", shelfCode, JSONObject.toJSONString(qzzs));
|
|
|
|
log.info("{} 架子的气胀轴信息:{}", shelfCode, JSONObject.toJSONString(xnPlans));
|
|
|
|
PdmBiSlittingproductionplan planOne = slittingproductionplanService.getByContainerName(containerName);
|
|
|
|
PdmBiSlittingproductionplan planOne = slittingproductionplanService.getByContainerName(containerName);
|
|
|
|
if (ObjectUtil.isEmpty(planOne)) {
|
|
|
|
if (ObjectUtil.isEmpty(planOne)) {
|
|
|
|
throw new BadRequestException("子卷:" + containerName + " 计划信息不存在!");
|
|
|
|
throw new BadRequestException("子卷:" + containerName + " 计划信息不存在!");
|
|
|
|
@@ -4239,22 +4241,27 @@ public class SlitterServiceImpl implements SlitterService {
|
|
|
|
String resourceName = planOne.getResource_name();
|
|
|
|
String resourceName = planOne.getResource_name();
|
|
|
|
LambdaQueryWrapper<PdmBiSlittingproductionplan> lam = new LambdaQueryWrapper<PdmBiSlittingproductionplan>()
|
|
|
|
LambdaQueryWrapper<PdmBiSlittingproductionplan> lam = new LambdaQueryWrapper<PdmBiSlittingproductionplan>()
|
|
|
|
.eq(PdmBiSlittingproductionplan::getResource_name, resourceName)
|
|
|
|
.eq(PdmBiSlittingproductionplan::getResource_name, resourceName)
|
|
|
|
|
|
|
|
.eq(PdmBiSlittingproductionplan::getIs_delete, "0")
|
|
|
|
|
|
|
|
.ne(PdmBiSlittingproductionplan::getStatus, "99")
|
|
|
|
.eq(PdmBiSlittingproductionplan::getSplit_group, planOne.getSplit_group())
|
|
|
|
.eq(PdmBiSlittingproductionplan::getSplit_group, planOne.getSplit_group())
|
|
|
|
.eq(PdmBiSlittingproductionplan::getUp_or_down, planOne.getUp_or_down());
|
|
|
|
.eq(PdmBiSlittingproductionplan::getUp_or_down, planOne.getUp_or_down());
|
|
|
|
if ("1".equals(planOne.getPaper_tube_or_FRP())) {
|
|
|
|
if ("1".equals(planOne.getOrder_type())) {
|
|
|
|
lam.eq(PdmBiSlittingproductionplan::getParent_container_name, planOne.getParent_container_name());
|
|
|
|
lam.eq(PdmBiSlittingproductionplan::getParent_container_name, planOne.getParent_container_name());
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
lam.eq(PdmBiSlittingproductionplan::getRestruct_container_name, planOne.getRestruct_container_name());
|
|
|
|
lam.eq(PdmBiSlittingproductionplan::getRestruct_container_name, planOne.getRestruct_container_name());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
List<PdmBiSlittingproductionplan> list = slittingproductionplanService.list(lam);
|
|
|
|
List<PdmBiSlittingproductionplan> list = slittingproductionplanService.list(lam);
|
|
|
|
|
|
|
|
if (list.size() > 2) {
|
|
|
|
|
|
|
|
throw new BadRequestException("数据异常!请联系管理员!");
|
|
|
|
|
|
|
|
}
|
|
|
|
if (!"1".equals(force)) {
|
|
|
|
if (!"1".equals(force)) {
|
|
|
|
// 如果不强制绑定,就需要判断轴的规格对不对
|
|
|
|
// 如果不强制绑定,就需要判断轴的规格对不对
|
|
|
|
if (qzzs.size() != list.size()) {
|
|
|
|
if (xnPlans.size() != list.size()) {
|
|
|
|
throw new BadRequestException("轴的卷数不匹配,不允许绑定!");
|
|
|
|
throw new BadRequestException("轴的卷数不匹配,不允许绑定!");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
for (int i = 0; i < list.size(); i++) {
|
|
|
|
for (int i = 0; i < list.size(); i++) {
|
|
|
|
PdmBiSlittingproductionplan needPlan = list.get(i);
|
|
|
|
PdmBiSlittingproductionplan needPlan = list.get(i);
|
|
|
|
for (PdmBiSlittingproductionplan qzz : qzzs) {
|
|
|
|
for (PdmBiSlittingproductionplan qzz : xnPlans) {
|
|
|
|
if (qzz.getLeft_or_right().equals(needPlan.getLeft_or_right())) {
|
|
|
|
if (qzz.getLeft_or_right().equals(needPlan.getLeft_or_right())) {
|
|
|
|
if (needPlan.getPaper_tube_or_FRP().equals("1")) {
|
|
|
|
if (needPlan.getPaper_tube_or_FRP().equals("1")) {
|
|
|
|
// 纸管
|
|
|
|
// 纸管
|
|
|
|
@@ -4270,7 +4277,6 @@ public class SlitterServiceImpl implements SlitterService {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
String qzzNo = resourceName.substring(0, 2)
|
|
|
|
String qzzNo = resourceName.substring(0, 2)
|
|
|
|
+ resourceName.substring(resourceName.length() - 2)
|
|
|
|
+ resourceName.substring(resourceName.length() - 2)
|
|
|
|
+ list.get(0).getSplit_group()
|
|
|
|
+ list.get(0).getSplit_group()
|
|
|
|
@@ -4279,12 +4285,14 @@ public class SlitterServiceImpl implements SlitterService {
|
|
|
|
// 绑定气胀轴和纸管重量
|
|
|
|
// 绑定气胀轴和纸管重量
|
|
|
|
list.forEach(plan -> {
|
|
|
|
list.forEach(plan -> {
|
|
|
|
plan.setQzzno(qzzNo);
|
|
|
|
plan.setQzzno(qzzNo);
|
|
|
|
for (int i = 0; i < qzzs.size(); i++) {
|
|
|
|
if (!"1".equals(force)) {
|
|
|
|
PdmBiSlittingproductionplan shelfQzz = qzzs.get(i);
|
|
|
|
for (int i = 0; i < xnPlans.size(); i++) {
|
|
|
|
|
|
|
|
PdmBiSlittingproductionplan shelfQzz = xnPlans.get(i);
|
|
|
|
if (plan.getLeft_or_right().equals(shelfQzz.getLeft_or_right())) {
|
|
|
|
if (plan.getLeft_or_right().equals(shelfQzz.getLeft_or_right())) {
|
|
|
|
plan.setPaper_weight(shelfQzz.getPaper_weight());
|
|
|
|
plan.setPaper_weight(shelfQzz.getPaper_weight());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
plan.setIs_call("1");
|
|
|
|
plan.setIs_call("1");
|
|
|
|
plan.setStatus("03");
|
|
|
|
plan.setStatus("03");
|
|
|
|
plan.setUpdate_time(DateUtil.now());
|
|
|
|
plan.setUpdate_time(DateUtil.now());
|
|
|
|
@@ -4292,14 +4300,16 @@ public class SlitterServiceImpl implements SlitterService {
|
|
|
|
plan.setUpdate_optname(SecurityUtils.getCurrentNickName());
|
|
|
|
plan.setUpdate_optname(SecurityUtils.getCurrentNickName());
|
|
|
|
});
|
|
|
|
});
|
|
|
|
slittingproductionplanService.updateBatchById(list);
|
|
|
|
slittingproductionplanService.updateBatchById(list);
|
|
|
|
slittingproductionplanService.deleteAll(qzzs.stream().map(PdmBiSlittingproductionplan::getWorkorder_id).collect(Collectors.toSet()));
|
|
|
|
if (xnPlans.get(0).getContainer_name().contains("虚拟")) {
|
|
|
|
|
|
|
|
slittingproductionplanService.deleteAll(xnPlans.stream().map(PdmBiSlittingproductionplan::getWorkorder_id).collect(Collectors.toSet()));
|
|
|
|
|
|
|
|
}
|
|
|
|
shelf.setQzzno(qzzNo);
|
|
|
|
shelf.setQzzno(qzzNo);
|
|
|
|
shelf.setPoint_status("03");
|
|
|
|
shelf.setPoint_status("03");
|
|
|
|
shelf.setUpdate_optid(SecurityUtils.getCurrentUserId());
|
|
|
|
shelf.setUpdate_optid(SecurityUtils.getCurrentUserId());
|
|
|
|
shelf.setUpdate_optname(SecurityUtils.getCurrentNickName());
|
|
|
|
shelf.setUpdate_optname(SecurityUtils.getCurrentNickName());
|
|
|
|
shelf.setUpdate_time(DateUtil.now());
|
|
|
|
shelf.setUpdate_time(DateUtil.now());
|
|
|
|
deliverycachepointivtService.updateById(shelf);
|
|
|
|
deliverycachepointivtService.updateById(shelf);
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public List<String> getRedisListValue(String key) {
|
|
|
|
public List<String> getRedisListValue(String key) {
|
|
|
|
|