From e7db396aaa05211069d93e9db13ddba8a76e4412 Mon Sep 17 00:00:00 2001
From: sinake <sinake1@qq.com>
Date: 星期五, 29 五月 2026 17:25:55 +0800
Subject: [PATCH] 用户密码,加解密
---
ruoyi-project/src/main/java/com/ruoyi/project/service/IGiLinkService.java | 10 +++
ruoyi-project/src/main/java/com/ruoyi/project/mapper/GiLinkMapper.java | 7 ++
ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/GiLinkController.java | 45 +++++++++++++++
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java | 8 ++
ruoyi-project/src/main/java/com/ruoyi/project/domain/GiLink.java | 36 ++++++++++++
ruoyi-common/src/main/java/com/ruoyi/common/utils/sign/AesUtil.java | 43 ++++++++++++++
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/GiLinkService.java | 20 ++++++
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceExternalpersonServiceImpl.java | 3
8 files changed, 171 insertions(+), 1 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/GiLinkController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/GiLinkController.java
new file mode 100644
index 0000000..00bae2d
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/GiLinkController.java
@@ -0,0 +1,45 @@
+package com.ruoyi.web.controller.common;
+
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.annotation.RepeatSubmit;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.exception.base.BaseException;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.project.domain.BaseAnnextype;
+import com.ruoyi.project.service.IBaseAnnextypeService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.ObjectUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Random;
+
+@Slf4j
+@Api(description = "澶栭摼")
+@RestController
+@RequestMapping("/GiLink")
+public class GiLinkController {
+ @Autowired
+ private IBaseAnnextypeService baseAnnextypeService;
+
+ @ApiOperation("鏂板")
+ @PostMapping("/add")
+ public AjaxResult add(@RequestBody BaseAnnextype baseAnnextype) {
+ Random rand = new Random(4);
+ String hexString = String.format("%x", rand.nextInt());
+ boolean save = baseAnnextypeService.save(baseAnnextype);
+ return AjaxResult.success(baseAnnextype);
+ }
+
+
+ @ApiOperation("浠g爜鑾峰彇淇℃伅")
+ @GetMapping(value = "/getCode")
+ public AjaxResult getCode(Long id) {
+
+ return AjaxResult.success(baseAnnextypeService.getById(id));
+ }
+
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
index a9c38e9..84bd82d 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
@@ -13,6 +13,7 @@
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.sign.AesUtil;
import com.ruoyi.framework.web.service.SysLoginService;
import com.ruoyi.framework.web.service.SysPermissionService;
import com.ruoyi.project.domain.BaseOrganization;
@@ -80,6 +81,7 @@
* @param thirdLoginBody
* @return
*/
+ @ApiOperation("鑾峰彇token")
@PostMapping("/getToken")
public AjaxResult openidLogin(@RequestBody ThirdLoginBody thirdLoginBody) {
// AjaxResult ajax = AjaxResult.success();
@@ -100,9 +102,15 @@
@PostMapping("/login")
public AjaxResult login(@RequestBody LoginBody loginBody) {
log.info("loginBody鐨勫叆鍙傛槸:{}", loginBody);
+ log.info("鍔犲瘑鍚庡瘑鐮�:{}",AesUtil.encrypt(loginBody.getPassword()));
AjaxResult ajax = AjaxResult.success();
// dingTalkService.deptidList(1L, 1);
Map<String, Object> userIdMap = null;
+ if(org.apache.commons.lang3.ObjectUtils.isNotEmpty(loginBody.getPassword())){
+ loginBody.setPassword(AesUtil.decrypt(loginBody.getPassword()));
+ }
+ loginBody.setUsername(AesUtil.decrypt(loginBody.getUsername()));
+
if (StringUtils.isNotEmpty(loginBody.getAuthCode())) {
userIdMap = dingTalkService.noLogin(loginBody.getAuthCode());
}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/sign/AesUtil.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/sign/AesUtil.java
new file mode 100644
index 0000000..1a0dd78
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/sign/AesUtil.java
@@ -0,0 +1,43 @@
+package com.ruoyi.common.utils.sign;
+
+import javax.crypto.Cipher;
+import javax.crypto.NoSuchPaddingException;
+import javax.crypto.spec.IvParameterSpec;
+import javax.crypto.spec.SecretKeySpec;
+import java.security.NoSuchAlgorithmException;
+import java.util.Base64;
+
+public class AesUtil {
+
+ private static final String KEY = "QfOpO2026@SecretKey#Aes256!00001";
+ private static final String IV = "1234567890123456";
+
+ public static String decrypt(String cipherText) {
+ String data = "";
+ Cipher cipher = null;
+ try {
+ cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
+ SecretKeySpec keySpec = new SecretKeySpec(KEY.getBytes(), "AES");
+ IvParameterSpec ivSpec = new IvParameterSpec(IV.getBytes());
+ cipher.init(Cipher.DECRYPT_MODE, keySpec, ivSpec);
+ byte[] original = cipher.doFinal(Base64.getDecoder().decode(cipherText));
+ data = new String(original);
+ } catch (Exception e) {
+ String m=e.getMessage();
+ }
+ return data;
+ }
+
+ public static String encrypt(String data) {
+ String text = "";
+ try {
+ Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
+ cipher.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(KEY.getBytes(), "AES"), new IvParameterSpec(IV.getBytes()));
+ byte[] encryptedBytes = cipher.doFinal(data.getBytes());
+ text = Base64.getEncoder().encodeToString(encryptedBytes);
+ } catch (Exception e) {
+ String m = e.getMessage();
+ }
+ return text;
+ }
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/GiLink.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/GiLink.java
new file mode 100644
index 0000000..c815595
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/GiLink.java
@@ -0,0 +1,36 @@
+package com.ruoyi.project.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.ruoyi.common.annotation.Excel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel("澶栭摼")
+public class GiLink {
+ @TableId(type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("浠g爜")
+ private String code;
+
+ @ApiModelProperty("鐢ㄦ埛鍚嶇О")
+ private String userName;
+
+ @ApiModelProperty("鐢ㄦ埛鎵嬫満")
+ private String userPhone;
+
+ @ApiModelProperty("鎵╁睍鍐呭")
+ private String extContent;
+
+ @ApiModelProperty("鍒涘缓浜�")
+ private String creator;
+
+ @ApiModelProperty("鏄惁鍒犻櫎0鍚�1鏄�")
+ private Integer isDel;
+
+ @ApiModelProperty("鍒涘缓鏃堕棿")
+ private String createTime;
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/GiLinkMapper.java b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/GiLinkMapper.java
new file mode 100644
index 0000000..c9b6a90
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/GiLinkMapper.java
@@ -0,0 +1,7 @@
+package com.ruoyi.project.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.project.domain.GiLink;
+
+public interface GiLinkMapper extends BaseMapper<GiLink> {
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/IGiLinkService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/IGiLinkService.java
new file mode 100644
index 0000000..c26902e
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/IGiLinkService.java
@@ -0,0 +1,10 @@
+package com.ruoyi.project.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.project.domain.GiLink;
+
+public interface IGiLinkService extends IService<GiLink>{
+
+ Long Add(GiLink model);
+
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/GiLinkService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/GiLinkService.java
new file mode 100644
index 0000000..36ecc49
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/GiLinkService.java
@@ -0,0 +1,20 @@
+package com.ruoyi.project.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.project.domain.GiLink;
+import com.ruoyi.project.mapper.ApiMapper;
+import com.ruoyi.project.mapper.GiLinkMapper;
+import com.ruoyi.project.service.IGiLinkService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class GiLinkService extends ServiceImpl<GiLinkMapper, GiLink> implements IGiLinkService {
+ @Autowired
+ ApiMapper mapper;
+
+ public Long Add(GiLink model){
+
+ return 1L;
+ }
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceExternalpersonServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceExternalpersonServiceImpl.java
index 112ea26..5a2c2f1 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceExternalpersonServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceExternalpersonServiceImpl.java
@@ -1,5 +1,6 @@
package com.ruoyi.project.service.impl;
+import java.util.Collection;
import java.util.List;
import com.ruoyi.common.utils.DateUtils;
@@ -49,7 +50,7 @@
wrappers.like(ServiceExternalperson::getUsername, serviceExternalperson.getUsername());
}
if (StringUtils.isNotBlank(serviceExternalperson.getUsertype())) {
- wrappers.eq(ServiceExternalperson::getUsertype, serviceExternalperson.getUsertype());
+ wrappers.in(ServiceExternalperson::getUsertype, serviceExternalperson.getUsertype().split(",")) ;
}
return this.list(wrappers);
}
--
Gitblit v1.9.3