From ec0f2528f83ee7c6ec64537d561a697ffff5b5c3 Mon Sep 17 00:00:00 2001 From: 侯瑞军 <411269194@kidgrow.com> Date: Tue, 21 Apr 2020 15:27:04 +0800 Subject: [PATCH] 1.组织,医院,科室的编辑业务调整,增加了联动编辑功能(创建医院自动创建组织数据,修改同理) 2.重新优化,调整了医院/科室编辑过程中对名称的检查,数据间依赖关系的调整 3.调整优化了区域联动插件,自动完成插件的通用性 --- kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java | 86 +++++++++++++++++++++++++++++++++---------- 1 files changed, 66 insertions(+), 20 deletions(-) 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 e06449c..08b11d1 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 @@ -3,8 +3,10 @@ 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.usercenter.model.SysDepartment; import com.kidgrow.usercenter.service.ISysDepartmentService; +import com.kidgrow.usercenter.service.ISysOrganizationService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; @@ -17,12 +19,14 @@ import javax.validation.Valid; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Map; /** * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br> + * * @Description: 科室表 * @Project: 用户中心 * @CreateDate: Created in 2020-04-02 18:32:36 <br> @@ -33,9 +37,11 @@ @RestController @RequestMapping("/sysdepartment") @Api(tags = "科室表") -public class SysDepartmentController extends BaseController{ +public class SysDepartmentController extends BaseController { @Autowired private ISysDepartmentService sysDepartmentService; + @Autowired + private ISysOrganizationService sysOrganizationService; /** * 列表 @@ -47,9 +53,9 @@ }) @GetMapping public ResultBody<PageResult> list(@RequestParam Map<String, Object> params) { - if(params.size()==0){ - params.put("page",1); - params.put("limit",10); + if (params.size() == 0) { + params.put("page", 1); + params.put("limit", 10); } return ResultBody.ok().data(sysDepartmentService.findList(params)); } @@ -75,31 +81,71 @@ } /** + * 检查科室名是否存在 + */ + @ApiOperation(value = "检查科室名是否存在") + @GetMapping("/checkName") + public ResultBody checkDepName(@RequestParam Map<String, Object> params) { + params.put("page", 1); + params.put("limit", 1); + if (sysDepartmentService.findList(params).getData().size()>0) { + return ResultBody.failed().msg(String.format("该医院下已经存在科室 %s", params.get("departmentName"))); + } + return ResultBody.ok().msg(""); + } + + /** * 新增or更新 */ @ApiOperation(value = "保存") @PostMapping public ResultBody save(@Valid @RequestBody SysDepartment sysDepartment, BindingResult bindingResult) { - List<String> errMsg= new ArrayList<>(); + List<String> errMsg = new ArrayList<>(); if (bindingResult.hasErrors()) { for (ObjectError error : bindingResult.getAllErrors()) { errMsg.add(error.getDefaultMessage()); } return ResultBody.failed().msg(errMsg.toString()); } else { - //先检查该医院下的该科室名是否已经存在? - SysDepartment sysDepartmentTemp=new SysDepartment(); - sysDepartmentTemp.setHospitalId(sysDepartment.getHospitalId()); - sysDepartmentTemp.setDepartmentName(sysDepartment.getDepartmentName().trim()); - sysDepartmentTemp=sysDepartmentService.findByObject(sysDepartmentTemp); - if (sysDepartmentTemp!=null) { - return ResultBody.failed().msg(String.format("该医院下已经存在 %s",sysDepartment.getDepartmentName())); + //先检查该医院该科室是否已经存在 + Map<String, Object> checkDepartment=new HashMap<String,Object>(); + checkDepartment.put("page", 1); + checkDepartment.put("limit", 1); + checkDepartment.put("hospitalId",sysDepartment.getHospitalId()); + checkDepartment.put("departmentName",sysDepartment.getDepartmentName()); + if (sysDepartmentService.findList(checkDepartment).getData().size()>0) { + return ResultBody.failed().msg(String.format("该医院下已经存在科室 %s", sysDepartment.getDepartmentName())); } - boolean v= sysDepartmentService.saveOrUpdate(sysDepartment); - if(v) { + //先检查是否存在组织信息 + SysOrganization sysOrganization=new SysOrganization(); + if(sysDepartment.getOrgId()!=null){ + sysOrganization.setId(sysDepartment.getOrgId());} + else{ + sysOrganization.setOrgName(sysDepartment.getDepartmentName()); + //临时暂用其它字段承载数据 + sysOrganization.setOrgParentId(sysDepartment.getUpdateUserId()); + } + sysOrganization=sysOrganizationService.findByObject(sysOrganization); + if(sysOrganization==null) + { + //创建一个组织 + sysOrganization=new SysOrganization(); + sysOrganization.setOrgName(sysDepartment.getDepartmentName()); + sysOrganization.setOrgAttr(2); + sysOrganization.setOrgLevel(2); + //临时暂用其它字段承载数据 + sysOrganization.setOrgParentId(sysDepartment.getUpdateUserId()); + } + else + { + sysOrganization.setOrgName(sysDepartment.getDepartmentName()); + } + boolean org=sysOrganizationService.saveOrUpdate(sysOrganization); + sysDepartment.setOrgId(sysOrganization.getId()); + boolean v = sysDepartmentService.saveOrUpdate(sysDepartment); + if (v) { return ResultBody.ok().data(sysDepartment).msg("保存成功"); - } - else { + } else { return ResultBody.failed().msg("保存失败"); } } @@ -111,17 +157,17 @@ @ApiOperation(value = "删除") @DeleteMapping("/{id}") public ResultBody delete(@PathVariable Long id) { - boolean v= sysDepartmentService.removeById(id); - if(v) { + boolean v = sysDepartmentService.removeById(id); + if (v) { return ResultBody.ok().msg("删除成功"); - } - else { + } else { return ResultBody.failed().msg("删除失败"); } } /** * 根据医院获取 组织,通过组织,获取科室; + * * @param params * @return */ -- Gitblit v1.8.0