From 76616400ee139c495f53ef727b26df27478c5c99 Mon Sep 17 00:00:00 2001 From: houruijun <411269194@kidgrow.com> Date: Sat, 08 Aug 2020 12:00:35 +0800 Subject: [PATCH] 调整运营统计部分接口 --- kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserOrgController.java | 73 ++++++++++++++++++++++++++++++++++-- 1 files changed, 69 insertions(+), 4 deletions(-) diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserOrgController.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserOrgController.java index 10e1c94..1efe30b 100644 --- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserOrgController.java +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserOrgController.java @@ -1,12 +1,17 @@ package com.kidgrow.usercenter.controller; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.kidgrow.common.annotation.LoginUser; import com.kidgrow.common.model.ResultBody; import com.kidgrow.common.model.SysOrganization; import com.kidgrow.common.model.SysUser; import com.kidgrow.common.model.SysUserOrg; +import com.kidgrow.usercenter.model.SysDepartment; +import com.kidgrow.usercenter.model.SysHospital; import com.kidgrow.usercenter.service.ISysOrganizationService; import com.kidgrow.usercenter.service.ISysUserOrgService; +import com.kidgrow.usercenter.service.impl.SysDepartmentServiceImpl; +import com.kidgrow.usercenter.service.impl.SysHospitalServiceImpl; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; @@ -29,6 +34,10 @@ private ISysUserOrgService sysUserOrgService; @Autowired private ISysOrganizationService sysOrganizationService; + @Autowired + private SysDepartmentServiceImpl sysDepartmentService; + @Autowired + private SysHospitalServiceImpl sysHospitalService; @PostMapping("getListByMap") public List<SysUserOrg> getListByMap(@RequestParam Map<String, Object> map) { @@ -57,16 +66,26 @@ if (bindingResult.hasErrors()) { return ResultBody.failed().msg(bindingResult.getFieldError().getDefaultMessage()); } else { - //先查出来父节点的信息 if (sysUserOrg.getUserId() != null) { String createUserOrgCode = ""; - List<SysOrganization> userOrgData = sysUser.getOrganizations(); + List<SysOrganization> userOrgData = new ArrayList<>(); + SysOrganization byId = sysOrganizationService.getById(sysUserOrg.getOrgId()); + if(byId==null){ + return ResultBody.failed().data(null).msg("该组织id异常"); + } + SysOrganization parentId = sysOrganizationService.getById(byId.getOrgParentId()); + userOrgData.add(parentId); + userOrgData.add(byId); + if(parentId==null){ + return ResultBody.failed().data(null).msg("该组织id异常"); + } if (userOrgData != null) { if (userOrgData.size() == 2) { createUserOrgCode = userOrgData.get(1).getOrgCode(); } } if (!createUserOrgCode.isEmpty()) { + //查出用户的所有组织关系数据 Map<String, Object> map = new HashMap<String, Object>(); map.put("user_id", sysUserOrg.getUserId()); List<SysUserOrg> userOrgList = sysUserOrgService.getListByMap(map); @@ -74,6 +93,30 @@ for (int i = 0; i < userOrgList.size(); i++) { if (sysUserOrg.getId().equals(userOrgList.get(i).getId())) { userOrgList.get(i).setOrgId(sysUserOrg.getOrgId()); + userOrgList.get(i).setFromLevel(2); + + //查询 科室 + QueryWrapper queryWrapper = new QueryWrapper(); + queryWrapper.eq("org_id", sysUserOrg.getUpdateUserId()); + queryWrapper.eq("is_del", 0); + queryWrapper.eq("enabled", 1); + List<SysDepartment> list = sysDepartmentService.list(queryWrapper); + if (!list.isEmpty()) { + userOrgList.get(i).setFromId(list.get(0).getId()); + } else { + userOrgList.get(i).setFromId(null); + } + } else { + QueryWrapper queryWrapper = new QueryWrapper(); + queryWrapper.eq("org_id", sysUserOrg.getUpdateUserId()); + queryWrapper.eq("is_del", 0); + queryWrapper.eq("enabled", 1); + List<SysHospital> listHospital = sysHospitalService.list(queryWrapper); + if (!listHospital.isEmpty()) { + userOrgList.get(i).setFromId(listHospital.get(0).getId()); + } + userOrgList.get(i).setFromLevel(1); + userOrgList.get(i).setOrgId(sysUserOrg.getUpdateUserId()); } userOrgList.get(i).setEnabled(sysUserOrg.getEnabled()); userOrgList.get(i).setCreateUserOrgCode(createUserOrgCode); @@ -89,15 +132,37 @@ sysUserOrgTemp.setUserId(sysUserOrg.getUserId()); sysUserOrgTemp.setEnabled(sysUserOrg.getEnabled()); sysUserOrgTemp.setCreateUserOrgCode(createUserOrgCode); - userOrgList.add(sysUserOrgTemp); + sysUserOrgTemp.setFromLevel(2); - sysUserOrg.setUpdateUserId(0L); + //查询 科室 + QueryWrapper queryWrapper = new QueryWrapper(); + queryWrapper.eq("org_id", sysUserOrg.getUpdateUserId()); + queryWrapper.eq("is_del", 0); + queryWrapper.eq("enabled", 1); + List<SysDepartment> list = sysDepartmentService.list(queryWrapper); + if (!list.isEmpty()) { + sysUserOrgTemp.setFromId(list.get(0).getId()); + } + userOrgList.add(sysUserOrgTemp); + //查询 医院 + queryWrapper = new QueryWrapper(); + queryWrapper.eq("org_id", sysUserOrg.getUpdateUserId()); + queryWrapper.eq("is_del", 0); + queryWrapper.eq("enabled", 1); + List<SysHospital> listHospital = sysHospitalService.list(queryWrapper); + if (!listHospital.isEmpty()) { + sysUserOrgTemp.setFromId(listHospital.get(0).getId()); + } + sysUserOrgTemp.setFromLevel(1); +// sysUserOrg.setUpdateUserId(0L); + sysUserOrg.setOrgId(sysOrganization.getOrgParentId()); sysUserOrg.setCreateUserOrgCode(createUserOrgCode); userOrgList.add(sysUserOrg); } else { return ResultBody.failed().data(null).msg("该组织的上级组织数据异常!"); } } + //查询 boolean v = sysUserOrgService.saveOrUpdateBatch(userOrgList); if (v) { return ResultBody.ok().data(sysUserOrg).msg("保存成功"); -- Gitblit v1.8.0