From 1b4274e27a60892492195e7e3a4b820dcd2b6be5 Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期三, 28 九月 2022 14:16:15 +0800
Subject: [PATCH] changes
---
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/AdminController.java | 59 +++++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 41 insertions(+), 18 deletions(-)
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/AdminController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/AdminController.java
index a70a71a..52796d4 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/AdminController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/AdminController.java
@@ -3,6 +3,7 @@
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.map.MapBuilder;
import cn.hutool.core.map.MapUtil;
+import cn.hutool.extra.servlet.ServletUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.sandu.common.domain.ResponseVO;
import com.sandu.common.enums.AdminStatusStatus;
@@ -22,7 +23,6 @@
import com.sandu.ximon.admin.security.PermissionConfig;
import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.admin.service.*;
-import com.sandu.ximon.admin.utils.IPUtils;
import com.sandu.ximon.admin.utils.RedisUtils;
import com.sandu.ximon.admin.utils.StoreOperationRecordsUtils;
import com.sandu.ximon.dao.bo.MenuNode;
@@ -78,12 +78,12 @@
if (admin == null) {
return ResponseUtil.error(ResponseStatusEnums.BAD_CREDENTIALS.getCode(), ResponseStatusEnums.BAD_CREDENTIALS.getMessage());
}
-// String s = RedisUtils.getBean().get(loginParam.getKey());
-// if (!loginParam.getVlue().equals(s)) {
-// log.error(loginParam.getVlue() + "楠岃瘉鐮�");
-// return ResponseUtil.error(ResponseStatusEnums.BAD_AUTHENTICATION.getCode(), ResponseStatusEnums.BAD_AUTHENTICATION.getMessage());
-// }
-// RedisUtils.getBean().delete(loginParam.getKey());
+ String s = RedisUtils.getBean().get(loginParam.getKey());
+ if (!loginParam.getVlue().equals(s)) {
+ log.error(loginParam.getVlue() + "楠岃瘉鐮�");
+ return ResponseUtil.error(ResponseStatusEnums.BAD_AUTHENTICATION.getCode(), ResponseStatusEnums.BAD_AUTHENTICATION.getMessage());
+ }
+ RedisUtils.getBean().delete(loginParam.getKey());
if (!passwordEncoder.matches(loginParam.getPassword(), admin.getPassword())) {
return ResponseUtil.error(ResponseStatusEnums.BAD_CREDENTIALS.getCode(), ResponseStatusEnums.BAD_CREDENTIALS.getMessage());
}
@@ -125,13 +125,24 @@
put("token", properties.getTokenStartWith() + token);
put("user", admin);
}};
- //淇濆瓨鐧诲綍淇℃伅鍒版棩蹇�
+
+
+ /**
+ * 鐧诲綍淇℃伅鏃ュ織璁板綍寮�濮�
+ */
UserAgent userAgent = UserAgent.parseUserAgentString(request.getHeader("User-Agent"));
Browser browser = userAgent.getBrowser();
OperatingSystem os = userAgent.getOperatingSystem();
- String content = "鐧诲綍IP鍦板潃锛�" + IPUtils.getPublicIp() + "锛屾搷浣滅郴缁燂細" + os + "锛屾祻瑙堝櫒锛�" + browser;
-
- StoreOperationRecordsUtils.storeOperationData(null, null, "鐢ㄦ埛鐧诲綍", content, null);
+ String content = "鐢ㄦ埛ID锛�" + admin.getId()
+ + "锛岀敤鎴峰悕锛�" + admin.getUsername()
+ + "锛岀敤鎴风被鍨嬶細绠$悊鍛�"
+ + "锛岀櫥褰旾P鍦板潃锛�" + ServletUtil.getClientIP(request)
+ + "锛屾搷浣滅郴缁燂細" + os
+ + "锛屾祻瑙堝櫒锛�" + browser;
+ StoreOperationRecordsUtils.storeOperationLoginData(admin.getId(), admin.getUsername(), "绠$悊鍛樼櫥褰�", content);
+ /**
+ * 鐧诲綍淇℃伅鏃ュ織璁板綍缁撴潫
+ */
return ResponseUtil.success(authInfo);
}
@@ -180,7 +191,7 @@
@GetMapping(value = "/logout")
public ResponseVO<Object> LogOut() {
String content = "鐢ㄦ埛鍚嶏細" + SecurityUtils.getUsername();
- StoreOperationRecordsUtils.storeOperationData(null, null, "鐢ㄦ埛閫�鍑虹櫥褰�", content, null);
+ StoreOperationRecordsUtils.storeOperationData(null, null, "鐢ㄧ鐞嗗憳閫�鍑虹櫥褰�", content);
String key = String.format("%d_%d", SecurityUtils.getUserDetails().getUserId(), SecurityUtils.getUserDetails().getAdministratorType());
redisService.set(key, null);
return ResponseUtil.success("閫�鍑虹櫥褰曟垚鍔�");
@@ -198,11 +209,14 @@
@Log("鍚庡彴鐢ㄦ埛鍒楄〃")
@GetMapping(value = "/list")
- public ResponseVO<Object> listAdmin(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword) {
+ public ResponseVO<Object> listAdmin(BaseConditionVO baseConditionVO,
+ @RequestParam(value = "keyword", required = false) String keyword,
+ @RequestParam(value = "order", required = false) Integer order,
+ @RequestParam(value = "seq", required = false) Integer seq) {
if (!permissionConfig.check(MenuEnum.ADMIN_LIST.getCode())) {
return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
}
- return ResponseUtil.successPage(adminService.listAdmin(baseConditionVO, keyword));
+ return ResponseUtil.successPage(adminService.listAdmin(baseConditionVO, keyword, order, seq));
}
@Log("鍚庡彴鐢ㄦ埛娉ㄥ唽")
@@ -276,17 +290,16 @@
}
}
- @Log("鍚庡彴鐢ㄦ埛鍒犻櫎")
- @PostMapping("/del/{adminId}")
+ @GetMapping("/del/{adminId}")
public ResponseVO<Object> deleteAdmin(@PathVariable Long adminId) {
if (!permissionConfig.check(MenuEnum.ADMIN_DELETE.getCode())) {
return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
}
boolean result = adminService.deleteAdmin(adminId);
if (result) {
- return ResponseUtil.success("淇敼鎴愬姛");
+ return ResponseUtil.success("鍒犻櫎绠$悊鍛樻垚鍔燂紒");
} else {
- return ResponseUtil.fail("淇敼澶辫触");
+ return ResponseUtil.fail("鍒犻櫎绠$悊鍛樺け璐ワ紒");
}
}
@@ -329,4 +342,14 @@
return ResponseUtil.success(userPermissionList);
}
+
+
+ @GetMapping("/creatUserKey")
+ public ResponseVO<Object> creatUserKey(@RequestParam(required = false, value = "userId") Long userId,
+ @RequestParam(required = false, value = "requstType") Integer requstType) {
+ if (!AdministratorEnums.ADMIN.getCode().equals(SecurityUtils.getAdministratorIdentity())) {
+ throw new BusinessException("闈炶秴绾х鐞嗗憳鏃犳硶鎿嶄綔锛�");
+ }
+ return ResponseUtil.success(adminService.creatUserKey(userId, requstType));
+ }
}
--
Gitblit v1.9.3