|
|
|
@ -282,6 +282,7 @@ namespace Shentun.Peis.DiagnosisFunctions |
|
|
|
|
|
|
|
private List<string> GetItemDiagnosisStringList(List<DoctorCheckItemDiagnosisResult> itemDiagnosisList) |
|
|
|
{ |
|
|
|
var summaryResultTemplateSplit = _sysParmValueManager.GetSysParmValueAsync(Guid.Empty, "summary_result_template_split").GetAwaiter().GetResult(); |
|
|
|
var diagnosisList = new List<string>(); |
|
|
|
foreach (var itemDiagnosis in itemDiagnosisList) |
|
|
|
{ |
|
|
|
@ -330,6 +331,22 @@ namespace Shentun.Peis.DiagnosisFunctions |
|
|
|
} |
|
|
|
|
|
|
|
if (!string.IsNullOrWhiteSpace(diagnosis)) |
|
|
|
{ |
|
|
|
if (summaryResultTemplateSplit == "Y") |
|
|
|
{ |
|
|
|
var diagnosisArry = GetResultArry(diagnosis); |
|
|
|
for (int i = 0; i < diagnosisArry.Length; i++) |
|
|
|
{ |
|
|
|
string diagnosisTemp = diagnosisArry[i]; |
|
|
|
if (itemDiagnosis.IsNameIntoSummary == 'Y' && !diagnosisTemp.StartsWith(itemDiagnosis.ItemName)) |
|
|
|
{ |
|
|
|
diagnosisTemp = itemDiagnosis.ItemName + ":" + diagnosisTemp; |
|
|
|
} |
|
|
|
|
|
|
|
diagnosisList.Add(diagnosisTemp); |
|
|
|
} |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
if (itemDiagnosis.IsNameIntoSummary == 'Y' && !diagnosis.StartsWith(itemDiagnosis.ItemName)) |
|
|
|
{ |
|
|
|
@ -339,6 +356,9 @@ namespace Shentun.Peis.DiagnosisFunctions |
|
|
|
diagnosisList.Add(diagnosis); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
return diagnosisList; |
|
|
|
@ -485,6 +505,11 @@ namespace Shentun.Peis.DiagnosisFunctions |
|
|
|
else |
|
|
|
{ |
|
|
|
|
|
|
|
//区分新老系统逻辑
|
|
|
|
//老系统 拆分结果后,每个结果如果匹配到了结果模板,就不继续诊断匹配
|
|
|
|
//新系统 匹配到底
|
|
|
|
|
|
|
|
|
|
|
|
//通过结果模板获取诊断
|
|
|
|
var templateList = await GetItemDiagnosisByTemplate(item); |
|
|
|
var itemDiagnosisTypeResult = new ItemDiagnosisTypeResult() |
|
|
|
@ -494,9 +519,19 @@ namespace Shentun.Peis.DiagnosisFunctions |
|
|
|
|
|
|
|
itemDiagnosisTypeResult.Diagnosis.AddRange(templateList); |
|
|
|
|
|
|
|
bool continueMatche = true; |
|
|
|
var isSummaryResultMatchContinue = await _sysParmValueManager.GetSysParmValueAsync(Guid.Empty, "summary_result_match_continue"); |
|
|
|
if (templateList.Any() && isSummaryResultMatchContinue == "N") |
|
|
|
{ |
|
|
|
continueMatche = false; |
|
|
|
} |
|
|
|
List<string> matcheList = new List<string>(); |
|
|
|
if (continueMatche) |
|
|
|
{ |
|
|
|
//通过匹配关系获取诊断
|
|
|
|
var matcheList = await GetItemDiagnosisByMatche(item); |
|
|
|
matcheList = await GetItemDiagnosisByMatche(item); |
|
|
|
itemDiagnosisTypeResult.Diagnosis.AddRange(matcheList); |
|
|
|
} |
|
|
|
if (!templateList.Any() && !matcheList.Any()) |
|
|
|
{ |
|
|
|
//获取异常结果
|
|
|
|
|