From 5dc8a9f9aba3310fd21cad9509635bb7ec2f007f Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期四, 12 十二月 2024 13:29:06 +0800
Subject: [PATCH] Generating...
---
src/main/java/com/zy/asrs/service/ReportDataLogService.java | 11 +
src/main/java/com/zy/asrs/service/ReportDataService.java | 12 +
src/main/java/com/zy/asrs/entity/ReportData.java | 44 +++++
src/main/resources/mapper/ReportDataMapper.xml | 6
src/main/java/com/zy/asrs/mapper/ReportDataMapper.java | 13 +
src/main/java/com/zy/asrs/entity/ReportDataLog.java | 45 +++++
src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java | 105 ++++++------
src/main/java/com/zy/asrs/mapper/ReportDataLogMapper.java | 13 +
src/main/resources/application-loc.yml | 2
src/main/java/com/zy/asrs/service/impl/ReportDataLogServiceImpl.java | 16 ++
src/main/java/com/zy/asrs/task/ReportDataScheduler.java | 164 ++++++++++++++++++++
src/main/java/com/zy/asrs/service/impl/ReportDataServiceImpl.java | 18 ++
src/main/resources/application.yml | 2
src/main/resources/mapper/ReportDataLogMapper.xml | 6
14 files changed, 405 insertions(+), 52 deletions(-)
diff --git a/src/main/java/com/zy/asrs/entity/ReportData.java b/src/main/java/com/zy/asrs/entity/ReportData.java
new file mode 100644
index 0000000..46a5839
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/ReportData.java
@@ -0,0 +1,44 @@
+package com.zy.asrs.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+@TableName("api_report_data")
+public class ReportData implements Serializable {
+
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @TableField("report_id")
+ private String reportId;
+
+ @TableField("report_json")
+ private String reportJson;
+
+ @TableField("report_type")
+ private String reportType;
+
+ @TableField("work_no")
+ private Long workNo;
+
+ @TableField("three_code")
+ private String threeCode;
+
+ @TableField("create_time")
+ private Date createTime;
+
+ @TableField("memo")
+ private String memo;
+
+ @TableField("report_time")
+ private Date reportTime;
+
+
+}
diff --git a/src/main/java/com/zy/asrs/entity/ReportDataLog.java b/src/main/java/com/zy/asrs/entity/ReportDataLog.java
new file mode 100644
index 0000000..2f29234
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/ReportDataLog.java
@@ -0,0 +1,45 @@
+package com.zy.asrs.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+@TableName("api_report_data")
+public class ReportDataLog implements Serializable {
+
+ @TableId(value = "log_id", type = IdType.AUTO)
+ private Long logId;
+
+ @TableField("report_data_id")
+ private Long reportDataId;
+
+ @TableField("report_id")
+ private String reportId;
+
+ @TableField("report_json")
+ private String reportJson;
+
+ @TableField("report_type")
+ private String reportType;
+
+ @TableField("work_no")
+ private Long workNo;
+
+ @TableField("three_code")
+ private String threeCode;
+
+ @TableField("create_time")
+ private Date createTime;
+
+ @TableField("memo")
+ private String memo;
+
+ @TableField("report_time")
+ private Date reportTime;
+}
diff --git a/src/main/java/com/zy/asrs/mapper/ReportDataLogMapper.java b/src/main/java/com/zy/asrs/mapper/ReportDataLogMapper.java
new file mode 100644
index 0000000..27f661a
--- /dev/null
+++ b/src/main/java/com/zy/asrs/mapper/ReportDataLogMapper.java
@@ -0,0 +1,13 @@
+package com.zy.asrs.mapper;
+
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import com.zy.asrs.entity.ReportData;
+import com.zy.asrs.entity.ReportDataLog;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+@Repository
+public interface ReportDataLogMapper extends BaseMapper<ReportDataLog> {
+
+}
diff --git a/src/main/java/com/zy/asrs/mapper/ReportDataMapper.java b/src/main/java/com/zy/asrs/mapper/ReportDataMapper.java
new file mode 100644
index 0000000..547e121
--- /dev/null
+++ b/src/main/java/com/zy/asrs/mapper/ReportDataMapper.java
@@ -0,0 +1,13 @@
+package com.zy.asrs.mapper;
+
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import com.zy.asrs.entity.ReportData;
+import com.zy.asrs.entity.Tag;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+@Repository
+public interface ReportDataMapper extends BaseMapper<ReportData> {
+
+}
diff --git a/src/main/java/com/zy/asrs/service/ReportDataLogService.java b/src/main/java/com/zy/asrs/service/ReportDataLogService.java
new file mode 100644
index 0000000..06095ba
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/ReportDataLogService.java
@@ -0,0 +1,11 @@
+package com.zy.asrs.service;
+
+import com.baomidou.mybatisplus.service.IService;
+import com.zy.asrs.entity.ReportData;
+import com.zy.asrs.entity.ReportDataLog;
+
+public interface ReportDataLogService extends IService<ReportDataLog> {
+
+
+
+}
diff --git a/src/main/java/com/zy/asrs/service/ReportDataService.java b/src/main/java/com/zy/asrs/service/ReportDataService.java
new file mode 100644
index 0000000..29cf0ce
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/ReportDataService.java
@@ -0,0 +1,12 @@
+package com.zy.asrs.service;
+
+import com.baomidou.mybatisplus.plugins.Page;
+import com.baomidou.mybatisplus.service.IService;
+import com.zy.asrs.entity.Mat;
+import com.zy.asrs.entity.ReportData;
+
+public interface ReportDataService extends IService<ReportData> {
+
+
+
+}
diff --git a/src/main/java/com/zy/asrs/service/impl/ReportDataLogServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/ReportDataLogServiceImpl.java
new file mode 100644
index 0000000..2662d8a
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/impl/ReportDataLogServiceImpl.java
@@ -0,0 +1,16 @@
+package com.zy.asrs.service.impl;
+
+import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.zy.asrs.entity.ReportData;
+import com.zy.asrs.entity.ReportDataLog;
+import com.zy.asrs.mapper.ReportDataLogMapper;
+import com.zy.asrs.mapper.ReportDataMapper;
+import com.zy.asrs.service.ReportDataLogService;
+import com.zy.asrs.service.ReportDataService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class ReportDataLogServiceImpl extends ServiceImpl<ReportDataLogMapper, ReportDataLog> implements ReportDataLogService {
+
+
+}
diff --git a/src/main/java/com/zy/asrs/service/impl/ReportDataServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/ReportDataServiceImpl.java
new file mode 100644
index 0000000..0be8a07
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/impl/ReportDataServiceImpl.java
@@ -0,0 +1,18 @@
+package com.zy.asrs.service.impl;
+
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.ReportData;
+import com.zy.asrs.entity.Tag;
+import com.zy.asrs.mapper.ReportDataMapper;
+import com.zy.asrs.mapper.TagMapper;
+import com.zy.asrs.service.ReportDataService;
+import com.zy.asrs.service.TagService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class ReportDataServiceImpl extends ServiceImpl<ReportDataMapper, ReportData> implements ReportDataService {
+
+
+}
diff --git a/src/main/java/com/zy/asrs/task/ReportDataScheduler.java b/src/main/java/com/zy/asrs/task/ReportDataScheduler.java
new file mode 100644
index 0000000..1a850fa
--- /dev/null
+++ b/src/main/java/com/zy/asrs/task/ReportDataScheduler.java
@@ -0,0 +1,164 @@
+package com.zy.asrs.task;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.common.Cools;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.ReportData;
+import com.zy.asrs.entity.ReportDataLog;
+import com.zy.asrs.service.ApiLogService;
+import com.zy.asrs.service.ReportDataLogService;
+import com.zy.asrs.service.ReportDataService;
+import com.zy.common.utils.HttpHandler;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.TimeUnit;
+
+/**
+ * Created by vincent on 2020/7/7
+ */
+@Component
+public class ReportDataScheduler {
+
+ private static final Logger log = LoggerFactory.getLogger(ReportDataScheduler.class);
+
+ @Autowired
+ private ReportDataService reportDataService;
+
+ @Autowired
+ private ReportDataLogService reportDataLogService;
+
+
+ @Autowired
+ private ApiLogService apiLogService;
+
+
+ @Value("${mes.appKey}")
+ private String appKey;
+
+
+ @Value("${mes.appSecret}")
+ private String appSecret;
+
+ @Value("${mes.report}")
+ private Boolean flag;
+
+ @Value("${mes.url}")
+ private String url;
+
+ @Value("${mes.getTokenUrl}")
+ private String getTokenUrl;
+
+ @Value("${mes.orderReportPath}")
+ private String orderReportPath;
+
+ @Value("${mes.pakinReportPath}")
+ private String pakinReportPath;
+
+ @Value("${mes.buyPakinReportPath}")
+ private String buyPakinReportPath;
+
+ @Value("${mes.pakoutReportPath}")
+ private String pakoutReportPath;
+
+ @Value("${mes.getTokenPath}")
+ private String getTokenPath;
+
+
+ @Scheduled(cron = "0/10 * * * * ? ")
+ public void execute() {
+ log.info("瀹氭椂浠诲姟寮�濮嬫墽琛�");
+ if (!flag) {
+ return;
+ }
+ Map<String, Object> mesTokenInfo = getMesTokenInfo();
+ List<ReportData> reportData = reportDataService.selectList(new EntityWrapper<>());
+ for (ReportData data : reportData) {
+ process(data, mesTokenInfo);
+ }
+ log.info("瀹氭椂浠诲姟缁撴潫鎵ц");
+ }
+
+ @Transactional
+ public void process(ReportData data, Map<String, Object> mesTokenInfo) {
+ String mesPath = "";
+ if ("MES".equals(data.getReportType())) {
+ switch (data.getMemo()) {
+ case "涓婃姤mes閲囪喘鍏ュ簱淇℃伅":
+ mesPath = buyPakinReportPath;
+ break;
+ case "涓婃姤mes鍏ュ簱淇℃伅":
+ mesPath = pakinReportPath;
+ break;
+ case "涓婃姤mes鍑哄簱淇℃伅":
+ mesPath = pakoutReportPath;
+ break;
+ case "涓婃姤mes璋冩嫧淇℃伅":
+ mesPath = orderReportPath;
+ break;
+ }
+ doHttpRequest(data.getReportJson(), mesTokenInfo, data.getMemo(), url, mesPath, null, "127.0.0.1");
+ reportDataService.deleteById(data.getId());
+ ReportDataLog reportDataLog = new ReportDataLog();
+ BeanUtil.copyProperties(data, reportDataLog);
+ reportDataLog.setReportTime(new Date());
+ reportDataLog.setReportDataId(data.getId());
+ reportDataLogService.insert(reportDataLog);
+ }
+
+
+ }
+
+ //鑾峰彇mes token淇℃伅
+ private Map<String, Object> getMesTokenInfo() {
+ Map<String, String> param = new HashMap<>();
+ param.put("appKey", appKey);
+ param.put("appSecret", appSecret);
+
+ JSONObject jsonObject = doHttpRequest(JSON.toJSONString(param), null, "鑾峰彇MesToken", getTokenUrl, getTokenPath, null, "127.0.0.1");
+
+ Map<String, Object> headParam = new HashMap<>();
+ headParam.put("X-AUTH", JSON.parseObject(jsonObject.get("data").toString()).get("appAccessToken").toString());
+
+ return headParam;
+
+ }
+
+ private JSONObject doHttpRequest(String requestParam, Map<String, Object> headParam, String namespace, String url, String path, String appkey, String ip) {
+ String response = "";
+ boolean success = false;
+
+ try {
+ response = new HttpHandler.Builder().setUri(url).setPath(path).setTimeout(30, TimeUnit.SECONDS).setHeaders(headParam).setJson(requestParam).setHttps(true).build().doPost();
+ JSONObject jsonObject = JSON.parseObject(response);
+
+ if (Cools.isEmpty(jsonObject.get("code")) || Integer.parseInt(jsonObject.get("code").toString()) != 200) {
+ log.info("mes鎺ュ彛璋冪敤澶辫触锛岃繑鍥炰俊鎭細" + jsonObject);
+ //TODO 寮犺秴
+ throw new CoolException("mes鎺ュ彛璋冪敤澶辫触锛岃繑鍥炰俊鎭�:" + jsonObject);
+ }
+ success = true;
+ return jsonObject;
+
+ } catch (Exception e) {
+ log.error(e.getMessage());
+ throw new CoolException(e.getMessage());
+ } finally {
+ apiLogService.save(namespace, url + path, appkey, ip, JSON.toJSONString(JSONObject.toJSONString(requestParam)), response, success);
+ }
+
+ }
+
+}
diff --git a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
index 0723b72..bf9592c 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -15,7 +15,6 @@
import com.zy.asrs.service.*;
import com.zy.asrs.task.AbstractHandler;
import com.zy.asrs.task.core.ReturnT;
-import com.zy.common.utils.HttpHandler;
import lombok.Synchronized;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@@ -25,7 +24,6 @@
import java.io.IOException;
import java.util.*;
-import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
@Slf4j
@@ -113,6 +111,10 @@
private SnowflakeIdWorker snowflakeIdWorker;
@Autowired
private FlowLogService flowLogService;
+
+ @Autowired
+ private ReportDataService reportDataService;
+
@Transactional
public ReturnT<String> completedPutWayWrk(AgvWrkMast agvWrkMast) {
@@ -700,9 +702,7 @@
}
private void reportMes(AgvWrkMast agvWrkMast, List<AgvWrkDetl> agvWrkDetls) {
- if (!flag) {
- return;
- }
+
if (Cools.isEmpty(agvWrkDetls)) {
return;
}
@@ -714,16 +714,13 @@
reportMesPakinOrder(agvWrkMast, agvWrkDetls);
}
}
- try {
- if (OUT_TYPE_List.contains(agvWrkMast.getIoType())) {
- reportMesPakoutOrder(agvWrkMast, agvWrkDetls);
- }
- if (MOVE_TYPE_List.contains(agvWrkMast.getIoType())) {
- generateMesParam(agvWrkMast, agvWrkDetls);
- }
- } catch (Exception e) {
- e.printStackTrace();
+ if (OUT_TYPE_List.contains(agvWrkMast.getIoType())) {
+ reportMesPakoutOrder(agvWrkMast, agvWrkDetls);
}
+ if (MOVE_TYPE_List.contains(agvWrkMast.getIoType())) {
+ generateMesParam(agvWrkMast, agvWrkDetls);
+ }
+
}
@@ -846,17 +843,17 @@
//鑾峰彇mes token淇℃伅
private Map<String, Object> getMesTokenInfo() {
- Map<String, String> param = new HashMap<>();
- param.put("appKey", appKey);
- param.put("appSecret", appSecret);
+// Map<String, String> param = new HashMap<>();
+// param.put("appKey", appKey);
+// param.put("appSecret", appSecret);
+//
+// JSONObject jsonObject = doHttpRequest(param, null, "鑾峰彇MesToken", getTokenUrl, getTokenPath, null, "127.0.0.1");
+//
+// Map<String, Object> headParam = new HashMap<>();
+// headParam.put("X-AUTH", JSON.parseObject(jsonObject.get("data").toString()).get("appAccessToken").toString());
- JSONObject jsonObject = doHttpRequest(param, null, "鑾峰彇MesToken", getTokenUrl, getTokenPath, null, "127.0.0.1");
-
- Map<String, Object> headParam = new HashMap<>();
- headParam.put("X-AUTH", JSON.parseObject(jsonObject.get("data").toString()).get("appAccessToken").toString());
-
- return headParam;
-
+ // return headParam;
+ return null;
}
//鏍规嵁妤煎眰榛樿鍑哄簱浠撲綅
@@ -877,37 +874,45 @@
return null;
}
- private JSONObject doHttpRequest(Object requestParam, Map<String, Object> headParam, String namespace, String url, String path, String appkey, String ip) {
+ private void doHttpRequest(Object requestParam, Map<String, Object> headParam, String namespace, String url, String path, String appkey, String ip) {
+ //淇濊瘉涓婃姤琛�
+ ReportData reportData = new ReportData();
+ reportData.setReportJson(JSONObject.toJSONString(requestParam));
+ reportData.setMemo(namespace);
+ reportData.setCreateTime(new Date());
+ reportData.setReportType("MES");
+ reportDataService.insert(reportData);
- String response = "";
- boolean success = false;
- try {
- response = new HttpHandler.Builder().setUri(url).setPath(path).setTimeout(30, TimeUnit.SECONDS).setHeaders(headParam).setJson(JSONObject.toJSONString(requestParam)).setHttps(true).build().doPost();
- JSONObject jsonObject = JSON.parseObject(response);
-
- if (Cools.isEmpty(jsonObject.get("code")) || Integer.parseInt(jsonObject.get("code").toString()) != 200) {
- log.info("mes鎺ュ彛璋冪敤澶辫触锛岃繑鍥炰俊鎭細" + jsonObject);
- //TODO 寮犺秴
- throw new CoolException("mes鎺ュ彛璋冪敤澶辫触锛岃繑鍥炰俊鎭�:" + jsonObject);
- }
- success = true;
- return jsonObject;
-
-// String succeed = jsonObject.get("succeed").toString();
+// String response = "";
+// boolean success = false;
//
-// int code = Cools.eq("0",succeed) ? 0 : 1;
-// if(code != 200){
-// throw new CoolException(jsonObject.get("dsc").toString());
+// try {
+// response = new HttpHandler.Builder().setUri(url).setPath(path).setTimeout(30, TimeUnit.SECONDS).setHeaders(headParam).setJson(JSONObject.toJSONString(requestParam)).setHttps(true).build().doPost();
+// JSONObject jsonObject = JSON.parseObject(response);
+//
+// if (Cools.isEmpty(jsonObject.get("code")) || Integer.parseInt(jsonObject.get("code").toString()) != 200) {
+// log.info("mes鎺ュ彛璋冪敤澶辫触锛岃繑鍥炰俊鎭細" + jsonObject);
+// //TODO 寮犺秴
+// throw new CoolException("mes鎺ュ彛璋冪敤澶辫触锛岃繑鍥炰俊鎭�:" + jsonObject);
// }
// success = true;
-
- } catch (Exception e) {
- log.error(e.getMessage());
- throw new CoolException(e.getMessage());
- } finally {
- apiLogService.save(namespace, url + path, appkey, ip, JSON.toJSONString(JSONObject.toJSONString(requestParam)), response, success);
- }
+// return jsonObject;
+//
+//// String succeed = jsonObject.get("succeed").toString();
+////
+//// int code = Cools.eq("0",succeed) ? 0 : 1;
+//// if(code != 200){
+//// throw new CoolException(jsonObject.get("dsc").toString());
+//// }
+//// success = true;
+//
+// } catch (Exception e) {
+// log.error(e.getMessage());
+// throw new CoolException(e.getMessage());
+// } finally {
+// apiLogService.save(namespace, url + path, appkey, ip, JSON.toJSONString(JSONObject.toJSONString(requestParam)), response, success);
+// }
}
diff --git a/src/main/resources/application-loc.yml b/src/main/resources/application-loc.yml
index c568312..78a126a 100644
--- a/src/main/resources/application-loc.yml
+++ b/src/main/resources/application-loc.yml
@@ -94,7 +94,7 @@
# url: http://39.184.149.30:8877
# orderReportPath: /DBMS/U8/CM/add
mes:
- report: false
+ report: true
url: https://v3-ali.blacklake.cn/api/openapi/domain/web/v1/route
orderReportPath: /inventory/open/v2/transfer_order/ordinary/_execute
pakinReportPath: /inventory/open/v2/inbound_order/execute/_inbound
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index f2026f2..22524fb 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -1,4 +1,4 @@
spring:
profiles:
#dev loc prod
- active: prod
\ No newline at end of file
+ active: loc
\ No newline at end of file
diff --git a/src/main/resources/mapper/ReportDataLogMapper.xml b/src/main/resources/mapper/ReportDataLogMapper.xml
new file mode 100644
index 0000000..2899b36
--- /dev/null
+++ b/src/main/resources/mapper/ReportDataLogMapper.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.zy.asrs.mapper.ReportDataLogMapper">
+
+
+</mapper>
diff --git a/src/main/resources/mapper/ReportDataMapper.xml b/src/main/resources/mapper/ReportDataMapper.xml
new file mode 100644
index 0000000..b83b413
--- /dev/null
+++ b/src/main/resources/mapper/ReportDataMapper.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.zy.asrs.mapper.ReportDataMapper">
+
+
+</mapper>
--
Gitblit v1.9.1