From a248dbbf62fa5ab699d7e88ed48f1fb9214cd78a Mon Sep 17 00:00:00 2001 From: liquanyu Date: Sat, 5 Aug 2017 14:24:52 +0800 Subject: [PATCH] update code --- .../lyms/hospitalapi/pojo/CheckItemResponse.java | 9 ++++ .../platform/operate/web/facade/LisFacade.java | 50 ++++++++++++++++++++-- 2 files changed, 56 insertions(+), 3 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/pojo/CheckItemResponse.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/pojo/CheckItemResponse.java index 04ed18b..f83958d 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/pojo/CheckItemResponse.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/pojo/CheckItemResponse.java @@ -11,6 +11,15 @@ public class CheckItemResponse { private String refer; private String unit; private String special; + private String printOrder; + + public String getPrintOrder() { + return printOrder; + } + + public void setPrintOrder(String printOrder) { + this.printOrder = printOrder; + } public String getName() { return name; diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/LisFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/LisFacade.java index f8f6412..664deda 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/LisFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/LisFacade.java @@ -108,6 +108,7 @@ public class LisFacade { }); for (CheckResponse check:result) { + sortLisItems(check); Date date = check.getApplyDate() == null ? check.getModified() : check.getApplyDate(); String ymd = DateUtil.getyyyy_MM_dd(date); if (!keyList.contains(ymd)) { @@ -201,20 +202,25 @@ public class LisFacade { // 排序 Collections.sort(list, new Comparator() { public int compare(Object a, Object b) { - if (((CheckResponse)a).getApplyDate() == null) { + if (((CheckResponse) a).getApplyDate() == null) { return -1; } - if (((CheckResponse)b).getApplyDate() == null) { + if (((CheckResponse) b).getApplyDate() == null) { return -1; } - if (((CheckResponse)a).getApplyDate().before(((CheckResponse)a).getApplyDate())) { + if (((CheckResponse) a).getApplyDate().before(((CheckResponse) a).getApplyDate())) { return 1; } return -1; } }); + + for (CheckResponse check:list) { + + sortLisItems(check); + Integer ymd = check.getType(); if (!keyList.contains(ymd.toString())) { keyList.add(ymd.toString()); @@ -270,6 +276,43 @@ public class LisFacade { return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg(ErrorCodeConstants.SUCCESS_DESCRIPTION).setData(checkByDate); } + /** + * 排序检查详情 + * @param check + */ + private void sortLisItems(CheckResponse check) + { + List items = check.getItemList(); + if (CollectionUtils.isNotEmpty(items)) + { + Collections.sort(items, new Comparator() { + public int compare(Object a, Object b) { + String orderA = ((CheckItemResponse) a).getPrintOrder(); + String orderB = ((CheckItemResponse) b).getPrintOrder(); + + if (com.lyms.platform.common.utils.StringUtils.isEmpty(orderA)) { + return -1; + } + if (com.lyms.platform.common.utils.StringUtils.isEmpty(orderB)) { + return -1; + } + if (com.lyms.platform.common.utils.StringUtils.isNum(orderA) && + com.lyms.platform.common.utils.StringUtils.isNum(orderB)) + { + int sortNum1 = Integer.parseInt(orderA); + int sortNum2 = Integer.parseInt(orderA); + if (sortNum1 < sortNum2) { + return 1; + } + } + + return -1; + } + }); + } + check.setItemList(items); + } + /** * 1、首先根据就诊卡号和医院id查询到这个孕妇的pid @@ -389,6 +432,7 @@ public class LisFacade { } item.setUnit(checkItem.getUnit()); item.setSpecial(checkItem.getResultFlag()); + item.setPrintOrder(checkItem.getPrintOrder()); itemList.add(item); } check.setItemList(itemList); -- 1.8.3.1