From 5cf81e2b0e9c3490f83a06811ea6939c5b5ae7c7 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期四, 23 五月 2024 16:45:21 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/controller/TaskWrkController.java | 111 +++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 98 insertions(+), 13 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/TaskWrkController.java b/src/main/java/com/zy/asrs/controller/TaskWrkController.java
index dba67fe..3d9ecc1 100644
--- a/src/main/java/com/zy/asrs/controller/TaskWrkController.java
+++ b/src/main/java/com/zy/asrs/controller/TaskWrkController.java
@@ -8,9 +8,11 @@
import com.core.common.DateUtils;
import com.zy.asrs.domain.enums.TaskStatusType;
import com.zy.asrs.entity.CommandInfo;
+import com.zy.asrs.entity.LocMast;
import com.zy.asrs.entity.TaskWrk;
import com.zy.asrs.entity.param.TaskOverToWms;
import com.zy.asrs.service.CommandInfoService;
+import com.zy.asrs.service.LocMastService;
import com.zy.asrs.service.TaskWrkService;
import com.core.annotations.ManagerAuth;
import com.core.common.BaseRes;
@@ -29,6 +31,8 @@
import java.net.UnknownHostException;
import java.util.*;
+import static com.zy.asrs.entity.param.TaskStatusFeedbackParam.getTaskType;
+
@RestController
@Slf4j
public class TaskWrkController extends BaseController {
@@ -41,6 +45,8 @@
@Autowired
private CommandInfoService commandInfoService;
+ @Autowired
+ private LocMastService locMastService;
@RequestMapping(value = "/taskWrk/{wrkNo}/auth")
@ManagerAuth
@@ -102,6 +108,22 @@
if (taskWrk1 == null) {
return R.error();
}
+ if ((taskWrk1.getIoType() == 1 || taskWrk1.getIoType() == 3) && taskWrk1.getWrkSts() >= 3 ){
+ return R.error("浠诲姟宸插湪鎵ц锛屾棤娉曚慨鏀�");
+ }
+ if ((taskWrk1.getIoType() == 2 ) && taskWrk1.getWrkSts() >= 12 ){
+ return R.error("浠诲姟宸插湪鎵ц锛屾棤娉曚慨鏀�");
+ }
+ if (Cools.isEmpty(taskWrk1.getStartPoint()) || Cools.isEmpty(taskWrk1.getTargetPoint())){
+ return R.error("浠诲姟鏈垎閰嶅簱浣嶏紝鏃犳硶淇敼");
+ }
+
+ List<CommandInfo> commandInfos = commandInfoService.selectByTaskNo(taskWrk.getTaskNo());
+ if (!Cools.isEmpty(commandInfos)){
+ for (CommandInfo commandInfo:commandInfos){
+ commandInfoService.deleteById(commandInfo);
+ }
+ }
InetAddress localHost = InetAddress.getLocalHost();
String ipAddress = localHost.getHostAddress();
@@ -118,6 +140,7 @@
taskWrk1.setOriginTargetPoint(Utils.getWmsLocNo(taskWrk.getTargetPoint()));
taskWrk1.setOriginStartPoint(Utils.getWmsLocNo(taskWrk.getStartPoint()));
}
+ taskWrk1.setStatus(1);
taskWrk1.setModiTime(new Date());
taskWrk1.setModiUser(getUserId());
@@ -226,11 +249,11 @@
if (taskWrk == null) {
return R.error();
}
- if (taskWrk.getStatus().equals(TaskStatusType.COMPLETE.id)) {
+ if (taskWrk.getStatus().equals(TaskStatusType.OVER.id)) {
return R.error(taskWrk.getTaskNo() + "宸插畬缁�");
}
Date now = new Date();
- taskWrk.setStatus(TaskStatusType.COMPLETE.id);
+ taskWrk.setStatus(TaskStatusType.OVER.id);
taskWrk.setModiTime(now);//鎿嶄綔鏃堕棿
try{
taskWrk.setModiUser(getUserId());//鎿嶄綔鍛�
@@ -239,6 +262,25 @@
}
taskWrk.setCompleteTime(now);//瀹岀粨鏃堕棿
taskWrkService.updateById(taskWrk);
+
+
+ if (taskWrk.getIoType() == 1) {
+ //鏇存柊搴撲綅鐘舵��
+ LocMast locMast = locMastService.selectByLocNo(taskWrk.getTargetPoint());
+ locMast.setLocSts("Z");//F.鍦ㄥ簱
+ locMast.setBarcode(taskWrk.getBarcode());//鎵樼洏鐮�
+ locMast.setModiTime(now);
+ locMast.setModiUser(9999L);
+ locMastService.updateById(locMast);
+ } else if (taskWrk.getIoType() == 2) {
+ //鏇存柊搴撲綅鐘舵��
+ LocMast locMast = locMastService.selectByLocNo(taskWrk.getStartPoint());
+ locMast.setLocSts("K");//O.绌哄簱浣�
+ locMast.setBarcode("");//鎵樼洏鐮�
+ locMast.setModiTime(now);
+ locMast.setModiUser(9999L);
+ locMastService.updateById(locMast);
+ }
if (taskWrkService.saveToHistory(taskWrk.getTaskNo()) > 0) {
@@ -265,22 +307,65 @@
if (taskWrk == null) {
return R.error();
}
- if (taskWrk.getStatus().equals(TaskStatusType.CANCEL.id)) {
- return R.error(taskWrk.getTaskNo() + "宸茶鍙栨秷");
+ String wmsCancelledtask = toWmsCancelledtask(taskWrk);
+ JSONObject jsonObject = JSON.parseObject(wmsCancelledtask);
+ if (Cools.isEmpty(jsonObject)){
+ return R.error("瓒呮椂鎴栨湭鐭ラ敊璇�");
}
- Date now = new Date();
- taskWrk.setStatus(TaskStatusType.CANCEL.id);
- taskWrk.setModiTime(now);//鎿嶄綔鏃堕棿
- try{
- taskWrk.setModiUser(getUserId());//鎿嶄綔鍛�
- }catch (Exception e){
- taskWrk.setModiUser(9999L);//鎿嶄綔鍛�
+ if (jsonObject.getInteger("code").equals(200)){
+ if (!taskWrkService.delete(new EntityWrapper<TaskWrk>().eq("task_no",taskNo))){
+ return R.error("鍒犻櫎浠诲姟澶辫触");
+ }
+ }else if (jsonObject.getInteger("code").equals(500)){
+ return R.error(jsonObject.get("msg").toString());
+ }else {
+ return R.error("瓒呮椂鎴栨湭鐭ラ敊璇�");
}
- taskWrk.setCompleteTime(now);//瀹岀粨鏃堕棿
- taskWrkService.updateById(taskWrk);
+
return R.ok();
}
+ public String toWmsCancelledtask(TaskWrk taskWrk){
+ Map<String, Object> map = new HashMap<>();
+ map.put("x-api-key","7a15b5db-29b6-552c-8cff-0cfec3756da2");
+ TaskOverToWms taskOverToWms = new TaskOverToWms();
+ taskOverToWms.setFeedbackFrom("WCS"); //鏉ユ簮
+ taskOverToWms.setWarehouseId("1688469798893297665"); //浠撳簱鏍囪瘑
+ taskOverToWms.setTaskNo(taskWrk.getTaskNo()); //浠诲姟鍙�
+ taskOverToWms.setTaskType(getTaskType(taskWrk.getIoType())); // 浠诲姟绫诲瀷
+ taskOverToWms.setContainerCode(taskWrk.getBarcode()); // 瀹瑰櫒缂栫爜
+ if (taskWrk.getIoType() ==1 ){
+ taskOverToWms.setEquipmentCode(String.valueOf(taskWrk.getCrnNo())); //璁惧缂栫爜
+ taskOverToWms.setTargetLocationCode(taskWrk.getOriginTargetPoint()); //鐩爣搴撲綅
+ }else if (taskWrk.getIoType() ==2){
+ Map<Integer,String> map1 = new HashMap<>();
+ map1.put(102,"J-1101");
+ map1.put(106,"J-1103");
+ map1.put(110,"J-1105");
+ map1.put(114,"J-1107");
+ map1.put(118,"J-1109");
+ map1.put(122,"J-1111");
+ taskOverToWms.setEquipmentCode(map1.get(taskWrk.getTargetPoint())); //璁惧缂栫爜
+ taskOverToWms.setSourceLocationCode(taskWrk.getOriginStartPoint()); //婧愬簱浣�
+ }
+
+ taskOverToWms.setTaskStatus("cancelled"); //浠诲姟鐘舵��
+ String response = null;
+ try {
+ response = new HttpHandler.Builder()
+ .setHeaders(map)
+ .setUri(wmsUrl)
+ .setPath("wcsManager/wcsInterface/taskStatusFeedback")
+ .setJson(JSON.toJSONString(taskOverToWms))
+ .build()
+ .doPost();
+ }catch (Exception e){
+ log.error("wms杩炴帴澶辫触");
+ }
+ return response;
+ }
+
+
@PostMapping(value = "/taskWrk/updateCommandStep")
@ManagerAuth(memo = "鏇存柊姝ュ簭")
public R updateCommandStep(@RequestParam Integer wrkNo, @RequestParam Integer commandStep) {
--
Gitblit v1.9.1