From 81f09b080323184922ed85c28274d5711898512b Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期三, 18 三月 2026 09:38:06 +0800
Subject: [PATCH] 1.对先进先出进行修复
---
src/main/java/com/zy/system/entity/license/LicenseCheckListener.java | 65 ++++++++++++++++++++++++++------
1 files changed, 53 insertions(+), 12 deletions(-)
diff --git a/src/main/java/com/zy/system/entity/license/LicenseCheckListener.java b/src/main/java/com/zy/system/entity/license/LicenseCheckListener.java
index 139b49d..643ce23 100644
--- a/src/main/java/com/zy/system/entity/license/LicenseCheckListener.java
+++ b/src/main/java/com/zy/system/entity/license/LicenseCheckListener.java
@@ -1,14 +1,21 @@
package com.zy.system.entity.license;
import com.core.common.Cools;
+import com.zy.system.entity.LicenseInfos;
+import com.zy.system.service.LicenseInfosService;
+import com.zy.system.timer.LicenseTimer;
import de.schlichtherle.license.LicenseContent;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextRefreshedEvent;
import org.springframework.stereotype.Component;
+
+import java.io.File;
+import java.util.Date;
/**
* 鍦ㄩ」鐩惎鍔ㄦ椂瀹夎璇佷功
@@ -46,6 +53,10 @@
*/
@Value("${license.publicKeysStorePath}")
private String publicKeysStorePath;
+ @Autowired
+ private LicenseTimer licenseTimer;
+ @Autowired
+ private LicenseInfosService licenseInfosService;
@Override
public void onApplicationEvent(ContextRefreshedEvent event) {
@@ -61,22 +72,52 @@
if(!Cools.isEmpty(licensePath)){
logger.info("++++++++ 寮�濮嬪姞杞借鍙瘉 ++++++++");
- LicenseVerifyParam param = new LicenseVerifyParam();
- param.setSubject(subject);
- param.setPublicAlias(publicAlias);
- param.setStorePass(storePass);
- param.setLicensePath(licensePath);
- param.setPublicKeysStorePath(publicKeysStorePath);
+ try {
+ licenseTimer.getRemoteLicense();
+ } catch (Exception e) {
+ }
- LicenseVerify licenseVerify = new LicenseVerify();
- //瀹夎璇佷功
- LicenseContent install = licenseVerify.install(param);
+ try {
+ LicenseVerifyParam param = new LicenseVerifyParam();
+ param.setSubject(subject);
+ param.setPublicAlias(publicAlias);
+ param.setStorePass(storePass);
+ param.setLicensePath(licensePath);
+ param.setPublicKeysStorePath(publicKeysStorePath);
- logger.info("++++++++ 璁稿彲璇佸姞杞界粨鏉� ++++++++");
+ LicenseVerify licenseVerify = new LicenseVerify();
- return install != null;
+ LicenseInfos latestLicense = licenseInfosService.getLatestLicense();
+ if (latestLicense == null) {
+ logger.info("璁稿彲璇佷笉瀛樺湪");
+ return false;
+ }
+
+ //瀹夎璇佷功
+ LicenseContent install = licenseVerify.install(param, latestLicense.getLicense());
+
+ logger.info("++++++++ 璁稿彲璇佸姞杞界粨鏉� ++++++++");
+
+ licenseTimer.setSystemSupport(install!=null);
+
+ if (install != null) {
+ Date start = new Date();
+ Date end = install.getNotAfter();
+ Long starTime = start.getTime();
+ Long endTime = end.getTime();
+ Long num = endTime - starTime;//鏃堕棿鎴崇浉宸殑姣鏁�
+ int day = (int) (num / 24 / 60 / 60 / 1000);
+ licenseTimer.setLicenseDays(day);
+ }
+
+
+ return install != null;
+ } catch (Exception e) {
+ e.printStackTrace();
+ return false;
+ }
}
-
+ licenseTimer.setSystemSupport(false);
return false;
}
}
\ No newline at end of file
--
Gitblit v1.9.1