From ff02c7d8e92b54657b5d30bf74349a5ccf8a5af4 Mon Sep 17 00:00:00 2001
From: dougang <78125310@kidgrow.com>
Date: Tue, 24 Nov 2020 17:41:52 +0800
Subject: [PATCH] 1、增加医院分客户端查询功能(C端使用) 2、增加机构分客户端通过医院ID查询功能(C端使用)

---
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/SreeningOrganizationService.java                         |    8 ++
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/ScreeningHospitalService.java                            |   39 +++++++++++++
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/fallback/ScreeningHospitalServiceFallbackFactory.java    |   38 ++++++++++++
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ScreeningOrganizationInfoMapper.java                    |    7 ++
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/fallback/ScreeningOrganizatonServiceFallbackFactory.java |    5 +
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ScreeningOrganizationInfoMapper.xml                                           |    7 ++
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ScreeningOrganizationInfoServiceImpl.java         |   10 +++
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ScreeningOrganizationInfoController.java         |   13 ++++
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IScreeningOrganizationInfoService.java                 |    8 ++
 9 files changed, 135 insertions(+), 0 deletions(-)

diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/ScreeningHospitalService.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/ScreeningHospitalService.java
new file mode 100644
index 0000000..d3ace94
--- /dev/null
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/ScreeningHospitalService.java
@@ -0,0 +1,39 @@
+package com.kidgrow.oprationcenter.feign;
+
+import com.kidgrow.common.constant.ServiceNameConstants;
+import com.kidgrow.common.model.PageResult;
+import com.kidgrow.common.model.ResultBody;
+import com.kidgrow.oprationcenter.feign.fallback.ScreeningHospitalServiceFallbackFactory;
+import com.kidgrow.oprationcenter.model.HospitalScreening;
+import com.kidgrow.ribbon.config.FeignHttpInterceptorConfig;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import java.util.Map;
+
+/**
+ * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br>
+ *
+ * @Description: <br>
+ * @Project: <br>
+ * @CreateDate: Created in 2020/11/16 15:54 <br>
+ * @Author: <a href="78125310@kidgrow.com">dougang</a>
+ */
+@FeignClient(value = ServiceNameConstants.OPRATION_SERVER,configuration= FeignHttpInterceptorConfig.class,
+        fallbackFactory = ScreeningHospitalServiceFallbackFactory.class, decode404 = true)
+public interface ScreeningHospitalService {
+    /**
+     *
+     * @param hospitalScreening
+     * @return
+     */
+    @PostMapping(value = "/hospitalscreening/query")
+    ResultBody findByObject(@RequestBody HospitalScreening hospitalScreening);
+
+    @GetMapping(value = "/hospitalscreening")
+    PageResult<HospitalScreening> list(@RequestParam Map<String, Object> params);
+
+}
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/SreeningOrganizationService.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/SreeningOrganizationService.java
index 8816ab1..8ae42f9 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/SreeningOrganizationService.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/SreeningOrganizationService.java
@@ -25,4 +25,12 @@
      */
     @PostMapping(value = "/screeningorganizationinfo/query")
     ResultBody findByObject(@RequestBody ScreeningOrganizationInfo organizationInfo);
+
+    /**
+     *
+     * @param id
+     * @return
+     */
+    @PostMapping(value = "/screeningorganizationinfo/getOrganizationListByHospitalId")
+    ResultBody getOrganizationListByHospitalId(@RequestBody String id);
 }
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/fallback/ScreeningHospitalServiceFallbackFactory.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/fallback/ScreeningHospitalServiceFallbackFactory.java
new file mode 100644
index 0000000..1c1f76f
--- /dev/null
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/fallback/ScreeningHospitalServiceFallbackFactory.java
@@ -0,0 +1,38 @@
+package com.kidgrow.oprationcenter.feign.fallback;
+
+
+import com.kidgrow.common.model.PageResult;
+import com.kidgrow.common.model.ResultBody;
+import com.kidgrow.oprationcenter.feign.ScreeningHospitalService;
+import com.kidgrow.oprationcenter.model.HospitalScreening;
+import feign.hystrix.FallbackFactory;
+import org.springframework.stereotype.Component;
+
+import java.util.Map;
+
+/**
+ * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br>
+ *
+ * @Description: <br>
+ * @Project: <br>
+ * @CreateDate: Created in 2020/11/16 15:58 <br>
+ * @Author: <a href="78125310@kidgrow.com">dougang</a>
+ */
+@Component
+public class ScreeningHospitalServiceFallbackFactory implements FallbackFactory<ScreeningHospitalService> {
+
+    @Override
+    public ScreeningHospitalService create(Throwable throwable) {
+        return new ScreeningHospitalService(){
+            @Override
+            public ResultBody findByObject(HospitalScreening hospitalScreening) {
+                return ResultBody.failed().msg("分客户端,获取医院失败");
+            }
+
+            @Override
+            public PageResult<HospitalScreening> list(Map<String, Object> params) {
+                return PageResult.<HospitalScreening>builder().code(1000).build();
+            }
+        };
+    }
+}
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/fallback/ScreeningOrganizatonServiceFallbackFactory.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/fallback/ScreeningOrganizatonServiceFallbackFactory.java
index c618ec2..aced7a7 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/fallback/ScreeningOrganizatonServiceFallbackFactory.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/feign/fallback/ScreeningOrganizatonServiceFallbackFactory.java
@@ -26,6 +26,11 @@
             public ResultBody findByObject(ScreeningOrganizationInfo organizationInfo) {
                 return ResultBody.failed().msg("saveProductDetail的FeignClient调用失败");
             }
+
+            @Override
+            public ResultBody getOrganizationListByHospitalId(String id) {
+                return ResultBody.failed().msg("getOrganizationListByHospitalId的FeignClient调用失败");
+            }
         };
     }
 }
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ScreeningOrganizationInfoMapper.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ScreeningOrganizationInfoMapper.java
index 2de1e28..404a753 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ScreeningOrganizationInfoMapper.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ScreeningOrganizationInfoMapper.java
@@ -31,4 +31,11 @@
      * @return OrganizationInfo对象
      */
     ScreeningOrganizationInfo findByObject(@Param("p") ScreeningOrganizationInfo organizationInfo);
+
+    /**
+     * 通过医院ID查询机构列表
+     * @param id
+     * @return
+     */
+    List<ScreeningOrganizationInfo> findByHospitalId(@Param("t") Long id);
 }
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IScreeningOrganizationInfoService.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IScreeningOrganizationInfoService.java
index 64b47fb..d8f652c 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IScreeningOrganizationInfoService.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IScreeningOrganizationInfoService.java
@@ -4,6 +4,7 @@
 import com.kidgrow.common.service.ISuperService;
 import com.kidgrow.oprationcenter.model.ScreeningOrganizationInfo;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -29,5 +30,12 @@
     * @return OrganizationInfo对象
     */
     ScreeningOrganizationInfo findByObject(ScreeningOrganizationInfo organizationInfo);
+
+    /**
+     * 通过医院ID查询机构列表
+     * @param id
+     * @return
+     */
+    List<ScreeningOrganizationInfo> findByHospitalId(Long id);
 }
 
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ScreeningOrganizationInfoServiceImpl.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ScreeningOrganizationInfoServiceImpl.java
index b25b2a9..8e4c8e9 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ScreeningOrganizationInfoServiceImpl.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ScreeningOrganizationInfoServiceImpl.java
@@ -46,4 +46,14 @@
         return baseMapper.findByObject(organizationInfo);
     }
 
+    /**
+     * 根据OrganizationInfo对象当做查询条件进行查询
+     * @param id
+     * @return OrganizationInfo
+     */
+    @Override
+    public List<ScreeningOrganizationInfo> findByHospitalId(Long id){
+        return baseMapper.findByHospitalId(id);
+    }
+
 }
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ScreeningOrganizationInfoMapper.xml b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ScreeningOrganizationInfoMapper.xml
index 2bf20e9..9b87cf7 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ScreeningOrganizationInfoMapper.xml
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ScreeningOrganizationInfoMapper.xml
@@ -98,4 +98,11 @@
         <include refid="where"/>
         order by id desc
     </select>
+
+    <select id="findByHospitalId" resultType="com.kidgrow.oprationcenter.model.ScreeningOrganizationInfo" parameterType="java.lang.Long">
+        select
+        <include refid="Column_List"/>
+        from screening_organization_info
+        where source_hospital_id=#{t}
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ScreeningOrganizationInfoController.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ScreeningOrganizationInfoController.java
index 0a12b38..07ebabc 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ScreeningOrganizationInfoController.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ScreeningOrganizationInfoController.java
@@ -266,4 +266,17 @@
             e.printStackTrace();
         }
     }
+
+    /**
+     * 通过医院ID查询机构列表
+     */
+    @ApiOperation(value = "通过医院ID查询机构列表")
+    @PostMapping("/getOrganizationListByHospitalId")
+    public ResultBody getOrganizationListByHospitalId(@RequestBody String id) {
+        List<ScreeningOrganizationInfo> byHospitalId = organizationInfoService.findByHospitalId(Long.valueOf(id));
+        if(byHospitalId != null && byHospitalId.size() > 0){
+            return ResultBody.ok().data(byHospitalId).msg("查询成功");
+        }
+        return ResultBody.failed().msg("查询失败");
+    }
 }

--
Gitblit v1.8.0