源码获取:俺的博客首页 "资源" 里下载!
项目介绍
基于SpringBoot Vue的医院管理系统
角色:医生、患者、管理员
管理员:医生信息、科室管理、挂号预约、用户管理、就诊单、住院办理、药品信息、住院通知、药品类别、退费信息、检查信息。
医生:医生信息、挂号预约、就诊单、住院通知、检查信息、登录。
患者:登录注册、首页、公告消息、医院资讯、医生信息、我的账户、个人中心、药品信息等。
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
4.数据库:MySql 5.7/8.0版本均可;
5.是否Maven项目:是;
技术栈
后端:SpringBoot+Mybaits
前端:layui+Vue+ELementUI
使用说明
项目运行:
1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;
4. 运行项目,控制台提示运行成功后再去运行前端项目;
5. 管理员用户名密码:admin/admin
普通用户名密码:user/123456
文档介绍(系统功能模块设计、整体功能模块设计、用户模块设计、评论管理模块设计、数据库设计、数据库概念结构设计、数据库逻辑结构设计、医疗管理系统详细设计与实现、用户功能模块、前台首页界面、患者登录界面、患者注册界面、我的账户界面、医生详情界面、医院咨询界面、管理员功能模块、用户管理界面、留言管理界面、站点管理界面):
药品信息列表(公告消息、医院咨询、医生信息、药品信息):
医院咨询详情介绍(公告消息、医院咨询、医生信息、药品信息):
后台管理登录页面:
后台管理列表(站点管理、用户管理、管理员、患者、医生、内容管理、更多管理、医生信息、科室管理、挂号预约、就诊单、住院办理、药品信息、住院通知、药品类别、退费信息、检查信息):
挂号预约详情页面:
药品信息详情界面:
医生信息管理页面:
病史管理控制层:
@Controller
public class MedicalhistoryController {
@Autowired
PatientService patientService;
@Autowired
MedicalhistoryService medicalhistoryService;
@Autowired
DoctorService doctorService;
@RequestMapping("/admin/medicalhistoryManage")
public String medicalhistoryManage(HttpServletRequest request,@RequestParam(value = "doctorname",required = false)String doctorname,@RequestParam(value = "patientname",required = false)String patientname){
request.setAttribute("doctorname",doctorname);
request.setAttribute("patientname",patientname);
request.setAttribute("medicalhistorys",medicalhistoryService.getAllMedicalhistorys(doctorname,patientname));
return "admin/medicalhistoryManage";
}
@RequestMapping("/admin/medicalhistoryAdd")
public String medicalhistoryAddPage(HttpServletRequest request){
request.setAttribute("doctors",doctorService.getAllDoctor());
request.setAttribute("patients",patientService.getAllPatients());
return"admin/add/medicalhistoryadd";
}
@RequestMapping(value = "/admin/medicalhistory/{id}",method = RequestMethod.DELETE)
@ResponseBody
public JSONObject delmedicalhistory(@PathVariable Integer id){
JSONObject json=new JSONObject();
json.put("message",medicalhistoryService.delMedicalhistory(id));
return json;
}
@RequestMapping(value = "/admin/medicalhistory/{id}",method = RequestMethod.GET)
public String medicalhistoryInfo(@PathVariable Integer id,HttpServletRequest request){
request.setAttribute("patients",patientService.getAllPatients());
request.setAttribute("doctors",doctorService.getAllDoctor());
request.setAttribute("medicalhistory",medicalhistoryService.getMedicalhistory(id));
return "admin/info/medicalhistoryInfo";
}
@RequestMapping(value = "/admin/medicalhistory",method = RequestMethod.PUT)
@ResponseBody
public JSONObject medicalhistoryUpdate(@RequestBody Medicalhistory medicalhistory){
JSONObject json=new JSONObject();
json.put("message",medicalhistoryService.UpdateMedicalhistory(medicalhistory));
return json;
}
@RequestMapping(value = "/admin/medicalhistory",method = RequestMethod.POST)
@ResponseBody
public JSONObject medicalhistoryAdd(@RequestBody Medicalhistory medicalhistory){
JSONObject json=new JSONObject();
json.put("message",medicalhistoryService.addMedicalhistory(medicalhistory));
return json;
}
}
登录管理控制层:
@Controller
public class LoginController {
@Autowired
LoginService loginService;
@RequestMapping(value = "/hospital/login")
public String loginAndregist(){
return "login®ist";
}
@RequestMapping("/admin/adminManage")
public String adminManage(HttpServletRequest request,@RequestParam(value = "username",required = false)String username){
request.setAttribute("username",username);
request.setAttribute("admins",loginService.findAllAdmin(username));
return "/admin/adminManage";
}
@RequestMapping("/admin/admin/{id}")
public String adminInfo(HttpServletRequest request,@PathVariable Integer id){
request.setAttribute("admin",loginService.getAdmin(id));
return "/admin/info/admininfo";
}
@RequestMapping("/admin/adminAdd")
public String adminAddPage(){
return"admin/add/adminadd";
}
@RequestMapping(value = "/admin/admin",method = RequestMethod.POST)
@ResponseBody
public JSONObject adminAdd(@RequestBody Login login){
JSONObject json=new JSONObject();
json.put("message",loginService.addAmin(login));
return json;
}
@RequestMapping(value = "/admin/admin",method = RequestMethod.PUT)
@ResponseBody
public JSONObject upAdmin(@RequestBody Login login){
JSONObject json=new JSONObject();
json.put("message",loginService.updateAdmin(login));
return json;
}
@RequestMapping(value = "/admin/admin/{id}",method = RequestMethod.DELETE)
@ResponseBody
public JSONObject delAdmin(@PathVariable Integer id){
JSONObject json=new JSONObject();
json.put("message",loginService.delAdmin(id));
return json;
}
@RequestMapping(value = "/loginout",method = RequestMethod.GET)
public String loginout(HttpSession session){
session.removeAttribute("login");
return "/hospital";
}
@RequestMapping(value = "/login",method = RequestMethod.POST)
@ResponseBody
public JSONObject login(@RequestBody Login login,HttpSession session){
JSONObject json=new JSONObject();
json.put("message",loginService.login(login));
session.setAttribute("login",login);
return json;
}
@RequestMapping(value = "/regest",method = RequestMethod.POST)
@ResponseBody
public JSONObject regest(@RequestBody Login login){
JSONObject json=new JSONObject();
json.put("message",loginService.regist(login));
return json;
}
@RequestMapping("/hospital")
public String hospital(){
return "index";
}
@RequestMapping("/hospital/patient/index")
public String patientIndex(){
return "/patient/search";
}
@RequestMapping("/hospital/doctor/index")
public String doctorIndex(){
return "/doctor/index";
}
@RequestMapping("/hospital/admin/index")
public String adminIndex(){
return "/admin/index";
}
}
住院管理控制层:
@Controller
public class HospitalizationController {
@Autowired
HospitalizationService hospitalizationService;
@Autowired
PatientService patientService;
@RequestMapping("/admin/hospitalizationManage")
public String hospitalizationManage(HttpServletRequest request,@RequestParam(value = "patientname",required = false)String patientname,@RequestParam(value = "intime",required = false)String intime){
request.setAttribute("patientname",patientname);
request.setAttribute("intime",intime);
request.setAttribute("hospitalizations",hospitalizationService.getAllHospitalizations(patientname,intime));
return "admin/hospitalizationManage";
}
@RequestMapping("/admin/hospitalizationAdd")
public String hospitalizationAddPage(HttpServletRequest request){
request.setAttribute("patients",patientService.getAllPatients());
return"admin/add/hospitalizationadd";
}
@RequestMapping(value = "/admin/hospitalization",method = RequestMethod.POST)
@ResponseBody
public JSONObject hospitalizationAdd(@RequestBody Hospitalization hospitalization){
JSONObject json=new JSONObject();
json.put("message",hospitalizationService.AddHospitalization(hospitalization));
return json;
}
@RequestMapping(value = "/admin/hospitalization/{id}",method = RequestMethod.DELETE)
@ResponseBody
public JSONObject delHospitalization(@PathVariable Integer id){
JSONObject json=new JSONObject();
json.put("message",hospitalizationService.deleteHospitalization(id));
return json;
}
@RequestMapping(value = "/admin/hospitalization/{id}",method = RequestMethod.GET)
public String hospitalizationInfo(HttpServletRequest request,@PathVariable Integer id){
request.setAttribute("h",hospitalizationService.getHospitalization(id));
request.setAttribute("patients",patientService.getAllPatients());
return"admin/info/hospitalizationinfo";
}
@RequestMapping(value = "/admin/hospitalization",method = RequestMethod.PUT)
@ResponseBody
public JSONObject delHospitalization(@RequestBody Hospitalization hospitalization){
JSONObject json=new JSONObject();
json.put("message",hospitalizationService.updateHospitalization(hospitalization));
return json;
}
//生成user表excel
@GetMapping(value = "/admin/getHospitalization")
public String getUser(HttpServletResponse response) throws Exception{
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet("统计表");
ExcelUtils.createTitle(workbook,sheet);
List<Hospitalization> rows = hospitalizationService.getAllHospitalizations();
//设置日期格式
HSSFCellStyle style = workbook.createCellStyle();
style.setDataFormat(HSSFDataFormat.getBuiltinFormat("m/d/yy"));
//新增数据行,并且设置单元格数据
int rowNum=1;
for(Hospitalization hospitalization:rows){
HSSFRow row = sheet.createRow(rowNum);
row.createCell(0).setCellValue(rowNum);
row.createCell(1).setCellValue(hospitalization.getFloor());
row.createCell(2).setCellValue(hospitalization.getBed());
row.createCell(3).setCellValue(hospitalization.getDoor());
row.createCell(4).setCellValue(hospitalization.getPatientname());
row.createCell(5).setCellValue(hospitalization.getMedicalname());
HSSFCell cell1 = row.createCell(6);
HSSFCell cell2 = row.createCell(7);
cell1.setCellValue(hospitalization.getIntime());
cell2.setCellValue(hospitalization.getOuttime());
cell1.setCellStyle(style);
cell2.setCellStyle(style);
rowNum++;
}
String fileName = "住院信息.xls";
//生成excel文件
//ExcelUtils.buildExcelFile(fileName, workbook);
//浏览器下载excel
ExcelUtils.buildExcelDocument(fileName,workbook,response);
return "download excel";
}
}
药品管理控制层:
@Controller
public class DrugsController {
@Autowired
DrugsService drugsService;
@RequestMapping("admin/drugsManage")
public String drugsManage(HttpServletRequest request,@RequestParam(value="name",required = false) String name,@RequestParam(value="type",required = false) Integer type){
request.setAttribute("name",name);
// request.setAttribute("type",type);
Drugs drugs=new Drugs();
drugs.setName(name);
drugs.setType(type);
request.setAttribute("drugs",drugsService.getAllDrugs(drugs));
return "/admin/drugsManage";
}
@RequestMapping(value = "/admin/drug/{id}",method = RequestMethod.DELETE)
@ResponseBody
public JSONObject delDrug(@PathVariable Integer id){
JSONObject json=new JSONObject();
json.put("message",drugsService.delDrug(id));
return json;
}
@RequestMapping(value = "/admin/drug",method = RequestMethod.POST)
@ResponseBody
public JSONObject addDrug(@RequestBody Drugs drugs){
JSONObject json=new JSONObject();
json.put("message",drugsService.addDrug(drugs));
return json;
}
@RequestMapping("/admin/drugAdd")
public String drugAddPage(){
return "/admin/add/drugadd";
}
@RequestMapping(value = "/admin/drug/{id}",method = RequestMethod.GET)
public String drugInfo(HttpServletRequest request,@PathVariable Integer id) {
request.setAttribute("drug",drugsService.getDrug(id));
return "/admin/info/drugsinfo";
}
@RequestMapping(value = "/admin/drug",method = RequestMethod.PUT)
@ResponseBody
public JSONObject updateDrug(@RequestBody Drugs drugs) {
JSONObject json=new JSONObject();
json.put("message",drugsService.updateDrug(drugs));
return json;
}
}
医生管理控制层:
@Controller
public class DoctorController {
@Autowired
DoctorService doctorService;
@Autowired
AppointmentService appointmentService;
@Autowired
PatientService patientService;
@Autowired
DrugsService drugsService;
@Autowired
HospitalizationService hospitalizationService;
@Autowired
MedicalhistoryService medicalhistoryService;
@Autowired
OptionService optionService;
@Autowired
SeekService seekService;
@Value("${filepath.seekpdfpath}")
private String path;
@RequestMapping("/admin/doctorManage")
public String doctorManage(HttpServletRequest request,@RequestParam(value="name",required = false) String name,@RequestParam(value="certId",required = false) String certId){
request.setAttribute("name",name);
request.setAttribute("certId",certId);
request.setAttribute("doctors",doctorService.getAllDoctor(name,certId));
return "admin/doctorManage";
}
@RequestMapping(value = "/admin/doctor/{id}",method = RequestMethod.DELETE)
@ResponseBody
public JSONObject delDoctor(@PathVariable Integer id){
JSONObject json=new JSONObject();
json.put("message",doctorService.delDoctor(id));
return json;
}
@RequestMapping(value = "/admin/doctor/{id}",method = RequestMethod.GET)
public String doctorInfo(@PathVariable Integer id,HttpServletRequest request){
request.setAttribute("doctor",doctorService.getDoctor(id));
return "admin/info/doctorinfo";
}
@RequestMapping(value = "/admin/doctor",method = RequestMethod.POST)
@ResponseBody
public JSONObject AddDoctor(@RequestBody Doctor doctor){
JSONObject json=new JSONObject();
json.put("message",doctorService.addDoctor(doctor));
return json;
}
@RequestMapping(value = "/admin/doctor",method = RequestMethod.PUT)
@ResponseBody
public JSONObject updateDoctor(@RequestBody Doctor doctor){
JSONObject json=new JSONObject();
json.put("message",doctorService.upDoctor(doctor));
return json;
}
@RequestMapping("/admin/doctorAdd")
public String doctorAddPage(){
return "admin/add/doctoradd";
}
@RequestMapping("/doctor/seekMedicalAdvice")
public String seekMedicalAdvice(HttpServletRequest request, HttpSession session,@RequestParam(value = "patientname",required = false)String patientname,@RequestParam(value = "time",required = false)String time){
Login login=(Login)session.getAttribute("login");
Doctor doctor=doctorService.getDoctorByLoginId(login.getId());
request.setAttribute("appointments" ,appointmentService.selectByDoctorId(doctor.getId(),patientname,time));
return "doctor/seekMedicalAdvice";
}
@RequestMapping("/doctor/seek/{id}")
public String seek(@PathVariable Integer id,HttpServletRequest request){
request.setAttribute("options",optionService.getAll());
request.setAttribute("patient",patientService.getPatient(id));
request.setAttribute("drugs",drugsService.getAllDrugs());
return "doctor/seek";
}
@RequestMapping(value = "/doctor/drug",method = RequestMethod.PUT)
@ResponseBody
public JSONObject drug(@RequestBody Map map){
JSONObject json=new JSONObject();
Patient patient=new Patient();
patient.setDrugsids(DrugsUtils.vaild(map));
patient.setId(Integer.parseInt((String)map.get("patientid")));
json.put("message",patientService.seek(patient));
return json;
}
@RequestMapping(value = "/doctor/zation",method = RequestMethod.POST)
@ResponseBody
public JSONObject zation(@RequestBody Hospitalization hospitalization){
JSONObject json=new JSONObject();
json.put("message",hospitalizationService.AddHospitalization(hospitalization));
return json;
}
@RequestMapping(value = "/doctor/medicalhistory/{id}")
public String medicalhistory(@PathVariable Integer id,HttpServletRequest request){
request.setAttribute("medicalhistorys",medicalhistoryService.getMedicalhistoryByPatientId(id));
return "doctor/medicalhistory";
}
@RequestMapping( value = "/doctor/{department}",method = RequestMethod.GET)
@ResponseBody
public JSONObject getDoctorByDepartment(@PathVariable String department) throws UnsupportedEncodingException{
JSONObject json=new JSONObject();
department = URLDecoder.decode(department,"UTF-8");
json.put("doctors",doctorService.getDoctorByDepartment(department));
return json;
}
@RequestMapping( value = "/doctor/seekinfo",method = RequestMethod.POST)
@ResponseBody
public JSONObject seekinfo(@RequestBody Map map){
JSONObject json=new JSONObject();
String message=doctorService.seekInfo(map);
json.put("message",message);
return json;
}
@RequestMapping( value = "/doctor/printseek/{id}",method = RequestMethod.POST)
@ResponseBody
public JSONObject printseek(@PathVariable Integer id,HttpSession session){
Login login=(Login)session.getAttribute("login");
Doctor doctor=doctorService.getDoctorByLoginId(login.getId());
JSONObject json=new JSONObject();
Seek seek=seekService.getSeekByPatientId(id);
seek.setPatientname(patientService.getPatient(id).getName());
seek.setDoctorname(doctor.getName());
//createSeekInfo,第三个参数填空字符串就是生成在项目根目录里面,要是想生成在别的路径,例:D:\\ 就是生成在D盘根目录
path = Thread.currentThread().getContextClassLoader().getResource("").getPath().substring(0,Thread.currentThread().getContextClassLoader().getResource("").getPath().length()-16)+"/";
String message= PDFUtils.createSeekInfo(seek,optionService,path);
json.put("message",message);
return json;
}
}
源码获取:俺的博客首页 "资源" 里下载!