فهرست منبع

预问诊统计症状接口

zhoutg 5 سال پیش
والد
کامیت
ef810136a6

+ 5 - 0
bi-service/src/main/java/com/diagbot/client/PrecmanServiceClient.java

@@ -1,7 +1,10 @@
 package com.diagbot.client;
 
 import com.diagbot.client.hystrix.PrecmanServiceHystrix;
+import com.diagbot.dto.PrecCountDTO;
+import com.diagbot.dto.RespDTO;
 import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.PostMapping;
 
 /**
  * @Description: 调用智能预问诊后台
@@ -11,4 +14,6 @@ import org.springframework.cloud.openfeign.FeignClient;
 @FeignClient(value = "precman-service", fallback = PrecmanServiceHystrix.class)
 public interface PrecmanServiceClient {
 
+    @PostMapping("/count_prec/getCount")
+    RespDTO<PrecCountDTO> getCount();
 }

+ 7 - 0
bi-service/src/main/java/com/diagbot/client/hystrix/PrecmanServiceHystrix.java

@@ -1,6 +1,8 @@
 package com.diagbot.client.hystrix;
 
 import com.diagbot.client.PrecmanServiceClient;
+import com.diagbot.dto.PrecCountDTO;
+import com.diagbot.dto.RespDTO;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Component;
 
@@ -13,4 +15,9 @@ import org.springframework.stereotype.Component;
 @Slf4j
 public class PrecmanServiceHystrix implements PrecmanServiceClient {
 
+    @Override
+    public RespDTO<PrecCountDTO> getCount() {
+        log.error("【hystrix】调用{}异常", "getCount");
+        return null;
+    }
 }

+ 18 - 0
bi-service/src/main/java/com/diagbot/dto/PrecCountDTO.java

@@ -0,0 +1,18 @@
+package com.diagbot.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @description: 返回预问诊统计内容
+ * @author: zhoutg
+ * @date: 2019/10/15 14:22
+ */
+@Getter
+@Setter
+public class PrecCountDTO {
+
+    @ApiModelProperty(value = "症状数量")
+    private int symptomNum;
+}

+ 1 - 0
precman-service/src/main/java/com/diagbot/config/ResourceServerConfigurer.java

@@ -28,6 +28,7 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
                 .regexMatchers(".*swagger.*", ".*v2.*", ".*webjars.*", "/druid.*", "/actuator.*", "/hystrix.*").permitAll()
                 .antMatchers("/file_prec/uploadImage").permitAll()
                 .antMatchers("/dictionaryInfo_prec/getList").permitAll()
+                .antMatchers("/count_prec/getCount").permitAll()
                 .antMatchers("/**").authenticated();
 //                .antMatchers("/**").permitAll();
     }

+ 1 - 0
precman-service/src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java

@@ -91,6 +91,7 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                 || matchers("/hystrix/**", request)
                 || matchers("/file_prec/uploadImage", request)
                 || matchers("/dictionaryInfo_prec/getList", request)
+                || matchers("/count_prec/getCount", request)
                 || matchers("/", request)) {
             return true;
         }

+ 17 - 0
precman-service/src/main/java/com/diagbot/dto/PrecCountDTO.java

@@ -0,0 +1,17 @@
+package com.diagbot.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+/**
+ * @description: 返回预问诊统计内容
+ * @author: zhoutg
+ * @date: 2019/10/15 14:22
+ */
+@Getter
+@Setter
+public class PrecCountDTO {
+
+    @ApiModelProperty(value = "症状数量")
+    private int symptomNum;
+}

+ 38 - 0
precman-service/src/main/java/com/diagbot/facade/CountFacade.java

@@ -0,0 +1,38 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.PrecCountDTO;
+import com.diagbot.entity.QuestionInfo;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.enums.QuestionTypeEnum;
+import com.diagbot.enums.TagTypeEnum;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Description:
+ * @Author:zhoutg
+ * @time: 2018/11/23 11:37
+ */
+@Component
+public class CountFacade {
+
+    @Autowired
+    QuestionFacade questionFacade;
+
+    /**
+     * 返回统计信息
+     *
+     * @return
+     */
+    public PrecCountDTO getCount() {
+        PrecCountDTO precCountDTO = new PrecCountDTO();
+        int symptomNum = questionFacade.count(new QueryWrapper<QuestionInfo>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("type", QuestionTypeEnum.Symptom.getKey())
+                .eq("tag_type", TagTypeEnum.T6.getKey())
+        );
+        precCountDTO.setSymptomNum(symptomNum);
+        return precCountDTO;
+    }
+}

+ 41 - 0
precman-service/src/main/java/com/diagbot/web/CountController.java

@@ -0,0 +1,41 @@
+package com.diagbot.web;
+
+
+import com.diagbot.annotation.SysLogger;
+import com.diagbot.dto.PrecCountDTO;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.facade.CountFacade;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ * 统计 前端控制器
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2018-12-25
+ */
+@RequestMapping("/count_prec")
+@RestController
+@SuppressWarnings("unchecked")
+@Api(value = "预问诊统计API", tags = { "预问诊统计API" })
+public class CountController {
+
+
+    @Autowired
+    CountFacade countFacade;
+
+    @ApiOperation(value = "返回预问诊统计信息[by:zhoutg]",
+            notes = "")
+    @PostMapping("/getCount")
+    @SysLogger("getCount")
+    public RespDTO<PrecCountDTO> getCount() {
+        PrecCountDTO data = countFacade.getCount();
+        return RespDTO.onSuc(data);
+    }
+}