From 6793c369ea62bd2350742a6c48f5f0d301214519 Mon Sep 17 00:00:00 2001 From: yang_shj Date: Mon, 13 Mar 2023 14:51:09 +0800 Subject: [PATCH] =?UTF-8?q?#=E6=95=B0=E6=8D=AE=E5=A1=AB=E6=8A=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/IEmOreanizationServiceTest.java | 158 ++++++++++++++++++--- .../fill/controller/InsertPowerController.java | 2 +- .../fill/controller/InsertUseController.java | 2 +- .../fill/controller/NotInsertPowerController.java | 2 +- .../fill/controller/NotInsertUseController.java | 2 +- .../fill/controller/RainfallController.java | 2 +- .../fill/controller/StorageController.java | 6 +- 7 files changed, 145 insertions(+), 29 deletions(-) diff --git a/hzims-service/equipment/src/test/java/com/hnac/hzims/equipment/service/IEmOreanizationServiceTest.java b/hzims-service/equipment/src/test/java/com/hnac/hzims/equipment/service/IEmOreanizationServiceTest.java index 6230b5f..23a477c 100644 --- a/hzims-service/equipment/src/test/java/com/hnac/hzims/equipment/service/IEmOreanizationServiceTest.java +++ b/hzims-service/equipment/src/test/java/com/hnac/hzims/equipment/service/IEmOreanizationServiceTest.java @@ -1,25 +1,143 @@ package com.hnac.hzims.equipment.service; -import com.hnac.hzims.EquipmentApplication; -import org.junit.Ignore; -import org.junit.jupiter.api.Test; -import org.junit.runner.RunWith; -import org.springblade.core.test.BladeBootTest; -import org.springblade.core.test.BladeSpringRunner; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.context.SpringBootTest; - -import static org.junit.jupiter.api.Assertions.*; -@RunWith(BladeSpringRunner.class) -@SpringBootTest(classes= EquipmentApplication.class) -@BladeBootTest(appName="hzims-equipment",profile="dev",enableLoader=true) -@Ignore -public class IEmOreanizationServiceTest { - @Autowired - private IEmOreanizationService oreanizationService; - @Test - public void initLoad() { - oreanizationService.initLoad(null); +import lombok.SneakyThrows; +import org.apache.commons.codec.binary.Base64; +import org.springframework.util.StringUtils; +import sun.misc.BASE64Decoder; + +import javax.crypto.Cipher; +import javax.crypto.KeyGenerator; +import javax.crypto.spec.SecretKeySpec; +import java.math.BigInteger; + +public class IEmOreanizationServiceTest { + + public static void main(String[] args) { + System.out.println(aesEncrypt("hzinfoScrenn123!",KEY)); + } + + //密钥 (需要前端和后端保持一致) + // public static final String KEY = "abcdefgabcdefg12"; + public static final String KEY = "HNAC147896325##*"; + //算法 + private static final String ALGORITHMSTR = "AES/ECB/PKCS5Padding"; + + /** + * aes解密 + * @param encrypt 内容 + * @return + * @throws Exception + */ + public static String aesDecrypt(String encrypt) { + try { + return aesDecrypt(encrypt, KEY); + } catch (Exception e) { + e.printStackTrace(); + return ""; + } + } + + /** + * aes加密 + * @param content + * @return + * @throws Exception + */ + public static String aesEncrypt(String content) { + try { + return aesEncrypt(content, KEY); + } catch (Exception e) { + e.printStackTrace(); + return ""; + } + } + + /** + * 将byte[]转为各种进制的字符串 + * @param bytes byte[] + * @param radix 可以转换进制的范围,从Character.MIN_RADIX到Character.MAX_RADIX,超出范围后变为10进制 + * @return 转换后的字符串 + */ + public static String binary(byte[] bytes, int radix){ + return new BigInteger(1, bytes).toString(radix);// 这里的1代表正数 + } + + /** + * base 64 encode + * @param bytes 待编码的byte[] + * @return 编码后的base 64 code + */ + public static String base64Encode(byte[] bytes){ + return Base64.encodeBase64String(bytes); + } + + /** + * base 64 decode + * @param base64Code 待解码的base 64 code + * @return 解码后的byte[] + * @throws Exception + */ + public static byte[] base64Decode(String base64Code) throws Exception{ + return StringUtils.isEmpty(base64Code) ? null : new BASE64Decoder().decodeBuffer(base64Code); + } + + + /** + * AES加密 + * @param content 待加密的内容 + * @param encryptKey 加密密钥 + * @return 加密后的byte[] + * @throws Exception + */ + public static byte[] aesEncryptToBytes(String content, String encryptKey) throws Exception { + KeyGenerator kgen = KeyGenerator.getInstance("AES"); + kgen.init(128); + Cipher cipher = Cipher.getInstance(ALGORITHMSTR); + cipher.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(encryptKey.getBytes(), "AES")); + + return cipher.doFinal(content.getBytes("utf-8")); + } + + + /** + * AES加密为base 64 code + * @param content 待加密的内容 + * @param encryptKey 加密密钥 + * @return 加密后的base 64 code + * @throws Exception + */ + @SneakyThrows + public static String aesEncrypt(String content, String encryptKey) { + return base64Encode(aesEncryptToBytes(content, encryptKey)); + } + + /** + * AES解密 + * @param encryptBytes 待解密的byte[] + * @param decryptKey 解密密钥 + * @return 解密后的String + * @throws Exception + */ + public static String aesDecryptByBytes(byte[] encryptBytes, String decryptKey) throws Exception { + KeyGenerator kgen = KeyGenerator.getInstance("AES"); + kgen.init(128); + + Cipher cipher = Cipher.getInstance(ALGORITHMSTR); + cipher.init(Cipher.DECRYPT_MODE, new SecretKeySpec(decryptKey.getBytes(), "AES")); + byte[] decryptBytes = cipher.doFinal(encryptBytes); + return new String(decryptBytes,"utf-8"); //指定编码格式,防止tomcat未指定编码格式导致中文乱码 + } + + + /** + * 将base 64 code AES解密 + * @param encryptStr 待解密的base 64 code + * @param decryptKey 解密密钥 + * @return 解密后的string + * @throws Exception + */ + public static String aesDecrypt(String encryptStr, String decryptKey) throws Exception { + return StringUtils.isEmpty(encryptStr) ? null : aesDecryptByBytes(base64Decode(encryptStr), decryptKey); } } diff --git a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/InsertPowerController.java b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/InsertPowerController.java index 15f9ac3..f9ecfb7 100644 --- a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/InsertPowerController.java +++ b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/InsertPowerController.java @@ -27,7 +27,7 @@ import javax.validation.Valid; @RestController @AllArgsConstructor @RequestMapping("/insert/power") -@Api(value = "接入电站填报", tags = "接入电站历史发电量填报") +@Api(value = "电站填报", tags = "接入电站发电量填报") public class InsertPowerController extends BladeController { private final InsertPowerService service; diff --git a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/InsertUseController.java b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/InsertUseController.java index 80b1bf8..8138d3b 100644 --- a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/InsertUseController.java +++ b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/InsertUseController.java @@ -22,7 +22,7 @@ import javax.validation.Valid; @RestController @AllArgsConstructor @RequestMapping("/insert/use") -@Api(value = "接入泵站用电量填报", tags = "接入泵站用电量填报") +@Api(value = "泵站用电量填报", tags = "接入泵站用电量填报") public class InsertUseController extends BladeController { private final InsertPowerService service; diff --git a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/NotInsertPowerController.java b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/NotInsertPowerController.java index 7dc48f3..b306712 100644 --- a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/NotInsertPowerController.java +++ b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/NotInsertPowerController.java @@ -26,7 +26,7 @@ import javax.validation.Valid; @RestController @AllArgsConstructor @RequestMapping("/notInsert/power") -@Api(value = "未接入电站填报", tags = "未接入电站历史发电量填报") +@Api(value = "水电站发电量填报", tags = "未接入电站历史发电量填报") public class NotInsertPowerController extends BladeController { private final NotInsertPowerService service; diff --git a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/NotInsertUseController.java b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/NotInsertUseController.java index 8658446..6680137 100644 --- a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/NotInsertUseController.java +++ b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/NotInsertUseController.java @@ -26,7 +26,7 @@ import javax.validation.Valid; @RestController @AllArgsConstructor @RequestMapping("/notInsert/use") -@Api(value = "未接入泵站历史用电量填报", tags = "未接入泵站历史用电量填报") +@Api(value = "泵站用电量填报", tags = "未接入泵站历史用电量填报") public class NotInsertUseController extends BladeController { private final NotInsertUseService service; diff --git a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/RainfallController.java b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/RainfallController.java index aac7045..1049856 100644 --- a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/RainfallController.java +++ b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/RainfallController.java @@ -25,7 +25,7 @@ import javax.validation.Valid; @RestController @AllArgsConstructor @RequestMapping("/rainfall") -@Api(value = "水利降雨量填报", tags = "接入泵站用电量填报") +@Api(value = "降雨量填报", tags = "水利降雨量量填报") public class RainfallController extends BladeController { private final RainfallService service; diff --git a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/StorageController.java b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/StorageController.java index 3dcb9f2..ddf5832 100644 --- a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/StorageController.java +++ b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/fill/controller/StorageController.java @@ -15,8 +15,6 @@ import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springframework.web.bind.annotation.*; -import javax.validation.Valid; - /** * @author ysj * @date 2023/03/09 16:12:22 @@ -24,8 +22,8 @@ import javax.validation.Valid; */ @RestController @AllArgsConstructor -@RequestMapping("/rainfall") -@Api(value = "水利降雨量填报", tags = "接入泵站用电量填报") +@RequestMapping("/storage") +@Api(value = "储能填报", tags = "储能发电量填报") public class StorageController extends BladeController { private final StorageService service;