From 7e295834a0d858a1d75bb2d22c4041ced0c3a10f Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Mon, 30 Oct 2023 14:37:16 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=89=8B=E6=8C=81=E4=B8=8B=E5=8F=91?= =?UTF-8?q?=E9=80=81=E7=A9=BA=E7=9B=98=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 | 2 ++ .../mes/service/impl/MesToWmsServiceImpl.java | 1 - .../service/impl/SendVehicleServiceImpl.java | 34 ++++++++++++++++++- .../sendvehicle/wql/PDA_SENDVEHICLE_01.wql | 2 +- .../callEmpty/YqxCallEmpVehicleTask.java | 6 ++-- .../sendEmpty/YqxSendEmpVehicleTask.java | 32 ++++++++++------- .../sendMaterial/YqxSendMaterialTask.java | 7 ++-- 7 files changed, 63 insertions(+), 21 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 18a2f80..47ba633 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 @@ -261,6 +261,8 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { JSONObject param = new JSONObject(); param.put("point_code1", point_code); param.put("qty", vehicle_num); + param.put("force", whereJson.getString("force")); + param.put("vehicle_type", whereJson.getString("vehicle_type")); // 创建任务 YqxSendEmpVehicleTask taskBean = SpringContextHolder.getBean(YqxSendEmpVehicleTask.class); taskBean.createTask(param); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToWmsServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToWmsServiceImpl.java index ec9f8d1..150da88 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToWmsServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/ext/mes/service/impl/MesToWmsServiceImpl.java @@ -130,7 +130,6 @@ public class MesToWmsServiceImpl implements MesToWmsService { workOrderTab.insert(param); } else { // 有的话就暂存起来 - param.put("plan_qty", param.getString("vehicle_qty")); param.put("workorder_id", IdUtil.getSnowflake(1,1).nextIdStr()); param.put("device_id", "1607915553220071424"); param.put("device_code", deviceCodeWX); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/impl/SendVehicleServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/impl/SendVehicleServiceImpl.java index 941719c..c4ffbd6 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/impl/SendVehicleServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/service/impl/SendVehicleServiceImpl.java @@ -15,6 +15,9 @@ import org.nl.wms.sch.tasks.RegionTypeEnum; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + @Service @RequiredArgsConstructor @Slf4j @@ -57,7 +60,11 @@ public class SendVehicleServiceImpl implements SendVehicleService { JSONObject jsonObject = WQLObject.getWQLObject("sch_base_region").query("region_id ='" + region_id + "'").uniqueResult(0); String region_code = jsonObject.getString("region_code"); if (StrUtil.equals(region_code, "DPXWQ01")) param.put("type","9"); - if (StrUtil.equals(region_code, "YQQY01")) param.put("type","5"); + if (StrUtil.equals(region_code, "YQQY01")) { + param.put("type","5"); + param.put("force","1"); + param.put("vehicle_type", convertInput(whereJson.getString("point_code"))); + } param.put("point_code",whereJson.getString("point_code")); param.put("vehicle_code",whereJson.getString("vehicle_code")); @@ -69,4 +76,29 @@ public class SendVehicleServiceImpl implements SendVehicleService { result.put("desc", "操作成功"); return result; } + + public static int convertInput(String input) { + // 定义正则表达式来匹配数字部分 + Pattern pattern = Pattern.compile("YQX01_(\\d+)KX"); + Matcher matcher = pattern.matcher(input); + // 如果匹配成功,提取数字部分并进行转换 + if (matcher.find()) { + String numberStr = matcher.group(1); + int number = Integer.parseInt(numberStr); + // 根据不同的数字值进行转换 + if (number == 1300) { + return 1; + } else if (number == 1600) { + return 2; + } else if (number == 1900) { + return 3; + } else { + // 其余情况返回-1表示错误 + return -1; + } + } else { + // 如果匹配失败,返回-1表示错误 + return -1; + } + } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/wql/PDA_SENDVEHICLE_01.wql b/lms/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/wql/PDA_SENDVEHICLE_01.wql index e80b53b..fd1648c 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/wql/PDA_SENDVEHICLE_01.wql +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/sendvehicle/wql/PDA_SENDVEHICLE_01.wql @@ -84,7 +84,7 @@ WHERE is_used = '1' AND is_delete = '0' - AND point_type = '4' + AND point_type = '2' OPTION 输入.region_id <> "" region_id = 输入.region_id diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/callEmpty/YqxCallEmpVehicleTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/callEmpty/YqxCallEmpVehicleTask.java index a6d4fb0..85cfc2a 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/callEmpty/YqxCallEmpVehicleTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/callEmpty/YqxCallEmpVehicleTask.java @@ -419,9 +419,9 @@ public class YqxCallEmpVehicleTask extends AbstractAcsTask { Integer need = 5; if (realQty >= planQty) { // 当前位置工单完成,物上工单完成 - JSONObject row = new JSONObject(); - row.put("row", workOrderObj); - workordeService.finish(row); +// JSONObject row = new JSONObject(); +// row.put("row", workOrderObj); +// workordeService.finish(row); throw new BadRequestException("该工单所需托盘已经足够"); } if (realQty + need > planQty) { diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendEmpty/YqxSendEmpVehicleTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendEmpty/YqxSendEmpVehicleTask.java index a66b9b1..b0478d9 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendEmpty/YqxSendEmpVehicleTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendEmpty/YqxSendEmpVehicleTask.java @@ -137,17 +137,25 @@ public class YqxSendEmpVehicleTask extends AbstractAcsTask { //点位基础表【SCH_BASE_Point】 WQLObject pointTab = WQLObject.getWQLObject("SCH_BASE_Point"); String point_code1 = form.getString("point_code1"); - String device_code = pointTab.query("point_code = '" + point_code1 + "'").uniqueResult(0).getString("device_code"); - JSONObject workOrderObj = workOrderTab.query("device_code = '" + device_code + "' and order_status = '3' and is_delete ='0'").uniqueResult(0); - if (ObjectUtil.isEmpty(workOrderObj)) throw new BadRequestException("该设备当前未生产或者已删除"); - - String vehicleType = workOrderObj.getString("vehicle_type"); - log.info("目前工单请求的载具类型: {}", vehicleType); - if (ObjectUtil.isEmpty(vehicleType)) throw new BadRequestException("载具类型不能为空"); - JSONObject jsonObject = pointTab.query("region_code = 'YQQY01' and point_type = '2' and can_vehicle_type = '" + vehicleType + "'").uniqueResult(0); - if (ObjectUtil.isEmpty(jsonObject)) throw new BadRequestException("找不到油漆线托盘下料起点"); - String startPointCode = jsonObject.getString("point_code"); - log.info("找到起点的位置:{}", startPointCode); + String startPointCode = ""; + String vehicleType = ""; + Integer vehicleQty = 5; + if (ObjectUtil.isEmpty(form.getString("force"))) { + String device_code = pointTab.query("point_code = '" + point_code1 + "'").uniqueResult(0).getString("device_code"); + JSONObject workOrderObj = workOrderTab.query("device_code = '" + device_code + "' and order_status = '3' and is_delete ='0'").uniqueResult(0); + if (ObjectUtil.isEmpty(workOrderObj)) throw new BadRequestException("该设备当前未生产或者已删除"); + vehicleType = workOrderObj.getString("vehicle_type"); + log.info("目前工单请求的载具类型: {}", vehicleType); + if (ObjectUtil.isEmpty(vehicleType)) throw new BadRequestException("载具类型不能为空"); + JSONObject jsonObject = pointTab.query("region_code = 'YQQY01' and point_type = '2' and can_vehicle_type = '" + vehicleType + "'").uniqueResult(0); + if (ObjectUtil.isEmpty(jsonObject)) throw new BadRequestException("找不到油漆线托盘下料起点"); + startPointCode = jsonObject.getString("point_code"); + log.info("找到起点的位置:{}", startPointCode); + } else { + startPointCode = form.getString("point_code1"); + vehicleType = form.getString("vehicle_type"); + vehicleQty = form.getInteger("qty"); + } //任务表【SCH_BASE_Task】 //判断当前点是否有未完成的任务 JSONObject taskObj = taskTab.query("is_delete='0' and point_code1 = '" + @@ -164,7 +172,7 @@ public class YqxSendEmpVehicleTask extends AbstractAcsTask { .priority("8") .vehicle_code(form.getString("vehicle_code")) .vehicle_type(vehicleType) - .vehicle_qty(5) + .vehicle_qty(vehicleQty) .handle_class(THIS_CLASS) .create_time(DateUtil.now()) .build(); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendMaterial/YqxSendMaterialTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendMaterial/YqxSendMaterialTask.java index 6998d25..43eb211 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendMaterial/YqxSendMaterialTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/sendMaterial/YqxSendMaterialTask.java @@ -176,9 +176,10 @@ public class YqxSendMaterialTask extends AbstractAcsTask { // 最后一个要把工单完成 if (workOrderObj.getInteger("real_qty") == workOrderObj.getInteger("plan_qty")) { // 当前位置工单完成,物上工单完成 - JSONObject row = new JSONObject(); - row.put("row", workOrderObj); - workordeService.finish(row); +// JSONObject row = new JSONObject(); +// row.put("row", workOrderObj); +// workordeService.finish(row); + throw new BadRequestException("该工单已送完"); }