2021与蓝度共同重构项目,服务端
liuhaonan
2022-10-21 f214709cf1d896e7c9743f206b7a708f020e5322
changes
已修改4个文件
已添加1个文件
77 ■■■■ 文件已修改
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/AdminController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/ClientController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/UserLoginController.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/service/AdminService.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/service/ClientService.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/AdminController.java
@@ -14,7 +14,6 @@
import com.sandu.common.object.BaseConditionVO;
import com.sandu.common.redis.RedisService;
import com.sandu.common.security.LoginUserInfo;
import com.sandu.common.security.annotation.AnonymousAccess;
import com.sandu.common.security.config.SecurityProperties;
import com.sandu.common.security.token.TokenProvider;
import com.sandu.common.util.IpUtil;
@@ -70,10 +69,7 @@
    private PermissionConfig permissionConfig;
    private final RedisService redisService;
    @Log("后台用户登录")
    @AnonymousAccess
    @PostMapping(value = "/login")
    public ResponseVO<Object> login(HttpServletRequest request, @RequestBody AdminLoginParam loginParam) {
    public ResponseVO<Object> login(HttpServletRequest request, AdminLoginParam loginParam) {
        Admin admin = adminService.getOne(Wrappers.lambdaQuery(Admin.class).eq(Admin::getUsername, loginParam.getUsername()).last("limit 1"));
        if (admin == null) {
            return ResponseUtil.error(ResponseStatusEnums.BAD_CREDENTIALS.getCode(), ResponseStatusEnums.BAD_CREDENTIALS.getMessage());
@@ -123,7 +119,8 @@
        // è¿”回 token ä¸Ž ç”¨æˆ·ä¿¡æ¯
        Map<String, Object> authInfo = new HashMap<String, Object>(2) {{
            put("token", properties.getTokenStartWith() + token);
            put("user", admin);
            put("admin", admin);
            put("client", null);
        }};
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/ClientController.java
@@ -144,9 +144,7 @@
        return ResponseUtil.successPage(clientDtoNodes);
    }
    @AnonymousAccess
    @PostMapping(value = "/login")
    public ResponseVO<Object> longin(HttpServletRequest request, @RequestBody @Validated AdminLoginParam loginParam) {
    public ResponseVO<Object> login(HttpServletRequest request, AdminLoginParam loginParam) {
        Client client = clientService.getOne(Wrappers.lambdaQuery(Client.class).eq(Client::getClientName, loginParam.getUsername()).last("limit 1"));
        if (client == null) {
            return ResponseUtil.error(ResponseStatusEnums.BAD_CREDENTIALS.getCode(), ResponseStatusEnums.BAD_CREDENTIALS.getMessage());
@@ -182,7 +180,8 @@
        // è¿”回 token ä¸Ž ç”¨æˆ·ä¿¡æ¯
        Map<String, Object> authInfo = new HashMap<String, Object>(2) {{
            put("token", properties.getTokenStartWith() + token);
            put("user", client);
            put("admin", null);
            put("client", client);
        }};
        /**
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/UserLoginController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,49 @@
package com.sandu.ximon.admin.controller;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.sandu.common.domain.ResponseVO;
import com.sandu.common.security.annotation.AnonymousAccess;
import com.sandu.common.util.ResponseUtil;
import com.sandu.ximon.admin.param.AdminLoginParam;
import com.sandu.ximon.admin.service.AdminService;
import com.sandu.ximon.admin.service.ClientService;
import com.sandu.ximon.dao.domain.Admin;
import com.sandu.ximon.dao.domain.Client;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
/**
 * @author LiuHaoNan
 * @date 2022/10/21
 */
@Slf4j
@RestController
@AllArgsConstructor
@RequestMapping("/v1/userLogin")
public class UserLoginController {
    private final AdminController adminController;
    private final AdminService adminService;
    private final ClientController clientController;
    private final ClientService clientService;
    @AnonymousAccess
    @PostMapping(value = "/login")
    public ResponseVO<Object> login(HttpServletRequest request, @RequestBody AdminLoginParam loginParam) {
        Admin admin = adminService.getOne(Wrappers.lambdaQuery(Admin.class).eq(Admin::getUsername, loginParam.getUsername()));
        Client client = clientService.getOne(Wrappers.lambdaQuery(Client.class).eq(Client::getClientName, loginParam.getUsername()));
        if (admin != null) {
            return ResponseUtil.success(adminController.login(request, loginParam));
        } else if (client != null) {
            return ResponseUtil.success(clientController.login(request, loginParam));
        } else {
            return ResponseUtil.fail("用户信息不存在");
        }
    }
}
ximon-admin/src/main/java/com/sandu/ximon/admin/service/AdminService.java
@@ -53,7 +53,11 @@
    public boolean register(AdminParam param) {
        Admin admin = findByUserName(param.getUsername());
        if (admin != null) {
            throw new BusinessException("当前账号" + param.getUsername() + "已经存在");
            throw new BusinessException("当前账号" + param.getUsername() + "已经在管理员中存在");
        }
        Client one = SpringContextHolder.getBean(ClientService.class).getOne(Wrappers.lambdaQuery(Client.class).eq(Client::getClientName, param.getUsername()));
        if (one != null) {
            throw new BusinessException("当前账号" + param.getUsername() + "已经在客户中存在");
        }
        Admin save = new Admin();
        save.setId(snowflake.nextId());
ximon-admin/src/main/java/com/sandu/ximon/admin/service/ClientService.java
@@ -49,7 +49,11 @@
    public boolean addClient(AddClientPrarm addClientPrarm) {
        if (getOne(Wrappers.lambdaQuery(Client.class).eq(Client::getClientName, addClientPrarm.getClientName().trim())) != null) {
            throw new BusinessException("该用户名已存在!");
            throw new BusinessException("该用户名已在客户中存在!");
        }
        Admin admin = SpringContextHolder.getBean(AdminService.class).findByUserName(addClientPrarm.getClientName());
        if (admin != null) {
            throw new BusinessException("当前账号" + addClientPrarm.getClientName() + "已经在管理员中存在");
        }
        Long userId = SecurityUtils.getUserId();
        boolean clientId = findClientId();