1
13693261870
2025-01-14 ef225d856cdaf8c5f5b7c08db4b1a3e01ffca90f
1
已添加1个文件
已修改2个文件
115 ■■■■■ 文件已修改
se-modules/se-system/src/main/java/com/se/system/service/inte/IAServerInfoService.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
se-modules/se-system/src/main/java/com/se/system/utils/CommonUtils.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
se-modules/se-system/src/main/java/com/se/system/utils/LicenseVerifyUtils.java 100 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
se-modules/se-system/src/main/java/com/se/system/service/inte/IAServerInfoService.java
@@ -20,13 +20,20 @@
    private static class GxServerInfosContainer {
        private static List<String> ipAddress = null;
        private static List<String> macAddress = null;
        private static String cpuSerial = null;
        private static String mainBoardSerial = null;
        private static boolean isIpCheck = true;
        private static boolean isIpCheck = false;
        private static boolean isMacCheck = true;
        private static boolean isCpuCheck = true;
        private static boolean isBoardCheck = true;
        private static boolean isCpuCheck = false;
        private static boolean isBoardCheck = false;
    }
    /**
se-modules/se-system/src/main/java/com/se/system/utils/CommonUtils.java
@@ -254,7 +254,7 @@
        return new String(decryptedBytes);
    }
    public static void test(String[] args) {
    public static void test() {
        Integer a = null;
        System.out.println(isNotEmpty(a));
        String str = "[\"11\",\"222\"]";
se-modules/se-system/src/main/java/com/se/system/utils/LicenseVerifyUtils.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,100 @@
package com.se.system.utils;
import com.se.system.domain.vo.LicenseExtraParamVo;
import com.se.system.domain.vo.LicenseResultVo;
import com.se.system.domain.vo.LicenseVerifyMg;
import com.se.system.domain.vo.LicenseVerifyParamVo;
import com.se.system.service.CustomVerifyListenerService;
import com.se.system.service.LiceVerifyInstallListener;
import com.se.system.service.inte.IACustomVerifyListener;
import com.se.system.service.inte.IAServerInfoService;
import de.schlichtherle.license.LicenseContent;
import java.io.File;
import java.util.Arrays;
import java.util.Comparator;
import java.util.List;
@SuppressWarnings("ALL")
public class LicenseVerifyUtils {
    public static LicenseVerifyParamVo licenseVerifyProperties = new LicenseVerifyParamVo();
    public static void installListener() {
        licenseVerifyProperties.setSubject("se-cloud");
        licenseVerifyProperties.setPublicAlias("publiccert");
        licenseVerifyProperties.setPublicKeysStorePath("/publicCerts.store");
        licenseVerifyProperties.setStorePass("Se_System_20!24");
        // licenseVerifyProperties.setLicensePath("classpath:license.lic");
        String serverTempPath = IAServerInfoService.getServerTempPath() + "/lic-files/";
        String latestLicFilePath = getLatestLicFilePath(serverTempPath);
        licenseVerifyProperties.setLicensePath(latestLicFilePath + File.separator + "license.lic");
        // å®‰è£…证书
        LiceVerifyInstallListener.LicenseVerifyInstall(licenseVerifyProperties);
        // æ·»åŠ è‡ªå®šä¹‰æ ¡éªŒæ¨¡å¼
        initCustomVerifyListener();
        // æ ¡éªŒè¯ä¹¦
        LicenseVerify();
    }
    /**
     * è‡ªå®šä¹‰æ ¡éªŒæ¨¡å¼æ¯”如license分发
     */
    public static void initCustomVerifyListener() {
        new CustomVerifyListenerService();
        // new CustomVerifyListenerB();
    }
    public static void LicenseVerify() {
        LicenseVerifyMg licenseVerifyManager = new LicenseVerifyMg();
        LicenseResultVo verifyResult = licenseVerifyManager.verify(licenseVerifyProperties.getVerifyParam());
        if (!verifyResult.getResult()) {
            System.out.println(verifyResult.getMessage());
        }
        LicenseContent content = verifyResult.getContent();
        LicenseExtraParamVo licenseCheck = (LicenseExtraParamVo) content.getExtra();
        if (verifyResult.getResult()) {
            /** å¢žåŠ ä¸šåŠ¡ç³»ç»Ÿç›‘å¬ï¼Œæ˜¯å¦è‡ªå®šä¹‰éªŒè¯ */
            List<IACustomVerifyListener> customListenerList = IACustomVerifyListener.getCustomListenerList();
            boolean compare = true;
            for (IACustomVerifyListener listener : customListenerList) {
                boolean verify = listener.verify(licenseCheck);
                compare = compare && verify;
            }
            if (true) {
                System.out.println("licnese æ ¡éªŒæˆåŠŸ");
                return;
            } else {
                throw new RuntimeException("license æ ¡éªŒå¤±è´¥");
            }
        }
        throw new RuntimeException(verifyResult.getException().getMessage());
    }
    public static String getLatestLicFilePath(String folderPath) {
        File folder = new File(folderPath);
        if (folder.isDirectory()) {
            File[] files = folder.listFiles();
            if (files != null && files.length > 0) {
                // æŒ‰æ–‡ä»¶æœ€åŽä¿®æ”¹æ—¶é—´æŽ’序
                Arrays.sort(files, Comparator.comparingLong(File::lastModified).reversed());
                // è¿”回最新文件的路径
                return files[0].getAbsolutePath();
            }
        }
        // å¦‚果文件夹中没有lic文件,返回null或者你认为合适的值
        return null;
    }
    public static void test() {
        installListener();
        LicenseVerify();
        LicenseVerify();
        LicenseVerify();
    }
}