|
@@ -53,6 +53,9 @@ public class ClinicalFacade {
|
|
@Autowired
|
|
@Autowired
|
|
private NLPServiceClient nlpServiceClient;
|
|
private NLPServiceClient nlpServiceClient;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private ConceptFacade conceptFacade;
|
|
|
|
+
|
|
private static String up = "增高";
|
|
private static String up = "增高";
|
|
private static String down = "降低";
|
|
private static String down = "降低";
|
|
private static String normal = "正常";
|
|
private static String normal = "正常";
|
|
@@ -60,6 +63,8 @@ public class ClinicalFacade {
|
|
private static String pos = "阳性";
|
|
private static String pos = "阳性";
|
|
private static String neg = "阴性";
|
|
private static String neg = "阴性";
|
|
|
|
|
|
|
|
+ // private static Map<String, List<Map<String, String>>> standWordObj = null;
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 处理临床数据
|
|
* 处理临床数据
|
|
*
|
|
*
|
|
@@ -69,6 +74,7 @@ public class ClinicalFacade {
|
|
public ResponseData processClinicalData(@RequestBody SearchVo searchVo) {
|
|
public ResponseData processClinicalData(@RequestBody SearchVo searchVo) {
|
|
SearchVo sData = searchVo;
|
|
SearchVo sData = searchVo;
|
|
Map<String, List<Map<String, String>>> standWord = getStandWord();
|
|
Map<String, List<Map<String, String>>> standWord = getStandWord();
|
|
|
|
+ // standWordObj = getStandWord();
|
|
Response<List<Lexeme>> resp = nlpServiceClient.split(sData.getSymptom());
|
|
Response<List<Lexeme>> resp = nlpServiceClient.split(sData.getSymptom());
|
|
if (null != resp && null != resp.getData()) {
|
|
if (null != resp && null != resp.getData()) {
|
|
addStandWord(resp.getData(), standWord, sData);
|
|
addStandWord(resp.getData(), standWord, sData);
|
|
@@ -327,7 +333,7 @@ public class ClinicalFacade {
|
|
Map<String, List<Map<String, String>>> standWordObj = new HashMap<>();
|
|
Map<String, List<Map<String, String>>> standWordObj = new HashMap<>();
|
|
List<List<Lexeme>> splitStandWords = new ArrayList<>();
|
|
List<List<Lexeme>> splitStandWords = new ArrayList<>();
|
|
List<Lexeme> data = null;
|
|
List<Lexeme> data = null;
|
|
- BufferedReader reader = null;
|
|
|
|
|
|
+ /*BufferedReader reader = null;
|
|
InputStream inputStream = null;
|
|
InputStream inputStream = null;
|
|
String line = "";
|
|
String line = "";
|
|
try {
|
|
try {
|
|
@@ -353,7 +359,13 @@ public class ClinicalFacade {
|
|
} catch (IOException e) {
|
|
} catch (IOException e) {
|
|
e.printStackTrace();
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
|
|
+ }*/
|
|
|
|
+ List<String> standWords = conceptFacade.getStandWord();
|
|
|
|
+ for (String standWord : standWords) {
|
|
|
|
+ data = nlpServiceClient.split(standWord).getData();
|
|
|
|
+ splitStandWords.add(data);
|
|
}
|
|
}
|
|
|
|
+
|
|
List<Map<String, String>> standWordObjValList = null;
|
|
List<Map<String, String>> standWordObjValList = null;
|
|
Map<String, String> standWordObjVal = null;
|
|
Map<String, String> standWordObjVal = null;
|
|
for (List<Lexeme> splitStandWord : splitStandWords) {
|
|
for (List<Lexeme> splitStandWord : splitStandWords) {
|
|
@@ -363,9 +375,9 @@ public class ClinicalFacade {
|
|
String standWordObjKey = "";
|
|
String standWordObjKey = "";
|
|
for (Lexeme lexeme : splitStandWord) {
|
|
for (Lexeme lexeme : splitStandWord) {
|
|
i++;
|
|
i++;
|
|
- if ("\uFEFF".equals(lexeme.getText()) || lexeme.getText().length() <= 0) {
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
|
|
+ // if ("\uFEFF".equals(lexeme.getText()) || lexeme.getText().length() <= 0) {
|
|
|
|
+ // continue;
|
|
|
|
+ // }
|
|
if (lexeme.getProperty().contains("1") || lexeme.getProperty().contains("5")
|
|
if (lexeme.getProperty().contains("1") || lexeme.getProperty().contains("5")
|
|
|| lexeme.getProperty().contains("33")) {
|
|
|| lexeme.getProperty().contains("33")) {
|
|
if (!standWordObj.containsKey(lexeme.getText())) {
|
|
if (!standWordObj.containsKey(lexeme.getText())) {
|