From a8681f6598e064579ce6b3ab16a152258839e211 Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期三, 09 三月 2022 15:44:37 +0800
Subject: [PATCH] 普通用户登录fix

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/ClientService.java |   24 +++++++++++++++++++++++-
 1 files changed, 23 insertions(+), 1 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/ClientService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/ClientService.java
index 9da3101..8b02c43 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/ClientService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/ClientService.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.sandu.common.enums.RoleLevelStatus;
 import com.sandu.common.execption.BusinessException;
 import com.sandu.common.object.BaseConditionVO;
 import com.sandu.common.service.impl.BaseServiceImpl;
@@ -9,6 +10,8 @@
 import com.sandu.ximon.admin.param.ClientPrarm;
 import com.sandu.ximon.admin.security.SecurityUtils;
 import com.sandu.ximon.dao.domain.Client;
+import com.sandu.ximon.dao.domain.ClientRoleRelation;
+import com.sandu.ximon.dao.domain.Role;
 import com.sandu.ximon.dao.mapper.ClientMapper;
 import lombok.AllArgsConstructor;
 import org.springframework.security.crypto.password.PasswordEncoder;
@@ -22,6 +25,8 @@
 
     private final ClientMapper clientMapper;
     private final PasswordEncoder passwordEncoder;
+    private final ClientRoleRelationService clientRoleRelationService;
+    private final RoleService roleService;
 
 
     public boolean addClient(AddClientPrarm addClientPrarm) {
@@ -39,14 +44,31 @@
                 throw new BusinessException("涓婄骇瀹㈡埛涓嶅瓨鍦�");
             }
         }
+
+        Role role = roleService.getById(addClientPrarm.getRoleId());
+        if (role == null) {
+            throw new BusinessException("瑙掕壊涓嶅瓨鍦�");
+        }
+        if (!RoleLevelStatus.NORMAL.getCode().equals(role.getLevel())) {
+            throw new BusinessException("鏃犳硶娣诲姞瓒呯骇绠$悊鍛樻垨鐢ㄦ埛绠$悊鍛�");
+        }
+
+
         client.setClientName(addClientPrarm.getClientName());
         client.setLinkMan(addClientPrarm.getLinkMan());
         client.setMobile(addClientPrarm.getMobile());
         client.setClientSuperior(addClientPrarm.getClientSuperior());
         client.setPassword(passwordEncoder.encode(addClientPrarm.getPassword()));
+        boolean flag = save(client);
 
+        ClientRoleRelation clientRoleRelation = new ClientRoleRelation();
+        clientRoleRelation.setClientId(client.getId());
+        clientRoleRelation.setRoleId(addClientPrarm.getRoleId());
+        if (!clientRoleRelationService.save(clientRoleRelation)) {
+            throw new BusinessException("娣诲姞绠$悊鍛樿鑹插け璐�");
+        }
 
-        return save(client);
+        return flag;
     }
 
 

--
Gitblit v1.9.3