基于javaweb+mysql的ssm医院在线预约挂号系统(java+ssm+jsp+bootstrap+layui+echarts+mysql)

基于javaweb+mysql的ssm医院在线预约挂号系统(java+ssm+jsp+bootstrap+layui+echarts+mysql)

私信源码获取及调试交流

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb的SSM医院在线预约挂号系统(java+ssm+jsp+bootstrap+layui+echarts+mysql)


管理员

admin	123456

用户

user1   123456

user2   123456

医生

13600000001	123456	外科

13600000002	123456	神经科

13600000003	123456	骨科

ssm医院在线预约挂号系统

角色:管理员、用户、医生

管理员登录后,主要功能有:首页、用户列表、添加用户、科室列表、新增科室、医生列表、新增医生信息、公告列表、新增公告、系统设置、数据统计等功能。

用户主要功能包括:首页、我的信息、科室列表、医生列表、门诊预约列表、门诊预约、公告列表、数据统计等功能。

医生主要功能包括:首页、科室列表、我的个人信息、我的门诊预约列表、公告列表、数据统计等功能;

由于本程序规模不大,可供课程设计,毕业设计学习演示之用

后端:SSM(Spring+SpringMVC+Mybatis)

前端:JSP+css+javascript+Bootstrap+layUI+echarts


@RestController
public class DepartmentController {
	
	@Autowired
	DepartmentService service;
	
	@Autowired
	UserService userService;
	

	@RequestMapping("/DepartmentList")
    public ModelAndView DepartmentList(
			@RequestParam(defaultValue="1") Integer currentPage,HttpServletRequest request,
			Map<String,Object> map){
		User user = (User)request.getSession().getAttribute("user");
		String DepartmentName = request.getParameter("key");
		List<Department> list = new ArrayList<>();
		Map<String,Object> maps = new HashMap<>();
		maps.put("key", DepartmentName);
		maps.put("uid", user!=null?user.getId():null);
		PageHelper.startPage(currentPage,10);
		list=service.selectDepartmentList(maps);
		PageInfo<Department> pageInfo=new PageInfo<Department>(list,8);
		map.put("pageInfo", pageInfo);
		map.put("key", DepartmentName);
		return new ModelAndView("view/department/list");
	} 
	
	

	@RequestMapping("/toAddDepartment")
		String newpass = request.getParameter("newpass");
		if(admin !=null && admin.getPassword().equals(nowpass)) {
			us.updateAdminPassword(newpass,admin.getId());
			re = true;
		}
		return re;
	}
	
	@RequestMapping("/updateUser")
	@ResponseBody
	public boolean updateUser(HttpServletRequest request,User ss){
		Admin admin = (Admin)request.getSession().getAttribute("admin");
		boolean re = false;
		us.updateUser(ss);
		re = true;
		if(admin ==null) {
	       request.getSession().setAttribute("user", ss);
		}
		return re;
	}

}

		maps.put("dname", dname);
		List<Doctor> doctorList = doctorService.selectDoctorList(maps);
		return doctorList;
	}
	
	@RequestMapping("/addRecords")
	@ResponseBody
	public boolean addRecords(HttpServletRequest request,Records ss){
		boolean re = true;
		SimpleDateFormat sim = new SimpleDateFormat("yyyy-MM-dd HH:mm");
		User user = (User)request.getSession().getAttribute("user");
		Map<String,Object> maps = new HashMap<>();
		maps.put("did", ss.getDid());
		if(user != null) {
			List<Records> records = service.selectRecordsList(maps);
			try {
				Date nowDate = sim.parse(ss.getStarttime());
				Date endDate = sim.parse(ss.getEndtime());
				for(Records record : records) {
					Date renowDate = sim.parse(record.getStarttime()); 
					Date reendDate = sim.parse(record.getEndtime());
					 if(isEffectiveDate(nowDate,renowDate,reendDate)){
						 re= false;
	                     break;
	                 }else if(isEffectiveDate(endDate,renowDate,reendDate)){
					     re= false;
	                     break;
	                 }else if(isEffectiveDate(renowDate,nowDate,endDate)){
					     re= false;
	                     break;
	                 }else if(isEffectiveDate(reendDate,nowDate,endDate)){
					     re= false;
	                     break;
	                 }
				}
				if(re) {
					ss.setUid(user.getId());
					ss.setUname(user.getRealName());
					ss.setCreatetime(sim.format(new Date()));
					service.addRecords(ss);
				}
				
			} catch (ParseException e) {
		boolean re = false;
		Admin admin = (Admin)request.getSession().getAttribute("admin");
		String nowpass = request.getParameter("nowpass");
		String newpass = request.getParameter("newpass");
		if(admin !=null && admin.getPassword().equals(nowpass)) {
			us.updateAdminPassword(newpass,admin.getId());
			re = true;
		}
		return re;
	}
	
	@RequestMapping("/updateUser")
	@ResponseBody
	public boolean updateUser(HttpServletRequest request,User ss){
		Admin admin = (Admin)request.getSession().getAttribute("admin");
		boolean re = false;
		us.updateUser(ss);
		re = true;
		if(admin ==null) {
	       request.getSession().setAttribute("user", ss);
		}
		return re;
	}

}

	} 
	
	

	@RequestMapping("/toAddDoctor")
    public ModelAndView toAddDoctor(HttpServletRequest request,ModelAndView mv){
		Map<String,Object> maps = new HashMap<>();
		List<Department> departmentList = departmentService.selectDepartmentList(maps);
		mv.addObject("departmentList", departmentList);
		mv.setViewName("view/doctor/add");
		return mv;
	}
	
	@RequestMapping("/addDoctor")
	@ResponseBody
	public boolean addDoctor(Doctor ss){
		boolean re = false;
		Doctor doctor = service.selectDoctorByPhone(ss.getPhone());
		if(doctor == null) {
			ss.setTimes(new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()));
			service.addDoctor(ss);
			re = true;
		}
		return re;
	}
	
	@RequestMapping("/deleteDoctor")
    public boolean deleteDoctor(HttpServletRequest request,
			HttpServletResponse response){
		boolean re = false;
		String id = request.getParameter("id");
		service.deleteDoctor(Integer.parseInt(id));
		re = true;
	    return re;
	}
	
	
	@RequestMapping("/toUpdateDoctor")
    public ModelAndView toUpdateDoctor(HttpServletRequest request,ModelAndView mv){
		Map<String,Object> maps = new HashMap<>();
		String id=request.getParameter("id");
	    Doctor ff = service.selectDoctorById(Integer.parseInt(id));
	    List<Department> departmentList = departmentService.selectDepartmentList(maps);
		mv.addObject("departmentList", departmentList);
		mv.addObject("DoctorDate", ff);
		mv.setViewName("view/doctor/update");

@RestController
public class UserController {
	
	@Autowired 
	UserService us;
	
	
	/**
	 * @param username
	 * @param request
	 * @param password
	 * @param session
	 * @param response
	 * @param mv
	 * @return
	 * @throws ServletException
	 * @throws IOException
	 */
	@RequestMapping("/login")
	@ResponseBody
     public boolean login(@RequestParam("username")String username,
    		 HttpServletRequest request,@RequestParam("password")String password,
    		 HttpSession session,HttpServletResponse response,ModelAndView mv) throws ServletException, IOException {	
		session.removeAttribute("admin");
		session.removeAttribute("user");
	    String type=request.getParameter("type").toString();
	    User user =new User();
	    Admin admin = new Admin();
	    Doctor doctor = new Doctor();
		request.getSession().setAttribute("type", type);
		boolean re = false;
	    if(type != null && type.equals("1")){
	    	admin.setUsername(username);
	    	admin.setPassword(password);
		    Admin admin1 = us.selectAdmin(admin);
		    if(admin1 != null){
	
	
	@RequestMapping("toLogin")
	public String toLogin(HttpSession session) {
		session.removeAttribute("admin");
		session.removeAttribute("user");
		session.removeAttribute("doctor");
		return "view/login";
	}
	
	@RequestMapping("UserPageAct")
	public String UserPageAct() {
		return "view/userList";
	}
	
	
	@RequestMapping("toLoginOutAct")
	public String toLoginOutAct(HttpSession session) {
		session.removeAttribute("admin");
		session.removeAttribute("user");
		session.removeAttribute("doctor");
		return "view/login";
	}
	@RequestMapping("toMain")
	public String toMain(HttpServletRequest request,HttpSession session) {
		Map<String,Object> maps = new HashMap<>();
		List<Message> messageList = messageService.selectMessageList(maps);
		request.setAttribute("messageList", messageList);
		List<Records> recordsList = orderService.selectRecordsList(maps);
		for(Records record : recordsList) {
			record.setUser(userService.selectUserById(record.getUid()));
			record.setDoctor(doctorService.selectDoctorById(record.getDid()));
		}
		request.setAttribute("recordsList", recordsList);
		return "view/main";
	}
	@RequestMapping("toConsoleAct")
	public String toWelocmeAct() {	
		return "view/console";
	}
	
    @ResponseBody
    @RequestMapping("/upload")
    public Map upload(MultipartFile file,HttpServletRequest request){

        String prefix="";
		re = true;
	    return re;
	}
	
	
	@RequestMapping("/toUpdateUser")
    public ModelAndView toUpdateUser(HttpServletRequest request,ModelAndView mv){
	    String id=request.getParameter("id");
	    User ff = us.selectUserById(Integer.parseInt(id));
		mv.addObject("userDate", ff);
		mv.setViewName("view/user/update");
		return mv;
	}
	
	@RequestMapping("/toUpdateAdminPassword")
    public ModelAndView toUpdateAdminPassword(HttpServletRequest request,ModelAndView mv){
		mv.setViewName("view/admin/updatePassword");
		return mv;
	}
	

	@RequestMapping("/updateAdminPassword")
	@ResponseBody
	public boolean updateAdminPassword(HttpServletRequest request){
		boolean re = false;
		Admin admin = (Admin)request.getSession().getAttribute("admin");
		String nowpass = request.getParameter("nowpass");
		String newpass = request.getParameter("newpass");
		if(admin !=null && admin.getPassword().equals(nowpass)) {
			us.updateAdminPassword(newpass,admin.getId());
			re = true;
		}
		return re;
	}
	
	@RequestMapping("/updateUser")
	@ResponseBody
	public boolean updateUser(HttpServletRequest request,User ss){
		Admin admin = (Admin)request.getSession().getAttribute("admin");
		boolean re = false;
		us.updateUser(ss);
		re = true;
		if(admin ==null) {
	       request.getSession().setAttribute("user", ss);
		}
		return re;
	}

}

	}
	
	
	@RequestMapping("toLogin")
	public String toLogin(HttpSession session) {
		session.removeAttribute("admin");
		session.removeAttribute("user");
		session.removeAttribute("doctor");
		return "view/login";
	}
	
	@RequestMapping("UserPageAct")
	public String UserPageAct() {
		return "view/userList";
	}
	
	
	@RequestMapping("toLoginOutAct")
	public String toLoginOutAct(HttpSession session) {
		session.removeAttribute("admin");
		session.removeAttribute("user");
		session.removeAttribute("doctor");
		return "view/login";
	}
	@RequestMapping("toMain")
	public String toMain(HttpServletRequest request,HttpSession session) {
		Map<String,Object> maps = new HashMap<>();
		List<Message> messageList = messageService.selectMessageList(maps);
		request.setAttribute("messageList", messageList);
		List<Records> recordsList = orderService.selectRecordsList(maps);
		for(Records record : recordsList) {
			record.setUser(userService.selectUserById(record.getUid()));
			record.setDoctor(doctorService.selectDoctorById(record.getDid()));
		}
		request.setAttribute("recordsList", recordsList);
		return "view/main";
	}
	@RequestMapping("toConsoleAct")
	public String toWelocmeAct() {	
		return "view/console";
	}
	
    @ResponseBody
    @RequestMapping("/upload")
		service.updateDepartment(ss);
		re = true;
		return re;
	}

}

@RestController
public class MessageController {
	
	@Autowired
	MessageService service;
	
	@Autowired
	UserService userService;
	

	@RequestMapping("/MessageList")
    public ModelAndView MessageList(
			@RequestParam(defaultValue="1") Integer currentPage,HttpServletRequest request,
			Map<String,Object> map){
		User user = (User)request.getSession().getAttribute("user");
		String MessageName = request.getParameter("key");
		List<Message> list = new ArrayList<>();
		Map<String,Object> maps = new HashMap<>();
		maps.put("key", MessageName);
		maps.put("uid", user!=null?user.getId():null);
		PageHelper.startPage(currentPage,10);
		list=service.selectMessageList(maps);
            if(file!=null){
                String originalName = file.getOriginalFilename();
                prefix=originalName.substring(originalName.lastIndexOf(".")+1);
                Date date = new Date();
                String uuid = UUID.randomUUID()+"";
                SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
                dateStr = simpleDateFormat.format(date);
                String filepath = "F:\\workspace\\flower_ssm\\WebContent\\img\\" + dateStr+"\\"+uuid+"." + prefix;
                
                File files=new File(filepath);
                System.out.println(filepath);
                if(!files.getParentFile().exists()){
                    files.getParentFile().mkdirs();
                }
                file.transferTo(files);
                Map<String,Object> map2=new HashMap<>();
                Map<String,Object> map=new HashMap<>();
                map.put("code",0);
                map.put("msg","");
                map.put("data",map2);
                map2.put("src","/img/"+ dateStr+"/"+uuid+"." + prefix);
                return map;
            }

        }catch (Exception e){
        }finally{
            try {
                if(out!=null){
                    out.close();
                }
                if(fileInput!=null){
                    fileInput.close();
                }
            } catch (Exception e) {
            }
        }
        Map<String,Object> map=new HashMap<>();
        map.put("code",1);
        map.put("msg","");
        return map;

		return new ModelAndView("view/hsjc/list");
	} 
	
	

	@RequestMapping("/toAddHsjc")
    public ModelAndView toAddHsjc(HttpServletRequest request,ModelAndView mv){
		mv.setViewName("view/hsjc/add");
		return mv;
	}
	
	@RequestMapping("/addHsjc")
	@ResponseBody
	public boolean addHsjc(HttpServletRequest request,Hsjc ss){
		User user = (User)request.getSession().getAttribute("user");
		boolean re = false;
		ss.setCreatetime(new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()));
		ss.setUid(user.getId());
		ss.setUname(user.getRealName());
		service.addHsjc(ss);
		re = true;
		return re;
	}
	
	@RequestMapping("/deleteHsjc")
    public boolean deleteHsjc(HttpServletRequest request,
			HttpServletResponse response){
		boolean re = false;
		String id = request.getParameter("id");
		service.deleteHsjc(Integer.parseInt(id));
		re = true;
	    return re;
	}
	
	
	@RequestMapping("/toUpdateHsjc")
    public ModelAndView toUpdateHsjc(HttpServletRequest request,ModelAndView mv){
		String id=request.getParameter("id");
	    Hsjc ff = service.selectHsjcById(Integer.parseInt(id));
		mv.addObject("HsjcDate", ff);
		mv.setViewName("view/hsjc/update");
		return mv;
	}
	

	@RequestMapping("/updateHsjc")
	@ResponseBody
	public boolean updateHsjc(Hsjc ss){
		boolean re = false;
		service.updateHsjc(ss);
    public boolean deleteUser(HttpServletRequest request,
			HttpServletResponse response){
		boolean re = false;
		String id = request.getParameter("id");
		us.deleteUser(Integer.parseInt(id));
		re = true;
	    return re;
	}
	
	
	@RequestMapping("/toUpdateUser")
    public ModelAndView toUpdateUser(HttpServletRequest request,ModelAndView mv){
	    String id=request.getParameter("id");
	    User ff = us.selectUserById(Integer.parseInt(id));
		mv.addObject("userDate", ff);
		mv.setViewName("view/user/update");
		return mv;
	}
	
	@RequestMapping("/toUpdateAdminPassword")
    public ModelAndView toUpdateAdminPassword(HttpServletRequest request,ModelAndView mv){
		mv.setViewName("view/admin/updatePassword");
		return mv;
	}
	

	@RequestMapping("/updateAdminPassword")
	@ResponseBody
	public boolean updateAdminPassword(HttpServletRequest request){
		boolean re = false;
		Admin admin = (Admin)request.getSession().getAttribute("admin");
		String nowpass = request.getParameter("nowpass");
		String newpass = request.getParameter("newpass");
		if(admin !=null && admin.getPassword().equals(nowpass)) {
			us.updateAdminPassword(newpass,admin.getId());
			re = true;
		}
		return re;
	}
	
	@RequestMapping("/updateUser")
	@ResponseBody
	public boolean updateUser(HttpServletRequest request,User ss){
		Admin admin = (Admin)request.getSession().getAttribute("admin");
		boolean re = false;
		us.updateUser(ss);
		re = true;
		if(admin ==null) {
	       request.getSession().setAttribute("user", ss);
		}
		return re;
		session.removeAttribute("admin");
		session.removeAttribute("user");
		session.removeAttribute("doctor");
		return "view/login";
	}
	@RequestMapping("toMain")
	public String toMain(HttpServletRequest request,HttpSession session) {
		Map<String,Object> maps = new HashMap<>();
		List<Message> messageList = messageService.selectMessageList(maps);
		request.setAttribute("messageList", messageList);
		List<Records> recordsList = orderService.selectRecordsList(maps);
		for(Records record : recordsList) {
			record.setUser(userService.selectUserById(record.getUid()));
			record.setDoctor(doctorService.selectDoctorById(record.getDid()));
		}
		request.setAttribute("recordsList", recordsList);
		return "view/main";
	}
	@RequestMapping("toConsoleAct")
	public String toWelocmeAct() {	
		return "view/console";
	}
	
    @ResponseBody
    @RequestMapping("/upload")
    public Map upload(MultipartFile file,HttpServletRequest request){

        String prefix="";
        String dateStr="";
        OutputStream out = null;
        InputStream fileInput=null;
        try{
            if(file!=null){
                String originalName = file.getOriginalFilename();
                prefix=originalName.substring(originalName.lastIndexOf(".")+1);
                Date date = new Date();
                String uuid = UUID.randomUUID()+"";
                SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
                dateStr = simpleDateFormat.format(date);
                String filepath = "F:\\workspace\\flower_ssm\\WebContent\\img\\" + dateStr+"\\"+uuid+"." + prefix;
                
                File files=new File(filepath);
                System.out.println(filepath);
                if(!files.getParentFile().exists()){
                    files.getParentFile().mkdirs();
                }
		User user = (User)request.getSession().getAttribute("user");
		String MessageName = request.getParameter("key");
		List<Message> list = new ArrayList<>();
		Map<String,Object> maps = new HashMap<>();
		maps.put("key", MessageName);
		maps.put("uid", user!=null?user.getId():null);
		PageHelper.startPage(currentPage,10);
		list=service.selectMessageList(maps);
		PageInfo<Message> pageInfo=new PageInfo<Message>(list,8);
		map.put("pageInfo", pageInfo);
		map.put("key", MessageName);
		return new ModelAndView("view/message/list");
	} 

	@RequestMapping("/toAddMessage")
    public ModelAndView toAddMessage(HttpServletRequest request,ModelAndView mv){
		mv.setViewName("view/message/add");
		return mv;
	}
	
	@RequestMapping("/addMessage")
	@ResponseBody
	public boolean addMessage(Message ss){
		boolean re = false;
		ss.setCreatetime(new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()));
		service.addMessage(ss);
		re = true;
		return re;
	}
	
	@RequestMapping("/deleteMessage")
    public boolean deleteMessage(HttpServletRequest request,
			HttpServletResponse response){
		boolean re = false;
		String id = request.getParameter("id");
		service.deleteMessage(Integer.parseInt(id));
		re = true;
	    return re;
	}
	

@RestController
public class MessageController {
	
	@Autowired
	MessageService service;
	
	@Autowired
	UserService userService;
	

	@RequestMapping("/MessageList")
    public ModelAndView MessageList(
			@RequestParam(defaultValue="1") Integer currentPage,HttpServletRequest request,
			Map<String,Object> map){
		User user = (User)request.getSession().getAttribute("user");
		String MessageName = request.getParameter("key");
		List<Message> list = new ArrayList<>();
		Map<String,Object> maps = new HashMap<>();
		maps.put("key", MessageName);
		maps.put("uid", user!=null?user.getId():null);
		PageHelper.startPage(currentPage,10);
		list=service.selectMessageList(maps);
		PageInfo<Message> pageInfo=new PageInfo<Message>(list,8);
		map.put("pageInfo", pageInfo);
		map.put("key", MessageName);
		return new ModelAndView("view/message/list");
	} 
        }catch (Exception e){
        }finally{
            try {
                if(out!=null){
                    out.close();
                }
                if(fileInput!=null){
                    fileInput.close();
                }
            } catch (Exception e) {
            }
        }
        Map<String,Object> map=new HashMap<>();
        map.put("code",1);
        map.put("msg","");
        return map;

    }
    

    @ResponseBody
    @RequestMapping("/upload2")
    public Map upload2(MultipartFile file,HttpServletRequest request){

        String prefix="";
        String dateStr="";
        OutputStream out = null;
        InputStream fileInput=null;
        try{
            if(file!=null){
                String originalName = file.getOriginalFilename();
                prefix=originalName.substring(originalName.lastIndexOf(".")+1);
                Date date = new Date();
                String uuid = UUID.randomUUID()+"";
                SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
                dateStr = simpleDateFormat.format(date);
                String filepath = "D:\\upload\\" + dateStr+"\\"+uuid+"." + prefix;
                
                File files=new File(filepath);
                System.out.println(filepath);
                if(!files.getParentFile().exists()){
                    files.getParentFile().mkdirs();
                }
                file.transferTo(files);
                Map<String,Object> map2=new HashMap<>();
                Map<String,Object> map=new HashMap<>();
                map.put("code",0);
                map.put("msg","");
                map.put("data",map2);
                map2.put("src",dateStr+"/"+uuid+"." + prefix);
                return map;
            }
		}
		return re;
	}
	

    /**
     * 判断当前时间是否在[startTime, endTime]区间,注意时间格式要一致
     *
     * @param nowTime 当前时间
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @return
     */
    public static boolean isEffectiveDate(Date nowTime, Date startTime, Date endTime) {
        if (nowTime.getTime() == startTime.getTime()
                || nowTime.getTime() == endTime.getTime()) {
            return true;
        }
        Calendar date = Calendar.getInstance();
        date.setTime(nowTime);
        Calendar begin = Calendar.getInstance();
        begin.setTime(startTime);
        Calendar end = Calendar.getInstance();
        end.setTime(endTime);
        if (date.after(begin) && date.before(end)) {
            return true;
        } else {
            return false;
        }
    }
	
	@RequestMapping("/deleteRecords")
    public boolean deleteRecords(HttpServletRequest request,
			HttpServletResponse response){
		boolean re = false;
		String id = request.getParameter("id");
		service.deleteRecords(Integer.parseInt(id));
		re = true;
	    return re;
	}
	

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述