From 9cdd8b7d865ea7624257f5d2b9b640e36b6edfa9 Mon Sep 17 00:00:00 2001 From: zhangzq Date: Wed, 30 Apr 2025 11:21:31 +0800 Subject: [PATCH 1/4] =?UTF-8?q?add:=E8=A3=85=E7=AE=B1=E8=A1=8C=E6=9E=B6?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=87=A0=E5=AF=B8=E8=BD=B4=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sch/tasks/first_floor_area/ZxqTask.java | 7 ++++++- .../first_floor_area/auto/AutoSendZxToDjw.java | 16 +++++++--------- .../sch/tasks/slitter/util/SlitterTaskUtil.java | 11 +++++++++++ 3 files changed, 24 insertions(+), 10 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/ZxqTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/ZxqTask.java index ce24c7c32..5681d5c4f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/ZxqTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/ZxqTask.java @@ -181,6 +181,7 @@ public class ZxqTask extends AbstractAcsTask { } //获取纸管长度 Integer maxNum = SlitterTaskUtil.getPaperLengthInt(productionPlanList.get(0)); + String paperSize = SlitterTaskUtil.getPaperSize(productionPlanList.get(0)); //扩展参数 JSONObject param = new JSONObject(); @@ -209,18 +210,22 @@ public class ZxqTask extends AbstractAcsTask { param.put("containerType", bstIvtBoxinfo.getVehicle_type()); //查询是否为最后一个子卷,相同木箱号且状态为生成 List packagerelationList = subpackageRelationService.list(new LambdaQueryWrapper().eq(PdmBiSubpackagerelation::getPackage_box_sn, schBaseTask.getVehicle_code2()).eq(PdmBiSubpackagerelation::getStatus, "0")); - if (packagerelationList.size() == 1 && packagerelationList.get(0).getContainer_name().equals(schBaseTask.getVehicle_code())) { + PdmBiSubpackagerelation oneSub = packagerelationList.get(0); + String containerName = oneSub.getContainer_name(); + if (packagerelationList.size() == 1 && containerName.equals(schBaseTask.getVehicle_code())) { //最后子卷 param.put("lastOne", "1"); } else { param.put("lastOne", "0"); } + //木箱放入子卷数量 param.put("boxNo", pdmBiSubpackagerelation.getQuanlity_in_box()); //子卷号 param.put("barcode", schBaseTask.getVehicle_code()); //子卷长度 param.put("len", maxNum); + param.put("frpModel", paperSize); jo.put("request_param", param.toString()); zxDjwTask.createTask(jo); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendZxToDjw.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendZxToDjw.java index b22f801ff..d63b5be66 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendZxToDjw.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/first_floor_area/auto/AutoSendZxToDjw.java @@ -22,6 +22,7 @@ import org.nl.b_lms.sch.point.service.IbstIvtPackageinfoivtService; import org.nl.b_lms.sch.task.dao.SchBaseTask; import org.nl.b_lms.sch.task.service.IschBaseTaskService; import org.nl.b_lms.sch.tasks.first_floor_area.ZxDjwTask; +import org.nl.b_lms.sch.tasks.slitter.util.SlitterTaskUtil; import org.nl.b_lms.storage_manage.database.service.dao.BstIvtBoxinfo; import org.nl.b_lms.storage_manage.database.service.dao.mapper.BstIvtBoxinfoMapper; import org.nl.b_lms.storage_manage.ios.enums.IOSEnum; @@ -110,8 +111,8 @@ public class AutoSendZxToDjw extends Prun{ //获取木箱信息,未包装的木箱 BstIvtBoxinfo bstIvtBoxinfo = bstIvtBoxinfoMapper.selectOne(new LambdaQueryWrapper().eq(BstIvtBoxinfo::getBox_no, boxNo).ne(BstIvtBoxinfo::getIs_packing, "1")); if (bstIvtBoxinfo == null) { - log.info("请检查木箱号:" + boxNo + "是否存在或者状态为已装箱!"); - throw new BadRequestException("请检查木箱号:" + boxNo + "是否存在或者状态为已装箱!"); + log.warn("请检查木箱号:" + boxNo + "是否存在或者状态为已装箱!"); + return; } //检查木箱信息 checkBoxParams(boxNo, bstIvtBoxinfo); @@ -121,8 +122,8 @@ public class AutoSendZxToDjw extends Prun{ .eq(PdmBiSubpackagerelation::getPackage_box_sn, boxNo) .eq(PdmBiSubpackagerelation::getStatus, "0")); if (ObjectUtils.isEmpty(relationList)) { - log.info("装箱位的木箱号" + boxNo + "对应的子卷包装关系为空,请检查子卷包装关系状态是否为0!"); - throw new BadRequestException("装箱位的木箱号" + boxNo + "对应的子卷包装关系异常,请检查子卷包装关系状态是否为0!"); + log.warn("装箱位的木箱号" + boxNo + "对应的子卷包装关系为空,请检查子卷包装关系状态是否为0!"); + return; } //装箱区有子卷且没有正在进行的装箱任务 List zxqPackageinfoivtList = packageinfoivtService.checkEndPointTask(PackageInfoIvtEnum.POINT_STATUS.code("装箱区"), PackageInfoIvtEnum.IVT_STATUS.code("合格品"), "", "", ""); @@ -166,6 +167,7 @@ public class AutoSendZxToDjw extends Prun{ } else { param.put("lastOne", IOSEnum.IS_NOTANDYES.code("否")); } + String paperSize = SlitterTaskUtil.getPaperSize(productionPlanList.get(0)); //获取木箱高度等级 param.put("heightLevel", getHeightLevel(bstIvtBoxinfo)); //获取子卷长度 @@ -177,14 +179,10 @@ public class AutoSendZxToDjw extends Prun{ //木箱需放入子卷数量 param.put("boxNo", relationList.get(0).getQuanlity_in_box()); //子卷号 + param.put("frpModel", paperSize); param.put("barcode", containerName); jo.put("request_param", param.toString()); zxDjwTask.createTask(jo); - // try { - // transferBoxPackageToMes(relationList, bstIvtBoxinfo); - // } catch (Exception ex) { - // log.error("子卷装箱异常,传输子卷包装关系至MES接口捕获异常信息:" + ex); - // } } } } else { diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/util/SlitterTaskUtil.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/util/SlitterTaskUtil.java index 1bd94a182..09efb83d4 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/util/SlitterTaskUtil.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/util/SlitterTaskUtil.java @@ -359,6 +359,17 @@ public class SlitterTaskUtil { String[] split = paperStr.replaceAll("\\|[\\u4e00-\\u9fa5]+$", "").split("\\|"); return split[split.length - 1]; } + public static String getPaperSize(PdmBiSlittingproductionplan plan) { +// String s = "玻璃纤维及其制品|FRP管|6英寸|15|1700"; + String paperStr = ""; + if (plan.getPaper_tube_or_FRP().equals(SlitterConstant.SLITTER_TYPE_PAPER)) { + paperStr = plan.getPaper_tube_model(); + } else { + paperStr = plan.getFRP_model(); + } + String[] split = paperStr.replaceAll("\\|[\\u4e00-\\u9fa5]+$", "").split("\\|"); + return split[2].replaceAll("英寸",""); + } public static Integer getPaperLengthInt(PdmBiSlittingproductionplan plan) { return Integer.valueOf(getPaperLength(plan)); From e1e81b54e0975f95e678a903eb22bde44503ebe1 Mon Sep 17 00:00:00 2001 From: zhangzq Date: Wed, 30 Apr 2025 15:10:45 +0800 Subject: [PATCH 2/4] =?UTF-8?q?opt:=E9=9B=B6=E6=97=B6=E5=85=B3=E9=97=AD?= =?UTF-8?q?=E5=AD=90=E5=8D=B7=E4=B8=8B=E7=BA=BF2=E4=B8=AA=E7=82=B9?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../acs/service/impl/AcsToWmsServiceImpl.java | 56 ++++++++++--------- 1 file changed, 31 insertions(+), 25 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java index 244f554bf..84f1b02bf 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/acs/service/impl/AcsToWmsServiceImpl.java @@ -1895,34 +1895,40 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { //创建输送线四个点任务 return createTask(containerName, jo, kzjPointList.get(0).getPoint_code(), whereJson.getString("device_code")); } else { + result.put("status", HttpStatus.BAD_REQUEST.value()); + result.put("message", "空轴位缓存位无载具"); + return result; //创建输送线->满轴缓存位两个点任务 - return createTask2(containerName, jo); +// return createTask2(containerName, jo); } } else { - //如果满轴位没有可用的空点位,先创建一个桁架任务但是不下发,等这边空出来点位,判断是否有这种桁架任务然后补发; - List taskTypes = new ArrayList<>(Arrays.asList(PackageInfoIvtEnum.TASK_TYPE.code("输送线四个点任务"), PackageInfoIvtEnum.TASK_TYPE.code("输送线->满轴缓存位"), PackageInfoIvtEnum.TASK_TYPE.code("放空(空载具缓存位->输送线)"))); - List existTaskList = taskService.getExistTasks(taskTypes); - //如果有就不创建,没有就创建 - if (ObjectUtils.isEmpty(existTaskList)) { - //只确定起点NBJ1002 - JSONObject jo2 = new JSONObject(); - jo2.put("acs_task_type", PackageInfoIvtEnum.ACS_TASK_TYPE.code("桁架任务")); - jo2.put("task_type", PackageInfoIvtEnum.TASK_TYPE.code("输送线->满轴缓存位")); - jo2.put("point_code1", "NBJ1002"); - jo2.put("vehicle_code", containerName); - jo2.put("task_status", TaskStatusEnum.SURE_START.getCode()); - jo2.put("is_send", false); - mzhcwTask.createTask(jo2); - PdmProductSpecServiceImpl.doRecord(SpecEnum.XX,null,Boolean.TRUE,null,containerName); - //不确定起点的空载具缓存位->输送线任务 - createTask3(containerName); - result.put("status", HttpStatus.OK.value()); - result.put("message", "反馈成功!"); - } else { - log.info("已存在未完成的且已分配的补空载具或桁架任务,任务编号为:" + existTaskList.get(0).getTask_code() + ",请检查!"); - result.put("status", HttpStatus.BAD_REQUEST.value()); - result.put("message", "已存在未完成的且已分配的补空载具或桁架任务,任务编号为:" + existTaskList.get(0).getTask_code() + ",请检查!"); - } + result.put("status", HttpStatus.BAD_REQUEST.value()); + result.put("message", "满轴缓存位无可用位置"); + return result; +// //如果满轴位没有可用的空点位,先创建一个桁架任务但是不下发,等这边空出来点位,判断是否有这种桁架任务然后补发; +// List taskTypes = new ArrayList<>(Arrays.asList(PackageInfoIvtEnum.TASK_TYPE.code("输送线四个点任务"), PackageInfoIvtEnum.TASK_TYPE.code("输送线->满轴缓存位"), PackageInfoIvtEnum.TASK_TYPE.code("放空(空载具缓存位->输送线)"))); +// List existTaskList = taskService.getExistTasks(taskTypes); +// //如果有就不创建,没有就创建 +// if (ObjectUtils.isEmpty(existTaskList)) { +// //只确定起点NBJ1002 +// JSONObject jo2 = new JSONObject(); +// jo2.put("acs_task_type", PackageInfoIvtEnum.ACS_TASK_TYPE.code("桁架任务")); +// jo2.put("task_type", PackageInfoIvtEnum.TASK_TYPE.code("输送线->满轴缓存位")); +// jo2.put("point_code1", "NBJ1002"); +// jo2.put("vehicle_code", containerName); +// jo2.put("task_status", TaskStatusEnum.SURE_START.getCode()); +// jo2.put("is_send", false); +// mzhcwTask.createTask(jo2); +// PdmProductSpecServiceImpl.doRecord(SpecEnum.XX,null,Boolean.TRUE,null,containerName); +// //不确定起点的空载具缓存位->输送线任务 +// createTask3(containerName); +// result.put("status", HttpStatus.OK.value()); +// result.put("message", "反馈成功!"); +// } else { +// log.info("已存在未完成的且已分配的补空载具或桁架任务,任务编号为:" + existTaskList.get(0).getTask_code() + ",请检查!"); +// result.put("status", HttpStatus.BAD_REQUEST.value()); +// result.put("message", "已存在未完成的且已分配的补空载具或桁架任务,任务编号为:" + existTaskList.get(0).getTask_code() + ",请检查!"); +// } } } else { log.info("二楼到一楼成品子卷到达一楼输送线任务正在创建被锁住。"); From 7b6750423088caf1434179726ed9306e688e1381 Mon Sep 17 00:00:00 2001 From: tuqiang <437016993@qq.com> Date: Wed, 30 Apr 2025 16:04:44 +0800 Subject: [PATCH 3/4] =?UTF-8?q?rev:=E4=BC=98=E5=8C=96=E7=A9=BA=E8=BD=B4?= =?UTF-8?q?=E9=80=80=E5=9B=9E=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/dao/mapper/BstIvtShafttubeivtMapper.xml | 6 +++--- .../org/nl/b_lms/sch/tasks/slitter/ReturnShaftAgvTask.java | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml index 029697188..6b4139dc4 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml @@ -71,16 +71,16 @@ WHERE b.have_qzz = '1' AND b.point_type = '6' AND b.qzz_size = #{size} - + AND b.qzz_generation = #{qzz_generation} AND b.point_location = #{location} AND 0 = (SELECT COUNT(*) FROM sch_base_task t WHERE t.task_status '07' AND t.point_code2 = b.point_code) AND 0 = (SELECT COUNT(*) FROM bst_ivt_shafttubeivt bb WHERE bb.have_qzz ='1' AND bb.point_type = '6' - + AND bb.qzz_generation = #{qzz_generation} - AND bb.qzz_size = #{qzz_size} AND bb.point_location = #{location} AND bb.sort_seq > b.sort_seq) + AND bb.qzz_size = #{size} AND bb.point_location = #{location} AND bb.sort_seq > b.sort_seq) ORDER BY b.sort_seq ASC diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/ReturnShaftAgvTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/ReturnShaftAgvTask.java index 82685ff3e..0149596da 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/ReturnShaftAgvTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/ReturnShaftAgvTask.java @@ -110,7 +110,7 @@ public class ReturnShaftAgvTask extends AbstractAcsTask { if (ObjectUtil.isEmpty(putWaitPoint)) { throw new BadRequestException("未找到可存放气涨轴规格「" + endPoint + "」的等待点位"); } - + log.info("点位信息:{}", endPointObj); // 创建行架任务 if (ObjectUtil.isNotEmpty(endPointObj.getQzz_no1())){ @@ -126,7 +126,7 @@ public class ReturnShaftAgvTask extends AbstractAcsTask { param.put("point_code1", endPointObj.getTruss_point_code1()); param.put("point_code2", putWaitPoint.getPoint_code()); // hint: 当前分切计划的气涨轴尺寸 - param.put("qzz_size", endPointObj.getQzz_no1()); + param.put("qzz_size", size); param.put("product_area", SlitterConstant.SLITTER_TASK_AREA); param.put("task_type", SlitterEnum.TASK_TYPE.code("穿拔轴缓存<>气胀轴缓存位")); param.put("is_bushing", "0"); @@ -145,7 +145,7 @@ public class ReturnShaftAgvTask extends AbstractAcsTask { param.put("point_code1", endPointObj.getTruss_point_code2()); param.put("point_code2", putWaitPoint.getPoint_code()); // hint: 当前分切计划的气涨轴尺寸 - param.put("qzz_size", endPointObj.getQzz_no2()); + param.put("qzz_size", size); param.put("task_type", SlitterEnum.TASK_TYPE.code("穿拔轴缓存<>气胀轴缓存位")); param.put("product_area", SlitterConstant.SLITTER_TASK_AREA); param.put("is_bushing", "0"); From 22052f3650ea8af2a7f330e0d350797d3ffbf524 Mon Sep 17 00:00:00 2001 From: tuqiang <437016993@qq.com> Date: Wed, 30 Apr 2025 18:19:26 +0800 Subject: [PATCH 4/4] =?UTF-8?q?rev:=E4=BC=98=E5=8C=96=E7=A9=BA=E8=BD=B4?= =?UTF-8?q?=E9=80=80=E5=9B=9E=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/dao/mapper/BstIvtShafttubeivtMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml index 6b4139dc4..dfcd586c8 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/bst/ivt/shafttubeivt/service/dao/mapper/BstIvtShafttubeivtMapper.xml @@ -68,7 +68,7 @@ resultType="org.nl.b_lms.bst.ivt.shafttubeivt.service.dao.BstIvtShafttubeivt"> SELECT * FROM `bst_ivt_shafttubeivt` b - WHERE b.have_qzz = '1' + WHERE b.have_qzz = '0' AND b.point_type = '6' AND b.qzz_size = #{size}