|
@@ -83,37 +83,45 @@ public class ParamsDataProxy {
|
|
|
|
|
|
//获取入参中的特征信息
|
|
|
FeatureAnalyze fa = new FeatureAnalyze();
|
|
|
-
|
|
|
+ List<Map<String, Object>> featuresList = new ArrayList<>();
|
|
|
if (!StringUtils.isEmpty(searchData.getSymptom())) {
|
|
|
//提取现病史
|
|
|
- List<Map<String, Object>> featuresList = fa.start(searchData.getSymptom(), FeatureType.FEATURE);
|
|
|
+ featuresList = fa.start(searchData.getSymptom(), FeatureType.FEATURE);
|
|
|
paramFeatureInit(searchData, featuresList);
|
|
|
+ }
|
|
|
+ if (!StringUtils.isEmpty(searchData.getVital())) {
|
|
|
//提取体征
|
|
|
featuresList = fa.start(searchData.getVital(), FeatureType.FEATURE);
|
|
|
paramFeatureInit(searchData, featuresList);
|
|
|
+ }
|
|
|
+ if (!StringUtils.isEmpty(searchData.getPast())) {
|
|
|
//提取既往史
|
|
|
featuresList = fa.start(searchData.getPast(), FeatureType.FEATURE);
|
|
|
paramFeatureInit(searchData, featuresList);
|
|
|
+ }
|
|
|
+ if (!StringUtils.isEmpty(searchData.getOther()) || !StringUtils.isEmpty(searchData.getIndications())) {
|
|
|
//提取其他史等
|
|
|
- featuresList = fa.start(searchData.getOther() + searchData.getIndications(), FeatureType.FEATURE);
|
|
|
+ featuresList = fa.start(searchData.getOther() == null?"":searchData.getOther() + searchData.getIndications() == null?"":searchData.getIndications(), FeatureType.FEATURE);
|
|
|
paramFeatureInit(searchData, featuresList);
|
|
|
-
|
|
|
+ }
|
|
|
+ if (!StringUtils.isEmpty(searchData.getPacs())) {
|
|
|
featuresList = fa.start(searchData.getPacs(), FeatureType.PACS);
|
|
|
paramFeatureInit(searchData, featuresList);
|
|
|
-
|
|
|
+ }
|
|
|
+ if (!StringUtils.isEmpty(searchData.getLis())) {
|
|
|
featuresList = fa.start(searchData.getLis(), FeatureType.LIS);
|
|
|
paramFeatureInit(searchData, featuresList);
|
|
|
-
|
|
|
+ }
|
|
|
// 清洗特征词,去除词性不匹配的词
|
|
|
searchData = cleanFeature(featuresList, fa, searchData);
|
|
|
-
|
|
|
+ if (!StringUtils.isEmpty(searchData.getOther())) {
|
|
|
//如果既往史中诊断信息,需要提取这个特征
|
|
|
featuresList = fa.start(searchData.getOther(), FeatureType.DIAG);
|
|
|
paramFeatureInit(searchData, featuresList);
|
|
|
}
|
|
|
|
|
|
if (!StringUtils.isEmpty(searchData.getDiag()) && StringUtils.isEmpty(searchData.getSymptom())) {
|
|
|
- List<Map<String, Object>> featuresList = fa.start(searchData.getDiag(), FeatureType.DIAG);
|
|
|
+ featuresList = fa.start(searchData.getDiag(), FeatureType.DIAG);
|
|
|
paramFeatureInit(searchData, featuresList);
|
|
|
}
|
|
|
}
|