liusheng
4 天以前 c80135e5c3f7bfab96ba558a910a06f1e587c53c
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -15,7 +15,9 @@
import com.ruoyi.system.service.ISysConfigService;
import com.ruoyi.system.service.ISysUserService;
import com.smartor.domain.SvyTaskVO;
import com.smartor.domain.SysUserOrg;
import com.smartor.mapper.SysUserDeptMapper;
import com.smartor.mapper.SysUserOrgMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -40,6 +42,9 @@
    @Autowired
    private SysUserMapper userMapper;
    @Autowired
    private SysUserOrgMapper sysUserOrgMapper;
    @Autowired
    private SysDeptMapper sysDeptMapper;
@@ -78,6 +83,12 @@
    @DataScope(deptAlias = "d", userAlias = "u")
    public List<SysUser> selectUserList(SysUser user) {
        return userMapper.selectUserList(user);
    }
    @Override
    public List<SysUser> getUserList(SysUser user) {
        return userMapper.getUserList(user);
    }
    /**
@@ -167,7 +178,19 @@
    @Override
    public SysUser selectUserByUserName2(String userName) {
        String[] split = userName.split("&");
        SysUser sysUser = userMapper.selectUserByUserNameByCondition(split[0], split[1], null);
        SysUser sysUser = userMapper.selectUserByUserNameByCondition(split[0], null);
        //获取当前登陆人的机构和院区
        SysUserOrg sysUserOrg = new SysUserOrg();
        sysUserOrg.setUserId(sysUser.getUserId());
        sysUserOrg.setOrgid(split[1].equals("null") ? "" : split[1]);
        sysUserOrg.setCampusid(split[2].equals("null") ? "" : split[2]);
        List<SysUserOrg> sysUserOrgs = sysUserOrgMapper.selectSysUserOrgList(sysUserOrg);
        if (!CollectionUtils.isEmpty(sysUserOrgs)) {
            sysUser.setOrgid(sysUserOrgs.get(0).getOrgid());
            sysUser.setCampusid(sysUserOrgs.get(0).getCampusid());
        }
        if (Objects.isNull(sysUser)) return sysUser;
        List<SysDept> sysDepts = null;
        if (StringUtils.isNotEmpty(split[0]) && split[0].equals("admin")) {
@@ -272,7 +295,23 @@
    @Override
    public SysUser selectUserByUserNameAndDeptId(String userName) {
        String[] split = userName.split("&");
        SysUser sysUser = userMapper.selectUserByUserNameByCondition(split[0], split[1], split[2]);
        if (split[2].contains("null")) {
            split[2] = null;
        }
        SysUser sysUser = userMapper.selectUserByUserNameByCondition(split[0], split[2]);
        //获取当前登陆人的机构和院区
        SysUserOrg sysUserOrg = new SysUserOrg();
        sysUserOrg.setUserId(sysUser.getUserId());
        sysUserOrg.setOrgid(split[1].equals("null") ? "" : split[1]);
        sysUserOrg.setCampusid(split[3].equals("null") ? "" : split[3]);
        List<SysUserOrg> sysUserOrgs = sysUserOrgMapper.selectSysUserOrgList(sysUserOrg);
        if (!CollectionUtils.isEmpty(sysUserOrgs)) {
            sysUser.setOrgid(sysUserOrgs.get(0).getOrgid());
            sysUser.setCampusid(sysUserOrgs.get(0).getCampusid());
        }
        log.info("selectUserByUserNameAndDeptId的sysUser的值为:{}", sysUser);
        if (Objects.isNull(sysUser)) return sysUser;
        List<SysDept> sysDepts = null;
        if (StringUtils.isNotEmpty(split[0]) && split[0].equals("admin")) {
@@ -512,15 +551,66 @@
        // 新增用户信息
        int rows = userMapper.insertUser(user);
        //新增用户与部门关联
        if (!CollectionUtils.isEmpty(user.getDepts())) {
            for (Long deptId : user.getDepts()) {
                SysUserDept sysUserDep = new SysUserDept();
                sysUserDep.setUserId(user.getUserId());
                sysUserDep.setDeptId(deptId);
                sysUserDep.setCreateTime(new Date());
                sysUserDep.setUpdateTime(new Date());
                sysUserDep.setOrgid(user.getOrgid());
                sysUserDeptMapper.insertSysUserDept(sysUserDep);
//        if (!CollectionUtils.isEmpty(user.getDepts())) {
//            for (Long deptId : user.getDepts()) {
//                SysUserDept sysUserDep = new SysUserDept();
//                sysUserDep.setUserId(user.getUserId());
//                sysUserDep.setDeptId(deptId);
//                sysUserDep.setCreateTime(new Date());
//                sysUserDep.setUpdateTime(new Date());
//                sysUserDep.setOrgid(user.getOrgid());
//                sysUserDeptMapper.insertSysUserDept(sysUserDep);
//            }
//        }
        if (!CollectionUtils.isEmpty(user.getDeptCodes())) {
            for (String deptCode : user.getDeptCodes()) {
                SysDept sysDept = sysDeptMapper.selectDeptByCode(deptCode);
                if (ObjectUtils.isEmpty(sysDept)) {
                    continue;
                }
                SysUserDept sysUserDept = new SysUserDept();
                sysUserDept.setUserId(user.getUserId());
                sysUserDept.setOrgid(user.getOrgid());
                sysUserDept.setDeptCode(deptCode);
                sysUserDept.setDeptId(sysDept.getDeptId());
                List<SysUserDept> sysUserDepts = sysUserDeptMapper.selectSysUserDeptList(sysUserDept);
                sysUserDept.setDelFlag(0L);
                sysUserDept.setDeptType("1");
                sysUserDept.setDeptName(sysDept.getDeptName());
                sysUserDept.setUpdateTime(new Date());
                if (!CollectionUtils.isEmpty(sysUserDepts)) {
                    sysUserDept.setId(sysUserDepts.get(0).getId());
                    sysUserDeptMapper.updateSysUserDept(sysUserDept);
                    continue;
                }
                sysUserDept.setCreateTime(new Date());
                sysUserDeptMapper.insertSysUserDept(sysUserDept);
            }
        }
        if (!CollectionUtils.isEmpty(user.getWardCodes())) {
            for (String wardCode : user.getWardCodes()) {
                SysDept sysDept = sysDeptMapper.selectDeptByCode(wardCode);
                if (ObjectUtils.isEmpty(sysDept)) {
                    continue;
                }
                SysUserDept sysUserDept = new SysUserDept();
                sysUserDept.setUserId(user.getUserId());
                sysUserDept.setDeptCode(wardCode);
                sysUserDept.setDeptId(sysDept.getDeptId());
                sysUserDept.setOrgid(user.getOrgid());
                List<SysUserDept> sysUserDepts = sysUserDeptMapper.selectSysUserDeptList(sysUserDept);
                sysUserDept.setDelFlag(0L);
                sysUserDept.setDeptType("2");
                sysUserDept.setOrgid(user.getOrgid());
                sysUserDept.setDeptName(sysDept.getDeptName());
                sysUserDept.setUpdateTime(new Date());
                if (!CollectionUtils.isEmpty(sysUserDepts)) {
                    sysUserDeptMapper.updateSysUserDept(sysUserDept);
                    continue;
                }
                sysUserDept.setCreateTime(new Date());
                sysUserDeptMapper.insertSysUserDept(sysUserDept);
            }
        }
        // 新增用户岗位关联