|
@@ -1,88 +0,0 @@
|
|
|
-package com.diagbot.util;
|
|
|
-
|
|
|
-import lombok.extern.slf4j.Slf4j;
|
|
|
-
|
|
|
-/**
|
|
|
- * @ClassName : QCCatalogue
|
|
|
- * @Description : 质控条目解析
|
|
|
- * @Author : 楼辉荣
|
|
|
- * @Date: 2020-03-04 11:24
|
|
|
- */
|
|
|
-@Slf4j
|
|
|
-public class QCCatalogue {
|
|
|
-
|
|
|
- protected ThreadLocal<String> status = new ThreadLocal<String>();
|
|
|
- protected ThreadLocal<String> info = new ThreadLocal<String>();
|
|
|
-
|
|
|
- /*public void execute(InputInfo inputInfo, OutputInfo outputInfo) {
|
|
|
-// long t1 = System.currentTimeMillis();
|
|
|
- if (outputInfo.getResult().get(className) != null) {
|
|
|
- return;
|
|
|
- }
|
|
|
- if (!precondExecute(inputInfo, outputInfo)) {
|
|
|
- variablePreset("-2", "");
|
|
|
- return;
|
|
|
- }
|
|
|
- try {
|
|
|
- variablePreset("-1", "");
|
|
|
- start(inputInfo, outputInfo);
|
|
|
- } catch (Exception e) {
|
|
|
- variablePreset("-1", "");
|
|
|
- log.error(e.getMessage() + "......类名:" + this.className);
|
|
|
- }
|
|
|
-// long t2 = System.currentTimeMillis();
|
|
|
-// log.error(inputInfo.getMedicalRecordInfoDoc().getStructureMap().get("behospitalCode") + "-----" + className + "(规则) 耗时:" + (t2 - t1));
|
|
|
- insertOpt(outputInfo);
|
|
|
- }
|
|
|
-
|
|
|
- private void insertOpt(OutputInfo outputInfo) {
|
|
|
- Map<String, String> resultDetail = Maps.newHashMap();
|
|
|
- resultDetail.put("info", info.get());
|
|
|
- resultDetail.put("status", status.get());
|
|
|
- outputInfo.getResult().put(className, resultDetail);
|
|
|
- status.remove();
|
|
|
- info.remove();
|
|
|
- }
|
|
|
-
|
|
|
- private void variablePreset(String arg0, String arg1) {
|
|
|
- status.set(arg0);
|
|
|
- info.set(arg1);
|
|
|
- }
|
|
|
-
|
|
|
- //前置条件运行 true通过,false不通过
|
|
|
- private boolean precondExecute(InputInfo inputInfo, OutputInfo outputInfo) {
|
|
|
- Map<String, String> catalogueMap = inputInfo.getInputCatalogueMap().get(className);
|
|
|
- if (catalogueMap == null) {
|
|
|
- return true;
|
|
|
- }
|
|
|
- String precond = catalogueMap.get("precond");
|
|
|
- if (StringUtil.isBlank(precond)) {
|
|
|
- return true;
|
|
|
- }
|
|
|
- boolean flag = true;
|
|
|
- String[] codes = precond.split(",");
|
|
|
- for (String code : codes) {
|
|
|
- QCCatalogue qCCatalogue = CatalogueUtil.qcCatalogueMap.get(code);
|
|
|
- if (qCCatalogue != null) {
|
|
|
- qCCatalogue.execute(inputInfo, outputInfo);
|
|
|
- }
|
|
|
- }
|
|
|
- for (String code : codes) {
|
|
|
- if (!outputInfo.getResult().get(code).get("status").equals("0")) {
|
|
|
- flag = false;
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- return flag;
|
|
|
- }
|
|
|
-
|
|
|
- private String className = this.getClass().getSimpleName();
|
|
|
-
|
|
|
- public QCCatalogue() {
|
|
|
- CatalogueUtil.qcCatalogueMap.put(className, this);
|
|
|
- }
|
|
|
-
|
|
|
- protected void start(InputInfo inputInfo, OutputInfo outputInfo) throws ParseException {
|
|
|
- }*/
|
|
|
-
|
|
|
-}
|