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 77985a6..546ee08 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 @@ -138,6 +138,17 @@ public class SlitterTaskUtil { System.out.println(getComposePaperTubeInformation("玻璃纤维及其制品|FRP管|6英寸|15|1100", "1")); } + /** + * 判断字符串是否为数字(整数、小数、负数) + */ + public static boolean isNumeric(String str) { + if (str == null || str.isEmpty() || str.trim().isEmpty()) { + return false; + } + String s = str.trim(); + return s.matches("-?\\d+(\\.\\d+)?"); + } + /** * 设置所需的套管纸管信息 * @param param 任务参数 diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/logging/service/impl/LuceneLogServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/modules/logging/service/impl/LuceneLogServiceImpl.java index e43ffa4..179f39d 100644 --- a/lms/nladmin-system/src/main/java/org/nl/modules/logging/service/impl/LuceneLogServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/modules/logging/service/impl/LuceneLogServiceImpl.java @@ -98,7 +98,7 @@ public class LuceneLogServiceImpl implements EsLogService { @Override public JSONObject query(LogQuery logQuery) { JSONObject res = new JSONObject(); - PageResult page = new PageResult(); + PageResult page = new PageResult(); page.setPage(logQuery.getPage()); page.setPageSize(logQuery.getSize()); try { diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/rest/RawFoilController.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/rest/RawFoilController.java index dd2a1e4..b0e814e 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/rest/RawFoilController.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/rest/RawFoilController.java @@ -44,7 +44,6 @@ public class RawFoilController { @PostMapping("/queryRawFoilList") @Log("查询生箔工单") - public ResponseEntity queryRawFoilList(@RequestBody JSONObject whereJson) { HttpContext ctx = new HttpContext("11"); ctx.setPage((String) (whereJson.get("page"))); @@ -66,18 +65,18 @@ public class RawFoilController { return new ResponseEntity<>(rawFoilService.confirmBlanking(whereJson), HttpStatus.OK); } - @PostMapping("/scrollDowm") - @Log("下卷") + @PostMapping("/needEmptyAxis") + @Log("呼叫") - public ResponseEntity scrollDowm(@RequestBody JSONObject whereJson) { - return new ResponseEntity<>(rawFoilService.scrollDowm(whereJson), HttpStatus.OK); + public ResponseEntity needEmptyAxis(@RequestBody JSONObject whereJson) { + return new ResponseEntity<>(rawFoilService.needEmptyAxis(whereJson), HttpStatus.OK); } - @PostMapping("/scrollDowmTest") - @Log("下卷") + @PostMapping("/needEmptyAxisTest") + @Log("呼叫") public ResponseEntity scrollDowmTest(@RequestBody JSONObject whereJson) { - return new ResponseEntity<>(rawFoilService.scrollDowmTest(whereJson), HttpStatus.OK); + return new ResponseEntity<>(rawFoilService.needEmptyAxisTest(whereJson), HttpStatus.OK); } @PostMapping("/confirmWeight") diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/RawFoilService.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/RawFoilService.java index 21b60af..83755d2 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/RawFoilService.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/RawFoilService.java @@ -53,7 +53,7 @@ public interface RawFoilService { * @param whereJson / * @return JSONObject */ - JSONObject scrollDowm(JSONObject whereJson); + JSONObject needEmptyAxis(JSONObject whereJson); /** * 下卷 @@ -61,7 +61,7 @@ public interface RawFoilService { * @param whereJson / * @return JSONObject */ - JSONObject scrollDowmTest(JSONObject whereJson); + JSONObject needEmptyAxisTest(JSONObject whereJson); JSONObject query(JSONObject whereJson, HttpContext ctx); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/BakingServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/BakingServiceImpl.java index 70daeb8..00d31c9 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/BakingServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/BakingServiceImpl.java @@ -19,6 +19,7 @@ import org.nl.b_lms.sch.point.dao.mapper.SchBasePointMapper; import org.nl.b_lms.sch.point.dao.mapper.StIvtCoolregionioMapper; import org.nl.b_lms.sch.task.dao.SchBaseTask; import org.nl.b_lms.sch.task.dao.mapper.SchBaseTaskMapper; +import org.nl.b_lms.sch.tasks.slitter.util.SlitterTaskUtil; import org.nl.b_lms.storage_manage.md.dao.MdMeMaterialBase; import org.nl.b_lms.storage_manage.md.dao.mapper.MdMeMaterialBaseMapper; import org.nl.common.utils.SecurityUtils; @@ -32,6 +33,7 @@ import org.nl.modules.wql.core.content.HttpContext; import org.nl.modules.wql.util.SpringContextHolder; import org.nl.modules.wql.util.WqlUtil; import org.nl.system.service.param.ISysParamService; +import org.nl.system.service.param.impl.SysParamServiceImpl; import org.nl.wms.basedata.st.service.impl.UserAreaServiceImpl; import org.nl.wms.ext.acs.service.impl.WmsToAcsServiceImpl; import org.nl.wms.pda.mps.eum.RegionTypeEnum; @@ -40,10 +42,7 @@ import org.nl.wms.pda.mps.service.HandleBakingService; import org.nl.wms.pdm.rawfoilworkorder.service.dao.*; import org.nl.wms.pdm.rawfoilworkorder.service.dao.mapper.*; import org.nl.wms.pdm.rawfoilworkorder.service.dto.HotPointIvtDto; -import org.nl.wms.sch.tasks.CutConveyorTask; -import org.nl.wms.sch.tasks.InCoolIvtTask; -import org.nl.wms.sch.tasks.InHotTask; -import org.nl.wms.sch.tasks.OutHotTask; +import org.nl.wms.sch.tasks.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -113,6 +112,12 @@ public class BakingServiceImpl implements BakingService { String temperature = whereJson.getString("temperature"); // 温度 String hours = whereJson.getString("hours"); // 时间 String point_code1 = whereJson.getString("point_code"); // 点位 + if (!SlitterTaskUtil.isNumeric(hours)) { + throw new BadRequestException("请输入合法的时间!"); + } + if (!SlitterTaskUtil.isNumeric(temperature)) { + throw new BadRequestException("请输入合法的温度!"); + } //查询该点位是否存在未完成的任务 JSONObject hasTask = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code1 = '" + point_code1 + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); if (hasTask != null) { @@ -136,11 +141,14 @@ public class BakingServiceImpl implements BakingService { throw new BadRequestException("未查询到母卷号:" + container_name + "对应的生箔机台编号!"); } - String mes_used = paramService.findByCode("mes_used").getValue(); - if (StrUtil.equals("1", mes_used)) { - if (!"1".equals(rawfoilWorkOrder.getIs_baking())) { - throw new BadRequestException("该母卷在MES上未进行决策入烘箱,不允许进行入烘箱操作!"); - } +// String mes_used = paramService.findByCode("mes_used").getValue(); +// if (StrUtil.equals("1", mes_used)) { +// if (!"1".equals(rawfoilWorkOrder.getIs_baking())) { +// throw new BadRequestException("该母卷在MES上未进行决策入烘箱,不允许进行入烘箱操作!"); +// } +// } + if (StrUtil.equals("1", sbPointIvt.getMes_used()) && !"1".equals(rawfoilWorkOrder.getIs_baking())) { + throw new BadRequestException("该母卷在MES上未进行决策入烘箱,不允许进行入烘箱操作!"); } if (ObjectUtil.isEmpty(container_name)) { throw new BadRequestException("母卷号不能为空"); @@ -155,6 +163,11 @@ public class BakingServiceImpl implements BakingService { throw new BadRequestException("点位不能为空"); } + String maxHour = SpringContextHolder.getBean(SysParamServiceImpl.class).findByCode("MAX_HOUR").getValue(); + + if (Integer.parseInt(hours) >= Integer.parseInt(maxHour)) { + throw new BadRequestException("设置的最大烘烤时间不能超过"+maxHour+"分钟"); + } /* * 根据点位判断是 冷却区入烘箱还是烘箱对接位入烘箱 */ @@ -856,7 +869,7 @@ public class BakingServiceImpl implements BakingService { param.put("product_area", jsonPoint.getProduct_area()); - InCoolIvtTask inCoolIvtTask = new InCoolIvtTask(); + InCoolIvtTask inCoolIvtTask = SpringContextHolder.getBean(InCoolIvtTask.class); String task_id = inCoolIvtTask.createTask(param); // 生成冷却区出入表 diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/RawFoilServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/RawFoilServiceImpl.java index 5d16629..6727826 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/RawFoilServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/RawFoilServiceImpl.java @@ -166,10 +166,10 @@ public class RawFoilServiceImpl implements RawFoilService { @Override public JSONObject queryRawFoilList(JSONObject whereJson, HttpContext ctx) { - PageHelper.startPage(Integer.parseInt(ctx.getPage()), Integer.parseInt(ctx.getRows())); +// PageHelper.startPage(Integer.parseInt(ctx.getPage()), Integer.parseInt(ctx.getRows())); JSONObject map = new JSONObject(); map.put("point_code", whereJson.getString("point_code")); - map.put("container_name", whereJson.getString("container_name")); +// map.put("container_name", whereJson.getString("container_name")); map.put("product_area", whereJson.getString("product_area")); //获取人员对应的区域 UserAreaServiceImpl userAreaService = new UserAreaServiceImpl(); @@ -251,15 +251,22 @@ public class RawFoilServiceImpl implements RawFoilService { public JSONObject confirmBlanking(JSONObject whereJson) { String point_code = whereJson.getString("point_code"); - //查询该点位对应的任务 - JSONObject task_jo = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code1 = '" + point_code + "' OR point_code2 = '" + point_code + "' OR point_code3 = '" + point_code + "' OR point_code4 = '" + point_code + "' and task_status <> '07' AND is_delete = '0'").uniqueResult(0); + JSONObject raw_jo = whereJson.getJSONObject("raw_jo"); + RawfoilWorkOrder rawfoilWorkOrder = rawfoilWorkOrderMapper.selectOne(new LambdaQueryWrapper() + .eq(RawfoilWorkOrder::getWorkorder_id, raw_jo.getString("workorder_id"))); + if (!rawfoilWorkOrder.getStatus().equals("02")){ + throw new BadRequestException("工单状态不为空轴搬出"); + } + //查询该母卷号对应的任务 + String container_name = rawfoilWorkOrder.getContainer_name(); + JSONObject task_jo = WQLObject.getWQLObject("SCH_BASE_Task").query("material_code = '" + container_name + "' and task_status <> '07' AND is_delete = '0'").uniqueResult(0); if (ObjectUtil.isEmpty(task_jo)) { - throw new BadRequestException("点位编码【" + point_code + "】的任务不存在!"); + throw new BadRequestException("当前母卷AGV搬运任务不存在或已被强制完成!"); } // 查询生箔点位库存表 SbPointIvt stIvtSbpointivt = sbPointIvtMapper.selectOne(new LambdaQueryWrapper() - .eq(SbPointIvt::getPoint_code, point_code.substring(0, point_code.length()-2))); + .eq(SbPointIvt::getExt_code, rawfoilWorkOrder.getResource_name())); if (ObjectUtil.isEmpty(stIvtSbpointivt)) { throw new BadRequestException("点位设备不存在"); } @@ -280,6 +287,10 @@ public class RawFoilServiceImpl implements RawFoilService { throw new BadRequestException("操作失败:" + result.getString("message ")); } + // 更新工单状态为确认下卷 + rawfoilWorkOrder.setStatus("03"); + rawfoilWorkOrderMapper.updateById(rawfoilWorkOrder); + JSONObject jo = new JSONObject(); jo.put("message", "操作成功!"); return jo; @@ -288,37 +299,74 @@ public class RawFoilServiceImpl implements RawFoilService { @Override @Transactional(rollbackFor = Exception.class) - public JSONObject scrollDowm(JSONObject whereJson) { + public JSONObject needEmptyAxis(JSONObject whereJson) { String message = "操作完成!"; - String type = whereJson.getString("type"); JSONObject raw_jo = whereJson.getJSONObject("raw_jo"); - String point_code = whereJson.getString("point_code"); JSONObject param = new JSONObject(); - if ("1".equals(type) || "3".equals(type)) {// 1:取空取满放空放满, - handleType1And3(raw_jo, param, type); - } else if ("2".equals(type)) {//2:单上空轴 - handleType2(point_code, param); - } else if ("4".equals(type)) {//4:单下空轴 - handleType4(point_code, param); - } - CallEmpReelTask callEmpReelTask = new CallEmpReelTask(); + if (ObjectUtil.isEmpty(raw_jo)) { + throw new BadRequestException("生箔工单不能为空!"); + } + SbPointIvt stIvtSbpointivt = sbPointIvtMapper.selectOne(new LambdaQueryWrapper() + .eq(ObjectUtil.isNotEmpty(raw_jo.getString("point_code")), SbPointIvt::getPoint_code, raw_jo.getString("point_code"))); + if (ObjectUtil.isEmpty(stIvtSbpointivt)) { + throw new BadRequestException("点位:" + stIvtSbpointivt.getExt_code() + "生箔设备不存在"); + } + if (StrUtil.equals("0", stIvtSbpointivt.getIs_used())) { + throw new BadRequestException("当前生箔机:" + stIvtSbpointivt.getExt_code() + "未启用!"); + } + JSONObject task_jo = WQLObject.getWQLObject("sch_base_task").query("material_code = '" + raw_jo.getString("container_name") + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); + if (ObjectUtil.isNotEmpty(task_jo)) { + throw new BadRequestException("该生箔工单存在未完成的任务,请先完成任务!"); + } + RawfoilWorkOrder rawfoilWorkOrder = rawfoilWorkOrderMapper.selectOne(new LambdaQueryWrapper() + .eq(ObjectUtil.isNotEmpty(raw_jo.getString("workorder_id")), RawfoilWorkOrder::getWorkorder_id, raw_jo.getString("workorder_id"))); + if (!StrUtil.equals(rawfoilWorkOrder.getStatus(), "01")) { + throw new BadRequestException("工单状态不为开始"); + } + JSONObject map = new JSONObject(); + map.put("product_area", stIvtSbpointivt.getProduct_area()); + map.put("point_location", stIvtSbpointivt.getPoint_location()); + map.put("point_type", "1"); + map.put("empty_point_status", "02"); + map.put("full_point_status", "01"); + List coolPointIvtList = coolPointIvtMapper.queryCoolPointIvt(map); + + //如果没找到则继续找下一节点 + if (CollectionUtil.isEmpty(coolPointIvtList)) { + String point_location = stIvtSbpointivt.getPoint_location(); + if (StrUtil.equals(point_location, "0")) map.put("point_location", "1"); + if (StrUtil.equals(point_location, "1")) map.put("point_location", "0"); + coolPointIvtList = coolPointIvtMapper.queryCoolPointIvt(map); + if (CollectionUtil.isEmpty(coolPointIvtList)) { + throw new BadRequestException("未查询到合适的冷却区点位"); + } + } + CoolPointIvt jsonIvt = coolPointIvtList.get(0); + param.put("point_code1", jsonIvt.getEmpty_point_code()); + param.put("point_code2", stIvtSbpointivt.getEmpty_point_code()); + param.put("point_code3", stIvtSbpointivt.getFull_point_code()); + param.put("point_code4", jsonIvt.getFull_point_code()); + param.put("task_type", "010101"); + + param.put("material_code", rawfoilWorkOrder.getContainer_name()); + param.put("product_area", rawfoilWorkOrder.getProduct_area()); + + CallEmpReelTask callEmpReelTask = SpringContextHolder.getBean(CallEmpReelTask.class); callEmpReelTask.createTask(param); // 更新工单状态 - if ("1".equals(type) || "3".equals(type)) { - RawfoilWorkOrder rawfoilWorkOrder = rawfoilWorkOrderMapper.selectOne(new LambdaQueryWrapper() - .eq(ObjectUtil.isNotEmpty(raw_jo.getString("workorder_id")), RawfoilWorkOrder::getWorkorder_id, raw_jo.getString("workorder_id"))); - rawfoilWorkOrder.setStatus("10"); - rawfoilWorkOrder.setUpdate_time(DateUtil.now()); - rawfoilWorkOrderMapper.updateById(rawfoilWorkOrder); - } + + rawfoilWorkOrder.setStatus("02"); + rawfoilWorkOrder.setUpdate_time(DateUtil.now()); + rawfoilWorkOrderMapper.updateById(rawfoilWorkOrder); + JSONObject jo = new JSONObject(); jo.put("message", message); return jo; } @Override - public JSONObject scrollDowmTest(JSONObject whereJson) { + public JSONObject needEmptyAxisTest(JSONObject whereJson) { SbPointIvt sbPointIvt = sbPointIvtMapper.selectOne(new LambdaQueryWrapper().eq(ObjectUtil.isNotEmpty(whereJson.getString("point_code")), SbPointIvt::getPoint_code, whereJson.getString("point_code"))); if (ObjectUtil.isEmpty(sbPointIvt)) { throw new BadRequestException("点位设备不存在"); @@ -335,9 +383,9 @@ public class RawFoilServiceImpl implements RawFoilService { rawfoilWorkOrder.setUp_coiler_date(DateUtil.now()); rawfoilWorkOrder.setIs_reload_send("0"); rawfoilWorkOrder.setOrder_type("2"); - rawfoilWorkOrder.setProduct_area("B2"); + rawfoilWorkOrder.setProduct_area("A4"); rawfoilWorkOrder.setRealstart_time(DateUtil.now()); - rawfoilWorkOrder.setStatus("00"); + rawfoilWorkOrder.setStatus("01"); rawfoilWorkOrder.setIs_delete("0"); rawfoilWorkOrder.setAgvno("0"); rawfoilWorkOrder.setProductin_qty(BigDecimal.valueOf(0)); @@ -406,52 +454,49 @@ public class RawFoilServiceImpl implements RawFoilService { } } - private void handleType1And3(JSONObject raw_jo, JSONObject param, String type) { - if (ObjectUtil.isEmpty(raw_jo)) { - throw new BadRequestException("生箔工单不能为空!"); - } - SbPointIvt stIvtSbpointivt = sbPointIvtMapper.selectOne(new LambdaQueryWrapper() - .eq(ObjectUtil.isNotEmpty(raw_jo.getString("point_code")), SbPointIvt::getPoint_code, raw_jo.getString("point_code"))); - if (ObjectUtil.isEmpty(stIvtSbpointivt)) { - throw new BadRequestException("点位:" + stIvtSbpointivt.getExt_code() + "生箔设备不存在"); - } - if (StrUtil.equals("0", stIvtSbpointivt.getIs_used())) { - throw new BadRequestException("当前生箔机:" + stIvtSbpointivt.getExt_code() + "未启用!"); - } - JSONObject task_jo = WQLObject.getWQLObject("sch_base_task").query("material_code = '" + raw_jo.getString("container_name") + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(task_jo)) { - throw new BadRequestException("该生箔工单存在未完成的任务,请先完成任务!"); - } - RawfoilWorkOrder rawfoilWorkOrder = rawfoilWorkOrderMapper.selectOne(new LambdaQueryWrapper() - .eq(ObjectUtil.isNotEmpty(raw_jo.getString("workorder_id")), RawfoilWorkOrder::getWorkorder_id, raw_jo.getString("workorder_id"))); - if (!StrUtil.equals(rawfoilWorkOrder.getStatus(), "30")) { - throw new BadRequestException("工单状态不为开始生产"); - } - if (StrUtil.equals("02", stIvtSbpointivt.getFull_point_status()) && StrUtil.equals("01", stIvtSbpointivt.getEmpty_point_status())) { - JSONObject map = new JSONObject(); - map.put("product_area", stIvtSbpointivt.getProduct_area()); - map.put("point_location", stIvtSbpointivt.getPoint_location()); - map.put("point_type", "1"); - if ("1".equals(type)) { - map.put("empty_point_status", "02"); - map.put("full_point_status", "01"); - } else { - map.put("empty_point_status", "01"); - map.put("full_point_status", "01"); - } - List coolPointIvtList = coolPointIvtMapper.queryCoolPointIvt(map); - - String start_pint_code = ""; - String next_pint_code = ""; - String point_code4 = ""; - CoolPointIvt jsonIvt; - //如果没找到则继续找下一节点 - if (CollectionUtil.isEmpty(coolPointIvtList)) { -// adjustPointLocation(map, stIvtSbpointivt); -// coolPointIvtList = coolPointIvtMapper.queryCoolPointIvt(map); -// if (CollectionUtil.isEmpty(coolPointIvtList)) { -// throw new BadRequestException("未查询到合适的点位"); -// } +// private void handleType1And3(JSONObject raw_jo, JSONObject param, String type) { +// if (ObjectUtil.isEmpty(raw_jo)) { +// throw new BadRequestException("生箔工单不能为空!"); +// } +// SbPointIvt stIvtSbpointivt = sbPointIvtMapper.selectOne(new LambdaQueryWrapper() +// .eq(ObjectUtil.isNotEmpty(raw_jo.getString("point_code")), SbPointIvt::getPoint_code, raw_jo.getString("point_code"))); +// if (ObjectUtil.isEmpty(stIvtSbpointivt)) { +// throw new BadRequestException("点位:" + stIvtSbpointivt.getExt_code() + "生箔设备不存在"); +// } +// if (StrUtil.equals("0", stIvtSbpointivt.getIs_used())) { +// throw new BadRequestException("当前生箔机:" + stIvtSbpointivt.getExt_code() + "未启用!"); +// } +// JSONObject task_jo = WQLObject.getWQLObject("sch_base_task").query("material_code = '" + raw_jo.getString("container_name") + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); +// if (ObjectUtil.isNotEmpty(task_jo)) { +// throw new BadRequestException("该生箔工单存在未完成的任务,请先完成任务!"); +// } +// RawfoilWorkOrder rawfoilWorkOrder = rawfoilWorkOrderMapper.selectOne(new LambdaQueryWrapper() +// .eq(ObjectUtil.isNotEmpty(raw_jo.getString("workorder_id")), RawfoilWorkOrder::getWorkorder_id, raw_jo.getString("workorder_id"))); +// if (!StrUtil.equals(rawfoilWorkOrder.getStatus(), "01")) { +// throw new BadRequestException("工单状态不为开始"); +// } +// if (StrUtil.equals("02", stIvtSbpointivt.getFull_point_status()) && StrUtil.equals("01", stIvtSbpointivt.getEmpty_point_status())) { +// JSONObject map = new JSONObject(); +// map.put("product_area", stIvtSbpointivt.getProduct_area()); +// map.put("point_location", stIvtSbpointivt.getPoint_location()); +// map.put("point_type", "1"); +// if ("1".equals(type)) { +// map.put("empty_point_status", "02"); +// map.put("full_point_status", "01"); +// } else { +// map.put("empty_point_status", "01"); +// map.put("full_point_status", "01"); +// } +// List coolPointIvtList = coolPointIvtMapper.queryCoolPointIvt(map); +// +// String start_pint_code = ""; +// String next_pint_code = ""; +// String point_code4 = ""; +// CoolPointIvt jsonIvt; +// //如果没找到则继续找下一节点 +// if (CollectionUtil.isEmpty(coolPointIvtList)) { +// throw new BadRequestException("未查询到合适的冷却区点位"); +// } else { // jsonIvt = coolPointIvtList.get(0); // if ("1".equals(type)) { // start_pint_code = jsonIvt.getEmpty_point_code(); @@ -459,140 +504,130 @@ public class RawFoilServiceImpl implements RawFoilService { // } else { // next_pint_code = jsonIvt.getFull_point_code(); // } - throw new BadRequestException("未查询到合适的冷却区点位"); - - } else { - jsonIvt = coolPointIvtList.get(0); - if ("1".equals(type)) { - start_pint_code = jsonIvt.getEmpty_point_code(); - point_code4 = jsonIvt.getFull_point_code(); - } else { - next_pint_code = jsonIvt.getFull_point_code(); - } - } - - if ("1".equals(type)) { - param.put("point_code1", start_pint_code); - param.put("point_code2", stIvtSbpointivt.getEmpty_point_code()); - param.put("point_code3", stIvtSbpointivt.getFull_point_code()); - param.put("point_code4", point_code4); - param.put("task_type", "010101"); - } else { - param.put("point_code1", stIvtSbpointivt.getFull_point_code()); - param.put("point_code2", next_pint_code); - param.put("task_type", "010102"); - } - - param.put("material_code", rawfoilWorkOrder.getContainer_name()); - param.put("product_area", rawfoilWorkOrder.getProduct_area()); - } else { - throw new BadRequestException("当前生箔机:" + stIvtSbpointivt.getExt_code() + "不为有满卷且空轴位为空的状态!"); - } - } - - private void handleType2(String point_code, JSONObject param) { - if (ObjectUtil.isEmpty(point_code)) { - throw new BadRequestException("点位不能为空!"); - } - SbPointIvt stIvtSbpointivt = sbPointIvtMapper.selectOne(new LambdaQueryWrapper() - .eq(SbPointIvt::getPoint_code, point_code)); - if (ObjectUtil.isEmpty(stIvtSbpointivt)) { - throw new BadRequestException("点位:" + stIvtSbpointivt.getExt_code() + "生箔设备不存在"); - } - if (StrUtil.equals("0", stIvtSbpointivt.getIs_used())) { - throw new BadRequestException("当前生箔机:" + stIvtSbpointivt.getExt_code() + "未启用!"); - } - if (StrUtil.equals("01", stIvtSbpointivt.getEmpty_point_status()) && StrUtil.equals("01", stIvtSbpointivt.getFull_point_status())) { - JSONObject map = new JSONObject(); - map.put("product_area", stIvtSbpointivt.getProduct_area()); - map.put("point_location", stIvtSbpointivt.getPoint_location()); - map.put("empty_point_status", "02"); - map.put("full_point_status", "01"); - List coolPointIvtList = coolPointIvtMapper.queryCoolPointIvt(map); - String start_pint_code = ""; - //如果没找到则继续找下一节点 - CoolPointIvt jsonIvt; - if (ObjectUtil.isEmpty(coolPointIvtList)) { -// adjustPointLocation(map, stIvtSbpointivt); -// coolPointIvtList = coolPointIvtMapper.queryCoolPointIvt(map); -// if (CollectionUtil.isEmpty(coolPointIvtList)) { -// throw new BadRequestException("未查询到合适的点位"); -// } +// } +// +// if ("1".equals(type)) { +// param.put("point_code1", start_pint_code); +// param.put("point_code2", stIvtSbpointivt.getEmpty_point_code()); +// param.put("point_code3", stIvtSbpointivt.getFull_point_code()); +// param.put("point_code4", point_code4); +// param.put("task_type", "010101"); +// } else { +// param.put("point_code1", stIvtSbpointivt.getFull_point_code()); +// param.put("point_code2", next_pint_code); +// param.put("task_type", "010102"); +// } +// +// param.put("material_code", rawfoilWorkOrder.getContainer_name()); +// param.put("product_area", rawfoilWorkOrder.getProduct_area()); +// } else { +// throw new BadRequestException("当前生箔机:" + stIvtSbpointivt.getExt_code() + "不为有满卷且空轴位为空的状态!"); +// } +// } +// +// private void handleType2(String point_code, JSONObject param) { +// if (ObjectUtil.isEmpty(point_code)) { +// throw new BadRequestException("点位不能为空!"); +// } +// SbPointIvt stIvtSbpointivt = sbPointIvtMapper.selectOne(new LambdaQueryWrapper() +// .eq(SbPointIvt::getPoint_code, point_code)); +// if (ObjectUtil.isEmpty(stIvtSbpointivt)) { +// throw new BadRequestException("点位:" + stIvtSbpointivt.getExt_code() + "生箔设备不存在"); +// } +// if (StrUtil.equals("0", stIvtSbpointivt.getIs_used())) { +// throw new BadRequestException("当前生箔机:" + stIvtSbpointivt.getExt_code() + "未启用!"); +// } +// if (StrUtil.equals("01", stIvtSbpointivt.getEmpty_point_status()) && StrUtil.equals("01", stIvtSbpointivt.getFull_point_status())) { +// JSONObject map = new JSONObject(); +// map.put("product_area", stIvtSbpointivt.getProduct_area()); +// map.put("point_location", stIvtSbpointivt.getPoint_location()); +// map.put("empty_point_status", "02"); +// map.put("full_point_status", "01"); +// List coolPointIvtList = coolPointIvtMapper.queryCoolPointIvt(map); +// String start_pint_code = ""; +// //如果没找到则继续找下一节点 +// CoolPointIvt jsonIvt; +// if (ObjectUtil.isEmpty(coolPointIvtList)) { +//// adjustPointLocation(map, stIvtSbpointivt); +//// coolPointIvtList = coolPointIvtMapper.queryCoolPointIvt(map); +//// if (CollectionUtil.isEmpty(coolPointIvtList)) { +//// throw new BadRequestException("未查询到合适的点位"); +//// } +//// jsonIvt = coolPointIvtList.get(0); +//// start_pint_code = jsonIvt.getEmpty_point_code(); +// throw new BadRequestException("未查询到合适的冷却区点位"); +// } else { // jsonIvt = coolPointIvtList.get(0); // start_pint_code = jsonIvt.getEmpty_point_code(); - throw new BadRequestException("未查询到合适的冷却区点位"); - } else { - jsonIvt = coolPointIvtList.get(0); - start_pint_code = jsonIvt.getEmpty_point_code(); - } - param.put("point_code1", start_pint_code); - param.put("point_code2", stIvtSbpointivt.getEmpty_point_code()); - param.put("task_type", "010103"); - param.put("product_area", jsonIvt.getProduct_area()); - } else { - throw new BadRequestException("当前生箔机:" + stIvtSbpointivt.getExt_code() + "空轴位或者满轴位不为空!"); - } - } - - private void handleType4(String point_code, JSONObject param) { - if (ObjectUtil.isEmpty(point_code)) { - throw new BadRequestException("点位不能为空!"); - } - SbPointIvt stIvtSbpointivt = sbPointIvtMapper.selectOne(new LambdaQueryWrapper() - .eq(SbPointIvt::getPoint_code, point_code)); - if (ObjectUtil.isEmpty(stIvtSbpointivt)) { - throw new BadRequestException("点位:" + stIvtSbpointivt.getExt_code() + "生箔设备不存在"); - } - if (StrUtil.equals("0", stIvtSbpointivt.getIs_used())) { - throw new BadRequestException("当前生箔机:" + stIvtSbpointivt.getExt_code() + "未启用!"); - } - List rawfoilWorkOrderList = rawfoilWorkOrderMapper.selectList(new LambdaQueryWrapper() - .eq(ObjectUtil.isNotEmpty(stIvtSbpointivt.getExt_code()), RawfoilWorkOrder::getResource_name, stIvtSbpointivt.getExt_code()) - .eq(RawfoilWorkOrder::getStatus, "30")); - if (rawfoilWorkOrderList.size() > 0) { - throw new BadRequestException("该机台已经存在开始生产的工单,请先维护再重试!"); - } - - if (StrUtil.equals("02", stIvtSbpointivt.getEmpty_point_status()) && StrUtil.equals("01", stIvtSbpointivt.getFull_point_status())) { - JSONObject map = new JSONObject(); - map.put("product_area", stIvtSbpointivt.getProduct_area()); - map.put("point_location", stIvtSbpointivt.getPoint_location()); - map.put("empty_point_status", "01"); - map.put("full_point_status", "01"); - List coolPointIvtList = coolPointIvtMapper.queryCoolPointIvt(map); - - String next_pint_code = ""; - CoolPointIvt jsonIvt; - //如果没找到则继续找下一节点 - if (CollectionUtil.isEmpty(coolPointIvtList)) { -// adjustPointLocation(map, stIvtSbpointivt); -// coolPointIvtList = coolPointIvtMapper.queryCoolPointIvt(map); -// if (CollectionUtil.isEmpty(coolPointIvtList)) { -// throw new BadRequestException("未查询到合适的点位"); -// } +// } +// param.put("point_code1", start_pint_code); +// param.put("point_code2", stIvtSbpointivt.getEmpty_point_code()); +// param.put("task_type", "010103"); +// param.put("product_area", jsonIvt.getProduct_area()); +// } else { +// throw new BadRequestException("当前生箔机:" + stIvtSbpointivt.getExt_code() + "空轴位或者满轴位不为空!"); +// } +// } +// +// private void handleType4(String point_code, JSONObject param) { +// if (ObjectUtil.isEmpty(point_code)) { +// throw new BadRequestException("点位不能为空!"); +// } +// SbPointIvt stIvtSbpointivt = sbPointIvtMapper.selectOne(new LambdaQueryWrapper() +// .eq(SbPointIvt::getPoint_code, point_code)); +// if (ObjectUtil.isEmpty(stIvtSbpointivt)) { +// throw new BadRequestException("点位:" + stIvtSbpointivt.getExt_code() + "生箔设备不存在"); +// } +// if (StrUtil.equals("0", stIvtSbpointivt.getIs_used())) { +// throw new BadRequestException("当前生箔机:" + stIvtSbpointivt.getExt_code() + "未启用!"); +// } +// List rawfoilWorkOrderList = rawfoilWorkOrderMapper.selectList(new LambdaQueryWrapper() +// .eq(ObjectUtil.isNotEmpty(stIvtSbpointivt.getExt_code()), RawfoilWorkOrder::getResource_name, stIvtSbpointivt.getExt_code()) +// .eq(RawfoilWorkOrder::getStatus, "30")); +// if (rawfoilWorkOrderList.size() > 0) { +// throw new BadRequestException("该机台已经存在开始生产的工单,请先维护再重试!"); +// } +// +// if (StrUtil.equals("02", stIvtSbpointivt.getEmpty_point_status()) && StrUtil.equals("01", stIvtSbpointivt.getFull_point_status())) { +// JSONObject map = new JSONObject(); +// map.put("product_area", stIvtSbpointivt.getProduct_area()); +// map.put("point_location", stIvtSbpointivt.getPoint_location()); +// map.put("empty_point_status", "01"); +// map.put("full_point_status", "01"); +// List coolPointIvtList = coolPointIvtMapper.queryCoolPointIvt(map); +// +// String next_pint_code = ""; +// CoolPointIvt jsonIvt; +// //如果没找到则继续找下一节点 +// if (CollectionUtil.isEmpty(coolPointIvtList)) { +//// adjustPointLocation(map, stIvtSbpointivt); +//// coolPointIvtList = coolPointIvtMapper.queryCoolPointIvt(map); +//// if (CollectionUtil.isEmpty(coolPointIvtList)) { +//// throw new BadRequestException("未查询到合适的点位"); +//// } +//// jsonIvt = coolPointIvtList.get(0); +//// next_pint_code = jsonIvt.getEmpty_point_code(); +// throw new BadRequestException("未查询到合适的冷却区点位"); +// } else { // jsonIvt = coolPointIvtList.get(0); // next_pint_code = jsonIvt.getEmpty_point_code(); - throw new BadRequestException("未查询到合适的冷却区点位"); - } else { - jsonIvt = coolPointIvtList.get(0); - next_pint_code = jsonIvt.getEmpty_point_code(); - } - - param.put("point_code1", stIvtSbpointivt.getEmpty_point_code()); - param.put("point_code2", next_pint_code); - param.put("task_type", "010104"); - param.put("product_area", jsonIvt.getProduct_area()); - } else { - throw new BadRequestException("当前生箔机:" + stIvtSbpointivt.getExt_code() + "不是满轴位为空且空轴位不为空的状态!"); - } - } - - private void adjustPointLocation(JSONObject map, SbPointIvt stIvtSbpointivt) { - String point_location = stIvtSbpointivt.getPoint_location(); - if (StrUtil.equals(point_location, "0")) { - map.put("point_location", "1"); - } else if (StrUtil.equals(point_location, "1")) { - map.put("point_location", "0"); - } - } +// } +// +// param.put("point_code1", stIvtSbpointivt.getEmpty_point_code()); +// param.put("point_code2", next_pint_code); +// param.put("task_type", "010104"); +// param.put("product_area", jsonIvt.getProduct_area()); +// } else { +// throw new BadRequestException("当前生箔机:" + stIvtSbpointivt.getExt_code() + "不是满轴位为空且空轴位不为空的状态!"); +// } +// } +// +// private void adjustPointLocation(JSONObject map, SbPointIvt stIvtSbpointivt) { +// String point_location = stIvtSbpointivt.getPoint_location(); +// if (StrUtil.equals(point_location, "0")) { +// map.put("point_location", "1"); +// } else if (StrUtil.equals(point_location, "1")) { +// map.put("point_location", "0"); +// } +// } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pdm/rawfoilworkorder/service/dao/mapper/CoolPointIvtMapper.xml b/lms/nladmin-system/src/main/java/org/nl/wms/pdm/rawfoilworkorder/service/dao/mapper/CoolPointIvtMapper.xml index f7a2577..498ac3b 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pdm/rawfoilworkorder/service/dao/mapper/CoolPointIvtMapper.xml +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pdm/rawfoilworkorder/service/dao/mapper/CoolPointIvtMapper.xml @@ -107,17 +107,14 @@ AND full_point_status = '01' AND empty_point_status = '01' - AND point_type = #{point_type} - AND point_type = '1' - AND NOT EXISTS ( SELECT 1 FROM sch_base_task @@ -127,12 +124,10 @@ AND is_delete = '0' ) - AND product_area = #{product_area} - AND point_location = #{point_location} diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pdm/rawfoilworkorder/service/dao/mapper/RawfoilWorkOrderMapper.xml b/lms/nladmin-system/src/main/java/org/nl/wms/pdm/rawfoilworkorder/service/dao/mapper/RawfoilWorkOrderMapper.xml index e9cb537..8b1db22 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pdm/rawfoilworkorder/service/dao/mapper/RawfoilWorkOrderMapper.xml +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pdm/rawfoilworkorder/service/dao/mapper/RawfoilWorkOrderMapper.xml @@ -33,8 +33,7 @@ PDM_BI_RawFoilWorkOrder der LEFT JOIN st_ivt_sbpointivt sb ON sb.ext_code = der.resource_name WHERE - der.status = '00' - OR der.status = '10' + der.status = '01' AND der.is_delete = '0' AND sb.product_area IN @@ -49,15 +48,17 @@ AND der.product_area = #{map.product_area} + order by der.container_name