From 31de20695ac5fc8562c5922fcbe8729ae4e146a1 Mon Sep 17 00:00:00 2001 From: zhaoxiaohao <913652501@qq.com> Date: Mon, 29 Jun 2020 14:20:39 +0800 Subject: [PATCH] Merge branch 'dev' of http://192.168.2.240:7070/r/kidgrow-microservices-platform into dev --- kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java | 42 +++++++++++++++++++++++++++++++++++------- 1 files changed, 35 insertions(+), 7 deletions(-) diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java index abab3a4..d7cb7c5 100644 --- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java @@ -1,5 +1,6 @@ package com.kidgrow.usercenter.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.kidgrow.common.constant.CommonConstant; import com.kidgrow.common.constant.SecurityConstants; @@ -110,6 +111,17 @@ return true; } + /** + * 根据userid删除医生数据 + * @param userId + * @return + */ + @Override + public int deleteByUserId(Long userId) { + Map<String, Object> params = new HashMap<>(); + params.put("userId", userId); + return baseMapper.deleteByMap(params); + } @Override public ResultBody enable(Map<String, Object> params) { Long aLong = MapUtils.getLong(params,"id"); @@ -133,7 +145,7 @@ } @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public boolean saveOrUpdateSer(SysDoctorDto sysDoctor, HttpServletRequest request,SysUser user) { String id = request.getHeader(SecurityConstants.USER_ID_HEADER); if(null==sysDoctor){ @@ -228,19 +240,29 @@ } @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public ResultBody setAdminDoctor(Map<String, Object> params) { Long id = MapUtils.getLong(params, "id"); Long adminId = MapUtils.getLong(params, "adminId"); if (id>0&&adminId>0) { Map<String,Object> map= new HashMap<>(); - map.put("id",adminId); - SysDoctor sysDoctor=baseMapper.selectById(adminId); + map.put("user_id",adminId); + List<SysDoctor> sysDoctors = baseMapper.selectByMap(map); + if(sysDoctors==null||sysDoctors.size()<=0){ + return ResultBody.failed("当前操作用户不是管理员"); + } + SysDoctor sysDoctor = sysDoctors.get(0); //先检查操作用户是否管理员 if(sysDoctor!=null){ if (sysDoctor.getIsAdminUser()) { - //现将操作人员设为非管理 - sysDoctor=new SysDoctor(); + //将超级管理员的角色设为普通角色 + SysRoleUser sysRoleUser=new SysRoleUser(); + sysRoleUser.setUserId(adminId); + sysRoleUser.setRoleId(CommonConstant.HOSPITAL_DOCTOR_ID); + QueryWrapper queryWrapper=new QueryWrapper(); + queryWrapper.eq("user_id",adminId); + int update = sysUserRoleMapper.update(sysRoleUser, queryWrapper); + //现将操作人员设为非管理角色 sysDoctor.setIsAdminUser(false); if(baseMapper.updateById(sysDoctor)>0) { @@ -248,7 +270,13 @@ sysDoctor=baseMapper.selectById(id); if (sysDoctor != null) { if (!sysDoctor.getIsAdminUser()) { - sysDoctor=new SysDoctor(); + //现将普通人员设为管理角色 + sysRoleUser=new SysRoleUser(); + sysRoleUser.setUserId(adminId); + sysRoleUser.setRoleId(CommonConstant.HOSPITAL_DOCTOR_ID); + queryWrapper=new QueryWrapper(); + queryWrapper.eq("user_id",id); + sysUserRoleMapper.update(sysRoleUser, queryWrapper); sysDoctor.setIsAdminUser(true); if (baseMapper.updateById(sysDoctor)>0) { return ResultBody.ok().data(true).msg("管理员设置成功!"); -- Gitblit v1.8.0