From 4ea361f8b7fa5fa63c650832e6b5efa150cb6693 Mon Sep 17 00:00:00 2001
From: zc <zc@123>
Date: 星期四, 24 四月 2025 09:59:37 +0800
Subject: [PATCH] 初步调试
---
src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java | 2
src/main/java/com/zy/asrs/domain/dto/WrkDetl.java | 272 ++++++++++++++++++++++++++++++++++
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 12 +
src/main/java/com/zy/asrs/controller/TVController.java | 170 +++++++++++---------
4 files changed, 373 insertions(+), 83 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/TVController.java b/src/main/java/com/zy/asrs/controller/TVController.java
index 889d1c7..d4ba63c 100644
--- a/src/main/java/com/zy/asrs/controller/TVController.java
+++ b/src/main/java/com/zy/asrs/controller/TVController.java
@@ -1,5 +1,8 @@
package com.zy.asrs.controller;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Arith;
import com.core.common.Cools;
@@ -7,6 +10,7 @@
import com.zy.asrs.domain.dto.AxisBean;
import com.zy.asrs.domain.dto.WorkChartAxis;
import com.zy.asrs.domain.dto.LocChartPie;
+import com.zy.asrs.domain.dto.WrkDetl;
import com.zy.asrs.entity.BasDevp;
import com.zy.asrs.entity.BasShuttle;
import com.zy.asrs.entity.BasShuttleErr;
@@ -16,7 +20,10 @@
import com.zy.asrs.service.BasShuttleErrService;
import com.zy.asrs.service.BasShuttleService;
import com.zy.asrs.service.WrkMastService;
+import com.zy.common.model.MatDto;
+import com.zy.common.model.SearchLocParam;
import com.zy.common.service.CommonService;
+import com.zy.common.utils.HttpHandler;
import com.zy.core.cache.SlaveConnection;
import com.zy.core.enums.SlaveType;
import com.zy.core.model.ShuttleSlave;
@@ -25,11 +32,13 @@
import com.zy.core.properties.SlaveProperties;
import com.zy.core.thread.ShuttleThread;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
+import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.*;
@@ -55,6 +64,8 @@
private SlaveProperties slaveProperties;
@Autowired
private BasShuttleErrService basShuttleErrService;
+ @Value("${asrs.wmsUrl}")
+ private String wmsUrl;
/**
* 鑾峰彇褰撳墠鏃堕棿
@@ -210,83 +221,87 @@
/**
* 鑾峰彇鍏朵粬淇℃伅
*/
-// @GetMapping("/led")
-// public R monitorLed(@RequestParam("ledId") Integer ledId) {
-// BasDevp basDevp = basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no", ledId));
-// if (Cools.isEmpty(basDevp)) {
-// return R.ok();
-// }
-// WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp.getWrkNo()));
-// if (Cools.isEmpty(wrkMast)) {
-// return R.ok();
-// }
-// List<LedCommand> commands = new ArrayList<>();
-//
-// // 缁勮鍛戒护
-// LedCommand ledCommand = new LedCommand();
-// ledCommand.setWorkNo(wrkMast.getWrkNo());
-// ledCommand.setIoType(wrkMast.getIoType());
-// // 鍑哄簱妯″紡
-// switch (wrkMast.getIoType()) {
-// case 1:
-// ledCommand.setTitle("鍏ㄦ澘鍏ュ簱");
-// break;
-// case 10:
-// ledCommand.setTitle("绌烘澘鍏ュ簱");
-// break;
-// case 101:
-// ledCommand.setTitle("鍏ㄦ澘鍑哄簱");
-// break;
-// case 103:
-// ledCommand.setTitle("鎷f枡鍑哄簱");
-// break;
-// case 104:
-// ledCommand.setTitle("骞舵澘鍑哄簱");
-// break;
-// case 107:
-// ledCommand.setTitle("鐩樼偣鍑哄簱");
-// break;
-// case 110:
-// ledCommand.setTitle("绌烘澘鍑哄簱");
-// ledCommand.setEmptyMk(true);
-// break;
-// case 53:
-// ledCommand.setTitle("鎷f枡鍏ュ簱");
-// break;
-// case 57:
-// ledCommand.setTitle("鐩樼偣鍏ュ簱");
-// break;
-// case 54:
-// ledCommand.setTitle("骞舵澘鍏ュ簱");
-// break;
-// default:
-// break;
-// }
-// ledCommand.setSourceLocNo(wrkMast.getSourceLocNo());
-// ledCommand.setLocNo(wrkMast.getLocNo());
-// ledCommand.setStaNo(wrkMast.getStaNo());
-//// ledCommand.setSourceStaNo(wrkMast.getSourceStaNo());
-// if (wrkMast.getIoType() != 110 && wrkMast.getIoType() != 10) {
-// List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
-// try {
-// if (wrkMast.getIoType() > 100) {
-// for (WrkDetl wrkDetl : wrkDetls) {
-// LocDetl locDetl = locDetlService.selectMatnrSpecs(wrkDetl.getMatnr(), wrkDetl.getSpecs(), wrkMast.getSourceLocNo());
-// wrkDetl.setWeight(locDetl.getAnfme());
-// }
-// } else {
-// for (WrkDetl wrkDetl : wrkDetls) {
-// wrkDetl.setWeight(wrkDetl.getAnfme());
-// }
-// }
-// } catch (Exception e) {
-//// log.error("宸ヤ綔妗f鏄庣粏杈撳叆鐢佃鏈哄け璐�1锛氬紓甯镐俊鎭�==銆�"+e);
-// }
-// wrkDetls.forEach(wrkDetl -> ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getAnfme(), wrkDetl.getWeight(), wrkDetl.getSpecs(), wrkDetl.getModel())));
-// }
-// commands.add(ledCommand);
-// return R.ok().add(commands);
-// }
+ @GetMapping("/led")
+ public R monitorLed(@RequestParam("ledId") Integer ledId) {
+ BasDevp basDevp = basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no", ledId));
+ if (Cools.isEmpty(basDevp)) {
+ return R.ok();
+ }
+ WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wms_wrk_no", basDevp.getWrkNo()));
+ if (Cools.isEmpty(wrkMast)) {
+ return R.ok();
+ }
+ List<LedCommand> commands = new ArrayList<>();
+
+ // 缁勮鍛戒护
+ LedCommand ledCommand = new LedCommand();
+ ledCommand.setWorkNo(wrkMast.getWmsWrkNo());
+ ledCommand.setIoType(wrkMast.getIoType());
+ // 鍑哄簱妯″紡
+ switch (wrkMast.getIoType()) {
+ case 1:
+ ledCommand.setTitle("鍏ㄦ澘鍏ュ簱");
+ break;
+ case 10:
+ ledCommand.setTitle("绌烘澘鍏ュ簱");
+ break;
+ case 101:
+ ledCommand.setTitle("鍏ㄦ澘鍑哄簱");
+ break;
+ case 103:
+ ledCommand.setTitle("鎷f枡鍑哄簱");
+ break;
+ case 104:
+ ledCommand.setTitle("骞舵澘鍑哄簱");
+ break;
+ case 107:
+ ledCommand.setTitle("鐩樼偣鍑哄簱");
+ break;
+ case 110:
+ ledCommand.setTitle("绌烘澘鍑哄簱");
+ ledCommand.setEmptyMk(true);
+ break;
+ case 53:
+ ledCommand.setTitle("鎷f枡鍏ュ簱");
+ break;
+ case 57:
+ ledCommand.setTitle("鐩樼偣鍏ュ簱");
+ break;
+ case 54:
+ ledCommand.setTitle("骞舵澘鍏ュ簱");
+ break;
+ default:
+ break;
+ }
+ ledCommand.setSourceLocNo(wrkMast.getSourceLocNo());
+ ledCommand.setLocNo(wrkMast.getLocNo());
+ ledCommand.setStaNo(wrkMast.getStaNo());
+ if (wrkMast.getIoType() != 110 && wrkMast.getIoType() != 10) {
+ Map<String, Object> param = new HashMap<>();
+ param.put("taskNo", wrkMast.getWmsWrkNo());
+ param.put("sta", wrkMast.getStaNo());
+ String response = null;
+ try {
+ response = new HttpHandler.Builder()
+ .setUri(wmsUrl)
+ .setPath("/rpc/led/getTask2")
+ .setJson(JSON.toJSONString(param))
+ .build()
+ .doPost();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ JSONObject jsonObject = JSON.parseObject(response);
+ Integer code = jsonObject.getInteger("code");
+ if (code.equals(200)) {
+ String data = jsonObject.getString("data");
+ List<LedCommand> wrkDetls = JSONArray.parseArray(data, LedCommand.class);
+ commands.addAll(wrkDetls);
+ }
+ }
+
+ return R.ok().add(commands);
+ }
/**
* 寮傚父閫氱煡
@@ -316,7 +331,6 @@
@GetMapping("/device/error")
public R monitorDeviceError() {
ArrayList<HashMap<String, Object>> list = new ArrayList<>();
- List<BasShuttle> basCrnpLiset = shuttleService.selectList(new EntityWrapper<BasShuttle>());
for (ShuttleSlave shuttleSlave : slaveProperties.getShuttle()) {
// 鑾峰彇鍥涘悜绌挎杞︿俊鎭�
diff --git a/src/main/java/com/zy/asrs/domain/dto/WrkDetl.java b/src/main/java/com/zy/asrs/domain/dto/WrkDetl.java
new file mode 100644
index 0000000..c6ace7e
--- /dev/null
+++ b/src/main/java/com/zy/asrs/domain/dto/WrkDetl.java
@@ -0,0 +1,272 @@
+package com.zy.asrs.domain.dto;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.core.common.Cools;
+import com.core.common.SpringUtils;
+import com.zy.common.utils.Synchro;
+import com.zy.system.entity.User;
+import com.zy.system.service.UserService;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+@Data
+public class WrkDetl implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 宸ヤ綔鍙�
+ */
+ @ApiModelProperty(value= "宸ヤ綔鍙�")
+ private Integer wrkNo;
+
+ /**
+ * 宸ヤ綔鏃堕棿
+ */
+ @ApiModelProperty(value= "宸ヤ綔鏃堕棿")
+ private Date ioTime;
+
+ /**
+ * 鏁伴噺
+ */
+ @ApiModelProperty(value= "鏁伴噺")
+ private Double anfme;
+
+ /**
+ * 鎵樼洏鏉$爜
+ */
+ @ApiModelProperty(value= "鎵樼洏鏉$爜")
+ private String zpallet;
+
+ /**
+ * 鐗╂枡
+ */
+ @ApiModelProperty(value= "鍟嗗搧缂栧彿")
+ private String matnr;
+
+ /**
+ * 鐗╂枡鎻忚堪
+ */
+ @ApiModelProperty(value= "鍟嗗搧鍚嶇О")
+ private String maktx;
+
+ /**
+ * 鎵瑰彿
+ */
+ @ApiModelProperty(value= "鎵瑰彿")
+ private String batch;
+
+ /**
+ * 鍗曟嵁缂栧彿
+ */
+ @ApiModelProperty(value= "鍗曟嵁缂栧彿")
+ private String orderNo;
+
+ /**
+ * 瑙勬牸
+ */
+ @ApiModelProperty(value= "瑙勬牸")
+ private String specs;
+
+ /**
+ * 鍨嬪彿
+ */
+ @ApiModelProperty(value= "鍨嬪彿")
+ private String model;
+
+ /**
+ * 棰滆壊
+ */
+ @ApiModelProperty(value= "棰滆壊")
+ private String color;
+
+ /**
+ * 鍝佺墝
+ */
+ @ApiModelProperty(value= "鍝佺墝")
+ private String brand;
+
+ /**
+ * 鍗曚綅
+ */
+ @ApiModelProperty(value= "鍗曚綅")
+ private String unit;
+
+ /**
+ * 鍗曚环
+ */
+ @ApiModelProperty(value= "鍗曚环")
+ private Double price;
+
+ /**
+ * sku
+ */
+ @ApiModelProperty(value= "sku")
+ private String sku;
+
+ /**
+ * 鍗曚綅閲�
+ */
+ @ApiModelProperty(value= "鍗曚綅閲�")
+ private Double units;
+
+ /**
+ * 鏉$爜
+ */
+ @ApiModelProperty(value= "鏉$爜")
+ private String barcode;
+
+ /**
+ * 浜у湴
+ */
+ @ApiModelProperty(value= "浜у湴")
+ private String origin;
+
+ /**
+ * 鍘傚
+ */
+ @ApiModelProperty(value= "鍘傚")
+ private String manu;
+
+ /**
+ * 鐢熶骇鏃ユ湡
+ */
+ @ApiModelProperty(value= "鐢熶骇鏃ユ湡")
+ @TableField("manu_date")
+ private String manuDate;
+
+ /**
+ * 鍝侀」鏁�
+ */
+ @ApiModelProperty(value= "鍝侀」鏁�")
+ private String itemNum;
+
+ /**
+ * 瀹夊叏搴撳瓨閲�
+ */
+ @ApiModelProperty(value= "瀹夊叏搴撳瓨閲�")
+ private Double safeQty;
+
+ /**
+ * 閲嶉噺
+ */
+ @ApiModelProperty(value= "閲嶉噺")
+ private Double weight;
+
+ /**
+ * 闀垮害
+ */
+ @ApiModelProperty(value= "闀垮害")
+ private Double length;
+
+ /**
+ * 浣撶Н
+ */
+ @ApiModelProperty(value= "浣撶Н")
+ private Double volume;
+
+ /**
+ * 涓夋柟缂栫爜
+ */
+ @ApiModelProperty(value= "涓夋柟缂栫爜")
+ private String threeCode;
+
+ /**
+ * 渚涘簲鍟�
+ */
+ @ApiModelProperty(value= "渚涘簲鍟�")
+ private String supp;
+
+ /**
+ * 渚涘簲鍟嗙紪鐮�
+ */
+ @ApiModelProperty(value= "渚涘簲鍟嗙紪鐮�")
+ private String suppCode;
+
+ /**
+ * 鏄惁鎵规 1: 鏄� 0: 鍚�
+ */
+ @ApiModelProperty(value= "鏄惁鎵规 1: 鏄� 0: 鍚� ")
+ private Integer beBatch;
+
+ /**
+ * 淇濊川鏈�
+ */
+ @ApiModelProperty(value= "淇濊川鏈�")
+ private String deadTime;
+
+ /**
+ * 棰勮澶╂暟
+ */
+ @ApiModelProperty(value= "棰勮澶╂暟")
+ private Integer deadWarn;
+
+ /**
+ * 鍒惰喘 1: 鍒堕�� 2: 閲囪喘 3: 澶栧崗
+ */
+ @ApiModelProperty(value= "鍒惰喘 1: 鍒堕�� 2: 閲囪喘 3: 澶栧崗 ")
+ private Integer source;
+
+ /**
+ * 瑕佹眰妫�楠� 1: 鏄� 0: 鍚�
+ */
+ @ApiModelProperty(value= "瑕佹眰妫�楠� 1: 鏄� 0: 鍚� ")
+ private Integer inspect;
+
+ /**
+ * 鍗遍櫓鍝� 1: 鏄� 0: 鍚�
+ */
+ @ApiModelProperty(value= "鍗遍櫓鍝� 1: 鏄� 0: 鍚� ")
+ private Integer danger;
+
+ /**
+ * 淇敼浜哄憳
+ */
+ @ApiModelProperty(value= "淇敼浜哄憳")
+ private Long modiUser;
+
+ /**
+ * 淇敼鏃堕棿
+ */
+ @ApiModelProperty(value= "淇敼鏃堕棿")
+ private Date modiTime;
+
+ /**
+ * 鍒涘缓鑰�
+ */
+ @ApiModelProperty(value= "鍒涘缓鑰�")
+ private Long appeUser;
+
+ /**
+ * 娣诲姞鏃堕棿
+ */
+ @ApiModelProperty(value= "娣诲姞鏃堕棿")
+ private Date appeTime;
+
+ /**
+ * 澶囨敞
+ */
+ @ApiModelProperty(value= "澶囨敞")
+ private String memo;
+
+ @ApiModelProperty(value= "棰勭暀1")
+ private String temp1;
+ @ApiModelProperty(value= "棰勭暀1")
+ private String temp2;
+ @ApiModelProperty(value= "棰勭暀1")
+ private String temp3;
+ @ApiModelProperty(value= "棰勭暀1")
+ private String temp4;
+
+
+
+ public void sync(Object source) {
+ Synchro.Copy(source, this);
+ }
+
+}
diff --git a/src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java b/src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java
index b8650f1..96dff59 100644
--- a/src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java
@@ -31,7 +31,7 @@
//鏇茬嚎鍥�
@Select("select ymd,SUM(sto_qty) inqty,SUM(ret_qty) outqty from asr_sta_inout_view "
- + "where ymd>CONVERT(char(10), DATEADD(DAY,-12,GETDATE()), 120) group by ymd order by ymd")
+ + "where ymd>DATE_FORMAT(NOW(),'%Y-%m-%d') group by ymd order by ymd")
public List<WorkChartAxis> getChartAxis();
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 42bebb2..cee0f9d 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -426,8 +426,12 @@
ShuttleProtocol status1 = shuttleThread1.getStatus();
ShuttleProtocol status2 = shuttleThread2.getStatus();
List<String> loc = new ArrayList<>();
- loc.add(status1.getCurrentLocNo());
- loc.add(status2.getCurrentLocNo());
+ if (status1 != null) {
+ loc.add(status1.getCurrentLocNo());
+ }
+ if (status2 != null) {
+ loc.add(status2.getCurrentLocNo());
+ }
DevpSlave devpSlave = slaveProperties.getDevp().get(0);
// 閬嶅巻鍫嗗灈鏈哄嚭搴撶珯
DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, devpSlave.getId());
@@ -1215,9 +1219,9 @@
//鑾峰彇鎻愬崌鏈哄懡浠�
List<LiftCommand> liftCommands = liftThread.getPalletOutCommand(wrkMast.getWrkNo(), sourceLev, wrkMast.getStaNo());
LiftCommand liftCommand = liftCommands.get(0);
- if ( wrkMast.getStaNo()==1031){
+ if (wrkMast.getStaNo() == 1031) {
liftCommand.setTaskNo(wrkMast.getWrkNo());
- }else {
+ } else {
int deviceWrk = commonService.getWorkNo(8);//鐢熸垚鎻愬崌鏈鸿澶囧伐浣滃彿
liftCommand.setTaskNo(deviceWrk);//鏇存崲闅忔満浠诲姟鍙�
}
--
Gitblit v1.9.1