From da602743da69e28a23601b1890bc43917fcd019a Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期三, 18 五月 2022 10:13:40 +0800
Subject: [PATCH] fix

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/controller/ClientController.java |   36 +++++++++++++++++++++++++++++++++---
 1 files changed, 33 insertions(+), 3 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/ClientController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/ClientController.java
index 0b8b177..b4755d7 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/ClientController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/ClientController.java
@@ -1,7 +1,7 @@
 package com.sandu.ximon.admin.controller;
 
 import cn.hutool.core.bean.BeanUtil;
-import cn.hutool.core.util.StrUtil;
+import cn.hutool.extra.servlet.ServletUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.github.pagehelper.PageHelper;
@@ -17,17 +17,24 @@
 import com.sandu.common.util.IpUtil;
 import com.sandu.common.util.ResponseUtil;
 import com.sandu.ximon.admin.dto.ClientDto;
-import com.sandu.ximon.admin.param.*;
+import com.sandu.ximon.admin.param.AddClientPrarm;
+import com.sandu.ximon.admin.param.AdminLoginParam;
+import com.sandu.ximon.admin.param.UpdateClientPrarm;
+import com.sandu.ximon.admin.param.UserPwsParm;
 import com.sandu.ximon.admin.security.PermissionConfig;
 import com.sandu.ximon.admin.security.SecurityUtils;
 import com.sandu.ximon.admin.service.ClientRoleRelationService;
 import com.sandu.ximon.admin.service.ClientService;
 import com.sandu.ximon.admin.service.RoleService;
 import com.sandu.ximon.admin.utils.RedisUtils;
+import com.sandu.ximon.admin.utils.StoreOperationRecordsUtils;
 import com.sandu.ximon.dao.domain.Client;
 import com.sandu.ximon.dao.domain.ClientRoleRelation;
 import com.sandu.ximon.dao.enums.AdministratorEnums;
 import com.sandu.ximon.dao.enums.MenuEnum;
+import eu.bitwalker.useragentutils.Browser;
+import eu.bitwalker.useragentutils.OperatingSystem;
+import eu.bitwalker.useragentutils.UserAgent;
 import lombok.AllArgsConstructor;
 import org.springframework.security.core.GrantedAuthority;
 import org.springframework.security.crypto.password.PasswordEncoder;
@@ -57,6 +64,9 @@
 
     @PostMapping("/add")
     public ResponseVO<Object> addClient(@RequestBody @Validated AddClientPrarm addClientPrarm) {
+        if (!permissionConfig.check(MenuEnum.CLIENT_ADD.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
         boolean b = clientService.addClient(addClientPrarm);
         if (b) {
             return ResponseUtil.success("娣诲姞鎴愬姛");
@@ -68,6 +78,9 @@
 
     @PostMapping("/update/{id}")
     public ResponseVO<Object> updateClient(@PathVariable Long id, @RequestBody @Validated UpdateClientPrarm updateClientPrarm) {
+        if (!permissionConfig.check(MenuEnum.CLIENT_INFO_UPDATE.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
         boolean b = clientService.updateClient(id, updateClientPrarm);
         if (b) {
             return ResponseUtil.success("鏇存柊鎴愬姛");
@@ -110,6 +123,9 @@
 
     @PostMapping("/delete/{id}")
     public ResponseVO<Object> deleteClient(@PathVariable Long id) {
+        if (!permissionConfig.check(MenuEnum.CLIENT_DELETE.getCode())) {
+            return ResponseUtil.fail("缂哄皯瀵瑰簲鐢ㄦ埛鏉冮檺");
+        }
         boolean b = clientService.deleteClient(id);
         if (b) {
             return ResponseUtil.success("鍒犻櫎鎴愬姛");
@@ -162,7 +178,7 @@
             return ResponseUtil.error(ResponseStatusEnums.BAD_CREDENTIALS.getCode(), ResponseStatusEnums.BAD_CREDENTIALS.getMessage());
         }
         String s = RedisUtils.getBean().get(loginParam.getKey());
-        System.out.println(s+"===========================");
+        System.out.println(s + "===========================");
         if (!loginParam.getVlue().equals(s)) {
             return ResponseUtil.error(ResponseStatusEnums.BAD_AUTHENTICATION.getCode(), ResponseStatusEnums.BAD_AUTHENTICATION.getMessage());
         }
@@ -194,6 +210,20 @@
             put("token", properties.getTokenStartWith() + token);
             put("user", client);
         }};
+
+        /**
+         * 鐧诲綍淇℃伅鏃ュ織璁板綍寮�濮�
+         */
+        UserAgent userAgent = UserAgent.parseUserAgentString(request.getHeader("User-Agent"));
+        Browser browser = userAgent.getBrowser();
+        OperatingSystem os = userAgent.getOperatingSystem();
+        String content = "鐢ㄦ埛ID锛�" + client.getId()
+                + "锛岀敤鎴峰悕锛�" + client.getClientName()
+                + "锛岀敤鎴风被鍨嬶細绠$悊鍛�"
+                + "锛岀櫥褰旾P鍦板潃锛�" + ServletUtil.getClientIP(request)
+                + "锛屾搷浣滅郴缁燂細" + os
+                + "锛屾祻瑙堝櫒锛�" + browser;
+        StoreOperationRecordsUtils.storeOperationLoginData(client.getId(), client.getClientName(), "鐢ㄦ埛鐧诲綍", content);
         return ResponseUtil.success(authInfo);
     }
 }

--
Gitblit v1.9.3