From 3eb6ea1ce6f381cb9545bb4906863f74236152a3 Mon Sep 17 00:00:00 2001 From: zc <zyzc> Date: 星期一, 20 十月 2025 17:10:33 +0800 Subject: [PATCH] Default Changelist --- rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java | 65 +++++++++++++++++++++++++------- 1 files changed, 51 insertions(+), 14 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java index 6d24142..8b917c4 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java @@ -18,6 +18,7 @@ import com.vincent.rsf.server.api.entity.dto.LocTypeDto; import com.vincent.rsf.server.api.controller.erp.params.TaskInParam; import com.vincent.rsf.server.api.entity.dto.SyncLocsDto; +import com.vincent.rsf.server.api.entity.enums.CallBackEvent; import com.vincent.rsf.server.api.entity.params.CommonRequest; import com.vincent.rsf.server.api.entity.params.ExMsgParams; import com.vincent.rsf.server.api.entity.params.WcsTaskParams; @@ -427,7 +428,7 @@ for (SyncLocsDto dto : dtos) { Loc loc = new Loc(); String string = new Random().nextInt(10000000) + ""; - Loc one = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, string)); + Loc one = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, dto.getLocNo())); if (!Objects.isNull(one)) { string = new Random().nextInt(10000000) + ""; } @@ -436,11 +437,11 @@ .setRow(dto.getRow()) .setLev(dto.getLev()) .setId(null) - .setAreaId(41L) - .setWarehouseId(27L) + .setAreaId(42L) + .setWarehouseId(29L) .setBarcode(string) .setCol(dto.getBay()) - .setType(dto.getLocType()) + .setType(dto.getLocType().equals("16") ? "17" : "15") .setStatus(dto.getStatusBool()) .setUseStatus(LocStsType.getLocSts(dto.getLocSts())); if (!locService.save(loc)) { @@ -464,41 +465,77 @@ if (Objects.isNull(params)) { return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); } - Task task = taskService.getOne(new LambdaQueryWrapper<Task>().eq(Task::getTaskCode, params.getSeqNum())); if (Objects.isNull(task)) { throw new CoolException("浠诲姟涓嶅瓨鍦ㄥ彲宸茬粨鏉燂紒锛�"); } - if (params.getEventType().equals("END")) { + /**鏂欑鎼繍涓紝 淇敼绔欑偣鐘舵��*/ +// if (params.getEventType().equals(CallBackEvent.CALL_BACK_EVENT_OBIT.event)) { +// if (task.getTaskType().equals(TaskType.TASK_TYPE_IN.type) +// || task.getTaskType().equals(TaskType.TASK_TYPE_PICK_IN.type) +// || task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type) +// || task.getTaskType().equals(TaskType.TASK_TYPE_EMPITY_IN.type) +// || task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_IN.type) +// || task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) { +// +// } +// /**鍙栫瀹屾垚锛� 淇敼浠诲姟鐘舵��*/ +// } else + if (params.getEventType().equals(CallBackEvent.CALL_BACK_EVENT_END.event)) { if (task.getTaskType().equals(TaskType.TASK_TYPE_IN.type) || task.getTaskType().equals(TaskType.TASK_TYPE_PICK_IN.type) || task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type) || task.getTaskType().equals(TaskType.TASK_TYPE_EMPITY_IN.type) || task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_IN.type) || task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) { - if (!taskService.update(new LambdaUpdateWrapper<Task>().eq(Task::getTaskCode, task.getTaskCode()) - .set(Task::getTaskStatus, TaskStsType.COMPLETE_IN.id))) { - throw new CoolException("浠诲姟鐘舵�佷慨鏀瑰け璐ワ紒锛�"); + + if (!task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) { + BasStation station = basStationService.getOne(new LambdaQueryWrapper<BasStation>().eq(BasStation::getStationName, task.getOrgSite())); + if (Objects.isNull(station)) { + throw new CoolException("鏁版嵁閿欒锛岀珯鐐逛笉瀛樺湪锛侊紒"); + } + if (station.getType().equals(StationTypeEnum.STATION_TYPE_NORMAL.type)) { + station.setUseStatus(LocStsType.LOC_STS_TYPE_O.type); + if (!basStationService.updateById(station)) { + throw new CoolException("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�"); + } + } } - if (!basStationService.update(new LambdaUpdateWrapper<BasStation>() - .eq(BasStation::getStationName, task.getOrgSite()) - .set(BasStation::getUseStatus, LocStsType.LOC_STS_TYPE_O.type))) { - throw new CoolException("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�"); + if (!taskService.update(new LambdaUpdateWrapper<Task>() + .lt(Task::getTaskStatus, TaskStsType.COMPLETE_IN.id) + .eq(Task::getTaskCode, task.getTaskCode()) + .set(Task::getTaskStatus, TaskStsType.COMPLETE_IN.id))) { + throw new CoolException("浠诲姟鐘舵�佷慨鏀瑰け璐ワ紒锛�"); } } else if (task.getTaskType().equals(TaskType.TASK_TYPE_OUT.type) || task.getTaskType().equals(TaskType.TASK_TYPE_PICK_AGAIN_OUT.type) || task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_OUT.type) || task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_OUT.type) || task.getTaskType().equals(TaskType.TASK_TYPE_EMPITY_OUT.type)) { + + + /**淇敼鍑哄簱绔欑偣鐘舵��*/ + BasStation station = basStationService.getOne(new LambdaQueryWrapper<BasStation>() + .eq(BasStation::getStationName, task.getTargSite())); + if (Objects.isNull(station)) { + throw new CoolException("鏁版嵁閿欒锛岀珯鐐逛笉瀛樺湪锛侊紒"); + } + if (station.getType().equals(StationTypeEnum.STATION_TYPE_NORMAL.type)) { + station.setUseStatus(LocStsType.LOC_STS_TYPE_F.type); + if (!basStationService.updateById(station)) { + throw new CoolException("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�"); + } + } + if (!taskService.update(new LambdaUpdateWrapper<Task>().eq(Task::getTaskCode, task.getTaskCode()) + .lt(Task::getTaskStatus, TaskStsType.COMPLETE_OUT.id) .set(Task::getTaskStatus, TaskStsType.COMPLETE_OUT.id))) { throw new CoolException("浠诲姟鐘舵�佷慨鏀瑰け璐ワ紒锛�"); } } } - log.info(JSONObject.toJSONString(params)); return R.ok(JSONObject.toJSONString(params)); } -- Gitblit v1.9.1