From 21038521f93c26f3e7b6810d8ee8dfdd31c159e0 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期一, 22 四月 2024 15:35:01 +0800
Subject: [PATCH] #Ext
---
src/main/java/com/zy/asrs/controller/TaskWrkController.java | 145 +++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 131 insertions(+), 14 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/TaskWrkController.java b/src/main/java/com/zy/asrs/controller/TaskWrkController.java
index 00a2fbf..0bb2991 100644
--- a/src/main/java/com/zy/asrs/controller/TaskWrkController.java
+++ b/src/main/java/com/zy/asrs/controller/TaskWrkController.java
@@ -8,14 +8,18 @@
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;
import com.core.common.Cools;
import com.core.common.R;
+import com.zy.asrs.utils.SaasUtils;
+import com.zy.asrs.utils.Utils;
import com.zy.common.utils.HttpHandler;
import com.zy.common.web.BaseController;
import lombok.extern.slf4j.Slf4j;
@@ -23,7 +27,11 @@
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
+import java.net.InetAddress;
+import java.net.UnknownHostException;
import java.util.*;
+
+import static com.zy.asrs.entity.param.TaskStatusFeedbackParam.getTaskType;
@RestController
@Slf4j
@@ -37,6 +45,8 @@
@Autowired
private CommandInfoService commandInfoService;
+ @Autowired
+ private LocMastService locMastService;
@RequestMapping(value = "/taskWrk/{wrkNo}/auth")
@ManagerAuth
@@ -90,7 +100,7 @@
@RequestMapping(value = "/taskWrk/updatePoint/auth")
@ManagerAuth
- public R updatePoint(TaskWrk taskWrk){
+ public R updatePoint(TaskWrk taskWrk) throws UnknownHostException {
if (Cools.isEmpty(taskWrk) || null == taskWrk.getTaskNo()) {
return R.error();
}
@@ -98,10 +108,25 @@
if (taskWrk1 == null) {
return R.error();
}
+ InetAddress localHost = InetAddress.getLocalHost();
+ String ipAddress = localHost.getHostAddress();
+
+ SaasUtils.insertLog(1,taskWrk1.getStartPoint()+"-"+taskWrk1.getTargetPoint(),taskWrk.getStartPoint()+"-"+taskWrk.getTargetPoint(), ipAddress,getUser().getUsername());
+
+
taskWrk1.setStartPoint(taskWrk.getStartPoint());
taskWrk1.setTargetPoint(taskWrk.getTargetPoint());
+ if (taskWrk1.getIoType() == 1){
+ taskWrk1.setOriginTargetPoint(Utils.getWmsLocNo(taskWrk.getTargetPoint()));
+ } else if (taskWrk1.getIoType() == 2) {
+ taskWrk1.setOriginStartPoint(Utils.getWmsLocNo(taskWrk.getStartPoint()));
+ } else if (taskWrk1.getIoType() == 3) {
+ taskWrk1.setOriginTargetPoint(Utils.getWmsLocNo(taskWrk.getTargetPoint()));
+ taskWrk1.setOriginStartPoint(Utils.getWmsLocNo(taskWrk.getStartPoint()));
+ }
taskWrk1.setModiTime(new Date());
taskWrk1.setModiUser(getUserId());
+
taskWrkService.updateById(taskWrk1);
return R.ok();
}
@@ -207,11 +232,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());//鎿嶄綔鍛�
@@ -220,6 +245,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) {
@@ -246,21 +290,64 @@
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 = "鏇存柊姝ュ簭")
@@ -276,6 +363,36 @@
taskWrkService.updateById(taskWrk);
return R.ok();
}
+ @PostMapping(value = "/taskWrk/upIoPri")
+ public R upIoPri(@RequestParam String taskNo){
+ TaskWrk taskWrk = taskWrkService.selectByTaskNo(taskNo);
+ if (taskWrk.getIoPri() > 300){
+ return R.error("浼樺厛绾у凡鏈�楂�");
+ }
+ Map<Integer,Integer> map = new HashMap<>();
+ map.put(100,200);map.put(200,300);map.put(300,400);
+ Integer pri = map.get(taskWrk.getIoPri());
+ taskWrk.setIoPri(pri);
+ if (!taskWrkService.updateById(taskWrk)){
+ return R.error("澧炲姞浼樺厛绾уけ璐�");
+ }
+ return R.ok();
+ }
+ @PostMapping(value = "/taskWrk/downIoPri")
+ public R downIoPri(@RequestParam String taskNo){
+ TaskWrk taskWrk = taskWrkService.selectByTaskNo(taskNo);
+ if (taskWrk.getIoPri() <200){
+ return R.error("浼樺厛绾у凡鏈�浣�");
+ }
+ Map<Integer,Integer> map = new HashMap<>();
+ map.put(200,100);map.put(300,200);map.put(400,300);
+ Integer pri = map.get(taskWrk.getIoPri());
+ taskWrk.setIoPri(pri);
+ if (!taskWrkService.updateById(taskWrk)){
+ return R.error("闄嶄綆浼樺厛绾уけ璐�");
+ }
+ return R.ok();
+ }
public static String getTaskType(Integer paramIoType){
switch (paramIoType){
--
Gitblit v1.9.1