From ee6c444b49f62c0a26097fb5d89d8b612e17b3d8 Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Fri, 19 Jul 2024 19:01:13 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=89=8B=E6=8C=81=E4=B8=8B=E6=96=99?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pda/controller/SlitterPdaController.java | 6 ++ .../tasks/slitter/service/SlitterService.java | 7 ++ .../service/impl/SlitterServiceImpl.java | 87 +++++++++++++++++-- .../mes/service/impl/MesToLmsServiceImpl.java | 2 +- 4 files changed, 96 insertions(+), 6 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/pda/controller/SlitterPdaController.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/pda/controller/SlitterPdaController.java index 97f18e737..e35481c4c 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/pda/controller/SlitterPdaController.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/pda/controller/SlitterPdaController.java @@ -127,4 +127,10 @@ public class SlitterPdaController { public ResponseEntity unBindSlitterSubVolumeInfo(@RequestBody JSONObject param) { return new ResponseEntity<>(slitterDevices.unBindSlitterSubVolumeInfo(param), HttpStatus.OK); } + @PostMapping("/querySlitterDeviceSubVolumeInfos") + @Log("查询手持查询设备对应的子卷数据") + @SaIgnore + public ResponseEntity querySlitterDeviceSubVolumeInfos(@RequestBody JSONObject param) { + return new ResponseEntity<>(slitterDevices.querySlitterDeviceSubVolumeInfos(param), HttpStatus.OK); + } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/SlitterService.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/SlitterService.java index d505b3e8c..9eafbb90f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/SlitterService.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/SlitterService.java @@ -214,4 +214,11 @@ public interface SlitterService { * @return / */ JSONObject unBindSlitterSubVolumeInfo(JSONObject param); + + /** + * 查询手持查询设备对应的子卷数据 + * @param param / + * @return / + */ + JSONObject querySlitterDeviceSubVolumeInfos(JSONObject param); } 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 12f360eb4..a16cbf5a8 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 @@ -341,7 +341,7 @@ public class SlitterServiceImpl implements SlitterService { String qzzNo = resourceName.substring(0, 2) + resourceName.substring(resourceName.length() - 2) + demoPlan.getSplit_group() - + TaskUtils.getDateTime("MMddHHmmss") + "-" + + TaskUtils.getDateTime("yyMMddHHmmss") + "-" + demoPlan.getUp_or_down(); plans.forEach(plan -> { plan.setIs_child_tz_ok(SlitterConstant.SLITTER_YES); @@ -1150,7 +1150,7 @@ public class SlitterServiceImpl implements SlitterService { String qzzNo = resourceName.substring(0, 2) + resourceName.substring(resourceName.length() - 2) + demoPlan.getSplit_group() - + TaskUtils.getDateTime("MMddHHmmss") + "-" + + TaskUtils.getDateTime("yyMMddHHmmss") + "-" + demoPlan.getUp_or_down(); plans.forEach(p -> { p.setQzzno(qzzNo); @@ -1211,11 +1211,15 @@ public class SlitterServiceImpl implements SlitterService { String qzzNo = resourceName.substring(0, 2) + resourceName.substring(resourceName.length() - 2) + demoPlan.getSplit_group() - + TaskUtils.getDateTime("MMddHHmmss") + "-" + + TaskUtils.getDateTime("yyMMddHHmmss") + "-" + demoPlan.getUp_or_down(); plans.forEach(p -> { p.setQzzno(qzzNo); - p.setStatus("03"); + if (pointCode.getPoint_type().equals("1")) { + p.setStatus("01"); + } else { + p.setStatus("03"); + } TaskUtils.updateOptMessageBySlitterPlan(p); }); if (pointCode1.endsWith("A")) { @@ -1289,7 +1293,7 @@ public class SlitterServiceImpl implements SlitterService { String qzzNo = resourceName.substring(0, 2) + resourceName.substring(resourceName.length() - 2) + demoPlan.getSplit_group() - + TaskUtils.getDateTime("MMddHHmmss") + "-" + + TaskUtils.getDateTime("yyMMddHHmmss") + "-" + demoPlan.getUp_or_down(); if (ObjectUtil.isNotEmpty(demoPlan.getQzzno())) { qzzNo = demoPlan.getQzzno(); @@ -1329,4 +1333,77 @@ public class SlitterServiceImpl implements SlitterService { res.put("message", "子卷信息清除成功!"); return res; } + + @Override + public JSONObject querySlitterDeviceSubVolumeInfos(JSONObject param) { + // param: device + log.info("查询分切机数据的输入参数为:{}", param); + JSONObject res = new JSONObject(); + JSONObject data = new JSONObject(); + res.put("status", HttpStatus.HTTP_OK); + res.put("data", data); + // param: device_code + String device_code = param.getString("device_code"); + String msg = ""; + StIvtCutpointivt deviceCode = cutpointivtService.getPintByExtCode(device_code, false); + String upQzzno = deviceCode.getUp_qzzno(); + String downQzzno = deviceCode.getDown_qzzno(); + if (ObjectUtil.isNotEmpty(upQzzno)) { + List byQzzNo = slittingproductionplanService.getByQzzNo(upQzzno); + if (byQzzNo.size() == 0) { + msg = "上轴对应的数据错误!"; + } else { + String collect = byQzzNo + .stream() + .map(PdmBiSlittingproductionplan::getQzzno) + .collect(Collectors.joining(",")); + data.put("up", collect); + } + } else { + msg = "上轴无子卷信息!"; + } + if (ObjectUtil.isNotEmpty(downQzzno)) { + List byQzzNo = slittingproductionplanService.getByQzzNo(downQzzno); + if (byQzzNo.size() == 0) { + msg = msg + "下轴对应的数据错误!"; + } else { + String collect = byQzzNo + .stream() + .map(PdmBiSlittingproductionplan::getQzzno) + .collect(Collectors.joining(",")); + data.put("down", collect); + } + } else { + msg = msg + "下轴无子卷信息!"; + } + String area = deviceCode.getProduct_area(); + // 获取当前分切机的下一组分切计划(最多四条分切计划) + // hint: 获取到的分切可能是不同组的但具有一定时间顺序 + List timePlans = slittingproductionplanService.list( + new LambdaQueryWrapper() + .eq(PdmBiSlittingproductionplan::getResource_name, deviceCode.getExt_code()) + .eq(PdmBiSlittingproductionplan::getStatus, "03") + .eq(PdmBiSlittingproductionplan::getIs_delete, "0") + .orderByAsc(PdmBiSlittingproductionplan::getUpdate_time)); + log.info("获取下一组分切计划:{}", timePlans); + if (timePlans.size() > 0) { + // 寻找备好轴的对接点位 + List cutPointList = slitterMapper.getReadyShaftPoint(deviceCode.getExt_code()); + if (cutPointList.size() == 0) { + msg = msg + "没有套好轴的位置!"; + } else { + // 找到该分切计划的点位 + BstIvtCutpointivt newCutPoint = cutPointList.get(0); + String collect = timePlans.stream() + .map(PdmBiSlittingproductionplan::getQzzno) + .filter(ObjectUtil::isNotEmpty) + .collect(Collectors.joining(",")); + msg = msg + "下一趟子卷号[" + collect + "]准备的气胀轴位置[" + newCutPoint.getPoint_code() + "]"; + } + } else { + msg = msg + " 没有套好轴的下一趟分切计划!"; + } + data.put("msg", msg); + return res; + } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToLmsServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToLmsServiceImpl.java index bcda608c3..c55ac8ffb 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToLmsServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToLmsServiceImpl.java @@ -1012,7 +1012,7 @@ public class MesToLmsServiceImpl implements MesToLmsService { String qzzNO = resourceName.substring(0, 2) + resourceName.substring(resourceName.length() - 2) + plan_jo.getString("split_group") - + TaskUtils.getDateTime("MMddHHmmss") + "-" + + TaskUtils.getDateTime("yyMMddHHmmss") + "-" + plan_jo.getString("up_or_down"); //赋值完成后,将气胀轴编号给绑定到分切机上 if (plan_jo.getString("up_or_down").equals("1")) {