Bladeren bron

四川肿瘤温控接口

huangws 8 maanden geleden
bovenliggende
commit
22de5e4e46

+ 5 - 0
GetDataByRESTful/pom.xml

@@ -41,6 +41,11 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>
         </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-databind</artifactId>
+            <version>2.13.0</version>
+        </dependency>
     </dependencies>
     <dependencyManagement>
         <dependencies>

+ 5 - 5
GetDataByRESTful/src/main/java/com/jyxt/getdatabyrestful/GetDataByRESTfulApplication.java

@@ -1,8 +1,6 @@
 package com.jyxt.getdatabyrestful;
 
 import com.jyxt.getdatabyrestful.service.IBPSService;
-import com.jyxt.getdatabyrestful.view.TemperatureEntity;
-import com.jyxt.getdatabyrestful.view.repository.TemperatureEntityRepository;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -11,8 +9,6 @@ import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.context.ConfigurableApplicationContext;
 
-import java.util.List;
-
 @SpringBootApplication
 public class GetDataByRESTfulApplication implements CommandLineRunner {
 
@@ -29,10 +25,14 @@ public class GetDataByRESTfulApplication implements CommandLineRunner {
     @Autowired
     IBPSService ibpsService;
 
+    @Autowired
+    HandleData handleData;
+
     @Override
     public void run(String... args) throws Exception{
         log.info("<-------------new turn start...------------->");
-        ibpsService.QryUndoData();
+        handleData.getAllData();
+//        ibpsService.QryUndoData();
         context.close(); // 直接关闭上下文
         log.info("<-------------this turn finish...------------->");
     }

+ 142 - 0
GetDataByRESTful/src/main/java/com/jyxt/getdatabyrestful/HandleData.java

@@ -0,0 +1,142 @@
+package com.jyxt.getdatabyrestful;
+
+import com.fasterxml.jackson.core.type.TypeReference;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.jyxt.getdatabyrestful.service.ApiClientService;
+import com.jyxt.getdatabyrestful.view.repository.TemperatureEntityRepository;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Component;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+@Component
+public class HandleData {
+    private static final Logger log = LoggerFactory.getLogger(GetDataByRESTfulApplication.class);
+
+    private final ObjectMapper objectMapper = new ObjectMapper();  // 修复点:声明并初始化
+
+    @Autowired
+    private ApiClientService apiClientService;
+
+    @Autowired
+    private TemperatureEntityRepository temperatureEntityRepository;
+
+    @Value("${UrlAddr}")
+    private String UrlAddr;
+
+    @Value("${loginKey}")
+    private String loginKey;
+
+    public void startHandleData(String ID,String Bianzhishijian,String EntityName) {
+        log.info("ID: {}, Bianzhishijian: {}, EntityName: {}", ID, Bianzhishijian, EntityName);
+//        String retVal = apiClientService.sendGet("https://petstore-demo.apifox.com/pet/1");
+//        System.out.println(retVal);
+        System.out.println("---------------------------------------------------------------");
+        Map<String, Object> params = new HashMap<>();
+        params.put("loginName", "h241021fkj");  // 替换为实际值
+        params.put("password", "h241021fkj");    // 替换为实际值
+        String retVal2 = apiClientService.sendPost(UrlAddr+"/api/getToken",params);
+        System.out.println(retVal2);
+//        apiClientService.callThirdPartyApi(ID, Bianzhishijian, EntityName)
+//                .doOnNext(response -> {
+//                    if(response.isSuccess()) {
+//                        log.info("处理成功数据: {}", response.getData());
+//                        // 业务处理逻辑
+//                    } else {
+//                        log.warn("业务异常: {}", response.getMessage());
+//                    }
+//                })
+//                .doOnError(e -> log.error("处理失败", e))
+//                .subscribe(
+//                    response -> {}, // 成功处理(通常留空,因已用 doOnNext)
+//                    error -> log.error("全局捕获:", error) // 兜底异常处理
+//                );
+
+    }
+
+    public void getAllData(){
+//        System.out.println("---------------------------------------------------------------");
+        String urlStr = UrlAddr+"api/getToken?"+loginKey;
+        log.info("1:url: {}", urlStr);
+        String retVal = apiClientService.sendGet(urlStr);
+        log.info("1:retVal: {}", retVal);
+        String token = "";
+        try {
+            // 解析JSON字符串
+            ObjectMapper mapper = new ObjectMapper();
+            Map<String, Object> response = mapper.readValue(retVal, new TypeReference<Map<String, Object>>() {});
+
+            // 提取data字段
+            Map<String, Object> data = (Map<String, Object>) response.get("data");
+            if (data != null) {
+                token = (String) data.get("token"); // 提取token值
+                log.info("Extracted token: {}", token);
+            } else {
+                log.error("'data' field is missing in response");
+            }
+        } catch (Exception e) {
+            log.error("JSON parsing failed", e);
+        }
+        if (!token.isEmpty()) {
+            log.info("2: Requesting group list with token in header");
+            // 设置请求头
+            Map<String, String> headers = new HashMap<>();
+            headers.put("authorization", token);  // 关键修改:使用header传递token
+
+            // 发送带header的GET请求
+            retVal = apiClientService.sendGetWithHeaders(
+                    UrlAddr + "api/data/getRealTimeData",
+                    headers
+            );
+            log.info("2:retVal: {}", retVal);
+            try {
+                // 解析JSON响应
+                JsonNode rootNode = objectMapper.readTree(retVal);
+
+                // 检查状态码或message
+                if (rootNode.has("message") && "获取成功".equals(rootNode.get("message").asText())) {
+                    JsonNode dataNode = rootNode.get("data");
+
+                    if (dataNode.isArray()) {
+                        for (JsonNode groupNode : dataNode) {
+                            String deviceName = groupNode.has("deviceName")?groupNode.get("deviceName").asText() : "未知设备";
+                            String deviceAddr = groupNode.has("deviceAddr") ?String.valueOf(groupNode.get("deviceAddr").asInt()) : "未知地址";
+                            String deviceStatus = groupNode.has("deviceStatus")?groupNode.get("deviceStatus").asText() : "未知状态";
+                            JsonNode dataItem = groupNode.get("dataItem");
+
+                            if(!Objects.equals(dataItem.toString(), "null") && dataItem.isArray() && Objects.equals(deviceStatus, "normal")) {
+                                for (JsonNode registerItem : dataItem) {
+                                    if (registerItem.has("registerItem") && registerItem.get("registerItem").isArray()) {
+                                        for (JsonNode item : registerItem.get("registerItem")) {
+                                            String registerName = item.has("registerName")?item.get("registerName").asText() : "未命名寄存器";
+                                            String data = item.has("data")?item.get("data").asText() : "无数据";
+                                            log.info("deviceName: {}, deviceAddr: {}, registerName: {}, data: {}",deviceName, deviceAddr, registerName, data);
+
+
+                                        }
+                                    }
+                                }
+                            }
+                        }
+                    } else {
+                        log.warn("Data field is not an array!");
+                    }
+                } else {
+                    String errMsg = rootNode.has("message") ?
+                            rootNode.get("message").asText() : "Unknown error";
+                    log.error("API request failed: {}", errMsg);
+                }
+            } catch (Exception e) {
+                log.error("JSON parsing failed", e);
+            }
+        }
+    }
+
+}

+ 23 - 3
GetDataByRESTful/src/main/java/com/jyxt/getdatabyrestful/service/ApiClientService.java

@@ -5,12 +5,12 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
-import org.springframework.http.HttpEntity;
-import org.springframework.http.HttpHeaders;
-import org.springframework.http.MediaType;
+import org.springframework.http.*;
 import org.springframework.stereotype.Service;
 import org.springframework.web.client.RestTemplate;
 
+import java.util.Map;
+
 
 @Service
 public class ApiClientService {
@@ -44,5 +44,25 @@ public class ApiClientService {
         return RetVal;
     }
 
+    public String sendGetWithHeaders(String url, Map<String, String> headers) {
+        RestTemplate restTemplate = new RestTemplate();
+
+        // 创建请求头
+        HttpHeaders httpHeaders = new HttpHeaders();
+        headers.forEach(httpHeaders::add);
+
+        // 创建请求实体
+        HttpEntity<String> entity = new HttpEntity<>(httpHeaders);
+
+        // 发送请求
+        ResponseEntity<String> response = restTemplate.exchange(
+                url,
+                HttpMethod.GET,
+                entity,
+                String.class
+        );
+
+        return response.getBody();
+    }
 
 }

+ 0 - 50
GetDataByRESTful/src/main/java/com/jyxt/getdatabyrestful/service/HandleDataService.java

@@ -1,50 +0,0 @@
-package com.jyxt.getdatabyrestful.service;
-
-import com.jyxt.getdatabyrestful.GetDataByRESTfulApplication;
-import com.jyxt.getdatabyrestful.view.repository.TemperatureEntityRepository;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-import java.util.HashMap;
-import java.util.Map;
-
-@Component
-public class HandleDataService {
-    private static final Logger log = LoggerFactory.getLogger(GetDataByRESTfulApplication.class);
-
-    @Autowired
-    private ApiClientService apiClientService;
-
-    @Autowired
-    private TemperatureEntityRepository temperatureEntityRepository;
-
-    public void startHandleData(String ID,String Bianzhishijian,String EntityName) {
-        log.info("ID: {}, Bianzhishijian: {}, EntityName: {}", ID, Bianzhishijian, EntityName);
-//        String retVal = apiClientService.sendGet("https://petstore-demo.apifox.com/pet/1");
-//        System.out.println(retVal);
-        System.out.println("---------------------------------------------------------------");
-        Map<String, Object> params = new HashMap<>();
-        params.put("username", "test");  // 替换为实际值
-        params.put("password", "test01");    // 替换为实际值
-        String retVal2 = apiClientService.sendPost("http://120.27.156.224:8089/data/api/getToken",params);
-        System.out.println(retVal2);
-//        apiClientService.callThirdPartyApi(ID, Bianzhishijian, EntityName)
-//                .doOnNext(response -> {
-//                    if(response.isSuccess()) {
-//                        log.info("处理成功数据: {}", response.getData());
-//                        // 业务处理逻辑
-//                    } else {
-//                        log.warn("业务异常: {}", response.getMessage());
-//                    }
-//                })
-//                .doOnError(e -> log.error("处理失败", e))
-//                .subscribe(
-//                    response -> {}, // 成功处理(通常留空,因已用 doOnNext)
-//                    error -> log.error("全局捕获:", error) // 兜底异常处理
-//                );
-
-    }
-
-}

+ 19 - 18
GetDataByRESTful/src/main/java/com/jyxt/getdatabyrestful/service/IBPSService.java

@@ -1,5 +1,6 @@
 package com.jyxt.getdatabyrestful.service;
 
+import com.jyxt.getdatabyrestful.HandleData;
 import com.jyxt.getdatabyrestful.view.TemperatureEntity;
 import com.jyxt.getdatabyrestful.view.repository.TemperatureEntityRepository;
 import org.slf4j.Logger;
@@ -18,24 +19,24 @@ public class IBPSService {
     private TemperatureEntityRepository temperatureEntityRepository;
 
     @Autowired
-    private HandleDataService handleDataService;
-
-    public void QryUndoData(){
-        List<TemperatureEntity> qiList = temperatureEntityRepository.query();
-        if(qiList != null){
-            for (TemperatureEntity te : qiList) {
-                try {
-                    String Id = te.getId();
-                    String Bianzhishijian = te.getBianzhishijian();
-                    String EntityName = te.getEntityname();
-                    handleDataService.startHandleData(Id,Bianzhishijian,EntityName);
-                    break;
-                }catch (Exception ex){
-                    log.error(ex.getMessage());
-                }
-            }
-        }
-    };
+    private HandleData handleDataService;
+
+//    public void   QryUndoData(){
+//        List<TemperatureEntity> qiList = temperatureEntityRepository.query();
+//        if(qiList != null){
+//            for (TemperatureEntity te : qiList) {
+//                try {
+//                    String Id = te.getId();
+//                    String Bianzhishijian = te.getBianzhishijian();
+//                    String EntityName = te.getEntityname();
+//                    handleDataService.startHandleData(Id,Bianzhishijian,EntityName);
+//                    break;
+//                }catch (Exception ex){
+//                    log.error(ex.getMessage());
+//                }
+//            }
+//        }
+//    };
 
     public void InsertUnControlRecord(){
 

+ 24 - 24
GetDataByRESTful/src/main/java/com/jyxt/getdatabyrestful/view/repository/TemperatureEntityRepository.java

@@ -21,29 +21,29 @@ public class TemperatureEntityRepository {
 
     private static final Logger log = LoggerFactory.getLogger(TemperatureEntityRepository.class);
 
-    @Value("${fetch.sqlGetUndo}")
-    private String sql;
-
-    @Value("${config.qrymode}")
-    private String qryMode;
-
-    public List<TemperatureEntity> query(){
-        log.info("excute sql:" + sql);
-        List<TemperatureEntity> result = jdbcTemplate.query(
-                sql,
-                new RowMapper<TemperatureEntity>() {
-                    public TemperatureEntity mapRow(ResultSet rs, int rowNum) throws SQLException {
-                        TemperatureEntity te = new TemperatureEntity();
-                        te.setId(rs.getString("id_"));
-                        te.setBianzhishijian(rs.getString("bian_zhi_shi_jian"));
-                        te.setEntityname(rs.getString("bing_xiang_bian_h"));
-                        return te;
-                    }
-                });
-        if (result.isEmpty()) {
-            log.info("-------------no data finded,nothing to do...-------------");
-        }
-        return result;
-    }
+//    @Value("${fetch.sqlGetUndo}")
+//    private String sql;
+//
+//    @Value("${config.qrymode}")
+//    private String qryMode;
+//
+//    public List<TemperatureEntity> query(){
+//        log.info("excute sql:" + sql);
+//        List<TemperatureEntity> result = jdbcTemplate.query(
+//                sql,
+//                new RowMapper<TemperatureEntity>() {
+//                    public TemperatureEntity mapRow(ResultSet rs, int rowNum) throws SQLException {
+//                        TemperatureEntity te = new TemperatureEntity();
+//                        te.setId(rs.getString("id_"));
+//                        te.setBianzhishijian(rs.getString("bian_zhi_shi_jian"));
+//                        te.setEntityname(rs.getString("bing_xiang_bian_h"));
+//                        return te;
+//                    }
+//                });
+//        if (result.isEmpty()) {
+//            log.info("-------------no data finded,nothing to do...-------------");
+//        }
+//        return result;
+//    }
 
 }

+ 3 - 4
GetDataByRESTful/src/main/resources/application.properties

@@ -1,16 +1,15 @@
 spring.application.name=GetDataByRESTful
 #spring.datasource.jdbc-url = jdbc:mysql://demo2.local:3306/klims-ibps3?characterEncoding=utf8&useSSL=false
-spring.datasource.jdbc-url = jdbc:mysql://dev1.local:3306/klims-ibps3?characterEncoding=utf8&useSSL=false
+spring.datasource.jdbc-url = jdbc:mysql://192.168.2.201:3306/klims-ibps3?characterEncoding=utf8&useSSL=false
 spring.datasource.username = root
 spring.datasource.password = test001
 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
-
 #fetch.sqlGetUndo=select id_,bian_zhi_shi_jian,zhi_liang_zhi_bia,yuan_shi_shu_ju_ from t_zlzbpjzb where zhuang_tai_='\u5f85\u5904\u7406'
-fetch.sqlGetUndo=SELECT * from t_bxwdjkjlb where shi_fou_guo_shen_='\u5f85\u5904\u7406' and date(create_time_) = curdate()
 logging.file.name=logs/GetDataByRESTful.log
 # level:TRACE < DEBUG < INFO < WARN < ERROR < FATAL
 logging.level.root=INFO
 #1 or 0,1 means only qry,0 means update
 config.qrymode=0
-UrlAddr=http://coolaf.com/tool
+UrlAddr=http://www.0531yun.com/
+loginKey=loginName=h241021fkj&password=h241021fkj
 api.resources.path=/ibps/platform/v3/auth/resources/getDefaultResources

+ 15 - 15
GetDataByView/src/main/java/com/jyxt/getdatabyview/GetDataByViewApplication.java

@@ -39,21 +39,21 @@ public class GetDataByViewApplication implements CommandLineRunner{
     public void run(String... args) throws Exception {
 //        System.out.println("in run");
         log.info("<-------------new turn start...------------->");
-        List<QualityIndicator> qiList = qualityIndicatorRepository.query();
-        if(qiList != null){
-            for (QualityIndicator qi : qiList) {
-                try {
-                    String pingjiaId = qi.getId();
-                    String zhiliangzhibia = qi.getzhiliangzhibia();
-                    String bianzhishijian = qi.getbianzhishijian();
-                    String yuanshishuju = qi.getYuanshishuju();
-                    handleData.startHandleData(pingjiaId,zhiliangzhibia,bianzhishijian,yuanshishuju);
-
-                }catch (Exception ex){
-                    log.error(ex.getMessage());
-                }
-            }
-        }
+//        List<QualityIndicator> qiList = qualityIndicatorRepository.query();
+//        if(qiList != null){
+//            for (QualityIndicator qi : qiList) {
+//                try {
+//                    String pingjiaId = qi.getId();
+//                    String zhiliangzhibia = qi.getzhiliangzhibia();
+//                    String bianzhishijian = qi.getbianzhishijian();
+//                    String yuanshishuju = qi.getYuanshishuju();
+//                    handleData.startHandleData(pingjiaId,zhiliangzhibia,bianzhishijian,yuanshishuju);
+//
+//                }catch (Exception ex){
+//                    log.error(ex.getMessage());
+//                }
+//            }
+//        }
         log.info("<-------------this turn finish...------------->");
         context.close(); // 直接关闭上下文
     }

+ 0 - 108
GetDataByView/src/main/java/com/jyxt/getdatabyview/HandleData.java

@@ -14,113 +14,5 @@ import java.util.*;
 public class HandleData {
     private static final Logger log = LoggerFactory.getLogger(GetDataByViewApplication.class);
 
-    @Autowired
-    private LISViewRepository lisViewRepository;
 
-    @Autowired
-    private QualityIndicatorRepository qualityIndicatorRepository;
-
-    private static final String RESULT_DELIMITER = "\\^";
-
-    private static final List<String> qualityIndicatorList = Collections.unmodifiableList(
-            Arrays.asList(
-                    "总标本不合格率",                // 0
-                    "抗凝标本凝集率",                // 1
-                    "标本类型错误率",                // 2
-                    "标本容器错误率",                // 3
-                    "标本溶血率",                   // 4
-                    "标本采集量错误率",              // 5
-                    "急诊常规实验室内TAT中位数",      // 6
-                    "急诊生化免疫实验室内TAT中位数",   // 7
-                    "急诊凝血实验室内TAT中位数",      // 8
-                    "急诊血常规检验前周转时间中位数",   // 9
-                    "急诊血常规实验室内周转时间中位数", // 10
-                    "常规检验报告发放TAT时间符合率",   // 11
-                    "检验报告不正确率",              // 12
-                    "危急值通报率",                 // 13
-                    "危急值通报及时率",              // 14
-                    "标本合格率",                   // 15
-                    "TAT时间合格率",                // 16
-                    "报告准确率",                   // 17
-                    "危急值通报符合率"               // 18
-            )
-    );
-
-    public void startHandleData(String pingjiaId,String zhiliangzhibia,String bianzhishijian, String yuanshishuju) {
-
-        if (qualityIndicatorList.contains(zhiliangzhibia)){
-//            System.out.println(output);
-            log.info("ID: {}, zhiliangzhibia: {}, bianzhishijian: {}", pingjiaId, zhiliangzhibia, bianzhishijian);
-            int QIIndex = qualityIndicatorList.indexOf(zhiliangzhibia);
-            String DataDetail = "";
-            String dateRange = DateRangeUtil.getDateRange(bianzhishijian);
-            String[] resultParts = lisViewRepository.query(QIIndex,dateRange).split(RESULT_DELIMITER);
-//            String[] resultParts = new String[] {"", "", ""};
-//            if (pingjiaId.equals("1367710945618427904")) {
-//                resultParts = new String[] {"100", "10000", "10000"};
-//            }
-            String resultValue = resultParts[0];
-            if (resultValue.startsWith(".")) {
-                resultValue = "0" + resultValue;
-            }
-            String IsQualified = null;
-            if ((!Objects.equals(resultValue, ""))){
-                IsQualified = ValueEvaluator.evaluateValue(resultValue,yuanshishuju);
-            }
-            //总数统计
-            if (resultParts.length==2){
-                String total = resultParts[1];
-                if ((!Objects.equals(resultValue, ""))&&(!Objects.equals(resultValue,null))&&(!Objects.equals(resultValue,"-1"))) {
-//                System.out.println("output:"+ResultValue);
-                    log.info("Get LIS RetVal:{},zhiliangzhibiao:{},bianzhishijian:{}",resultParts,zhiliangzhibia,bianzhishijian);
-                    if (QIIndex==6){
-                        DataDetail = "同期临检(住院)及临检(门诊)的三大常规(血、尿、便)标本共 "+resultParts[1]+" 例";
-                    } else if (QIIndex==7){
-                        DataDetail = "同期临检急诊组的急诊生化、免疫标本共 "+resultParts[1]+" 例";
-                    } else if (QIIndex==8){
-                        DataDetail = "同期临检(住院)及临检(门诊) 的急诊血凝标本共 "+resultParts[1]+" 例";
-                    } else if ((QIIndex==9)||(QIIndex==10)){
-                        DataDetail = "同期临检(住院)及临检(门诊) 的急诊血常规标本共 "+resultParts[1]+" 例";
-                    }
-//                    qualityIndicatorRepository.save(pingjiaId, resultValue,total,DataDetail,IsQualified);
-                    //分子不需要整数
-                    qualityIndicatorRepository.save(pingjiaId, resultValue,resultValue,DataDetail,IsQualified);
-                }
-            } else if (resultParts.length==3){
-                String numerator = resultParts[1];
-                String denominator = resultParts[2];
-                if ((!Objects.equals(resultValue, ""))&&(!Objects.equals(resultValue,null))&&(!Objects.equals(resultValue,"-1"))){
-                    log.info("Get LIS RetVal:{},zhiliangzhibiao:{},bianzhishijian:{}",resultParts,zhiliangzhibia,bianzhishijian);
-                    if (QIIndex==0){
-                        DataDetail = "不合格标本数 "+resultParts[1]+" 例,同期标本总数 "+resultParts[2]+" 例";
-                    } else if (QIIndex==1){
-                        DataDetail = "凝集的标本数 "+resultParts[1]+" 例,同期需抗凝的标本总数 "+resultParts[2]+" 例";
-                    } else if (QIIndex==2){
-                        DataDetail = "类型错误或不适当的标本数 "+resultParts[1]+" 例,同期标本总数 "+resultParts[2]+" 例";
-                    } else if (QIIndex==3){
-                        DataDetail = "采集容器错误的标本数 "+resultParts[1]+" 例,同期标本总数 "+resultParts[2]+" 例";
-                    } else if (QIIndex==4){
-                        DataDetail = "溶血的标本 "+resultParts[1]+" 例,同期标本总数 "+resultParts[2]+" 例";
-                    } else if (QIIndex==5){
-                        DataDetail = "量不足或过多(抗凝标本)的标本数 "+resultParts[1]+" 例,同期标本总数 "+resultParts[2]+" 例";
-                    } else if (QIIndex==12){
-                        DataDetail = "实验室发出的不正确报告数 "+resultParts[1]+" 例,报告总数 "+resultParts[2]+" 例";
-                    } else if (QIIndex==13){
-                        DataDetail = "已通报危急值数 "+resultParts[1]+" 例,同期需要通报危急值总数 "+resultParts[2]+" 例";
-                    } else if (QIIndex==14){
-                        DataDetail = "危急值通报时间(从结果确认到与临床医生交流的时间)满足规定时间的检验项目数 "+resultParts[1]+" 例,同期需要危急值满足规定时间通报的检验项目总数 "+resultParts[2]+" 例";
-                    } else if (QIIndex==15){
-                        DataDetail = "全年合格标本总数 "+resultParts[1]+" 例,全年标本总数 "+resultParts[2]+" 例";
-                    } else if (QIIndex==17){
-                        DataDetail = "实验室发出的正确报告数 "+resultParts[1]+" 例,同期实验室发出报告总数 "+resultParts[2]+" 例";
-                    } else if (QIIndex==18){
-                        DataDetail = "危急值通报时间(从结果确认到与临床医生交流的时间)满足规定时间的检验项目数 "+resultParts[1]+" 例,同期需要危急值通报的检验项目总数 "+resultParts[2]+" 例";
-                    }
-                    qualityIndicatorRepository.save(pingjiaId,resultValue,numerator,denominator,DataDetail,IsQualified);
-                }
-            } else {
-                log.info("no result to save:zhiliangzhibiao:{},bianzhishijian:{}",zhiliangzhibia,bianzhishijian);
-            }
-        }
-    }
 }