diff --git a/src/main/java/com/syjiaer/clinic/server/controller/patient/RegistrationController.java b/src/main/java/com/syjiaer/clinic/server/controller/patient/RegistrationController.java index 0f2eea0..2aff29a 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/patient/RegistrationController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/patient/RegistrationController.java @@ -77,6 +77,7 @@ public class RegistrationController extends BaseController { if (registration == null) { throw new MessageException("data参数为空"); } + patientRegistrationService.updateById(registration); return success(); } diff --git a/src/main/java/com/syjiaer/clinic/server/entity/patient/PatientRegistration.java b/src/main/java/com/syjiaer/clinic/server/entity/patient/PatientRegistration.java index cbbb813..f20f2b6 100644 --- a/src/main/java/com/syjiaer/clinic/server/entity/patient/PatientRegistration.java +++ b/src/main/java/com/syjiaer/clinic/server/entity/patient/PatientRegistration.java @@ -55,6 +55,9 @@ public class PatientRegistration implements Serializable { @ApiModelProperty("挂号时间") private LocalDateTime createDatetime; + @ApiModelProperty("挂号时间") + private LocalDateTime updateDatetime; + @ApiModelProperty("推荐") private String recommendations; diff --git a/src/main/java/com/syjiaer/clinic/server/service/diagnosis/DiagnosisService.java b/src/main/java/com/syjiaer/clinic/server/service/diagnosis/DiagnosisService.java index 23f9192..c2b9b10 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/diagnosis/DiagnosisService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/diagnosis/DiagnosisService.java @@ -124,6 +124,7 @@ public class DiagnosisService extends BaseService { } PatientRegistration updateRegis = new PatientRegistration(); updateRegis.setId(dbRegis.getId()); + updateRegis.setUpdateDatetime(LocalDateTime.now()); updateRegis.setStatus(RegistrationStatusEnum.complete.getStatus()); patientRegistrationMapper.updateById(updateRegis); //诊断主表 diff --git a/src/main/java/com/syjiaer/clinic/server/service/patient/PatientRegistrationService.java b/src/main/java/com/syjiaer/clinic/server/service/patient/PatientRegistrationService.java index 6a3a508..850f710 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/patient/PatientRegistrationService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/patient/PatientRegistrationService.java @@ -118,6 +118,7 @@ public class PatientRegistrationService extends BaseService { registration.setRegistrationMoney(new BigDecimal("0")); registration.setAppointmentTime(appointmentTime); registration.setCreateDatetime(now); + registration.setUpdateDatetime(now); registration.setStatus(1); OrganizationMember docker = organizationMemberMapper.selectById(registration.getOrganizationDoctorId()); if (docker == null){ @@ -241,16 +242,6 @@ public class PatientRegistrationService extends BaseService { return registration; } - /* - * 获取所有已删除挂号信息 - * @param id 挂号id - */ - public List allList() { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("del_flag", 1); - List list = patientRegistrationMapper.selectList(queryWrapper); - return list; - } /* * 根据查询条件查询挂号信息 @@ -258,8 +249,56 @@ public class PatientRegistrationService extends BaseService { */ public Page getListByType(RegistrationQuery query) { ManagerUser user = getManagerUser(); - List Beforlist = patientRegistrationMapper.selectList(getQueryWrapper(query, user,true)); - List Afterlist = patientRegistrationMapper.selectList(getQueryWrapper(query, user,false)); + List list=null; + //如果状态为1 获取挂号列表 + if(query.getStatus()==RegistrationStatusEnum.waiting.getStatus()){ + list = getRegisterList(query, user); + } + //否则获取患者列表 逻辑相同 但是排序规则不同 + else{ + list = getPatientList(query, user); + } + Page page = new Page<>(); + page.setList(list); + page.setTotal_count(10000); + page.setTotal_page(1); + return page; + } + + private List getPatientList(RegistrationQuery query, ManagerUser user){ + List list =patientRegistrationMapper.selectList(getPatientQueryWrapper(query, user));; + return list; + } + private QueryWrapper getPatientQueryWrapper(RegistrationQuery query, ManagerUser user){ + QueryWrapper PatientQueryWrapper = new QueryWrapper<>(); + ManagerUser dbUser = managerUserMapper.selectById(user.getId()); + OrganizationMember member= null; + if (dbUser != null && dbUser.getOrganizationMemberId() != null){ + member = organizationMemberMapper.selectById(dbUser.getOrganizationMemberId()); + } + + PatientQueryWrapper.eq("del_flag", 0); + if (member != null && member.getRole() == 1){ + PatientQueryWrapper.eq("organization_doctor_id", member.getId()); + } + PatientQueryWrapper.eq("status", query.getStatus()); + if (query.getKeyword() != null) { + PatientQueryWrapper.like("name", query.getKeyword()); + PatientQueryWrapper.or().like("phone", query.getKeyword()); + } + if (query.getPageNum() == null) { + query.setPageNum(1); + } + if (query.getPageSize() == null) { + query.setPageSize(Constants.DetailPageSize); + } + + return PatientQueryWrapper; + } + + private List getRegisterList(RegistrationQuery query, ManagerUser user){ + List Beforlist = patientRegistrationMapper.selectList(getRegisterQueryWrapper(query, user,true)); + List Afterlist = patientRegistrationMapper.selectList(getRegisterQueryWrapper(query, user,false)); List list = new ArrayList<>(); list.addAll(Beforlist); @@ -272,32 +311,26 @@ public class PatientRegistrationService extends BaseService { regis.setIsAppointment(true); } }); - Page page = new Page<>(); - page.setList(list); - page.setTotal_count(10000); - page.setTotal_page(1); - return page; + return list; } - private QueryWrapper getQueryWrapper(RegistrationQuery query, ManagerUser user,boolean isBefore){ - QueryWrapper regisQuery = new QueryWrapper<>(); + private QueryWrapper getRegisterQueryWrapper(RegistrationQuery query, ManagerUser user,boolean isBefore){ + QueryWrapper registerQueryWrapper = new QueryWrapper<>(); ManagerUser dbUser = managerUserMapper.selectById(user.getId()); OrganizationMember member= null; if (dbUser != null && dbUser.getOrganizationMemberId() != null){ member = organizationMemberMapper.selectById(dbUser.getOrganizationMemberId()); } - regisQuery.eq("del_flag", 0); + registerQueryWrapper.eq("del_flag", 0); if (member != null && member.getRole() == 1){ - regisQuery.eq("organization_doctor_id", member.getId()); - } - if (query.getStatus() != null) { - regisQuery.eq("status", query.getStatus()); + registerQueryWrapper.eq("organization_doctor_id", member.getId()); } + registerQueryWrapper.eq("status", query.getStatus()); if (query.getKeyword() != null) { - regisQuery.like("name", query.getKeyword()); - regisQuery.or().like("phone", query.getKeyword()); + registerQueryWrapper.like("name", query.getKeyword()); + registerQueryWrapper.or().like("phone", query.getKeyword()); } if (query.getPageNum() == null) { query.setPageNum(1); @@ -306,19 +339,19 @@ public class PatientRegistrationService extends BaseService { query.setPageSize(Constants.DetailPageSize); } if (query.getBeginTime() != null) { - regisQuery.ge("appointment_time", query.getBeginTime()); + registerQueryWrapper.ge("appointment_time", query.getBeginTime()); } if (query.getEndTime() != null) { - regisQuery.le("appointment_time", query.getEndTime()); + registerQueryWrapper.le("appointment_time", query.getEndTime()); } if(isBefore){ - regisQuery.le("appointment_time", LocalDateTime.now()); - regisQuery.orderByDesc("appointment_time"); + registerQueryWrapper.le("appointment_time", LocalDateTime.now()); + registerQueryWrapper.orderByDesc("appointment_time"); }else{ - regisQuery.ge("appointment_time", LocalDateTime.now()); - regisQuery.orderByAsc("appointment_time"); + registerQueryWrapper.ge("appointment_time", LocalDateTime.now()); + registerQueryWrapper.orderByAsc("appointment_time"); } - return regisQuery; + return registerQueryWrapper; } /** @@ -351,6 +384,7 @@ public class PatientRegistrationService extends BaseService { public void updateById(PatientRegistration registration) { + registration.setUpdateDatetime(LocalDateTime.now()); patientRegistrationMapper.updateById(registration); } @@ -415,6 +449,7 @@ public class PatientRegistrationService extends BaseService { PatientRegistration updateRegistration = new PatientRegistration(); updateRegistration.setId(regisId); updateRegistration.setStatus(status); + updateRegistration.setUpdateDatetime(LocalDateTime.now()); patientRegistrationMapper.updateById(updateRegistration); return patientRegistrationMapper.selectById(regisId); }