diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java index 7ee1e4c..b061bfe 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java @@ -319,7 +319,7 @@ public class BabyBookbuildingFacade { * @return */ public boolean updateBabySerInfo(BabyBookbuildingAddRequest request){ - if(StringUtils.isEmpty(request.getId())){ + if(StringUtils.isEmpty(request.getId())||request.getServiceType()==null||request.getServiceStatus()==null){ return false; } BabyModelQuery babyQuery = new BabyModelQuery(); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientServiceFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientServiceFacade.java index 98b1c91..3161028 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientServiceFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientServiceFacade.java @@ -242,7 +242,7 @@ public class PatientServiceFacade { operateLogFacade.addAddOptLog(userId, Integer.valueOf(hospitalId), pser, OptActionEnums.ADD.getId(), "开通增值服务"); if (ps.getPerType() != null && ps.getPerType() == 2) {//儿童建档服务数据处理 - if(PatientSerEnums.SerTypeEnums.babyjzzz.getId() == ps.getSerType()){ + if (PatientSerEnums.SerTypeEnums.babyjzzz.getId() == ps.getSerType()) { BabyBookbuildingAddRequest babyBookbuildingAddRequest = new BabyBookbuildingAddRequest(); babyBookbuildingAddRequest.setId(ps.getParentid()); babyBookbuildingAddRequest.setServiceType(ServiceTypeEnums.ADD_SERVICE.getId()); @@ -292,10 +292,12 @@ public class PatientServiceFacade { patientServiceService.updatePatientService(ps); + PatientService after = patientServiceService.getPatientService(ps.getId()); + if (before.getPerType() != null && before.getPerType() == 2) {//儿童建档服务数据处理 BabyBookbuildingAddRequest babyBookbuildingAddRequest = new BabyBookbuildingAddRequest(); babyBookbuildingAddRequest.setId(ps.getParentid()); - if(PatientSerEnums.SerTypeEnums.babyjzzz.getId() == ps.getSerType()){ + if (PatientSerEnums.SerTypeEnums.babyjzzz.getId() == ps.getSerType()) { babyBookbuildingAddRequest.setServiceType(ServiceTypeEnums.ADD_SERVICE.getId()); if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.kt.getId()) { babyBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.ADD_OPEN.getId()); @@ -306,16 +308,23 @@ public class PatientServiceFacade { } else if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.zt.getId()) { babyBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.SUSPEND.getId()); } - }else if(PatientSerEnums.SerTypeEnums.babyBzfw.getId() == ps.getSerType()){ - babyBookbuildingAddRequest.setServiceType(ServiceTypeEnums.STANDARD_SERVICE.getId()); - if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.kt.getId()) { - babyBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.STANDARD_OPEN.getId()); - } else if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.td.getId()) { - babyBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.NO_OPEN.getId()); - } else if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.gq.getId()) { - babyBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.STANDARD_OVERDUE.getId()); - } else if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.zt.getId()) { - babyBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.STANDARD_OVERDUE.getId()); + } else if (PatientSerEnums.SerTypeEnums.babyBzfw.getId() == ps.getSerType()) { + PatientServiceQuery query = new PatientServiceQuery(); + query.setParentid(after.getParentid()); + query.setSerType(PatientSerEnums.SerTypeEnums.babyjzzz.getId()); + int count = patientServiceService.queryPatientServiceCount(query); + //是否有增值服务--没有则处理标准服务 + if (count == 0) { + babyBookbuildingAddRequest.setServiceType(ServiceTypeEnums.STANDARD_SERVICE.getId()); + if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.kt.getId()) { + babyBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.STANDARD_OPEN.getId()); + } else if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.td.getId()) { + babyBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.NO_OPEN.getId()); + } else if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.gq.getId()) { + babyBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.STANDARD_OVERDUE.getId()); + } else if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.zt.getId()) { + babyBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.STANDARD_OVERDUE.getId()); + } } } babyBookbuildingFacade.updateBabySerInfo(babyBookbuildingAddRequest); @@ -333,20 +342,27 @@ public class PatientServiceFacade { yunBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.SUSPEND.getId()); } }else if(PatientSerEnums.SerTypeEnums.bzfw.getId() == ps.getSerType()){ - yunBookbuildingAddRequest.setServiceType(ServiceTypeEnums.STANDARD_SERVICE.getId()); - if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.kt.getId()) { - yunBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.STANDARD_OPEN.getId()); - } else if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.td.getId()) { - yunBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.NO_OPEN.getId()); - } else if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.gq.getId()) { - yunBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.STANDARD_OVERDUE.getId()); - } else if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.zt.getId()) { - yunBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.NO_OPEN.getId()); + PatientServiceQuery query = new PatientServiceQuery(); + query.setParentid(after.getParentid()); + query.setSerType(PatientSerEnums.SerTypeEnums.babyjzzz.getId()); + int count = patientServiceService.queryPatientServiceCount(query); + //是否有增值服务--没有则处理标准服务 + if (count == 0) { + yunBookbuildingAddRequest.setServiceType(ServiceTypeEnums.STANDARD_SERVICE.getId()); + if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.kt.getId()) { + yunBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.ADD_OPEN.getId()); + } else if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.td.getId()) { + yunBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.UNSUBSCRIBE.getId()); + } else if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.gq.getId()) { + yunBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.ADD_OVERDUE.getId()); + } else if (ps.getSerStatus() == PatientSerEnums.SerStatusEnums.zt.getId()) { + yunBookbuildingAddRequest.setServiceStatus(ServiceStatusEnums.SUSPEND.getId()); + } } } bookbuildingFacade.updatePregnantById(ps.getParentid(), yunBookbuildingAddRequest, userId); } - PatientService after = patientServiceService.getPatientService(ps.getId()); + operateLogFacade.addModifyOptLog(userId, Integer.valueOf(hospitalId), before, after, OptActionEnums.UPDATE.getId(), "修改服务"); BaseResponse baseResponse = new BaseResponse(); baseResponse.setErrorcode(ErrorCodeConstants.SUCCESS); @@ -366,14 +382,14 @@ public class PatientServiceFacade { } PatientSerResult result = new PatientSerResult(); result.setId(ps.getId()); - if(ps.getPerType()!=null&&ps.getPerType()==2){//儿童 + if (ps.getPerType() != null && ps.getPerType() == 2) {//儿童 BabyModel model = babyService.getOneBabyById(ps.getParentid()); result.setSex(model.getSex() == null ? "" : StringUtils.emptyDeal(SexEnum.getTextById(model.getSex()))); result.setBabyName(StringUtils.emptyDeal(model.getName())); result.setBirthday(StringUtils.emptyDeal(DateUtil.getyyyy_MM_dd(model.getBirth()))); result.setName(StringUtils.emptyDeal(model.getMname())); result.setMonthAge(StringUtils.emptyDeal(DateUtil.getBabyMonthAge(model.getBirth(), new Date()))); - }else { + } else { Patients patients = patientsService.findOnePatientById(ps.getParentid()); if (null != patients) { String weekDesc = DateUtil.getWeekDesc(patients.getLastMenses(), new Date()); @@ -402,12 +418,12 @@ public class PatientServiceFacade { } if (StringUtils.isNotEmpty(ps.getUpdateUser())) { try { - if(StringUtils.isNum(ps.getUpdateUser())) { + if (StringUtils.isNum(ps.getUpdateUser())) { Users users = usersService.getUsers(Integer.parseInt(ps.getUpdateUser())); if (users != null) { result.setUpdateUser(users.getName()); } - }else{ + } else { result.setUpdateUser("产检医生"); } } catch (Exception e) { @@ -473,7 +489,7 @@ public class PatientServiceFacade { * @param serStatus 开通状态(1-开通、2-退订、3-过期、4-暂停) * @return */ - public BaseListResponse getPatientService(Integer serType,Integer perType, String serDoct, Date createStartDate, Date createEndDate, Integer serStatus, BasePageQueryRequest pageInfo, Integer id) { + public BaseListResponse getPatientService(Integer serType, Integer perType, String serDoct, Date createStartDate, Date createEndDate, Integer serStatus, BasePageQueryRequest pageInfo, Integer id) { //根据用户id获取医院ID String hospitalId = autoMatchFacade.getHospitalId(id); PatientServiceQuery patientQuery = new PatientServiceQuery(); @@ -481,9 +497,9 @@ public class PatientServiceFacade { patientQuery.setSerType(serType); patientQuery.setSerDoct(serDoct); //服务类型 - if(perType==null){ + if (perType == null) { patientQuery.setPerType(1); - }else{ + } else { patientQuery.setPerType(perType); } patientQuery.setCreateStartDate(createStartDate);