From 85b973f198c326aa6db1be878d33f747e4f505fa Mon Sep 17 00:00:00 2001 From: houruijun <411269194@kidgrow.com> Date: Tue, 16 Jun 2020 19:02:26 +0800 Subject: [PATCH] 1.pom文件中新增汉字转拼音,生成缩略图引用 2.增加设置logo的数据修改接口 3.增加删除用户接口 4.根据用户名查看当前用户是否管理员接口 5.获取医院科室下的所有有效的医生接口 6.修改文件中心,增加支持医生文件夹。 --- kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java | 147 ++++++++++++++++++++++++++++++++----------------- 1 files changed, 96 insertions(+), 51 deletions(-) diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java index 23d5af5..ff57dbc 100644 --- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java @@ -16,15 +16,15 @@ import com.kidgrow.common.model.*; import com.kidgrow.common.service.impl.SuperServiceImpl; import com.kidgrow.common.utils.DateUtils; +import com.kidgrow.common.utils.Pinyin4jUtil; import com.kidgrow.redis.util.RedisUtils; import com.kidgrow.sms.feign.SmsChuangLanService; import com.kidgrow.sms.model.ConstantSMS; -import com.kidgrow.usercenter.mapper.SysDoctorMapper; -import com.kidgrow.usercenter.mapper.SysRoleMenuMapper; -import com.kidgrow.usercenter.mapper.SysUserMapper; +import com.kidgrow.usercenter.mapper.*; import com.kidgrow.usercenter.model.SysDoctor; import com.kidgrow.usercenter.model.*; import com.kidgrow.usercenter.service.*; +import com.kidgrow.usercenter.vo.HospitalDoctorListVo; import com.kidgrow.usercenter.vo.UserRegVo; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.MapUtils; @@ -81,6 +81,13 @@ private DistributedLock lock; @Autowired private SysDoctorMapper sysDoctorMapper; + + @Autowired + private SysRoleMapper sysRoleMapper; + @Autowired + private SysUserRoleMapper sysUserRoleMapper; + + private final String HOSPITAL_ADMIN="hospital_admin"; @Override public LoginAppUser findByUsername(String username) { @@ -622,7 +629,6 @@ /** * H端用户注册 管理员添加用户 - * * @param userRegVo * @return */ @@ -633,27 +639,31 @@ return ResultBody.failed("该手机号已经注册"); } //检查判断是注册 还是添加用户,注册用户先走基本数据建设 - if (StringUtils.isBlank(userRegVo.getHospitalId().toString())) { + if (userRegVo.getHospitalId()==null) { userRegVo.setDoctorState(true); //添加医院组织结构数据 - List<SysOrganization> sysOrganizationList = new ArrayList<SysOrganization>(); - SysOrganization sysOrganizationHos = new SysOrganization(); + List<SysOrganization> sysOrganizationList=new ArrayList<SysOrganization>(); + SysOrganization sysOrganizationHos=new SysOrganization(); sysOrganizationHos.setOrgAttr(1); sysOrganizationHos.setOrgLevel(1); sysOrganizationHos.setOrgName(userRegVo.getHospitalName()); + sysOrganizationHos.setCreateUserName("自主注册"); + sysOrganizationHos.setCreateUserId(0L); sysOrganizationList.add(sysOrganizationHos); //添加科室组织数据 - SysOrganization sysOrganizationDe = new SysOrganization(); + SysOrganization sysOrganizationDe=new SysOrganization(); sysOrganizationDe.setOrgAttr(2); sysOrganizationDe.setOrgLevel(2); sysOrganizationDe.setOrgName(userRegVo.getDepartmentName()); + sysOrganizationDe.setCreateUserName("自主注册"); + sysOrganizationDe.setCreateUserId(0L); sysOrganizationList.add(sysOrganizationDe); //批量写入 - boolean orgRe = organizationService.saveBatch(sysOrganizationList); + boolean orgRe= organizationService.saveBatch(sysOrganizationList); if (orgRe) { //写医院数据 - SysHospital sysHospital = new SysHospital(); + SysHospital sysHospital=new SysHospital(); sysHospital.setHospitalName(userRegVo.getHospitalName()); sysHospital.setOrgId(sysOrganizationHos.getId()); sysHospital.setAccountsCount(1); @@ -661,11 +671,11 @@ sysHospital.setCreateUserId(0L); sysHospital.setCreateUserName("自主注册"); - boolean h = hospitalService.save(sysHospital); + boolean h=hospitalService.save(sysHospital); if (h) { userRegVo.setHospitalId(sysHospital.getId()); //保存科室数据 - SysDepartment sysDepartment = new SysDepartment(); + SysDepartment sysDepartment=new SysDepartment(); sysDepartment.setHospitalId(sysHospital.getId()); sysDepartment.setOrgId(sysOrganizationDe.getId()); sysDepartment.setDepartmentName(userRegVo.getDepartmentName()); @@ -674,30 +684,38 @@ sysDepartment.setSaleUserTel("0"); sysDepartment.setServerUserId(0L); sysDepartment.setServerUserTel("0"); - boolean d = departmentService.save(sysDepartment); + sysDepartment.setServerUserName("自主注册"); + boolean d=departmentService.save(sysDepartment); if (!d) { return ResultBody.failed("科室数据写入失败"); - } else { + } + else + { userRegVo.setDepartmentId(sysDepartment.getId()); } - } else { + } + else + { return ResultBody.failed("医院数据写入失败"); } - } else { + } + else + { return ResultBody.failed("组织数据写入失败"); } } //添加用户数据 如果没有输入密码,将会创建一个默认密码返回 - String defaultPassWord = ""; - SysUser sysUser = new SysUser(); + String defaultPassWord=""; + SysUser sysUser=new SysUser(); sysUser.setUsername(userRegVo.getUsername()); sysUser.setMobile(userRegVo.getMobile()); if (StringUtils.isBlank(userRegVo.getPassword())) { - defaultPassWord = com.kidgrow.common.utils.RandomValueUtils.getRandom(6); + defaultPassWord=com.kidgrow.common.utils.RandomValueUtils.getRandom(6); sysUser.setPassword(passwordEncoder.encode(defaultPassWord)); sysUser.setDefaultAuth(true); userRegVo.setPassword(defaultPassWord); - } else { + } + else { sysUser.setPassword(passwordEncoder.encode(userRegVo.getPassword())); sysUser.setDefaultAuth(false); } @@ -706,45 +724,66 @@ sysUser.setEnabled(true); if (StringUtils.isNotBlank(userRegVo.getType())) { sysUser.setType(userRegVo.getType()); - } else { + } + else + { sysUser.setType(UserType.DOCTOR.name()); } sysUser.setHAdminUser(false); sysUser.setOpenId(userRegVo.getOpenId()); sysUser.setDel(false); - boolean u = this.save(sysUser); - if (u) { + sysUser.setTenantId("hospital"); + boolean u=this.save(sysUser); + if(u) + { + //保存 角色信息 + Map<String,Object> map= new HashMap<>(); + map.put("code",HOSPITAL_ADMIN); + map.put("enabled",1); + map.put("is_del",0); + List<SysRole> sysRoles = sysRoleMapper.selectByMap(map); + if(sysRoles.size()>0){ + //保存一个角色 + SysRole sysRole = sysRoles.get(0); + SysRoleUser sysRoleUser=new SysRoleUser(); + sysRoleUser.setRoleId(sysRole.getId()); + sysRoleUser.setUserId(sysUser.getId()); + int insert = sysUserRoleMapper.insert(sysRoleUser); + } //写入职务数据 if (StringUtils.isNotBlank(userRegVo.getDoctorRank())) { //检查医生职务是否存在 Map<String, Object> selectMap = new HashMap<>(); selectMap.put("dictionaries_name", userRegVo.getDoctorRank()); - List<SysDictionaries> dictionariesList = sysDictionariesService.findAll(selectMap); - if (dictionariesList.size() > 0) { + List<SysDictionaries> dictionariesList=sysDictionariesService.findAll(selectMap); + if (dictionariesList.size()>0) { for (int i = dictionariesList.size() - 1; i >= 0; i--) { if (dictionariesList.get(i).getDictionariesName().equals(userRegVo.getDoctorRank())) { userRegVo.setDoctorRankId(dictionariesList.get(i).getId()); break; } } - } else { + } + else + { //创建字典数据 - SysDictionaries sysDictionaries = new SysDictionaries(); + SysDictionaries sysDictionaries=new SysDictionaries(); sysDictionaries.setDictionariesKey(DictionariesConstants.DOCTOR_RANK); sysDictionaries.setDictionariesClassId(DictionariesConstants.DOCTOR_RANK_ID.toString()); //将名称汉字转为拼音 - sysDictionaries.setDictionariesKey("temp"); + + sysDictionaries.setDictionariesKey(Pinyin4jUtil.makeStringByStringSet(Pinyin4jUtil.getPinyin(userRegVo.getDoctorRank(),true))); sysDictionaries.setDictionariesName(userRegVo.getDoctorRank()); sysDictionaries.setCreateUserId(0L); sysDictionaries.setCreateUserName("自动创建"); - boolean d = sysDictionariesService.save(sysDictionaries); + boolean d=sysDictionariesService.save(sysDictionaries); if (d) { userRegVo.setDoctorRankId(sysDictionaries.getId()); } } } //写入医生数据 - SysDoctor sysDoctor = new SysDoctor(); + SysDoctor sysDoctor=new SysDoctor(); sysDoctor.setUserId(sysUser.getId()); sysDoctor.setHospitalId(userRegVo.getHospitalId()); sysDoctor.setHospitalName(userRegVo.getHospitalName()); @@ -759,21 +798,36 @@ sysDoctor.setDoctorName(userRegVo.getNickname()); sysDoctor.setServerUserId(0L); sysDoctor.setServerUserName("自主注册"); - if (sysDoctorMapper.insert(sysDoctor) == 1) { - if (StringUtils.isNotBlank(defaultPassWord)) { - //默认密码需要返回 - sysUser.setPassword(defaultPassWord); - } - else - { - sysUser.setPassword(""); - } - return ResultBody.ok(200, "注册成功").data(sysUser); - } else { + if (sysDoctorMapper.insert(sysDoctor)==1) { + sysUser.setPassword(userRegVo.getPassword()); + return ResultBody.ok().data(sysUser); +// return ResultBody.ok(200,"注册成功").data(sysUser); + } + else + { return ResultBody.failed("医生数据写入失败"); } - } else { + } + else + { return ResultBody.failed("用户数据写入失败"); + } + } + /** + * 获取医院科室下的所有有效的医生 + * @param hospitalId + * @param departmentId + * @return + */ + @Override + public ResultBody hospitalDoctorList(Long hospitalId, Long departmentId) { + if (hospitalId>0&&departmentId>0) { + List<HospitalDoctorListVo> listVoList=baseMapper.hospitalDoctorList(hospitalId,departmentId); + return ResultBody.ok().data(listVoList); + } + else + { + return ResultBody.failed("医院数据有误"); } } @@ -813,14 +867,5 @@ return sysDoctorList.get(0); } return new com.kidgrow.usercenter.model.SysDoctor(); - } - - public ResultBody userIsAdmin(String userName) { - - Map<String, Object> selectMap = new HashMap<>(); - selectMap.put("username", userName); - List<SysUser> sysUsers = baseMapper.selectByMap(selectMap); - - return null; } } \ No newline at end of file -- Gitblit v1.8.0