Selaa lähdekoodia

Merge branch 'system-zyj' into system-165

james 5 päivää sitten
vanhempi
commit
28a14cf93b

+ 2 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysTenantMapper.java

@@ -2,6 +2,7 @@ package com.usky.system.mapper;
 
 import com.usky.common.mybatis.core.CrudMapper;
 import com.usky.system.domain.SysTenant;
+import com.usky.system.domain.SysUserRole;
 import com.usky.system.service.vo.SysTenantTwoVo;
 import com.usky.system.service.vo.SysTenantVo;
 import org.apache.ibatis.annotations.Param;
@@ -46,6 +47,7 @@ public interface SysTenantMapper extends CrudMapper<SysTenant> {
     void cloneSysMobileBanner(@Param("originalTenantId") Integer originalTenantId,@Param("tenantId") Integer tenantId,@Param("createBy") String createBy);
     void cloneSysTenantPlatform(@Param("originalTenantId") Integer originalTenantId,@Param("tenantId") Integer tenantId);
     void cloneSysMobileTenantMenu(@Param("originalTenantId") Integer originalTenantId,@Param("tenantId") Integer tenantId);
+    List<SysUserRole> selectSysUserRoleList(@Param("originalTenantId") Integer originalTenantId, @Param("UserId") long UserId);
     void cloneSysRoleMenu(@Param("originalRoleId") long originalRoleId,@Param("roleId") long roleId);
     void insertSysUserRole(@Param("UserId") long UserId,@Param("roleId") long roleId,@Param("tenantId") long tenantId);
 

+ 5 - 7
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysTenantServiceImpl.java

@@ -7,10 +7,7 @@ import com.usky.common.core.bean.CommonPage;
 import com.usky.common.core.exception.BusinessException;
 import com.usky.common.mybatis.core.AbstractCrudService;
 import com.usky.common.security.utils.SecurityUtils;
-import com.usky.system.domain.SysDept;
-import com.usky.system.domain.SysRole;
-import com.usky.system.domain.SysTenant;
-import com.usky.system.domain.SysUserTenant;
+import com.usky.system.domain.*;
 import com.usky.system.mapper.SysTenantMapper;
 import com.usky.system.mapper.SysUserTenantMapper;
 import com.usky.system.service.ISysDeptService;
@@ -176,10 +173,11 @@ public class SysTenantServiceImpl extends AbstractCrudService<SysTenantMapper, S
         sysTenantMapper.cloneSysMobileTenantMenu(originalTenantId,tenantId);
         //克隆用户角色和租户用户角色
         //sys_role
-        if(SecurityUtils.getLoginUser().getSysUser().getRoles().size()>0){
-            for (int i = 0; i < SecurityUtils.getLoginUser().getSysUser().getRoles().size(); i++) {
+        List<SysUserRole> sysUserRoleList = sysTenantMapper.selectSysUserRoleList(originalTenantId,SecurityUtils.getUserId());
+        if(sysUserRoleList.size()>0){
+            for (int i = 0; i < sysUserRoleList.size(); i++) {
                 SysRole role = new SysRole();
-                long originalRoleId = SecurityUtils.getLoginUser().getSysUser().getRoles().get(i).getRoleId();
+                long originalRoleId = sysUserRoleList.get(i).getRoleId();
                 LambdaQueryWrapper<SysRole> queryWrapper = new LambdaQueryWrapper<>();
                 queryWrapper.select(SysRole::getRoleName,SysRole::getRoleKey,SysRole::getRoleSort,SysRole::getDataScope,SysRole::getStatus).eq(SysRole::getRoleId, originalRoleId);
                 SysRole one = roleService.getOne(queryWrapper);

+ 9 - 0
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysTenantMapper.xml

@@ -147,6 +147,15 @@
             tenant_id = #{originalTenantId}
         </where>
     </insert>
+    <select id="selectSysUserRoleList" resultType="com.usky.system.domain.SysUserRole">
+        SELECT
+        a.*
+        FROM
+        sys_user_role AS a
+        <where>
+            a.tenant_id = #{originalTenantId} and a.user_id = #{UserId}
+        </where>
+    </select>
     <insert id="cloneSysRoleMenu">
         insert into sys_role_menu (role_id,menu_id,menu_alias_name)
         select  #{roleId},menu_id,menu_alias_name