| | |
| | | package com.ruoyi.quartz.service.impl; |
| | | |
| | | import com.google.gson.Gson; |
| | | import com.ruoyi.common.core.domain.entity.SysDept; |
| | | import com.ruoyi.common.core.domain.entity.SysUser; |
| | | import com.ruoyi.common.core.domain.entity.SysUserDept; |
| | |
| | | import com.smartor.mapper.*; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.collections4.CollectionUtils; |
| | | import org.apache.commons.lang3.ArrayUtils; |
| | | import org.apache.commons.lang3.ObjectUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | |
| | | public Integer selectUserList(SysUser sysUser) { |
| | | List<SysUser> sysUserList = chMapper.selectUserList(sysUser); |
| | | SysUser suerTemp = new SysUser(); |
| | | //用户-机构关系-科室 |
| | | List<SysUserDept> sysUserDeptAll = chMapper.yhyksxx(suerTemp); |
| | | //用户-机构关系-病区 |
| | | List<SysUserDept> sysUserDeptBfAll = chMapper.yhybfxx(suerTemp); |
| | | //用户-院区关系 |
| | | List<SysUserOrg> sysUserOrgAll = chMapper.yhyyqxx(suerTemp); |
| | | |
| | | log.info("sysUserList的采集到的数量为:{}", sysUserList.size()); |
| | | int i = 0;// sysUser2Mapper.batchUser(sysUserList); |
| | | for (SysUser sysUser1 : sysUserList) { |
| | | // log.info("sysUser1的ID为:{}", sysUser1.getUserId()); |
| | | // log.info("sysUser1的HISUSERID为:{}", sysUser1.getHisUserId()); |
| | | if (StringUtils.isEmpty(sysUser1.getHisUserId())) continue; |
| | | SysUser suTemp = new SysUser(); |
| | | suTemp.setHisUserId(sysUser1.getHisUserId()); |
| | | List<SysUser> usersTemp = sysUser2Mapper.selectUserList(suTemp); |
| | | |
| | | //新增用户与科室 |
| | | List<SysUserDept> sysUserDept = sysUserDeptAll.stream().filter((SysUserDept b) -> |
| | | b.getUserCode().equals(sysUser1.getHisUserId())).collect(Collectors.toList()); |
| | | //新增用户与病区 |
| | | List<SysUserDept> sysUserDeptBf = sysUserDeptBfAll.stream().filter((SysUserDept b) -> |
| | | b.getUserCode().equals(sysUser1.getHisUserId())).collect(Collectors.toList()); |
| | | //新增用户与院区 |
| | | List<SysUserOrg> sysUserOrg = sysUserOrgAll.stream().filter((SysUserOrg o) -> |
| | | o.getUserId().equals(sysUser1.getHisUserId())).collect(Collectors.toList()); |
| | | |
| | | List<String> userDepts = sysUserDept.stream().map(SysUserDept::getDeptCode). |
| | | distinct().collect(Collectors.toList()); |
| | | |
| | | List<String> userDeptBfs = sysUserDeptBf.stream().map(SysUserDept::getDeptCode). |
| | | distinct().collect(Collectors.toList()); |
| | | |
| | | //和queryHospUserInfoList采集的数据格式保持一致 |
| | | List<List<String>> userDeptsList = new ArrayList<>(); |
| | | if(!userDepts.isEmpty()){ |
| | | for(String userDept: userDepts){ |
| | | List<String> uDept = new ArrayList<>(); |
| | | uDept.add(userDept); |
| | | userDeptsList.add(uDept); |
| | | } |
| | | } |
| | | List<List<String>> userDeptBfsList = new ArrayList<>(); |
| | | if(!userDeptBfs.isEmpty()){ |
| | | for(String userBfDept: userDeptBfs){ |
| | | List<String> uBfDept = new ArrayList<>(); |
| | | uBfDept.add(userBfDept); |
| | | userDeptBfsList.add(uBfDept); |
| | | } |
| | | } |
| | | |
| | | if (usersTemp.size() > 0) { |
| | | sysUser1.setUserId(usersTemp.get(0).getUserId()); |
| | | sysUser1.setUserName(sysUser1.getHisUserId()); |
| | | //对应 SysUserServiceImpl selectUserByUserName2 191行 |
| | | if (!org.springframework.util.CollectionUtils.isEmpty(sysUserOrg)) { |
| | | sysUser1.setOrgid(sysUserOrg.get(0).getOrgid()); |
| | | sysUser1.setCampusid(sysUserOrg.get(0).getCampusid()); |
| | | } |
| | | //将部门我病区放到指定字段中 |
| | | Gson gson = new Gson(); |
| | | sysUser1.setHospInfo(gson.toJson(userDeptsList)); |
| | | sysUser1.setDeptInfo(gson.toJson(userDeptBfsList)); |
| | | |
| | | sysUser2Mapper.updateUser(sysUser1); |
| | | } else { |
| | | sysUser1.setUserName(sysUser1.getHisUserId()); |
| | | //将部门我病区放到指定字段中 |
| | | Gson gson = new Gson(); |
| | | sysUser1.setDeptInfo(gson.toJson(userDeptsList)); |
| | | sysUser1.setHospInfo(gson.toJson(userDeptBfsList)); |
| | | |
| | | sysUser2Mapper.insertUser(sysUser1); |
| | | //对应 SysUserServiceImpl selectUserByUserName2 191行 |
| | | if (!org.springframework.util.CollectionUtils.isEmpty(sysUserOrg)) { |
| | | sysUser1.setOrgid(sysUserOrg.get(0).getOrgid()); |
| | | sysUser1.setCampusid(sysUserOrg.get(0).getCampusid()); |
| | | } |
| | | usersTemp = sysUser2Mapper.selectUserList(suTemp); |
| | | } |
| | | |
| | | //新增用户与部门 |
| | | //List<SysUserDept> sysUserDept = chMapper.yhyksxx(sysUser1); |
| | | List<SysUserDept> sysUserDept = sysUserDeptAll.stream().filter((SysUserDept b) -> b.getUserCode().equals(sysUser1.getHisUserId())).collect(Collectors.toList()); |
| | | |
| | | for (SysUserDept sud : sysUserDept) { |
| | | if (usersTemp.size() > 0) { |
| | | if (!usersTemp.isEmpty()) { |
| | | sud.setDeptType("1"); |
| | | sud.setUserId(usersTemp.get(0).getUserId()); |
| | | sysUserDeptMapper.insertSysUserDept(sud); |
| | | } |
| | | } |
| | | //新增用户与院区 |
| | | List<SysUserOrg> sysUserOrg = sysUserOrgAll.stream().filter((SysUserOrg o) -> o.getUserId().equals(sysUser1.getHisUserId())).collect(Collectors.toList()); |
| | | for (SysUserDept sudb : sysUserDeptBf) { |
| | | if (!usersTemp.isEmpty()) { |
| | | sudb.setDeptType("2"); |
| | | sudb.setUserId(usersTemp.get(0).getUserId()); |
| | | sysUserDeptMapper.insertSysUserDept(sudb); |
| | | } |
| | | } |
| | | for (SysUserOrg suo : sysUserOrg) { |
| | | if (usersTemp.size() > 0) { |
| | | suo.setUserId(usersTemp.get(0).getUserId()); |
| | | if (!usersTemp.isEmpty()) { |
| | | suo.setUserId(usersTemp.get(0).getUserId().toString()); |
| | | sysUserOrgMapper.insertSysUserOrg(suo); |
| | | } |
| | | } |