瀏覽代碼

设置是否是父节点的判断

ljx 4 年之前
父節點
當前提交
91149546a0

+ 1 - 1
src/main/java/com/imed/costaccount/model/dto/DepartmentRequest.java

@@ -20,7 +20,7 @@ public class DepartmentRequest {
     @NotNull(message = "科室名称不能为空")
     private String departmentName;
     @ApiModelProperty(name = "departmentCode",value = "科室的代码")
-    @NotNull(message = "科室Id不能为空")
+    @NotNull(message = "科室代码不能为空")
     private String departmentCode;
     @ApiModelProperty(name = "hospId",value = "医院的Id")
     private Integer hospId;

+ 2 - 1
src/main/java/com/imed/costaccount/model/vo/CenterDepartmentVO.java

@@ -2,7 +2,6 @@ package com.imed.costaccount.model.vo;
 
 import com.fasterxml.jackson.annotation.JsonInclude;
 import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.util.List;
@@ -20,6 +19,8 @@ public class CenterDepartmentVO {
     @JsonInclude(JsonInclude.Include.NON_NULL)
     private List<DepartVO> departments;
 
+    private Boolean isParent;
+
     @JsonInclude(JsonInclude.Include.NON_NULL)
     private List<CenterDepartmentVO> child;
 }

+ 10 - 2
src/main/java/com/imed/costaccount/service/impl/DepartmentServiceImpl.java

@@ -17,10 +17,13 @@ import org.apache.shiro.SecurityUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
 import org.springframework.util.StringUtils;
 
 import java.util.List;
+import java.util.Map;
 import java.util.Objects;
+import java.util.stream.Collectors;
 
 @Service("departmentService")
 public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Department> implements DepartmentService {
@@ -75,10 +78,15 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
     @Override
     @Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
     public void addDepartment(DepartmentRequest departmentRequest) {
-        // 查询所有的科室信息
-//        baseMapper.selectList(new QueryWrapper<Department>().lambda().eq())
         User user = (User) SecurityUtils.getSubject().getPrincipal();
         Integer hospId = user.getHospId();
+        // 查询所有的科室信息
+        List<Department> departmentList = baseMapper.selectList(new QueryWrapper<Department>().lambda().eq(Department::getHospId, hospId));
+        Map<String, List<Department>> map =
+                departmentList.stream().collect(Collectors.groupingBy(Department::getDepartmentCode));
+        if (!CollectionUtils.isEmpty(map.get(departmentRequest.getDepartmentCode()))){
+            throw new CostException(500,"代码"+departmentRequest.getDepartmentCode()+"已存在");
+        }
         departmentRequest.setHospId(hospId);
         Department department = BeanUtil.convertObj(departmentRequest, Department.class);
         department.setId(null);

+ 2 - 0
src/main/java/com/imed/costaccount/service/impl/ResponsibilityServiceImpl.java

@@ -239,11 +239,13 @@ public class ResponsibilityServiceImpl extends ServiceImpl<ResponsibilityMapper,
             CenterDepartmentVO centerDepartmentVO = new CenterDepartmentVO();
             centerDepartmentVO.setResponsibilityId(parent.getId());
             centerDepartmentVO.setResponsibilityName(parent.getResponsibilityName());
+            centerDepartmentVO.setIsParent(true);
             for (Responsibility son : sonList) {
                 CenterDepartmentVO sonVO = new CenterDepartmentVO();
                 if (parent.getId().equals(son.getParentId())) {
                     sonVO.setResponsibilityId(son.getId());
                     sonVO.setResponsibilityName(son.getResponsibilityName());
+                    sonVO.setIsParent(false);
                     List<CenterDepartmentVO> child = centerDepartmentVO.getChild();
                     if (CollUtil.isEmpty(child)) {
                         child = new ArrayList<>();

+ 1 - 1
src/main/java/com/imed/costaccount/web/DepartmentController.java

@@ -75,7 +75,7 @@ public class DepartmentController {
      */
     @PostMapping("/update")
     @ApiOperation("修改科室信息")
-    public Result update(@RequestBody DepartmentRequest departmentRequest){
+    public Result update(@RequestBody @Valid DepartmentRequest departmentRequest){
 		departmentService.updateByDepartment(departmentRequest);
         return Result.ok();
     }