——————————DescriptionStart——————————
运行环境 Java≥8、MySQL≥5.7
开发工具 eclipse/idea/myeclipse/sts等均可配置运行
适用 课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的SpringBoot私人牙医管理系统(java+springboot+html+thymeleaf+layui+echarts+maven+mysql)
项目介绍
私人牙医管理系统。该项目分为前后台,共三种角色:管理员、医生、客户;
前台主要功能包括:首页、医生介绍、新闻资讯、关于我们、联系我们等功能; 后台管理员主要功能包括: 客户管理:客户信息统计、客户列表、添加客户; 医生管理:医生列表、病例列表、新增病例、添加医生; 药品管理:药品信息统计、药品列表、药品添加; 文章管理:文章列表、添加文章; 医生登录主要功能包括: 病例管理:在诊病历、历史病例、新增病例; 客户管理:客户列表、新增客户、预约信息; 普通客户登录主要功能包括: 基本信息、修改密码、预约信息、病例查看; 共10张表;
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 4.数据库:MySql 8.0版本;
技术栈
后端:SpringBoot
前端:html+jQuery+layui+echarts
使用说明 运行项目, 前台网站运行地址:http://localhost:8087/user/toCusWel 普通用户登录地址:http://localhost:8087/login/toUserLogin 后台运行地址: 管理员及医生登录:http://localhost:8087/login/toDocLogin
——————————CodeStart——————————
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 public Integer registerCus (@RequestBody Customer customer) { int index = customerService.save(customer); return index; } @ResponseBody @RequestMapping("/findMyWork") public LayData findMyWork (HttpSession session) { String cusId = (String) session.getAttribute("userId" ); LayData nByCusId = workLineService.findNByCusId(cusId); return nByCusId; } @ResponseBody @RequestMapping("/findAllCase") public LayData findAllCase (HttpSession session) { String cusId = (String) session.getAttribute("userId" ); LayData byCusIdR = caseInfoService.findByCusIdR(cusId); return byCusIdR; } @RequestMapping("/findOneAll") public ModelAndView findOneAllMess (String caseId) { List<CaseInfos> reVisit; ModelAndView model = new ModelAndView(); Integer idNum = caseInfoService.getIdNum(caseId); CaseInfos caseInfos = caseInfoService.findOneAllMess(caseId); if (idNum > 1 ){ reVisit = caseInfoService.findReVisit(caseId); model.addObject("reVisit" , reVisit); } model.setViewName("doctor/caseInfo/case_info" ); model.addObject("caseInfos" , caseInfos); return model; } @ResponseBody @RequestMapping("/connectUs") public String connectUs (@RequestBody ConnectUs connectUs) { SimpleMailMessage message = new SimpleMailMessage(); message.setFrom("18334758861@163.com" ); message.setTo("2240423848@qq.com" );
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 return loginCountService.getWeekData(); } @RequestMapping("/edit") public String edit (HttpSession session) { Enumeration<String> em = session.getAttributeNames(); while (em.hasMoreElements()) { session.removeAttribute(em.nextElement()); } System.out.println("------------用户已注销-------------" ); return "redirect:/login/toDocLogin" ; } @ResponseBody @RequestMapping("/getPassword") public String getPassword (HttpSession session) { String userId = (String) session.getAttribute("userId" ); LoginInfo byId = loginInfoRepository.findById(userId); return byId.getPassword(); } } package com.dcms.handler;@Controller @RequestMapping("/doctor") public class DoctorHandler { @Resource
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 @RequestMapping("/saveCase") public Integer saveCase (@RequestBody CaseInfo caseInfo, HttpSession session) { String userId = (String) session.getAttribute("userId" ); caseInfo.setDoctorId(userId); caseInfo.setTrResult(1 ); caseInfo.setStatus(1 ); System.out.println("获取到的CaseInfo信息:" + caseInfo); Integer index = caseInfoService.save(caseInfo); System.out.println("病例添加结果:" + index); return 1 ; } @ResponseBody @RequestMapping("/adminSaveCase") public Integer adminSaveCase (@RequestBody CaseInfo caseInfo) { caseInfo.setStatus(1 ); caseInfo.setTrResult(1 ); Integer index = caseInfoService.save(caseInfo); System.out.println("病例添加结果:" + index); Integer caseNum = caseInfoService.getCount(); return caseNum; } @RequestMapping("/toCaseEdit") public ModelAndView toCaseEdit (String caseId) { ModelAndView model = new ModelAndView(); model.setViewName("doctor/caseInfo/case_edit" ); CaseInfo byId = caseInfoService.findById(caseId); model.addObject("caseInfo" ,byId); return model; } @ResponseBody @RequestMapping("/updateCase") public Integer updateCase (@RequestBody CaseInfo caseInfo) { return caseInfoService.updateByCaseId(caseInfo); } @RequestMapping("/toRevisit") public ModelAndView toRevisit (String caseId, String customerId) { ModelAndView model = new ModelAndView(); model.setViewName("doctor/caseInfo/case_revisit" ); model.addObject("caseId" , caseId); model.addObject("cusId" , customerId); return model; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 @ResponseBody @GetMapping("/adminFindById") public LayData adminFindById (String medicineId) { LayData layData = new LayData(); layData.setCode(0 ); if (medicineId != null && !medicineId.equals("" )){ Medicine byMedId = medicineService.findByMedId(medicineId); if (byMedId != null ) { List<Medicine> list = new ArrayList<>(); list.add(byMedId); layData.setData(list); layData.setCount(1 ); layData.setMsg("按ID查询" ); } } return layData; } @ResponseBody @GetMapping("/adminFindByName") public LayData adminFindByName (String medName) { return medicineService.findMedByName(medName); } @ResponseBody @RequestMapping("/findByType") public LayData<Medicine> findByType (String medType) { return medicineService.findByType(medType); } } package com.dcms.handler;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 @WebFilter(urlPatterns = {"/user/toCusWel","/admin/toAdminWel","/doctor/toDocWel"}) public class LoginFilter implements Filter { @Resource private LoginCountService loginCountService; @Resource private LoginInfoRepository loginInfoRepository; @Override public void init (FilterConfig filterConfig) throws ServletException { System.out.println("-----------启动登录请求过滤器!准备获取今日游客,注册用户,就诊用户登录情况----------" ); } @Override public void doFilter (ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest) servletRequest; HttpSession session = request.getSession(); Object username = session.getAttribute("userName" ); Object userId = session.getAttribute("userId" ); LoginInfo byId = loginInfoRepository.findById((String) userId); LoginCount count = new LoginCount(); if (userId != null ) { String sort = "" ; count.setUsername((String) username); count.setUserId((String) userId); count.setUserSort(byId.getUserSort()); if (byId.getUserSort() == 1 ){
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 public LayData findMyWork (HttpSession session) { String cusId = (String) session.getAttribute("userId" ); LayData nByCusId = workLineService.findNByCusId(cusId); return nByCusId; } @ResponseBody @RequestMapping("/findAllCase") public LayData findAllCase (HttpSession session) { String cusId = (String) session.getAttribute("userId" ); LayData byCusIdR = caseInfoService.findByCusIdR(cusId); return byCusIdR; } @RequestMapping("/findOneAll") public ModelAndView findOneAllMess (String caseId) { List<CaseInfos> reVisit; ModelAndView model = new ModelAndView(); Integer idNum = caseInfoService.getIdNum(caseId); CaseInfos caseInfos = caseInfoService.findOneAllMess(caseId); if (idNum > 1 ){ reVisit = caseInfoService.findReVisit(caseId); model.addObject("reVisit" , reVisit); } model.setViewName("doctor/caseInfo/case_info" ); model.addObject("caseInfos" , caseInfos); return model; } @ResponseBody @RequestMapping("/connectUs") public String connectUs (@RequestBody ConnectUs connectUs) { SimpleMailMessage message = new SimpleMailMessage(); message.setFrom("18334758861@163.com" ); message.setTo("2240423848@qq.com" ); message.setSubject("私人牙医游客来访信息" ); message.setText(connectUs.getContent() + "\n" + "联系电话:" + connectUs.getPhone() + "\n" + "联系地址:" + connectUs.getAddress() + "\n" + "联系邮箱:" + connectUs.getEmail() + "\n" + "游客姓名:" + connectUs.getName()); System.out.println(message.getText()); try { javaMailSender.send(message);
——————————PayStart——————————
项目链接: https://javayms.github.io?id=231422292105200ew https://javayms.pages.dev?id=231422292105200ew