Домашняя страница автора:Designer Сяо Чжэн Об авторе:3ГодJAVAПолный опыт разработки,Фокус на технологии JAVA, настройке системы, удаленном управлении.,Приверженность цифровой трансформации предприятия,Эксперт блога CSDN,Блогер-эксперт сообщества Alibaba Cloud,Преподаватель курса Lanqiao Cloud.
https://github.com/yyzwz/allProject
На основе JAVA+Vue+SpringBoot+MySQL. Система регистрации амбулаторных приемов в больнице включает в себя модуль управления отделением, модуль управления врачами, модуль регистрации приемов, модуль новостей больницы и модуль доски объявлений. Она также включает в себя собственное управление пользователями системы, управление отделениями, управление ролями, управление меню, управление журналами, базовые модули. такие как управление словарем данных, управление файлами, отображение диаграмм и управление доступом на основе ролей в системе регистрации амбулаторных пациентов, используются пациентами и администраторами больницы. Разрешения могут быть точными до уровня кнопок. Вы можете настраивать роли и назначать разрешения. Система подходит для разработки точных требований к ограничению разрешений.
Для того, чтобы разработанная регистрация назначений действительно была введена в эксплуатацию, необходимо проанализировать и спроектировать системные требования. Ниже приводится анализ требований к регистрации назначений с точки зрения функциональных требований и осуществимости.
Система регистрации приемов, разработанная в этой статье, включает в себя модуль системного центра обработки данных, который используется для хранения общих модулей системы управления. Кроме того, разработаны три модуля, а именно файлы отделения/врача, регистрация приемов и текущие дела больницы. хранить основную бизнес-логику системы.
Модуль центра обработки данных включает в себя базовые модули системы регистрации амбулаторных приемов в больнице, такие как управление тем, кто может входить в систему, запись того, какие люди входят в систему, а также разные люди, имеющие разные разрешения.
Модуль файлов врачей отделений управляет информацией об отделениях больницы и врачах, включая все отделения больницы и файлы врачей в отделениях, включая название отделения, код отделения, имя врача, возраст врача, ученую степень доктора, время начала работы, Высшие учебные заведения, профессиональные звания, специальности, профили врачей и т. д. — с помощью этого модуля вы можете добавлять, редактировать, обновлять, удалять и запрашивать отделения и врачей.
Система управления регистрацией амбулаторных приемов в больнице вводит информацию о приемах врачей в крупных больницах, включая регистрационные сборы врачей с различными профессиональными титулами. В этом модуле администратор устанавливает регистрационные сборы и записывает врачей.
Модуль текущих событий больницы — это фасад больницы. На модуле размещаются важные уведомления больницы, информация о приемах и отстранениях от врачей, а также сообщения пациентов. Пациенты могут проверять текущие политические новости, публикуемые администратором, а также оставлять комментарии и комментарии о больнице, чтобы взаимодействовать с данными больницы.
Очень важна достоверность данных регистрации амбулаторных приемов в больнице. Таким образом, чтобы гарантировать точность данных в системе регистрации встреч, избыточные данные в системе необходимо регулярно удалять, чтобы облегчить анализ данных регистрации.
Простота использования — это принцип, которому должна следовать любая система управления, и то же самое справедливо и для систем регистрации встреч. Система должна быть простой в использовании для пациентов, поскольку система разработана для упрощения процесса лечения пациента и не может усложнить процесс лечения из-за появления системы.
Больничные амбулатории должны иметь механизм самозащиты. При получении незаконных атак со стороны хакеров им необходимо иметь механизм выдачи исключений. Они не могут попасть в бесконечный цикл принятия решений и привести к сбою системы, что приведет к сбою в регистрации пациентов.
@RequestMapping(value = "/getByPage", method = RequestMethod.GET)
@ApiOperation(value = "Найти врача")
public Result<IPage<Doctor>> getByPage(@ModelAttribute Doctor doctor,@ModelAttribute PageVo page){
QueryWrapper<Doctor> qw = new QueryWrapper<>();
if(!ZwzNullUtils.isNull(doctor.getDoctorName())) {
qw.like("doctor_name",doctor.getDoctorName());
}
if(!ZwzNullUtils.isNull(doctor.getPostLevel())) {
qw.eq("post_level",doctor.getPostLevel());
}
if(!ZwzNullUtils.isNull(doctor.getSubjectId())) {
qw.eq("subject_id",doctor.getSubjectId());
}
if(!ZwzNullUtils.isNull(doctor.getNoeDate()) && Objects.equals(doctor.getNoeDate(),"да")) {
qw.inSql("id","SELECT id FROM t_doctor WHERE id IN(SELECT DISTINCT doctor_id FROM t_doctor_scheduling WHERE DATE = '" + DateUtil.today() + "')");
}
return new ResultUtil<IPage<Doctor>>().setData(iDoctorService.page(PageUtil.initMpPage(page),qw));
}
@RequestMapping(value = "/addNumber", method = RequestMethod.POST)
@ApiOperation(value = "Доктор присваивает номер")
public Result<Object> addNumber(@RequestParam String doctorId,@RequestParam String date,@RequestParam int step,@RequestParam int number){
Doctor doctor = iDoctorService.getById(doctorId);
if(doctor == null) {
return ResultUtil.error("Врач не существует");
}
if(number < 1) {
return ResultUtil.error("Выделенное число должно быть больше 0");
}
for(int i = 1 ; i <= number; i ++) {
DoctorScheduling ds = new DoctorScheduling();
ds.setDoctorId(doctor.getId());
ds.setDoctorName(doctor.getDoctorName());
ds.setNumber(i + "");
ds.setStep(step + "");
ds.setDate(date);
ds.setOrderFlag(0);
iDoctorSchedulingService.saveOrUpdate(ds);
}
return ResultUtil.success("Распределение номеров успешно выполнено");
}
@RequestMapping(value = "/set_top_by_id", method = RequestMethod.POST)
@ApiOperation(value = "Главные новости больницы")
public Result<Boolean> setTopById(@RequestParam String id){
HospitalNews appDynamicNew=iHospitalNewsService.getById(id);
if(appDynamicNew==null) {
return ResultUtil.error("Динамическая информация не существует");
}
if(appDynamicNew.getIsTop().equals("yes")) {
appDynamicNew.setIsTop("no");
}
else {
appDynamicNew.setIsTop("yes");
}
if(!iHospitalNewsService.saveOrUpdate(appDynamicNew)) {
return ResultUtil.error("Ошибка установки");
}
return ResultUtil.success("Установлено успешно");
}
@RequestMapping(value = "/getMyOrderList", method = RequestMethod.POST)
@ApiOperation(value = «Проверьте мою регистрацию»)
public Result<IPage<HospitalOrder>> getMyOrderList(@ModelAttribute HospitalOrder order,@ModelAttribute PageVo page){
User currUser = securityUtil.getCurrUser();
QueryWrapper<HospitalOrder> qw = new QueryWrapper<>();
qw.eq("user_id",currUser.getId());
qw.orderByDesc("create_time");
if(!ZwzNullUtils.isNull(order.getDateTime())) {
qw.eq("date_time",order.getDateTime());
}
if(!ZwzNullUtils.isNull(order.getDoctorName())) {
qw.like("doctor_name",order.getDoctorName());
}
return new ResultUtil<IPage<HospitalOrder>>().setData(iHospitalOrderService.page(PageUtil.initMpPage(page),qw));
}
@RequestMapping(value = "/addOrder", method = RequestMethod.POST)
@ApiOperation(value = «Добавить новую регистрацию»)
public Result<Object> addOrder(@RequestParam String orderId){
User currUser = securityUtil.getCurrUser();
DoctorScheduling ds = iDoctorSchedulingService.getById(orderId);
if(ds == null) {
return ResultUtil.error("Источник числа не существует");
}
if(ds.getOrderFlag() > 0) {
return ResultUtil.error("Вы тянули медленно, аккаунт зарезервирован кем-то другим!");
}
Doctor doctor = iDoctorService.getById(ds.getDoctorId());
if(doctor == null) {
return ResultUtil.error("Врач не существует");
}
ds.setOrderFlag(1);
iDoctorSchedulingService.saveOrUpdate(ds);
HospitalOrder ho = new HospitalOrder();
ho.setUserId(currUser.getId());
ho.setUserName(currUser.getNickname());
ho.setOrderId(ds.getId());
ho.setNumber(ds.getNumber());
ho.setStep(ds.getStep());
ho.setDateTime(ds.getDate());
ho.setDoctorId(ds.getDoctorId());
ho.setDoctorName(ds.getDoctorName());
ho.setMoneyData(doctor.getOrderMoney());
iHospitalOrderService.saveOrUpdate(ho);
return ResultUtil.success("Резервирование успешно!");
}
Пользователи, которые загружают этот системный код или используют эту систему, должны согласиться со следующим содержимым, в противном случае, пожалуйста, не загружайте!