diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/task/dao/SchBaseTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/task/dao/SchBaseTask.java index 2d8b167..8177431 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/task/dao/SchBaseTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/task/dao/SchBaseTask.java @@ -114,7 +114,7 @@ public class SchBaseTask extends Model { /** * 载具数量 */ - private BigDecimal vehicle_qty; + private Integer vehicle_qty; /** @@ -156,7 +156,7 @@ public class SchBaseTask extends Model { /** * 任务组顺序号 */ - private BigDecimal sort_seq; + private Integer sort_seq; /** @@ -274,6 +274,8 @@ public class SchBaseTask extends Model { @TableField(exist = false) private String weight; + @TableField(exist = false) + private String method_name; /** * 是否立即下发 */ diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/task/service/TaskService.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/task/service/TaskService.java index ebc68d0..8e4ac28 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/task/service/TaskService.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/task/service/TaskService.java @@ -89,7 +89,7 @@ public interface TaskService extends IService { */ Boolean checkHaveTaskByZcPoint(BstIvtCutpointivt point); - void operation(Map map); + void operation(SchBaseTask map); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/task/service/impl/TaskServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/task/service/impl/TaskServiceImpl.java index 35d1ebb..20bebb5 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/task/service/impl/TaskServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/task/service/impl/TaskServiceImpl.java @@ -202,13 +202,13 @@ public class TaskServiceImpl extends ServiceImpl @SneakyThrows @Override - public void operation(Map map) { - String task_id = MapUtil.getStr(map, "task_id"); + public void operation(SchBaseTask map) { + String task_id = map.getTask_id(); RLock lock = redissonClient.getLock(task_id); boolean tryLock = lock.tryLock(0, TimeUnit.SECONDS); try { if (tryLock) { - String method_name = MapUtil.getStr(map, "method_name"); + String method_name = map.getMethod_name(); SchBaseTask taskObj = this.getById(task_id); if ("finish".equals(method_name)) { //强制执行,只把任务变更成完成状态 diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvOutServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvOutServiceImpl.java index 44818ef..ada121d 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvOutServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvOutServiceImpl.java @@ -13,6 +13,8 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.nl.b_lms.pdm_manage.enums.SUBEnum; +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.TwoOutExceptionalTask; import org.nl.b_lms.sch.tasks.TwoOutTask; import org.nl.b_lms.storage_manage.database.service.IBstIvtBoxinfoService; @@ -74,6 +76,8 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl task_id_in = disList.stream() .map(row -> row.getString("task_id")) .distinct() - .collect(Collectors.joining("','")); - - - if (task_id_in.equals("null")) { - task_id_in = ""; - } + .collect(Collectors.toList()); - JSONObject taskParam = new JSONObject(); - taskParam.put("is_delete", IOSEnum.IS_NOTANDYES.code("是")); - taskService.update(taskParam,"task_id IN ('"+task_id_in+"')"); + if (task_id_in.size()>0) { + LambdaUpdateWrapper lam = new LambdaUpdateWrapper<>(); + lam.in(SchBaseTask::getTask_id, task_id_in) + .eq(SchBaseTask::getIs_delete, "0"); + lam.set(SchBaseTask::getIs_delete,IOSEnum.IS_NOTANDYES.code("是")); + schBaseTaskMapper.update(null,lam); + } /* * 删除移库单、移库任务 */ @@ -578,18 +579,10 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl arr = taskService.query("handle_class = '" + TwoOutTask.class.getName() + "' and task_status = '" + TaskStatusEnum.EXECUTING.getCode() + "' and is_delete ='0'") -// .getResultJSONArray(0).toJavaList(JSONObject.class); -// -// if (ObjectUtil.isNotEmpty(arr)) { -// throw new BadRequestException("当前有出库任务正在执行,请稍后在试!"); -// } // 查询此明细所有未生成的分配明细 List disDaoList = stIvtIostorinvdisMapper.getNotCreateDis(whereJson); @@ -621,8 +614,12 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getTable_fk, mstDao.getIostorinv_id().toString()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getTask_status,TaskStatusEnum.EXECUTING.getCode()) + .orderByDesc(SchBaseTask::getCreate_time); + List disArr = schBaseTaskMapper.selectList(lam); if (ObjectUtil.isEmpty(disArr)) { TwoOutTask twoOutTask = new TwoOutTask(); @@ -633,8 +630,6 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl arr2 = taskService.query("handle_class = '" + TwoOutTask.class.getName() + "' and task_status < '" + TaskStatusEnum.FINISHED.getCode() + "' and is_delete ='0'") - .getResultJSONArray(0).toJavaList(JSONObject.class); - - Map> taskGroup = arr2.stream() - .collect(Collectors.groupingBy(row -> row.getString("task_group_id"))); - + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getHandle_class, TwoOutTask.class.getName()) + .eq(SchBaseTask::getIs_delete, "0") + .lt(SchBaseTask::getTask_status,TaskStatusEnum.FINISHED.getCode()) + .orderByDesc(SchBaseTask::getCreate_time); + List arr2 = schBaseTaskMapper.selectList(lam); + + Map> taskGroup = arr2.stream() + .collect(Collectors.groupingBy(row -> row.getTask_group_id())); if (taskGroup.size() >= 3) { throw new BadRequestException("当前有三种不同规格的木箱正在出库,请稍后在试!"); } - /* * 下发任务 * 1.根据木箱 长、宽、高、订单号、物料分组 @@ -695,9 +692,12 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getTable_fk,mstDao.getIostorinv_id().toString()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getTask_status,TaskStatusEnum.EXECUTING.getCode()) + .orderByDesc(SchBaseTask::getCreate_time); + List disArr = schBaseTaskMapper.selectList(lam); if (ObjectUtil.isEmpty(disArr)) { TwoOutTask twoOutTask = new TwoOutTask(); twoOutTask.immediateNotifyAcs(null); @@ -711,8 +711,6 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl task_in = disDaoList.stream() .filter(row -> ObjectUtil.isNotEmpty(row.getTask_id())) .map(row -> row.getTask_id().toString()) .distinct() - .collect(Collectors.joining("','")); + .collect(Collectors.toList()); - JSONArray taskArr = taskService.query("task_id IN ('" + task_in + "') AND task_status <> '" + TaskStatusEnum.FINISHED.getCode() + "' AND is_delete = '0'") - .getResultJSONArray(0); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.in(SchBaseTask::getTask_id,task_in) + .eq(SchBaseTask::getIs_delete, "0") + .ne(SchBaseTask::getTask_status,TaskStatusEnum.FINISHED.getCode()) + .orderByDesc(SchBaseTask::getCreate_time); + Integer taskArr = schBaseTaskMapper.selectCount(lam); - if (ObjectUtil.isNotEmpty(taskArr)) { + if (taskArr>0) { throw new BadRequestException("有任务未完成,不允许强制确认!"); } @@ -905,7 +907,10 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl up_lam = new LambdaUpdateWrapper<>(); + up_lam.in(SchBaseTask::getTask_id,needUpdateTaskList); + up_lam.set(SchBaseTask::getTask_status,TaskStatusEnum.FINISHED.getCode()); + schBaseTaskMapper.update(null,up_lam); /* * 如果是调拨出库则生成调拨入库单 @@ -950,12 +955,14 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl '" + TaskStatusEnum.FINISHED.getCode() + "' and task_id = '" + whereJson.getString("task_id") + "'") - .uniqueResult(0); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getTask_id,whereJson.getString("task_id")) + .eq(SchBaseTask::getIs_delete, "0") + .ne(SchBaseTask::getTask_status,TaskStatusEnum.FINISHED.getCode()) + .orderByDesc(SchBaseTask::getCreate_time); + SchBaseTask jsonTask = schBaseTaskMapper.selectOne(lam); if (jsonTask == null) { throw new BadRequestException("查询不到操作的任务记录!"+whereJson.getString("task_id")); @@ -1010,9 +1017,9 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl map = new HashMap<>(); map.put("need_delete", IOSEnum.IS_NOTANDYES.code("是")); - WQLObject.getWQLObject("pdm_bi_subpackagerelation").update(map, "package_box_sn = '" + jsonTask.getString("vehicle_code") + "'"); + WQLObject.getWQLObject("pdm_bi_subpackagerelation").update(map, "package_box_sn = '" + jsonTask.getVehicle_code() + "'"); - JSONArray rows = WQLObject.getWQLObject("pdm_bi_subpackagerelation").query("package_box_sn = '" + jsonTask.getString("vehicle_code") + "'").getResultJSONArray(0); + JSONArray rows = WQLObject.getWQLObject("pdm_bi_subpackagerelation").query("package_box_sn = '" + jsonTask.getVehicle_code() + "'").getResultJSONArray(0); for (int i = 0; i < rows.size(); i++) { JSONObject row = rows.getJSONObject(i); //插入包装关系出入库记录表 @@ -1027,13 +1034,12 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl map = new HashMap<>(); - map.put("task_status", TaskStatusEnum.FINISHED.getCode()); - map.put("update_optid", SecurityUtils.getCurrentUserId()); - map.put("update_optname", SecurityUtils.getCurrentNickName()); - map.put("update_time", DateUtil.now()); + jsonTask.setTask_status(TaskStatusEnum.FINISHED.getCode()); + jsonTask.setUpdate_id(SecurityUtils.getCurrentUserId()); + jsonTask.setUpdate_name(SecurityUtils.getCurrentNickName()); + jsonTask.setUpdate_time(DateUtil.now()); - wo_Task.update(map, "task_id='" + whereJson.getString("task_id") + "'"); + schBaseTaskMapper.updateById(jsonTask); // 查询此任务下所有的分配明细 disDaoList.forEach(row -> { @@ -1282,8 +1288,6 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl attrRowList, String iostorinv_id) { - // 任务表 - WQLObject taskService = WQLObject.getWQLObject("sch_base_task"); Structattr result = new Structattr(); @@ -1323,9 +1327,14 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl '07' and is_delete = '0'").uniqueResult(0); - - if (ObjectUtil.isNotEmpty(jsonTask)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getVehicle_code,jsonLow.getStoragevehicle_code()) + .eq(SchBaseTask::getIs_delete, "0") + .ne(SchBaseTask::getTask_status,TaskStatusEnum.FINISHED.getCode()) + .orderByDesc(SchBaseTask::getCreate_time); + + Integer jsonTask = schBaseTaskMapper.selectCount(lam); + if (jsonTask>0) { flag = false; } @@ -1418,8 +1427,6 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl attrRowList, String iostorinv_id, Consumer allTransactionConsumer) { - // 任务表 - WQLObject taskService = WQLObject.getWQLObject("sch_base_task"); Structattr result = new Structattr(); @@ -1461,9 +1468,15 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl '07' and is_delete = '0'").uniqueResult(0); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getVehicle_code,jsonLow.getStoragevehicle_code()) + .eq(SchBaseTask::getIs_delete, "0") + .ne(SchBaseTask::getTask_status,TaskStatusEnum.FINISHED.getCode()) + .orderByDesc(SchBaseTask::getCreate_time); - if (ObjectUtil.isNotEmpty(jsonTask)) { + Integer jsonTask = schBaseTaskMapper.selectCount(lam); + + if (jsonTask>0) { flag = false; } @@ -1554,19 +1567,21 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl taskMangeList,List disLikeList, String point_code) { - // 任务表 - WQLObject taskService = WQLObject.getWQLObject("sch_base_task"); // 点位表 WQLObject schBasePointService = WQLObject.getWQLObject("sch_base_point"); // 查询异常货位任务集合 - String TaskCodeIn = taskMangeList.stream() + List TaskCodeIn = taskMangeList.stream() .filter(row -> row.getString("lock_type").equals(IOSEnum.LOCK_TYPE.code("出库异常锁"))) .map(row -> row.getString("task_code")) - .distinct().collect(Collectors.joining("','")); + .distinct().collect(Collectors.toList()); - List taskList = taskService.query("task_id IN ('" + TaskCodeIn + "') and is_delete = '0'") - .getResultJSONArray(0).toJavaList(JSONObject.class); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.in(SchBaseTask::getTask_id,TaskCodeIn) + .eq(SchBaseTask::getIs_delete, "0") + .orderByDesc(SchBaseTask::getCreate_time); + + List taskList = schBaseTaskMapper.selectList(lam); // 任务组标识 String task_group_id = IdUtil.getStringId(); @@ -1598,14 +1613,14 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl row.getString("task_id").equals(json.getString("task_code"))) + SchBaseTask jsonTask = taskList.stream() + .filter(row -> row.getTask_id().equals(json.getString("task_code"))) .collect(Collectors.toList()).get(0); // 完成 - if (jsonTask.getString("task_status").equals(TaskStatusEnum.FINISHED.getCode())) { - start_device_code = jsonTask.getString("point_code2"); + if (jsonTask.getTask_status().equals(TaskStatusEnum.FINISHED.getCode())) { + start_device_code = jsonTask.getPoint_code2(); is_auto_issue = IOSEnum.IS_SEND.code("否"); } else { // 未完成:只更新分配明细状态不更新任务id @@ -1616,16 +1631,16 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl lam = new LambdaQueryWrapper(); - lam.eq(Storagevehicleex::getPcsn,json.getString("storagevehicle_code")); - List jsonVeExts = storagevehicleexMapper.selectList(lam); + LambdaQueryWrapper lam2 = new LambdaQueryWrapper(); + lam2.eq(Storagevehicleex::getPcsn,json.getString("storagevehicle_code")); + List jsonVeExts = storagevehicleexMapper.selectList(lam2); if (jsonVeExts.size() ==0) { throw new BadRequestException("此木箱没有绑定托盘号!"+json.getString("storagevehicle_code")); } @@ -1683,8 +1698,6 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl taskMangeList,List disLikeList, String point_code, Consumer allTransactionConsumer) { - // 任务表 - WQLObject taskService = WQLObject.getWQLObject("sch_base_task"); // 点位表 WQLObject schBasePointService = WQLObject.getWQLObject("sch_base_point"); @@ -1694,8 +1707,12 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl row.getString("task_code")) .distinct().collect(Collectors.joining("','")); - List taskList = taskService.query("task_id IN ('" + TaskCodeIn + "') and is_delete = '0'") - .getResultJSONArray(0).toJavaList(JSONObject.class); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.in(SchBaseTask::getTask_id,TaskCodeIn) + .eq(SchBaseTask::getIs_delete, "0") + .orderByDesc(SchBaseTask::getCreate_time); + + List taskList = schBaseTaskMapper.selectList(lam); // 任务组标识 String task_group_id = IdUtil.getStringId(); @@ -1729,14 +1746,14 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl row.getString("task_id").equals(json.getString("task_code"))) + SchBaseTask jsonTask = taskList.stream() + .filter(row -> row.getTask_id().equals(json.getString("task_code"))) .collect(Collectors.toList()).get(0); // 完成 - if (jsonTask.getString("task_status").equals(TaskStatusEnum.FINISHED.getCode())) { - start_device_code = jsonTask.getString("point_code2"); + if (jsonTask.getTask_status().equals(TaskStatusEnum.FINISHED.getCode())) { + start_device_code = jsonTask.getPoint_code2(); is_auto_issue = IOSEnum.IS_SEND.code("否"); } else { // 未完成:只更新分配明细状态不更新任务id @@ -1747,16 +1764,16 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl lam = new LambdaQueryWrapper(); - lam.eq(Storagevehicleex::getPcsn,json.getString("storagevehicle_code")); - List jsonVeExts = storagevehicleexMapper.selectList(lam); + LambdaQueryWrapper lam2 = new LambdaQueryWrapper(); + lam2.eq(Storagevehicleex::getPcsn,json.getString("storagevehicle_code")); + List jsonVeExts = storagevehicleexMapper.selectList(lam2); if (jsonVeExts.size() == 0) { throw new BadRequestException("此木箱没有绑定托盘号!"+json.getString("storagevehicle_code")); } @@ -1821,8 +1838,6 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl disDaoList) { - // 任务表 - WQLObject taskService = WQLObject.getWQLObject("sch_base_task"); // 获取仓位集合 List structCodeIn = disDaoList.stream() @@ -1843,20 +1858,23 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl row.getTask_code()) .distinct().collect(Collectors.joining("','")); - List taskList = taskService.query("task_id IN ('" + taskCodeIn + "')") - .getResultJSONArray(0).toJavaList(JSONObject.class); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.in(SchBaseTask::getTask_id,taskCodeIn) + .eq(SchBaseTask::getIs_delete, "0") + .orderByDesc(SchBaseTask::getCreate_time); + + List taskList = schBaseTaskMapper.selectList(lam); // 更新异常货位 List structCodeInList = new ArrayList<>(); for (int i = 0; i < taskList.size(); i++) { - JSONObject json = taskList.get(0); + SchBaseTask json = taskList.get(0); - structCodeInList.add(json.getString("point_code1")); - structCodeInList.add(json.getString("point_code2")); + structCodeInList.add(json.getPoint_code1()); + structCodeInList.add(json.getPoint_code2()); } - JSONObject jsonUpdate = new JSONObject(); LambdaUpdateWrapper Wrapper = new LambdaUpdateWrapper<>(); Wrapper.set(Structattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定")); Wrapper.set(Structattr::getTask_code, ""); @@ -2002,7 +2020,6 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl disDaoList) { - WQLObject TaskTab = WQLObject.getWQLObject("sch_base_task"); String result = ""; // 查找库内是否有异常货位 @@ -2061,12 +2078,15 @@ public class StIvtIostorinvOutServiceImpl extends ServiceImpl lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getHandle_class, TwoOutExceptionalTask.class.getName()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getPoint_code2,expJson.getStruct_code()) + .orderByDesc(SchBaseTask::getCreate_time); + List tasks = schBaseTaskMapper.selectList(lam); + if(tasks.size()>0){ + result = "请先下发木箱号为【"+tasks.get(0).getVehicle_code()+"】的出库任务!"; + } } return result; } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java index 29ca66d..9b09ed1 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java @@ -8,6 +8,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.pagehelper.Page; @@ -20,6 +21,7 @@ import org.nl.b_lms.pdm.subpackagerelation.service.IpdmBiSubpackagerelationServi import org.nl.b_lms.pdm_manage.enums.SUBEnum; import org.nl.b_lms.sch.point.dao.SchBasePoint; import org.nl.b_lms.sch.point.service.IschBasePointService; +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.TwoInTask; import org.nl.b_lms.storage_manage.database.service.IBstIvtBoxinfoService; @@ -598,13 +600,13 @@ public class StIvtIostorinvServiceImpl extends ServiceImpl needUpdateTaskList = new ArrayList<>(); - for (int i = 0; i < disDaoList.size(); i++) { StIvtIostorinvdis disDao = disDaoList.get(i); if (disDao.getTask_id() != null) { @@ -948,8 +940,14 @@ public class StIvtIostorinvServiceImpl extends ServiceImpl '" + TaskStatusEnum.FINISHED.getCode() + "'"); + LambdaUpdateWrapper lam = new LambdaUpdateWrapper<>(); + + lam.in(SchBaseTask::getTask_id,needUpdateTaskList); + lam.set(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()); + lam.set(SchBaseTask::getUpdate_id, SecurityUtils.getCurrentUserId()); + lam.set(SchBaseTask::getUpdate_name, SecurityUtils.getCurrentNickName()); + lam.set(SchBaseTask::getUpdate_time, DateUtil.now()); + schBaseTaskMapper.update(null,lam); // 更新子卷包装关系 String pcsn_in = disDaoList.stream() diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/InBoxManageServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/InBoxManageServiceImpl.java index bebcb26..c664583 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/InBoxManageServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/InBoxManageServiceImpl.java @@ -11,6 +11,7 @@ import lombok.RequiredArgsConstructor; import org.nl.b_lms.sch.point.dao.SchBasePoint; import org.nl.b_lms.sch.point.service.IschBasePointService; 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.task.service.TaskService; import org.nl.b_lms.sch.tasks.TwoInBoxTask; import org.nl.b_lms.sch.tasks.TwoInBoxTrussTask; @@ -90,6 +91,8 @@ public class InBoxManageServiceImpl implements InBoxManageService { @Autowired private LmsToMesService lmsToMesService; + @Autowired + private SchBaseTaskMapper schBaseTaskMapper; @Autowired private InBussManageService inBussManageService; @@ -372,10 +375,13 @@ public class InBoxManageServiceImpl implements InBoxManageService { lmsToMesService.momGetPackingInfo(whereJson); //判断当前点位是否存在任务,如果存在则不生成任务 - WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task"); - JSONObject jsonObject = wo_Task.query("point_code1 = '" + whereJson.getString("point_code") + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(jsonObject)) { - throw new BadRequestException("点位【" + jsonObject.getString("point_code1") + "】存在未完成的任务!"); + LambdaQueryWrapper lam2 = new LambdaQueryWrapper<>(); + lam2.eq(SchBaseTask::getPoint_code1, whereJson.getString("point_code")) + .eq(SchBaseTask::getIs_delete, "0") + .lt(SchBaseTask::getTask_status,"07"); + Integer jsonObjects = schBaseTaskMapper.selectCount(lam2); + if (jsonObjects>0) { + throw new BadRequestException("点位【" + whereJson.getString("point_code") + "】存在未完成的任务!"); } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/LashManageServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/LashManageServiceImpl.java index d3a78e2..61fa01b 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/LashManageServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/LashManageServiceImpl.java @@ -11,6 +11,8 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import lombok.RequiredArgsConstructor; import org.nl.b_lms.sch.point.dao.SchBasePoint; import org.nl.b_lms.sch.point.dao.mapper.SchBasePointMapper; +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.TwoLashTask; import org.nl.b_lms.sch.tasks.TwoOutHeapTask; import org.nl.b_lms.storage_manage.database.service.IBstIvtBoxinfoService; @@ -71,7 +73,8 @@ public class LashManageServiceImpl implements LashManageService { * 捆扎任务创建 */ private final TwoLashTask twoLashTask; - + @Autowired + private SchBaseTaskMapper schBaseTaskMapper; /** * 木箱类型信息服务 */ @@ -233,13 +236,16 @@ public class LashManageServiceImpl implements LashManageService { public void createHeapTask(JSONObject whereJson) { // 比较两行架点位的任务个数 - List executeArr = WQLObject.getWQLObject("SCH_BASE_Task") - .query("handle_class = '" + TwoOutHeapTask.class.getName() + "' and task_status IN ('04','05','06') and is_delete = '0' ") - .getResultJSONArray(0).toJavaList(JSONObject.class); + LambdaQueryWrapper lam2 = new LambdaQueryWrapper<>(); + lam2.eq(SchBaseTask::getHandle_class, TwoOutHeapTask.class.getName()) + .eq(SchBaseTask::getIs_delete, "0") + .in(SchBaseTask::getTask_status, "04","05","06"); + + List executeArr = schBaseTaskMapper.selectList(lam2); // 根据终点点位进行分组 - Map> groupPointMap = executeArr.stream() - .collect(Collectors.groupingBy(row -> row.getString("point_code2"))); + Map> groupPointMap = executeArr.stream() + .collect(Collectors.groupingBy(row -> row.getPoint_code2())); // 终点: 如果是异常口则直接生成到异常口的任务 String next_device_code = IOSEnum.OUT_HANGER.code("行架位1"); @@ -248,8 +254,8 @@ public class LashManageServiceImpl implements LashManageService { if (TWO_EXCEP.equals(IOSEnum.IS_NOTANDYES.code("是"))) { next_device_code = IOSEnum.EXCEP_OUT.code("异常出库口"); } else { - List heapOne = Optional.ofNullable(groupPointMap.get(IOSEnum.OUT_HANGER.code("行架位1"))).orElse(new ArrayList<>()); - List heapTwo = Optional.ofNullable(groupPointMap.get(IOSEnum.OUT_HANGER.code("行架位2"))).orElse(new ArrayList<>()); + List heapOne = Optional.ofNullable(groupPointMap.get(IOSEnum.OUT_HANGER.code("行架位1"))).orElse(new ArrayList<>()); + List heapTwo = Optional.ofNullable(groupPointMap.get(IOSEnum.OUT_HANGER.code("行架位2"))).orElse(new ArrayList<>()); if (heapOne.size() > heapTwo.size()) { diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/OutBoxManageServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/OutBoxManageServiceImpl.java index 7476b94..287713d 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/OutBoxManageServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/OutBoxManageServiceImpl.java @@ -58,6 +58,8 @@ public class OutBoxManageServiceImpl implements OutBoxManageService { private List notOutBlockList = new ArrayList<>(); @Autowired private StructattrMapper structattrMapper; + @Autowired + private TaskService taskService; /** * 木箱信息服务 */ @@ -175,13 +177,11 @@ public class OutBoxManageServiceImpl implements OutBoxManageService { @Override @Transactional public String taskExceptionalOut(JSONObject jsonObject) { - // 任务表 - WQLObject taskService = WQLObject.getWQLObject("sch_base_task"); - JSONObject jsonTask = taskService.query("task_code = '" + jsonObject.getString("task_code") + "'").uniqueResult(0); + SchBaseTask jsonTask =taskService.findByCode(jsonObject.getString("task_code")); // 找出对应的浅货位 - Structattr jsonAttrOrder = structattrService.findByCode(jsonTask.getString("point_code1")); + Structattr jsonAttrOrder = structattrService.findByCode(jsonTask.getPoint_code1()); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper(); queryWrapper.eq(Structattr::getRow_num,jsonAttrOrder.getRow_num()) .eq(Structattr::getLayer_num,jsonAttrOrder.getLayer_num()) @@ -193,7 +193,7 @@ public class OutBoxManageServiceImpl implements OutBoxManageService { List jsonAttrNows = structattrMapper.selectList(queryWrapper); if (jsonAttrNows.size() == 0) { - throw new BadRequestException("对应浅货位不存在或未启用!" + jsonTask.getString("point_code1")); + throw new BadRequestException("对应浅货位不存在或未启用!" + jsonTask.getPoint_code1()); } Structattr jsonAttrNow = jsonAttrNows.get(0); // 锁住仓位 diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/OutVehicleManageServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/OutVehicleManageServiceImpl.java index 3350d15..aa62754 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/OutVehicleManageServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/OutVehicleManageServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; 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.task.service.TaskService; import org.nl.b_lms.sch.tasks.TwoExcepionalMoveTask; import org.nl.b_lms.sch.tasks.TwoOutEmpTask; @@ -18,6 +19,7 @@ import org.nl.wms.basedata.st.structattr.service.StructattrService; import org.nl.wms.basedata.st.structattr.service.dao.Structattr; import org.nl.wms.basedata.st.structattr.service.dao.mapper.StructattrMapper; import org.nl.wms.pda.mps.eum.RegionTypeEnum; +import org.nl.wms.sch.manage.TaskStatusEnum; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -42,7 +44,8 @@ public class OutVehicleManageServiceImpl implements OutVehicleManageService { * 出库不需要查询的排集合 */ private List notOutRowList = new ArrayList<>(); - + @Autowired + private SchBaseTaskMapper schBaseTaskMapper; /** * 出库不需要查询的巷道集合 */ @@ -55,7 +58,7 @@ public class OutVehicleManageServiceImpl implements OutVehicleManageService { * 任务服务 */ @Autowired - private TaskService ischBaseTaskService; + private TaskService taskService; @Override @Transactional(rollbackFor = Exception.class) @@ -71,10 +74,14 @@ public class OutVehicleManageServiceImpl implements OutVehicleManageService { whereJson.put("storagevehicle_type", whereJson.getString("vehicle_type")); //判断当前点位是否存在任务,如果存在则不生成任务 - WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task"); - JSONObject jsonObject = wo_Task.query("point_code2 = '" + whereJson.getString("device_code") + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(jsonObject)){ - throw new BadRequestException("点位【"+jsonObject.getString("point_code2")+"】正在出空托盘任务!"); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getPoint_code2,whereJson.getString("device_code")) + ; + int tasks = schBaseTaskMapper.selectCount(lam); + if (tasks>0){ + throw new BadRequestException("点位【"+whereJson.getString("device_code")+"】正在出空托盘任务!"); } JSONObject jsonAttr = getStruct(whereJson); @@ -117,10 +124,7 @@ public class OutVehicleManageServiceImpl implements OutVehicleManageService { public JSONObject taskExceptional(JSONObject jsonObject) { // 查询任务 - SchBaseTask taskDao = ischBaseTaskService.getOne( - new QueryWrapper().lambda() - .eq(SchBaseTask::getTask_code, jsonObject.getString("task_code")) - ); + SchBaseTask taskDao =taskService.findByCode(jsonObject.getString("task_code")); // 标记原货位为满入异常锁 @@ -151,7 +155,7 @@ public class OutVehicleManageServiceImpl implements OutVehicleManageService { // 更新任务起点 taskDao.setPoint_code1(jsonAttrNow.getString("struct_code")); taskDao.setVehicle_code(jsonAttrNow.getString("storagevehicle_code")); - ischBaseTaskService.updateById(taskDao); + taskService.updateById(taskDao); return jsonAttrNow; } @@ -160,12 +164,11 @@ public class OutVehicleManageServiceImpl implements OutVehicleManageService { @Transactional public String taskExceptionalOut(JSONObject jsonObject) { // 任务表 - WQLObject taskService = WQLObject.getWQLObject("sch_base_task"); - JSONObject jsonTask = taskService.query("task_code = '" + jsonObject.getString("task_code") + "'").uniqueResult(0); + SchBaseTask jsonTask = taskService.findByCode(jsonObject.getString("task_code")); // 找出对应的浅货位 - Structattr jsonAttrOrder = structattrService.findByCode(jsonTask.getString("point_code1")); + Structattr jsonAttrOrder = structattrService.findByCode(jsonTask.getPoint_code1()); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper(); queryWrapper.eq(Structattr::getRow_num, jsonAttrOrder.getRow_num()) @@ -178,7 +181,7 @@ public class OutVehicleManageServiceImpl implements OutVehicleManageService { List jsonAttrNows = structattrMapper.selectList(queryWrapper); if (jsonAttrNows.size() == 0) { - throw new BadRequestException("对应浅货位不存在或未启用!" + jsonTask.getString("point_code1")); + throw new BadRequestException("对应浅货位不存在或未启用!" + jsonTask.getPoint_code1()); } Structattr jsonAttrNow = jsonAttrNows.get(0); // 锁住仓位 diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/SendOutManageServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/SendOutManageServiceImpl.java index 9252d66..0dbe7bf 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/SendOutManageServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/util/impl/SendOutManageServiceImpl.java @@ -10,6 +10,9 @@ import org.apache.log4j.Logger; import org.nl.b_lms.sch.point.dao.SchBasePoint; import org.nl.b_lms.sch.point.dao.mapper.SchBasePointMapper; import org.nl.b_lms.sch.point.service.IschBasePointService; +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.task.service.TaskService; import org.nl.b_lms.sch.tasks.TwoSendOutTask; import org.nl.b_lms.storage_manage.ios.enums.IOSEnum; import org.nl.b_lms.storage_manage.ios.service.iostorInv.util.service.SendOutManageService; @@ -17,6 +20,7 @@ import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.core.bean.WQLObject; import org.nl.wms.pda.mps.eum.RegionTypeEnum; import org.nl.wms.sch.tasks.CutConveyorTask; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -43,7 +47,8 @@ public class SendOutManageServiceImpl implements SendOutManageService { * 点位服务 */ private final IschBasePointService ischBasePointService; - + @Autowired + private TaskService taskService; /** * 点位mapper服务 */ @@ -383,11 +388,10 @@ public class SendOutManageServiceImpl implements SendOutManageService { @Override public String createSendOutTaskTwo(JSONObject whereJson) { - WQLObject taskTab = WQLObject.getWQLObject("sch_base_task"); WQLObject pointTab = WQLObject.getWQLObject("sch_base_point"); // 根据任务号找到第一次申请时的任务 - JSONObject taskJson = taskTab.query("task_code = '" + whereJson.getString("task_code") + "' AND is_delete = '0'").uniqueResult(0); + SchBaseTask taskJson = taskService.findByCode(whereJson.getString("task_code")); if (ObjectUtil.isEmpty(taskJson)) { throw new BadRequestException("任务号为:"+ whereJson.getString("task_code")+ "的任务不存在!"); } @@ -395,8 +399,8 @@ public class SendOutManageServiceImpl implements SendOutManageService { String point_code4 = ""; // 判断是否已经分配过一次(防止acs多次申请) - if (ObjectUtil.isEmpty(taskJson.getString("point_code4"))) { - return taskJson.getString("point_code2"); + if (ObjectUtil.isEmpty(taskJson.getPoint_code4())) { + return taskJson.getPoint_code2(); } // 所有发货区点位 @@ -408,7 +412,7 @@ public class SendOutManageServiceImpl implements SendOutManageService { ); SchBasePoint pointDao = pointDaoList.stream() - .filter(row -> row.getPoint_code().equals(taskJson.getString("point_code4"))) + .filter(row -> row.getPoint_code().equals(taskJson.getPoint_code4())) .findFirst().orElse(null); // 找出这一排所有空位 @@ -442,7 +446,7 @@ public class SendOutManageServiceImpl implements SendOutManageService { } // 判断货位是否是第一次申请的货位 - if (!point_code4.equals(taskJson.getString("point_code4"))) { + if (!point_code4.equals(taskJson.getPoint_code4())) { // 更新现仓位 JSONObject jsonUpdate = new JSONObject(); jsonUpdate.put("lock_type", IOSEnum.LOCK_TYPE.code("其它")); @@ -452,14 +456,14 @@ public class SendOutManageServiceImpl implements SendOutManageService { if ("5,9".contains(pointDao.getIn_order_seq().toString())) { // 更新原仓位 jsonUpdate.put("lock_type", IOSEnum.LOCK_TYPE.code("未锁定")); - pointTab.update(jsonUpdate,"point_code = '"+taskJson.getString("point_code4")+"'"); + pointTab.update(jsonUpdate,"point_code = '"+taskJson.getPoint_code4()+"'"); } } // 更新当前点位终点 - taskJson.put("point_code2", point_code4); - taskJson.put("point_code4", ""); - taskTab.update(taskJson); + taskJson.setPoint_code2(point_code4); + taskJson.setPoint_code4(""); + taskService.update(taskJson); // 返回点位 return point_code4; 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 e37512d..9be2c11 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 @@ -343,7 +343,7 @@ public class MesToLmsServiceImpl implements MesToLmsService { throw new BadRequestException("该生箔工单对应的状态不为准备就绪,不允许确认下卷!"); } // 下发ACS更改任务状态 - JSONObject task_jo = WQLObject.getWQLObject("SCH_BASE_Task").query("material_code = '" + containerName + "' and task_status <> '07' AND is_delete = '0'").uniqueResult(0); + JSONObject task_jo = .query("material_code = '" + containerName + "' and task_status <> '07' AND is_delete = '0'").uniqueResult(0); JSONArray paramArr = new JSONArray(); JSONObject json = new JSONObject(); json.put("device_code", jsonSb.getString("point_code")); 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 25879ce..389275f 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 @@ -7,8 +7,11 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.nl.b_lms.sch.task.dao.SchBaseTask; +import org.nl.b_lms.sch.task.dao.mapper.SchBaseTaskMapper; import org.nl.common.utils.SecurityUtils; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.common.utils.RedisUtils; @@ -38,6 +41,8 @@ public class BakingServiceImpl implements BakingService { private RedisUtils redisUtils; @Autowired IUserAreaPermissionService userAreaPermissionService; + @Autowired + private SchBaseTaskMapper schBaseTaskMapper; /* * 业务流程: * 入烤箱: @@ -60,8 +65,6 @@ public class BakingServiceImpl implements BakingService { String option = whereJson.getString("option"); // 1-入箱 2-出箱 // 点位表 WQLObject pointTab = WQLObject.getWQLObject("SCH_BASE_Point"); - // 任务表 - WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task"); // 冷却区点位库存表 WQLObject coolIvtTab = WQLObject.getWQLObject("ST_IVT_CoolPointIvt"); // 冷却区出入表 @@ -523,11 +526,19 @@ public class BakingServiceImpl implements BakingService { JSONObject jsonPoint = pointArr.getJSONObject(i); String point_code = jsonPoint.getString("point_code"); - JSONObject json_point_code1 = taskTab.query("point_code1 = '" + point_code + "' and task_status != '07' and is_delete = '0'").uniqueResult(0); - JSONObject json_point_code2 = taskTab.query("point_code2 = '" + point_code + "' and task_status != '07' and is_delete = '0'").uniqueResult(0); - JSONObject json_point_code3 = taskTab.query("point_code3 = '" + point_code + "' and task_status != '07' and is_delete = '0'").uniqueResult(0); - JSONObject json_point_code4 = taskTab.query("point_code4 = '" + point_code + "' and task_status != '07' and is_delete = '0'").uniqueResult(0); - if (ObjectUtil.isEmpty(json_point_code1) && ObjectUtil.isEmpty(json_point_code2) && ObjectUtil.isEmpty(json_point_code3) && ObjectUtil.isEmpty(json_point_code4)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.ne(SchBaseTask::getTask_status, "07") + .eq(SchBaseTask::getIs_delete, "0") + .and(la->la.eq(SchBaseTask::getPoint_code1,point_code) + .or() + .eq(SchBaseTask::getPoint_code2,point_code) + .or() + .eq(SchBaseTask::getPoint_code3,point_code) + .or() + .eq(SchBaseTask::getPoint_code4,point_code)) + ; + int tasks = schBaseTaskMapper.selectCount(lam); + if (tasks == 0) { point_code2 = point_code; break; } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/FeedingServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/FeedingServiceImpl.java index ab954e3..ca8814d 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/FeedingServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/FeedingServiceImpl.java @@ -9,6 +9,8 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.nl.b_lms.sch.task.dao.SchBaseTask; +import org.nl.b_lms.sch.task.dao.mapper.SchBaseTaskMapper; import org.nl.common.utils.SecurityUtils; import org.nl.modules.common.exception.BadRequestException; import org.nl.common.utils.CodeUtil; @@ -25,6 +27,7 @@ import org.nl.wms.ext.acs.service.WmsToAcsService; import org.nl.wms.pda.mps.eum.RegionTypeEnum; import org.nl.wms.pda.mps.service.FeedingService; import org.nl.wms.sch.manage.AbstractAcsTask; +import org.nl.wms.sch.manage.TaskStatusEnum; import org.nl.wms.sch.tasks.CoolCutTask; import org.nl.wms.sch.tasks.OutHotTask; import org.nl.wms.st.inbill.service.CheckOutBillService; @@ -46,6 +49,8 @@ public class FeedingServiceImpl implements FeedingService { @Autowired private StructattrMapper structattrMapper; @Autowired + private SchBaseTaskMapper schBaseTaskMapper; + @Autowired IUserAreaPermissionService userAreaPermissionService; @Override public JSONObject queryMaterialInfo(JSONObject whereJson, HttpContext ctx) { @@ -589,15 +594,21 @@ public class FeedingServiceImpl implements FeedingService { JSONObject cut_jo = WQLObject.getWQLObject("st_ivt_cutpointivt").query("full_point_code = '" + point_code + "'").uniqueResult(0); //查询该母卷号对应的任务 - JSONObject task_jo = WQLObject.getWQLObject("SCH_BASE_Task").query("(point_code2 = '" + point_code + "' OR point_code1 = '" + point_code + "') and task_status <> '07' AND is_delete = '0'").uniqueResult(0); - if (ObjectUtil.isEmpty(task_jo)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.ne(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .and(la->la.eq(SchBaseTask::getPoint_code1,point_code) + .or().eq(SchBaseTask::getPoint_code2,point_code) + ); + List tasks = schBaseTaskMapper.selectList(lam); + if (tasks.size() ==0) { throw new BadRequestException("未查询到点位[" + point_code + "]对应的任务!"); } //下发ACS,执行取满放空的AGV动作 JSONArray paramArr = new JSONArray(); JSONObject param = new JSONObject(); param.put("device_code", cut_jo.getString("point_code")); - param.put("task_code", task_jo.getString("task_code")); + param.put("task_code", tasks.get(0).getTask_code()); param.put("product_area", cut_jo.getString("product_area")); param.put("option", "1"); paramArr.add(param); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/InServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/InServiceImpl.java index d0ef45f..5e864e5 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/InServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/InServiceImpl.java @@ -4,8 +4,11 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.nl.b_lms.sch.task.dao.SchBaseTask; +import org.nl.b_lms.sch.task.dao.mapper.SchBaseTaskMapper; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.WQL; import org.nl.modules.wql.core.bean.WQLObject; @@ -24,6 +27,8 @@ import java.util.HashMap; @RequiredArgsConstructor @Slf4j public class InServiceImpl implements InService { + @Autowired + private SchBaseTaskMapper schBaseTaskMapper; private final CutTrussTask cutTrussTask; @Autowired @@ -129,8 +134,15 @@ public class InServiceImpl implements InService { throw new BadRequestException("起点不能为空!"); } - JSONObject task1 = WQLObject.getWQLObject("SCH_BASE_Task").query("(point_code2 = '" + point_code + "' OR point_code1 = '" + point_code + "' ) AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(task1)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .and(la->la.eq(SchBaseTask::getPoint_code1,point_code) + .or().eq(SchBaseTask::getPoint_code2,point_code) + ); + + Integer task1 = schBaseTaskMapper.selectCount(lam); + if (task1>0) { throw new BadRequestException("点位:" + point_code + "存在未完成的任务!"); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/OutServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/OutServiceImpl.java index 352e33b..988e083 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/OutServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/OutServiceImpl.java @@ -4,8 +4,11 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.nl.b_lms.sch.task.dao.SchBaseTask; +import org.nl.b_lms.sch.task.dao.mapper.SchBaseTaskMapper; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.WQL; import org.nl.modules.wql.core.bean.WQLObject; @@ -27,6 +30,8 @@ public class OutServiceImpl implements OutService { private final CutTrussTask cutTrussTask; @Autowired + private SchBaseTaskMapper schBaseTaskMapper; + @Autowired IUserAreaPermissionService userAreaPermissionService; @Override public JSONObject queryMaterialInfo(JSONObject whereJson) { @@ -277,10 +282,15 @@ public class OutServiceImpl implements OutService { if (StrUtil.isEmpty(point_code)) { throw new BadRequestException("起点不能为空!"); } - - JSONObject task1 = WQLObject.getWQLObject("SCH_BASE_Task").query("(point_code2 = '" + point_code + "' OR point_code1 = '" + point_code + "' ) AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - - if (ObjectUtil.isNotEmpty(task1)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .and(la->la.eq(SchBaseTask::getPoint_code1,point_code) + .or().eq(SchBaseTask::getPoint_code2,point_code) + ); + int task1s = schBaseTaskMapper.selectCount(lam); + + if (task1s>0) { throw new BadRequestException("点位:" + point_code + "存在未完成的任务!"); } //如果查询到给ACS下发一个输送线任务 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 c440ca5..8560c16 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 @@ -8,8 +8,11 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.nl.b_lms.sch.task.dao.SchBaseTask; +import org.nl.b_lms.sch.task.dao.mapper.SchBaseTaskMapper; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.WQL; import org.nl.modules.wql.core.bean.WQLObject; @@ -18,12 +21,14 @@ import org.nl.wms.basedata.st.userarea.service.IUserAreaPermissionService; import org.nl.wms.ext.acs.service.impl.WmsToAcsServiceImpl; import org.nl.wms.pda.mps.eum.RegionTypeEnum; import org.nl.wms.pda.mps.service.RawFoilService; +import org.nl.wms.sch.manage.TaskStatusEnum; import org.nl.wms.sch.tasks.CallEmpReelTask; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.Date; +import java.util.List; @Service @RequiredArgsConstructor @@ -31,6 +36,8 @@ import java.util.Date; public class RawFoilServiceImpl implements RawFoilService { @Autowired IUserAreaPermissionService userAreaPermissionService; + @Autowired + private SchBaseTaskMapper schBaseTaskMapper; @Override public JSONObject queryProductArea() { JSONObject map = new JSONObject(); @@ -466,7 +473,12 @@ public class RawFoilServiceImpl implements RawFoilService { //查询该母卷号对应的任务 String container_name = jsonRaw.getString("container_name"); - JSONObject task_jo = WQLObject.getWQLObject("SCH_BASE_Task").query("material_code = '" + container_name + "' and task_status <> '07' AND is_delete = '0'").uniqueResult(0); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.ne(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getMaterial_code,container_name) + ; + List task_jos = schBaseTaskMapper.selectList(lam); // 查询生箔点位库存表 JSONObject jsonSb = stIvtSbpointivtService.query("ext_code = '" + jsonRaw.getString("resource_name") + "'").uniqueResult(0); @@ -478,7 +490,7 @@ public class RawFoilServiceImpl implements RawFoilService { JSONArray paramArr = new JSONArray(); JSONObject param = new JSONObject(); param.put("device_code", jsonSb.getString("point_code")); - param.put("task_code", task_jo.getString("task_code")); + param.put("task_code", task_jos.get(0).getTask_code()); param.put("product_area", jsonSb.getString("product_area")); param.put("option", "1"); paramArr.add(param); @@ -513,7 +525,12 @@ public class RawFoilServiceImpl implements RawFoilService { //查询该母卷号对应的任务 String container_name = jsonRaw.getString("container_name"); - JSONObject task_jo = WQLObject.getWQLObject("SCH_BASE_Task").query("material_code = '" + container_name + "' and task_status <> '07' AND is_delete = '0'").uniqueResult(0); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.ne(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getMaterial_code,container_name) + ; + List task_jos = schBaseTaskMapper.selectList(lam); // 查询生箔点位库存表 JSONObject jsonSb = WQLObject.getWQLObject("st_ivt_sbpointivt").query("ext_code = '" + jsonRaw.getString("resource_name") + "'").uniqueResult(0); @@ -525,7 +542,7 @@ public class RawFoilServiceImpl implements RawFoilService { JSONArray paramArr = new JSONArray(); JSONObject param = new JSONObject(); param.put("device_code", jsonSb.getString("point_code")); - param.put("task_code", task_jo.getString("task_code")); + param.put("task_code", task_jos.get(0).getTask_code()); param.put("option", "2"); paramArr.add(param); @@ -555,9 +572,14 @@ public class RawFoilServiceImpl implements RawFoilService { //查询该生箔工单是否存在未完成的任务 String container_name = raw_jo.getString("container_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.isNotEmpty(task_jo)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.ne(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getMaterial_code,container_name) + ; + Integer task_jos = schBaseTaskMapper.selectCount(lam); + + if (task_jos>0) { throw new BadRequestException("该生箔工单存在未完成的任务,请先完成任务!"); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/SerfaceServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/SerfaceServiceImpl.java index 80805e4..430ab98 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/SerfaceServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/SerfaceServiceImpl.java @@ -4,24 +4,31 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.nl.b_lms.sch.task.dao.SchBaseTask; +import org.nl.b_lms.sch.task.dao.mapper.SchBaseTaskMapper; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.core.bean.WQLObject; import org.nl.modules.wql.util.SpringContextHolder; import org.nl.wms.ext.acs.service.WmsToAcsService; import org.nl.wms.ext.mes.service.MesToLmsService; import org.nl.wms.pda.mps.service.SerfaceService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.List; + @Service @RequiredArgsConstructor @Slf4j public class SerfaceServiceImpl implements SerfaceService { - - private final MesToLmsService mesToLmsService; - + @Autowired + private MesToLmsService mesToLmsService; + @Autowired + private SchBaseTaskMapper schBaseTaskMapper; @Override @Transactional(rollbackFor = Exception.class) public JSONObject operate(JSONObject whereJson) { @@ -44,8 +51,7 @@ public class SerfaceServiceImpl implements SerfaceService { param.put("ContainerName", container_name); param.put("ResourceName", device_jo.getString("ext_code")); param.put("Type", option); - MesToLmsService bean = SpringContextHolder.getBean(MesToLmsService.class); - JSONObject jsonObject = bean.sendProcessInfo(param); + JSONObject jsonObject = mesToLmsService.sendProcessInfo(param); if (jsonObject.getString("RTYPE").equals("E")) { throw new BadRequestException(jsonObject.getString("RTMSG")); } @@ -62,8 +68,15 @@ public class SerfaceServiceImpl implements SerfaceService { throw new BadRequestException("未查询到对应的表处设备!"); } //查询该点位对应的任务 - JSONObject task_jo = WQLObject.getWQLObject("sch_base_task").query("(point_code1 like '%" + point_code + "%' OR point_code2 like '%" + point_code + "%') AND is_delete = '0' AND task_status < '07'").uniqueResult(0); - if (ObjectUtil.isEmpty(task_jo)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.lt(SchBaseTask::getTask_status, "07") + .eq(SchBaseTask::getIs_delete, "0") + .and(la->la.like(SchBaseTask::getPoint_code1,point_code) + .or() + .like(SchBaseTask::getPoint_code2,point_code) + ); + List task_jos = schBaseTaskMapper.selectList(lam); + if (task_jos.size() == 0) { throw new BadRequestException("未查询到该点位对应的任务!"); } @@ -71,8 +84,8 @@ public class SerfaceServiceImpl implements SerfaceService { JSONArray paramArr = new JSONArray(); JSONObject param = new JSONObject(); param.put("device_code", st_jo.getString("up_point_code")); - param.put("task_code", task_jo.getString("task_code")); - param.put("product_area", task_jo.getString("product_area")); + param.put("task_code", task_jos.get(0).getTask_code()); + param.put("product_area", task_jos.get(0).getProduct_area()); param.put("option", "1"); paramArr.add(param); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/ShippingServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/ShippingServiceImpl.java index 6c1f1b7..b08b956 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/ShippingServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/mps/service/impl/ShippingServiceImpl.java @@ -7,6 +7,8 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.nl.b_lms.sch.task.dao.SchBaseTask; +import org.nl.b_lms.sch.task.dao.mapper.SchBaseTaskMapper; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.WQL; import org.nl.modules.wql.core.bean.WQLObject; @@ -14,18 +16,22 @@ import org.nl.wms.basedata.master.interfaceback.service.dao.InterfaceBack; import org.nl.wms.basedata.master.interfaceback.service.dao.mapper.InterfaceBackMapper; import org.nl.wms.basedata.st.userarea.service.IUserAreaPermissionService; import org.nl.wms.pda.mps.service.ShippingService; +import org.nl.wms.sch.manage.TaskStatusEnum; import org.nl.wms.sch.tasks.CutConveyorTask; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.HashMap; +import java.util.List; @Service @RequiredArgsConstructor @Slf4j public class ShippingServiceImpl implements ShippingService { + @Autowired + private SchBaseTaskMapper schBaseTaskMapper; private final CutConveyorTask cutConveyorTask; @Autowired private InterfaceBackMapper interfaceBackMapper; @@ -102,8 +108,12 @@ public class ShippingServiceImpl implements ShippingService { if (StrUtil.isEmpty(vehicle_code)) { throw new BadRequestException("输入的载具号不能为空!"); } - JSONObject vehicle_task = WQLObject.getWQLObject("sch_base_task").query("vehicle_code2 = '" + vehicle_code + "' AND is_delete = '0' AND task_status < '07'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(vehicle_task)) { + LambdaQueryWrapper lam2 = new LambdaQueryWrapper<>(); + lam2.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getVehicle_code2,vehicle_code); + Integer vehicle_tasks = schBaseTaskMapper.selectCount(lam2); + if (vehicle_tasks >0) { throw new BadRequestException("载具码:" + vehicle_code + "存在未完成的输送线任务!"); } JSONObject del_jo = WQLObject.getWQLObject("st_ivt_deliverypointivt").query("vehicle_code = '" + vehicle_code + "'").uniqueResult(0); @@ -227,24 +237,24 @@ public class ShippingServiceImpl implements ShippingService { //如果为左边点位判断右边是否存在未完成的任务,如果有则提示不能下发 //判断输送出来的任务起点是否靠近分切机,如果靠近分切机且远离分切机的点位上存在载具且不存在任务进行载具横移 char dtl_type = empty_point.getString("point_code").charAt(empty_point.getString("point_code").length() - 1); - /*if (Integer.valueOf(String.valueOf(dtl_type)) % 2 != 0) { - JSONObject right_point = WQLObject.getWQLObject("st_ivt_deliverypointivt").query("point_location = '" + empty_point.getString("point_location") + "' AND product_area = '" + empty_point.getString("product_area") + "' AND sort_seq = '" + empty_point.getString("sort_seq") + "' order by point_code desc").uniqueResult(0); - //判断是否存在任务 - JSONObject task_jo = WQLObject.getWQLObject("sch_base_task").query("(point_code1 = '" + right_point.getString("point_code") + "' OR point_code2 = '" + right_point.getString("point_code") + "') AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(task_jo)) { - throw new BadRequestException(empty_point.getString("point_code") + "所在一截输送线存在未完成的任务,请稍等几分钟后进行下发!"); - } - }*/ //如果终点为靠近分切机的点位,则判断远离分切机的点位是否存在架子且不存在任务。如果为true,则提醒工人进行载具横移 if (Integer.valueOf(String.valueOf(dtl_type)) % 2 != 0) { JSONObject right_point = WQLObject.getWQLObject("st_ivt_deliverypointivt").query("point_location = '" + empty_point.getString("point_location") + "' AND product_area = '" + empty_point.getString("product_area") + "' AND sort_seq = '" + empty_point.getString("sort_seq") + "' order by point_code desc").uniqueResult(0); //判断是否存在任务 - JSONObject task_jo = WQLObject.getWQLObject("sch_base_task").query("(point_code1 = '" + right_point.getString("point_code") + "' OR point_code2 = '" + right_point.getString("point_code") + "') AND task_status < '07' AND is_delete = '0' AND task_type = '010402'").uniqueResult(0); + LambdaQueryWrapper lam3 = new LambdaQueryWrapper<>(); + lam3.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getTask_type,"010402") + .and(la->la.eq(SchBaseTask::getPoint_code1,right_point.getString("point_code")) + .or().eq(SchBaseTask::getPoint_code2,right_point.getString("point_code")) + ); + int tasks = schBaseTaskMapper.selectCount(lam3); + if (!"01".equals(right_point.getString("point_status"))) { throw new BadRequestException(empty_point.getString("point_code") + "所在一截输送线缓存位存在货物,请使用【载具横移】功能将货物横移!"); } - if (ObjectUtil.isNotEmpty(task_jo)) { + if (tasks>0) { throw new BadRequestException(empty_point.getString("point_code") + "所在一截输送线存在未完成的任务,请稍等几分钟后进行下发!"); } } @@ -271,8 +281,16 @@ public class ShippingServiceImpl implements ShippingService { if (Integer.valueOf(String.valueOf(dtl_type)) % 2 == 0) { //如果是右边的任务,判断左边是否存在空载具且没任务,如果存在则把左边的空载具送出 JSONObject left_point = WQLObject.getWQLObject("st_ivt_deliverypointivt").query("point_location = '" + empty_point.getString("point_location") + "' AND product_area = '" + empty_point.getString("product_area") + "' AND sort_seq = '" + empty_point.getString("sort_seq") + "' order by point_code").uniqueResult(0); - JSONObject task_jo = WQLObject.getWQLObject("sch_base_task").query("(point_code1 = '" + left_point.getString("point_code") + "' OR point_code2 = '" + left_point.getString("point_code") + "') AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - if (ObjectUtil.isEmpty(task_jo) && "02".equals(left_point.getString("point_status"))) { + + LambdaQueryWrapper lam3 = new LambdaQueryWrapper<>(); + lam3.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .and(la->la.eq(SchBaseTask::getPoint_code1,left_point.getString("point_code")) + .or().eq(SchBaseTask::getPoint_code2,left_point.getString("point_code")) + ); + int tasks = schBaseTaskMapper.selectCount(lam3); + + if ((tasks==0) && "02".equals(left_point.getString("point_status"))) { //如果查询到给ACS下发一个输送线任务 JSONObject form2 = new JSONObject(); form2.put("point_code1", left_point.getString("point_code")); @@ -305,8 +323,13 @@ public class ShippingServiceImpl implements ShippingService { if (StrUtil.isEmpty(vehicle_code)) { throw new BadRequestException("载具码不能为空!"); } - JSONObject vehicle_task = WQLObject.getWQLObject("sch_base_task").query("vehicle_code2 = '" + vehicle_code + "' AND is_delete = '0' AND task_status < '07'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(vehicle_task)) { + + LambdaQueryWrapper lam2 = new LambdaQueryWrapper<>(); + lam2.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getVehicle_code2,vehicle_code); + Integer vehicle_tasks = schBaseTaskMapper.selectCount(lam2); + if (vehicle_tasks > 0 ) { throw new BadRequestException("载具码:" + vehicle_code + "存在未完成的输送线任务!"); } JSONObject del_jo = WQLObject.getWQLObject("st_ivt_deliverypointivt").query("vehicle_code = '" + vehicle_code + "'").uniqueResult(0); @@ -344,8 +367,18 @@ public class ShippingServiceImpl implements ShippingService { if (Integer.valueOf(String.valueOf(dtl_type)) % 2 != 0) { JSONObject right_point = WQLObject.getWQLObject("st_ivt_deliverypointivt").query("point_location = '" + point_jo.getString("point_location") + "' AND product_area = '" + point_jo.getString("product_area") + "' AND sort_seq = '" + point_jo.getString("sort_seq") + "' order by point_code desc").uniqueResult(0); //判断是否存在任务 - JSONObject task_jo = WQLObject.getWQLObject("sch_base_task").query("(point_code1 = '" + right_point.getString("point_code") + "' OR point_code2 = '" + right_point.getString("point_code") + "') AND task_status < '07' AND is_delete = '0' AND task_type = '010402'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(task_jo)) { + LambdaQueryWrapper lam4 = new LambdaQueryWrapper<>(); + lam4.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getTask_type,"010402") + .and(la->la.eq(SchBaseTask::getPoint_code1,right_point.getString("point_code")) + .or() + .eq(SchBaseTask::getPoint_code2,right_point.getString("point_code")) + ); + + Integer task_jo = schBaseTaskMapper.selectCount(lam4); + + if (task_jo>0) { throw new BadRequestException(point_jo.getString("point_code") + "所在一截输送线存在未完成的任务,请稍等几分钟后进行下发!"); } if (!"01".equals(right_point.getString("point_status"))) { @@ -380,8 +413,16 @@ public class ShippingServiceImpl implements ShippingService { if (ObjectUtil.isEmpty(del_jo)) { throw new BadRequestException("未查询到相关的输送线点位!"); } - JSONObject task_jo = WQLObject.getWQLObject("sch_base_task").query("(point_code1 = '" + point_code + "' OR point_code2 = '" + point_code + "') AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(task_jo)) { + LambdaQueryWrapper lam4 = new LambdaQueryWrapper<>(); + lam4.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .and(la->la.eq(SchBaseTask::getPoint_code1,point_code) + .or() + .eq(SchBaseTask::getPoint_code2,point_code) + ); + + Integer task_jo = schBaseTaskMapper.selectCount(lam4); + if (task_jo>0) { throw new BadRequestException("点位" + point_code + "存在未完成的任务,请先完成任务!"); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/service/impl/CoolInServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/service/impl/CoolInServiceImpl.java index 8b2a4b8..4960ae3 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/service/impl/CoolInServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/st/service/impl/CoolInServiceImpl.java @@ -5,8 +5,11 @@ import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.nl.b_lms.sch.task.dao.SchBaseTask; +import org.nl.b_lms.sch.task.dao.mapper.SchBaseTaskMapper; import org.nl.common.utils.SecurityUtils; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.WQL; @@ -18,6 +21,8 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.List; + /** * @author liuxy * @description 服务实现 @@ -29,6 +34,8 @@ import org.springframework.transaction.annotation.Transactional; public class CoolInServiceImpl implements CoolInService { @Autowired IUserAreaPermissionService userAreaPermissionService; + @Autowired + private SchBaseTaskMapper schBaseTaskMapper; @Override public JSONObject coolIOQuery(JSONObject whereJson, HttpContext ctx) { String container_name = whereJson.getString("container_name"); @@ -74,8 +81,14 @@ public class CoolInServiceImpl implements CoolInService { } //查询该点位是否存在任务 - JSONObject task_jo = WQLObject.getWQLObject("sch_base_task").query("(point_code1 like '%" + jsonCoolIvt.getString("point_code") + "%' OR point_code2 like '%" + jsonCoolIvt.getString("point_code") + "%') AND is_delete = '0' AND task_status < '07'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(task_jo)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getIs_delete, "0") + .lt(SchBaseTask::getTask_status, "07") + .and(la->la.like(SchBaseTask::getPoint_code1, jsonCoolIvt.getString("point_code")) + .or() + .like(SchBaseTask::getPoint_code2,jsonCoolIvt.getString("point_code"))); + Integer tasks = schBaseTaskMapper.selectCount(lam); + if (tasks>0) { throw new BadRequestException("该点位存在未完成的任务,不允许绑定!"); } // 校验母卷号是否已存在 diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pda/task/service/impl/PdaTaskServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pda/task/service/impl/PdaTaskServiceImpl.java index 0a4f17f..c686f6d 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pda/task/service/impl/PdaTaskServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pda/task/service/impl/PdaTaskServiceImpl.java @@ -7,6 +7,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.nl.b_lms.sch.task.dao.SchBaseTask; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.WQL; import org.nl.modules.wql.core.bean.WQLObject; @@ -31,6 +32,8 @@ public class PdaTaskServiceImpl implements PdaTaskService { @Autowired private WmsToAcsService wmsToAcsService; @Autowired + private TaskService taskService; + @Autowired IUserAreaPermissionService userAreaPermissionService; @Override public JSONObject taskQuery(JSONObject whereJson) { @@ -58,20 +61,17 @@ public class PdaTaskServiceImpl implements PdaTaskService { @Override @Transactional(rollbackFor = Exception.class) public JSONObject againLssued(JSONObject whereJson) { - WQLObject tab = WQLObject.getWQLObject("SCH_BASE_Task"); JSONObject task_rows = whereJson.getJSONObject("task_rows"); - JSONObject jsonTask = tab.query("task_code = '" + task_rows.getString("task_code") + "'").uniqueResult(0); - jsonTask.put("method_name", "immediateNotifyAcs"); + SchBaseTask jsonTask = taskService.findByCode(task_rows.getString("task_code")); + jsonTask.setMethod_name("immediateNotifyAcs"); - if (StrUtil.equals(jsonTask.getString("task_status"), "07") || StrUtil.equals(jsonTask.getString("task_status"), "06")) { + if (StrUtil.equals(jsonTask.getTask_status(), "07") || StrUtil.equals(jsonTask.getTask_status(), "06")) { throw new BadRequestException("任务已完成或正在执行中"); } - SpringContextHolder.getBean(TaskService.class).operation(jsonTask); - - jsonTask.put("task_status", "05"); - tab.update(jsonTask); - + taskService.operation(jsonTask); + jsonTask.setTask_status("05"); + taskService.update(jsonTask); JSONObject result = new JSONObject(); result.put("message", "下发成功"); return result; @@ -79,16 +79,14 @@ public class PdaTaskServiceImpl implements PdaTaskService { @Override public JSONObject confirm(JSONObject whereJson) { - WQLObject tab = WQLObject.getWQLObject("SCH_BASE_Task"); JSONObject task_rows = whereJson.getJSONObject("task_rows"); - JSONObject jsonTask = tab.query("task_code = '" + task_rows.getString("task_code") + "'").uniqueResult(0); - jsonTask.put("method_name", "forceFinish"); - if (StrUtil.equals(jsonTask.getString("task_status"), "07")) { + SchBaseTask jsonTask = taskService.findByCode(task_rows.getString("task_code")); + jsonTask.setMethod_name("forceFinish"); + if (StrUtil.equals(jsonTask.getTask_status(), "07")) { throw new BadRequestException("任务已完成"); } - SpringContextHolder.getBean(TaskService.class).operation(jsonTask); - + taskService.operation(jsonTask); JSONObject result = new JSONObject(); result.put("message", "操作完成"); return result; diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/pdm/service/impl/RawfoilworkorderServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/pdm/service/impl/RawfoilworkorderServiceImpl.java index 38cc543..bcd89f1 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/pdm/service/impl/RawfoilworkorderServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/pdm/service/impl/RawfoilworkorderServiceImpl.java @@ -8,8 +8,11 @@ import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.nl.b_lms.sch.task.dao.SchBaseTask; +import org.nl.b_lms.sch.task.dao.mapper.SchBaseTaskMapper; import org.nl.common.utils.SecurityUtils; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.wql.WQL; @@ -18,6 +21,7 @@ import org.nl.modules.wql.util.WqlUtil; import org.nl.wms.basedata.st.userarea.service.IUserAreaPermissionService; import org.nl.wms.pdm.service.RawfoilworkorderService; import org.nl.wms.pdm.service.dto.RawfoilworkorderDto; +import org.nl.wms.sch.manage.TaskStatusEnum; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; @@ -37,6 +41,8 @@ import java.util.Map; public class RawfoilworkorderServiceImpl implements RawfoilworkorderService { @Autowired IUserAreaPermissionService userAreaPermissionService; + @Autowired + private SchBaseTaskMapper schBaseTaskMapper; @Override public Map queryAll(Map whereJson, Pageable page) { String product_area = MapUtil.getStr(whereJson, "product_area"); @@ -216,8 +222,12 @@ public class RawfoilworkorderServiceImpl implements RawfoilworkorderService { //查询该生箔工单是否存在未完成的任务 String container_name = whereJson.getString("container_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.isNotEmpty(task_jo)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getMaterial_code,container_name); + int task_jos = schBaseTaskMapper.selectCount(lam); + if (task_jos>0) { throw new BadRequestException("该生箔工单存在未完成的任务,请先完成任务!"); } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/AcsUtil.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/AcsUtil.java index 5b65d7b..36f22f2 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/AcsUtil.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/AcsUtil.java @@ -4,18 +4,23 @@ import cn.hutool.core.util.StrUtil; import cn.hutool.http.HttpRequest; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import lombok.extern.slf4j.Slf4j; +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.task.service.TaskService; +import org.nl.b_lms.sch.task.service.impl.TaskServiceImpl; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.logging.annotation.InterfaceLog; -import org.nl.modules.wql.core.bean.WQLObject; import org.nl.modules.wql.util.SpringContextHolder; import org.nl.system.service.param.impl.SysParamServiceImpl; import org.nl.wms.sch.manage.TaskStatusEnum; import org.nl.wms.sch.tasks.URLEnum; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Component; - -import java.util.HashMap; +import java.util.ArrayList; +import java.util.List; /** * ACS连接工具类: @@ -23,6 +28,7 @@ import java.util.HashMap; @Slf4j @Component public class AcsUtil { + public static JSONObject notifyAcs(String api, JSONArray list) { AcsUtil bean = SpringContextHolder.getBean(AcsUtil.class); JSONObject jsonObject = bean.notifyAcs3(api, list); @@ -83,12 +89,15 @@ public class AcsUtil { } else { //如果向ACS下发任务,变更任务状态为下发 if ("api/wms/task".equals(api)) { + List lists = new ArrayList<>(); for (int i = 0; i < list.size(); i++) { JSONObject task_jo = list.getJSONObject(i); - HashMap map = new HashMap<>(); - map.put("task_status", TaskStatusEnum.ISSUE.getCode()); - WQLObject.getWQLObject("SCH_BASE_Task").update(map, "task_id = '" + task_jo.getString("ext_task_id") + "'"); + lists.add(task_jo.getString("ext_task_id")); } + LambdaUpdateWrapper lam = new LambdaUpdateWrapper<>(); + lam.in(SchBaseTask::getTask_id,lists); + lam.set(SchBaseTask::getTask_status,TaskStatusEnum.ISSUE.getCode()); + SpringContextHolder.getBean(TaskServiceImpl.class).update(lam); } } @@ -147,12 +156,15 @@ public class AcsUtil { } else { //如果向ACS下发任务,变更任务状态为下发 if ("api/wms/task".equals(api)) { + List lists = new ArrayList<>(); for (int i = 0; i < list.size(); i++) { JSONObject task_jo = list.getJSONObject(i); - HashMap map = new HashMap<>(); - map.put("task_status", TaskStatusEnum.ISSUE.getCode()); - WQLObject.getWQLObject("SCH_BASE_Task").update(map, "task_id = '" + task_jo.getString("ext_task_id") + "'"); + lists.add(task_jo.getString("ext_task_id")); } + LambdaUpdateWrapper lam = new LambdaUpdateWrapper<>(); + lam.in(SchBaseTask::getTask_id,lists); + lam.set(SchBaseTask::getTask_status,TaskStatusEnum.ISSUE.getCode()); + SpringContextHolder.getBean(TaskServiceImpl.class).update(lam); } } return result; diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CoolCutTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CoolCutTask.java index 956cc97..2b58059 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CoolCutTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CoolCutTask.java @@ -494,12 +494,17 @@ public class CoolCutTask extends AbstractAcsTask { //判断该点位是否存在未完成的任务 public boolean isSingleTask(String point_code) { - JSONObject task1 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code1 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - JSONObject task2 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code2 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - JSONObject task3 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code3 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - JSONObject task4 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code4 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - - if (ObjectUtil.isNotEmpty(task1) || ObjectUtil.isNotEmpty(task2) || ObjectUtil.isNotEmpty(task3) || ObjectUtil.isNotEmpty(task4)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .and(la->la.eq(SchBaseTask::getPoint_code1,point_code) + .or().eq(SchBaseTask::getPoint_code2,point_code) + .or().eq(SchBaseTask::getPoint_code3,point_code) + .or().eq(SchBaseTask::getPoint_code4,point_code) + ); + int tasks = schBaseTaskMapper.selectCount(lam); + + if (tasks > 0) { return true; } else { return false; diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutConveyorTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutConveyorTask.java index 46d05cf..c2cbffb 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutConveyorTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutConveyorTask.java @@ -102,10 +102,10 @@ public class CutConveyorTask extends AbstractAcsTask { jsonTask.setUpdate_id(SecurityUtils.getCurrentUserId()); jsonTask.setUpdate_name(SecurityUtils.getCurrentNickName()); jsonTask.setUpdate_time(DateUtil.now()); - schBaseTaskMapper.updateById(jsonTask); - //初始化任务开始前分切计划的状态 if ("010402".equals(jsonTask.getTask_type()) && StrUtil.isNotEmpty(jsonTask.getVehicle_code())) { + schBaseTaskMapper.updateById(jsonTask); + //更新该气涨轴对应的分切计划状态 HashMap map = new HashMap(); map.put("flag", "601"); @@ -358,33 +358,50 @@ public class CutConveyorTask extends AbstractAcsTask { //如果载具横移完成时,判断该气涨轴对应的分切机是否存在出站中的,且终点为空,状态为02的任务,则把该分切机的终点补上,状态改为04并下发 if (StrUtil.isNotEmpty(jsonTask.getVehicle_code())) { - JSONObject task_jo = WQLObject.getWQLObject("sch_base_task").query("vehicle_code = '" + jsonTask.getVehicle_code() + "' AND is_delete = '0' AND task_status < '07'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(task_jo)) { - if ("010405".equals(task_jo.getString("task_type"))) { + + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getVehicle_code, jsonTask.getVehicle_code() + ); + List task_jos = schBaseTaskMapper.selectList(lam); + + + if (task_jos.size() >0) { + SchBaseTask task_jo = task_jos.get(0); + if ("010405".equals(task_jo.getTask_type())) { //入站 - task_jo.put("task_status", TaskStatusEnum.START_AND_POINT.getCode()); - task_jo.put("point_code1", point_code2); + task_jo.setTask_status(TaskStatusEnum.START_AND_POINT.getCode()); + task_jo.setPoint_code1(point_code2); } - if ("010403".equals(task_jo.getString("task_type"))) { + if ("010403".equals(task_jo.getTask_type())) { //出站 - task_jo.put("task_status", TaskStatusEnum.START_AND_POINT.getCode()); - task_jo.put("point_code1", point_code2); - task_jo.put("point_code4", point_code2); + task_jo.setTask_status(TaskStatusEnum.START_AND_POINT.getCode()); + task_jo.setPoint_code1(point_code2); + task_jo.setPoint_code4(point_code2); } - WQLObject.getWQLObject("sch_base_task").update(task_jo); + schBaseTaskMapper.updateById(task_jo); new CutTrussTask().immediateNotifyAcs(null); } } else { if (StrUtil.isNotEmpty(jsonTask.getVehicle_code2())) { //如果载具横移完成时,判断该空载具是否存在对应终点为空的末次下卷或者废箔下卷任务 - JSONObject task_jo2 = WQLObject.getWQLObject("sch_base_task").query("vehicle_code2 = '" + jsonTask.getVehicle_code2() + "' AND is_delete = '0' AND task_status = '02'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(task_jo2)) { - if ("010404".equals(task_jo2.getString("task_type"))) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getTask_status, TaskStatusEnum.SURE_START.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getVehicle_code2, jsonTask.getVehicle_code2() + ); + List task_jo2s = schBaseTaskMapper.selectList(lam); + + + if (task_jo2s.size()>0) { + SchBaseTask task_jo2 = task_jo2s.get(0); + if ("010404".equals(task_jo2.getTask_type())) { //出站 - task_jo2.put("task_status", TaskStatusEnum.START_AND_POINT.getCode()); - task_jo2.put("point_code2", point_code2); - WQLObject.getWQLObject("sch_base_task").update(task_jo2); + task_jo2.setTask_status(TaskStatusEnum.START_AND_POINT.getCode()); + task_jo2.setPoint_code2(point_code2); + schBaseTaskMapper.updateById(task_jo2); new CutTrussTask().immediateNotifyAcs(null); } } @@ -468,12 +485,18 @@ public class CutConveyorTask extends AbstractAcsTask { //判断该点位是否存在未完成的任务 public boolean isSingleTask(String point_code) { - JSONObject task1 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code1 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - JSONObject task2 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code2 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - JSONObject task3 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code3 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - JSONObject task4 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code4 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(task1) || ObjectUtil.isNotEmpty(task2) || ObjectUtil.isNotEmpty(task3) || ObjectUtil.isNotEmpty(task4)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.lt(SchBaseTask::getTask_status, TaskStatusEnum.FINISHED.getCode()) + .eq(SchBaseTask::getIs_delete, "0") + .and(la->la.eq(SchBaseTask::getPoint_code1,point_code) + .or().eq(SchBaseTask::getPoint_code2,point_code) + .or().eq(SchBaseTask::getPoint_code3,point_code) + .or().eq(SchBaseTask::getPoint_code4,point_code) + ); + int tasks = schBaseTaskMapper.selectCount(lam); + + if (tasks > 0) { return true; } else { return false; diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutTrussTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutTrussTask.java index 2ebf32c..d188bc3 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutTrussTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/CutTrussTask.java @@ -340,14 +340,20 @@ public class CutTrussTask extends AbstractAcsTask { .addParam("flag", "18").process().uniqueResult(0); if (ObjectUtil.isNotEmpty(right_point)) { //判断对应缓存位是否存在需要末次下卷或者废箔下卷的任务 - JSONObject task_jo = WQLObject.getWQLObject("sch_base_task").query("vehicle_code2 = '" + right_point.getString("vehicle_code") + "' AND is_delete = '0' AND task_status = '02'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(task_jo)) { - if ("010404".equals(task_jo.getString("task_type"))) { + LambdaQueryWrapper lam2 = new LambdaQueryWrapper<>(); + lam2.eq(SchBaseTask::getVehicle_code2, right_point.getString("vehicle_code") ) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getTask_status,"02"); + List task_jos = schBaseTaskMapper.selectList(lam2); + + if (task_jos.size()>0) { + SchBaseTask task_jo = task_jos.get(0); + if ("010404".equals(task_jo.getTask_type())) { //出站 - task_jo.put("task_status", TaskStatusEnum.START_AND_POINT.getCode()); - task_jo.put("point_code2", jsonTask.getPoint_code1()); - task_jo.put("vehicle_code2", delivery_point.getString("vehicle_code")); - WQLObject.getWQLObject("sch_base_task").update(task_jo); + task_jo.setTask_status(TaskStatusEnum.START_AND_POINT.getCode()); + task_jo.setPoint_code2(jsonTask.getPoint_code1()); + task_jo.setVehicle_code2(delivery_point.getString("vehicle_code")); + schBaseTaskMapper.updateById(task_jo); new CutTrussTask().immediateNotifyAcs(null); } } diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/InTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/InTask.java index 2df9cf6..3b12c20 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/InTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/InTask.java @@ -83,10 +83,12 @@ public class InTask extends AbstractAcsTask { String currentUserId = SecurityUtils.getCurrentUserId(); String nickName = SecurityUtils.getCurrentNickName(); String now = DateUtil.now(); - HashMap map = new HashMap(); + + String task_id = taskObj.getTask_id(); + SchBaseTask jsonTask = schBaseTaskMapper.selectById(task_id); //1:执行中,2:完成 ,0:acs取消 if (status.equals(TaskStatusEnum.EXECUTING.getCode())) { - map.put("task_status", TaskStatusEnum.EXECUTING.getCode()); + jsonTask.setTask_status(TaskStatusEnum.EXECUTING.getCode()); //更新入库单分配任务状态 HashMap dis_map = new HashMap(); dis_map.put("work_status", "02"); @@ -94,7 +96,7 @@ public class InTask extends AbstractAcsTask { WQLObject.getWQLObject("ST_IVT_IOStorInvDis").update(dis_map, "task_id = '" + taskObj.getTask_id() + "'"); } if (status.equals(TaskStatusEnum.FINISHED.getCode())) { - map.put("task_status", TaskStatusEnum.FINISHED.getCode()); + jsonTask.setTask_status(TaskStatusEnum.FINISHED.getCode()); //调用入库分配确认方法 InbillServiceImpl inbillService = SpringContextHolder.getBean(InbillServiceImpl.class); JSONObject dis_form = new JSONObject(); @@ -109,7 +111,7 @@ public class InTask extends AbstractAcsTask { } // 更新任务表删除字段 - map.put("is_delete", "1"); + jsonTask.setIs_delete("1"); JSONObject jsonDis = disTab.query("task_id ='" +taskObj.getTask_id() + "'").uniqueResult(0); if (ObjectUtil.isEmpty(jsonDis)) { @@ -189,10 +191,10 @@ public class InTask extends AbstractAcsTask { disMap.put("struct_name", ""); disTab.update(disMap, "task_id = '" + taskObj.getTask_id() + "'"); } - map.put("update_optid", currentUserId); - map.put("update_optname", nickName); - map.put("update_time", now); - WQLObject.getWQLObject("SCH_BASE_Task").update(map, "task_id = '" + taskObj.getTask_id() + "'"); + jsonTask.setUpdate_id(SecurityUtils.getCurrentUserId()); + jsonTask.setUpdate_name(SecurityUtils.getCurrentNickName()); + jsonTask.setUpdate_time(DateUtil.now()); + schBaseTaskMapper.updateById(jsonTask); } @Override diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/OutHotTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/OutHotTask.java index 2a203c0..f034372 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/OutHotTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/OutHotTask.java @@ -76,7 +76,6 @@ public class OutHotTask extends AbstractAcsTask { @Override @Transactional(rollbackFor = Exception.class) public void updateTaskStatus(SchBaseTask taskObj, String status) { - WQLObject taskTab = WQLObject.getWQLObject("SCH_BASE_Task"); // 任务表 WQLObject pointTab = WQLObject.getWQLObject("sch_base_point"); // 点位表 WQLObject hotIvtTab = WQLObject.getWQLObject("ST_IVT_HotPointIvt"); // 烘箱区库存表 WQLObject hotMstTab = WQLObject.getWQLObject("ST_IVT_HotRegionIOMst"); // 烘箱区出入主表 diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/PaperTubeTask.java b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/PaperTubeTask.java index 08d68ae..b6d1cf1 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/PaperTubeTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/PaperTubeTask.java @@ -129,8 +129,14 @@ public class PaperTubeTask extends AbstractAcsTask { //判断当前RGV上是否存在未拔轴的成品卷 JSONObject rgv_jo = WQLObject.getWQLObject("st_ivt_shaftivt").query("point_type = '5' AND product_area = '" + product_area + "'").uniqueResult(0); //判断是否存在未完成的成品下卷任务 - JSONObject container_jo = WQLObject.getWQLObject("sch_base_task").query("task_type = '010605' AND product_area = '"+product_area+"' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - if ("0".equals(have_qzz) && "0".equals(rgv_jo.getString("have_qzz")) && ObjectUtil.isEmpty(container_jo)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getTask_type, "010605") + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getProduct_area,product_area) + .lt(SchBaseTask::getTask_status,TaskStatusEnum.FINISHED.getCode()); + + Integer container_jos = schBaseTaskMapper.selectCount(lam); + if ("0".equals(have_qzz) && "0".equals(rgv_jo.getString("have_qzz")) && (container_jos ==0)) { PaperTrussTask paperTrussTask = SpringContextHolder.getBean(PaperTrussTask.class); //todo:创建桁架任务搬运一个符合的气涨轴 JSONObject jo = new JSONObject(); @@ -151,8 +157,13 @@ public class PaperTubeTask extends AbstractAcsTask { if ("1".equals(have_qzz)) { String device_code = cbz_jo.getString("point_code"); //判断是否存在任务 - JSONObject paper_jo = WQLObject.getWQLObject("sch_base_task").query("point_code1 = '" + device_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); - if (ObjectUtil.isEmpty(paper_jo)) { + LambdaQueryWrapper lam2 = new LambdaQueryWrapper<>(); + lam2.lt(SchBaseTask::getTask_status, "07") + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getPoint_code1, device_code); + List paper_jos = schBaseTaskMapper.selectList(lam2); + + if (paper_jos.size()==0) { //给穿拔轴机下发套轴 WmsToAcsService wmsToAcsService = SpringContextHolder.getBean(WmsToAcsService.class); JSONArray action_rows = new JSONArray(); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/impl/RawAssistIStorServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/impl/RawAssistIStorServiceImpl.java index bb6ebdc..01ba710 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/impl/RawAssistIStorServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/impl/RawAssistIStorServiceImpl.java @@ -2440,7 +2440,6 @@ public class RawAssistIStorServiceImpl implements RawAssistIStorService { @Transactional(rollbackFor = Exception.class) public void delTask(Map whereJson) { WQLObject dis_wql = WQLObject.getWQLObject("ST_IVT_IOStorInvDis"); - WQLObject task_wql = WQLObject.getWQLObject("SCH_BASE_Task"); WQLObject point_table = WQLObject.getWQLObject("SCH_BASE_Point"); String currentUserId = SecurityUtils.getCurrentUserId(); @@ -2448,13 +2447,15 @@ public class RawAssistIStorServiceImpl implements RawAssistIStorService { String now = DateUtil.now(); //更新任务表状态为删除 - HashMap task_map = new HashMap<>(); - task_map.put("is_delete", "1"); - task_map.put("update_optid", currentUserId); - task_map.put("update_optname", nickName); - task_map.put("update_time", now); + LambdaUpdateWrapper lam = new LambdaUpdateWrapper<>(); + lam.eq(SchBaseTask::getTask_id, whereJson.get("task_id")); + + lam.set(SchBaseTask::getIs_delete, "1"); + lam.set(SchBaseTask::getUpdate_id, currentUserId); + lam.set(SchBaseTask::getUpdate_name, nickName); + lam.set(SchBaseTask::getUpdate_time, now); //修改分配表起点,任务表起点 - task_wql.update(task_map, "task_id = '" + whereJson.get("task_id") + "'"); + schBaseTaskMapper.update(null,lam); //解锁原货位点位 HashMap unlock_map = new HashMap(); @@ -2517,7 +2518,7 @@ public class RawAssistIStorServiceImpl implements RawAssistIStorService { //修改明细状态 HashMap dtl_map = new HashMap<>(); - map.put("bill_status", "10"); + dtl_map.put("bill_status", "10"); WQLObject.getWQLObject("ST_IVT_IOStorInvDtl").update(map, "iostorinv_id = '" + mst_jo.get("iostorinv_id") + "' AND box_no = '" + whereJson.get("box_no") + "'"); //更新主表状态 @@ -2535,11 +2536,11 @@ public class RawAssistIStorServiceImpl implements RawAssistIStorService { public void reIssueTask(Map whereJson) { String task_id = (String) whereJson.get("task_id"); //判断指令状态,只能下发生成、执行中状态的任务 - JSONObject task_jo = WQLObject.getWQLObject("sch_base_task").query("task_id = '" + task_id + "'").uniqueResult(0); + SchBaseTask task_jo = schBaseTaskMapper.selectById(task_id); if (ObjectUtil.isEmpty(task_jo)) { throw new BadRequestException("请输入正确的任务号!"); } - if (!"04".equals(task_jo.getString("task_status"))) { + if (!"04".equals(task_jo.getTask_status())) { throw new BadRequestException("只能修改任务状态为未下发的任务!"); } AbstractAcsTask task = new InTask(); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/instor/movestor/service/impl/HandMoveStorServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/st/instor/movestor/service/impl/HandMoveStorServiceImpl.java index a2a202e..3f83157 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/instor/movestor/service/impl/HandMoveStorServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/instor/movestor/service/impl/HandMoveStorServiceImpl.java @@ -719,8 +719,6 @@ public class HandMoveStorServiceImpl extends ServiceImpl lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getPoint_code1, jodtl.getTurnout_struct_code()) + .eq(SchBaseTask::getIs_delete, "0") + .eq(SchBaseTask::getTask_status,"04"); + List tasks = schBaseTaskMapper.selectList(lam); + SchBaseTask tasknow = new SchBaseTask(); + if (tasks.size()>0) { + tasknow = tasks.get(0); + jodtl.setTask_id(tasknow.getTask_id()); } else { - task = new JSONObject(); + JSONObject task = new JSONObject(); String task_id = IdUtil.getSnowflake(1, 1).nextId() + ""; String task_code = IdUtil.getSnowflake(1, 1).nextId() + ""; @@ -819,7 +823,9 @@ public class HandMoveStorServiceImpl extends ServiceImpl task_map = new HashMap<>(); - task_map.put("task_status", TaskStatusEnum.FINISHED.getCode()); - task_map.put("update_optid", currentUserId + ""); - task_map.put("update_optname", nickName); - task_map.put("update_time", now); - wo_Task.update(task_map, "task_id='" + jodtl.getTask_id() + "'"); + SchBaseTask taskmap = schBaseTaskMapper.selectById(jodtl.getTask_id()); + taskmap.setTask_status(TaskStatusEnum.FINISHED.getCode()); + taskmap.setUpdate_id(currentUserId + ""); + taskmap.setUpdate_name(nickName); + taskmap.setUpdate_time(now); + schBaseTaskMapper.updateById(taskmap); + //解锁起点点位、仓位,清除载具 JSONObject from_start = new JSONObject(); from_start.put("lock_type", "1"); @@ -1156,8 +1161,6 @@ public class HandMoveStorServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper(); - queryWrapper.eq(Structattr::getStruct_code, jsonTask.getString("point_code1")) + queryWrapper.eq(Structattr::getStruct_code, jsonTask.getPoint_code1()) .eq(Structattr::getIs_delete, "0"); Structattr jsonAttr = structattrMapper.selectOne(queryWrapper); @@ -1192,9 +1195,9 @@ public class HandMoveStorServiceImpl extends ServiceImpl lamdtl = new LambdaUpdateWrapper(); lamdtl.eq(MoveStorDtl::getIs_issued,"0"); - lamdtl.eq(MoveStorDtl::getTask_id,task.getString("task_id")); + lamdtl.eq(MoveStorDtl::getTask_id,task.getTask_id()); //更新 lamdtl.set(MoveStorDtl::getIs_issued,"1"); lamdtl.set(MoveStorDtl::getWork_status,"02"); moveStorDtlMapper.update(null,lamdtl); //更新任务为已下发 - HashMap map = new HashMap<>(); - map.put("task_status", TaskStatusEnum.ISSUE.getCode()); - map.put("update_optid", currentUserId + ""); - map.put("update_optname", nickName); - map.put("update_time", now); - wo_Task.update(map, "is_delete ='0' and task_id='" + task_id + "'"); + SchBaseTask tasks = schBaseTaskMapper.selectById(task_id); + tasks.setTask_status(TaskStatusEnum.ISSUE.getCode()); + tasks.setUpdate_id(currentUserId + ""); + tasks.setUpdate_name(nickName); + tasks.setUpdate_time(now); + schBaseTaskMapper.updateById(tasks); } else { throw new BadRequestException("任务下发失败,请稍后重试!"); } @@ -1558,8 +1561,6 @@ public class HandMoveStorServiceImpl extends ServiceImpl needMoveList = (List) whereJson.get("needMoveList"); @@ -1627,11 +1628,11 @@ public class HandMoveStorServiceImpl extends ServiceImpl Integer.valueOf(TaskStatusEnum.START_AND_POINT.getCode())) { - throw new BadRequestException("任务:" + jsonTask.getString("task_code") + "已下发,不可取消"); + if (Integer.valueOf(jsonTask.getTask_status()) > Integer.valueOf(TaskStatusEnum.START_AND_POINT.getCode())) { + throw new BadRequestException("任务:" + jsonTask.getTask_code() + "已下发,不可取消"); } // 更新分配明细 任务状态、清空任务id @@ -906,9 +910,9 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { disTab.update(paramMap, "task_id = '" + task_id + "'"); // 删除此任务 - JSONObject paramMap2 = new JSONObject(); - paramMap2.put("is_delete", "1"); - taskTab.update(paramMap2, "task_id = '" + task_id + "'"); + SchBaseTask task = schBaseTaskMapper.selectById(task_id); + task.setIs_delete("1"); + schBaseTaskMapper.updateById(task); } @Override @@ -1920,7 +1924,6 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { } // 放在插入分配明细的集合当中 instDisList.add(dtl); - // wo_dis.insert(dtl); } //记录需锁定的仓位 Struct_map.put(ivt.getString("struct_id"), ivt); @@ -2369,8 +2372,6 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { WQLObject wo_dtl = WQLObject.getWQLObject("ST_IVT_IOStorInvDtl"); //出库主表 WQLObject wo_mst = WQLObject.getWQLObject("ST_IVT_IOStorInv"); - //任务表 - WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task"); String iostorinv_id = whereJson.getString("iostorinv_id"); //查询主表信息 @@ -2391,7 +2392,6 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { } for (int i = 0; i < diss.size(); i++) { JSONObject dis = diss.getJSONObject(i); - HashMap map = new HashMap<>(); String iostorinvdtl_id = dis.getString("iostorinvdtl_id"); //统计【出入库单分配表】执行状态大于等于执行中,或【任务指令表】任务状态大于等于下发时的记录和 @@ -2450,15 +2450,20 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { //任务号不为空 if (ObjectUtil.isNotEmpty(dis.getString("task_id"))) { // 判断是否有移库的任务:有就取消掉 - JSONObject jsonTask = wo_Task.query("task_id = '" + dis.getString("task_id") + "'").uniqueResult(0); + SchBaseTask jsonTask = schBaseTaskMapper.selectById( dis.getString("task_id")); if (ObjectUtil.isNotEmpty(jsonTask)) { - JSONArray moveArrTask = wo_Task.query("task_group_id = '" + jsonTask.getString("task_group_id") + "' and task_type = '010505'").getResultJSONArray(0); + + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getTask_group_id, jsonTask.getTask_group_id()) + .eq(SchBaseTask::getTask_type,"010505") + .eq(SchBaseTask::getIs_delete, "0"); + List moveArrTask = schBaseTaskMapper.selectList(lam); for (int j = 0; j < moveArrTask.size(); j++) { - JSONObject jsonMoveTask = moveArrTask.getJSONObject(j); + SchBaseTask jsonMoveTask = moveArrTask.get(j); // 调用删除移库单 List jsonMoveDtl = moveStorDtlMapper.selectList(new LambdaQueryWrapper() - .eq(MoveStorDtl::getTask_id, jsonMoveTask.getString("task_id"))); + .eq(MoveStorDtl::getTask_id, jsonMoveTask.getTask_id())); if (jsonMoveDtl.size()>0) { MoveStor jsonMoveMst = moveStorMapper.selectOne(new LambdaQueryWrapper() @@ -2474,8 +2479,9 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { } //更新对应任务为删除 - map.put("is_delete", "1"); - wo_Task.update(map, "task_id='" + dis.getString("task_id") + "'"); + SchBaseTask dtltask = schBaseTaskMapper.selectById(dis.getString("task_id")); + dtltask.setIs_delete("1"); + schBaseTaskMapper.updateById(dtltask); } //解锁起点仓位点位 @@ -2504,8 +2510,6 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { WQLObject wo_dtl = WQLObject.getWQLObject("ST_IVT_IOStorInvDtl"); //出库主表 WQLObject wo_mst = WQLObject.getWQLObject("ST_IVT_IOStorInv"); - //任务表 - WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task"); String iostorinv_id = whereJson.getString("iostorinv_id"); //查询主表信息 @@ -2586,8 +2590,9 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { //任务号不为空 if (ObjectUtil.isNotEmpty(dis.getString("task_id"))) { //更新对应任务为删除 - map.put("is_delete", "1"); - wo_Task.update(map, "task_id='" + dis.getString("task_id") + "'"); + SchBaseTask dtltask = schBaseTaskMapper.selectById(dis.getString("task_id")); + dtltask.setIs_delete("1"); + schBaseTaskMapper.updateById(dtltask); } //解锁起点仓位点位: 判断此仓位是否还有库存 List ivtList = WQLObject.getWQLObject("st_ivt_structivt") @@ -2623,8 +2628,6 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { WQLObject wo_dis = WQLObject.getWQLObject("ST_IVT_IOStorInvDis"); //点位表 WQLObject wo_Point = WQLObject.getWQLObject("SCH_BASE_Point"); - //任务表 - WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task"); //出库主表 WQLObject wo_mst = WQLObject.getWQLObject("ST_IVT_IOStorInv"); //仓位表 @@ -2723,9 +2726,10 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { new HandMoveStorAcsTask().immediateNotifyAcs(null); // 更新任务为下发 - JSONObject param = new JSONObject(); - param.put("task_status", TaskStatusEnum.ISSUE.getCode()); - wo_Task.update(param, "task_group_id = '" + moveParam.getString("task_group_id") + "'"); + LambdaUpdateWrapper lam2 = new LambdaUpdateWrapper<>(); + lam2.eq(SchBaseTask::getTask_group_id, moveParam.getString("task_group_id")); + lam2.set(SchBaseTask::getTask_status,TaskStatusEnum.ISSUE.getCode()); + schBaseTaskMapper.update(null, lam2); } } } @@ -2752,8 +2756,6 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { public void rowDispose(JSONObject jsonRow, Consumer allTransactionConsumer) { //出库分配表 WQLObject wo_dis = WQLObject.getWQLObject("ST_IVT_IOStorInvDis"); - //任务表 - WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task"); // 仓位表 WQLObject attr_tab = WQLObject.getWQLObject("st_ivt_structattr"); // 点位表 @@ -3073,10 +3075,10 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { String create_task_id = outTask.createTask(param); // 更新分配状态、任务标识、出库点位 - JSONObject jsonTask = wo_Task.query("task_id = '" + create_task_id + "'").uniqueResult(0); + SchBaseTask jsonTask = schBaseTaskMapper.selectById(create_task_id); JSONObject jsonUpdateMap = new JSONObject(); jsonUpdateMap.put("work_status", "01"); - jsonUpdateMap.put("task_id", jsonTask.getLong("task_id")); + jsonUpdateMap.put("task_id", jsonTask.getTask_id()); jsonUpdateMap.put("point_id", point_id); wo_dis.update(jsonUpdateMap, "iostorinvdis_id = '" + jsonObject.getString("iostorinvdis_id") + "'"); @@ -3090,20 +3092,20 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { for (int n = 0; n < disArr.size(); n++) { JSONObject jsonObject2 = disArr.getJSONObject(n); jsonObject2.put("work_status", "01"); - jsonObject2.put("task_id", jsonTask.getLong("task_id")); + jsonObject2.put("task_id",jsonTask.getTask_id()); jsonObject2.put("point_id", point_id); wo_dis.update(jsonObject2); } // 更新出库任务:任务组和顺序号 JSONObject jsonTaskLast1 = WQL.getWO("QST_IVT_CHECKOUTBILL").addParam("flag", "13").addParam("task_group_id", task_group_id + "").process().uniqueResult(0); - jsonTask.put("task_group_id", task_group_id); + jsonTask.setTask_group_id(String.valueOf(task_group_id)); if (ObjectUtil.isEmpty(jsonTaskLast1)) { - jsonTask.put("sort_seq", 1); + jsonTask.setSort_seq(1); } else { - jsonTask.put("sort_seq", jsonTaskLast1.getIntValue("sort_seq") + 1); + jsonTask.setSort_seq(jsonTaskLast1.getIntValue("sort_seq") + 1); } - wo_Task.update(jsonTask); + schBaseTaskMapper.updateById(jsonTask); outTask.immediateNotifyAcs(null); /* @@ -3146,10 +3148,10 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { outTask.immediateNotifyAcs(null); // 更新分配状态、任务标识、出库点位 - JSONObject jsonTask2 = wo_Task.query("task_id = '" + create_task_id2 + "'").uniqueResult(0); + SchBaseTask jsonTask2 = schBaseTaskMapper.selectById(create_task_id2); JSONObject jsonUpdateMap2 = new JSONObject(); jsonUpdateMap2.put("work_status", "01"); - jsonUpdateMap2.put("task_id", jsonTask2.getLong("task_id")); + jsonUpdateMap2.put("task_id", jsonTask2.getTask_id()); jsonUpdateMap2.put("point_id", point_id); wo_dis.update(jsonUpdateMap2, "iostorinvdis_id = '" + jsonNext.getString("iostorinvdis_id") + "'"); @@ -3163,7 +3165,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { for (int m = 0; m < disArr2.size(); m++) { JSONObject jsonObject3 = disArr2.getJSONObject(m); jsonObject3.put("work_status", "01"); - jsonObject3.put("task_id", jsonTask2.getLong("task_id")); + jsonObject3.put("task_id", jsonTask2.getTask_id()); jsonObject3.put("point_id", point_id); wo_dis.update(jsonObject3); } @@ -3199,8 +3201,6 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { WQLObject wo_dis = WQLObject.getWQLObject("ST_IVT_IOStorInvDis"); //点位表 WQLObject wo_Point = WQLObject.getWQLObject("SCH_BASE_Point"); - //任务表 - WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task"); //出库主表 WQLObject wo_mst = WQLObject.getWQLObject("ST_IVT_IOStorInv"); //仓位表 @@ -3513,10 +3513,10 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { String create_task_id = outTask.createTask(param); // 更新分配状态、任务标识、出库点位 - JSONObject jsonTask = wo_Task.query("task_id = '" + create_task_id + "'").uniqueResult(0); + SchBaseTask jsonTask = schBaseTaskMapper.selectById(create_task_id); JSONObject jsonUpdateMap = new JSONObject(); jsonUpdateMap.put("work_status", "01"); - jsonUpdateMap.put("task_id", jsonTask.getLong("task_id")); + jsonUpdateMap.put("task_id", jsonTask.getTask_id()); jsonUpdateMap.put("point_id", point_id); wo_dis.update(jsonUpdateMap, "iostorinvdis_id = '" + jsonObject.getString("iostorinvdis_id") + "'"); @@ -3530,20 +3530,24 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { for (int n = 0; n < disArr.size(); n++) { JSONObject jsonObject2 = disArr.getJSONObject(n); jsonObject2.put("work_status", "01"); - jsonObject2.put("task_id", jsonTask.getLong("task_id")); + jsonObject2.put("task_id", jsonTask.getTask_id()); jsonObject2.put("point_id", point_id); wo_dis.update(jsonObject2); } // 更新出库任务:任务组和顺序号 - JSONObject jsonTaskLast1 = wo_Task.query("task_group_id = '" + task_group_id + "' order by sort_seq DESC").uniqueResult(0); - jsonTask.put("task_group_id", task_group_id); - if (ObjectUtil.isEmpty(jsonTaskLast1)) { - jsonTask.put("sort_seq", 1); + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getTask_group_id, task_group_id) + .eq(SchBaseTask::getIs_delete, "0") + .orderByDesc(SchBaseTask::getSort_seq); + List jsonTaskLasts = schBaseTaskMapper.selectList(lam); + jsonTask.setTask_group_id(String.valueOf(task_group_id)); + if (jsonTaskLasts.size() == 0) { + jsonTask.setSort_seq(1); } else { - jsonTask.put("sort_seq", jsonTaskLast1.getIntValue("sort_seq") + 1); + jsonTask.setSort_seq(jsonTaskLasts.get(0).getSort_seq() + 1); } - wo_Task.update(jsonTask); + schBaseTaskMapper.updateById(jsonTask); /* * 判断下一个出库仓位是否相邻 @@ -3566,7 +3570,12 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { } else { // 查询此任务组最后一个生成的任务 - JSONObject jsonTaskLast = wo_Task.query("task_group_id = '" + task_group_id + "' order by sort_seq DESC").uniqueResult(0); + LambdaQueryWrapper lam2 = new LambdaQueryWrapper<>(); + lam2.eq(SchBaseTask::getTask_group_id, task_group_id) + .eq(SchBaseTask::getIs_delete, "0") + .orderByDesc(SchBaseTask::getSort_seq); + + List jsonTaskLasts2 = schBaseTaskMapper.selectList(lam2); // 创建任务并添加到任务组 allTransactionConsumer.accept(jsonNext.getString("struct_code")); JSONObject param2 = new JSONObject(); @@ -3577,17 +3586,17 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { param2.put("point_code2", point_code); param2.put("material_id", jsonNext.getString("material_id")); param2.put("task_group_id", task_group_id); // 任务组 - param2.put("sort_seq", jsonTaskLast.getIntValue("sort_seq") + 1); // 任务组顺序号 + param2.put("sort_seq", jsonTaskLasts2.get(0).getSort_seq() + 1); // 任务组顺序号 String create_task_id2 = outTask.createTask(param2); outTask.immediateNotifyAcs(null); // 更新分配状态、任务标识、出库点位 - JSONObject jsonTask2 = wo_Task.query("task_id = '" + create_task_id2 + "'").uniqueResult(0); + SchBaseTask jsonTask2 = schBaseTaskMapper.selectById(create_task_id2); JSONObject jsonUpdateMap2 = new JSONObject(); jsonUpdateMap2.put("work_status", "01"); - jsonUpdateMap2.put("task_id", jsonTask2.getLong("task_id")); + jsonUpdateMap2.put("task_id", jsonTask2.getTask_id()); jsonUpdateMap2.put("point_id", point_id); wo_dis.update(jsonUpdateMap2, "iostorinvdis_id = '" + jsonNext.getString("iostorinvdis_id") + "'"); @@ -3601,7 +3610,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { for (int m = 0; m < disArr2.size(); m++) { JSONObject jsonObject3 = disArr2.getJSONObject(m); jsonObject3.put("work_status", "01"); - jsonObject3.put("task_id", jsonTask2.getLong("task_id")); + jsonObject3.put("task_id", jsonTask2.getTask_id()); jsonObject3.put("point_id", point_id); wo_dis.update(jsonObject3); } @@ -3630,8 +3639,6 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { @Override @Transactional(rollbackFor = Exception.class) public void createMove(JSONObject whereJson, Consumer allTransactionConsumer) { - //任务表 - WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task"); WQLObject attrTab = WQLObject.getWQLObject("st_ivt_structattr"); JSONArray jsonAllBlockPoint = whereJson.getJSONArray("jsonAllBlockPoint"); @@ -3713,10 +3720,10 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { jsonMoveDtl.put("task_id", move_task_id); table.add(jsonMoveDtl); // 更新任务处理类 - JSONObject jsonTaskMove = wo_Task.query("task_id = '" + move_task_id + "'").uniqueResult(0); - jsonTaskMove.put("task_type", "010505"); - jsonTaskMove.put("handle_class", HandMoveStorAcsTask.class.getName()); - wo_Task.update(jsonTaskMove); + SchBaseTask jsonTaskMove = schBaseTaskMapper.selectById(move_task_id); + jsonTaskMove.setTask_type("010505"); + jsonTaskMove.setHandle_class(HandMoveStorAcsTask.class.getName()); + schBaseTaskMapper.updateById(jsonTaskMove); mapParam.put("tableData", table); // 调用移库单新增方法 @@ -3768,7 +3775,6 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { * 2)锁住:判断是否生成任务,生成:则不用生成移库单 = false;未生成则报错 */ WQLObject disTab = WQLObject.getWQLObject("st_ivt_iostorinvdis"); // 出入库分配明细表 - WQLObject taskTab = WQLObject.getWQLObject("sch_base_task"); // 任务表 if (ObjectUtil.isEmpty(json)) { // 如果为空说明未堵住 @@ -3803,10 +3809,16 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { param = true; } else { // 锁住:判断是否生成任务,生成:则不用生成移库单 = false;未生成则报错 - JSONObject jsonTask1 = taskTab.query("point_code1 = '" + struct_code + "' and task_status <> '" + TaskStatusEnum.FINISHED.getCode() + "'").uniqueResult(0); - JSONObject jsonTask2 = taskTab.query("point_code2 = '" + struct_code + "' and task_status <> '" + TaskStatusEnum.FINISHED.getCode() + "'").uniqueResult(0); - - if (ObjectUtil.isEmpty(jsonTask1) && ObjectUtil.isEmpty(jsonTask2)) { + // 锁住:判断是否生成任务,生成:则不用生成移库单 = false;未生成则报错 + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getIs_delete, "0") + .ne(SchBaseTask::getIs_delete, TaskStatusEnum.FINISHED.getCode()) + .and(la->la.eq(SchBaseTask::getPoint_code1,struct_code) + .or() + .eq(SchBaseTask::getPoint_code2,struct_code) + ); + int tasks = schBaseTaskMapper.selectCount(lam); + if (tasks == 0) { // 未生成任务 throw new BadRequestException("挡住仓位" + struct_code + "已锁定但未生成任务,请按照顺序选择"); } else { @@ -3829,10 +3841,15 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { param = true; } else { // 锁住:判断是否生成任务,生成:则不用生成移库单 = false;未生成则报错 - JSONObject jsonTask1 = taskTab.query("point_code1 = '" + struct_code + "' and task_status <> '" + TaskStatusEnum.FINISHED.getCode() + "'").uniqueResult(0); - JSONObject jsonTask2 = taskTab.query("point_code2 = '" + struct_code + "' and task_status <> '" + TaskStatusEnum.FINISHED.getCode() + "'").uniqueResult(0); - - if (ObjectUtil.isEmpty(jsonTask1) && ObjectUtil.isEmpty(jsonTask2)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getIs_delete, "0") + .ne(SchBaseTask::getIs_delete, TaskStatusEnum.FINISHED.getCode()) + .and(la->la.eq(SchBaseTask::getPoint_code1,struct_code) + .or() + .eq(SchBaseTask::getPoint_code2,struct_code) + ); + int tasks = schBaseTaskMapper.selectCount(lam); + if (tasks == 0) { // 未生成任务 param = true; } else { @@ -3859,10 +3876,16 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { param = false; } else { // 锁住:判断是否生成任务,生成:则不用生成移库单 = false;未生成则报错 - JSONObject jsonTask1 = taskTab.query("point_code1 = '" + struct_code + "' and task_status <> '" + TaskStatusEnum.FINISHED.getCode() + "'").uniqueResult(0); - JSONObject jsonTask2 = taskTab.query("point_code2 = '" + struct_code + "' and task_status <> '" + TaskStatusEnum.FINISHED.getCode() + "'").uniqueResult(0); - - if (ObjectUtil.isEmpty(jsonTask1) && ObjectUtil.isEmpty(jsonTask2)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getIs_delete, "0") + .ne(SchBaseTask::getIs_delete, TaskStatusEnum.FINISHED.getCode()) + .and(la->la.eq(SchBaseTask::getPoint_code1,struct_code) + .or() + .eq(SchBaseTask::getPoint_code2,struct_code) + ); + int tasks = schBaseTaskMapper.selectCount(lam); + + if (tasks == 0) { // 未生成任务 param = false; } else { @@ -3877,10 +3900,16 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { param = true; } else { // 锁住:判断是否生成任务,生成:则不用生成移库单 = false;未生成则报错 - JSONObject jsonTask1 = taskTab.query("point_code1 = '" + struct_code + "' and task_status <> '" + TaskStatusEnum.FINISHED.getCode() + "'").uniqueResult(0); - JSONObject jsonTask2 = taskTab.query("point_code2 = '" + struct_code + "' and task_status <> '" + TaskStatusEnum.FINISHED.getCode() + "'").uniqueResult(0); - - if (ObjectUtil.isEmpty(jsonTask1) && ObjectUtil.isEmpty(jsonTask2)) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.eq(SchBaseTask::getIs_delete, "0") + .ne(SchBaseTask::getIs_delete, TaskStatusEnum.FINISHED.getCode()) + .and(la->la.eq(SchBaseTask::getPoint_code1,struct_code) + .or() + .eq(SchBaseTask::getPoint_code2,struct_code) + ); + int tasks = schBaseTaskMapper.selectCount(lam); + + if (tasks == 0) { // 未生成任务 param = true; } else { @@ -4159,8 +4188,6 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { WQLObject wo_dtl = WQLObject.getWQLObject("ST_IVT_IOStorInvDtl"); //出库主表 WQLObject wo_mst = WQLObject.getWQLObject("ST_IVT_IOStorInv"); - // 任务表 - WQLObject taskTab = WQLObject.getWQLObject("sch_base_task"); // 子卷包装关系表 WQLObject subTab = WQLObject.getWQLObject("pdm_bi_subpackagerelation"); //包装关系出入库记录表 @@ -4341,10 +4368,10 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { sub_record.insert(jsonSub); // 更新对应任务为完成 - JSONObject jsonTask = taskTab.query("task_id = '" + jsonDis.getString("task_id") + "' and task_status < '07'").uniqueResult(0); + SchBaseTask jsonTask = schBaseTaskMapper.selectById(jsonDis.getString("task_id")); if (ObjectUtil.isNotEmpty(jsonTask)) { - jsonTask.put("task_status", TaskStatusEnum.FINISHED.getCode()); - taskTab.update(jsonTask); + jsonTask.setTask_status(TaskStatusEnum.FINISHED.getCode()); + schBaseTaskMapper.updateById(jsonTask); } } @@ -4757,8 +4784,6 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { WQLObject wo_dtl = WQLObject.getWQLObject("ST_IVT_IOStorInvDtl"); //出库主表 WQLObject wo_mst = WQLObject.getWQLObject("ST_IVT_IOStorInv"); - // 任务表 - WQLObject taskTab = WQLObject.getWQLObject("sch_base_task"); // 子卷包装关系表 WQLObject subTab = WQLObject.getWQLObject("pdm_bi_subpackagerelation"); //包装关系出入库记录表 @@ -4971,10 +4996,10 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { sub_record.insert(jsonSub); // 更新对应任务为完成 - JSONObject jsonTask = taskTab.query("task_id = '" + jsonDis.getString("task_id") + "' and task_status < '07'").uniqueResult(0); + SchBaseTask jsonTask = schBaseTaskMapper.selectById(jsonDis.getString("task_id")); if (ObjectUtil.isNotEmpty(jsonTask)) { - jsonTask.put("task_status", TaskStatusEnum.FINISHED.getCode()); - taskTab.update(jsonTask); + jsonTask.setTask_status(TaskStatusEnum.FINISHED.getCode()); + schBaseTaskMapper.updateById(jsonTask); } } @@ -5118,24 +5143,22 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { @Override @Transactional(rollbackFor = Exception.class) public void issueTask(JSONObject whereJson) { - //任务表 - WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task"); String currentUserId = SecurityUtils.getCurrentUserId(); String nickName = SecurityUtils.getCurrentNickName(); String now = DateUtil.now(); - JSONObject jsonTask = wo_Task.query("task_id = '" + whereJson.getString("task_id") + "'").uniqueResult(0); + SchBaseTask jsonTask = schBaseTaskMapper.selectById(whereJson.getString("task_id")); // 调用出库任务类下发任务 - new OutTask().immediateNotifyAcs(jsonTask.getString("task_id")); + new OutTask().immediateNotifyAcs(jsonTask.getTask_id()); // 更新任务状态为下发 - jsonTask.put("task_status", TaskStatusEnum.ISSUE.getCode()); - jsonTask.put("update_optid", currentUserId); - jsonTask.put("update_optname", nickName); - jsonTask.put("update_time", now); - wo_Task.update(jsonTask); + jsonTask.setTask_status(TaskStatusEnum.ISSUE.getCode()); + jsonTask.setUpdate_id(currentUserId); + jsonTask.setUpdate_name(nickName); + jsonTask.setUpdate_time(now); + schBaseTaskMapper.updateById(jsonTask); } @@ -5148,8 +5171,6 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { WQLObject wo_dtl = WQLObject.getWQLObject("st_ivt_iostorinvdtl"); //出库主表 WQLObject wo_mst = WQLObject.getWQLObject("st_ivt_iostorinv"); - //任务表 - WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task"); //子卷包装关系表 WQLObject subTab = WQLObject.getWQLObject("pdm_bi_subpackagerelation"); //包装关系出入库记录表 @@ -5319,14 +5340,14 @@ public class CheckOutBillServiceImpl implements CheckOutBillService { } HashMap map = new HashMap<>(); - map.put("task_status", TaskStatusEnum.FINISHED.getCode()); - map.put("finished_type", "01"); - map.put("update_optid", SecurityUtils.getCurrentUserId() + ""); - map.put("update_optname", SecurityUtils.getCurrentNickName()); - map.put("update_time", DateUtil.now()); - + SchBaseTask taskmap = schBaseTaskMapper.selectById( whereJson.getString("task_id")); + taskmap.setTask_status(TaskStatusEnum.FINISHED.getCode()); + taskmap.setFinished_type("01"); + taskmap.setUpdate_id(SecurityUtils.getCurrentUserId() + ""); + taskmap.setUpdate_name(SecurityUtils.getCurrentNickName()); + taskmap.setUpdate_time(DateUtil.now()); //更新任务为完成 - wo_Task.update(map, "task_id='" + whereJson.getString("task_id") + "'"); + schBaseTaskMapper.updateById(taskmap); // 查询此任务下所有的分配明细 JSONArray disArr = wo_dis.query("task_id='" + whereJson.getString("task_id") + "'").getResultJSONArray(0); diff --git a/lms/nladmin-system/src/main/java/org/nl/wms/st/returns/service/impl/InAndOutRetrunServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/wms/st/returns/service/impl/InAndOutRetrunServiceImpl.java index 27f2f8e..4a2409e 100644 --- a/lms/nladmin-system/src/main/java/org/nl/wms/st/returns/service/impl/InAndOutRetrunServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/wms/st/returns/service/impl/InAndOutRetrunServiceImpl.java @@ -163,12 +163,6 @@ public class InAndOutRetrunServiceImpl implements InAndOutReturnService { { //出库分配表 WQLObject wo_dis = WQLObject.getWQLObject("ST_IVT_IOStorInvDis"); - //出库明细表 - WQLObject wo_dtl = WQLObject.getWQLObject("ST_IVT_IOStorInvDtl"); - //出库主表 - WQLObject wo_mst = WQLObject.getWQLObject("ST_IVT_IOStorInv"); - // 物料表 - WQLObject materTab = WQLObject.getWQLObject("md_me_materialbase"); //根据出入单类型判断回传业务 //1、生产入库:回传MES;手工入库:回传SAP