From f24cea643487547cc45895d0604d8ae6512858a3 Mon Sep 17 00:00:00 2001 From: yangfei Date: Mon, 5 Mar 2018 16:47:39 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=BD=E8=AE=BF=E6=95=B0=E6=8D=AE=E4=B8=AA?= =?UTF-8?q?=E8=8A=82=E7=82=B9=E6=9B=B4=E6=96=B0bug=E7=AC=AC=E4=B8=89?= =?UTF-8?q?=E8=BD=AE=E8=87=AA=E6=B5=8Bbug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/lyms/platform/pojo/TrackDown.java | 4 +- .../web/controller/TrackDownController.java | 7 -- .../operate/web/facade/TrackDownFacade.java | 34 +++++-- .../web/service/impl/TrackDownServiceImpl.java | 110 ++++++++------------- 4 files changed, 68 insertions(+), 87 deletions(-) diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/TrackDown.java b/platform-dal/src/main/java/com/lyms/platform/pojo/TrackDown.java index 99be6bf..8e88891 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/TrackDown.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/TrackDown.java @@ -54,7 +54,7 @@ public class TrackDown extends BaseModel { private String trackDownUserId; /** - * 追访方式 + * 追访方式 电话、上门 */ private Integer trackDownType; @@ -74,7 +74,7 @@ public class TrackDown extends BaseModel { private String result; /** - * 追访转接 + * 追访转接 是否流转 */ private Integer trackDownTransfer; diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TrackDownController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TrackDownController.java index 6611360..bb17090 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TrackDownController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TrackDownController.java @@ -59,13 +59,6 @@ public class TrackDownController extends BaseController { return trackDownService.add(getUserId(request), trackDown); } - /* @ResponseBody - @TokenRequired - @RequestMapping(method = RequestMethod.GET) - public BaseResponse list(String provinceId, String cityId, String areaId, String streetId, String key, @RequestParam Integer trackType, @RequestParam Integer page, @RequestParam Integer limit, HttpServletRequest request) { - return trackDownService.list(provinceId, cityId, areaId, streetId, key, trackType, page, limit, getUserId(request)); - }*/ - @TokenRequired @RequestMapping(value = "/export", method = RequestMethod.GET) public void export(String provinceId, String cityId, String areaId, String streetId, String key, @RequestParam Integer trackType, HttpServletRequest request, HttpServletResponse response) { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/TrackDownFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/TrackDownFacade.java index b4e6e3c..445e800 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/TrackDownFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/TrackDownFacade.java @@ -184,13 +184,14 @@ public class TrackDownFacade { } } map.put("checkTime", "--"); /** 产检日期 */ - //查询分娩追访记录 + //查询追访记录 TrackDown tc = mongoTemplate.findOne(Query.query(Criteria.where("parentId").is(parentId).and("trackDownDateType").is(trackType).and("yn").is(1)).with(new Sort(Sort.Direction.DESC, "created")), TrackDown.class); if (tc != null) { map.put("nextCheckTime", tc.getReservatDate() == null ? "--" : DateUtil.getyyyy_MM_dd(tc.getReservatDate())); // 预约预约时间 map.put("yyfsDate", DateUtil.getyyyy_MM_dd(tc.getReservatDate())); /** 预约访视日期 */ + map.put("reservatDate", DateUtil.getyyyy_MM_dd(tc.getReservatDate())); /** 预约日期 */ } - // map.put("fcCount", mongoTemplate.count(Query.query(Criteria.where("parentId").is(parentId).and("trackDownDateType").is(TrackDownDateEnums.G.getId()).and("yn").is(1)), TrackDown.class)); /** 复查次数 */ + //产后复查次数 map.put("fcCount", mongoTemplate.count(Query.query(Criteria.where("parentId").is(parentId).and("yn").is(1)), PostReviewModel.class)); @@ -249,14 +250,22 @@ public class TrackDownFacade { if (CollectionUtils.isNotEmpty(downRecordList) && null != downTypeHandler) { for (TrackDownRecord trackDownRecord : downRecordList) { //追访类型 - Integer trackType = trackDownRecord.getTrackType(); //查询的追访类型 trackDownRecord.setTrackType(downQueryRequest.getTrackType()); Map map = downTypeHandler.build(trackDownRecord, mongoTemplate); + Integer trackType = trackDownRecord.getTrackType(); + if(downQueryRequest.getTrackType()==TrackDownDateEnums.D.getId()){ + if(trackType == TrackDownDateEnums.C.getId()){ + trackType = TrackDownDateEnums.D.getId(); + } + }else if(downQueryRequest.getTrackType()==TrackDownDateEnums.G.getId()){ + if(trackType == TrackDownDateEnums.F.getId()){ + trackType = TrackDownDateEnums.G.getId(); + } + } //设置数据真实的追访类型 map.put("trackDownDateType", trackType); data.add(map); - } } PageResult pageResult = new PageResult(); @@ -280,7 +289,7 @@ public class TrackDownFacade { temp.put("trackDownDateType", downRecord.getTrackType()); temp.put("residenceAddress", CommonsHelper.getFullAddress(downRecord.getProvinceRegisterId(), downRecord.getCityRegisterId(), downRecord.getAreaRegisterId(), downRecord.getAddressRegister(), basicConfigService)); /** 居住地 */ temp.put("phone", StringUtils.encryPhone(downRecord.getPhone())); - TrackDown trackDown = mongoTemplate.findOne(Query.query(Criteria.where("parentId").is(downRecord.getParentId()).and("yn").is(1).and("trackDownDateType").is(downRecord.getTrackType())).with(new Sort(Sort.Direction.DESC, "created")), TrackDown.class); + TrackDown trackDown = mongoTemplate.findOne(Query.query(Criteria.where("parentId").is(downRecord.getParentId()).and("yn").is(1).and("trackDownDateType").in(7,10)).with(new Sort(Sort.Direction.DESC, "created")), TrackDown.class); temp.put("age", DateUtil.getAge(downRecord.getBirth())); // 追访结果 temp.put("result", trackDown == null ? "--" : trackDown.getResult()); @@ -331,7 +340,9 @@ public class TrackDownFacade { temp.put("trackDownDateType", downRecord.getTrackType()); temp.put("residenceAddress", CommonsHelper.getFullAddress(downRecord.getProvinceRegisterId(), downRecord.getCityRegisterId(), downRecord.getAreaRegisterId(), downRecord.getAddressRegister(), basicConfigService)); /** 居住地 */ temp.put("phone", StringUtils.encryPhone(downRecord.getPhone())); - List trackDowns = mongoTemplate.find(Query.query(Criteria.where("parentId").is(downRecord.getParentId()).and("yn").is(1).and("trackDownDateType").is(downRecord.getTrackType())).with(new Sort(Sort.Direction.DESC, "created")), TrackDown.class); + + + List trackDowns = mongoTemplate.find(Query.query(Criteria.where("parentId").is(downRecord.getParentId()).and("yn").is(1).and("trackDownDateType").in(6,11)).with(new Sort(Sort.Direction.DESC, "created")), TrackDown.class); temp.put("age", DateUtil.getAge(downRecord.getBirth())); if (CollectionUtils.isNotEmpty(trackDowns)) { TrackDown trackDown = trackDowns.get(0); @@ -441,8 +452,15 @@ public class TrackDownFacade { } //产检次数 temp.put("checkCount", mongoTemplate.count(Query.query(Criteria.where("parentId").is(parentId).and("hospitalId").is(hospitalId)), AntenatalExaminationModel.class) + mongoTemplate.count(Query.query(Criteria.where("parentId").is(parentId)), AntExChuModel.class)); - - TrackDown trackDown = mongoTemplate.findOne(Query.query(Criteria.where("yn").is(1).and("parentId").is(downRecord.getParentId()).and("trackDownDateType").is(downRecord.getTrackType())).with(new Sort(Sort.Direction.DESC, "created")), TrackDown.class); + Criteria criteria = Criteria.where("yn").is(1).and("parentId").is(downRecord.getParentId()); + if (TrackDownDateEnums.C.getId() == downRecord.getTrackType()) { + criteria.and("trackDownDateType").in(3, 9); + } else if (TrackDownDateEnums.D.getId() == downRecord.getTrackType()) { + criteria.and("trackDownDateType").in(4, 8); + } else { + criteria.and("trackDownDateType").in(downRecord.getTrackType()); + } + TrackDown trackDown = mongoTemplate.findOne(Query.query(criteria).with(new Sort(Sort.Direction.DESC, "created")),TrackDown.class); if (trackDown != null) { temp.put("result", StringUtils.isEmpty(trackDown.getResult()) ? "--" : trackDown.getResult()); // 追访结果 temp.put("trackDownTime", trackDown == null ? "--" : DateUtil.getyyyy_MM_dd(trackDown.getTrackDownDate())); // 追访时间 diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TrackDownServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TrackDownServiceImpl.java index 53f5ae1..a55d435 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TrackDownServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TrackDownServiceImpl.java @@ -206,71 +206,41 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS } } + /** + * 新增追访详情 + * + * @param userId + * @param trackDown + * @return + */ public BaseResponse add(Integer userId, TrackDown trackDown) { String hospitalId = autoMatchFacade.getHospitalId(userId); - //婚前检查 怀孕建档 的时候没有pid - // if (TrackDownDateEnums.A.getId() != trackDown.getTrackDownDateType() && TrackDownDateEnums.B.getId() != trackDown.getTrackDownDateType()) { - // String parentId = mongoUtil.doHidePatient(trackDown.getParentId(), hospitalId); - // trackDown.setPid(mongoUtil.getPid(parentId)); - // trackDown.setParentId(parentId); - // } - //怀孕建档:怀孕建档流转至孕期检查的时候需要有孕妇的档案才可以扭转 : 作废,孕妇建档时自动流转到孕检追访 - /*if (TrackDownTransferEnums.B.getId() == trackDown.getTrackDownTransfer() && - TrackDownDateEnums.B.getId() == trackDown.getTrackDownDateType() - && StringUtils.isNotEmpty(trackDown.getParentId())) { - - ResidentsArchiveModel archiveModel = residentsArchiveService.getResident(trackDown.getParentId()); - //TODO 需要去验证或者绑定孕妇的建档记录,不然不能进行后续的操作 - PatientsQuery patientsQuery1 = new PatientsQuery(); - patientsQuery1.setCardNo(archiveModel.getCertificateNum()); - patientsQuery1.setPcerteTypeId(archiveModel.getCertificateTypeId()); - patientsQuery1.setHospitalId(hospitalId); - patientsQuery1.setType(1); - patientsQuery1.setYn(YnEnums.YES.getId()); - List patientses = patientsService.queryPatient(patientsQuery1); - if (CollectionUtils.isNotEmpty(patientses)) { - TrackDownRecordQuery trackDownRecordQuery = new TrackDownRecordQuery(); - trackDownRecordQuery.setResidentsArchiveId(trackDown.getParentId()); - - TrackDownRecord trackDownRecord = new TrackDownRecord(); - trackDownRecord.setParentId(patientses.get(0).getId()); - //修改绑定建档信息的id - trackDownRecordService.findAndMoidify(trackDownRecordQuery, trackDownRecord); - } else { - return new BaseResponse().setErrorcode(4016).setErrormsg("您还没有孕妇的档案,请去医院建档."); - } - }*/ - - //追访列表ID - if (trackDown.getTrackDownRecId() != null) { - TrackDownRecord trackDownRecord = trackDownRecordService.getTrackDown(trackDown.getTrackDownRecId()); - if (trackDownRecord != null) { - //当传入的状态和数据库一致时才能进行有效操作 - if (trackDownRecord.getTrackType().intValue() == trackDown.getTrackDownDateType()) { - if (TrackDownDateEnums.A.getId() == trackDown.getTrackDownDateType()&&"5d0b782f-b61b-441b-b8c5-4bf55eece273".equals(trackDownRecord.getSex())) {//性别男:特殊处理,流转到下一流程时结束流程 + if (trackDown.getTrackDownDateType() != TrackDownDateEnums.D.getId() && trackDown.getTrackDownDateType() != TrackDownDateEnums.G.getId()) {//不等于产检追访和产后访视时进行数据验证状态 + //追访列表ID + if (trackDown.getTrackDownRecId() != null) { + TrackDownRecord trackDownRecord = trackDownRecordService.getTrackDown(trackDown.getTrackDownRecId()); + if (trackDownRecord != null) { + //当传入的状态和数据库一致时才能进行有效操作 + if (trackDownRecord.getTrackType().intValue() != trackDown.getTrackDownDateType()) { + return RespBuilder.buildErro(ResponseCode.DATA_ERROR, "数据已经被修改请回到列表刷新后再操作!"); + } + if (TrackDownDateEnums.A.getId() == trackDown.getTrackDownDateType() + && "5d0b782f-b61b-441b-b8c5-4bf55eece273".equals(trackDownRecord.getSex())) {//性别男:特殊处理,流转到下一流程时结束流程 trackDown.setTrackDownTransfer(TrackDownTransferEnums.C.getId()); } - trackDown.setId(null); - trackDown.setYn(YnEnums.YES.getId()); - trackDown.setCreated(new Date()); - trackDown.setHospitalId(hospitalId); - trackDown.setOperaterId(userId); - trackDown.setModified(new Date()); - trackDownService.add(trackDown); - String recordId = trackDown.getTrackDownRecId(); - updateRecordStatus(trackDown, recordId); - return RespBuilder.buildSuccess(trackDown.getId()); - } else { - return RespBuilder.buildErro(ResponseCode.DATA_ERROR, "数据已经被修改请回到列表刷新后再操作!"); } - } else { - return RespBuilder.buildErro(ResponseCode.DATA_ERROR, "传入的trackDownRecId没有找到数据"); } - } else { - return RespBuilder.buildErro(ResponseCode.DATA_ERROR, "请传入trackDownRecId"); } - - + trackDown.setId(null); + trackDown.setYn(YnEnums.YES.getId()); + trackDown.setCreated(new Date()); + trackDown.setHospitalId(hospitalId); + trackDown.setOperaterId(userId); + trackDown.setModified(new Date()); + trackDownService.add(trackDown); + String recordId = trackDown.getTrackDownRecId(); + updateRecordStatus(trackDown, recordId); + return RespBuilder.buildSuccess(trackDown.getId()); } /** @@ -476,13 +446,13 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS chfsList.add(temp); } else if (TrackDownDateEnums.G.getId().equals(trackDown.getTrackDownDateType())) { chfcList.add(temp); - } else if (TrackDownDateEnums.H.getId().equals(trackDown.getTrackDownDateType())) { + } else if (TrackDownDateEnums.H.getId().equals(trackDown.getTrackDownDateType())) { cqscList.add(temp); } else if (TrackDownDateEnums.I.getId().equals(trackDown.getTrackDownDateType())) { cqjcList.add(temp); } else if (TrackDownDateEnums.J.getId().equals(trackDown.getTrackDownDateType())) { chfcList.add(temp); - }else if (TrackDownDateEnums.K.getId().equals(trackDown.getTrackDownDateType())) { + } else if (TrackDownDateEnums.K.getId().equals(trackDown.getTrackDownDateType())) { chfsList.add(temp); } } @@ -491,14 +461,14 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS Criteria criteria = Criteria.where("parentId").is(patientId).and("yn").is(1); - if (TrackDownDateEnums.D.getId() == trackType) { - criteria.and("trackDownDateType").in(3,8); - } else if (TrackDownDateEnums.C.getId() == trackType) { - criteria.and("trackDownDateType").in(3,9); + if (TrackDownDateEnums.C.getId() == trackType) { + criteria.and("trackDownDateType").in(3, 9); + } else if (TrackDownDateEnums.D.getId() == trackType) { + criteria.and("trackDownDateType").in(4, 8); } else if (TrackDownDateEnums.F.getId() == trackType) { - criteria.and("trackDownDateType").in(6,11); + criteria.and("trackDownDateType").in(6, 11); } else if (TrackDownDateEnums.G.getId() == trackType) { - criteria.and("trackDownDateType").in(7,10); + criteria.and("trackDownDateType").in(7, 10); } else { criteria.and("trackDownDateType").in(trackType); } @@ -508,13 +478,13 @@ public class TrackDownServiceImpl extends BaseServiceImpl implements ITrackDownS Map temp = new HashMap<>(); temp.put("trackDownDate", trackDown.getTrackDownDate() == null ? "--" : DateUtil.getyyyy_MM_dd(trackDown.getTrackDownDate())); temp.put("trackDownUser", StringUtils.isEmpty(trackDown.getTrackDownUserId()) ? "--" : trackDown.getTrackDownUserId()); - if(trackDown.getTrackDownType() == TrackDownDateEnums.H.getId()){ + if (trackDown.getTrackDownType() == TrackDownDateEnums.H.getId()) { trackDown.setTrackDownType(4); - }else if(trackDown.getTrackDownType() == TrackDownDateEnums.I.getId()){ + } else if (trackDown.getTrackDownType() == TrackDownDateEnums.I.getId()) { trackDown.setTrackDownType(3); - }else if(trackDown.getTrackDownType() == TrackDownDateEnums.J.getId()){ + } else if (trackDown.getTrackDownType() == TrackDownDateEnums.J.getId()) { trackDown.setTrackDownType(7); - }else if(trackDown.getTrackDownType() == TrackDownDateEnums.K.getId()){ + } else if (trackDown.getTrackDownType() == TrackDownDateEnums.K.getId()) { trackDown.setTrackDownType(6); } -- 1.8.3.1