Jelajahi Sumber

优化代码

wangfeng 4 tahun lalu
induk
melakukan
546f9847ca

+ 37 - 0
src/main/java/com/diagbot/facade/PlanFacade.java

@@ -22,6 +22,7 @@ import com.diagbot.util.SysUserUtils;
 import com.diagbot.util.UserUtils;
 import com.diagbot.vo.HospitalPlanCancelVO;
 import com.diagbot.vo.HospitalPlanDetailSaveVO;
+import com.diagbot.vo.HospitalPlanIdVO;
 import com.diagbot.vo.HospitalPlanPageVO;
 import com.diagbot.vo.HospitalPlanSaveVO;
 import com.diagbot.vo.HospitalPlanVO;
@@ -276,4 +277,40 @@ public class PlanFacade extends PlanServiceImpl {
         data.setPlanDetailDefault(sysSetInfoData);
         return data;
     }
+
+    public List<SysPlanInfoDTO> getPlanInfoIds(HospitalPlanIdVO hospitalPlanIdVO) {
+        //查询该医院有没有相关方案配置
+        List<SysPlanInfoDTO> sysPlanInfoDTO = new ArrayList<>();
+        QueryWrapper<Plan> sysPlanInfo = new QueryWrapper<>();
+        sysPlanInfo.eq("is_deleted", IsDeleteEnum.N.getKey());
+        sysPlanInfo.eq("hospital_id", hospitalPlanIdVO.getHospitalId());
+        sysPlanInfo.eq("id", hospitalPlanIdVO.getId());
+        List<Plan> sysPlanInfoData = list(sysPlanInfo);
+        List<Long> planId = new ArrayList<>();
+        Long hospitalId = hospitalPlanIdVO.getHospitalId();
+        if (ListUtil.isNotEmpty(sysPlanInfoData)) {
+            sysPlanInfoDTO = BeanUtil.listCopyTo(sysPlanInfoData, SysPlanInfoDTO.class);
+            for (SysPlanInfoDTO data : sysPlanInfoDTO) {
+                planId.add(data.getId());
+            }
+        }
+        if(ListUtil.isEmpty(planId)){
+            throw new CommonException(CommonErrorCode.NOT_EXISTS, "该数据不存在!");
+        }
+        HospitalSetVO hospitalSetVO = new HospitalSetVO();
+        hospitalSetVO.setHospitalId(hospitalId);
+        hospitalSetVO.setPlanId(planId);
+        List<PlanDetailDTO> sysSetInfoData = sysSetFacade.getSysSetInfoData(hospitalSetVO);
+        //把父级和子级数据sysSetInfoData放在方案下
+        Map<Long, List<PlanDetailDTO>> dataMap = sysSetInfoData.stream().collect(Collectors.groupingBy(PlanDetailDTO::getPlanId));
+        for (Long key : dataMap.keySet()) {
+            for (SysPlanInfoDTO sysPlanInfos : sysPlanInfoDTO) {
+                if (sysPlanInfos.getId().equals(key)) {
+                    sysPlanInfos.setSysSetInfo(dataMap.get(key));
+                }
+            }
+        }
+
+        return sysPlanInfoDTO;
+    }
 }

+ 20 - 0
src/main/java/com/diagbot/vo/HospitalPlanIdVO.java

@@ -0,0 +1,20 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author wangfeng
+ * @Description:
+ * @date 2020-08-26 11:34
+ */
+@Setter
+@Getter
+public class HospitalPlanIdVO {
+    @NotNull(message = "请输入id")
+    private Long id;
+    @NotNull(message = "请输入医院id")
+    private Long hospitalId;
+}

+ 12 - 0
src/main/java/com/diagbot/web/PlanController.java

@@ -10,6 +10,7 @@ import com.diagbot.dto.RespDTO;
 import com.diagbot.dto.SysPlanInfoDTO;
 import com.diagbot.facade.PlanFacade;
 import com.diagbot.vo.HospitalPlanCancelVO;
+import com.diagbot.vo.HospitalPlanIdVO;
 import com.diagbot.vo.HospitalPlanPageVO;
 import com.diagbot.vo.HospitalPlanSaveVO;
 import com.diagbot.vo.HospitalPlanVO;
@@ -22,6 +23,7 @@ import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+import springfox.documentation.annotations.ApiIgnore;
 
 import javax.validation.Valid;
 import java.util.List;
@@ -75,6 +77,7 @@ public class PlanController {
     @PostMapping("/cancelPlanDatas")
     @SysLogger("cancelPlanDatas")
     @Transactional
+    @ApiIgnore
     public RespDTO<Boolean> cancelPlanDatas(@Valid @RequestBody HospitalPlanCancelVO hospitalPlanCancelVO) {
         boolean res = planFacade.cancelPlanData(hospitalPlanCancelVO);
         return RespDTO.onSuc(res);
@@ -84,6 +87,7 @@ public class PlanController {
     @PostMapping("/revStopPlans")
     @SysLogger("revStopPlans")
     @Transactional
+    @ApiIgnore
     public RespDTO<Boolean> revStopPlans(@Valid @RequestBody PlanRevStopVO planRevStopVO) {
         boolean res = planFacade.revStopPlan(planRevStopVO);
         return RespDTO.onSuc(res);
@@ -96,4 +100,12 @@ public class PlanController {
         return RespDTO.onSuc(planFacade.getDefaultPlan());
     }
 
+    @ApiOperation(value = "根据方案id获取配置信息[by:wangfeng]", notes = "id :方案编号  <br> ")
+    @PostMapping("/getPlanInfoIds")
+    @SysLogger("getPlanInfoIds")
+    public RespDTO<List<SysPlanInfoDTO>> getPlanInfoIds(@Valid @RequestBody HospitalPlanIdVO hospitalPlanIdVO) {
+        List<SysPlanInfoDTO> data = planFacade.getPlanInfoIds(hospitalPlanIdVO);
+        return RespDTO.onSuc(data);
+    }
+
 }

+ 3 - 0
src/main/java/com/diagbot/web/PlanDetailController.java

@@ -17,6 +17,7 @@ import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+import springfox.documentation.annotations.ApiIgnore;
 
 import javax.validation.Valid;
 import java.util.List;
@@ -59,6 +60,7 @@ public class PlanDetailController {
     @PostMapping("/cancelPlanDetails")
     @SysLogger("cancelPlanDetails")
     @Transactional
+    @ApiIgnore
     public RespDTO<Boolean> cancelPlanDetails(@Valid @RequestBody PlanDetailCancelVO planDetailCancelVO) {
         boolean res = planDetailFacade.cancelPlanDetail(planDetailCancelVO);
         return RespDTO.onSuc(res);
@@ -68,6 +70,7 @@ public class PlanDetailController {
     @PostMapping("/revStopPlanDetails")
     @SysLogger("revStopPlanDetails")
     @Transactional
+    @ApiIgnore
     public RespDTO<Boolean> revStopPlanDetails(@Valid @RequestBody PlanDetailRevStopVO planDetailRevStopVO) {
         boolean res = planDetailFacade.revStopPlanDetail(planDetailRevStopVO);
         return RespDTO.onSuc(res);