| | |
| | | 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; |
| | |
| | | |
| | | import javax.validation.Valid; |
| | | import java.util.ArrayList; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | |
| | | */ |
| | | @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"))); |
| | | public ResultBody checkDepName(Long hospitalId,String departmentName) { |
| | | if (departMentNameIsUsed(hospitalId,departmentName)) { |
| | | return ResultBody.failed().msg(String.format("该医院下已经存在科室 %s", departmentName)); |
| | | } |
| | | return ResultBody.ok().msg(""); |
| | | } |
| | | |
| | | /** |
| | | * 检查科室名是否存在 |
| | | * @param hosId |
| | | * @param departmentName |
| | | * @return |
| | | */ |
| | | private Boolean departMentNameIsUsed(Long hosId,String departmentName) |
| | | { |
| | | String departName=sysDepartmentService.checkDepartmentName(hosId,departmentName); |
| | | return StringUtils.isNotBlank(departName); |
| | | } |
| | | /** |
| | | * 新增or更新 |
| | | */ |
| | | @ApiOperation(value = "保存") |
| | | @PostMapping |
| | | @PostMapping("/{hosId}") |
| | | @Transactional(rollbackFor = {Exception.class}) |
| | | public ResultBody save(@Valid @RequestBody SysDepartment sysDepartment, 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()) { |
| | |
| | | } else { |
| | | //先检查该医院该科室是否已经存在 |
| | | if (sysDepartment.getId() == null) { |
| | | Map<String, Object> checkDepartment = new HashMap<String, Object>(); |
| | | checkDepartment.put("page", 1); |
| | | checkDepartment.put("limit", 1); |
| | | checkDepartment.put("departmentName", sysDepartment.getDepartmentName()); |
| | | if (sysDepartmentService.findList(checkDepartment).getData().size() > 0) { |
| | | |
| | | if (departMentNameIsUsed(hosId,sysDepartment.getDepartmentName())) { |
| | | return ResultBody.failed().msg(String.format("该医院下已经存在科室 %s", sysDepartment.getDepartmentName())); |
| | | } |
| | | } |
| | |
| | | sysOrganization.setOrgLevel(2); |
| | | //临时暂用其它字段承载数据 |
| | | sysOrganization.setOrgParentId(sysDepartment.getUpdateUserId()); |
| | | if(!sysUser.getOrganizations().isEmpty()){ |
| | | sysOrganization.setCreateUserOrgCode(sysUser.getOrganizations().get(1).getOrgCode()); |
| | | } |
| | | } else { |
| | | sysOrganization.setOrgName(sysDepartment.getDepartmentName()); |
| | | } |