From 252c8f5f4241e548097f79bbc399ffee607a5327 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期四, 21 四月 2022 11:07:23 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/common/model/MesPakinParam.java | 43 ++++++++++++++
src/main/java/com/zy/common/constant/MesConstant.java | 2
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 3
src/main/java/com/zy/asrs/task/OrderSyncScheduler.java | 24 +++-----
src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java | 77 +++++++++++++++++++++++++
5 files changed, 132 insertions(+), 17 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index f346e05..6c3b9f9 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -289,13 +289,12 @@
for (DetlDto detlDto : detlDtos) {
mesCombParam.getList().add(new MesCombParam.Detl(detlDto.getMatnr(), detlDto.getAnfme()));
}
- System.out.println(JSON.toJSONString(mesCombParam));
String response;
try {
response = new HttpHandler.Builder()
.setUri(MesConstant.URL)
.setPath(MesConstant.PACK_DOWN_URL)
- .setJson(JSON.toJSONString(param))
+ .setJson(JSON.toJSONString(mesCombParam))
.build()
.doPost();
JSONObject jsonObject = JSON.parseObject(response);
diff --git a/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java b/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
index 05d7cba..58bd818 100644
--- a/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
+++ b/src/main/java/com/zy/asrs/task/OrderSyncScheduler.java
@@ -3,6 +3,8 @@
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.zy.asrs.entity.Order;
import com.zy.asrs.service.OrderService;
+import com.zy.asrs.task.core.ReturnT;
+import com.zy.asrs.task.handler.OrderSyncHandler;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
@@ -18,6 +20,8 @@
public class OrderSyncScheduler {
@Autowired
+ private OrderSyncHandler orderSyncHandler;
+ @Autowired
private OrderService orderService;
@Scheduled(cron = "0/3 * * * * ? ")
@@ -30,24 +34,14 @@
// }
}
- @Scheduled(cron = "0/3 * * * * ? ")
+ @Scheduled(cron = "0/5 * * * * ? ")
private void completeAndReport(){
- // 鎵�鏈夎鍗�
List<Order> orders = orderService.selectList(new EntityWrapper<Order>().eq("settle", 4L));
for (Order order : orders) {
-// OpenOrderCompeteResult result = new OpenOrderCompeteResult();
-// results.add(result);
-// result.setOrderNo(order.getOrderNo());
-// result.setOrderTime(order.getOrderTime());
-// result.setOrderType(order.getDocType$());
-// List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId());
-// for (OrderDetl orderDetl : orderDetls) {
-// result.getOrderDetails().add(new DetlDto(orderDetl.getOrderNo(), orderDetl.getMatnr(), orderDetl.getBatch(), orderDetl.getQty()));
-// }
-// // 淇敼璁㈠崟鐘舵�� 4.瀹屾垚 ===>> 6.宸蹭笂鎶�
-// if (!orderService.updateSettle(order.getId(), 6L, null)) {
-// throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
-// }
+ ReturnT<String> result = orderSyncHandler.start(order);
+ if (!result.isSuccess()) {
+ log.error("鍗曟嵁[orderNo={}]涓婃姤erp澶辫触", order.getOrderNo());
+ }
}
}
diff --git a/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java
new file mode 100644
index 0000000..a933ebc
--- /dev/null
+++ b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java
@@ -0,0 +1,77 @@
+package com.zy.asrs.task.handler;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.core.common.DateUtils;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.Order;
+import com.zy.asrs.entity.OrderDetl;
+import com.zy.asrs.service.OrderDetlService;
+import com.zy.asrs.service.OrderService;
+import com.zy.asrs.task.AbstractHandler;
+import com.zy.asrs.task.core.ReturnT;
+import com.zy.common.constant.MesConstant;
+import com.zy.common.model.MesPakinParam;
+import com.zy.common.utils.HttpHandler;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.transaction.interceptor.TransactionAspectSupport;
+
+import java.util.List;
+
+/**
+ * Created by vincent on 2020/7/7
+ */
+@Slf4j
+@Service
+public class OrderSyncHandler extends AbstractHandler<String> {
+
+ @Autowired
+ private JdbcTemplate jdbcTemplate;
+ @Autowired
+ private OrderService orderService;
+ @Autowired
+ private OrderDetlService orderDetlService;
+
+ @Transactional
+ public ReturnT<String> start(Order order) {
+ List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId());
+
+ MesPakinParam pakinParam = new MesPakinParam();
+ pakinParam.setPakinTime(DateUtils.convert(order.getUpdateTime()));
+ pakinParam.setLgortFrom("5008");
+ pakinParam.setLgortTo("5006");
+ for (OrderDetl orderDetl : orderDetls) {
+ pakinParam.getList().add(new MesPakinParam.Detl(orderDetl.getMatnr(), orderDetl.getAnfme()));
+ }
+
+ try {
+ String response = new HttpHandler.Builder()
+ .setUri(MesConstant.URL)
+ .setPath(MesConstant.PAKIN_URL)
+ .setJson(JSON.toJSONString(pakinParam))
+ .build()
+ .doPost();
+ JSONObject jsonObject = JSON.parseObject(response);
+ if (jsonObject.getInteger("code").equals(200)) {
+ // 淇敼璁㈠崟鐘舵�� 4.瀹屾垚 ===>> 6.宸蹭笂鎶�
+ if (!orderService.updateSettle(order.getId(), 6L, null)) {
+ throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+ }
+ } else {
+ log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", MesConstant.URL+MesConstant.PACK_DOWN_URL, JSON.toJSONString(pakinParam), response);
+ throw new CoolException("涓婃姤mes绯荤粺澶辫触");
+ }
+ } catch (Exception e) {
+ log.error("fail", e);
+ e.printStackTrace();
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+ return FAIL.setMsg(e.getMessage());
+ }
+ return SUCCESS;
+ }
+
+}
diff --git a/src/main/java/com/zy/common/constant/MesConstant.java b/src/main/java/com/zy/common/constant/MesConstant.java
index db2a78c..d69c1d2 100644
--- a/src/main/java/com/zy/common/constant/MesConstant.java
+++ b/src/main/java/com/zy/common/constant/MesConstant.java
@@ -10,4 +10,6 @@
public static final String PACK_DOWN_URL = "mes/api/zy/v1/packDown/sendList";
+ public static final String PAKIN_URL = "mes/api/zy/v1/warehouse/sendList";
+
}
diff --git a/src/main/java/com/zy/common/model/MesPakinParam.java b/src/main/java/com/zy/common/model/MesPakinParam.java
new file mode 100644
index 0000000..4e9b4cf
--- /dev/null
+++ b/src/main/java/com/zy/common/model/MesPakinParam.java
@@ -0,0 +1,43 @@
+package com.zy.common.model;
+
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Created by vincent on 2022/4/21
+ */
+@Data
+public class MesPakinParam {
+
+ // 鍏ュ簱鏃堕棿
+ private String pakinTime;
+
+ // 鏉ユ簮鍦� - 鍐欐
+ private String lgortFrom;
+
+ // 鐩殑鍦� - 鍐欐
+ private String lgortTo;
+
+ private List<Detl> list = new ArrayList<>();
+
+ @Data
+ public static class Detl {
+
+ // 鐗╂枡鏉$爜
+ private String barcode;
+
+ // 鏁伴噺
+ private Double anfme;
+
+ public Detl() {
+ }
+
+ public Detl(String barcode, Double anfme) {
+ this.barcode = barcode;
+ this.anfme = anfme;
+ }
+ }
+
+}
--
Gitblit v1.9.1