Commit cf984502076057d3622ff7b0095816ed087da2c6

Authored by liquanyu
1 parent 129fe7be5d

孕妇学校

Showing 2 changed files with 46 additions and 16 deletions

platform-dal/src/main/java/com/lyms/platform/query/CourseQuery.java View file @ cf98450
... ... @@ -118,21 +118,33 @@
118 118 condition = condition.and("courseEndTime", courseEndTime, MongoOper.LTE);
119 119 }
120 120  
121   - if (null != keyword && null != hospitalIds && hospitalIds.size() > 0) {
122   - MongoCondition con1 = MongoCondition.newInstance("courseSpeaker", keyword, MongoOper.LIKE);
123   - MongoCondition con = MongoCondition.newInstance("courseName", keyword, MongoOper.LIKE);
124   - MongoCondition condition2 = MongoCondition.newInstance("hospitalId", hospitalIds, MongoOper.IN);
125   - condition = condition.orCondition(new MongoCondition[]{con1, con,condition2});
126   - }
127   - else if (null != keyword)
  121 + if (null != keyword)
128 122 {
129 123 MongoCondition con1 = MongoCondition.newInstance("courseSpeaker", keyword, MongoOper.LIKE);
130 124 MongoCondition con = MongoCondition.newInstance("courseName", keyword, MongoOper.LIKE);
131 125 condition = condition.orCondition(new MongoCondition[]{con1, con});
132 126 }
133   - else if (null != hospitalIds && hospitalIds.size() > 0) {
  127 +
  128 + if (null != hospitalIds && hospitalIds.size() > 0) {
134 129 condition = condition.and("hospitalId", hospitalIds, MongoOper.IN);
135 130 }
  131 +
  132 +
  133 +// if (null != keyword && null != hospitalIds && hospitalIds.size() > 0) {
  134 +// MongoCondition con1 = MongoCondition.newInstance("courseSpeaker", keyword, MongoOper.LIKE);
  135 +// MongoCondition con = MongoCondition.newInstance("courseName", keyword, MongoOper.LIKE);
  136 +// MongoCondition condition2 = MongoCondition.newInstance("hospitalId", hospitalIds, MongoOper.IN);
  137 +// condition = condition.orCondition(new MongoCondition[]{con1, con,condition2});
  138 +// }
  139 +// else if (null != keyword)
  140 +// {
  141 +// MongoCondition con1 = MongoCondition.newInstance("courseSpeaker", keyword, MongoOper.LIKE);
  142 +// MongoCondition con = MongoCondition.newInstance("courseName", keyword, MongoOper.LIKE);
  143 +// condition = condition.orCondition(new MongoCondition[]{con1, con});
  144 +// }
  145 +// else if (null != hospitalIds && hospitalIds.size() > 0) {
  146 +// condition = condition.and("hospitalId", hospitalIds, MongoOper.IN);
  147 +// }
136 148  
137 149 Criteria c1 = null;
138 150  
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientCourseFacade.java View file @ cf98450
... ... @@ -457,10 +457,21 @@
457 457 hospitalIdList = Arrays.asList(hospitalIds.split(","));
458 458 }
459 459  
460   - if (StringUtils.isNotEmpty(keyword))
  460 + boolean isHosp = false;
  461 +
  462 + List<String> conditionHospitalIds = new ArrayList<>();
  463 + if (StringUtils.isNotEmpty(keyword) && CollectionUtils.isNotEmpty(hospitalIdList))
461 464 {
462   - List<String> conditionHospitalIds = new ArrayList<>();
  465 + List<Integer> ids = new ArrayList<>();
  466 + for (String id : hospitalIdList)
  467 + {
  468 + ids.add(Integer.parseInt(id));
  469 + }
  470 +
  471 +
463 472 OrganizationQuery organizationQuery = new OrganizationQuery();
  473 +
  474 + organizationQuery.setIdList(ids);
464 475 organizationQuery.setNeed("true");
465 476 organizationQuery.setPage(0);
466 477 organizationQuery.setLimit(100);
467 478  
... ... @@ -474,11 +485,9 @@
474 485 {
475 486 conditionHospitalIds.add(String.valueOf(org.getId()));
476 487 }
  488 + isHosp = true;
477 489 }
478   - if (CollectionUtils.isNotEmpty(conditionHospitalIds))
479   - {
480   - hospitalIdList.retainAll(conditionHospitalIds);
481   - }
  490 +
482 491 }
483 492  
484 493 CourseQuery query = new CourseQuery();
... ... @@ -487,8 +496,17 @@
487 496 query.setPage(page);
488 497 query.setLimit(limit);
489 498 query.setNeed("true");
490   - query.setHospitalIds(hospitalIdList);
491   - query.setKeyword(keyword);
  499 + if (isHosp)
  500 + {
  501 + query.setHospitalIds(conditionHospitalIds);
  502 + }
  503 + else
  504 + {
  505 + query.setHospitalIds(hospitalIdList);
  506 + query.setKeyword(keyword);
  507 + }
  508 +
  509 +
492 510 List<CourseModel> courseModels = courseService.queryCourseList(query);
493 511  
494 512