From e84df331a8ee600d369eeac4172b750db563926d Mon Sep 17 00:00:00 2001
From: houruijun <411269194@kidgrow.com>
Date: Sun, 09 Aug 2020 15:16:37 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev
---
kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysHospitalController.java | 3
kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java | 357 +++++++++++++++++++++++++++-----------------------
kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java | 7
kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysOrganizationServiceImpl.java | 19 ++
4 files changed, 216 insertions(+), 170 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 54ad012..7e46bb3 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
@@ -120,6 +120,7 @@
/**
* 根据userid删除医生数据
+ *
* @param userId
* @return
*/
@@ -129,8 +130,10 @@
params.put("userId", userId);
return baseMapper.deleteByMap(params);
}
+
/**
* 统计医生的数量
+ *
* @param datatype 业务类型
* 0 自注册医生
* 1 签约医生
@@ -147,167 +150,210 @@
@Override
public ResultBody enable(Map<String, Object> params) {
- Long aLong = MapUtils.getLong(params,"id");
+ Long aLong = MapUtils.getLong(params, "id");
SysDoctor sysDoctor = baseMapper.selectById(aLong);
Boolean enabled = MapUtils.getBoolean(params, "enabled");
if (sysDoctor != null && sysDoctor.getUserId() != null) {
SysUser byId = iSysUserService.getById(sysDoctor.getUserId());
- if(byId!=null){
+ if (byId != null) {
byId.setEnabled(enabled);
iSysUserService.updateById(byId);
}
}
- if(sysDoctor!=null){
+ if (sysDoctor != null) {
sysDoctor.setEnabled(enabled);
baseMapper.updateById(sysDoctor);
- }else {
+ } else {
return ResultBody.failed("禁用失败");
}
- return ResultBody.ok(0,"禁用成功");
+ return ResultBody.ok(0, "禁用成功");
}
@Override
@Transactional(rollbackFor = Exception.class)
- public ResultBody saveOrUpdateSer(SysDoctorDto sysDoctor, HttpServletRequest request,SysUser user) {
+ public ResultBody saveOrUpdateSer(SysDoctorDto sysDoctor, HttpServletRequest request, SysUser user) {
String id = request.getHeader(SecurityConstants.USER_ID_HEADER);
- if(null==sysDoctor){
- return ResultBody.failed("请填写信息");
- }else {
- if(sysDoctor.getRoles()==null||sysDoctor.getRoles().size()<=0){
- return ResultBody.failed("选择一个角色");
- }
- /**
- * 限制管理员只有一个
- */
-
- Boolean flag=false;
- if(sysDoctor.getRoles().contains(CommonConstant.HOSPITAL_ADMIN_ID)){
- //查询一个部门下的所有医生
- QueryWrapper wrapper=new QueryWrapper();
- wrapper.eq("is_del",0);
- wrapper.eq("enabled",1);
- wrapper.eq("department_id",sysDoctor.getDepartmentId());
- List<SysDoctor> doctoerList = this.baseMapper.selectList(wrapper);
- if(doctoerList.size()>0){
- //查询role——user
- List<Long> collect = doctoerList.stream().map(e -> e.getUserId()).collect(Collectors.toList());
- wrapper=new QueryWrapper();
- wrapper.in("user_id",collect);
- List<SysRoleUser> list= this.sysUserRoleMapper.selectList(wrapper);
-
- for (SysRoleUser sysRoleUser : list) {
- if(sysRoleUser.getRoleId()==CommonConstant.HOSPITAL_ADMIN_ID){
- flag=true;
- }
- }
+ if (null == sysDoctor) {
+ return ResultBody.failed("请填写信息");
+ } else {
+ Boolean flag = false;
+ if (sysDoctor.getDoctorType() != 2) {
+ if (sysDoctor.getRoles() == null || sysDoctor.getRoles().size() <= 0) {
+ return ResultBody.failed("选择一个角色");
}
}
- if(flag){
- return ResultBody.failed("该部门已经有管理员");
+ /**
+ * 管理员只有一个
+ */
+ if (isSupperRole(sysDoctor)) {
+ return ResultBody.failed("该部门已经有管理员");
}
/**
* 限制只有创建医生的个数
*
*/
- if(sysUserServiceImpl.departmetAccountsCount(sysDoctor.getDepartmentId())<=0){
- return ResultBody.failed("该部门创建人数已经达到上限");
- }
- SysHospital sysHospital= sysHospitalMapper.selectById(sysDoctor.getHospitalId());
- SysDepartment sysDepartment= sysDepartmentMapper.selectById(sysDoctor.getDepartmentId());
- if (sysDoctor.getId()==null) {
- //保存
- SysUser sysUser=new SysUser();
- sysUser.setUsername(sysDoctor.getUsername());
- sysUser.setPassword(passwordEncoder.encode(sysDoctor.getPassword()));
- sysUser.setNickname(sysDoctor.getHospitalName());
- sysUser.setHeadImgUrl(sysDoctor.getDoctorLogo());
- sysUser.setMobile(sysDoctor.getDoctorTel());
- sysUser.setType(UserType.DOCTOR.name());
- sysUser.setTenantId(CommonConstant.H_TENANT);
- sysUser.setCreateTime(new Date());
- SysUser byId = iSysUserService.getById(id);
- if(byId!=null){
- sysUser.setCreateUserId(byId.getId());
- sysUser.setCreateUserName(byId.getUsername());
- }
- iSysUserService.save(sysUser);
- //保存 角色信息
-// 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){
- //保存一个角色
- sysDoctor.getRoles().forEach(e->{
- SysRoleUser sysRoleUser=new SysRoleUser();
- sysRoleUser.setRoleId(e);
- sysRoleUser.setUserId(sysUser.getId());
- int insert = sysUserRoleMapper.insert(sysRoleUser);
- });
+ if (sysUserServiceImpl.departmetAccountsCount(sysDoctor.getDepartmentId()) <= 0) {
+ return ResultBody.failed("该部门创建人数已经达到上限");
+ }
+ SysHospital sysHospital = sysHospitalMapper.selectById(sysDoctor.getHospitalId());
+ SysDepartment sysDepartment = sysDepartmentMapper.selectById(sysDoctor.getDepartmentId());
+ if (sysDoctor.getId() == null) {
+ Long sysUserId = null;
+ //保存部门信息
+ sysUserId = this.saveFenjiekou(sysDoctor, id, sysHospital, sysDepartment);
//保存doctor的数据
- SysDoctor sysDoc=new SysDoctor();
+ SysDoctor sysDoc = new SysDoctor();
BeanCopier beanCopier = BeanCopier.create(SysDoctorDto.class, SysDoctor.class, false);
- beanCopier.copy(sysDoctor,sysDoc,null);
- sysDoc.setUserId(sysUser.getId());
- if(user.getOrganizations()!=null){
+ beanCopier.copy(sysDoctor, sysDoc, null);
+ sysDoc.setUserId(sysUserId);
+ if (user.getOrganizations() != null) {
List<SysOrganization> organizations = user.getOrganizations();
- sysDoc.setCreateUserOrgCode(organizations.get(organizations.size()-1).getOrgCode());
+ sysDoc.setCreateUserOrgCode(organizations.get(organizations.size() - 1).getOrgCode());
}
-
baseMapper.insert(sysDoc);
- //保存将sys_user_org 保存部门
- SysUserOrg sysUserOrg=new SysUserOrg();
- sysUserOrg.setUserId(sysUser.getId());
- sysUserOrg.setFromId(sysDoctor.getDepartmentId());
- sysUserOrg.setFromLevel(CommonConstant.SYSTEM_ORG_DEP_LEVEL);
- sysUserOrg.setOrgId(sysDepartment.getOrgId());
- //保存公司
- sysUserOrgService.saveOrUpdate(sysUserOrg);
- SysUserOrg sysGongsi=new SysUserOrg();
- sysGongsi.setUserId(sysUser.getId());
- sysGongsi.setOrgId(sysHospital.getOrgId());
- sysGongsi.setFromId(sysDoctor.getHospitalId());
- sysGongsi.setFromLevel(CommonConstant.SYSTEM_ORG_DEP_LEVEL);
- sysUserOrgService.saveOrUpdate(sysGongsi);
- //保存到Redis
- boolean hset = redisUtils.hset(RedisConstant.USER_ORGANIZATION, sysUserOrg.getUserId().toString(), sysUserOrg);
- }else {
+ } else {
//更新
SysDoctor getOne = baseMapper.selectById(sysDoctor.getId());
- Map<String, Object> columnMap=new HashMap<>();
- columnMap.put("user_id",sysDoctor.getUserId());
- boolean b = sysUserOrgService.removeByMap(columnMap);
- //保存将sys_user_org
- SysUserOrg sysUserOrg=new SysUserOrg();
- sysUserOrg.setUserId(getOne.getUserId());
- sysUserOrg.setEnabled(false);
- sysUserOrg.setFromId(sysDoctor.getDepartmentId());
- sysUserOrg.setFromLevel(CommonConstant.SYSTEM_ORG_DEP_LEVEL);
- sysUserOrg.setOrgId(sysDepartment.getOrgId());
- sysUserOrg.setCreateTime(new Date());
- sysUserOrgService.saveOrUpdate(sysUserOrg);
- SysUserOrg sysGongsi=new SysUserOrg();
- sysGongsi.setUserId(getOne.getId());
- sysGongsi.setOrgId(sysHospital.getOrgId());
- sysGongsi.setFromId(sysDoctor.getHospitalId());
- sysGongsi.setFromLevel(CommonConstant.SYSTEM_ORG_DEP_LEVEL);
- sysUserOrgService.saveOrUpdate(sysGongsi);
- baseMapper.updateById(sysDoctor);
- if(redisUtils.hHasKey(RedisConstant.USER_ORGANIZATION, getOne.getUserId().toString())){
+ if (getOne.getDoctorType() != 2 && sysDoctor.getDoctorType() != 2) {
+ Map<String, Object> columnMap = new HashMap<>();
+ columnMap.put("user_id", sysDoctor.getUserId());
+ boolean b = sysUserOrgService.removeByMap(columnMap);
+ //保存将sys_user_org
+ SysUserOrg sysUserOrg = new SysUserOrg();
+ sysUserOrg.setUserId(getOne.getUserId());
+ sysUserOrg.setEnabled(false);
+ sysUserOrg.setFromId(sysDoctor.getDepartmentId());
+ sysUserOrg.setFromLevel(CommonConstant.SYSTEM_ORG_DEP_LEVEL);
+ sysUserOrg.setOrgId(sysDepartment.getOrgId());
+ sysUserOrg.setCreateTime(new Date());
+ sysUserOrgService.saveOrUpdate(sysUserOrg);
+ SysUserOrg sysGongsi = new SysUserOrg();
+ sysGongsi.setUserId(getOne.getId());
+ sysGongsi.setOrgId(sysHospital.getOrgId());
+ sysGongsi.setFromId(sysDoctor.getHospitalId());
+ sysGongsi.setFromLevel(CommonConstant.SYSTEM_ORG_DEP_LEVEL);
+ sysUserOrgService.saveOrUpdate(sysGongsi);
+ baseMapper.updateById(sysDoctor);
+ if (redisUtils.hHasKey(RedisConstant.USER_ORGANIZATION, getOne.getUserId().toString())) {
+ redisUtils.hdel(RedisConstant.USER_ORGANIZATION, getOne.getUserId().toString());
+ }
+ redisUtils.hset(RedisConstant.USER_ORGANIZATION, getOne.getUserId().toString(), sysUserOrg);
+ } else if (getOne.getDoctorType() == 2 && sysDoctor.getDoctorType() != 2) {
+ /**
+ * 管理员只有一个
+ */
+ if (isSupperRole(sysDoctor)) {
+ return ResultBody.failed("该部门已经有管理员");
+ }
+ Long sysUserId = saveFenjiekou(sysDoctor, id, sysHospital, sysDepartment);
+ sysDoctor.setUserId(sysUserId);
+ baseMapper.updateById(sysDoctor);
+ } else if (getOne.getDoctorType() != 2 && sysDoctor.getDoctorType() == 2) {
+ //将组织删除
+ Map<String, Object> columnMap = new HashMap<>();
+ columnMap.put("user_id", getOne.getUserId());
+ boolean b = sysUserOrgService.removeByMap(columnMap);
+ SysUser byId = iSysUserService.getById(getOne.getUserId());
+ //将角色删除
+ QueryWrapper queryWrapper=new QueryWrapper();
+ queryWrapper.eq("user_id",getOne.getUserId());
+ int delete = sysUserRoleMapper.delete(queryWrapper);
+ if(byId!=null){
+// iSysUserService.delUser(byId.getId());
+ boolean userdelete = iSysUserService.removeById(byId.getId());
+ }
redisUtils.hdel(RedisConstant.USER_ORGANIZATION, getOne.getUserId().toString());
+ sysDoctor.setUserId(null);
+ baseMapper.updateById(sysDoctor);
+ } else if (getOne.getDoctorType() == 2 && sysDoctor.getDoctorType() == 2) {
+ baseMapper.updateById(sysDoctor);
}
- redisUtils.hset(RedisConstant.USER_ORGANIZATION, getOne.getUserId().toString(), sysUserOrg);
}
}
return ResultBody.ok();
}
+ //是否可以使是超管角色
+ public Boolean isSupperRole(SysDoctorDto sysDoctor){
+ Boolean flag = false;
+ /**
+ * 限制管理员只有一个
+ */
+ if (sysDoctor.getRoles().contains(CommonConstant.HOSPITAL_ADMIN_ID)) {
+ //查询一个部门下的所有医生
+ QueryWrapper wrapper = new QueryWrapper();
+ wrapper.eq("is_del", 0);
+ wrapper.eq("enabled", 1);
+ wrapper.eq("department_id", sysDoctor.getDepartmentId());
+ List<SysDoctor> doctoerList = this.baseMapper.selectList(wrapper);
+ if (doctoerList.size() > 0) {
+ //查询role——user
+ List<Long> collect = doctoerList.stream().map(e -> e.getUserId()).collect(Collectors.toList());
+ wrapper = new QueryWrapper();
+ wrapper.in("user_id", collect);
+ List<SysRoleUser> list = this.sysUserRoleMapper.selectList(wrapper);
+ for (SysRoleUser sysRoleUser : list) {
+ if (sysRoleUser.getRoleId() == CommonConstant.HOSPITAL_ADMIN_ID) {
+ flag = true;
+ }
+ }
+ }
+ }
+ return flag;
+ }
+
+ //保存的分接口
+ public Long saveFenjiekou(SysDoctorDto sysDoctor, String id, SysHospital sysHospital, SysDepartment sysDepartment) {
+ Long sysUserId = null;
+ if (sysDoctor.getDoctorType() != 2) {
+ //保存
+ SysUser sysUser = new SysUser();
+ sysUser.setUsername(sysDoctor.getUsername());
+ sysUser.setPassword(passwordEncoder.encode(sysDoctor.getPassword()));
+ sysUser.setNickname(sysDoctor.getHospitalName());
+ sysUser.setHeadImgUrl(sysDoctor.getDoctorLogo());
+ sysUser.setMobile(sysDoctor.getDoctorTel());
+ sysUser.setType(UserType.DOCTOR.name());
+ sysUser.setTenantId(CommonConstant.H_TENANT);
+ sysUser.setCreateTime(new Date());
+ SysUser byId = iSysUserService.getById(id);
+ if (byId != null) {
+ sysUser.setCreateUserId(byId.getId());
+ sysUser.setCreateUserName(byId.getUsername());
+ }
+ iSysUserService.save(sysUser);
+ sysUserId = sysUser.getId();
+ //保存一个角色
+ sysDoctor.getRoles().forEach(e -> {
+ SysRoleUser sysRoleUser = new SysRoleUser();
+ sysRoleUser.setRoleId(e);
+ sysRoleUser.setUserId(sysUser.getId());
+ int insert = sysUserRoleMapper.insert(sysRoleUser);
+ });
+ //保存将sys_user_org 保存部门
+ SysUserOrg sysUserOrg = new SysUserOrg();
+ sysUserOrg.setUserId(sysUser.getId());
+ sysUserOrg.setFromId(sysDoctor.getDepartmentId());
+ sysUserOrg.setFromLevel(CommonConstant.SYSTEM_ORG_DEP_LEVEL);
+ sysUserOrg.setOrgId(sysDepartment.getOrgId());
+ //保存公司
+ sysUserOrgService.saveOrUpdate(sysUserOrg);
+ SysUserOrg sysGongsi = new SysUserOrg();
+ sysGongsi.setUserId(sysUser.getId());
+ sysGongsi.setOrgId(sysHospital.getOrgId());
+ sysGongsi.setFromId(sysDoctor.getHospitalId());
+ sysGongsi.setFromLevel(CommonConstant.SYSTEM_ORG_DEP_LEVEL);
+ sysUserOrgService.saveOrUpdate(sysGongsi);
+ //保存到Redis
+ boolean hset = redisUtils.hset(RedisConstant.USER_ORGANIZATION, sysUserOrg.getUserId().toString(), sysUserOrg);
+ }
+ return sysUserId;
+ }
@Override
public List<SysDoctor> findByMap(Map<String, Object> map) {
- map.put("enabled",1);
- map.put("is_del",0);
+ map.put("enabled", 1);
+ map.put("is_del", 0);
return baseMapper.selectByMap(map);
}
@@ -316,100 +362,83 @@
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("user_id",adminId);
+ if (id > 0 && adminId > 0) {
+ Map<String, Object> map = new HashMap<>();
+ map.put("user_id", adminId);
List<SysDoctor> sysDoctors = baseMapper.selectByMap(map);
- if(sysDoctors==null||sysDoctors.size()<=0){
+ if (sysDoctors == null || sysDoctors.size() <= 0) {
return ResultBody.failed("当前操作用户不是管理员");
}
SysDoctor sysDoctor = sysDoctors.get(0);
//先检查操作用户是否管理员
- if(sysDoctor!=null){
+ if (sysDoctor != null) {
if (sysDoctor.getIsAdminUser()) {
//将超级管理员的角色设为普通角色
- SysRoleUser sysRoleUser=new SysRoleUser();
+ SysRoleUser sysRoleUser = new SysRoleUser();
sysRoleUser.setUserId(adminId);
sysRoleUser.setRoleId(CommonConstant.HOSPITAL_DOCTOR_ID);
- QueryWrapper queryWrapper=new QueryWrapper();
- queryWrapper.eq("user_id",adminId);
- queryWrapper.eq("role_id",CommonConstant.HOSPITAL_ADMIN_ID);
+ QueryWrapper queryWrapper = new QueryWrapper();
+ queryWrapper.eq("user_id", adminId);
+ queryWrapper.eq("role_id", CommonConstant.HOSPITAL_ADMIN_ID);
int update = sysUserRoleMapper.update(sysRoleUser, queryWrapper);
//现将操作人员设为非管理角色
sysDoctor.setIsAdminUser(false);
- if(baseMapper.updateById(sysDoctor)>0)
- {
+ if (baseMapper.updateById(sysDoctor) > 0) {
//再将新用户设为管理
- sysDoctor=baseMapper.selectById(id);
+ sysDoctor = baseMapper.selectById(id);
if (sysDoctor != null) {
if (!sysDoctor.getIsAdminUser()) {
//现将普通人员设为管理角色
- sysRoleUser=new SysRoleUser();
+ sysRoleUser = new SysRoleUser();
sysRoleUser.setUserId(sysDoctor.getUserId());
sysRoleUser.setRoleId(CommonConstant.HOSPITAL_ADMIN_ID);
- queryWrapper=new QueryWrapper();
- queryWrapper.eq("user_id",sysDoctor.getUserId());
- queryWrapper.eq("role_id",CommonConstant.HOSPITAL_DOCTOR_ID);
+ queryWrapper = new QueryWrapper();
+ queryWrapper.eq("user_id", sysDoctor.getUserId());
+ queryWrapper.eq("role_id", CommonConstant.HOSPITAL_DOCTOR_ID);
sysUserRoleMapper.update(sysRoleUser, queryWrapper);
sysDoctor.setIsAdminUser(true);
- if (baseMapper.updateById(sysDoctor)>0) {
+ if (baseMapper.updateById(sysDoctor) > 0) {
return ResultBody.ok().data(true).msg("管理员设置成功!");
- }
- else
- {
+ } else {
return ResultBody.failed("设为管理失败!").data(false);
}
- }
- else
- {
+ } else {
return ResultBody.failed("设为管理失败,改用户就是管理员!").data(false);
}
- }
- else
- {
+ } else {
return ResultBody.failed("用户信息有误!").data(false);
}
- }
- else
- {
+ } else {
return ResultBody.failed("设为管理失败!").data(false);
}
- }
- else
- {
+ } else {
return ResultBody.failed("当前操作用户不是管理员!").data(false);
}
- }
- else
- {
+ } else {
return ResultBody.failed("用户信息有误!").data(false);
}
- }
- else
- {
+ } else {
return ResultBody.failed("业务参数有误!").data(false);
}
}
/**
* 判断用户名是否管理员
+ *
* @param userName
* @return
*/
@Override
public ResultBody userIsAdmin(String userName) {
if (StringUtils.isNotBlank(userName)) {
- SysDoctor sysDoctor= baseMapper.userIsAdmin(userName);
+ SysDoctor sysDoctor = baseMapper.userIsAdmin(userName);
if (sysDoctor != null) {
return ResultBody.ok().data(sysDoctor.getIsAdminUser());
- }
- else
- {
+ } else {
return ResultBody.failed().data(false);
}
- }else
- {
+ } else {
return ResultBody.failed("用户名不能为空!").data(false);
}
}
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysOrganizationServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysOrganizationServiceImpl.java
index d3795a3..49f6395 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysOrganizationServiceImpl.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysOrganizationServiceImpl.java
@@ -38,6 +38,7 @@
RedisUtils redisUtils;
@Autowired
SysUserOrgMapper sysUserOrgMapper;
+
/**
* 列表
*
@@ -137,6 +138,12 @@
@Override
public ResultBody getTree(Map<String, Object> params) {
List<SysOrganization> sysOrganizations = baseMapper.selectByMap(params);
+ //查询 ,父类为-1的;即顶级父类
+// params.put("org_parent_id",Long.valueOf("-1"));
+// List<SysOrganization> sysOrgs=baseMapper.selectByMap(params);
+// if (sysOrgs.isEmpty()) {
+// return ResultBody.ok().data(null);
+// }
List<Map<String, Object>> treeData = getTreeData(Long.valueOf("-1"), sysOrganizations);
return ResultBody.ok().data(treeData);
}
@@ -144,7 +151,7 @@
@Override
public int deleteByUserId(Long userId) {
Map<String, Object> params = new HashMap<>();
- params.put("userId", userId);
+ params.put("user_id", userId);
return sysUserOrgMapper.deleteByMap(params);
}
@@ -158,7 +165,7 @@
public List<Map<String, Object>> getTreeData(Long MyId, List<SysOrganization> sysOrganizations) {
List<Map<String, Object>> listMap = new ArrayList<>();
Map<Long, SysOrganization> collect = sysOrganizations.stream().collect(Collectors.toMap(SysOrganization::getId, SysOrganization -> SysOrganization));
- List<Long> idList = sysOrganizations.stream().filter(e -> e.getOrgParentId() == MyId).map(e -> e.getId()).collect(Collectors.toList());
+ List<Long> idList = sysOrganizations.stream().filter(e -> MyId.equals(e.getOrgParentId())).map(e -> e.getId()).collect(Collectors.toList());
for (Long id : idList
) {
Map<String, Object> map = new HashMap<>();
@@ -166,7 +173,9 @@
map.put("name", collect.get(id).getOrgName());
map.put("level", collect.get(id).getOrgLevel());
map.put("parentId", collect.get(id).getOrgParentId());
- List<Long> childs = sysOrganizations.stream().filter(e -> e.getOrgParentId() == id).map(e -> e.getId()).collect(Collectors.toList());
+ List<Long> childs = sysOrganizations.stream().filter(e ->
+ id.equals(e.getOrgParentId())
+ ).map(e -> e.getId()).collect(Collectors.toList());
if (childs.size() > 0) {
List<Map<String, Object>> treeData = getTreeData(id, sysOrganizations);
map.put("children", treeData);
@@ -230,7 +239,7 @@
List<SysOrganization> list = baseMapper.selectList(queryWrapper);
if (list.size() > 0) {
SysOrganization sysOrganizationLast = list.get(list.size() - 1);
- if(sysOrganizationLast.getOrgLevel()>=2){
+ if (sysOrganizationLast.getOrgLevel() >= 2) {
String orgCodeLast = sysOrganizationLast.getOrgCode();
//取前部分
String orgCodeLastQianZhui = orgCodeLast.substring(0, orgCodeLast.length() - 3);
@@ -240,7 +249,7 @@
str += (codenum + 1);
String substring = str.substring(str.length() - 3);
return orgCodeLastQianZhui + substring;
- }else {
+ } else {
String orgCodeLast = sysOrganizationLast.getOrgCode();
//取前部分
String orgCodeLastQianZhui = orgCodeLast.substring(0, orgCodeLast.length() - 7);
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java
index 2286aa9..5586df4 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java
@@ -1,10 +1,12 @@
package com.kidgrow.usercenter.controller;
+import com.kidgrow.common.annotation.LoginUser;
import com.kidgrow.common.controller.BaseController;
import com.kidgrow.common.model.PageResult;
import com.kidgrow.common.model.ResultBody;
import com.kidgrow.common.model.SysOrganization;
import com.kidgrow.common.utils.StringUtils;
+import com.kidgrow.common.model.SysUser;
import com.kidgrow.usercenter.model.SysDepartment;
import com.kidgrow.usercenter.service.ISysDepartmentService;
import com.kidgrow.usercenter.service.ISysOrganizationService;
@@ -110,7 +112,7 @@
@ApiOperation(value = "保存")
@PostMapping("/{hosId}")
@Transactional(rollbackFor = {Exception.class})
- public ResultBody save(@Valid @RequestBody SysDepartment sysDepartment,@PathVariable Long hosId, BindingResult bindingResult) {
+ public ResultBody save(@Valid @RequestBody SysDepartment sysDepartment,@PathVariable Long hosId, BindingResult bindingResult,@LoginUser SysUser sysUser) {
List<String> errMsg = new ArrayList<>();
if (bindingResult.hasErrors()) {
for (ObjectError error : bindingResult.getAllErrors()) {
@@ -143,6 +145,9 @@
sysOrganization.setOrgLevel(2);
//临时暂用其它字段承载数据
sysOrganization.setOrgParentId(sysDepartment.getUpdateUserId());
+ if(!sysUser.getOrganizations().isEmpty()){
+ sysOrganization.setCreateUserOrgCode(sysUser.getOrganizations().get(1).getOrgCode());
+ }
} else {
sysOrganization.setOrgName(sysDepartment.getDepartmentName());
}
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysHospitalController.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysHospitalController.java
index 50aa8a4..090a6ec 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysHospitalController.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysHospitalController.java
@@ -167,6 +167,9 @@
sysOrganization.setOrgAttr(1);
sysOrganization.setOrgLevel(1);
sysOrganization.setOrgParentId(DictionariesConstants.ORG_PARENT_ID);
+ if(!sysUser.getOrganizations().isEmpty()){
+ sysOrganization.setCreateUserOrgCode(sysUser.getOrganizations().get(1).getOrgCode());
+ }
} else {
sysOrganization.setOrgName(sysHospital.getHospitalName());
}
--
Gitblit v1.8.0