From a3b72b747a8e855cab1a6d40f42022db67646004 Mon Sep 17 00:00:00 2001
From: TQS <56479841@qq.com>
Date: 星期二, 21 三月 2023 15:30:28 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/controller/SteController.java | 138 ++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 132 insertions(+), 6 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/SteController.java b/src/main/java/com/zy/asrs/controller/SteController.java
index 6cfc5dd..ff4d8a6 100644
--- a/src/main/java/com/zy/asrs/controller/SteController.java
+++ b/src/main/java/com/zy/asrs/controller/SteController.java
@@ -7,11 +7,16 @@
import com.core.common.R;
import com.core.exception.CoolException;
import com.zy.asrs.domain.enums.CrnStatusType;
+import com.zy.asrs.domain.param.CrnDemoParam;
+import com.zy.asrs.domain.param.SteModeParam;
import com.zy.asrs.domain.param.SteOperatorParam;
import com.zy.asrs.domain.vo.SteMsgTableVo;
import com.zy.asrs.domain.vo.SteStateTableVo;
+import com.zy.asrs.domain.vo.SteDataVo;
import com.zy.asrs.entity.BasSte;
+import com.zy.asrs.entity.BasSteErr;
import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.mapper.BasSteErrMapper;
import com.zy.asrs.service.BasSteService;
import com.zy.asrs.service.WrkMastService;
import com.zy.core.cache.MessageQueue;
@@ -19,19 +24,20 @@
import com.zy.core.cache.SlaveConnection;
import com.zy.core.enums.SlaveType;
import com.zy.core.enums.SteTaskModeType;
+import com.zy.core.model.CrnSlave;
import com.zy.core.model.SteSlave;
import com.zy.core.model.Task;
import com.zy.core.model.command.SteCommand;
import com.zy.core.model.protocol.SteProtocol;
import com.zy.core.properties.SlaveProperties;
+import com.zy.core.properties.SystemProperties;
import com.zy.core.thread.SteThread;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
+import java.util.Date;
import java.util.List;
/**
@@ -49,6 +55,8 @@
private BasSteService basSteService;
@Autowired
private WrkMastService wrkMastService;
+ @Autowired
+ private BasSteErrMapper basSteErrMapper;
@PostMapping("/table/ste/state")
@ManagerAuth(memo = "绌挎杞︿俊鎭〃")
@@ -69,8 +77,22 @@
if (steProtocol == null) {
continue;
}
- vo.setTaskNo(steProtocol.getTaskNo()); // 浠诲姟鍙�
- vo.setStatusType(steProtocol.mode == 0 ? "绂荤嚎" : "鍦ㄧ嚎"); // 妯″紡鐘舵��
+ vo.setTaskNo(steProtocol.getTaskNo().intValue()); // 浠诲姟鍙�
+ vo.setStatusVal(steProtocol.getMode().intValue()); // 鍦ㄧ嚎鐘舵��
+ String modeName = "绂荤嚎";
+ switch (steProtocol.mode){
+ case -1:
+ modeName = "绂荤嚎";
+ break;
+ case 0:
+ modeName = "鑴辨満";
+ break;
+ case 1:
+ modeName = "鑱旀満";
+ break;
+ }
+ vo.setStatusType(modeName); // 妯″紡
+// vo.setStatusType(steProtocol.mode == 0 ? "绂荤嚎" : "鍦ㄧ嚎"); // 妯″紡鐘舵��
if (!Cools.isEmpty(steProtocol.getStatus())) {
vo.setStatus(steProtocol.getStatusType().desc); // 鐘舵��
}
@@ -95,6 +117,14 @@
if (!Cools.isEmpty(steProtocol.getTrack())) {
vo.setTrack(steProtocol.getTrack()==0?"鉁�":"脳");
}
+ if (!Cools.isEmpty(steProtocol.getChargeStatus())) {
+ vo.setChargeStatus(steProtocol.getChargeStatus()==1?"鉁�":"脳");
+ }
+ if(steProtocol.getAlarm() > 0){
+ BasSteErr steErr = basSteErrMapper.selectById(steProtocol.getAlarm());
+ vo.setAlarm1(steErr==null?"鏈煡寮傚父":steErr.getErrName());
+ }
+ vo.setAlarm2(steProtocol.getAlarm0().toString());
}
return R.ok().add(list);
}
@@ -119,7 +149,7 @@
continue;
}
- vo.setWorkNo(steProtocol.getTaskNo()); // 浠诲姟鍙�
+ vo.setWorkNo(steProtocol.getTaskNo().intValue()); // 浠诲姟鍙�
if (steProtocol.getTaskNo() > 0) {
WrkMast wrkMast = wrkMastService.selectById(steProtocol.getTaskNo());
if (wrkMast != null) {
@@ -134,6 +164,7 @@
}
vo.setSpeed(steProtocol.getSpeed()); // 閫熷害
vo.setCloser(steProtocol.getCloser()); // 杩戠偣璺濈
+ vo.setPakMk(steProtocol.getPakMk()); // 浣滀笟鏍囪
}
return R.ok().add(list);
}
@@ -151,10 +182,101 @@
return R.ok().add(str.toString());
}
+ @GetMapping("/detl/{steNo}")
+ public R steDetl(@PathVariable("steNo") Integer steNo){
+ SteDataVo vo = new SteDataVo();
+ for (SteSlave ste : slaveProperties.getSte()) {
+ if (steNo.equals(ste.getId())) {
+ vo.setSteNo(ste.getId());
+ BasSte basSte = basSteService.selectById(ste.getId());
+ if (!Cools.isEmpty(basSte)) {
+ vo.setRow(basSte.getRow());
+ vo.setBay(basSte.getBay());
+ vo.setLev(basSte.getLev());
+ vo.setCrnNo(basSte.getCrnNo());
+ vo.setWorkNo(basSte.getWrkNo());
+ vo.setPakMk(basSte.getPakMk());
+ }
+ break;
+ }
+ }
+ return R.ok().add(vo);
+ }
+
+ @PostMapping("/detl/update")
+ @ManagerAuth
+ public R steUpdate(SteDataVo vo){
+ BasSte basSte = basSteService.selectById(vo.getSteNo());
+ if (basSte == null) {
+ return R.error();
+ }
+ // 鑾峰彇绌挎杞︿俊鎭�
+ SteThread steThread = (SteThread) SlaveConnection.get(SlaveType.Ste, vo.getSteNo());
+ SteProtocol steProtocol = steThread.getSteProtocol();
+ if (steProtocol == null) {
+ throw new CoolException(vo.getSteNo() + "鍙风┛姊溅涓嶅湪绾匡紝鏃犳硶淇濆瓨");
+ }
+ if (!Cools.isEmpty(vo.getRow(), vo.getBay(), vo.getLev())) {
+ if (!steThread.modifyPosHandle(vo.getRow(), vo.getBay(), vo.getLev())) {
+ throw new CoolException("鏈嶅姟鍣ㄩ敊璇�");
+ }
+ }
+ SteCommand steCommand = new SteCommand();
+ steCommand.setTaskNo(vo.getWorkNo());
+ if (MessageQueue.offer(SlaveType.Ste, vo.getSteNo(), new Task(2, steCommand))) {
+ } else {
+ throw new CoolException("鍛戒护涓嬪彂澶辫触");
+ }
+ basSte.setPakMk(vo.getPakMk());
+ basSte.setWrkNo(vo.getWorkNo());
+ basSte.setCrnNo(vo.getCrnNo());
+ basSte.setUpdateTime(new Date());
+ if (!basSteService.updateById(basSte)) {
+ throw new CoolException("淇敼澶辫触");
+ }
+ return R.ok();
+ }
+
/****************************************************************/
/************************** 鎵嬪姩鎿嶄綔 ******************************/
/****************************************************************/
+
+ @PostMapping("/mode/switch")
+ @ManagerAuth
+ public R crnDemo(SteModeParam param) throws InterruptedException {
+ if (Cools.isEmpty(param.getSteNo())){
+ return R.error();
+ }
+ if (Cools.isEmpty(param.getPassword())){
+ return R.error("璇疯緭鍏ュ彛浠�");
+ }
+ if (!param.getPassword().equals(SystemProperties.WCS_PASSWORD)){
+ return R.error("鍙d护閿欒");
+ }
+ Thread.sleep(200L);
+ for (SteSlave steSlave : slaveProperties.getSte()) {
+ if (steSlave.getId().equals(param.getSteNo())) {
+ // 鑾峰彇绌挎杞︿俊鎭�
+ SteThread steThread = (SteThread) SlaveConnection.get(SlaveType.Ste, steSlave.getId());
+ SteProtocol steProtocol = steThread.getSteProtocol();
+ if (steProtocol == null) { continue; }
+ SteCommand steCommand = new SteCommand();
+ steCommand.setSteNo(param.getSteNo()); // 绌挎杞︾紪鍙�
+ if (steProtocol.getMode() == 0) {
+ steCommand.setControlMode((short) 1);
+ } else {
+ steCommand.setControlMode((short) 0);
+ }
+ if (MessageQueue.offer(SlaveType.Ste, param.getSteNo(), new Task(2, steCommand))) {
+ return R.ok();
+ } else {
+ throw new CoolException("鍛戒护涓嬪彂澶辫触");
+ }
+ }
+ }
+ return R.ok();
+ }
@ManagerAuth(memo = "鎵嬪姩鎿嶄綔")
@PostMapping("/operator/ste")
@@ -179,6 +301,10 @@
steCommand.setSteNo(ste.getId()); // 绌挎杞︾紪鍙�
if (param.getSteTaskMode() == 16) {
steCommand.setComplete(true);
+ } else if (param.getSteTaskMode() == 99) {
+ steCommand.setControlMode((short) 1);
+ } else if (param.getSteTaskMode() == 100) {
+ steCommand.setControlMode((short) 0);
} else {
if (steTaskModeType == null) {
throw new CoolException("浠诲姟绫诲瀷閿欒");
--
Gitblit v1.9.1