From 7ebcfcd389665f37944089e94628e53cdacd24ef Mon Sep 17 00:00:00 2001 From: jiangjiazhi Date: Wed, 16 Nov 2016 10:40:46 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=BD=AC=E8=AF=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/lyms/platform/biz/dal/ISieveDao.java | 8 +++ .../lyms/platform/biz/dal/impl/SieveDaoImpl.java | 4 +- .../lyms/platform/biz/service/PatientsService.java | 1 + .../lyms/platform/biz/service/SieveService.java | 67 ++++++++++++++++------ .../java/com/lyms/platform/pojo/SieveModel.java | 11 ++++ .../operate/web/facade/ApplyOrderFacade.java | 1 + .../platform/operate/web/facade/SieveFacade.java | 14 ++++- .../operate/web/service/SyncDataTaskService.java | 6 ++ 8 files changed, 92 insertions(+), 20 deletions(-) diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/ISieveDao.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/ISieveDao.java index d09cebd..86a2816 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/ISieveDao.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/ISieveDao.java @@ -43,6 +43,14 @@ public interface ISieveDao { SieveResultModel findById(String id); /** + * 获取一条产筛数据 + * + * @param id + * @return + */ + SieveModel findOneById(String id); + + /** * 查询产筛列表 * * @param sieveQuery diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/SieveDaoImpl.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/SieveDaoImpl.java index c11bc0b..c128c60 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/SieveDaoImpl.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/SieveDaoImpl.java @@ -36,7 +36,9 @@ public class SieveDaoImpl extends BaseMongoDAOImpl implements sieveResultModel.setModified(new Date()); return save(sieveResultModel); } - + public SieveModel findOneById(String id){ + return mongoTemplate.findById(id , SieveModel.class); + } /** * 根据id删除数据 * diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PatientsService.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PatientsService.java index 360efdb..34a6a10 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PatientsService.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PatientsService.java @@ -386,6 +386,7 @@ public class PatientsService { if (CollectionUtils.isEmpty(list)) { SieveModel sieveModel = convertToModel(patient); sieveModel.setFrom("0"); + SieveService.handOrder(sieveModel); sieveDao.addChanQianSieve(sieveModel); } } diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/SieveService.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/SieveService.java index f6b6fd4..c387fb7 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/SieveService.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/SieveService.java @@ -3,6 +3,8 @@ package com.lyms.platform.biz.service; import com.lyms.platform.biz.dal.ISieveApplyOrderDao; import com.lyms.platform.biz.dal.ISieveDao; import com.lyms.platform.common.dao.operator.MongoQuery; +import com.lyms.platform.common.enums.ChanQResultEnums; +import com.lyms.platform.common.enums.SieveStatusEnums; import com.lyms.platform.common.enums.YnEnums; import com.lyms.platform.common.utils.DateUtil; import com.lyms.platform.pojo.SieveApplyOrderModel; @@ -57,6 +59,7 @@ public class SieveService { sieveModel.setYn(YnEnums.YES.getId()); iSieveDao.addChanQianSieve(sieveModel); } + public void update(MongoQuery mongoQuery, SieveResultModel sieveResultModel) { iSieveDao.update(mongoQuery, sieveResultModel); } @@ -64,20 +67,25 @@ public class SieveService { public List queryList(SieveQuery sieveQuery) { MongoQuery mongoQuery = sieveQuery.convertToQuery(); if (StringUtils.isNotEmpty(sieveQuery.getNeed())) { - sieveQuery.mysqlBuild((int)iSieveDao.count(sieveQuery.convertToQuery())); + sieveQuery.mysqlBuild((int) iSieveDao.count(sieveQuery.convertToQuery())); mongoQuery.start(sieveQuery.getOffset()).end(sieveQuery.getLimit()); } return iSieveDao.queryList(mongoQuery.addOrder(Sort.Direction.DESC, "modified")); } - public List queryList1(SieveQuery sieveQuery,String filed) { + public SieveModel findOneById(String id) { + return iSieveDao.findOneById(id); + } + + public List queryList1(SieveQuery sieveQuery, String filed) { MongoQuery mongoQuery = sieveQuery.convertToQuery(); if (StringUtils.isNotEmpty(sieveQuery.getNeed())) { - sieveQuery.mysqlBuild((int)iSieveDao.count(sieveQuery.convertToQuery())); + sieveQuery.mysqlBuild((int) iSieveDao.count(sieveQuery.convertToQuery())); mongoQuery.start(sieveQuery.getOffset()).end(sieveQuery.getLimit()); } - return iSieveDao.queryList(mongoQuery.addOrder(Sort.Direction.ASC, "lastMenses").addOrder(Sort.Direction.ASC,"status")); + return iSieveDao.queryList(mongoQuery.addOrder(Sort.Direction.ASC, filed)); } + /** * 根据id删除数据 * @@ -87,24 +95,47 @@ public class SieveService { iSieveDao.deleteById(mongoQuery.convertToQuery()); } - public void deleteSieve(String parentId, String hospitalId,Date lastMenses) { + public void deleteSieve(String parentId, String hospitalId, Date lastMenses) { // int days = DateUtil.daysBetween(lastMenses, new Date()); //判断是否在区间 // if (days >= 108 && days <= 146) { - SieveApplyOrderQuery sieveApplyOrderQuery = new SieveApplyOrderQuery(); - sieveApplyOrderQuery.setParentId(parentId); - sieveApplyOrderQuery.setYn(YnEnums.YES.getId()); - sieveApplyOrderQuery.setHospitalId(hospitalId); - List list = sieveApplyOrderDao.queryList(sieveApplyOrderQuery.convertToQuery()); - if (CollectionUtils.isEmpty(list)) { - //做分娩的时候需要删除产筛数据 - SieveQuery sieveQuery = new SieveQuery(); - sieveQuery.setParentId(parentId); - sieveQuery.setYn(YnEnums.YES.getId()); - sieveQuery.setHospitalId(hospitalId); - deleteById(sieveQuery); - } + SieveApplyOrderQuery sieveApplyOrderQuery = new SieveApplyOrderQuery(); + sieveApplyOrderQuery.setParentId(parentId); + sieveApplyOrderQuery.setYn(YnEnums.YES.getId()); + sieveApplyOrderQuery.setHospitalId(hospitalId); + List list = sieveApplyOrderDao.queryList(sieveApplyOrderQuery.convertToQuery()); + if (CollectionUtils.isEmpty(list)) { + //做分娩的时候需要删除产筛数据 + SieveQuery sieveQuery = new SieveQuery(); + sieveQuery.setParentId(parentId); + sieveQuery.setYn(YnEnums.YES.getId()); + sieveQuery.setHospitalId(hospitalId); + deleteById(sieveQuery); + } // } } + + public static void handOrder(SieveModel sieveModel) { + int days = DateUtil.getDays(sieveModel.getLastMenses(), DateUtil.formatDate(new Date())); + int order = 100; + if (null != sieveModel.getStatus() && sieveModel.getStatus() == SieveStatusEnums.O.getId() && days >= 100 && StringUtils.isEmpty(sieveModel.getCsRemarkTypeId()) && StringUtils.isEmpty(sieveModel.getDetail())) { + order = 1; + } else if (null != sieveModel.getStatus() && sieveModel.getStatus() == SieveStatusEnums.O1.getId() && days >= 100 && StringUtils.isEmpty(sieveModel.getCsRemarkTypeId()) && StringUtils.isEmpty(sieveModel.getDetail())) { + order = 2; + } else if (null != sieveModel.getStatus() && sieveModel.getStatus() == SieveStatusEnums.O2.getId() && null != sieveModel.getZtfx() && sieveModel.getZtfx() >= 1) { + order = 3; + } else if (null != sieveModel.getStatus() && sieveModel.getStatus() == SieveStatusEnums.O3.getId() && null != sieveModel.getCqResult() && sieveModel.getCqResult() == ChanQResultEnums.CqResult.O.getId()) { + order = 4; + } + sieveModel.setOrder(order); + } + + public static void main(String[] args) { + SieveModel sieveModel = new SieveModel(); + sieveModel.setLastMenses(DateUtil.parseYMD("2016-4-5")); + sieveModel.setStatus(2); + handOrder(sieveModel); + System.out.print(sieveModel.getOrder()); + } } \ No newline at end of file diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/SieveModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/SieveModel.java index 7e0c5fa..36fe92b 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/SieveModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/SieveModel.java @@ -51,6 +51,9 @@ public class SieveModel extends BaseModel { private String from; //申请产筛时间 private Date applyDate; + //排序字段 + private int order; + private String csRemarkTypeId; private String detail; @@ -58,6 +61,14 @@ public class SieveModel extends BaseModel { private Date modified; private Integer yn; + public int getOrder() { + return order; + } + + public void setOrder(int order) { + this.order = order; + } + public String getCsRemarkTypeId() { return csRemarkTypeId; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ApplyOrderFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ApplyOrderFacade.java index 40d991a..7f507d1 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ApplyOrderFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ApplyOrderFacade.java @@ -339,6 +339,7 @@ public class ApplyOrderFacade { } int days = DateUtil.daysBetween(sieveModel.getLastMenses(), new Date()); sieveModel.setDueWeek(days); + SieveService.handOrder(sieveModel); sieveService.updateOneChanQianDiaSieve(sieveModel); } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java index 9f041a5..5ebb51f 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java @@ -85,6 +85,9 @@ public class SieveFacade { sieveModel.setHospitalId(hospitalId); sieveModel.setZtfx(sieveAddRequest.getMax()); sieveService.updateOneChanQianDiaSieve(sieveModel); + SieveModel sieveModel1 =sieveService.findOneById(list.get(0).getId()); + SieveService.handOrder(sieveModel1); + sieveService.updateOneChanQianDiaSieve(sieveModel1); return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); } @@ -165,6 +168,11 @@ public class SieveFacade { sieveModel.setStatus(4); sieveModel.setCqStatus(1); sieveService.updateOneChanQianDiaSieve(sieveModel); + + SieveModel sieveModel1 =sieveService.findOneById(chanQianDiaAddRequest.getId()); + SieveService.handOrder(sieveModel1); + sieveService.updateOneChanQianDiaSieve(sieveModel1); + return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); } @@ -204,7 +212,7 @@ public class SieveFacade { String hospitalId = autoMatchFacade.getHospitalId(userId); sieveQuery.setHospitalId(hospitalId); //查询产筛list - List list = sieveService.queryList1(sieveQuery, "status"); + List list = sieveService.queryList1(sieveQuery, "order"); List data = new ArrayList<>(); if (CollectionUtils.isNotEmpty(list)) { for (SieveModel sieveModel : list) { @@ -310,6 +318,10 @@ public class SieveFacade { sieve.setCsRemarkTypeId(qsTypeId); sieve.setDetail(detail); sieveService.updateOneChanQianDiaSieve(sieve); + + SieveModel sieveModel1 =sieveService.findOneById(csId); + SieveService.handOrder(sieveModel1); + sieveService.updateOneChanQianDiaSieve(sieveModel1); return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); } } \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/SyncDataTaskService.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/SyncDataTaskService.java index 7e9c78d..9cfa60a 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/SyncDataTaskService.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/SyncDataTaskService.java @@ -199,6 +199,7 @@ public class SyncDataTaskService { ztfx = Integer.valueOf(resultModel.getSjgjx()); } model.setZtfx(ztfx); + SieveService.handOrder(model); sieveService.updateOneChanQianDiaSieve(model); } } @@ -267,6 +268,7 @@ public class SyncDataTaskService { sieveModel.setZtfx(ztfx); sieveModel.setStatus(3); + SieveService.handOrder(sieveModel); sieveService.updateOneChanQianDiaSieve(sieveModel); //增加产筛申请单 SieveApplyOrderModel orderModel = new SieveApplyOrderModel(); @@ -364,6 +366,7 @@ public class SyncDataTaskService { ztfx = Integer.valueOf(resultModel.getSjgjx()); } model.setZtfx(ztfx); + SieveService.handOrder(model); sieveService.updateOneChanQianDiaSieve(model); } } @@ -396,6 +399,9 @@ public class SyncDataTaskService { int days = DateUtil.daysBetween(model.getLastMenses(), new Date()); model.setDueWeek(days); model.setApplyDate(orderModel.getModified()); + + SieveService.handOrder(model); + sieveService.updateOneChanQianDiaSieve(model); } } -- 1.8.3.1