From 8416a2ccfedeb54b4244a38b8a53c1c5a5eec6a9 Mon Sep 17 00:00:00 2001
From: dubin <bindu_bean@163.com>
Date: 星期二, 06 一月 2026 16:34:55 +0800
Subject: [PATCH] #1
---
src/main/java/com/zy/asrs/entity/param/StatusParam.java | 5
src/main/java/com/zy/asrs/controller/MonitorController.java | 229 +++++++++++++++++++++++++
src/main/java/com/zy/asrs/entity/result/WrkPriority.java | 5
src/main/java/com/zy/common/web/WcsController.java | 91 ++++++++--
src/main/java/com/zy/asrs/entity/result/WorkIssuedResult.java | 6
src/main/java/com/zy/asrs/entity/result/WrkCancel.java | 3
src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java | 12 +
src/main/java/com/zy/common/model/MatDto.java | 78 ++++++++
src/main/java/com/zy/common/model/command/LedCommand.java | 37 ++++
src/main/java/com/zy/common/web/param/ErrorMsg.java | 2
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 3
src/main/java/com/zy/common/web/param/ApplyChangeEnd.java | 23 ++
src/main/java/com/zy/asrs/task/handler/WCSReportHandler.java | 5
src/main/java/com/zy/common/service/CommonService.java | 8
src/main/resources/application.yml | 15
15 files changed, 493 insertions(+), 29 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/MonitorController.java b/src/main/java/com/zy/asrs/controller/MonitorController.java
new file mode 100644
index 0000000..02945a2
--- /dev/null
+++ b/src/main/java/com/zy/asrs/controller/MonitorController.java
@@ -0,0 +1,229 @@
+package com.zy.asrs.controller;
+
+import com.core.common.Arith;
+import com.core.common.Cools;
+import com.core.common.R;
+import com.zy.asrs.entity.AxisBean;
+import com.zy.asrs.entity.LocChartPie;
+import com.zy.asrs.entity.WorkChartAxis;
+import com.zy.asrs.mapper.ReportQueryMapper;
+import com.zy.common.model.MatDto;
+import com.zy.common.model.command.LedCommand;
+import com.zy.common.service.CommonService;
+import org.springframework.beans.factory.annotation.Autowired;
+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 javax.servlet.http.HttpServletRequest;
+import java.text.SimpleDateFormat;
+import java.util.*;
+
+@RestController
+@RequestMapping("/monitor")
+public class MonitorController {
+
+ private static final String[] WEEK = {"鏄熸湡鏃�","鏄熸湡涓�","鏄熸湡浜�","鏄熸湡涓�","鏄熸湡鍥�","鏄熸湡浜�","鏄熸湡鍏�"};
+
+
+ @Autowired
+ private ReportQueryMapper reportQueryMapper;
+
+ /**
+ * 鑾峰彇褰撳墠鏃堕棿
+ */
+ @GetMapping("/date")
+ public R monitorDate() {
+ Date now = new Date();
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTime(now);
+ return R.ok(
+ Cools.add("year", calendar.get(Calendar.YEAR))
+ .add("month", CommonService.zerofill(String.valueOf(calendar.get(Calendar.MONTH)+1), 2))
+ .add("day", CommonService.zerofill(String.valueOf(calendar.get(Calendar.DATE)), 2))
+ .add("hour", CommonService.zerofill(String.valueOf(calendar.get(Calendar.HOUR_OF_DAY)), 2))
+ .add("minute", CommonService.zerofill(String.valueOf(calendar.get(Calendar.MINUTE)), 2))
+ .add("second", CommonService.zerofill(String.valueOf(calendar.get(Calendar.SECOND)) , 2))
+ .add("week", WEEK[calendar.get(Calendar.DAY_OF_WEEK)-1])
+ );
+ }
+
+
+ /**
+ * 鍏ュ簱鎶ヨ〃 -- 鎶樼嚎鍥�
+ */
+ @GetMapping("/pakin/rep")
+ public R monitorPakinRep(){
+ // 鍏ュ簱
+ List<Map<String, Object>> pakinRep = reportQueryMapper.queryPakinRep();
+ for (Map<String, Object> map : pakinRep) {
+ if (map.get("node")!=null) {
+ map.put("node", String.valueOf(map.get("node")).substring(5, 10));
+ }
+ }
+ // 鍑哄簱
+ List<Map<String, Object>> pakoutRep = reportQueryMapper.queryPakinRep();
+ return R.ok(pakinRep);
+ }
+
+ @GetMapping("/line/charts")
+ public R locIoLineCharts(){
+ Map<String,Object> map=new HashMap<String, Object>();
+ List<AxisBean> list = new ArrayList<AxisBean>();
+
+ List<WorkChartAxis> listChart = reportQueryMapper.getChartAxis();
+
+ if(listChart!=null) {
+ ArrayList<Integer> data1 = new ArrayList<Integer>();
+ ArrayList<Integer> data2 = new ArrayList<Integer>();
+
+ SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
+ Calendar calendar = Calendar.getInstance();
+ calendar.add(Calendar.DATE, -12);
+ for(int i=0;i<12;i++) {
+ boolean flag = true;
+ calendar.add(Calendar.DATE, 1);
+ String str = sf.format(calendar.getTime());
+ for(WorkChartAxis workChart : listChart) {
+ if(str.equals(workChart.getYmd())) {
+ data1.add(workChart.getInqty());
+ data2.add(workChart.getOutqty());
+ flag = false;
+ break;
+ }
+ }
+ if(flag) {
+ data1.add(0);
+ data2.add(0);
+ }
+ }
+ AxisBean inqty = new AxisBean();
+ inqty.setName("鍏ュ簱鏁伴噺");
+ Integer[] array1 = new Integer[data1.size()];
+ inqty.setData(data1.toArray(array1));
+ list.add(inqty);
+ AxisBean outqty = new AxisBean();
+ outqty.setName("鍑哄簱鏁伴噺");
+ Integer[] array2 = new Integer[data2.size()];
+ outqty.setData(data2.toArray(array2));
+ list.add(outqty);
+ }
+ map.put("rows",list);
+ return R.ok(map);
+ }
+
+ /**
+ * 搴撲綅浣跨敤鎯呭喌缁熻
+ */
+ @GetMapping("/loc/rep")
+ public R monitorLocRep(){
+ List<Map<String, Object>> pie = new ArrayList<>();
+
+ LocChartPie locUseRate = reportQueryMapper.getLocUseRate();
+ if(locUseRate!=null) {
+ Map<String, Object> map = new HashMap<>();
+ map.put("name", "鍦ㄥ簱");
+ map.put("value", locUseRate.getFqty());
+ pie.add(map);
+
+ Map<String, Object> map1 = new HashMap<>();
+ map1.put("name", "绌�");
+ map1.put("value", locUseRate.getOqty());
+ pie.add(map1);
+
+ Map<String, Object> map2 = new HashMap<>();
+ map2.put("name", "浣跨敤");
+ map2.put("value", locUseRate.getUqty());
+ pie.add(map2);
+
+ Map<String, Object> map3 = new HashMap<>();
+ map3.put("name", "绂佺敤");
+ map3.put("value", locUseRate.getXqty());
+ pie.add(map3);
+ }
+
+ // 鎬诲簱浣嶆暟
+ Integer total = (int) Arith.add(0, locUseRate.getFqty(), locUseRate.getOqty(), locUseRate.getUqty(), locUseRate.getXqty());
+ // 浣跨敤涓�
+ Integer used = locUseRate.getFqty() + locUseRate.getUqty();
+ // 搴撲綅浣跨敤鐜�
+ double usedDivides = Arith.divides(3, used, total);
+ double usedPr = Arith.multiplys(1, usedDivides, 100);
+
+ return R.ok(
+ Cools.add("pie", pie)
+ .add("stockCunt", locUseRate.getFqty())
+ .add("emptyCount", locUseRate.getOqty())
+ .add("noneCount", locUseRate.getXqty())
+ .add("total", total)
+ .add("used", used)
+ .add("usedPr", usedPr)
+ );
+ }
+
+ /**
+ * 鑾峰彇鍏朵粬淇℃伅
+ */
+ @GetMapping("/led")
+ public R monitorLed(@RequestParam("ledId") Integer ledId) {
+ String ledContent = "";
+ List<LedCommand> commandList = new ArrayList<>();
+ List<MatDto> matDtoList = new ArrayList<>();
+ MatDto matDto = new MatDto(
+ "001",
+ "鍘熸潗鏂�",
+ 100.0,
+ 150.0,
+ 100.0,
+ 200.0,
+ "1.2*1.3",
+ "ZGDW890",
+ "80000001",
+ "DWT01",
+ "涓浗鐢电綉",
+ "涓浗鐢电綉",
+ "ZGDW4396",
+ "ZGDW-9945"
+
+ );
+ matDtoList.add(matDto);
+ if (ledId == 100){
+ LedCommand command = new LedCommand(
+ "鍏ㄦ澘鍏ュ簱",
+ 9527,
+ 100,
+ 100,
+ "0100101",
+ "",
+ matDtoList,
+ false,
+ 1,
+ "80000001"
+ );
+ commandList.add(command);
+ }
+ return R.ok().add(commandList);
+ }
+
+ /**
+ * 寮傚父閫氱煡
+ */
+ @GetMapping("/led/error")
+ public R monitorLedError(@RequestParam("ledId") Integer ledId) {
+ String errorMsg = "";
+ if (ledId == 100){
+// errorMsg = "楹﹀綋鍔砎S鑲痉鍩�";
+ }
+ return R.ok().add(errorMsg);
+ }
+
+ @GetMapping("/getLedInfos")
+ public R getLedInfos(HttpServletRequest request) {
+ String remoteAddr = request.getRemoteAddr();
+ if (remoteAddr.equals("127.0.0.1")) {
+ return R.ok();
+ }
+ return R.ok();
+ }
+}
diff --git a/src/main/java/com/zy/asrs/entity/param/StatusParam.java b/src/main/java/com/zy/asrs/entity/param/StatusParam.java
index a7df03b..e87adff 100644
--- a/src/main/java/com/zy/asrs/entity/param/StatusParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/StatusParam.java
@@ -30,4 +30,9 @@
* 鐩殑浣嶇疆缂栫爜
*/
private String gridId;
+
+ /*
+ * 浠撳簱缂栫爜
+ * */
+ private String warehouse;
}
diff --git a/src/main/java/com/zy/asrs/entity/result/WorkIssuedResult.java b/src/main/java/com/zy/asrs/entity/result/WorkIssuedResult.java
index c8742eb..d015786 100644
--- a/src/main/java/com/zy/asrs/entity/result/WorkIssuedResult.java
+++ b/src/main/java/com/zy/asrs/entity/result/WorkIssuedResult.java
@@ -71,5 +71,11 @@
* 鍓嶏紝澶х殑鍦ㄥ悗
*/
private int order;
+
+ /*
+ * 璐х墿灏哄
+ * 鍚屽眰瀛樺湪涓嶅悓灏哄鐨勬墭鐩樻椂蹇呭~
+ * 1锛�2锛�3鏁板瓧瓒婂ぇ灏哄瓒婂ぇ*/
+ private Integer cargoSize;
}
}
diff --git a/src/main/java/com/zy/asrs/entity/result/WrkCancel.java b/src/main/java/com/zy/asrs/entity/result/WrkCancel.java
index 7878b6e..40f29d7 100644
--- a/src/main/java/com/zy/asrs/entity/result/WrkCancel.java
+++ b/src/main/java/com/zy/asrs/entity/result/WrkCancel.java
@@ -10,4 +10,7 @@
/*鍙栨秷鏃堕棿*/
private String msgTime;
+
+ /*浠撳簱缂栫爜*/
+ private String warehouse;
}
diff --git a/src/main/java/com/zy/asrs/entity/result/WrkPriority.java b/src/main/java/com/zy/asrs/entity/result/WrkPriority.java
index 26f9aee..f9b7774 100644
--- a/src/main/java/com/zy/asrs/entity/result/WrkPriority.java
+++ b/src/main/java/com/zy/asrs/entity/result/WrkPriority.java
@@ -5,7 +5,7 @@
@Data
public class WrkPriority {
- /*缁勫彿*/
+ /*浠诲姟鍙�*/
private String taskId;
/*浼樺厛绾�*/
@@ -13,4 +13,7 @@
/*璋冩暣鏃堕棿*/
private String msgTime;
+
+ /*浠撳簱缂栫爜*/
+ private String warehouse;
}
diff --git a/src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java b/src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java
index 6a804db..bc7ecf5 100644
--- a/src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/ReportQueryMapper.java
@@ -7,6 +7,7 @@
import org.springframework.stereotype.Repository;
import java.util.List;
+import java.util.Map;
@Mapper
@Repository
@@ -80,4 +81,15 @@
Integer selectWorkCountInSum(String matnr, @Param("start") String startTime, @Param("end") String endTime);
Integer selectWorkCountOutSum(String matnr, @Param("start") String startTime, @Param("end") String endTime);
+
+ @Select("select \n" +
+ "Min(wm.io_time) as node,\n" +
+ "isnull(count(1), 0) as val\n" +
+ "from asr_wrk_mast_log wm\n" +
+ "where wm.wrk_sts = 5 \n" +
+ "and (wm.io_type = 1 OR wm.io_type = 54)\n" +
+ "and datediff(d, wm.io_time, getdate())<=7 \n" +
+ "group by datediff(day,wm.io_time,getdate())\n" +
+ "order by Min(wm.io_time) asc\n")
+ List<Map<String, Object>> queryPakinRep();
}
diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index 5808540..d1c5351 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -87,6 +87,8 @@
private String cancel;
@Value("${wcs-slave.url}")
private String url;
+ @Value("${wcs-slave.warehouse}")
+ private String warehouse;
@Override
@Transactional
@@ -1044,6 +1046,7 @@
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
wrkCancel.setTaskId(workNo); // 浠诲姟鍙�
wrkCancel.setMsgTime(dateFormat.format(date)); // 鍙栨秷鏃堕棿
+ wrkCancel.setWarehouse(warehouse); // 浠撳簱缂栫爜
String response = "";
boolean flag = false;
diff --git a/src/main/java/com/zy/asrs/task/handler/WCSReportHandler.java b/src/main/java/com/zy/asrs/task/handler/WCSReportHandler.java
index 38bef90..fee9659 100644
--- a/src/main/java/com/zy/asrs/task/handler/WCSReportHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WCSReportHandler.java
@@ -37,6 +37,8 @@
private String inDevp;
@Value("${wcs-slave.outDevp}")
private String outDevp;
+ @Value("${wcs-slave.warehouse}")
+ private String warehouse;
@Autowired
private ApiLogService apiLogService;
@Autowired
@@ -138,7 +140,8 @@
WrkPriority wrkPriority = new WrkPriority();
Date date = new Date();
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- wrkPriority.setTaskId(wrkMast.getWrkNo().toString()); // 缁勫彿
+ wrkPriority.setTaskId(wrkMast.getWrkNo().toString()); // 浠诲姟鍙�
+ wrkPriority.setWarehouse(warehouse); // 浠撳簱缂栫爜
wrkPriority.setPriorityCode(wrkMast.getIoPri().intValue()); // 浼樺厛绾�
wrkPriority.setMsgTime(dateFormat.format(date)); // 璋冩暣鏃堕棿
diff --git a/src/main/java/com/zy/common/model/MatDto.java b/src/main/java/com/zy/common/model/MatDto.java
new file mode 100644
index 0000000..c36276a
--- /dev/null
+++ b/src/main/java/com/zy/common/model/MatDto.java
@@ -0,0 +1,78 @@
+package com.zy.common.model;
+
+import lombok.Data;
+
+/**
+ * Created by vincent on 2020/8/6
+ */
+@Data
+public class MatDto {
+
+ // 鐗╂枡缂栧彿
+ private String matnr;
+
+ // 鐗╂枡鍚嶇О
+ private String maktx;
+
+ private String maknx;
+
+ // 搴撲綅瑙勬牸
+ private String specs;
+
+ // 鐗╂枡鏁伴噺
+ private Double anfme;
+
+ // 搴撲綅鏁伴噺
+ private Double total;
+
+ //杈呮暟閲�
+ private Double weight;
+
+ // 杈呭簱浣嶆暟閲�
+ private Double totalWeight;
+
+ //鎵樼洏鐮�
+ private String barcode;
+
+ //u8鏃у搧鍚�
+ private String sku;
+
+ //鍨嬪彿
+ private String model;
+
+ //瀹㈡埛鍚嶇О
+ private String supp;
+
+ //寮�绁ㄥ鎴峰悕绉�
+ private String kpCstmrName;
+
+ //鍗曞彿
+ private String orderNo;
+
+ //鎵瑰彿
+ private String batch;
+
+// private String cstateid;
+
+ public MatDto() {
+ }
+
+ public MatDto(String matNo, String maktx, Double anfme, Double weight, Double total, Double totalWeight, String specs, String sku, String barcode, String model, String supp, String kpCstmrName, String orderNo, String batch) {
+ this.matnr = matNo;
+ this.maktx = maktx;
+ this.maknx = maktx;
+ this.specs = specs;
+ this.anfme = anfme;
+ this.weight = weight;
+ this.total = total;
+ this.totalWeight = totalWeight;
+ this.sku = sku;
+ this.barcode = barcode;
+ this.model = model;
+ this.supp = supp;
+ this.kpCstmrName = kpCstmrName;
+ this.orderNo = orderNo;
+ this.batch = batch;
+// this.cstateid = cstateid;
+ }
+}
diff --git a/src/main/java/com/zy/common/model/command/LedCommand.java b/src/main/java/com/zy/common/model/command/LedCommand.java
new file mode 100644
index 0000000..36b1376
--- /dev/null
+++ b/src/main/java/com/zy/common/model/command/LedCommand.java
@@ -0,0 +1,37 @@
+package com.zy.common.model.command;
+
+import com.zy.common.model.MatDto;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * led鍛戒护鎶ユ枃
+ * Created by vincent on 2020/8/11
+ */
+@Data
+@AllArgsConstructor
+public class LedCommand extends Object {
+
+ private String title;
+
+ private Integer workNo;
+
+ private Integer staNo;
+
+ private Integer sourceStaNo;
+
+ private String locNo;
+
+ private String sourceLocNo;
+
+ private List<MatDto> matDtos = new ArrayList<>();
+
+ private boolean emptyMk = false;
+
+ private Integer ioType;
+
+ private String barcode;
+}
diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index f94e117..0a522fa 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -221,7 +221,13 @@
// levList.addAll(locLevList);
for (Integer lev : locLevList) {
- List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts", "O").eq("lev1", lev).orderBy("bay1", true).orderBy("row1",true));
+ List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
+ .eq("loc_sts", "O")
+ .eq("lev1", lev)
+ .eq("loc_type1",locTypeDto.getLocType1())
+ .eq("loc_type2",locTypeDto.getLocType2())
+ .orderBy("bay1", true)
+ .orderBy("row1",true));
for (LocMast locMast : locMasts) {
String locNo = locMast.getLocNo();
//鑾峰彇閫氶亾缁�
diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java
index c54e16d..7b7c41d 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -18,6 +18,8 @@
import com.zy.common.model.StartupDto;
import com.zy.common.service.CommonService;
import com.zy.common.utils.HttpHandler;
+import com.zy.common.web.param.ApplyChangeEnd;
+import com.zy.common.web.param.ErrorMsg;
import com.zy.common.web.param.SearchEmptyParam;
import com.zy.common.web.param.SearchLocParam;
import lombok.extern.slf4j.Slf4j;
@@ -86,12 +88,12 @@
if (Cools.isEmpty(param.getFromPort())) {
return Re.error("婧愮珯缂栧彿涓嶈兘涓虹┖");
}
-// if(Cools.isEmpty(param.getWarehouse())){
-// return Re.error("浠撳簱缂栧彿涓嶈兘涓虹┖");
-// }
-// if(!param.getWarehouse().equals(warehouse)){
-// return Re.error("浠撳簱缂栧彿涓嶅尮閰�");
-// }
+ if(Cools.isEmpty(param.getWarehouse())){
+ return Re.error("浠撳簱缂栧彿涓嶈兘涓虹┖");
+ }
+ if(!param.getWarehouse().equals(warehouse)){
+ return Re.error("浠撳簱缂栧彿涓嶅尮閰�");
+ }
List<WaitPakin> waitPakins = null;
if (param.getFromPort().equals("101")) {
@@ -105,7 +107,7 @@
return Re.error("鏉$爜涓嶈兘涓虹┖");
}
waitPakins = waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", param.getBarCode()));
- if (Cools.isEmpty(waitPakins) && param.getIoType() != 10) {
+ if (Cools.isEmpty(waitPakins)) {
WrkMast wrkMast = wrkMastService.selectByBarcode(param.getBarCode());
if (wrkMast != null && wrkMast.getIoType() == 103) {
return Re.parse(CodeRes.PICK_600);
@@ -132,10 +134,18 @@
if (Cools.isEmpty(param.getCargoHeight())) {
return Re.error("楂樹綆妫�娴嬩俊鍙蜂笉鑳戒负绌�");
}
+ if (!param.getBarCode().startsWith("7")&&!param.getBarCode().startsWith("8")){
+ return Re.error("鏈畾涔夌殑鎵樼洏鐮佽鍒�");
+ }
// 婧愮珯鐐圭姸鎬佹娴�
BasDevp sourceStaNo = basDevpService.checkSiteStatus(Integer.valueOf(param.getFromPort()), true);
- sourceStaNo.setLocType1(param.getCargoHeight().shortValue());
+ sourceStaNo.setLocType1(param.getCargoHeight().shortValue()); // 楂樹綆搴撲綅
+ if (param.getBarCode().startsWith("7")){
+ sourceStaNo.setLocType2((short) 1); // 瀹界獎搴撲綅 1.绐勫簱浣�1200*1000*990 1鏈熷簱浣�
+ }else if (param.getBarCode().startsWith("8")){
+ sourceStaNo.setLocType2((short) 2); // 瀹界獎搴撲綅 2.瀹藉簱浣�1200*1000*1270 2鏈熷簱浣�
+ }
LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo);
StartupDto dto = null;
@@ -154,7 +164,7 @@
default:
break;
}
- log.info("WCS鍏ュ簱鎺ュ彛杩斿弬:{},鎵樼洏鐮�:{}", dto, param.getBarCode());
+ log.info("WCS婊℃澘鍏ュ簱鎺ュ彛杩斿弬:{},鎵樼洏鐮�:{}", dto, param.getBarCode());
return Re.ok();
}
@@ -162,12 +172,12 @@
@ResponseBody
public synchronized Re getLocNo(@RequestBody SearchEmptyParam param) {
log.info("鏀跺埌WCS绌烘澘鍏ュ簱鎺ュ彛璇锋眰====>>鍏ュ弬:{}", param);
-// if(Cools.isEmpty(param.getWarehouse())){
-// return Re.error("浠撳簱缂栧彿涓嶈兘涓虹┖");
-// }
-// if(!param.getWarehouse().equals(warehouse)){
-// return Re.error("浠撳簱缂栧彿涓嶅尮閰�");
-// }
+ if(Cools.isEmpty(param.getWarehouse())){
+ return Re.error("浠撳簱缂栧彿涓嶈兘涓虹┖");
+ }
+ if(!param.getWarehouse().equals(warehouse)){
+ return Re.error("浠撳簱缂栧彿涓嶅尮閰�");
+ }
// 婧愮珯鐐圭姸鎬佹娴�
BasDevp sourceStaNo = basDevpService.checkSiteStatus(Integer.valueOf(param.getFromPort()), true);
@@ -176,8 +186,48 @@
StartupDto dto = null;
dto = emptyPlateIn(Integer.valueOf(param.getFromPort()), locTypeDto);
- log.info("WCS鍏ュ簱鎺ュ彛杩斿弬:{},鎵樼洏鐮�:{}", dto);
+ log.info("WCS绌烘澘鍏ュ簱鎺ュ彛杩斿弬:{}", dto);
return Re.ok();
+ }
+
+ @PostMapping("/fromwcs/errorReport")
+ @ResponseBody
+ public synchronized Re errReport(@RequestBody ErrorMsg param){
+ log.info("鏀跺埌WCS浠诲姟鍏ュ簱寮傚父涓婃姤===>>鍏ュ弬:{}",param);
+ if(Cools.isEmpty(param.getWarehouse())){
+ return Re.error("浠撳簱缂栧彿涓嶈兘涓虹┖");
+ }
+ if(!param.getWarehouse().equals(warehouse)){
+ return Re.error("浠撳簱缂栧彿涓嶅尮閰�");
+ }
+ return Re.ok();
+ }
+
+ @PostMapping("/fromwcs/applyChangeEnd")
+ @ResponseBody
+ public synchronized Re applyChangeEnd(@RequestBody ApplyChangeEnd param){
+ log.info("鏀跺埌WCS鐢宠鏈�缁堢洰鐨勪綅缃�===>>鍏ュ弬:{}",param);
+ if(Cools.isEmpty(param.getWarehouse())){
+ return Re.error("浠撳簱缂栧彿涓嶈兘涓虹┖");
+ }
+ if(!param.getWarehouse().equals(warehouse)){
+ return Re.error("浠撳簱缂栧彿涓嶅尮閰�");
+ }
+ if (Cools.isEmpty(param.getTaskId())){
+ return Re.error("浠诲姟缂栧彿涓嶈兘涓虹┖");
+ }
+ WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", param.getTaskId()));
+ if (wrkMast == null){
+ return Re.error("WMS涓嶅瓨鍦ㄤ换鍔″彿:" + param.getTaskId() + "浠诲姟");
+ }
+ if (wrkMast.getIoType() > 100){
+ return Re.error("浠诲姟鍙�:" + param.getTaskId() + "鏄嚭搴撲换鍔�");
+ }
+ if (wrkMast.getWrkSts() == 4 || wrkMast.getWrkSts() == 5 || wrkMast.getWrkSts() == 14 || wrkMast.getWrkSts() == 15){
+ return Re.error("浠诲姟鍙�:" + param.getTaskId() + "宸茬粨鏉�");
+ }
+ String targetNo = wrkMast.getLocNo();
+ return Re.ok(targetNo);
}
@@ -409,7 +459,10 @@
LocTypeDto locTypeDto = new LocTypeDto();
locTypeDto.setLocType1(locType1);
//娉ㄦ剰涓�涓澘鍙兘鏀惧悓涓�绉嶇墿鏂欙紙妫�绱㈡柊搴撲綅锛�
- StartupDto dto = commonService.getLocNoRunPick(4, 1, 101, wrkDetls.get(0).getMatnr(), wrkDetls.get(0).getBatch(), null, 4, locTypeDto, 2);
+// StartupDto dto = commonService.getLocNoRunPick(4, 1, 101, wrkDetls.get(0).getMatnr(), wrkDetls.get(0).getBatch(), null, 4, locTypeDto, 2);
+ FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo();
+ findLocNoAttributeVo.setMatnr(wrkDetls.get(0).getMatnr());
+ StartupDto dto = commonService.getLocNoNew(1, 101, findLocNoAttributeVo,locTypeDto,null);
Date now = new Date();
wrkMast.setIoTime(now);
wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
@@ -500,7 +553,7 @@
map.put("posiY", locMast.getBay1());
map.put("posiZ", locMast.getLev1());
map.put("cargoNo", locMast.getLocNo());
- if(locMast.getLev1() == 1 && locMast.getRow1() == 8 && locMast.getBay1() == 1){
+ if(locMast.getLev1() == 1 && locMast.getRow1() == 6 && locMast.getBay1() == 1){
map.put("type", "6");
}else {
map.put("type", "0");
@@ -554,7 +607,7 @@
try {
// 淇濆瓨鎺ュ彛鏃ュ織
apiLogService.save(
- "wms鍚屾wcs搴撲綅澶辫触",
+ "wms鍚屾wcs搴撲綅",
url + "/" + loc,
null,
"127.0.0.1",
diff --git a/src/main/java/com/zy/common/web/param/ApplyChangeEnd.java b/src/main/java/com/zy/common/web/param/ApplyChangeEnd.java
new file mode 100644
index 0000000..fc0e743
--- /dev/null
+++ b/src/main/java/com/zy/common/web/param/ApplyChangeEnd.java
@@ -0,0 +1,23 @@
+package com.zy.common.web.param;
+
+import lombok.Data;
+
+@Data
+public class ApplyChangeEnd {
+ /*浠撳簱缂栫爜*/
+ private String warehouse;
+
+ /*浠诲姟id
+ * 涓婁綅绯荤粺涓嬪彂鐨勪换鍔d*/
+ private String taskId;
+
+ /*杞﹁締缂栧彿*/
+ private Integer deviceNo;
+
+ /*鐢宠鏃堕棿*/
+ private String msgTime;
+
+ /*宸烽亾鍙g紪鍙�
+ * 宸烽亾鍙f墍鍦ㄧ殑璐т綅缂栫爜*/
+ private String roadNo;
+}
diff --git a/src/main/java/com/zy/common/web/param/ErrorMsg.java b/src/main/java/com/zy/common/web/param/ErrorMsg.java
index 9333d3b..b54781c 100644
--- a/src/main/java/com/zy/common/web/param/ErrorMsg.java
+++ b/src/main/java/com/zy/common/web/param/ErrorMsg.java
@@ -1,7 +1,9 @@
package com.zy.common.web.param;
import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+@Data
public class ErrorMsg {
/**
* 浠撳簱缂栫爜
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index a44a887..527f9cd 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -55,9 +55,10 @@
#groupCount: 4
# 鐢辨祬鍏ユ繁
locGroupAscOrder: [
- {rowList: [3,1,2],minBay: 1,maxBay: 16},
- {rowList: [4],minBay: 1,maxBay: 16},
- {rowList: [5,6,7,8,9,10],minBay: 1,maxBay: 16},
+ {rowList: [4,3,2],minBay: 1,maxBay: 49},
+ {rowList: [6],minBay: 3,maxBay: 48},
+ {rowList: [7],minBay: 1,maxBay: 17},
+ {rowList: [8,9,10,11,12,13],minBay: 3,maxBay: 48},
]
#鏄惁寮�鍚痺ms涓嬪彂浠诲姟缁檞cs
workIssued-fig : true
@@ -68,17 +69,17 @@
#搴撲綅鍚屾
loc: fromWms/cargoNoSyn
#璐т綅淇℃伅鍚屾
- locInfo: fromWms/cargoLocationSyn
+ locInfo : fromWms/cargoLocationSyn
#浠诲姟鍙栨秷
- cancel: fromWms/taskCancel
+ cancel : fromWms/taskCancel
#浠诲姟浼樺厛绾ц皟鏁�
- priority: fromWms/taskPriority
+ priority : fromWms/taskPriority
#鍏ュ簱绔�
inDevp : 101
#鍑哄簱绔�
outDevp : 100
#浠撳簱缂栫爜
- warehouse : ddthasrs
+ warehouse : ddth
# wms鍙傛暟閰嶇疆
wms-parameter:
# 鑷姩琛ョ┖鏉垮姛鑳藉紑鍏�
--
Gitblit v1.9.1