From 64956223203a84514acc3d30cfb13176b0bcddc3 Mon Sep 17 00:00:00 2001
From: "768863620@qq.com" <768863620@qq.com>
Date: Fri, 5 Jul 2024 11:29:04 +0800
Subject: [PATCH] lincense
---
.../src/main/java/com/youchain/AppRun.java | 2 +-
.../rest/SysAppUpdateController.java | 4 -
.../modules/license/AGxServerInfos.java | 66 +----
.../modules/license/LicenseValidate.java | 270 +++++++++++++++---
.../modules/license/LinuxServerInfos.java | 76 ++---
.../modules/license/WindowsServerInfos.java | 83 ++----
.../modules/license/domain/LicenseCheck.java | 16 +-
.../rest/AuthorizationController.java | 2 +-
8 files changed, 301 insertions(+), 218 deletions(-)
diff --git a/youchain-system/src/main/java/com/youchain/AppRun.java b/youchain-system/src/main/java/com/youchain/AppRun.java
index 051d819..f47be03 100644
--- a/youchain-system/src/main/java/com/youchain/AppRun.java
+++ b/youchain-system/src/main/java/com/youchain/AppRun.java
@@ -60,7 +60,7 @@ public class AppRun {
springApplication.addListeners(new ApplicationPidFileWriter());
springApplication.addListeners(new MyApiDictListener());
springApplication.run(args);
- log.info(JSONUtil.toJsonStr(LicenseValidate.getDeviceInfo()));
+ log.info(JSONUtil.toJsonStr(LicenseValidate.getSystem_price()));
}
@Bean
diff --git a/youchain-system/src/main/java/com/youchain/appupdate/rest/SysAppUpdateController.java b/youchain-system/src/main/java/com/youchain/appupdate/rest/SysAppUpdateController.java
index 9a968da..e544fba 100644
--- a/youchain-system/src/main/java/com/youchain/appupdate/rest/SysAppUpdateController.java
+++ b/youchain-system/src/main/java/com/youchain/appupdate/rest/SysAppUpdateController.java
@@ -101,20 +101,16 @@ public class SysAppUpdateController {
}
-
-
@PutMapping
@Log("修改app_update")
@ApiOperation("修改app_update")
@PreAuthorize("@el.check('sysAppUpdate:edit')")
public ResponseEntity
*/
public class LinuxServerInfos extends AGxServerInfos {
- @Override
- protected List getIpAddress() throws Exception {
- List result = null;
- //获取所有网络接口
- List inetAddresses = getLocalAllInetAddress();
-
- if(inetAddresses != null && inetAddresses.size() > 0){
- result = inetAddresses.stream().map(InetAddress::getHostAddress).distinct().map(String::toLowerCase).collect(Collectors.toList());
- }
-
- return result;
- }
-
- @Override
- protected List getMacAddress() throws Exception {
- List result = null;
-
- //1. 获取所有网络接口
- List inetAddresses = getLocalAllInetAddress();
-
- if(inetAddresses != null && inetAddresses.size() > 0){
- //2. 获取所有网络接口的Mac地址
- result = inetAddresses.stream().map(this::getMacByInetAddress).distinct().collect(Collectors.toList());
- }
-
- return result;
- }
@Override
protected String getCPUSerial() throws Exception {
//序列号
String serialNumber = "";
- //使用dmidecode命令获取CPU序列号
- String[] shell = {"/bin/bash","-c","dmidecode -t processor | grep 'ID' | awk -F ':' '{print $2}' | head -n 1"};
- Process process = Runtime.getRuntime().exec(shell);
- process.getOutputStream().close();
+ try{
+ String[] shell = {"/bin/bash","-c","dmidecode -t processor | grep 'ID' | awk -F ':' '{print $2}' | head -n 1"};
+ Process process = Runtime.getRuntime().exec(shell);
+ process.getOutputStream().close();
- BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
+ BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
- String line = reader.readLine().trim();
- if(StringUtils.isNotBlank(line)){
- serialNumber = line;
+ String line = reader.readLine().trim();
+ if(StringUtils.isNotBlank(line)){
+ serialNumber = line;
+ }
+ reader.close();
+ }catch (Exception e){
+ serialNumber="";
}
+ //使用dmidecode命令获取CPU序列号
- reader.close();
return serialNumber;
}
@@ -67,20 +41,22 @@ public class LinuxServerInfos extends AGxServerInfos {
protected String getMainBoardSerial() throws Exception {
//序列号
String serialNumber = "";
+ try{
+ //使用dmidecode命令获取主板序列号
+ String[] shell = {"/bin/bash","-c","dmidecode | grep 'Serial Number' | awk -F ':' '{print $2}' | head -n 1"};
+ Process process = Runtime.getRuntime().exec(shell);
+ process.getOutputStream().close();
- //使用dmidecode命令获取主板序列号
- String[] shell = {"/bin/bash","-c","dmidecode | grep 'Serial Number' | awk -F ':' '{print $2}' | head -n 1"};
- Process process = Runtime.getRuntime().exec(shell);
- process.getOutputStream().close();
+ BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
- BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
-
- String line = reader.readLine().trim();
- if(StringUtils.isNotBlank(line)){
- serialNumber = line;
+ String line = reader.readLine().trim();
+ if(StringUtils.isNotBlank(line)){
+ serialNumber = line;
+ }
+ reader.close();
+ }catch (Exception e){
+ serialNumber = "";
}
-
- reader.close();
return serialNumber;
}
}
diff --git a/youchain-system/src/main/java/com/youchain/modules/license/WindowsServerInfos.java b/youchain-system/src/main/java/com/youchain/modules/license/WindowsServerInfos.java
index f6891f3..17044d8 100644
--- a/youchain-system/src/main/java/com/youchain/modules/license/WindowsServerInfos.java
+++ b/youchain-system/src/main/java/com/youchain/modules/license/WindowsServerInfos.java
@@ -1,63 +1,38 @@
package com.youchain.modules.license;
-import java.net.InetAddress;
-import java.util.List;
import java.util.Scanner;
-import java.util.stream.Collectors;
/**
* 用于获取客户Windows服务器的基本信息
*/
public class WindowsServerInfos extends AGxServerInfos {
- @Override
- protected List getIpAddress() throws Exception {
- List result = null;
- //获取所有网络接口
- List inetAddresses = getLocalAllInetAddress();
-
- if(inetAddresses != null && inetAddresses.size() > 0){
- result = inetAddresses.stream().map(InetAddress::getHostAddress).distinct().map(String::toLowerCase).collect(Collectors.toList());
- }
-
- return result;
- }
-
- @Override
- protected List getMacAddress() throws Exception {
- List result = null;
-
- //1. 获取所有网络接口
- List inetAddresses = getLocalAllInetAddress();
-
- if(inetAddresses != null && inetAddresses.size() > 0){
- //2. 获取所有网络接口的Mac地址
- result = inetAddresses.stream().map(this::getMacByInetAddress).distinct().collect(Collectors.toList());
- }
-
- return result;
- }
@Override
protected String getCPUSerial() throws Exception {
//序列号
String serialNumber = "";
- //使用WMIC获取CPU序列号
- Process process = Runtime.getRuntime().exec("wmic cpu get processorid");
- process.getOutputStream().close();
- Scanner scanner = new Scanner(process.getInputStream());
+ try{
+ //使用WMIC获取CPU序列号
+ Process process = Runtime.getRuntime().exec("wmic cpu get processorid");
+ process.getOutputStream().close();
+ Scanner scanner = new Scanner(process.getInputStream());
- if(scanner.hasNext()){
- scanner.next();
+ if(scanner.hasNext()){
+ scanner.next();
+ }
+
+ if(scanner.hasNext()){
+ serialNumber = scanner.next().trim();
+ }
+
+ scanner.close();
+ }catch (Exception e){
+ serialNumber = "";
}
- if(scanner.hasNext()){
- serialNumber = scanner.next().trim();
- }
-
- scanner.close();
return serialNumber;
}
@@ -66,20 +41,24 @@ public class WindowsServerInfos extends AGxServerInfos {
//序列号
String serialNumber = "";
- //使用WMIC获取主板序列号
- Process process = Runtime.getRuntime().exec("wmic baseboard get serialnumber");
- process.getOutputStream().close();
- Scanner scanner = new Scanner(process.getInputStream());
+ try{
+ //使用WMIC获取主板序列号
+ Process process = Runtime.getRuntime().exec("wmic baseboard get serialnumber");
+ process.getOutputStream().close();
+ Scanner scanner = new Scanner(process.getInputStream());
+
+ if(scanner.hasNext()){
+ scanner.next();
+ }
+
+ if(scanner.hasNext()){
+ serialNumber = scanner.next().trim();
+ }
+ scanner.close();
+ }catch (Exception e){
- if(scanner.hasNext()){
- scanner.next();
}
- if(scanner.hasNext()){
- serialNumber = scanner.next().trim();
- }
-
- scanner.close();
return serialNumber;
}
diff --git a/youchain-system/src/main/java/com/youchain/modules/license/domain/LicenseCheck.java b/youchain-system/src/main/java/com/youchain/modules/license/domain/LicenseCheck.java
index 3462cf8..be6afcc 100644
--- a/youchain-system/src/main/java/com/youchain/modules/license/domain/LicenseCheck.java
+++ b/youchain-system/src/main/java/com/youchain/modules/license/domain/LicenseCheck.java
@@ -1,7 +1,6 @@
package com.youchain.modules.license.domain;
import java.io.Serializable;
-import java.util.List;
public class LicenseCheck implements Serializable {
@@ -18,6 +17,18 @@ public class LicenseCheck implements Serializable {
* 失效时间
*/
private String endTime;
+ /**
+ * 文件创建时间
+ */
+ private String CreateTime;
+
+ public String getCreateTime() {
+ return CreateTime;
+ }
+
+ public void setCreateTime(String createTime) {
+ CreateTime = createTime;
+ }
public String getEndTime() {
return endTime;
@@ -27,11 +38,12 @@ public class LicenseCheck implements Serializable {
this.endTime = endTime;
}
- public LicenseCheck() {
+ public LicenseCheck(){
}
+
public String getCpuSerial() {
return cpuSerial;
}
diff --git a/youchain-system/src/main/java/com/youchain/modules/security/rest/AuthorizationController.java b/youchain-system/src/main/java/com/youchain/modules/security/rest/AuthorizationController.java
index e599cd4..fdc75ec 100644
--- a/youchain-system/src/main/java/com/youchain/modules/security/rest/AuthorizationController.java
+++ b/youchain-system/src/main/java/com/youchain/modules/security/rest/AuthorizationController.java
@@ -202,7 +202,7 @@ public class AuthorizationController {
@ApiOperation("获取服务器信息")
@AnonymousGetMapping(value = "/deviceinfo")
public ResponseEntity