123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- package com.diagbot.facade;
- import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
- import com.baomidou.mybatisplus.core.metadata.IPage;
- import com.diagbot.dto.UserRoleInfoFindDTO;
- import com.diagbot.entity.User;
- import com.diagbot.entity.UserHospital;
- import com.diagbot.entity.UserRole;
- import com.diagbot.enums.IsDeleteEnum;
- import com.diagbot.exception.CommonErrorCode;
- import com.diagbot.exception.CommonException;
- import com.diagbot.service.UserRoleService;
- import com.diagbot.service.impl.UserRoleServiceImpl;
- import com.diagbot.util.BeanUtil;
- import com.diagbot.util.DateUtil;
- import com.diagbot.util.ListUtil;
- import com.diagbot.util.UserUtils;
- import com.diagbot.vo.UserHospitalInfoVO;
- import com.diagbot.vo.UserInfoVO;
- import com.diagbot.vo.UserRoleInfoCancelVO;
- import com.diagbot.vo.UserRoleInfoFindVO;
- import com.diagbot.vo.UserRoleInfoVO;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.support.ManagedMap;
- import org.springframework.stereotype.Component;
- import java.util.ArrayList;
- import java.util.Date;
- import java.util.List;
- import java.util.Map;
- /**
- * @author wangfeng
- * @Description:
- * @date 2020-08-11 9:56
- */
- @Component
- public class UserRoleFacade extends UserRoleServiceImpl {
- @Autowired
- UserFacade userFacade;
- @Autowired
- UserHospitalFacade userHospitalFacade;
- @Autowired
- UserRoleService userRoleService;
- @Autowired
- HospitalInfoFacade hospitalInfoFacade;
- public boolean addUserRoles(UserRoleInfoVO userRoleInfoVO) {
- boolean res = false;
- Date now = DateUtil.now();
- UserInfoVO userInfoVO = new UserInfoVO();
- BeanUtil.copyProperties(userRoleInfoVO, userInfoVO);
- //建立超级管理员基本信息
- User user = userFacade.addUser(userInfoVO);
- Long userId = user.getId();
- if (userId != null) {
- UserHospitalInfoVO userHospitalInfoVO = new UserHospitalInfoVO();
- userHospitalInfoVO.setHospitalId(userRoleInfoVO.getHospitalId());
- userHospitalInfoVO.setUserId(userId);
- userHospitalFacade.addUserHospital(userHospitalInfoVO);
- //
- UserRole userRole = new UserRole();
- userRole.setRoleId(-1L);
- userRole.setUserId(userId);
- userRole.setCreator(UserUtils.getCurrentPrincipleID());
- userRole.setModifier(UserUtils.getCurrentPrincipleID());
- userRole.setGmtCreate(now);
- userRole.setGmtModified(now);
- res = userRoleService.save(userRole);
- }
- return res;
- }
- public IPage<UserRoleInfoFindDTO> getUserRoles(UserRoleInfoFindVO userRoleInfoFindVO) {
- IPage<UserRoleInfoFindDTO> dataAllIPage = userRoleService.getUserRoleAlls(userRoleInfoFindVO);
- List<UserRoleInfoFindDTO> dataAll = dataAllIPage.getRecords();
- List<Long> hospitalId = new ArrayList<>();
- List<String> modifierid = new ArrayList<>();
- for (UserRoleInfoFindDTO data : dataAll) {
- hospitalId.add(data.getHospitalId());
- modifierid.add(data.getModifier());
- }
- Map<Long, String> hospitalInfoData = new ManagedMap<>();
- Map<String, String> userInfoByIds = new ManagedMap<>();
- if (ListUtil.isNotEmpty(hospitalId)) {
- hospitalInfoData = hospitalInfoFacade.getHospitalInfoData(hospitalId);
- }
- if (ListUtil.isNotEmpty(modifierid)) {
- userInfoByIds = userFacade.getUserInfoByIds(modifierid);
- if (userInfoByIds == null) {
- throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "获取所有用户信息失败");
- }
- }
- for (
- UserRoleInfoFindDTO userData : dataAll) {
- userData.setHospitalName(hospitalInfoData.get(userData.getHospitalId()));
- userData.setModifier(userInfoByIds.get(userData.getModifier()));
- }
- return dataAllIPage.setRecords(dataAll);
- }
- /**
- * @param userRoleInfoCancelVO
- * @return
- */
- public boolean cancelUserRole(UserRoleInfoCancelVO userRoleInfoCancelVO) {
- UpdateWrapper<UserRole> userRoleUpdate = new UpdateWrapper<>();
- userRoleUpdate.eq("is_deleted", IsDeleteEnum.N.getKey())
- .eq("user_id", userRoleInfoCancelVO.getUserId())
- .eq("id", userRoleInfoCancelVO.getId())
- .eq("role_id", -1);
- boolean res = userRoleService.remove(userRoleUpdate);
- UpdateWrapper<User> userUpdate = new UpdateWrapper<>();
- userUpdate.eq("is_deleted", IsDeleteEnum.N.getKey())
- .eq("id", userRoleInfoCancelVO.getUserId());
- res = userFacade.remove(userUpdate);
- UpdateWrapper<UserHospital> userHospitalUpdate = new UpdateWrapper<>();
- userHospitalUpdate.eq("is_deleted", IsDeleteEnum.N.getKey())
- .eq("user_id", userRoleInfoCancelVO.getUserId())
- .eq("hospital_id", userRoleInfoCancelVO.getHospitalId());
- res = userHospitalFacade.remove(userHospitalUpdate);
- return res;
- }
- }
|