From 808d32829a61f6f1de0b989b2c818327d3bf74ef Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期一, 28 四月 2025 09:20:56 +0800
Subject: [PATCH] *
---
src/main/java/com/zy/asrs/controller/TaskWrkController.java | 186 ++++++++++++++++++++++++++++++++++++++++------
1 files changed, 161 insertions(+), 25 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/TaskWrkController.java b/src/main/java/com/zy/asrs/controller/TaskWrkController.java
index f82660e..3136a88 100644
--- a/src/main/java/com/zy/asrs/controller/TaskWrkController.java
+++ b/src/main/java/com/zy/asrs/controller/TaskWrkController.java
@@ -1,28 +1,55 @@
package com.zy.asrs.controller;
+import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.core.common.DateUtils;
+import com.core.exception.CoolException;
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.ApiLogService;
+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.common.utils.HttpHandler;
import com.zy.common.web.BaseController;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
import java.util.*;
@RestController
+@Slf4j
public class TaskWrkController extends BaseController {
+
+ @Value("${wms.url}")
+ private String wmsUrl;
@Autowired
private TaskWrkService taskWrkService;
+
+ @Autowired
+ private CommandInfoService commandInfoService;
+
+ @Autowired
+ private LocMastService locMastService;
+
+ @Value("${wms.taskStatusFeedbackPath}")
+ private String taskStatusFeedbackPath;
+
+ @Autowired
+ private ApiLogService apiLogService;
@RequestMapping(value = "/taskWrk/{wrkNo}/auth")
@ManagerAuth
@@ -149,21 +176,78 @@
@ManagerAuth(memo = "鎵嬪姩瀹屾垚浠诲姟")
public R complete(@RequestParam String taskNo) {
TaskWrk taskWrk = taskWrkService.selectByTaskNo(taskNo);
- if (taskWrk == null) {
- return R.error();
+ if (Cools.isEmpty(taskWrk) || taskWrk.getStatus()>=3){
+ return R.error("宸插畬缁撴垨宸插彇娑�") ;
}
- if (taskWrk.getStatus().equals(TaskStatusType.COMPLETE.id)) {
- return R.error(taskWrk.getTaskNo() + "宸插畬缁�");
+ LocMast locMast=new LocMast();
+ if(taskWrk.getIoType()==1){//鍏ュ簱浠诲姟瀹屾垚搴撲綅涓篎
+ locMast=locMastService.selectByLocNo(taskWrk.getTargetPoint());
+ if(Cools.isEmpty(locMast)){
+ R.error("娌℃湁鎵惧埌璇ュ簱浣�") ;
+ }
+ locMast.setLocSts("F");
+ locMast.setModiTime(new Date());
+ locMast.setBarcode(taskWrk.getBarcode());
+ }else if(taskWrk.getIoType()==2){//鍑哄簱浠诲姟瀹屾垚搴撲綅涓篛
+ locMast=locMastService.selectByLocNo(taskWrk.getStartPoint());
+ if(Cools.isEmpty(locMast)){
+ R.error("娌℃湁鎵惧埌璇ュ簱浣�") ;
+ }
+ locMast.setLocSts("O");
+ locMast.setModiTime(new Date());
+ }else if(taskWrk.getIoType()==3){
+ locMast=locMastService.selectByLocNo(taskWrk.getStartPoint());
+ if(Cools.isEmpty(locMast)){
+ R.error("娌℃湁鎵惧埌璇ュ簱浣�") ;
+ }
+ locMast.setLocSts("O");
+ locMast.setModiTime(new Date());
+ locMastService.updateById(locMast);
+ locMast=locMastService.selectByLocNo(taskWrk.getTargetPoint());
+ if(Cools.isEmpty(locMast)){
+ R.error("娌℃湁鎵惧埌璇ュ簱浣�") ;
+ }
+ locMast.setLocSts("F");
+ locMast.setModiTime(new Date());
+ locMast.setBarcode(taskWrk.getBarcode());
+
+ }
+ String response="";
+ try{
+ HashMap<String, Object> headParam = new HashMap<>();
+ headParam.put("taskNo",taskWrk.getTaskNo());
+ headParam.put("status",taskWrk.getStatus());
+ headParam.put("ioType",taskWrk.getIoType());
+ headParam.put("barcode",taskWrk.getBarcode());
+// headParam.put("reportTime",new Date());
+ log.info("wcs鎵嬪姩瀹屾垚浠诲姟涓婃姤wms={}", taskWrk);
+ response = new HttpHandler.Builder()
+ // .setHeaders(headParam)
+ .setUri(wmsUrl)
+ .setPath(taskStatusFeedbackPath)
+ .setJson(JSON.toJSONString(headParam))
+ .build()
+ .doPost();
+
+ JSONObject jsonObject = JSON.parseObject(response);
+ apiLogService.save("wcs鎵嬪姩瀹屾垚浠诲姟涓婃姤wms"
+ ,wmsUrl+taskStatusFeedbackPath
+ ,null
+ ,"127.0.0.1"
+ ,JSON.toJSONString(headParam)
+ ,response
+ ,true
+ );
+ }catch (Exception e){
+ log.error("wcs鎵嬪姩瀹屾垚浠诲姟涓婃姤wms澶眥},杩斿洖鍊�={}", taskWrk,response);
+// throw new CoolException(e);
}
Date now = new Date();
- taskWrk.setStatus(TaskStatusType.COMPLETE.id);
- taskWrk.setModiTime(now);//鎿嶄綔鏃堕棿
- try{
- taskWrk.setModiUser(getUserId());//鎿嶄綔鍛�
- }catch (Exception e){
- taskWrk.setModiUser(9999L);//鎿嶄綔鍛�
- }
- taskWrk.setCompleteTime(now);//瀹岀粨鏃堕棿
+ locMast.setModiTime(now);
+ locMastService.updateById(locMast);
+ taskWrk.setStatus(7);//鎵嬪姩瀹屾垚浠诲姟
+ taskWrk.setModiTime(now);
+ taskWrk.setCompleteTime(now);
taskWrkService.updateById(taskWrk);
return R.ok();
}
@@ -181,29 +265,81 @@
Date now = new Date();
taskWrk.setStatus(TaskStatusType.CANCEL.id);
taskWrk.setModiTime(now);//鎿嶄綔鏃堕棿
+ taskWrk.setCancelTime(now);
try{
taskWrk.setModiUser(getUserId());//鎿嶄綔鍛�
}catch (Exception e){
- taskWrk.setModiUser(9999L);//鎿嶄綔鍛�
+ taskWrk.setModiUser(1111L);//鎿嶄綔鍛�
+ }
+ String response="";
+ try{
+ HashMap<String, Object> headParam = new HashMap<>();
+ headParam.put("taskNo",taskWrk.getTaskNo());
+ headParam.put("status",taskWrk.getStatus());
+ headParam.put("ioType",taskWrk.getIoType());
+ headParam.put("barcode",taskWrk.getBarcode());
+// headParam.put("reportTime",new Date());
+
+ log.info("wcs鎵嬪姩鍙栨秷浠诲姟涓婃姤wm={}", taskWrk);
+ response = new HttpHandler.Builder()
+ // .setHeaders(headParam)
+ .setUri(wmsUrl)
+ .setPath(taskStatusFeedbackPath)
+ .setJson(JSON.toJSONString(headParam))
+ .build()
+ .doPost();
+ JSONObject jsonObject = JSON.parseObject(response);
+ apiLogService.save("wcs鎵嬪姩鍙栨秷浠诲姟涓婃姤wms"
+ ,wmsUrl+taskStatusFeedbackPath
+ ,null
+ ,"127.0.0.1"
+ ,JSON.toJSONString(headParam)
+ ,response
+ ,true
+ );
+ }catch (Exception e){
+ log.error("wcs鎵嬪姩鍙栨秷浠诲姟涓婃姤wms澶辫触={},杩斿洖鍊�={}", taskWrk,response);
+// throw new CoolException(e);
}
taskWrk.setCompleteTime(now);//瀹岀粨鏃堕棿
taskWrkService.updateById(taskWrk);
return R.ok();
}
- @PostMapping(value = "/taskWrk/updateCommandStep")
- @ManagerAuth(memo = "鏇存柊姝ュ簭")
- public R updateCommandStep(@RequestParam Integer wrkNo, @RequestParam Integer commandStep) {
- TaskWrk taskWrk = taskWrkService.selectByWrkNo(wrkNo);
- if (taskWrk == null) {
- return R.error();
+ public static String getTaskType(Integer paramIoType){
+ switch (paramIoType){
+ case 1:
+ return "RK";
+ case 2:
+ return "CK";
+ case 3:
+ return "YK";
+ default:
+ return "鏈煡";
}
- Date now = new Date();
- taskWrk.setCommandStep(commandStep);
- taskWrk.setModiTime(now);//鎿嶄綔鏃堕棿
- taskWrk.setModiUser(getUserId());//鎿嶄綔鍛�
- taskWrkService.updateById(taskWrk);
- return R.ok();
}
+ @PostMapping(value = "/taskWrk/returnWorkingCondition/auth")
+ @ManagerAuth(memo = "閲嶆柊缁欏爢鍨涙満涓嬪彂浠诲姟")
+ public R returnWorkingCondition(@RequestParam String taskNo) {
+ TaskWrk taskWrk = taskWrkService.selectByTaskNo(taskNo);
+ if (!Cools.isEmpty(taskWrk) && taskWrk.getWrkSts()==12){
+ taskWrk.setWrkSts(11);
+ if(!taskWrkService.updateById(taskWrk)){
+ return R.error("鏇存柊浠诲姟鐘舵�佸け璐�");
+ }
+ return R.ok();
+ } else if (!Cools.isEmpty(taskWrk) && taskWrk.getWrkSts()==3) {
+ taskWrk.setWrkSts(2);
+ taskWrkService.updateById(taskWrk);
+ if(!taskWrkService.updateById(taskWrk)){
+ return R.error("鏇存柊浠诲姟鐘舵�佸け璐�");
+ }
+ return R.ok();
+ }else{
+ return R.error("浠诲姟鐘舵�佷笉瀵规棤娉曢噸鏂扮粰鍫嗗灈鏈轰笅鍙戜换鍔�");
+ }
+
+ }
+
}
--
Gitblit v1.9.1