From e61c535e1a6999e0768217589d8168676c106730 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期一, 27 十月 2025 14:49:02 +0800
Subject: [PATCH] 1
---
src/main/java/com/zy/system/controller/LicenseCreatorController.java | 7 +
/dev/null | 119 -----------------
src/main/java/com/zy/system/service/impl/ConfigServiceImpl.java | 33 ++++
src/main/java/com/zy/common/web/AuthController.java | 94 +++++++------
src/main/java/com/zy/common/config/AdminInterceptor.java | 5
src/main/java/com/zy/system/service/ConfigService.java | 2
src/main/java/com/zy/system/timer/LoadingConfigTimer.java | 44 ++++++
src/main/java/com/zy/system/timer/TokenTimer.java | 50 +++++++
src/main/java/com/zy/asrs/task/handler/OverYearLogHandler.java | 18 +
9 files changed, 202 insertions(+), 170 deletions(-)
diff --git a/src/main/java/com/zy/asrs/task/handler/OverYearLogHandler.java b/src/main/java/com/zy/asrs/task/handler/OverYearLogHandler.java
index ebd2260..2af6104 100644
--- a/src/main/java/com/zy/asrs/task/handler/OverYearLogHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/OverYearLogHandler.java
@@ -2,6 +2,7 @@
import com.zy.asrs.task.AbstractHandler;
import com.zy.asrs.task.core.ReturnT;
+import com.zy.system.timer.LoadingConfigTimer;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
@@ -17,14 +18,22 @@
@Autowired
private JdbcTemplate jdbcTemplate;
+
+
+ @Autowired
+ private LoadingConfigTimer loadingConfigTimer;
+
@Transactional
public ReturnT<String> start() {
+ Integer logDeleteDays = loadingConfigTimer.getLogDeleteDays();
+ if (logDeleteDays == -1) {
+ return SUCCESS;
+ }
try {
// 鍒犻櫎鍗婂勾浠ヤ笂鐨勫巻鍙叉。
- jdbcTemplate.update("delete from asr_stk_hplc where dateadd(day,180,appe_time) <= getdate();");
- jdbcTemplate.update("delete from asr_wrk_detl_log where dateadd(day,1080,appe_time) <= getdate();");
- jdbcTemplate.update("delete from asr_wrk_mast_log where dateadd(day,360,appe_time) <= getdate();");
- jdbcTemplate.update("delete from cust_wait_pakin_log where dateadd(day,1080,appe_time) <= getdate();");
+ jdbcTemplate.update("delete from asr_wrk_detl_log where dateadd(day," + logDeleteDays + ",appe_time) <= getdate();");
+ jdbcTemplate.update("delete from asr_wrk_mast_log where dateadd(day," + logDeleteDays + ",appe_time) <= getdate();");
+ jdbcTemplate.update("delete from cust_wait_pakin_log where dateadd(day," + logDeleteDays + ",appe_time) <= getdate();");
} catch (Exception e) {
e.printStackTrace();
@@ -33,5 +42,4 @@
}
return SUCCESS;
}
-
}
diff --git a/src/main/java/com/zy/asrs/task/kingdee/InboundOrderScheduler.java b/src/main/java/com/zy/asrs/task/kingdee/InboundOrderScheduler.java
deleted file mode 100644
index 1c68d49..0000000
--- a/src/main/java/com/zy/asrs/task/kingdee/InboundOrderScheduler.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package com.zy.asrs.task.kingdee;
-
-import com.core.common.Cools;
-import com.zy.asrs.task.kingdee.handler.InboundOrderHandler;
-import com.zy.common.entity.Parameter;
-import lombok.extern.slf4j.Slf4j;
-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;
-
-@Slf4j
-@Component
-public class InboundOrderScheduler {
-
- @Autowired
- private InboundOrderHandler inboundOrderHandler;
- @Value("${erp.switch.InboundOrderSwitch}")
- private boolean InboundOrderSwitch;
-
- @Scheduled(cron = "0/3 * * * * ? ")
- void login(){
- if(!InboundOrderSwitch){
- return;
- }
- String erpReport = Parameter.get().getErpReport();
- if (!Cools.isEmpty(erpReport) && erpReport.equals("true")) {
- inboundOrderHandler.start();
- }
- }
-
-}
diff --git a/src/main/java/com/zy/asrs/task/kingdee/LoginAuthenticationScheduler.java b/src/main/java/com/zy/asrs/task/kingdee/LoginAuthenticationScheduler.java
deleted file mode 100644
index c6befac..0000000
--- a/src/main/java/com/zy/asrs/task/kingdee/LoginAuthenticationScheduler.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.zy.asrs.task.kingdee;
-
-import com.core.common.Cools;
-import com.zy.asrs.task.kingdee.handler.LoginAuthenticationHandler;
-import com.zy.common.entity.Parameter;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Component;
-
-@Slf4j
-@Component
-public class LoginAuthenticationScheduler {
-
- @Autowired
- private LoginAuthenticationHandler loginAuthenticationHandler;
- @Value("${erp.switch.LoginAuthenticationSwitch}")
- private boolean LoginAuthenticationSwitch;
-
- //@Scheduled(cron = "0/3 * * * * ? ")
- void login(){
- if(!LoginAuthenticationSwitch){
- return;
- }
- String erpReport = Parameter.get().getErpReport();
- if (!Cools.isEmpty(erpReport) && erpReport.equals("true")) {
- loginAuthenticationHandler.start();
- }
- }
-}
diff --git a/src/main/java/com/zy/asrs/task/kingdee/ReviewOrderSyncScheduler.java b/src/main/java/com/zy/asrs/task/kingdee/ReviewOrderSyncScheduler.java
deleted file mode 100644
index a3c9e16..0000000
--- a/src/main/java/com/zy/asrs/task/kingdee/ReviewOrderSyncScheduler.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package com.zy.asrs.task.kingdee;
-
-import com.core.common.Cools;
-import com.zy.asrs.entity.Order;
-import com.zy.asrs.service.ApiLogService;
-import com.zy.asrs.service.OrderService;
-import com.zy.asrs.task.core.ReturnT;
-import com.zy.asrs.task.kingdee.handler.ReviewOrderSyncHandler;
-import com.zy.asrs.utils.OrderInAndOutUtil;
-import com.zy.common.entity.Parameter;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.scheduling.annotation.Async;
-import org.springframework.scheduling.annotation.Scheduled;
-import org.springframework.stereotype.Component;
-
-import java.util.List;
-
-/**
- * Created by vincent on 2023/10/21
- */
-@Slf4j
-@Component
-public class ReviewOrderSyncScheduler {
-
- @Autowired
- private ReviewOrderSyncHandler reviewOrderSyncHandler;
- @Autowired
- private OrderService orderService;
-
- @Value("${erp.switch.ReviewOrderSwitch}")
- private boolean ReviewOrderSwitch;
-
- @Scheduled(cron = "0/3 * * * * ? ")
- @Async("orderThreadPool")
- public void completeAndReport(){
- if(!ReviewOrderSwitch){
- return;
- }
- String erpReport = Parameter.get().getErpReport();
- if (!Cools.isEmpty(erpReport) && erpReport.equals("true")) {
- // List<Order> orders = orderService.selectComplete();
- List<Order> orders = OrderInAndOutUtil.selectComplete(null);
- for (Order order : orders) {
- ReturnT<String> result = reviewOrderSyncHandler.start(order);
- if (!result.isSuccess()) {
- log.error("鍗曟嵁[orderNo={}]鍚慹rp瀹℃牳澶辫触", order.getOrderNo());
- }
- }
- }
- }
-
-}
diff --git a/src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java b/src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java
deleted file mode 100644
index 4fe4f26..0000000
--- a/src/main/java/com/zy/asrs/task/kingdee/SaveOrderSyncScheduler.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package com.zy.asrs.task.kingdee;
-
-import com.core.common.Cools;
-import com.zy.asrs.entity.Order;
-import com.zy.asrs.service.OrderService;
-import com.zy.asrs.task.core.ReturnT;
-import com.zy.asrs.task.kingdee.handler.SubmitOrderSyncHandler;
-import com.zy.asrs.utils.OrderInAndOutUtil;
-import com.zy.common.entity.Parameter;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.scheduling.annotation.Async;
-import org.springframework.scheduling.annotation.Scheduled;
-import org.springframework.stereotype.Component;
-
-import java.util.List;
-
-/**
- * Created by Monkey D. Luffy on 2023.10.21
- */
-@Slf4j
-@Component
-public class SaveOrderSyncScheduler {
-
- @Autowired
- private SubmitOrderSyncHandler submitOrderSyncHandler;
- @Autowired
- private OrderService orderService;
-
- @Value("${erp.switch.ReviewOrderSwitch}")
- private boolean ReviewOrderSwitch;
-
-// @Scheduled(cron = "0/3 * * * * ? ")
- @Async("orderThreadPool")
- public void completeAndReport(){
- if (1==1) return;
- if(!ReviewOrderSwitch){
- return;
- }
- String erpReport = Parameter.get().getErpReport();
- if (!Cools.isEmpty(erpReport) && erpReport.equals("true")) {
- // List<Order> orders = orderService.selectComplete8();
- List<Order> orders = OrderInAndOutUtil.selectComplete8(null);
- for (Order order : orders) {
- ReturnT<String> result = submitOrderSyncHandler.start(order);
- if (!result.isSuccess()) {
- log.error("鍗曟嵁[orderNo={}]鎻愪氦鑷砮rp澶辫触", order.getOrderNo());
- }
- }
- }
- }
-
-}
diff --git a/src/main/java/com/zy/asrs/task/kingdee/SubmitOrderSyncScheduler.java b/src/main/java/com/zy/asrs/task/kingdee/SubmitOrderSyncScheduler.java
deleted file mode 100644
index e35710e..0000000
--- a/src/main/java/com/zy/asrs/task/kingdee/SubmitOrderSyncScheduler.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.zy.asrs.task.kingdee;
-
-import com.core.common.Cools;
-import com.zy.asrs.entity.Order;
-import com.zy.asrs.service.ApiLogService;
-import com.zy.asrs.service.OrderService;
-import com.zy.asrs.task.core.ReturnT;
-import com.zy.asrs.task.kingdee.handler.ReviewOrderSyncHandler;
-import com.zy.asrs.task.kingdee.handler.SaveOrderSyncHandler;
-import com.zy.asrs.task.kingdee.handler.SubmitOrderSyncHandler;
-import com.zy.asrs.utils.OrderInAndOutUtil;
-import com.zy.common.entity.Parameter;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.scheduling.annotation.Async;
-import org.springframework.scheduling.annotation.Scheduled;
-import org.springframework.stereotype.Component;
-
-import java.util.List;
-
-/**
- * Created by Monkey D. Luffy on 2023.10.21
- */
-@Slf4j
-@Component
-public class SubmitOrderSyncScheduler {
-
- @Autowired
- private SaveOrderSyncHandler saveOrderSyncHandler;
- @Autowired
- private OrderService orderService;
-
- @Value("${erp.switch.ReviewOrderSwitch}")
- private boolean ReviewOrderSwitch;
-
- @Scheduled(cron = "0/3 * * * * ? ")
- @Async("orderThreadPool")
- public void completeAndReport(){
- if(!ReviewOrderSwitch){
- return;
- }
- String erpReport = Parameter.get().getErpReport();
- if (!Cools.isEmpty(erpReport) && erpReport.equals("true")) {
- // List<Order> orders = orderService.selectComplete8();
- List<Order> orders = OrderInAndOutUtil.selectComplete8(null);
- for (Order order : orders) {
- ReturnT<String> result = saveOrderSyncHandler.start(order);
- if (!result.isSuccess()) {
- log.error("鍗曟嵁[orderNo={}]淇濆瓨鑷砮rp澶辫触", order.getOrderNo());
- }
- }
- }
- }
-
-}
diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
deleted file mode 100644
index 7165153..0000000
--- a/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
+++ /dev/null
@@ -1,308 +0,0 @@
-package com.zy.asrs.task.kingdee.handler;
-
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.mapper.EntityWrapper;
-import com.core.common.Cools;
-import com.core.common.DateUtils;
-import com.core.common.SnowflakeIdWorker;
-import com.core.exception.CoolException;
-import com.zy.asrs.entity.*;
-import com.zy.asrs.service.*;
-import com.zy.asrs.task.AbstractHandler;
-import com.zy.asrs.task.core.ReturnT;
-import com.zy.asrs.utils.OrderInAndOutUtil;
-import com.zy.erp.kingdee.entity.param.InFormIdParam;
-import com.zy.erp.kingdee.enums.KingDeeUtilType;
-import com.zy.common.utils.HttpHandler;
-import com.zy.erp.kingdee.utils.KingDeeUtil;
-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 java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-
-@Service
-@Slf4j
-public class InboundOrderHandler extends AbstractHandler<String> {
- @Value("${erp.address.URL}")
- //绔彛
- private String URL;
-
- @Value("${erp.address.inaddress}")
- //鍗曟嵁锛屽晢鍝佹。妗堝湴鍧�
- private String inaddress;
-
- @Autowired
- private ApiLogService apiLogService;
-
- @Autowired
- private LoginAuthenticationHandler loginAuthenticationHandler;
-
- @Autowired
- private MatService matService;
-
- @Autowired
- private TagService tagService;
-
- @Autowired
- private DocTypeService docTypeService;
-
- @Autowired
- private OrderService orderService;
-
- @Autowired
- private OrderDetlService orderDetlService;
-
- @Autowired
- private SnowflakeIdWorker snowflakeIdWorker;
-
- @Transactional
- public synchronized ReturnT<String> start() {
- SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- //鐧诲綍閲戣澏
- ReturnT<String> start = loginAuthenticationHandler.start();
- for(KingDeeUtilType kingDeeUtilType : KingDeeUtilType.values()) {
- InFormIdParam inFormIdParam = new InFormIdParam();
- DocType docType = docTypeService.selectOne(new EntityWrapper<DocType>().eq("doc_name", kingDeeUtilType.desc));
- if (Cools.isEmpty(docType) && !kingDeeUtilType.formId.equals("BD_MATERIAL")){
- docType = docTypeService.selectOrAdd(kingDeeUtilType.desc, kingDeeUtilType.pakIn.equals(1));
- }
- inFormIdParam.setFormId(kingDeeUtilType.formId);
- inFormIdParam.setLimit(100);
- inFormIdParam.setStartRow("0");
- String FDocumentStatus=null;
-
- //鏉′欢鍜岄渶瑕佽幏寰楃殑缁撴灉鎷兼帴
- JSONObject jsonObject = new JSONObject();
- jsonObject.put("FormId", inFormIdParam.getFormId());
- jsonObject.put("Limit", inFormIdParam.getLimit());
- jsonObject.put("StartRow", inFormIdParam.getStartRow());
- //鐗╂枡妗f鏌ヨ
- if(kingDeeUtilType.formId.equals("BD_MATERIAL")){
- Tag tag = tagService.selectByName("鍏ㄩ儴", 1);
- //鐗╂枡鐘舵�� FUseOrgId .FNumber
- FDocumentStatus="C";
- jsonObject.put("FilterString", "FCreateDate>'"+sdf.format(tag.getUpdateTime())+"' and FDocumentStatus='"+FDocumentStatus+"' and FUseOrgId .FNumber='100'");
- jsonObject.put("FieldKeys", "FName,FNumber,FCreateDate,FSpecification,FDocumentStatus");
- // FName : 鐗╂枡鍚嶇О 锛�
- // FNumber 锛氱墿鏂欑紪鍙凤紱
- // FCreateDate 锛氱墿鏂欏垱寤烘椂闂达紱
- // FSpecification 锛氱墿鏂欒鏍硷紱
- // FDocumentStatus 锛氱墿鏂欑姸鎬�
- }else{
- //鑾峰彇鏈�鏂版椂闂�
- //鍗曟嵁鐘舵��
- FDocumentStatus="B";
- jsonObject.put("FilterString", "FCreateDate>'"+sdf.format(docType.getCreateTime())+"'"+" and FStockId.Fname='绔嬪簱'"+" and FDocumentStatus='"+FDocumentStatus+"'");
- jsonObject.put("FieldKeys", "FBillNo,FCreateDate,FMaterialId.FNumber,FMaterialId.FName,FMaterialId.FSpecification,"+kingDeeUtilType.anfme+",FDocumentStatus");
- // FBillNo :鍗曟嵁缂栧彿锛�
- // FCreateDate 锛氬崟鎹垱寤烘椂闂达紱
- // FMaterialId.FNumber : 鐗╂枡缂栫爜锛�
- // FMaterialName 锛氱墿鏂欏悕绉帮紱
- // FMaterialId.FSpecification锛氱墿鏂欒鏍�
- // anfme : 鐗╂枡鏁伴噺
- // FDocumentStatus 锛氬崟鎹姸鎬侊紱
-
- }
- JSONObject jsonObject1 = new JSONObject();
- jsonObject1.put("data", jsonObject);
- String add = jsonObject1.toJSONString();
- //涓婃姤
- String response = "";
- boolean success = false;
- try {
- //鑾峰彇Cookie鍊�
- HashMap<String, Object> headers = new HashMap<>();
- headers.put("Cookie", start.getContent());
- response = new HttpHandler.Builder()
- .setHeaders(headers)
- .setUri(URL)
- .setPath(inaddress)
- .setJson(add)
- .build()
- .doPost();
- JSONArray data = JSON.parseArray(response);
- if(data.size()<=0) continue;
- if (data.getJSONArray(0).get(0).toString().length()>=20) continue;
- if (kingDeeUtilType.formId.equals("BD_MATERIAL")) {//鐗╂枡妗f
- Tag tag = tagService.selectByName("鍏ㄩ儴", 1);
- for (int j = 0; j < data.size(); j++) {
- JSONArray jsonArray = data.getJSONArray(j);
- //瀵圭編鍥芥椂闂磋繘琛岃浆鎹�
- Date jsonDate = KingDeeUtil.KingDeeDate(jsonArray.get(2).toString());
- //鐢熸垚鍟嗗搧妗f
- //鍟嗗搧缂栧彿
- Mat mat = matService.selectByMatnr(jsonArray.get(1).toString());
- if (mat == null) {
- mat = new Mat();
- mat.setMatnr(jsonArray.get(1).toString());
- mat.setMaktx(jsonArray.get(0).toString());
- mat.setSpecs(jsonArray.get(3).toString());//瑙勬牸
- mat.setTagId(tag.getId());
- mat.setLocType(tag.getId());
- mat.setCreateTime(jsonDate);//鍟嗗搧鍒涘缓鏃堕棿
- mat.setUpdateTime(new Date());
- mat.setStatus(1);
- //鏈�鏂版姄鍙栧晢鍝佹椂闂�
- if (!matService.insert(mat)) {
-// throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
- callApiLogSaveMat(mat,kingDeeUtilType, "鍚屾鏂扮墿鏂欏嚭閿欙紒锛侊紒"+mat, false);
- log.info("鍚屾鏂扮墿鏂欏嚭閿欙紒锛侊紒鍙傛暟锛歔{}]銆乕{}]",mat,jsonArray);
- } else {
- callApiLogSaveMat(mat,kingDeeUtilType, "鍚屾鏂扮墿鏂欙紒", true);
-// log.info("鍚屾鏂扮墿鏂橻鍟嗗搧缂栧彿锛歿}]", mat.getMatnr());
- }
- }else {
- if (!jsonDate.equals(tag.getUpdateTime())){
- callApiLogSaveMat(mat,kingDeeUtilType, "鍟嗗搧缂栧彿閲嶅:"+mat.getMatnr(), false);
- log.info("鍚屾鏂扮墿鏂橻鍟嗗搧缂栧彿锛歿}],鍟嗗搧缂栧彿閲嶅锛侊紒锛�", mat.getMatnr());
- }
- }
- tag.setUpdateTime(jsonDate);
- }
- tagService.updateById(tag);
- } else {
- for (int j = 0; j < data.size(); j++) {
- JSONArray jsonArray = data.getJSONArray(j);
- //鏈�鏂版姄鍙栨椂闂�
- Date jsonDate = KingDeeUtil.KingDeeDate(jsonArray.get(1).toString());
- docType.setCreateTime(jsonDate);
- Order order = OrderInAndOutUtil.selectByNo(kingDeeUtilType.pakIn == 1, jsonArray.get(0).toString());
-// Order order = orderService.selectByNo(jsonArray.get(0).toString());
- if (Cools.isEmpty(order)) {
- Date now = new Date();
- // 鍗曟嵁涓绘。
- order = new Order(
- String.valueOf(snowflakeIdWorker.nextId()), // 缂栧彿[闈炵┖]
- jsonArray.get(0).toString(), // 璁㈠崟缂栧彿
- DateUtils.convert(now), // 鍗曟嵁鏃ユ湡
- docType.getDocId(), // 鍗曟嵁绫诲瀷
- null, // 椤圭洰缂栧彿
- null, //
- null, // 璋冩嫧椤圭洰缂栧彿
- null, // 鍒濆绁ㄦ嵁鍙�
- null, // 绁ㄦ嵁鍙�
- null, // 瀹㈡埛缂栧彿
- null, // 瀹㈡埛
- null, // 鑱旂郴鏂瑰紡
- null, // 鎿嶄綔浜哄憳
- null, // 鍚堣閲戦
- null, // 浼樻儬鐜�
- null, // 浼樻儬閲戦
- null, // 閿�鍞垨閲囪喘璐圭敤鍚堣
- null, // 瀹炰粯閲戦
- null, // 浠樻绫诲瀷
- null, // 涓氬姟鍛�
- null, // 缁撶畻澶╂暟
- null, // 閭垂鏀粯绫诲瀷
- null, // 閭垂
- null, // 浠樻鏃堕棿
- null, // 鍙戣揣鏃堕棿
- null, // 鐗╂祦鍚嶇О
- null, // 鐗╂祦鍗曞彿
- 1L, // 璁㈠崟鐘舵��
- 1, // 鐘舵��
- 9527L, // 娣诲姞浜哄憳
- now, // 娣诲姞鏃堕棿
- 9527L, // 淇敼浜哄憳
- now, // 淇敼鏃堕棿
- null // 澶囨敞
- );
- OrderInAndOutUtil.insertOrder(kingDeeUtilType.pakIn == 1, order);
-
-// if (!orderService.insert(order)) {
-// if (!jsonDate.equals(docType.getCreateTime())){
-// callApiLogSaveOrder(order,kingDeeUtilType, "鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�"+order, false);
-// }
-// continue;
-//// throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
-// }
- }
- //鐗╂枡缂栫爜
- Mat mat = matService.selectByMatnr(jsonArray.get(2).toString());
- if (Cools.isEmpty(mat)) {
- if (!jsonDate.equals(docType.getCreateTime())){
- callApiLogSaveOrder(order,kingDeeUtilType, "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"+jsonArray.get(2).toString(), false);
- }
- continue;
- }
-// OrderDetl orderDetl1 = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("order_no", jsonArray.get(0).toString()).eq("matnr", jsonArray.get(2).toString()));
-// if (!Cools.isEmpty(orderDetl1)) {
-// continue;
-// }
- Order order1 = OrderInAndOutUtil.selectByNo(kingDeeUtilType.pakIn == 1, jsonArray.get(0).toString());
- List<OrderDetl> orderDetls = OrderInAndOutUtil.selectByOrderId(kingDeeUtilType.pakIn == 1, order1.getId());
- boolean sign = false;
- for (OrderDetl orderDetl : orderDetls){
- if (orderDetl.getMatnr().equals( jsonArray.get(2).toString())){
- sign = true;
- break;
- }
- }
- if (sign){
- continue;
- }
- OrderDetl orderDetl = new OrderDetl();
- orderDetl.sync(mat);
- orderDetl.setBatch(null);
- orderDetl.setAnfme(Double.parseDouble(jsonArray.get(5).toString()));
- orderDetl.setOrderId(order.getId());
- orderDetl.setOrderNo(order.getOrderNo());
- orderDetl.setCreateBy(9527L);
- orderDetl.setCreateTime(new Date());
- orderDetl.setUpdateBy(9527L);
- orderDetl.setUpdateTime(new Date());
- orderDetl.setStatus(1);
- orderDetl.setQty(0.0D);
-// if (!orderDetlService.insert(orderDetl)) {
-// callApiLogSaveOrder(order,kingDeeUtilType, "鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�!璁㈠崟鍙凤細"+order.getOrderNo(), false);
-//// throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
-// }
- OrderInAndOutUtil.insertOrderDetl(kingDeeUtilType.pakIn == 1,order,orderDetl);
- }
- docTypeService.updateById(docType);
- }
- } catch (Exception e) {
- log.error("fail", e);
-// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return FAIL.setMsg(e.getMessage());
- } finally {
-// try {
-// // 淇濆瓨鎺ュ彛鏃ュ織
-// apiLogService.save(
-// "杞鏁版嵁",
-// URL + inaddress,
-// null,
-// "127.0.0.1",
-// add,
-// response,
-// success
-// );
-// } catch (Exception e) {
-// log.error("", e);
-// }
- }
- }
- return SUCCESS;
- }
-
- public void callApiLogSaveMat(Mat mat, KingDeeUtilType kingDeeUtilType, String response, Boolean bool) {
- apiLogService.save("鑾峰彇"+kingDeeUtilType.desc, kingDeeUtilType.formId, "null", URL,
- "鐗╂枡缂栧彿锛�" + mat.getMatnr() + "銆佺墿鏂欏悕绉帮細" + mat.getName() + "銆佺被鍨嬶細" + mat.getTagId$() + "銆佺姸鎬侊細" + mat.getStatus$(),
- response, bool);
- }
-
- public void callApiLogSaveOrder(Order order, KingDeeUtilType kingDeeUtilType, String response, Boolean bool) {
- apiLogService.save("鑾峰彇"+kingDeeUtilType.desc, kingDeeUtilType.formId, "null", URL,
- "鍗曟嵁缂栧彿锛�" + order.getId() + "銆佺姸鎬侊細" + order.getStatus$(),
- response, bool);
- }
-
-}
\ No newline at end of file
diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/LoginAuthenticationHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/LoginAuthenticationHandler.java
deleted file mode 100644
index 3530b48..0000000
--- a/src/main/java/com/zy/asrs/task/kingdee/handler/LoginAuthenticationHandler.java
+++ /dev/null
@@ -1,146 +0,0 @@
-package com.zy.asrs.task.kingdee.handler;
-
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import com.core.common.Cools;
-import com.core.exception.CoolException;
-import com.zy.asrs.entity.Order;
-import com.zy.asrs.service.ApiLogService;
-import com.zy.asrs.task.AbstractHandler;
-import com.zy.asrs.task.core.ReturnT;
-import com.zy.common.utils.HttpHandler;
-import com.zy.erp.kingdee.entity.param.LoginParam;
-import com.zy.erp.kingdee.enums.KingDeeUtilType;
-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 java.util.Set;
-
-@Service
-@Slf4j
-@Transactional
-public class LoginAuthenticationHandler extends AbstractHandler<String> {
-
- @Value("${erp.address.URL}")
- //绔彛
- private String URL;
-
- @Value("${erp.address.loginaddress}")
- //鐧诲綍鍦板潃
- private String loginaddress;
-
- @Value("${erp.login.acctID}")
- //璐﹀彿ID
- private String acctID;
-
- @Value("${erp.login.username}")
- //璐﹀彿
- private String username;
-
- @Value("${erp.login.password}")
- //瀵嗙爜
- private String password;
-
- @Value("${erp.login.lcid}")
- //
- private Integer lcid;
-
- @Autowired
- private ApiLogService apiLogService;
-
- /**
- * 45鍒嗛挓鐧诲綍涓�娆¢噾铦剁郴缁�
- * @return
- */
- @Transactional
- public synchronized ReturnT<String> start() {
-
- LoginParam loginParam =new LoginParam();
- loginParam.setAcctID(acctID);
- loginParam.setUsername(username);
- loginParam.setPassword(password);
- loginParam.setLcid(lcid);
- //涓婃姤
- String response = "";
- String cookie = "";
- boolean success = false;
- try {
- response = new HttpHandler.Builder()
- .setUri(URL)
- .setPath(loginaddress)
- .setJson(JSON.toJSONString(loginParam))
- .build()
- .doPost();
- JSONObject jsonObject = JSON.parseObject(response);
- Object sessionId = findValueByKey(JSON.parseObject(response), "SessionId");
- cookie="ASP.NET_SessionId="+sessionId+";"+"kdservice-sessionid="+jsonObject.getString("KDSVCSessionId");
- if (Cools.isEmpty(jsonObject.getString("Message"))) {
- success = true;
- } else {
- callApiLogSaveLog(JSON.toJSONString(loginParam),false);
- log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+loginaddress, JSON.toJSONString(loginParam), response);
-// throw new CoolException("鐧诲綍閲戣澏澶辫触");
- }
- } catch (Exception e) {
- log.error("fail", e);
- callApiLogSaveLog(JSON.toJSONString(loginParam),false);
- log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+loginaddress, JSON.toJSONString(loginParam), response);
-// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return FAIL.setMsg(e.getMessage());
- } finally {
-// try {
-// // 淇濆瓨鎺ュ彛鏃ュ織
-// apiLogService.save(
-// "鐧诲綍閲戣澏",
-// URL + loginaddress,
-// null,
-// "127.0.0.1",
-// JSON.toJSONString(loginParam),
-// response,
-// success
-// );
-// } catch (Exception e) { log.error("", e); }
- }
- return SUCCESS.setContent(cookie);
- }
-
-
- public static Object findValueByKey(JSONObject json, String key) {
- Set<String> keySet = json.keySet();
- for (String k : keySet) {
- Object v = json.get(k);
- if (k.equals(key)) {
- return v;
- } else if (v instanceof JSONArray) {
- int size = ((JSONArray) v).size();
- for (int i = 0; i <= size - 1; i++) {
- Object result = findValueByKey((JSONObject) ((JSONArray) v).get(i), key);
- if (result != null){
- return result;
- }
- }
- } else if (v instanceof JSONObject){
- Object result = findValueByKey((JSONObject) v, key);
- if (result != null){
- return result;
- }
- }
- }
- return null;
- }
-
- public void callApiLogSaveLog(String response, Boolean bool) {
- apiLogService.save("鐧诲綍閲戣澏澶辫触", URL, "null", loginaddress,
- "濂楄处ID锛�"+acctID+"銆佽处鍙凤細"+username+"銆佸瘑鐮侊細"+password,
- response, bool);
- }
-
-
-}
-
-
-
diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java
deleted file mode 100644
index 9b3a0b4..0000000
--- a/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java
+++ /dev/null
@@ -1,135 +0,0 @@
-package com.zy.asrs.task.kingdee.handler;
-
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.mapper.EntityWrapper;
-import com.zy.asrs.entity.DocType;
-import com.zy.asrs.entity.Order;
-import com.zy.asrs.service.ApiLogService;
-import com.zy.asrs.service.DocTypeService;
-import com.zy.asrs.service.OrderService;
-import com.zy.asrs.task.AbstractHandler;
-import com.zy.asrs.task.core.ReturnT;
-import com.zy.asrs.utils.OrderInAndOutUtil;
-import com.zy.common.utils.HttpHandler;
-import com.zy.erp.kingdee.enums.KingDeeUtilType;
-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 java.util.HashMap;
-import java.util.Set;
-
-/**
- * Created by vincent on 2023/10/21
- */
-@Slf4j
-@Service
-public class ReviewOrderSyncHandler extends AbstractHandler<String> {
- @Value("${erp.address.URL}")
- //绔彛
- private String URL;
-
- @Value("${erp.address.outaddressAudit}")
- //瀹℃牳鍦板潃
- private String outaddressAudit;
-
- @Autowired
- private OrderService orderService;
- @Autowired
- private ApiLogService apiLogService;
- @Autowired
- private DocTypeService docTypeService;
- @Autowired
- private LoginAuthenticationHandler loginAuthenticationHandler;
-
- @Transactional
- public ReturnT<String> start(Order order) {
- //鐧诲綍閲戣澏r
- ReturnT<String> start = loginAuthenticationHandler.start();
- DocType docType = docTypeService.selectById(order.getDocType());
- if (null == docType) {
- return SUCCESS;
- }
- KingDeeUtilType kingDeeUtilType = KingDeeUtilType.get(docType.getDocName());
-
- //鏉′欢鎷兼帴
- JSONObject jsonObject = new JSONObject();
- jsonObject.put("Numbers",order.getOrderNo());
- JSONObject jsonObject1 = new JSONObject();
- jsonObject1.put("data", jsonObject);
- jsonObject1.put("FormId",kingDeeUtilType.formId);
- String add = jsonObject1.toJSONString();
- //涓婃姤
- String response = "";
- boolean success = false;
- try {
- //鑾峰彇Cookie鍊�
- HashMap<String, Object> headers = new HashMap<>();
- headers.put("Cookie", start.getContent());
- response = new HttpHandler.Builder()
- .setHeaders(headers)
- .setUri(URL)
- .setPath(outaddressAudit)
- .setJson(add)
- .build()
- .doPost();
- JSONObject data = JSON.parseObject(response);
- Object IsSuccess = findValueByKey(JSON.parseObject(response), "IsSuccess");
- String bool=IsSuccess.toString();
- //瀹℃牳瀹屾垚鍘熻鍗�4杞�8 8.瀹℃牳瀹屾垚
- if(bool.equals("true")){
- success = true;
- order.setSettle(8L);
-// orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo()));
- OrderInAndOutUtil.updateOrder(order.getPakinPakoutStatus$(),order.getId(), 8L, null);
- }
- } catch (Exception e) {
- log.error("fail", e);
-// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return FAIL.setMsg(e.getMessage());
- } finally {
- try {
- // 淇濆瓨鎺ュ彛鏃ュ織
- apiLogService.save(
- "瀹℃牳",
- URL+ outaddressAudit,
- null,
- "127.0.0.1",
- add,
- response,
- success
- );
- } catch (Exception e) {
- log.error("", e);
- }
- }
- return SUCCESS;
- }
- public static Object findValueByKey(JSONObject json, String key) {
- Set<String> keySet = json.keySet();
- for (String k : keySet) {
- Object v = json.get(k);
- if (k.equals(key)) {
- return v;
- } else if (v instanceof JSONArray) {
- int size = ((JSONArray) v).size();
- for (int i = 0; i <= size - 1; i++) {
- Object result = findValueByKey((JSONObject) ((JSONArray) v).get(i), key);
- if (result != null){
- return result;
- }
- }
- } else if (v instanceof JSONObject){
- Object result = findValueByKey((JSONObject) v, key);
- if (result != null){
- return result;
- }
- }
- }
- return null;
- }
-}
diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java
deleted file mode 100644
index 65de7a7..0000000
--- a/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java
+++ /dev/null
@@ -1,136 +0,0 @@
-package com.zy.asrs.task.kingdee.handler;
-
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.mapper.EntityWrapper;
-import com.zy.asrs.entity.DocType;
-import com.zy.asrs.entity.Order;
-import com.zy.asrs.service.ApiLogService;
-import com.zy.asrs.service.DocTypeService;
-import com.zy.asrs.service.OrderService;
-import com.zy.asrs.task.AbstractHandler;
-import com.zy.asrs.task.core.ReturnT;
-import com.zy.asrs.utils.OrderInAndOutUtil;
-import com.zy.common.utils.HttpHandler;
-import com.zy.erp.kingdee.enums.KingDeeUtilType;
-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 java.util.HashMap;
-import java.util.Set;
-
-/**
- * Created by Monkey D. Luffy on 2023.10.21
- */
-@Slf4j
-@Service
-public class SaveOrderSyncHandler extends AbstractHandler<String> {
- @Value("${erp.address.URL}")
- //绔彛
- private String URL;
-
- @Value("${erp.address.outaddressSave}")
- //瀹℃牳鍦板潃
- private String outaddressSave;
-
- @Autowired
- private OrderService orderService;
- @Autowired
- private ApiLogService apiLogService;
- @Autowired
- private DocTypeService docTypeService;
- @Autowired
- private LoginAuthenticationHandler loginAuthenticationHandler;
-
- @Transactional
- public ReturnT<String> start(Order order) {
- //鐧诲綍閲戣澏r
- ReturnT<String> start = loginAuthenticationHandler.start();
- DocType docType = docTypeService.selectById(order.getDocType());
- if (null == docType) {
- return SUCCESS;
- }
- KingDeeUtilType kingDeeUtilType = KingDeeUtilType.get(docType.getDocName());
-
- //鏉′欢鎷兼帴
- JSONObject jsonObject = new JSONObject();
- jsonObject.put("Numbers",order.getOrderNo());
- JSONObject jsonObject1 = new JSONObject();
- jsonObject1.put("data", jsonObject);
- jsonObject1.put("FormId",kingDeeUtilType.correspondingFormId);
- String add = jsonObject1.toJSONString();
- //涓婃姤
- String response = "";
- boolean success = false;
- try {
- //鑾峰彇Cookie鍊�
- HashMap<String, Object> headers = new HashMap<>();
- headers.put("Cookie", start.getContent());
- response = new HttpHandler.Builder()
- .setHeaders(headers)
- .setUri(URL)
- .setPath(outaddressSave)
- .setJson(add)
- .build()
- .doPost();
- JSONObject data = JSON.parseObject(response);
- Object IsSuccess = findValueByKey(JSON.parseObject(response), "IsSuccess");
- String bool=IsSuccess.toString();
- //淇濆瓨瀹屾垚鍘熻鍗�8杞�6
- if(bool.equals("true")){
- success = true;
- order.setSettle(6L);
-// orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo()));
- OrderInAndOutUtil.updateOrder(order.getPakinPakoutStatus$(),order.getId(), 6L, null);
-
- }
- } catch (Exception e) {
- log.error("fail", e);
-// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return FAIL.setMsg(e.getMessage());
- } finally {
- try {
- // 淇濆瓨鎺ュ彛鏃ュ織
- apiLogService.save(
- "淇濆瓨",
- URL+ outaddressSave,
- null,
- "127.0.0.1",
- add,
- response,
- success
- );
- } catch (Exception e) {
- log.error("", e);
- }
- }
- return SUCCESS;
- }
- public static Object findValueByKey(JSONObject json, String key) {
- Set<String> keySet = json.keySet();
- for (String k : keySet) {
- Object v = json.get(k);
- if (k.equals(key)) {
- return v;
- } else if (v instanceof JSONArray) {
- int size = ((JSONArray) v).size();
- for (int i = 0; i <= size - 1; i++) {
- Object result = findValueByKey((JSONObject) ((JSONArray) v).get(i), key);
- if (result != null){
- return result;
- }
- }
- } else if (v instanceof JSONObject){
- Object result = findValueByKey((JSONObject) v, key);
- if (result != null){
- return result;
- }
- }
- }
- return null;
- }
-}
diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/SubmitOrderSyncHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/SubmitOrderSyncHandler.java
deleted file mode 100644
index 32ead63..0000000
--- a/src/main/java/com/zy/asrs/task/kingdee/handler/SubmitOrderSyncHandler.java
+++ /dev/null
@@ -1,135 +0,0 @@
-package com.zy.asrs.task.kingdee.handler;
-
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.mapper.EntityWrapper;
-import com.zy.asrs.entity.DocType;
-import com.zy.asrs.entity.Order;
-import com.zy.asrs.service.ApiLogService;
-import com.zy.asrs.service.DocTypeService;
-import com.zy.asrs.service.OrderService;
-import com.zy.asrs.task.AbstractHandler;
-import com.zy.asrs.task.core.ReturnT;
-import com.zy.asrs.utils.OrderInAndOutUtil;
-import com.zy.common.utils.HttpHandler;
-import com.zy.erp.kingdee.enums.KingDeeUtilType;
-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 java.util.HashMap;
-import java.util.Set;
-
-/**
- * Created by Monkey D. Luffy on 2023.10.21
- */
-@Slf4j
-@Service
-public class SubmitOrderSyncHandler extends AbstractHandler<String> {
- @Value("${erp.address.URL}")
- //绔彛
- private String URL;
-
- @Value("${erp.address.outaddressSubmit}")
- //瀹℃牳鍦板潃
- private String outaddressSubmit;
-
- @Autowired
- private OrderService orderService;
- @Autowired
- private ApiLogService apiLogService;
- @Autowired
- private DocTypeService docTypeService;
- @Autowired
- private LoginAuthenticationHandler loginAuthenticationHandler;
-
- @Transactional
- public ReturnT<String> start(Order order) {
- //鐧诲綍閲戣澏r
- ReturnT<String> start = loginAuthenticationHandler.start();
- DocType docType = docTypeService.selectById(order.getDocType());
- if (null == docType) {
- return SUCCESS;
- }
- KingDeeUtilType kingDeeUtilType = KingDeeUtilType.get(docType.getDocName());
-
- //鏉′欢鎷兼帴
- JSONObject jsonObject = new JSONObject();
- jsonObject.put("Numbers",order.getOrderNo());
- JSONObject jsonObject1 = new JSONObject();
- jsonObject1.put("data", jsonObject);
- jsonObject1.put("FormId",kingDeeUtilType.correspondingFormId);
- String add = jsonObject1.toJSONString();
- //涓婃姤
- String response = "";
- boolean success = false;
- try {
- //鑾峰彇Cookie鍊�
- HashMap<String, Object> headers = new HashMap<>();
- headers.put("Cookie", start.getContent());
- response = new HttpHandler.Builder()
- .setHeaders(headers)
- .setUri(URL)
- .setPath(outaddressSubmit)
- .setJson(add)
- .build()
- .doPost();
- JSONObject data = JSON.parseObject(response);
- Object IsSuccess = findValueByKey(JSON.parseObject(response), "IsSuccess");
- String bool=IsSuccess.toString();
- //瀹℃牳瀹屾垚鍘熻鍗�8杞�6
- if(bool.equals("true")){
- success = true;
- order.setSettle(6L);
-// orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo()));
- OrderInAndOutUtil.updateOrder(order.getPakinPakoutStatus$(),order.getId(), 6L, null);
- }
- } catch (Exception e) {
- log.error("fail", e);
-// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return FAIL.setMsg(e.getMessage());
- } finally {
- try {
- // 淇濆瓨鎺ュ彛鏃ュ織
- apiLogService.save(
- "鎻愪氦",
- URL+ outaddressSubmit,
- null,
- "127.0.0.1",
- add,
- response,
- success
- );
- } catch (Exception e) {
- log.error("", e);
- }
- }
- return SUCCESS;
- }
- public static Object findValueByKey(JSONObject json, String key) {
- Set<String> keySet = json.keySet();
- for (String k : keySet) {
- Object v = json.get(k);
- if (k.equals(key)) {
- return v;
- } else if (v instanceof JSONArray) {
- int size = ((JSONArray) v).size();
- for (int i = 0; i <= size - 1; i++) {
- Object result = findValueByKey((JSONObject) ((JSONArray) v).get(i), key);
- if (result != null){
- return result;
- }
- }
- } else if (v instanceof JSONObject){
- Object result = findValueByKey((JSONObject) v, key);
- if (result != null){
- return result;
- }
- }
- }
- return null;
- }
-}
diff --git a/src/main/java/com/zy/common/config/AdminInterceptor.java b/src/main/java/com/zy/common/config/AdminInterceptor.java
index 547ba96..795e7a1 100644
--- a/src/main/java/com/zy/common/config/AdminInterceptor.java
+++ b/src/main/java/com/zy/common/config/AdminInterceptor.java
@@ -10,6 +10,7 @@
import com.zy.common.utils.Http;
import com.zy.system.entity.*;
import com.zy.system.service.*;
+import com.zy.system.timer.LoadingConfigTimer;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.lang.Nullable;
@@ -41,6 +42,8 @@
private PermissionService permissionService;
@Autowired
private RolePermissionService rolePermissionService;
+ @Autowired
+ private LoadingConfigTimer loadingConfigTimer;
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
@@ -55,7 +58,7 @@
if (deToken!=null){
long timestamp = Long.parseLong(deToken.substring(0, 13));
// 1澶╁悗杩囨湡
- if (System.currentTimeMillis() - timestamp > 86400000){
+ if (System.currentTimeMillis() - timestamp > loadingConfigTimer.getTokenExpire()){
Http.response(response, BaseRes.DENIED);
return false;
}
diff --git a/src/main/java/com/zy/common/task/ActivateScheduler.java b/src/main/java/com/zy/common/task/ActivateScheduler.java
deleted file mode 100644
index 22b0ff0..0000000
--- a/src/main/java/com/zy/common/task/ActivateScheduler.java
+++ /dev/null
@@ -1,44 +0,0 @@
-package com.zy.common.task;
-
-import com.core.common.AesUtils;
-import com.core.common.Cools;
-import com.core.common.DateUtils;
-import com.zy.common.properties.OSinfo;
-import com.zy.common.properties.SystemProperties;
-import org.springframework.scheduling.annotation.Scheduled;
-import org.springframework.stereotype.Component;
-
-import javax.annotation.PostConstruct;
-import java.util.Date;
-
-/**
- * 绯荤粺婵�娲讳换鍔�
- */
-@Component
-public class ActivateScheduler {
-
-// @Scheduled(cron = "0/1 * 8 * * ? ") // 姣忓ぉ8鐐�
-// @Scheduled(cron = "* 0/1 * * * ? ") // 姣忓垎閽�
-// @PostConstruct
- private void execute(){
- // 鑾峰彇婵�娲荤爜
- String activationCode = SystemProperties.getActivationCode(OSinfo.getOSname().getActivationCodePath());
- if (!Cools.isEmpty(activationCode)) {
- // 鑾峰彇鏈夋晥鏈�
- String timeStr = AesUtils.decrypt(activationCode, SystemProperties.SALT);
- if (null == timeStr) {
- SystemProperties.SYSTEM_ACTIVATION = Boolean.FALSE;
- return;
- }
- Date exprTime = DateUtils.convert(timeStr, DateUtils.yyyyMMddHHmmss);
- if (new Date().getTime() < exprTime.getTime()) {
- SystemProperties.SYSTEM_ACTIVATION = Boolean.TRUE;
- } else {
- SystemProperties.SYSTEM_ACTIVATION = Boolean.FALSE;
- }
- } else {
- SystemProperties.SYSTEM_ACTIVATION = Boolean.FALSE;
- }
- }
-
-}
diff --git a/src/main/java/com/zy/common/web/AuthController.java b/src/main/java/com/zy/common/web/AuthController.java
index 32e4d76..cc00686 100644
--- a/src/main/java/com/zy/common/web/AuthController.java
+++ b/src/main/java/com/zy/common/web/AuthController.java
@@ -17,6 +17,7 @@
import com.zy.system.entity.license.LicenseVerify;
import com.zy.system.service.*;
import com.zy.system.timer.LicenseTimer;
+import com.zy.system.timer.LoadingConfigTimer;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional;
@@ -49,6 +50,8 @@
private RolePermissionService rolePermissionService;
@Autowired
private LicenseTimer licenseTimer;
+ @Autowired
+ private LoadingConfigTimer loadingConfigTimer;
@PostMapping("/login.action")
@ManagerAuth(value = ManagerAuth.Auth.NONE, memo = "鐧诲綍")
@@ -76,8 +79,9 @@
return R.parse(CodeRes.USER_10003);
}
String token = Cools.enToken(System.currentTimeMillis() + param.get("username"), user.getPassword());
- userLoginService.delete(new EntityWrapper<UserLogin>().eq("user_id", user.getId()));
- UserLogin userLogin = new UserLogin();
+ if (loadingConfigTimer.getTokenNumber() == 1) {
+ userLoginService.delete(new EntityWrapper<UserLogin>().eq("user_id", user.getId()).eq("system", "WMS"));
+ } UserLogin userLogin = new UserLogin();
userLogin.setUserId(user.getId());
userLogin.setToken(token);
userLogin.setCreateTime(new Date());
@@ -340,48 +344,48 @@
return R.ok(resources);
}
- @GetMapping(value = "/system/activation/auth")
- public R activation() {
- if (SystemProperties.SYSTEM_ACTIVATION) {
- String activationCode = SystemProperties.getActivationCode(OSinfo.getOSname().getActivationCodePath());
- String timeStr = AesUtils.decrypt(activationCode, SystemProperties.SALT);
- if (null == timeStr) {
- SystemProperties.SYSTEM_ACTIVATION = Boolean.FALSE;
- return R.error();
- }
- Date exprTime = DateUtils.convert(timeStr, DateUtils.yyyyMMddHHmmss);
- if (new Date().getTime() < exprTime.getTime()) {
- return R.ok().add(DateUtils.convert(exprTime));
- } else {
- SystemProperties.SYSTEM_ACTIVATION = Boolean.FALSE;
- return R.error();
- }
- } else {
- return R.error();
- }
- }
-
- @PostMapping(value = "/system/secret/auth")
- @ManagerAuth
- public R systemSecret(@RequestParam(value = "secret") String secret) {
- if (Cools.isEmpty(secret)) {
- return R.error("璇疯緭鍏ユ縺娲荤爜");
- }
- // 楠岃瘉婵�娲荤爜
- String timeStr = AesUtils.decrypt(secret, SystemProperties.SALT);
- if (null == timeStr) {
- return R.error("婵�娲荤爜閿欒");
- }
- Date exprTime = DateUtils.convert(timeStr, DateUtils.yyyyMMddHHmmss);
- if (new Date().getTime() >= exprTime.getTime()) {
- return R.error("婵�娲荤爜宸插け鏁�");
- }
- boolean result = SystemProperties.saveActivationCode(OSinfo.getOSname().getActivationCodePath(), secret);
- if (!result) {
- return R.error("婵�娲诲け璐�");
- }
- SystemProperties.SYSTEM_ACTIVATION = Boolean.TRUE;
- return R.ok("婵�娲绘垚鍔燂紝鏈夋晥鏈熻嚦" + DateUtils.convert(exprTime));
- }
+// @GetMapping(value = "/system/activation/auth")
+// public R activation() {
+// if (SystemProperties.SYSTEM_ACTIVATION) {
+// String activationCode = SystemProperties.getActivationCode(OSinfo.getOSname().getActivationCodePath());
+// String timeStr = AesUtils.decrypt(activationCode, SystemProperties.SALT);
+// if (null == timeStr) {
+// SystemProperties.SYSTEM_ACTIVATION = Boolean.FALSE;
+// return R.error();
+// }
+// Date exprTime = DateUtils.convert(timeStr, DateUtils.yyyyMMddHHmmss);
+// if (new Date().getTime() < exprTime.getTime()) {
+// return R.ok().add(DateUtils.convert(exprTime));
+// } else {
+// SystemProperties.SYSTEM_ACTIVATION = Boolean.FALSE;
+// return R.error();
+// }
+// } else {
+// return R.error();
+// }
+// }
+//
+// @PostMapping(value = "/system/secret/auth")
+// @ManagerAuth
+// public R systemSecret(@RequestParam(value = "secret") String secret) {
+// if (Cools.isEmpty(secret)) {
+// return R.error("璇疯緭鍏ユ縺娲荤爜");
+// }
+// // 楠岃瘉婵�娲荤爜
+// String timeStr = AesUtils.decrypt(secret, SystemProperties.SALT);
+// if (null == timeStr) {
+// return R.error("婵�娲荤爜閿欒");
+// }
+// Date exprTime = DateUtils.convert(timeStr, DateUtils.yyyyMMddHHmmss);
+// if (new Date().getTime() >= exprTime.getTime()) {
+// return R.error("婵�娲荤爜宸插け鏁�");
+// }
+// boolean result = SystemProperties.saveActivationCode(OSinfo.getOSname().getActivationCodePath(), secret);
+// if (!result) {
+// return R.error("婵�娲诲け璐�");
+// }
+// SystemProperties.SYSTEM_ACTIVATION = Boolean.TRUE;
+// return R.ok("婵�娲绘垚鍔燂紝鏈夋晥鏈熻嚦" + DateUtils.convert(exprTime));
+// }
}
diff --git a/src/main/java/com/zy/erp/kingdee/entity/param/InFormIdParam.java b/src/main/java/com/zy/erp/kingdee/entity/param/InFormIdParam.java
deleted file mode 100644
index 89c6f06..0000000
--- a/src/main/java/com/zy/erp/kingdee/entity/param/InFormIdParam.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package com.zy.erp.kingdee.entity.param;
-
-import lombok.Data;
-
-@Data
-public class InFormIdParam {
-
- //鏌ユ壘琛ㄥ崟鍞竴鏍囪瘑
- private String FormId;
-
- //鏈�澶氬厑璁告煡璇㈢殑鏁伴噺锛�0鎴栬�呬笉瑕佹灞炴�ф爣璇嗕笉闄愬埗
- private String TopRowCount;
-
- private Integer Limit;
-
- private String StartRow;
-
- //杩囨护鏉′欢锛坋g:\"FNumber>'0301010120001' and FCreateDate>'2023-07-05' \"锛�
- //1銆丩eft锛氬乏鎷彿
- //3銆丆ompare锛氭瘮杈冭繍绠楃锛屽銆�澶т簬">"銆佸皬浜�"<"銆佺瓑浜�"="銆佸寘鍚�"like"銆佸乏鍖呭惈"llike"銆佸彸鍖呭惈"rlike"
- //4銆乂alue锛氭瘮杈冨��
- //5銆丷ight锛氬彸鎷彿
- //6銆丩ogic锛氶�昏緫杩愮畻绗︼紝濡� "and"銆�"or"
- private Integer Filterstring;
-
- //鎺掑簭鏉′欢
- private Integer OrderString;
-
- //寰呮煡璇㈣〃鍗曠殑瀛楁鍒楋紙鏈熸湜杩斿洖鍊硷級
- private Integer FieldKeys;
-
-
-
-
-
-
-
-}
diff --git a/src/main/java/com/zy/erp/kingdee/entity/param/LoginParam.java b/src/main/java/com/zy/erp/kingdee/entity/param/LoginParam.java
deleted file mode 100644
index 1eb3ee4..0000000
--- a/src/main/java/com/zy/erp/kingdee/entity/param/LoginParam.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package com.zy.erp.kingdee.entity.param;
-
-import lombok.Data;
-
-@Data
-public class LoginParam {
- //璐﹀彿ID
- private String acctID;
-
- //璐﹀彿
- private String username;
-
- //瀵嗙爜
- private String password;
-
- //
- private Integer lcid;
-
-}
diff --git a/src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java b/src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java
deleted file mode 100644
index 77d827b..0000000
--- a/src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java
+++ /dev/null
@@ -1,80 +0,0 @@
-package com.zy.erp.kingdee.enums;
-
-public enum KingDeeUtilType {
- BD_MATERIAL(0, "鐗╂枡妗f","BD_MATERIAL","","","",1),
-// STK_InStock(1, "閲囪喘鍏ュ簱鍗�","STK_InStock","FRealQty","","",1),
-// PUR_MRB(2, "閲囪喘閫�鏂欏崟","PUR_MRB","FRMREALQTY","","",1),
-// PRD_PickMtrl(3, "鐢熶骇棰嗘枡鍗�","PRD_PickMtrl","FActualQty","","",1),
-// PRD_ReturnMtrl(4, "鐢熶骇閫�鏂欏崟","PRD_ReturnMtrl","FQty","","",1),
-// PRD_FeedMtrl(5, "鐢熶骇琛ユ枡鍗�","PRD_FeedMtrl","FActualQty","","",1),
-// STK_TransferDirect(6, "鐩存帴璋冩嫧鍗�","STK_TransferDirect","","FQty","",1),
-// STK_StockCountGain(7, "鐩樼泩鍗�","STK_StockCountGain","FGainQty","","",1),
-// STK_StockCountLoss(8, "鐩樹簭鍗�","STK_StockCountLoss","FLossQty","","",1),
-// STK_MisDelivery(9, "鍏朵粬鍑哄簱鍗�","STK_MisDelivery","FQty","","",1),
-// SP_PickMtrl(10, "绠�鍗曠敓浜ч鏂欏崟","SP_PickMtrl","FActualQty","","",1),
-// SP_ReturnMtrl(11, "绠�鍗曠敓浜ч��鏂欏崟","SP_ReturnMtrl","FQty","","",1),
-// SAL_OUTSTOCK(12, "閿�鍞嚭搴撳崟","SAL_OUTSTOCK","FRealQty","","",1),
-// SAL_RETURNSTOCK(13, "閿�鍞��璐у崟","SAL_RETURNSTOCK","FRealQty","","",1),
- SAL_DELIVERYNOTICE(14, "鍙戣揣閫氱煡鍗�","SAL_DELIVERYNOTICE","FQty","閿�鍞嚭搴撳崟","SAL_OUTSTOCK",0),
- STK_MISCELLANEOUS(15, "鍏朵粬鍏ュ簱鍗�","STK_MISCELLANEOUS","FQty","鍏朵粬鍏ュ簱鍗�","STK_MISCELLANEOUS",1),
-// BD_Supplier(16, "渚涘簲鍟�","BD_Supplier","","","",1),
- PUR_ReceiveBill(17, "鏀舵枡閫氱煡鍗�","PUR_ReceiveBill","FPOQTY","閲囪喘鍏ュ簱鍗�","STK_InStock",1),
- PRD_MORPT(18, "鐢熶骇姹囨姤鍗�","PRD_MORPT","FFinishQty","鐢熶骇鍏ュ簱鍗�","PRD_INSTOCK",1),
-// PRD_INSTOCK(19, "鐢熶骇鍏ュ簱鍗�","PRD_INSTOCK","","","",1),
- SAL_RETURNNOTICE(20, "閫�璐ч�氱煡鍗�","SAL_RETURNNOTICE","FBaseJunkedQty","閿�鍞��璐у崟","SAL_RETURNSTOCK",1),
- STK_OutStockApply(21, "鍑哄簱鐢宠鍗�","STK_OutStockApply","FTotalSecQty","鍏朵粬鍑哄簱鍗�","STK_MisDelivery",0),
- ;
- public Integer id;
- public String desc;
- public String formId;
- public String anfme;
- public String correspondingName;
- public String correspondingFormId;
- public Integer pakIn;
-
- KingDeeUtilType(Integer id, String desc,String formId,String anfme,String correspondingName,String correspondingFormId,int pakIn){
- this.id = id;
- this.desc = desc;
- this.formId = formId;
- this.anfme = anfme;
- this.correspondingName = correspondingName;
- this.correspondingFormId = correspondingFormId;
- this.pakIn = pakIn; //1鍏ュ簱 0鍑哄簱
- }
-
- public static KingDeeUtilType get(Short id) {
- if (null == id) {
- return null;
- }
- for (KingDeeUtilType type : KingDeeUtilType.values()) {
- if (type.id.equals(id.intValue())) {
- return type;
- }
- }
- return null;
- }
-
- public static KingDeeUtilType get(String desc) {
- if (null == desc) {
- return null;
- }
- for (KingDeeUtilType type : KingDeeUtilType.values()) {
- if (type.desc.equals(desc)) {
- return type;
- }
- }
- return null;
- }
-
- public static KingDeeUtilType get(KingDeeUtilType type) {
- if (null == type) {
- return null;
- }
- for (KingDeeUtilType crnLiftPosType : KingDeeUtilType.values()) {
- if (crnLiftPosType == type) {
- return crnLiftPosType;
- }
- }
- return null;
- }
-}
diff --git a/src/main/java/com/zy/erp/kingdee/utils/KingDeeUtil.java b/src/main/java/com/zy/erp/kingdee/utils/KingDeeUtil.java
deleted file mode 100644
index 3373421..0000000
--- a/src/main/java/com/zy/erp/kingdee/utils/KingDeeUtil.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.zy.erp.kingdee.utils;
-
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.time.LocalDateTime;
-import java.time.format.DateTimeFormatter;
-import java.util.Date;
-
-public class KingDeeUtil {
-
- //瀵圭編鍥芥椂闂磋繘琛岃浆鎹�
- public static Date KingDeeDate(String jsonArrayDate) throws ParseException {
- SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-
- DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
- DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
- LocalDateTime dateTime = LocalDateTime.parse(jsonArrayDate, formatter);
- String format = dateFormat.format(dateTime);
- return sdf.parse(format);
- }
-
-
-
-}
diff --git a/src/main/java/com/zy/erp/kingdee/utils/PostMesDataUtils.java b/src/main/java/com/zy/erp/kingdee/utils/PostMesDataUtils.java
deleted file mode 100644
index 1b89571..0000000
--- a/src/main/java/com/zy/erp/kingdee/utils/PostMesDataUtils.java
+++ /dev/null
@@ -1,119 +0,0 @@
-package com.zy.erp.kingdee.utils;
-
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
-import com.core.common.SpringUtils;
-import com.core.exception.CoolException;
-import com.zy.asrs.service.ApiLogService;
-import com.zy.asrs.task.AbstractHandler;
-import com.zy.asrs.task.core.ReturnT;
-import com.zy.common.utils.HttpHandler;
-import lombok.extern.slf4j.Slf4j;
-
-import java.util.Map;
-
-@Slf4j
-public class PostMesDataUtils extends AbstractHandler<String> {
-
- public ReturnT<String> postMesData(String name, String URL, String mesPath, Object combParam){
-// if (true){
-// System.out.println("name:"+name+",URL:"+URL+",mesPath:"+mesPath+",combParam:"+combParam);
-// return SUCCESS;
-// }
- if(combParam != null){
- String response = "";
- boolean success = false;
- try {
-// Map<String, Object> map = new HashMap<>()
-// map.put("appkey","ea1f0459efc02a79f046f982767939ae");
- response = new HttpHandler.Builder()
-// .setHeaders(map)
- .setUri(URL)
- .setPath(mesPath)
- .setJson(JSON.toJSONString(combParam))
- .build()
- .doPost();
- System.out.println("response:"+response);
- JSONObject jsonObject = JSON.parseObject(response);
-
- if (jsonObject.getInteger("code").equals(200)) {
- success = true;
- } else {
- log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+"/"+mesPath, JSON.toJSONString(combParam), response);
- throw new CoolException("涓婃姤"+name);
- }
- } catch (Exception e) {
- log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+"/"+mesPath, JSON.toJSONString(combParam), response);
-// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return FAIL.setMsg(e.getMessage());
- } finally {
- try {
- // 淇濆瓨鎺ュ彛鏃ュ織
- ApiLogService apiLogService = SpringUtils.getBean(ApiLogService.class);
- apiLogService.save(
- "涓婃姤"+name,
- URL +"/"+ mesPath,
- null,
- "127.0.0.1",
- JSON.toJSONString(combParam),
- response,
- success
- );
- } catch (Exception e) {
- log.error("", e); }
- }
- }
- return SUCCESS;
- }
-
- public ReturnT<String> postMesData(String name, String URL, String mesPath, Object combParam,Map<String, Object> map){
-// if (true){
-// System.out.println("name:"+name+",URL:"+URL+",mesPath:"+mesPath+",combParam:"+combParam);
-// return SUCCESS;
-// }
- if(combParam != null){
- String response = "";
- boolean success = false;
- try {
-// Map<String, Object> map = new HashMap<>();
-// map.put("appkey","ea1f0459efc02a79f046f982767939ae");
- response = new HttpHandler.Builder()
- .setHeaders(map)
- .setUri(URL)
- .setPath(mesPath)
- .setJson(JSON.toJSONString(combParam))
- .build()
- .doPost();
- System.out.println("response:"+response);
- JSONObject jsonObject = JSON.parseObject(response);
-
- if (jsonObject.getInteger("code").equals(200)) {
- success = true;
- } else {
- log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+"/"+mesPath, JSON.toJSONString(combParam), response);
- throw new CoolException("涓婃姤"+name);
- }
- } catch (Exception e) {
- log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+"/"+mesPath, JSON.toJSONString(combParam), response);
-// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return FAIL.setMsg(e.getMessage());
- } finally {
- try {
- // 淇濆瓨鎺ュ彛鏃ュ織
- ApiLogService apiLogService = SpringUtils.getBean(ApiLogService.class);
- apiLogService.save(
- "涓婃姤"+name,
- URL +"/"+ mesPath,
- null,
- "127.0.0.1",
- JSON.toJSONString(combParam),
- response,
- success
- );
- } catch (Exception e) {
- log.error("", e); }
- }
- }
- return SUCCESS;
- }
-}
diff --git a/src/main/java/com/zy/system/controller/LicenseCreatorController.java b/src/main/java/com/zy/system/controller/LicenseCreatorController.java
index 6d0c904..ba27337 100644
--- a/src/main/java/com/zy/system/controller/LicenseCreatorController.java
+++ b/src/main/java/com/zy/system/controller/LicenseCreatorController.java
@@ -99,4 +99,11 @@
return R.error("璁稿彲璇佹洿鏂板け璐�");
}
+
+ @RequestMapping(value = "/activate")
+ public R activate() {
+ licenseTimer.timer();
+ return R.ok();
+ }
+
}
\ No newline at end of file
diff --git a/src/main/java/com/zy/system/service/ConfigService.java b/src/main/java/com/zy/system/service/ConfigService.java
index 6100b23..0c05c61 100644
--- a/src/main/java/com/zy/system/service/ConfigService.java
+++ b/src/main/java/com/zy/system/service/ConfigService.java
@@ -6,4 +6,6 @@
public interface ConfigService extends IService<Config> {
Config selectConfigByCode(String code);
+
+ <T> T getVal(String key, Class<T> clazz, T t);
}
diff --git a/src/main/java/com/zy/system/service/impl/ConfigServiceImpl.java b/src/main/java/com/zy/system/service/impl/ConfigServiceImpl.java
index dc9a0e0..8bb1bf9 100644
--- a/src/main/java/com/zy/system/service/impl/ConfigServiceImpl.java
+++ b/src/main/java/com/zy/system/service/impl/ConfigServiceImpl.java
@@ -1,11 +1,14 @@
package com.zy.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.core.common.Cools;
import com.zy.system.entity.Config;
import com.zy.system.mapper.ConfigMapper;
import com.zy.system.service.ConfigService;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
+@Slf4j
@Service("configService")
public class ConfigServiceImpl extends ServiceImpl<ConfigMapper, Config> implements ConfigService {
@@ -14,4 +17,34 @@
return this.baseMapper.selectConfigByCode(code);
};
+ @Override
+ @SuppressWarnings("unchecked")
+ public <T> T getVal(String key, Class<T> clazz, T t) {
+ try {
+ Config config = this.baseMapper.selectConfigByCode(key);
+ if (config == null || config.getStatus() != 1 || Cools.isEmpty(config.getValue())) {
+ return t;
+ }
+ String val = config.getValue();
+ if (clazz.equals(Boolean.class)) {
+ if (val.equals("1") || val.trim().equalsIgnoreCase("TRUE")) {
+ return (T) Boolean.TRUE;
+ }
+ return (T) Boolean.FALSE;
+ } else if (clazz.equals(Integer.class)) {
+ return (T) Integer.valueOf(val);
+ } else if (clazz.equals(String.class)) {
+ return (T) val;
+ } else if (clazz.equals(Short.class)) {
+ return (T) Short.valueOf(val);
+ } else if (clazz.equals(Long.class)) {
+ return (T) Long.valueOf(val);
+ } else if (clazz.equals(Double.class)) {
+ return (T) Double.valueOf(val);
+ }
+ } catch (Exception e) {
+ log.error("鍙傛暟鍔犺浇寮傚父,閰嶇疆鍙傛暟={}", key);
+ }
+ return t;
+ }
}
diff --git a/src/main/java/com/zy/system/timer/LoadingConfigTimer.java b/src/main/java/com/zy/system/timer/LoadingConfigTimer.java
new file mode 100644
index 0000000..12e4a0a
--- /dev/null
+++ b/src/main/java/com/zy/system/timer/LoadingConfigTimer.java
@@ -0,0 +1,44 @@
+package com.zy.system.timer;
+
+import com.zy.system.service.ConfigService;
+import lombok.Data;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+/**
+ * 瀹氭椂浠诲姟璇诲彇閰嶇疆淇℃伅
+ */
+@Component
+@Slf4j
+@Data
+public class LoadingConfigTimer {
+
+ /**
+ * token鏈夋晥鏈熸椂闂�
+ */
+ private Integer tokenExpire = 1000 * 30 * 60;
+ /**
+ * token鏁伴噺闄愬埗
+ */
+ private Integer tokenNumber = 1;
+ /**
+ * 鍒犻櫎澶╂暟
+ */
+ private Integer logDeleteDays = 360;
+
+
+
+ @Autowired
+ private ConfigService configService;
+
+ @Scheduled(cron = "0/2 * * * * ? ")
+ public void timer() {
+ tokenExpire = configService.getVal("tokenExpire", Integer.class, tokenExpire);
+ tokenNumber = configService.getVal("tokenNumber", Integer.class, tokenNumber);
+ logDeleteDays = configService.getVal("logDeleteDays", Integer.class, logDeleteDays);
+
+ }
+
+}
diff --git a/src/main/java/com/zy/system/timer/TokenTimer.java b/src/main/java/com/zy/system/timer/TokenTimer.java
new file mode 100644
index 0000000..b44ad2a
--- /dev/null
+++ b/src/main/java/com/zy/system/timer/TokenTimer.java
@@ -0,0 +1,50 @@
+package com.zy.system.timer;
+
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.common.Cools;
+import com.zy.system.entity.UserLogin;
+import com.zy.system.service.UserLoginService;
+import lombok.extern.slf4j.Slf4j;
+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 java.util.List;
+
+/**
+ * token瀹氭椂浠诲姟,鍒犻櫎杩囨湡鐨則oken
+ */
+@Component
+@Slf4j
+public class TokenTimer {
+
+ @Autowired
+ private UserLoginService userLoginService;
+
+ @Autowired
+ private LoadingConfigTimer loadingConfigTimer;
+
+ @Value("${super.pwd}")
+ private String superPwd;
+
+ @Scheduled(cron = "0/30 * * * * ? ")
+ public void timer() {
+ if (loadingConfigTimer.getTokenNumber() == 1) {
+ return;
+ }
+ List<UserLogin> userLogins = userLoginService.selectList(new EntityWrapper<>());
+ for (UserLogin userLogin : userLogins) {
+ String deToken = Cools.deTokn(userLogin.getToken(), superPwd);
+ if (deToken != null) {
+ long timestamp = Long.parseLong(deToken.substring(0, 13));
+ // 鍗婂皬鏃跺悗杩囨湡
+ if (System.currentTimeMillis() - timestamp > loadingConfigTimer.getTokenExpire()) {
+ userLoginService.deleteById(userLogin.getId());
+ }
+
+ }
+ }
+ }
+
+}
--
Gitblit v1.9.1