|
|
@@ -279,12 +279,16 @@ public class RuleEngine {
|
|
|
public void genItemCodeAndRuleIdMapTest(String medicalProjectCode, AfterwardsAuditDetail afterwardsAuditDetail, List<MedicalInsRuleInfo> medicalInsRuleInfoList, Map<Integer, MedicalInsRuleInfo> medicalMap, Map<String, Boolean> codeDataMap) {
|
|
|
try {
|
|
|
List<Integer> ruleIdList = medicalInsRuleInfoList.stream().map(MedicalInsRuleInfo::getId).collect(Collectors.toList());
|
|
|
-
|
|
|
+ List<MedicalInsRuleProject> medicalInsRuleProjectList = medicalInsRuleProjectService.lambdaQuery().in(MedicalInsRuleProject::getMedicalInsRuleInfoId, ruleIdList).list();
|
|
|
+ if(CollectionUtil.isEmpty(medicalInsRuleProjectList)){
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ Map<Integer, List<MedicalInsRuleProject>> ruleIdAndMap = medicalInsRuleProjectList.stream().collect(Collectors.groupingBy(MedicalInsRuleProject::getMedicalInsRuleInfoId));
|
|
|
for (Integer medicalInsInfoId : ruleIdList) {
|
|
|
|
|
|
- List<MedicalInsRuleProject> medicalInsRuleProjectList = medicalInsRuleProjectService.lambdaQuery().eq(MedicalInsRuleProject::getMedicalInsRuleInfoId, medicalInsInfoId).list();
|
|
|
- if (CollectionUtil.isNotEmpty(medicalInsRuleProjectList)) {
|
|
|
- for (MedicalInsRuleProject medicalInsRuleProject : medicalInsRuleProjectList) {
|
|
|
+ List<MedicalInsRuleProject> medicalInsRuleProjectListTemp = ruleIdAndMap.get(medicalInsInfoId);
|
|
|
+ if (CollectionUtil.isNotEmpty(medicalInsRuleProjectListTemp)) {
|
|
|
+ for (MedicalInsRuleProject medicalInsRuleProject : medicalInsRuleProjectListTemp) {
|
|
|
boolean startFlag = SPELUtil.startWithKey(medicalProjectCode, medicalInsRuleProject.getProjectCode());
|
|
|
if (startFlag) {
|
|
|
afterwardsAuditDetail.setMedicalInsRuleInfoId(medicalInsRuleProject.getMedicalInsRuleInfoId());
|