From caa7a2327123cc070ae16ad802983c04e296ff11 Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期三, 04 二月 2026 13:46:00 +0800
Subject: [PATCH] #1。档案同步2,任务状态上报,3设备状态读取,4心跳,5wms手动完成取消任务
---
src/main/java/com/zy/asrs/entity/param/TaskCancelParam.java | 9 +
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 24 +++
src/main/java/com/zy/asrs/controller/OpenController.java | 37 +++++
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 8 +
src/main/java/com/zy/asrs/controller/MatController.java | 8 +
src/main/java/com/zy/asrs/entity/param/MatSyncParam.java | 24 +++
src/main/java/com/zy/asrs/service/impl/MatServiceImpl.java | 170 ++++++++++++++++++++++++
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 76 +++++++++-
src/main/java/com/zy/asrs/service/OpenService.java | 10 +
src/main/resources/application.yml | 3
src/main/java/com/zy/asrs/entity/param/TaskStatusFeedbackParam.java | 39 +++++
src/main/java/com/zy/asrs/service/MatService.java | 3
12 files changed, 398 insertions(+), 13 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/MatController.java b/src/main/java/com/zy/asrs/controller/MatController.java
index 90cc015..998d285 100644
--- a/src/main/java/com/zy/asrs/controller/MatController.java
+++ b/src/main/java/com/zy/asrs/controller/MatController.java
@@ -14,6 +14,7 @@
import com.zy.asrs.entity.MatPrint;
import com.zy.asrs.entity.OrderDetl;
import com.zy.asrs.entity.param.EmptyPlateOutParam;
+import com.zy.asrs.entity.param.MatSyncParam;
import com.zy.asrs.entity.result.KeyValueVo;
import com.zy.asrs.service.MatService;
import com.zy.asrs.utils.MatExcelListener;
@@ -58,6 +59,13 @@
return R.ok().add(mats);
}
+ @RequestMapping(value = "mat/sync")
+ @ManagerAuth
+ public R sync(@RequestBody MatSyncParam matSyncParam){
+ return matService.sync(matSyncParam);
+ }
+
+
// @RequestMapping(value = "/mat/search/pda/auth")
// @ManagerAuth
// public R pdaSearch(@RequestParam(required = false)String condition){
diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index e2e0f5b..7277a53 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -1,11 +1,16 @@
package com.zy.asrs.controller;
import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.annotations.AppAuth;
+import com.core.annotations.ManagerAuth;
import com.core.common.*;
import com.core.exception.CoolException;
+import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.entity.param.*;
import com.zy.asrs.service.OpenService;
+import com.zy.asrs.service.WorkService;
+import com.zy.asrs.service.impl.WrkMastServiceImpl;
import com.zy.common.model.DetlDto;
import com.zy.common.web.BaseController;
import lombok.extern.slf4j.Slf4j;
@@ -16,6 +21,8 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
+import java.util.Map;
+import java.util.HashMap;
/**
* Created by vincent on 2022/4/8
@@ -34,6 +41,10 @@
@Autowired
private OpenService openService;
+ @Autowired
+ private WorkService workService;
+ @Autowired
+ private WrkMastServiceImpl wrkMastService;
@PostMapping("/order/matSync/default/v2")
// @AppAuth(memo = "鍟嗗搧淇℃伅鍚屾鎺ュ彛")
@@ -429,4 +440,30 @@
return R.error("浠诲姟鍙蜂笉瀛樺湪");
}
+ /**
+ * 蹇冭烦鎺ュ彛
+ */
+ @PostMapping("/wmsHeartbeat")
+ public R heartbeat(@RequestBody Map<String, Object> param) {
+ if (param != null && param.get("timeStamp") != null) {
+ return R.ok("鎿嶄綔鎴愬姛");
+ }
+ return R.error("澶辫触");
+ }
+
+ @RequestMapping("/taskCancel")
+ @ManagerAuth(memo = "鎵嬪姩澶勭悊宸ヤ綔妗�")
+ public R handControlWrkMast(@RequestHeader(required = false) String appkey,@RequestBody TaskCancelParam taskCancelParam,HttpServletRequest request){
+ auth(appkey, taskCancelParam, request);
+
+ if (taskCancelParam.getTaskStatus() == 2) {
+ workService.completeWrkMast(taskCancelParam.getTaskNo(),null);
+ return R.ok("宸ヤ綔妗e凡瀹屾垚");
+ } else if (taskCancelParam.getTaskStatus() == 1) {
+ workService.cancelWrkMast(taskCancelParam.getTaskNo(), null);
+ return R.ok("宸ヤ綔妗e凡鍙栨秷");
+ }
+ return R.ok();
+ }
+
}
diff --git a/src/main/java/com/zy/asrs/entity/param/MatSyncParam.java b/src/main/java/com/zy/asrs/entity/param/MatSyncParam.java
index 298a252..54b5a69 100644
--- a/src/main/java/com/zy/asrs/entity/param/MatSyncParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/MatSyncParam.java
@@ -23,17 +23,20 @@
/**
* 鍟嗗搧缂栧彿
*/
- private String matnr;
+ private String matNr;
/**
* 鍟嗗搧鍚嶇О
*/
- private String maktx;
+ private String makTx;
/**
* 鍟嗗搧鍒嗙被
*/
private String groupCode;
+
+ private String groupId;
+
/**
* 鍒嗙被鍚嶇О
@@ -48,12 +51,17 @@
/**
* 瑙勬牸
*/
- private String specs;
+ private String spec;
/**
* 鍨嬪彿
*/
private String model;
+
+ /**
+ * 灏哄
+ */
+ private String size;
/**
* 棰滆壊
@@ -194,6 +202,16 @@
* 澶囨敞
*/
private String memo;
+
+ /**
+ * 鎻忚堪
+ */
+ private String describle;
+
+ /**
+ * 鎿嶄綔绫诲瀷锛�1 鏂板锛堥粯璁わ級锛�2 淇敼锛�3 绂佺敤锛�4 鍚敤锛�
+ */
+ private Integer operateType;
}
}
diff --git a/src/main/java/com/zy/asrs/entity/param/TaskCancelParam.java b/src/main/java/com/zy/asrs/entity/param/TaskCancelParam.java
new file mode 100644
index 0000000..3267c1d
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/param/TaskCancelParam.java
@@ -0,0 +1,9 @@
+package com.zy.asrs.entity.param;
+
+import lombok.Data;
+
+@Data
+public class TaskCancelParam {
+ private String taskNo;
+ private Integer taskStatus;
+}
diff --git a/src/main/java/com/zy/asrs/entity/param/TaskStatusFeedbackParam.java b/src/main/java/com/zy/asrs/entity/param/TaskStatusFeedbackParam.java
new file mode 100644
index 0000000..90e6200
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/param/TaskStatusFeedbackParam.java
@@ -0,0 +1,39 @@
+package com.zy.asrs.entity.param;
+
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 浠诲姟鐘舵�佸弽棣堝弬鏁�
+ */
+@Data
+public class TaskStatusFeedbackParam {
+
+ /**
+ * 宸ヤ綔鍙�
+ */
+ private String taskNo;
+
+ /**
+ * 1锛氬彇娑�
+ * 2锛氬畬缁�
+ * 3:鎷i�夈�佺洏鐐瑰嚭搴撲笂鎶ワ紙浠诲姟鏈粨鏉燂紝闇�瑕佸洖搴擄級
+ */
+ private Integer status;
+
+ /**
+ * 1:鍑哄簱锛�2锛氱Щ搴擄紝3:鍏ュ簱
+ */
+ private Integer ioType;
+
+ /**
+ * 鎵樼洏鐮�
+ */
+ private String barcode;
+
+ /**
+ * 涓婃姤鏃堕棿
+ */
+ private Date reportTime;
+}
diff --git a/src/main/java/com/zy/asrs/service/MatService.java b/src/main/java/com/zy/asrs/service/MatService.java
index 6660678..ba95d44 100644
--- a/src/main/java/com/zy/asrs/service/MatService.java
+++ b/src/main/java/com/zy/asrs/service/MatService.java
@@ -2,7 +2,9 @@
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
+import com.core.common.R;
import com.zy.asrs.entity.Mat;
+import com.zy.asrs.entity.param.MatSyncParam;
import java.util.List;
@@ -20,5 +22,6 @@
Mat selectNewUpdateTime();
String getOldMatnr(Long id);
+ R sync(MatSyncParam matSyncParam);
}
diff --git a/src/main/java/com/zy/asrs/service/OpenService.java b/src/main/java/com/zy/asrs/service/OpenService.java
index 8083759..2b2e923 100644
--- a/src/main/java/com/zy/asrs/service/OpenService.java
+++ b/src/main/java/com/zy/asrs/service/OpenService.java
@@ -50,4 +50,14 @@
void taskArmWorkOrderStatus(OrderArmEndParam param);
boolean TaskArmWorkOrderSign(OrderArmEndParam param);
boolean TaskAgvReport(TaskAgvReportParam param);
+
+ /**
+ * 浠诲姟鐘舵�佸弽棣堜笂鎶�
+ * @param taskNo 宸ヤ綔鍙�
+ * @param status 鐘舵�� 1锛氬彇娑� 2锛氬畬缁� 3:鎷i�夈�佺洏鐐瑰嚭搴撲笂鎶�
+ * @param ioType 绫诲瀷 1:鍑哄簱锛�2锛氱Щ搴擄紝3:鍏ュ簱
+ * @param barcode 鎵樼洏鐮�
+ * @return 鏄惁鎴愬姛
+ */
+ boolean reportTaskStatus(String taskNo, Integer status, Integer ioType, String barcode);
}
diff --git a/src/main/java/com/zy/asrs/service/impl/MatServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MatServiceImpl.java
index 45bbcfe..a6ce423 100644
--- a/src/main/java/com/zy/asrs/service/impl/MatServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MatServiceImpl.java
@@ -1,17 +1,35 @@
package com.zy.asrs.service.impl;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.core.common.R;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.Tag;
+import com.zy.asrs.entity.param.MatSyncParam;
+import com.zy.asrs.service.ApiLogService;
+import com.zy.asrs.service.TagService;
+import com.zy.common.config.CoolExceptionHandler;
+import com.zy.erp.kingdee.enums.KingDeeUtilType;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zy.asrs.entity.Mat;
import com.zy.asrs.mapper.MatMapper;
import com.zy.asrs.service.MatService;
+import org.springframework.transaction.annotation.Transactional;
+import java.text.MessageFormat;
+import java.util.ArrayList;
+import java.util.Date;
import java.util.List;
+import java.util.Objects;
@Service("matService")
public class MatServiceImpl extends ServiceImpl<MatMapper, Mat> implements MatService {
-
+ @Autowired
+ private ApiLogService apiLogService;
+ @Autowired
+ private TagService tagService;
@Override
public Page<Mat> getPage(Page page, String tagId, Object matnr, Object maktx) {
return page.setRecords(baseMapper.listByPage(page, tagId, matnr, maktx));
@@ -56,11 +74,159 @@
page.setTotal(16);
return page;
};
- @Override
public String getOldMatnr(Long id){
return this.baseMapper.getOldMatnr(id);
}
+ private Tag getOrCreateTag(MatSyncParam.MatParam param) {
+ Tag tag = tagService.selectOne(
+ new EntityWrapper<Tag>()
+ .eq("name", param.getGroupName())
+ .eq("uuid", param.getGroupId())
+ );
+ Tag tagAll = tagService.selectOne(new EntityWrapper<Tag>().eq("name", "鍏ㄩ儴"));
+ if (tag == null) {
+ tag = new Tag();
+ tag.setUuid(param.getGroupId());
+ tag.setName(param.getGroupName());
+ tag.setParentId(tagAll.getId());
+ tag.setParentName("鍏ㄩ儴");
+ tag.setPath(String.valueOf(tagAll.getId()));
+ tag.setPathName("鍏ㄩ儴");
+ tag.setStatus(1);
+ tag.setLevel(2);
+ if (!tagService.insert(tag)) {
+ throw new CoolException("鏂板缓鐩綍澶辫触");
+ }
+ }
+ return tag;
+ }
+
+ @Override
+ public R sync(MatSyncParam matSyncParam) {
+
+ List<String> errors = new ArrayList<>();
+ Date now = new Date();
+
+ for (MatSyncParam.MatParam param : matSyncParam.getMatDetails()) {
+
+ try {
+ if (param.getOperateType() == 1 || param.getOperateType() == 2) {
+
+ Tag tag = getOrCreateTag(param);
+ Mat mat = this.selectOne(
+ new EntityWrapper<Mat>().eq("matnr", param.getMatNr())
+ );
+
+ if (mat == null) {
+ mat = new Mat();
+ mat.setMatnr(param.getMatNr());
+ mat.setStatus(1);
+ fillMat(mat, param, tag);
+ mat.setCreateTime(now);
+
+ if (!this.insert(mat)) {
+ errors.add("鏂板鐗╂枡澶辫触锛�" + param.getMatNr());
+ }
+ } else {
+ if (fillMat(mat, param, tag)) {
+ mat.setUpdateTime(now);
+ if (!this.updateById(mat)) {
+ errors.add("鏇存柊鐗╂枡澶辫触锛�" + param.getMatNr());
+ }
+ }
+ }
+ }
+
+ if (param.getOperateType() == 3 || param.getOperateType() == 4) {
+ Mat mat = this.selectOne(
+ new EntityWrapper<Mat>().eq("matnr", param.getMatNr())
+ );
+ if (mat == null) {
+ errors.add("鐗╂枡涓嶅瓨鍦細" + param.getMatNr());
+ continue;
+ }
+ mat.setStatus(param.getOperateType() == 3 ? 0 : 1);
+ if (!this.updateById(mat)) {
+ errors.add("鐘舵�佹洿鏂板け璐ワ細" + param.getMatNr());
+ }
+ }
+
+ } catch (Exception e) {
+ errors.add("澶勭悊寮傚父锛�" + param.getMatNr());
+ }
+ }
+
+ if (errors.isEmpty()) {
+ return R.ok("鍚屾鎴愬姛");
+ }
+ R r = R.error("鍚屾瀹屾垚锛屽瓨鍦ㄥけ璐ユ暟鎹�");
+ r.put("errors", errors);
+ return r;
+ }
+ private boolean fillMat(Mat mat, MatSyncParam.MatParam param, Tag tag) {
+ boolean changed = false;
+
+ if (!Objects.equals(mat.getMaktx(), param.getMakTx())) {
+ mat.setMaktx(param.getMakTx());
+ changed = true;
+ }
+
+ if (!Objects.equals(mat.getMemo(), param.getDescrible())) {
+ mat.setMemo(param.getDescrible());
+ changed = true;
+ }
+
+ if (!Objects.equals(mat.getWeight(), param.getWeight())) {
+ mat.setWeight(param.getWeight());
+ changed = true;
+ }
+
+ if (!Objects.equals(mat.getSpecs(), param.getSpec())) {
+ mat.setSpecs(param.getSpec());
+ changed = true;
+ }
+
+ if (!Objects.equals(mat.getModel(), param.getModel())) {
+ mat.setModel(param.getModel());
+ changed = true;
+ }
+
+ if (!Objects.equals(mat.getColor(), param.getColor())) {
+ mat.setColor(param.getColor());
+ changed = true;
+ }
+
+ if (!Objects.equals(mat.getBrand(), param.getSize())) {
+ mat.setBrand(param.getSize());
+ changed = true;
+ }
+
+ if (!Objects.equals(mat.getUnit(), param.getUnit())) {
+ mat.setUnit(param.getUnit());
+ changed = true;
+ }
+
+ if (!Objects.equals(mat.getUuid(), param.getGroupId())) {
+ mat.setUuid(param.getGroupId());
+ changed = true;
+ }
+
+ Long tagId = tag == null ? null : tag.getId();
+ if (!Objects.equals(mat.getTagId(), tagId)) {
+ mat.setTagId(tagId);
+ changed = true;
+ }
+
+ return changed;
+ }
+
+ public void callApiLogSaveMat(Mat mat, String response, Boolean bool) {
+ apiLogService.save("鍟嗗搧妗f鍚屾", "mat/sync", "null", "localhost",
+ "鐗╂枡缂栧彿锛�" + mat.getMatnr() + "銆佺墿鏂欏悕绉帮細" + mat.getMaktx() + "銆佹瘺閲嶏細" + mat.getWeight()
+ + "銆佺姸鎬侊細" + mat.getStatus$(),
+ response, bool);
+ }
}
diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index 67bdd9f..3325572 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -1,6 +1,7 @@
package com.zy.asrs.service.impl;
import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
import com.core.common.DateUtils;
@@ -16,16 +17,16 @@
import com.zy.asrs.utils.OrderInAndOutUtil;
import com.zy.asrs.utils.Utils;
import com.zy.common.model.DetlDto;
+import com.zy.common.utils.HttpHandler;
import com.zy.common.utils.NodeUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.rmi.CORBA.Util;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
/**
* Created by vincent on 2022/4/9
@@ -62,7 +63,10 @@
private BasAgvMastService basAgvMastService;
@Autowired
private LocOwnerService locOwnerService;
-
+ @Autowired
+ private ApiLogService apiLogService;
+ @Value("${wms.url}")
+ private String wmsUrl;
@Override
@Transactional
public void pakinOrderCreate(OpenOrderPakinParam param) {
@@ -519,12 +523,12 @@
}
for(MatSyncParam.MatParam matParam : param.getMatDetails()){
- if(Cools.isEmpty(matParam.getMatnr())){
+ if(Cools.isEmpty(matParam.getMatNr())){
throw new CoolException("鍟嗗搧缂栫爜涓嶈兘涓虹┖");
}
Date now = new Date();
- Mat mat = matService.selectByMatnr(matParam.getMatnr());
+ Mat mat = matService.selectByMatnr(matParam.getMatNr());
if (mat == null) {
mat = new Mat();
// 鍒嗙被
@@ -612,7 +616,7 @@
}
} else {
mat.sync(matParam);
- if (!matService.update(mat, new EntityWrapper<Mat>().eq("matnr",matParam.getMatnr()))) {
+ if (!matService.update(mat, new EntityWrapper<Mat>().eq("matnr",matParam.getMatNr()))) {
throw new CoolException("鏇存柊宸插瓨鍦ㄥ晢鍝佷俊鎭け璐ワ紝璇疯仈绯荤鐞嗗憳");
}
}
@@ -778,4 +782,62 @@
}
+ @Override
+ public boolean reportTaskStatus(String taskNo, Integer status, Integer ioType, String barcode) {
+ try {
+ TaskStatusFeedbackParam param = new TaskStatusFeedbackParam();
+ param.setTaskNo(taskNo);
+ param.setStatus(status);
+ param.setIoType(ioType);
+ param.setBarcode(barcode);
+ param.setReportTime(new Date());
+
+ Map<String, Object> headers = new HashMap<>();
+ headers.put("appkey", "ea1f0459efc02a79f046f982767939ae");
+
+ String response = new HttpHandler.Builder()
+ .setUri(wmsUrl)
+ .setPath("/taskStatusFeedback")
+ .setJson(JSON.toJSONString(param))
+ .setHeaders(headers)
+ .build()
+ .doPost();
+
+ boolean success = false;
+ log.info("浠诲姟鐘舵�佸弽棣堜笂鎶ョ粨鏋滐細{}", response);
+ if (response != null) {
+ try {
+ JSONObject jsonObject = JSON.parseObject(response);
+ // 鍋囪杩斿洖code涓�200琛ㄧず鎴愬姛
+ if (jsonObject != null && jsonObject.containsKey("code") && jsonObject.getInteger("code") == 200) {
+ success = true;
+ }
+ } catch (Exception e) {
+ log.warn("瑙f瀽鍝嶅簲澶辫触", e);
+ }
+ }
+
+ // 璁板綍鏃ュ織
+ try {
+ apiLogService.save("浠诲姟鐘舵�佸弽棣堜笂鎶�",
+ "/taskStatusFeedback",
+ "ea1f0459efc02a79f046f982767939ae",
+ wmsUrl,
+ JSON.toJSONString(param),
+ response,
+ success);
+ } catch (Exception e) {
+ log.error("淇濆瓨API鏃ュ織寮傚父", e);
+ }
+
+ return success;
+ } catch (Exception e) {
+ log.error("浠诲姟鐘舵�佸弽棣堜笂鎶ュ紓甯�", e);
+ }
+ return false;
+ }
+
+
+
+
}
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 d922141..983ae44 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -103,6 +103,7 @@
@Resource
private BasAgvWrkDetlService basAgvWrkDetlService;
+ private OpenService openService;
@Override
@Transactional
@@ -991,6 +992,7 @@
@Transactional
public void completeWrkMast(String workNo, Long userId) {
WrkMast wrkMast = wrkMastService.selectById(workNo);
+ Integer ioType = 0;
if (Cools.isEmpty(wrkMast)){
throw new CoolException(workNo+"宸ヤ綔妗d笉瀛樺湪");
}
@@ -1000,9 +1002,15 @@
// 鍏ュ簱 + 搴撲綅杞Щ
if (wrkMast.getWrkSts() < 4 || (wrkMast.getWrkSts() > 10 && wrkMast.getIoType()==11)) {
wrkMast.setWrkSts(4L);
+ if(wrkMast.getIoType() == 11){
+ ioType = 2;
+ }else{
+ ioType = 3;
+ }
// 鍑哄簱
} else if (wrkMast.getWrkSts() > 10) {
wrkMast.setWrkSts(14L);
+ ioType = 1;
}
Date now = new Date();
wrkMast.setCrnStrTime(DateUtils.calculate(now, 1L, TimeUnit.SECONDS, true));
diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
index 164d81d..394427a 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -41,6 +41,8 @@
private OrderDetlPakinService orderDetlPakinService;
@Autowired
private OrderDetlPakoutService orderDetlPakoutService;
+ @Autowired
+ private OpenService openService;
public ReturnT<String> start(WrkMast wrkMast) {
// 4.鍏ュ簱瀹屾垚
@@ -56,6 +58,8 @@
private ReturnT<String> doIn(WrkMast wrkMast){
Date now = new Date();
LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
+ Integer status = 0;
+ Integer ioType = 0;
try {
if (null == locMast) {
// exceptionHandle("宸ヤ綔妗workNo={0}]搴撲綅鍙烽敊璇痆locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
@@ -79,6 +83,8 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("绌烘澘鍏ュ簱 ===>> 淇敼搴撲綅鐘舵�佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
}
+ status = 2;
+ ioType = 3;
}
break;
// 鍏ㄦ澘鍏ュ簱
@@ -166,6 +172,8 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("鍏ㄦ澘鍏ュ簱 ===>> 淇敼搴撲綅鐘舵�佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
}
+ status = 2;
+ ioType = 3;
}
break;
// 鎷f枡閫斾腑骞舵澘
@@ -271,6 +279,8 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("鎷f枡鍏ュ簱 ===>> 淇敼搴撲綅鐘舵�佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
}
+ status = 2;
+ ioType = 3;
}
break;
// 骞舵澘鍏ュ簱
@@ -372,6 +382,8 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("鐩樼偣鍏ュ簱 ===>> 淇敼搴撲綅鐘舵�佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
}
+ status = 2;
+ ioType = 3;
}
break;
// 搴撲綅绉昏浆
@@ -411,6 +423,8 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("搴撲綅绉昏浆 ===>> 淇敼鐩爣搴撲綅鐘舵�佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
}
+ status = 2;
+ ioType = 2;
break;
default:
break;
@@ -423,6 +437,8 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("鏇存柊鍏ュ簱瀹屾垚鐘舵�佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
}
+ openService.reportTaskStatus(String.valueOf(wrkMast.getWrkNo()),status,ioType,wrkMast.getBarcode());
+
} catch (Exception e) {
log.error("fail", e);
e.printStackTrace();
@@ -435,6 +451,8 @@
private ReturnT<String> doOut(WrkMast wrkMast){
Date now = new Date();
LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo());
+ Integer status = 0;
+ Integer ioType = 0;
try {
if (null == locMast && wrkMast.getIoType() !=12) {
// exceptionHandle("宸ヤ綔妗workNo={0}]搴撲綅鍙烽敊璇痆locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
@@ -497,6 +515,8 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("鍏ㄦ澘鍑哄簱 ===>> 淇敼婧愬簱浣嶇姸鎬佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
}
+ status = 2;
+ ioType = 1;
}
break;
// 骞舵澘閫斾腑鎹℃枡
@@ -545,6 +565,8 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("绌烘澘鍑哄簱 ===>> 淇敼婧愬簱浣嶇姸鎬佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
}
+ status = 2;
+ ioType = 1;
}
break;
//3鍙峰爢鍨涙満琛旀帴
@@ -561,6 +583,8 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return FAIL.setMsg("鏇存柊鍑哄簱瀹屾垚鐘舵�佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
}
+ openService.reportTaskStatus(String.valueOf(wrkMast.getWrkNo()),status,ioType,wrkMast.getBarcode());
+
} catch (Exception e) {
log.error("fail", e);
e.printStackTrace();
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 6ac2349..5c9b019 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -69,7 +69,8 @@
autoLocMoveBoolean: false
# 鑷姩绉诲簱鍔熻兘寮�鍏� 绌挎
autoLocMoveUnilateralBoolean: false
-
+wms:
+ url: localhost:8080
comb:
limit: 5000
--
Gitblit v1.9.1