From 56b1b873191d6e7022ed225cf81c3eda774f210e Mon Sep 17 00:00:00 2001
From: skyouc <958836976@qq.com>
Date: 星期六, 11 四月 2026 18:02:42 +0800
Subject: [PATCH] WMS2.0与WCS3.0对接完整版
---
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 84 ++++++++++++++++++++++++++++++++++++++----
1 files changed, 76 insertions(+), 8 deletions(-)
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 e443df3..d7455b9 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -1,26 +1,25 @@
package com.zy.asrs.service.impl;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
-import com.core.common.BaseRes;
-import com.core.common.Cools;
-import com.core.common.DateUtils;
-import com.core.common.SnowflakeIdWorker;
+import com.core.common.*;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
-import com.zy.asrs.entity.param.EmptyPlateOutParam;
-import com.zy.asrs.entity.param.FullStoreParam;
-import com.zy.asrs.entity.param.LocDetlAdjustParam;
-import com.zy.asrs.entity.param.StockOutParam;
+import com.zy.asrs.entity.param.*;
+import com.zy.asrs.entity.param.CompleteParam;
import com.zy.asrs.entity.result.FindLocNoAttributeVo;
import com.zy.asrs.mapper.LocMastMapper;
import com.zy.asrs.service.*;
import com.zy.asrs.utils.Utils;
+import com.zy.common.constant.MesConstant;
import com.zy.common.model.*;
import com.zy.common.model.enums.IoWorkType;
import com.zy.common.model.enums.WorkNoType;
import com.zy.common.properties.SlaveProperties;
import com.zy.common.service.CommonService;
+import com.zy.common.utils.HttpHandler;
import com.zy.common.web.WcsController;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
@@ -1404,4 +1403,73 @@
}
}
+ /**
+ * 鎵ц绉诲簱浠诲姟
+ * @param combParam
+ * @param userId
+ */
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public R taskMove(CompleteParam combParam, Long userId) {
+
+ if (Objects.isNull(combParam.getTaskNo())) {
+ return R.error("浠诲姟鍙蜂笉鑳戒负绌�");
+ }
+ if (Objects.isNull(combParam.getSourceLocNo())) {
+ return R.error("婧愬簱浣嶄笉鑳戒负绌猴紒锛�");
+ }
+ if (Objects.isNull(combParam.getLocNo())) {
+ return R.error("鐩爣搴撲綅涓嶈兘涓虹┖锛�");
+ }
+ WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", combParam.getTaskNo()));
+ if (Objects.isNull(wrkMast)) {
+ return R.error("浠诲姟妗d笉瀛樺湪锛侊紒");
+ }
+
+ String body = JSON.toJSONString(combParam);
+ boolean success = false;
+ String response = "";
+ try {
+ response = new HttpHandler.Builder()
+ .setUri(MesConstant.WCS_URL)
+ .setPath(MesConstant.MOVE_LOC_TASK)
+ .setJson(body)
+ .build()
+ .doPost();
+ JSONObject jsonObject = JSON.parseObject(response);
+ if (jsonObject.getInteger("code").equals(200)) {
+ wrkMast.setWrkSts(2L);
+ if (!wrkMastService.updateById(wrkMast)) {
+ throw new CoolException("浠诲姟鐘舵�佹洿鏂板け璐ワ紒锛�");
+ }
+ LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getSourceLocNo()));
+ if (!Objects.isNull(locMast)) {
+ locMast.setMoveStatus(1);
+ locMastService.updateById(locMast);
+ }
+ success = true;
+ } else {
+ log.error("鍙戦�乤gv浠诲姟澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", MesConstant.WCS_URL + MesConstant.MOVE_LOC_TASK, body, response);
+ }
+ } catch (Exception e) {
+ log.error("鍙戦�乤gv浠诲姟寮傚父", e);
+ } finally {
+ try {
+ // 淇濆瓨鎺ュ彛鏃ュ織
+ apiLogService.save(
+ "鍙戦�乤gv浠诲姟",
+ MesConstant.WCS_URL + MesConstant.MOVE_LOC_TASK,
+ null,
+ "127.0.0.1",
+ body,
+ response,
+ success);
+ } catch (Exception e) {
+ log.error("", e);
+ }
+ }
+
+ return null;
+ }
+
}
--
Gitblit v1.9.1