LIVE_YE пре 1 година
родитељ
комит
52edafdc8f

+ 3 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/RegisterParentsMapper.java

@@ -1,5 +1,6 @@
 package org.dromara.system.mapper;
 
+import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
 import org.dromara.system.domain.RegisterParents;
 import org.dromara.system.domain.vo.RegisterParentsVo;
 import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
@@ -12,7 +13,9 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
  */
 public interface RegisterParentsMapper extends BaseMapperPlus<RegisterParents, RegisterParentsVo> {
 
+    @InterceptorIgnore(tenantLine = "1")
     RegisterParentsVo selectRegisterParentsByOppenId(String oppenId);
 
+    @InterceptorIgnore(tenantLine = "1")
     RegisterParentsVo selectRegisterParentsByPhonenumber(String phonenumber);
 }

+ 5 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/RegisterParentsStudentMapper.java

@@ -1,5 +1,8 @@
 package org.dromara.system.mapper;
 
+import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
 import org.apache.ibatis.annotations.Param;
 import org.dromara.system.domain.RegisterParentsStudent;
 import org.dromara.system.domain.vo.RegisterParentsStudentVo;
@@ -25,4 +28,6 @@ public interface RegisterParentsStudentMapper extends BaseMapperPlus<RegisterPar
 
     List<RegisterParentsStudentVo> selectRegisterParentsStudentListByTime(@Param("monthFirst") String monthFirst, @Param("classIds")List<Long> classIds);
 
+    @InterceptorIgnore(tenantLine = "1")
+    List<RegisterParentsStudentVo> selectVoMapperList( @Param(Constants.WRAPPER)LambdaQueryWrapper<RegisterParentsStudent> lqw);
 }

+ 9 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/RegisterSchoolFileMapper.java

@@ -1,9 +1,15 @@
 package org.dromara.system.mapper;
 
+import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
+import org.apache.ibatis.annotations.Param;
 import org.dromara.system.domain.RegisterSchoolFile;
 import org.dromara.system.domain.vo.RegisterSchoolFileVo;
 import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
 
+import java.util.List;
+
 /**
  * 注册-学校-附件Mapper接口
  *
@@ -12,6 +18,9 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
  */
 public interface RegisterSchoolFileMapper extends BaseMapperPlus<RegisterSchoolFile, RegisterSchoolFileVo> {
 
+    @InterceptorIgnore(tenantLine = "1")
     void deleteRegisterSchoolFileBySchoolId(Long schoolId);
 
+    @InterceptorIgnore(tenantLine = "1")
+    List<RegisterSchoolFileVo> selectVoMapperList(@Param(Constants.WRAPPER)LambdaQueryWrapper<RegisterSchoolFile> lqw);
 }

+ 5 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/RegisterSchoolMapper.java

@@ -1,5 +1,6 @@
 package org.dromara.system.mapper;
 
+import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
 import org.dromara.system.domain.RegisterSchool;
 import org.dromara.system.domain.vo.RegisterSchoolVo;
 import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
@@ -11,11 +12,15 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
  * @date 2023-08-16
  */
 public interface RegisterSchoolMapper extends BaseMapperPlus<RegisterSchool, RegisterSchoolVo> {
+    @InterceptorIgnore(tenantLine = "1")
     RegisterSchoolVo selectRegisterSchooByOppenId(String openId);
 
+    @InterceptorIgnore(tenantLine = "1")
     void deleteRegisterSchoolByOpenId(String openId);
 
+    @InterceptorIgnore(tenantLine = "1")
     RegisterSchoolVo selectRegisterSchooByPhonenumber(String phonenumber);
 
+    @InterceptorIgnore(tenantLine = "1")
     void deleteRegisterSchoolByPhonenumber(String phonenumber);
 }

+ 3 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java

@@ -84,4 +84,7 @@ public interface SysMenuMapper extends BaseMapperPlus<SysMenu, SysMenuVo> {
 
     @InterceptorIgnore(tenantLine = "true")
     Set<String> getMenuListByRoleId(Long roleId);
+
+    @InterceptorIgnore(tenantLine = "true")
+    Set<Long> getMenuIdListByRoleId(Long roleId);
 }

+ 1 - 1
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/RegisterParentsStudentServiceImpl.java

@@ -87,7 +87,7 @@ public class RegisterParentsStudentServiceImpl implements IRegisterParentsStuden
     @Override
     public List<RegisterParentsStudentVo> queryList(RegisterParentsStudentBo bo) {
         LambdaQueryWrapper<RegisterParentsStudent> lqw = buildQueryWrapper(bo);
-        return baseMapper.selectVoList(lqw);
+        return baseMapper.selectVoMapperList(lqw);
     }
 
     private LambdaQueryWrapper<RegisterParentsStudent> buildQueryWrapper(RegisterParentsStudentBo bo) {

+ 1 - 1
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/RegisterSchoolFileServiceImpl.java

@@ -55,7 +55,7 @@ public class RegisterSchoolFileServiceImpl implements IRegisterSchoolFileService
     @Override
     public List<RegisterSchoolFileVo> queryList(RegisterSchoolFileBo bo) {
         LambdaQueryWrapper<RegisterSchoolFile> lqw = buildQueryWrapper(bo);
-        return baseMapper.selectVoList(lqw);
+        return baseMapper.selectVoMapperList(lqw);
     }
 
     private LambdaQueryWrapper<RegisterSchoolFile> buildQueryWrapper(RegisterSchoolFileBo bo) {

+ 1 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/RegisterTeacherServiceImpl.java

@@ -159,6 +159,7 @@ public class RegisterTeacherServiceImpl implements IRegisterTeacherService {
                 String className = registerTeacherClass.getClassName();
                 int period = getPeriod(className);
                 registerTeacherClass.setPeriod(String.valueOf(period));
+                registerTeacherClass.setTenantId(bo.getTenantId());
 
                 RegisterTeacherClassBo teacherClassBo = new RegisterTeacherClassBo();
                 ClassUtils.copyProperties(registerTeacherClass, teacherClassBo);

+ 27 - 8
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/ZhxyShyjServiceImpl.java

@@ -3,9 +3,11 @@ package org.dromara.system.service.impl;
 import cn.dev33.satoken.secure.BCrypt;
 import cn.hutool.core.convert.Convert;
 import cn.hutool.core.util.RandomUtil;
+import lombok.SneakyThrows;
 import org.dromara.common.core.constant.TenantConstants;
 import org.dromara.common.core.domain.model.LoginUser;
 import org.dromara.common.core.exception.ServiceException;
+import org.dromara.common.core.utils.ClassUtils;
 import org.dromara.common.core.utils.DateUtils;
 import org.dromara.common.core.utils.MapstructUtils;
 import org.dromara.common.core.utils.StringUtils;
@@ -24,9 +26,7 @@ import org.dromara.system.service.*;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.List;
-import java.util.Map;
-import java.util.Collection;
+import java.util.*;
 
 /**
  * 智慧校园_审核意见Service业务层处理
@@ -71,6 +71,9 @@ public class ZhxyShyjServiceImpl implements IZhxyShyjService {
     private final SysDictDataMapper dictDataMapper;
     private final SysConfigMapper configMapper;
     private final SysRoleMapper sysRoleMapper;
+    private final ISysRoleService sysRoleService;
+    private final SysMenuMapper sysMenuMapper;
+    private final SysRoleMenuMapper roleMenuMapper;
 
     /**
      * 查询智慧校园_审核意见
@@ -163,7 +166,7 @@ public class ZhxyShyjServiceImpl implements IZhxyShyjService {
                 tenantBo.setId(sysTenant.getId());
 
                 copyDict(tenantId);
-                copyRole(tenantId);
+                List<SysRole> roleList = copyRole(tenantId);
                 //部门表生成学校
                 SysDept dept = new SysDept();
                 dept.setParentId(0L);
@@ -200,7 +203,13 @@ public class ZhxyShyjServiceImpl implements IZhxyShyjService {
                 }
                 //新增用户与角色管理
                 //查询当前租户下的学校角色
-                Long roleId = sysRoleMapper.selectRoleIdBytenantId(tenantId,"school");
+                Long roleId = 0L;
+                for (SysRole sysRole : roleList) {
+                    if("school".equals(sysRole.getRoleKey())){
+                        roleId = sysRole.getRoleId();
+                        break;
+                    }
+                }
                 Long[] roleIds = {roleId};
                 sysUserServiceImpl.insertUserRole(use.getUserId(), roleIds,false);
             }else{
@@ -259,7 +268,7 @@ public class ZhxyShyjServiceImpl implements IZhxyShyjService {
                 }
 
                 //新增用户与角色管理
-                Long roleId = sysRoleMapper.selectRoleIdBytenantId(sysDept.getTenantId(),"school");
+                Long roleId = sysRoleMapper.selectRoleIdBytenantId(sysDept.getTenantId(),"teacher");
                 Long[] roleIds = {roleId};
                 sysUserServiceImpl.insertUserRole(use.getUserId(), roleIds,false);
                 //老师-班级(学科)数据
@@ -395,14 +404,24 @@ public class ZhxyShyjServiceImpl implements IZhxyShyjService {
         return flag;
     }
 
-    private void copyRole(String tenantId) {
+    @SneakyThrows
+    private List<SysRole> copyRole(String tenantId) {
         String defaultTenantId = TenantConstants.DEFAULT_TENANT_ID;
         List<SysRole> roleList = sysRoleMapper.selectList(
             new LambdaQueryWrapper<SysRole>().eq(SysRole::getTenantId, defaultTenantId));
         for (SysRole sysRole : roleList) {
+            Set<Long> menuIdList = sysMenuMapper.getMenuIdListByRoleId(sysRole.getRoleId());
+            sysRole.setRoleId(null);
             sysRole.setTenantId(tenantId);
+            SysRoleBo role = new SysRoleBo();
+            ClassUtils.copyProperties(sysRole, role);
+            Long[] menuIds = menuIdList.toArray(new Long[0]);
+            role.setMenuIds(menuIds);
+            sysRoleService.insertRole(role);
+            sysRole.setRoleId(role.getRoleId());
         }
-        sysRoleMapper.insertBatch(roleList);
+
+        return roleList;
     }
 
     /***

+ 4 - 0
ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RegisterParentsStudentMapper.xml

@@ -43,4 +43,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             #{item}
         </foreach>
     </select>
+    <select id="selectVoMapperList" resultMap="RegisterParentsStudentResult">
+        <include refid="selectRegisterParentsStudentVo"/>
+        ${ew.getCustomSqlSegment}
+    </select>
 </mapper>

+ 5 - 0
ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RegisterSchoolFileMapper.xml

@@ -22,4 +22,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         delete from register_school_file where school_id = #{schoolId}
     </delete>
 
+    <select id="selectVoMapperList" resultMap="RegisterSchoolFileResult">
+        <include refid="selectRegisterSchoolFileVo"/>
+        ${ew.getCustomSqlSegment}
+    </select>
+
 </mapper>

+ 7 - 0
ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml

@@ -89,5 +89,12 @@
         and m.perms is not null and m.perms != ''
         order by m.parent_id, m.order_num
     </select>
+    <select id="getMenuIdListByRoleId" resultType="java.lang.Long">
+        select m.menu_id
+        from sys_menu m
+                 left join sys_role_menu rm on m.menu_id = rm.menu_id
+        where rm.role_id = #{roleId}
+          and m.perms is not null and m.perms != ''
+    </select>
 
 </mapper>

+ 1 - 1
ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml

@@ -64,7 +64,7 @@
         WHERE r.del_flag = '0' and r.role_id = #{roleId}
     </select>
     <select id="selectRoleIdBytenantId" resultType="java.lang.Long">
-        select role_id where tenant_id = #{tenantId} and del_flag = 0 and role_key = #{roleKey}
+        select role_id from sys_role where tenant_id = #{tenantId} and del_flag = 0 and role_key = #{roleKey}
     </select>
 
 </mapper>