Commit cf984502076057d3622ff7b0095816ed087da2c6
1 parent
129fe7be5d
Exists in
master
and in
6 other branches
孕妇学校
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 |