|
@@ -4,6 +4,7 @@ import com.lantone.qc.kernel.catalogue.QCCatalogue;
|
|
|
import com.lantone.qc.pub.model.InputInfo;
|
|
|
import com.lantone.qc.pub.model.OutputInfo;
|
|
|
import com.lantone.qc.pub.model.entity.Clinical;
|
|
|
+import com.lantone.qc.pub.model.entity.Diag;
|
|
|
import com.lantone.qc.pub.model.label.ChiefLabel;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
@@ -24,26 +25,38 @@ public class BEH0009 extends QCCatalogue {
|
|
|
Map<String,Integer> indexMap = new HashMap<>();
|
|
|
|
|
|
ChiefLabel chiefLabel = inputInfo.getBeHospitalizedDoc().getChiefLabel();
|
|
|
- String chiefLabelText = chiefLabel.getText();
|
|
|
- List<Clinical> clinicals = chiefLabel.getClinicals();
|
|
|
- if(clinicals.size()>0){
|
|
|
- for (Clinical clinical:clinicals) {
|
|
|
- indexMap.put(clinical.getName(),chiefLabelText.indexOf(clinical.getName()));
|
|
|
+ List<Diag> diags = chiefLabel.getDiags();
|
|
|
+ if(diags.size()>0){
|
|
|
+ for (Diag diag:diags) {
|
|
|
+ String hospitalDiagName = diag.getHospitalDiagName();
|
|
|
+ if(hospitalDiagName.contains("术后")||hospitalDiagName.contains("癌")||
|
|
|
+ hospitalDiagName.contains("瘤") || hospitalDiagName.contains("复诊")){
|
|
|
+ status = "0";
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
- int index_ban = chiefLabelText.indexOf("伴");
|
|
|
- if(indexMap.size()>0){
|
|
|
- if(index_ban == -1){
|
|
|
- status = "0";
|
|
|
- }else {
|
|
|
- for (Map.Entry<String,Integer> s:indexMap.entrySet()) {
|
|
|
- Integer value = s.getValue();
|
|
|
- if(value<index_ban){
|
|
|
- status = "0";
|
|
|
- break;
|
|
|
- }
|
|
|
+ }else{
|
|
|
+ String chiefLabelText = chiefLabel.getText();
|
|
|
+ List<Clinical> clinicals = chiefLabel.getClinicals();
|
|
|
+ if(clinicals.size()>0){
|
|
|
+ for (Clinical clinical:clinicals) {
|
|
|
+ indexMap.put(clinical.getName(),chiefLabelText.indexOf(clinical.getName()));
|
|
|
+ }
|
|
|
}
|
|
|
+ int index_ban = chiefLabelText.indexOf("伴");
|
|
|
+ if(indexMap.size()>0){
|
|
|
+ if(index_ban == -1){
|
|
|
+ status = "0";
|
|
|
+ }else {
|
|
|
+ for (Map.Entry<String,Integer> s:indexMap.entrySet()) {
|
|
|
+ Integer value = s.getValue();
|
|
|
+ if(value<index_ban){
|
|
|
+ status = "0";
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|