Commit eebc5ccc70fc73ea555747bc093d1f4f4d59097c

Authored by shiyang
1 parent c0e4325354

眼保健、口腔。排序优化

Showing 4 changed files with 27 additions and 16 deletions

platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/BabyOralCheckService.java View file @ eebc5cc
... ... @@ -9,10 +9,14 @@
9 9 import com.lyms.platform.pojo.BabyOralCheck;
10 10 import com.lyms.platform.query.BabyKindergartenCheckQuery;
11 11 import com.lyms.platform.query.BabyOralCheckQuery;
  12 +import org.apache.commons.collections.CollectionUtils;
  13 +import org.apache.commons.lang.ArrayUtils;
12 14 import org.apache.commons.lang.StringUtils;
13 15 import org.springframework.data.domain.Sort;
14 16 import org.springframework.stereotype.Service;
  17 +import sun.security.util.ArrayUtil;
15 18  
  19 +import java.util.Arrays;
16 20 import java.util.List;
17 21  
18 22 /**
19 23  
20 24  
21 25  
22 26  
... ... @@ -45,20 +49,24 @@
45 49 /**
46 50 *
47 51 * @param babyQuery 查询条件
48   - * @param sortkey 按什么字段排序(如null必须sort也为null表示不排序)
  52 + * @param sortkeys 按什么字段排序(如null必须sort也为null表示不排序)
49 53 * @param sort 排序 ASC/DESC
50 54 * Need 给这个字段赋值代表需要分页,null不需要分页
51 55 * @return
52 56 */
53   - public List<BabyOralCheck> queryList(BabyOralCheckQuery babyQuery,Sort.Direction sort,String sortkey) {
  57 + public List<BabyOralCheck> queryList(BabyOralCheckQuery babyQuery,Sort.Direction sort,String[] sortkeys) {
54 58 MongoQuery query = babyQuery.convertToQuery();
  59 +
55 60 if (StringUtils.isNotEmpty(babyQuery.getNeed())) {//是否需要分页
56 61 babyQuery.mysqlBuild((int)count(babyQuery.convertToQuery().convertToMongoQuery()));
57 62 query.start(babyQuery.getOffset()).end(babyQuery.getLimit());
58 63 }
59   - if(StringUtils.isNotEmpty(sortkey) && null!=sort){
60   - query.addOrder(sort, sortkey);
  64 + if(ArrayUtils.isNotEmpty(sortkeys) && null!=sort){
  65 + for (String sortkey : sortkeys) {
  66 + query.addOrder(sort, sortkey);
  67 + }
61 68 }
  69 + System.out.println(query.convertToMongoQuery().toString());
62 70 return find(query.convertToMongoQuery());
63 71 }
64 72  
platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/LhBabyEyeCheckService.java View file @ eebc5cc
... ... @@ -7,6 +7,7 @@
7 7 import com.lyms.platform.common.enums.YnEnums;
8 8 import com.lyms.platform.pojo.LhBabyEyeCheck;
9 9 import com.lyms.platform.query.LhBabyEyelCheckQuery;
  10 +import org.apache.commons.lang.ArrayUtils;
10 11 import org.apache.commons.lang.StringUtils;
11 12 import org.springframework.data.domain.Sort;
12 13 import org.springframework.stereotype.Service;
13 14  
14 15  
... ... @@ -44,19 +45,21 @@
44 45 /**
45 46 *
46 47 * @param babyQuery 查询条件
47   - * @param sortkey 按什么字段排序(如null必须sort也为null表示不排序)
  48 + * @param sortkeys 按什么字段排序(如null必须sort也为null表示不排序)
48 49 * @param sort 排序 ASC/DESC
49 50 * Need 给这个字段赋值代表需要分页,null不需要分页
50 51 * @return
51 52 */
52   - public List<LhBabyEyeCheck> queryList(LhBabyEyelCheckQuery babyQuery, Sort.Direction sort, String sortkey) {
  53 + public List<LhBabyEyeCheck> queryList(LhBabyEyelCheckQuery babyQuery, Sort.Direction sort, String[] sortkeys) {
53 54 MongoQuery query = babyQuery.convertToQuery();
54 55 if (StringUtils.isNotEmpty(babyQuery.getNeed())) {//是否需要分页
55 56 babyQuery.mysqlBuild((int)count(babyQuery.convertToQuery().convertToMongoQuery()));
56 57 query.start(babyQuery.getOffset()).end(babyQuery.getLimit());
57 58 }
58   - if(StringUtils.isNotEmpty(sortkey) && null!=sort){
59   - query.addOrder(sort, sortkey);
  59 + if(ArrayUtils.isNotEmpty(sortkeys) && null!=sort){
  60 + for (String sortkey : sortkeys) {
  61 + query.addOrder(sort, sortkey);
  62 + }
60 63 }
61 64 return find(query.convertToMongoQuery());
62 65 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyOralCheckFacade.java View file @ eebc5cc
... ... @@ -105,7 +105,7 @@
105 105 BabyOralCheckQuery checkQuery=new BabyOralCheckQuery();
106 106 checkQuery.setYn(YnEnums.YES.getId());
107 107 checkQuery.setBabyId(babyOralCheck.getBabyId());
108   - List<BabyOralCheck> babyOralChecks=babyOralCheckService.queryList(checkQuery,Sort.Direction.DESC,"created");
  108 + List<BabyOralCheck> babyOralChecks=babyOralCheckService.queryList(checkQuery,Sort.Direction.DESC,new String[]{"oralCheckTime", "created"});
109 109 //修改最新的记录才会同步儿童档案,新增也会同步到儿童档案
110 110 if( CollectionUtils.isNotEmpty(babyOralChecks) && babyOralChecks.get(0).getId().equals(babyOralCheck.getId())){
111 111 Update update = new Update();
... ... @@ -144,7 +144,7 @@
144 144 BabyOralCheckQuery checkQuery=new BabyOralCheckQuery();
145 145 checkQuery.setYn(YnEnums.YES.getId());
146 146 checkQuery.setBabyId(oralCheck.getBabyId());
147   - List<BabyOralCheck> babyOralChecks=babyOralCheckService.queryList(checkQuery,Sort.Direction.DESC,"created");
  147 + List<BabyOralCheck> babyOralChecks=babyOralCheckService.queryList(checkQuery,Sort.Direction.DESC,new String[]{"oralCheckTime", "created"});
148 148 Update update = new Update();
149 149 //删除唯一的检查记录
150 150 if( CollectionUtils.isEmpty(babyOralChecks)){
... ... @@ -206,7 +206,7 @@
206 206 BabyOralCheckQuery checkQuery=new BabyOralCheckQuery();
207 207 checkQuery.setBabyId(babyId);
208 208 checkQuery.setYn(YnEnums.YES.getId());
209   - List<BabyOralCheck> babyOralChecks=babyOralCheckService.queryList(checkQuery,Sort.Direction.ASC,"created");
  209 + List<BabyOralCheck> babyOralChecks=babyOralCheckService.queryList(checkQuery,Sort.Direction.ASC, new String[]{"oralCheckTime", "created"});
210 210 for (BabyOralCheck babyOralCheck : babyOralChecks) {
211 211 Map<String, Object> temp = new HashMap<>();
212 212 temp.put("id", babyOralCheck.getId());
... ... @@ -253,7 +253,7 @@
253 253 request.setBirthStart(DateUtil.getBirthStart(request.getQueryMonthAgeEnd()));
254 254 request.setBirthEnd(DateUtil.getBirthEnd(request.getQueryMonthAgeStart()));
255 255 }
256   - List<BabyOralCheck> babyOralChecks=babyOralCheckService.queryList(request,Sort.Direction.DESC,"created");
  256 + List<BabyOralCheck> babyOralChecks=babyOralCheckService.queryList(request,Sort.Direction.DESC,new String[]{"oralCheckTime", "created"});
257 257 List<Map> result=new ArrayList<>();
258 258 for (BabyOralCheck babyOralCheck : babyOralChecks) {
259 259 Map<String,Object> map=ReflectionUtils.beanToMap(babyOralCheck);//对象转map
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/LhBabyEyeCheckFacade.java View file @ eebc5cc
... ... @@ -103,7 +103,7 @@
103 103 LhBabyEyelCheckQuery checkQuery=new LhBabyEyelCheckQuery();
104 104 checkQuery.setYn(YnEnums.YES.getId());
105 105 checkQuery.setBabyId(babyCheck.getBabyId());
106   - List<LhBabyEyeCheck> babyChecks=lhBabyEyeCheckService.queryList(checkQuery,Sort.Direction.DESC,"created");
  106 + List<LhBabyEyeCheck> babyChecks=lhBabyEyeCheckService.queryList(checkQuery,Sort.Direction.DESC,new String[]{"eyeCheckTime","created"});
107 107 //修改最新的记录才会同步儿童档案,新增也会同步到儿童档案
108 108 if( CollectionUtils.isNotEmpty(babyChecks) && babyChecks.get(0).getId().equals(babyCheck.getId()) ){
109 109 Update update = new Update();
... ... @@ -139,7 +139,7 @@
139 139 LhBabyEyelCheckQuery checkQuery=new LhBabyEyelCheckQuery();
140 140 checkQuery.setYn(YnEnums.YES.getId());
141 141 checkQuery.setBabyId(babyCheck.getBabyId());
142   - List<LhBabyEyeCheck> babyChecks=lhBabyEyeCheckService.queryList(checkQuery,Sort.Direction.DESC,"created");
  142 + List<LhBabyEyeCheck> babyChecks=lhBabyEyeCheckService.queryList(checkQuery,Sort.Direction.DESC,new String[]{"eyeCheckTime","created"});
143 143 Update update = new Update();
144 144 //删除唯一的检查记录
145 145 if( CollectionUtils.isEmpty(babyChecks)){
... ... @@ -202,7 +202,7 @@
202 202 LhBabyEyelCheckQuery checkQuery=new LhBabyEyelCheckQuery();
203 203 checkQuery.setBabyId(babyId);
204 204 checkQuery.setYn(YnEnums.YES.getId());
205   - List<LhBabyEyeCheck> babyChecks=lhBabyEyeCheckService.queryList(checkQuery,Sort.Direction.ASC,"created");
  205 + List<LhBabyEyeCheck> babyChecks=lhBabyEyeCheckService.queryList(checkQuery,Sort.Direction.ASC,new String[]{"eyeCheckTime","created"});
206 206 for (LhBabyEyeCheck babyCheck : babyChecks) {
207 207 Map<String, Object> temp = new HashMap<>();
208 208 temp.put("id", babyCheck.getId());
... ... @@ -254,7 +254,7 @@
254 254 request.setChuPositiveType("2");
255 255 request.setPositiveType("1");
256 256 }
257   - List<LhBabyEyeCheck> babyEyeChecks=lhBabyEyeCheckService.queryList(request,Sort.Direction.DESC,"created");
  257 + List<LhBabyEyeCheck> babyEyeChecks=lhBabyEyeCheckService.queryList(request,Sort.Direction.DESC,new String[]{"eyeCheckTime","created"});
258 258 List<Map> result=new ArrayList<>();
259 259 for (LhBabyEyeCheck babyCheck : babyEyeChecks) {
260 260 Map<String,Object> map=ReflectionUtils.beanToMap(babyCheck);//对象转map