diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/PdmBiSlittingproductionplan.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/PdmBiSlittingproductionplan.java index 074c4856f..d969e4f5e 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/PdmBiSlittingproductionplan.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/bi/slittingproductionplan/service/dao/PdmBiSlittingproductionplan.java @@ -150,6 +150,7 @@ public class PdmBiSlittingproductionplan implements Serializable { /** 左右(1,2) */ private String left_or_right; + /** 气涨轴规格 */ private String qzz_size; @@ -162,6 +163,9 @@ public class PdmBiSlittingproductionplan implements Serializable { /** 子卷重量 */ private String weight; + /** 接头数 */ + private String joint_type; + /** 分切重量 */ private String paper_weight; } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/dao/PdmBiSubpackagerelation.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/dao/PdmBiSubpackagerelation.java index fba4e8893..62400f9e5 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/dao/PdmBiSubpackagerelation.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pdm/subpackagerelation/dao/PdmBiSubpackagerelation.java @@ -310,6 +310,13 @@ public class PdmBiSubpackagerelation extends Model { */ private String box_group; + + /** 接头数 */ + private String joint_type; + + /** 物料类型 */ + private String material_type; + /** * 纸管规格 */ diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java index c73817030..a0a943a36 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/auto/AutoCallAirShaftTask.java @@ -122,6 +122,7 @@ public class AutoCallAirShaftTask { } } // 获取一个分切计划的Dto。如果是6寸,可以直接使用、如果是3寸,需要判断当前位置是否满足 + // todo: 需要校验分切设备是在对应的区域钟 SlitterPlanDistinctDto planDto = plans.stream() .filter(planD -> "6".equals(planD.getQzz_size()) || ("3".equals(planD.getQzz_size()) && specification.equals(planD.getQzz_generation()))) @@ -143,6 +144,7 @@ public class AutoCallAirShaftTask { String qzzSize = needPlan.getQzz_size(); // 从套轴对接位获取相同气涨轴大小 // update: 不需要(同标箔或者锂电分开) + // todo: 需要校验区域0/1 List qzzPoint = bcutpointivtService.getPointByTypeAndShaftSize("1", qzzSize, specification); if (qzzPoint.size() == 0) { // 调用ACS滚条气涨轴下来 diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java index 9a9214c2a..983070e1d 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java @@ -428,7 +428,7 @@ public class SlitterServiceImpl implements SlitterService { // 获得设备 StIvtCutpointivt device = cutpointivtService.getOne(new LambdaQueryWrapper() .eq(StIvtCutpointivt::getExt_code, demoPlan.getResource_name())); - String area = demoPlan.getContainer_name().substring(0, 2); + String area = device.getProduct_area(); // 获取当前分切机的下一组分切计划(最多四条分切计划) // hint: 获取到的分切可能是不同组的但具有一定时间顺序 List timePlans = slittingproductionplanService.list( @@ -736,7 +736,7 @@ public class SlitterServiceImpl implements SlitterService { } List collect = list.stream().map(PdmBiSlittingproductionplan::getContainer_name).collect(Collectors.toList()); param.put("container", collect); - log.info("手持调用分切机{}下卷, 参数:{}", device_code, param); + log.info("调用分切机{}下卷, 参数:{}", device_code, param); mesSlittingMachineSendMaterial(param); JSONObject result = new JSONObject(); result.put("message", "分切机" + device_code + "下卷成功!"); @@ -1025,20 +1025,23 @@ public class SlitterServiceImpl implements SlitterService { String outsideContainerName = param.getString("OutsideContainerName"); String insideContainerName = param.getString("InsideContainerName"); String carrierStatus = param.getString("CarrierStatus"); - if (SlitterConstant.SLITTER_NO.equals(carrierStatus)) { - // 不下卷需要修改。 - PdmBiSlittingproductionplan outPlan = slittingproductionplanService.getByContainerName(outsideContainerName); - PdmBiSlittingproductionplan inPlan = slittingproductionplanService.getByContainerName(insideContainerName); - outPlan.setQzzno(inPlan.getQzzno()); - outPlan.setStatus(inPlan.getStatus()); - outPlan.setIs_child_tz_ok(inPlan.getIs_child_tz_ok()); - outPlan.setIs_paper_ok(inPlan.getIs_paper_ok()); - TaskUtils.updateOptMessageBySlitterPlan(outPlan); - inPlan.setQzzno(inPlan.getQzzno() + "拼接"); - inPlan.setStatus("09"); - TaskUtils.updateOptMessageBySlitterPlan(outPlan); - List collect = Stream.of(outPlan, inPlan).collect(Collectors.toList()); - slittingproductionplanService.updateBatchById(collect); + // 接头数,内卷+1 = 外卷 carrierStatus = 0 不下任务 + // 内卷,包装关系删除。 + PdmBiSlittingproductionplan outPlan = slittingproductionplanService.getByContainerName(outsideContainerName); + PdmBiSlittingproductionplan inPlan = slittingproductionplanService.getByContainerName(insideContainerName); + inPlan.setIs_delete(SlitterConstant.SLITTER_YES); + TaskUtils.updateOptMessageBySlitterPlan(inPlan); + // 接头数,内卷+1 = 外卷 + outPlan.setJoint_type(String.valueOf(Integer.valueOf(inPlan.getJoint_type()) + 1)); + TaskUtils.updateOptMessageBySlitterPlan(outPlan); + List collect = Stream.of(outPlan, inPlan).collect(Collectors.toList()); + slittingproductionplanService.updateBatchById(collect); + if (SlitterConstant.SLITTER_YES.equals(carrierStatus)) { + List cons = Stream.of(outPlan.getQzzno()).collect(Collectors.toList()); + // 调接口创建任务 + JSONObject taskParam = new JSONObject(); + taskParam.put("container", cons); + mesSlittingMachineSendMaterial(taskParam); } return null; }