2021与蓝度共同重构项目,服务端
zhanzhiqin
2022-05-16 7803a8996971037c9cd3047678504c3ebc419589
操作记录
已修改3个文件
43 ■■■■ 文件已修改
ximon-admin/pom.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/AdminController.java 25 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/service/DeviceOperationLogService.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/pom.xml
@@ -79,6 +79,12 @@
            <groupId>net.minidev</groupId>
            <artifactId>json-smart</artifactId>
        </dependency>
        <!-- https://mvnrepository.com/artifact/eu.bitwalker/UserAgentUtils -->
        <dependency>
            <groupId>eu.bitwalker</groupId>
            <artifactId>UserAgentUtils</artifactId>
            <version>1.21</version>
        </dependency>
    </dependencies>
    <!-- Maven控制Spring Profile -->
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/AdminController.java
@@ -3,7 +3,6 @@
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.map.MapBuilder;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.sandu.common.domain.ResponseVO;
import com.sandu.common.enums.AdminStatusStatus;
@@ -23,11 +22,16 @@
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;
import com.sandu.ximon.dao.domain.*;
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 lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
@@ -74,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());
        }
@@ -121,6 +125,13 @@
            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);
        return ResponseUtil.success(authInfo);
    }
ximon-admin/src/main/java/com/sandu/ximon/admin/service/DeviceOperationLogService.java
@@ -28,11 +28,17 @@
        DeviceOperationLog deviceOperationLog = new DeviceOperationLog();
        deviceOperationLog.setUserId(SecurityUtils.getUserId());
        deviceOperationLog.setUserName(SecurityUtils.getUsername());
        deviceOperationLog.setDeviceCode(deviceCode);
        deviceOperationLog.setDeviceName(deviceName);
        if (deviceCode != null) {
            deviceOperationLog.setDeviceCode(deviceCode);
        }
        if (deviceName != null) {
            deviceOperationLog.setDeviceName(deviceName);
        }
        deviceOperationLog.setOperation(operation);
        deviceOperationLog.setContent(content);
        deviceOperationLog.setPoleCode(poleCode);
        if (poleCode != null) {
            deviceOperationLog.setPoleCode(poleCode);
        }
        this.save(deviceOperationLog);
    }
}