xiangpei
2024-05-15 b348f0e7ea982207f1397139adfc6f575fbe81de
Merge remote-tracking branch 'origin/master'
3个文件已修改
37 ■■■■ 已修改文件
src/main/java/com/mindskip/xzs/repository/UserMapper.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mindskip/xzs/service/impl/DepartmentServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/UserMapper.xml 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mindskip/xzs/repository/UserMapper.java
@@ -2,14 +2,14 @@
import com.mindskip.xzs.domain.ExamPaper;
import com.mindskip.xzs.domain.ExamPaperAnswer;
import com.mindskip.xzs.domain.other.KeyValue;
import com.mindskip.xzs.domain.User;
import com.mindskip.xzs.domain.other.KeyValue;
import com.mindskip.xzs.domain.vo.UpdateDeptAdminVO;
import com.mindskip.xzs.domain.vo.UserVO;
import com.mindskip.xzs.viewmodel.admin.paper.ExamPaperGradeQuery;
import com.mindskip.xzs.viewmodel.admin.user.UserPageRequestVM;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.security.core.parameters.P;
import java.util.List;
import java.util.Map;
@@ -161,4 +161,8 @@
    void clearDeptAdmin(List<Integer> userIds, @Param("deptId") Integer deptId);
    User getUserByExam(ExamPaper examPaper);
    void updateUserDeptAdmin(UpdateDeptAdminVO form);
    void cancelUserDeptAdmin(UpdateDeptAdminVO form);
}
src/main/java/com/mindskip/xzs/service/impl/DepartmentServiceImpl.java
@@ -1,10 +1,8 @@
package com.mindskip.xzs.service.impl;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.mindskip.xzs.domain.Department;
import com.mindskip.xzs.domain.UserDepartment;
import com.mindskip.xzs.domain.enums.DeptAdminEnum;
import com.mindskip.xzs.domain.vo.BaseSelect;
import com.mindskip.xzs.domain.vo.UpdateDeptAdminVO;
@@ -130,5 +128,9 @@
            // 标识部门管理员
            userMapper.updateDeptAdmin(form.getAdminIds(), DeptAdminEnum.YES.getValue(), entity.getId());
        }
        // 修改被选择的用户为部门管理员
        userMapper.updateUserDeptAdmin(form);
        // 修改没被选择的用户并且不是别的部门管理员的用户角色为1
        userMapper.cancelUserDeptAdmin(form);
    }
}
src/main/resources/mapper/UserMapper.xml
@@ -508,4 +508,27 @@
        ]]>
    </select>
    <update id="updateUserDeptAdmin">
        update t_user set role = -1 where id in
        <foreach collection="adminIds" item="id" open="(" separator="," close=")">
            #{id}
        </foreach>
    </update>
    <update id="cancelUserDeptAdmin">
        update t_user set role = 1 where id in(
            select user_id from t_user_department where department_id = #{id} and user_id not in
            <foreach collection="adminIds" item="id" open="(" separator="," close=")">
                #{id}
            </foreach>
             and user_id not in
            (select user_id from t_user_department where dept_admin = 1 and user_id in
            (select user_id from t_user_department where department_id = #{id} and user_id not in
           <foreach collection="adminIds" item="id" open="(" separator="," close=")">
                #{id}
            </foreach>
        )))
    </update>
</mapper>