|
@@ -17,7 +17,6 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
-import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
|
|
@@ -39,13 +38,12 @@ public class FIRP0178 extends QCCatalogue {
|
|
|
if (inputInfo.getFirstPageRecordDoc() != null && inputInfo.getLeaveHospitalDoc() != null) {
|
|
|
Map<String, Object> firstpageStructureMap = inputInfo.getFirstPageRecordDoc().getStructureExtMap();
|
|
|
List<Map<String, String>> dischargeDiag = (List) firstpageStructureMap.get(Content.dischargeDiag);
|
|
|
- String mainDiagnosis = "";
|
|
|
if (ListUtil.isEmpty(dischargeDiag)) {
|
|
|
return;
|
|
|
}
|
|
|
- if (dischargeDiag.get(0) != null) {
|
|
|
- mainDiagnosis = dischargeDiag.get(0).get("诊断名称");
|
|
|
- }
|
|
|
+// if (dischargeDiag.get(0) != null) {
|
|
|
+// mainDiagnosis = dischargeDiag.get(0).get("诊断名称");
|
|
|
+// }
|
|
|
|
|
|
/* 病案首页出院小结诊断 除去主诊断*/
|
|
|
List<String> firstpageLeaveDiags = getFirstPageDiag(dischargeDiag);
|
|
@@ -64,27 +62,17 @@ public class FIRP0178 extends QCCatalogue {
|
|
|
ModelAI modelAI = new ModelAI();
|
|
|
String infoStr = "";
|
|
|
//最主要是给医生提醒,看是否有出院诊断漏写
|
|
|
- for (String leaveDiag : leaveDiagsStr) {
|
|
|
- JSONArray jsonArray = modelAI.loadChiefPresentSimilarAI(leaveDiag, firstpageLeaveDiags, false
|
|
|
+ for (int i = 1; i < leaveDiagsStr.size(); i++) {
|
|
|
+ JSONArray jsonArray = modelAI.loadChiefPresentSimilarAI(leaveDiagsStr.get(i), firstpageLeaveDiags, false
|
|
|
, "diagnose", chiefPresentSimilarityServiceClient);
|
|
|
if (jsonArray.size() == 2) {
|
|
|
/* 相似度分数 */
|
|
|
double likeRate = jsonArray.getDoubleValue(1);
|
|
|
if (likeRate < 0.9) {
|
|
|
- infoStr = CatalogueUtil.concatInfo(infoStr, leaveDiag);
|
|
|
+ infoStr = CatalogueUtil.concatInfo(infoStr, leaveDiagsStr.get(i));
|
|
|
}
|
|
|
} else if (jsonArray.size() == 0) {
|
|
|
- JSONArray jsonArr = modelAI.loadChiefPresentSimilarAI(leaveDiag, Arrays.asList(mainDiagnosis), false
|
|
|
- , "diagnose", chiefPresentSimilarityServiceClient);
|
|
|
- if (jsonArr.size() == 2) {
|
|
|
- /* 相似度分数 */
|
|
|
- double likeRate = jsonArr.getDoubleValue(1);
|
|
|
- if (likeRate < 0.9) {
|
|
|
- infoStr = CatalogueUtil.concatInfo(infoStr, leaveDiag);
|
|
|
- }
|
|
|
- } else if (jsonArray.size() == 0) {
|
|
|
- infoStr = CatalogueUtil.concatInfo(infoStr, leaveDiag);
|
|
|
- }
|
|
|
+ infoStr = CatalogueUtil.concatInfo(infoStr, leaveDiagsStr.get(i));
|
|
|
}
|
|
|
}
|
|
|
if (StringUtil.isNotBlank(infoStr)) {
|