Java项目:医院预约挂号系统(java+Springboot+jsp+maven+layui+mysql)

Posted qq_1334611189

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java项目:医院预约挂号系统(java+Springboot+jsp+maven+layui+mysql)相关的知识,希望对你有一定的参考价值。

一、项目简述

功能包括:
用户分为患者,医生,管理员,患者可进行注册选择医生挂号,选择日期,选择号源,医生可进行接诊,管理员可对用户,医生信息的维护等等功能。

二、项目运行

环境配置:

Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)

项目技术:

JSP +Spring + SpringBoot + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等
 

 

 

 

医生业务处理层:

@Service
public class  DoctorServiceImp implements  DoctorService  
	
    @Autowired
    private   DoctorMapper  dm;

	@Override
	public int countByExample(DoctorExample example) 
		return  dm.countByExample(example);
	

	@Override
	public int deleteByPrimaryKey(Integer id) 
		return dm.deleteByPrimaryKey(id);
	

	@Override
	public int insertSelective(Doctor record) 
		// TODO Auto-generated method stub
		return dm.insertSelective(record);
	

	@Override
	public List<Doctor> selectByExample(DoctorExample example) 
		// TODO Auto-generated method stub
		return dm.selectByExample(example);
	

	@Override
	public Doctor selectByPrimaryKey(Integer id) 
		// TODO Auto-generated method stub
		return dm.selectByPrimaryKey(id);
	

	@Override
	public int updateByPrimaryKeySelective(Doctor record) 
		// TODO Auto-generated method stub
		return dm.updateByPrimaryKeySelective(record);
	

	@Override
	public int updateByPrimaryKey(Doctor record) 
		// TODO Auto-generated method stub
		return dm.updateByPrimaryKey(record);
	

	@Override
	public List<Doctor> selectDoctor(Doctor doctor) 
		DoctorExample se  = new  DoctorExample();
		DoctorExample.Criteria criteria = se.createCriteria();
        if(doctor != null)
            if(doctor.getName() != null && !"".equals(doctor.getName()))
                //模糊查询
                criteria.andNameLike( "%" +doctor.getName() +"%");
            
            if(doctor.getUsername() != null)
                criteria.andUsernameEqualTo(doctor.getUsername());
            
            if(doctor.getPasswoed() != null)
                criteria.andPasswoedEqualTo(doctor.getPasswoed());
            
            if(doctor.getBegindate() != null) 
            	criteria.andBegindateEqualTo(doctor.getBegindate());
           
            
            if(doctor.getSid() != null) 
            	criteria.andSidEqualTo(doctor.getSid());
            
        
        se.setOrderByClause("id desc");
		return dm.selectByExample(se);
	

	@Override
	public PageInfo<Doctor> selectDoctorList(Doctor doctor, Integer page, Integer size) 
		    PageHelper.startPage(page,size);
		    DoctorExample se  = new DoctorExample();
		    DoctorExample.Criteria criteria = se.createCriteria();
	        if(doctor != null)
	            if(doctor.getName() != null && !"".equals(doctor.getName()))
	                //模糊查询
	                criteria.andNameLike( "%" +doctor.getName() +"%");
	            
	            
	        
	        se.setOrderByClause("id desc");
	        List<Doctor> shops = dm.selectByExample(se);
	        PageInfo<Doctor> pageinfo = new PageInfo<Doctor>(shops);
	        return pageinfo;
	

	@Override
	public List<Doctor> selectTime(Doctor doctor) 
		// TODO Auto-generated method stub
		return dm.selectTime(doctor);
	


	

 
	
	

管理员业务处理层:

@Service
public class AdminServiceImp implements AdminService  
	
    @Autowired
    private  AdminMapper  am;

	
	
	@Override
	public int insertSelective(Admin record) 
		// TODO Auto-generated method stub
		return am.insertSelective(record);
	

	@Override
	public List<Admin> selectByExample(AdminExample example) 
		// TODO Auto-generated method stub
		return am.selectByExample(example);
	

	@Override
	public Admin selectByPrimaryKey(Integer id) 
		// TODO Auto-generated method stub
		return am.selectByPrimaryKey(id);
	

	@Override
	public int updateByPrimaryKeySelective(Admin record) 
		// TODO Auto-generated method stub
		return am.updateByPrimaryKeySelective(record);
	

	@Override
	public List<Admin> selectAdmin(Admin admin) 
		AdminExample ae  = new AdminExample();
        AdminExample.Criteria criteria = ae.createCriteria();
        if(admin.getUsername() != null)
            criteria.andUsernameEqualTo(admin.getUsername());
        
        if(admin.getPassword() != null)
            criteria.andPasswordEqualTo(admin.getPassword());
        
        return am.selectByExample(ae);
	
  
	
	

登录控制层:

/**
 * 登录控制层
 */
@Controller
@RequestMapping("/login")
public class LoginController 
	
     @Autowired
     private AdminService adminService;

     @Autowired
     private DoctorService doctorService;
     
     @Autowired
     private SectionService sectionService;

     
     
     @Autowired
     private   PatientService  patientService;
     
     
     @Value("$fileUrl") //在配置文件中获取文件的保存路径
     private String filePath;

     
     
		/**
	          * 后台登陆界面
		 * @throws IOException 
	     */
	    @RequestMapping("/afterView")
	    public String afterLogin(Integer type,Model model) 
	        if(type == null) 
	            type = 1;
	        
	        model.addAttribute("type",type);
	        return "login";
	    

	    
	 /**
	         * 后台登陆界面
	    */
	   @RequestMapping("/index")
	   public String index(Integer type,Model model) 
	       if(type == null)
	           type = 1;
	       
	       model.addAttribute("type",type);
	       return "login";
	   
	   
		 /**
        * 后台登陆界面
   */
  @RequestMapping("/font/index")
  public String fontIndex(Integer type,Model model) 
      if(type == null)
          type = 3;
      
      model.addAttribute("type",type);
      return "loginByPatient";
  

/*	   public static void main(String[] args) 
		    String filename ="C:\\\\Users\\\\Administrator\\\\Pictures\\\\项目图片\\\\1156.jpg_wh1200.jpg";
		    int indexOf = filename.indexOf(".");
		    String substring = filename.substring(indexOf); 
		    System.out.println(substring);
	*/
	   /**
	    * 医生图片上传
	    * @param mufile
	    * @param id
	    * @return
	    * @throws IOException
	    */
	   @RequestMapping(value ="/zixunAdd")
	   @ResponseBody
	   public  Map<String, Object>  zixunAdd(@RequestParam("mf")MultipartFile mufile,@RequestParam("id")Integer  id) throws IOException
	       Map<String, Object> map =  new HashMap<String, Object>();
	       String random   =  StringRandom.getRandom();
	       String filename =  mufile.getOriginalFilename();
	       //随机字符+原图片名用作新的图片名
	       filename = random+".jpg";
	       try 
	           //文件保存路径  D:/xxxx/xxxx/
	           File file = new File(filePath+filename);
	           //判断父级文件是否存在
	           if (!file.getParentFile().exists()) 
	               file.getParentFile().mkdir();
	           
	           mufile.transferTo(file);
	        catch (IllegalStateException | IOException e) 
	           e.printStackTrace();
	       
	       Doctor doctor = new Doctor(); 
	       if(id != -1)
	    	   doctor.setId(id);
	    	   doctor.setImg("/files/"+filename);
	       	doctorService.updateByPrimaryKeySelective(doctor);
	       else 
	           //添加图片路径
	       	doctor.setImg("/files/"+filename);
	       	doctorService.insertSelective(doctor);
	           System.out.println("id:"+doctor.getId());
	           map.put("id",doctor.getId());
	       
	       return map;
	   
	   
	  
	   /**
	     * 判断管理员账号
	     */
	    @RequestMapping("/sectionxList")
	    @ResponseBody
	    public List<Section> sectionxList(Model model, Integer id) 
	    	  List<Section> selectByExample = null;
		      if(id != null) 
		    		  Section section = new Section();
			    	  section.setPid(id);
			    	  selectByExample = sectionService.selectByExample(section);
	    	   
	    	   return    selectByExample;
	       
	   
	    /**
	     * 判断管理员账号
	     */
	    @RequestMapping("/mimaUpate")
	    @ResponseBody
	    public Map<String,String> passwordUpate(Model model, String zhanghao) 
	            Map<String, String> map =  new HashMap<String, String>();
	            Admin ad = new Admin();
	            ad.setUsername(zhanghao);
	            List<Admin> selectAdmin = adminService.selectAdmin(ad);
	            if(selectAdmin.size() > 0)
	                map.put("pan","err");
	            else
	                map.put("pan","ok");
	            
	           return    map;
	    

	    /**
	     * 判断医生账号
	     */
	    @RequestMapping("/panzhanghao")
	    @ResponseBody
	    public Map<String,String> panzhanghao(Model model, String zhanghao) 
	            Map<String, String> map =  new HashMap<String, String>();
	        	DoctorExample se  = new  DoctorExample();
	    		DoctorExample.Criteria criteria = se.createCriteria();
	    		criteria.andUsernameEqualTo(zhanghao);
	            List<Doctor> selectByExample = doctorService.selectByExample(se);
	            if(selectByExample.size() > 0)
	                map.put("pan","err");
	            else
	                map.put("pan","ok");
	            
	           return    map;
	    
	    
	   
	
	   /**
	      * 医生添加
	    * @param model
	    * @param zixun
	    * @return
	    */
	   @RequestMapping("/zixunInsert")
	   public String zixunInsert(Model model,Doctor doctor)
	       if(doctor.getId() !=  null)
	    	   if(doctor.getSid() != null) 
	    		   Section selectByPrimaryKey = sectionService.selectByPrimaryKey(doctor.getSid());
	    		   doctor.setSname(selectByPrimaryKey.getName());
	    	   
	           doctorService.updateByPrimaryKeySelective(doctor);
	       
	        model.addAttribute("type",1);
	        return "login";
	   
		    
		
	    /**
	        *  管理员注册界面
	     */
	    @RequestMapping("/mimaPageUptate")
	    public String  mimaPageUptate(Integer type,Model model) 
	    	//1医生  2 管理员
	    	if(type == 1 ) 
	    		  return "doctorRegister";
	    	
	  	  return "adminRegister";
	    
	    
	    /**
	      *  医生注册界面
	     */
	    @RequestMapping("/doctorRegisterPage")
	    public String  doctorRegister(Model model) 
	    	List<Section> sectionlist2  = null;
	    	Section  se = new  Section();
	    	se.setType(1);
		    List<Section> sectionlist = sectionService.selectByExample(se);
		    if(sectionlist.size() > 0 ) 
		    	//科室详情
		    	Section  section = new  Section();
		    	section.setPid(sectionlist.get(0).getId());
		    	section.setType(2);
		    	sectionlist2 = sectionService.selectByExample(section);
	        
	     model.addAttribute("sectionlist", sectionlist);
	     model.addAttribute("sectionlist2", sectionlist2);
	  	  return "doctorRegister";
	    
	    
	    
	    
	    /**
	       * 管理员注册
	     */
	   @RequestMapping("/admin_Register")
	   public String admin_Register(Admin admin,Model model) 
		   int insertSelective = adminService.insertSelective(admin);
		   model.addAttribute("type",2);
	       return "login";
	   
		
	   
	   
	   
	   
	   
	   /**
	     * 登陆验证
	     * @return
	     */
	    @RequestMapping("/verificatio")
	    public String verificatio(String username, String password, Integer type, HttpServletRequest request,Model model) 
	        HttpSession session = request.getSession();
	        session.setAttribute("type",type);
	        //类型为1是医院 2是管理员
	         if(type == 1)
	        	 Doctor doctor = new  Doctor();
	        	 doctor.setUsername(username);
	        	 doctor.setPasswoed(password);
	        	 List<Doctor> doctorlist = doctorService.selectDoctor(doctor);
	             if(doctorlist.size() <= 0)
	                 model.addAttribute("message","密码错误");
	                 model.addAttribute("type",type);
	                 return "login";
	             
	             session.setAttribute("DOCTOR",doctorlist.get(0));
	             return "redirect:/doctor/index";
	         
	         if(type == 3)
	        	 Patient patient = new  Patient();
	        	 patient.setUsername(username);
	        	 patient.setPassword(password);
	        	 List<Patient>  list = patientService.selectPatient(patient);
	   	    	if(list.size() <= 0) 
	   	    	 model.addAttribute("message","密码错误");
        		 model.addAttribute("type",type);
        		 return "loginByPatient";
	   	    	
	        	 session.setAttribute("PATIENT",list.get(0));
	        	 return "redirect:/api/doctorList1";
	         
	         
	         
	        Admin admin = new Admin();
	        admin.setUsername(username);
	        admin.setPassword(password);
	        List<Admin> adminlist  = adminService.selectAdmin(admin);
	        if(adminlist.size() <= 0)
	            model.addAttribute("message","密码错误");
	            model.addAttribute("type",type);
	            return "login";
	        
	        session.setAttribute("ADMIN",adminlist.get(0));
	        return "redirect:/admin/index";
	    
	   
	    /**
	     * 退出登录
	     * @param request
	     * @return
	     */
	    @RequestMapping("/sessionInvalidate")
	    public String boot(HttpServletRequest request,Model model) 
	        HttpSession session = request.getSession();
	        Integer type = (Integer) session.getAttribute("type");
	        if(type == null)
	            type=1;
	        
	        
	        if(type == 3)
	        	model.addAttribute("type",type);
		        session.invalidate();   //session销毁
	        	 return "loginByPatient";
	        
	        
	        model.addAttribute("type",type);
	        session.invalidate();   //session销毁
	        return "login";
	    
	   
		    

/*
    *//**
     * 跳转忘记密码界面
     *//*
    @RequestMapping("/mimaPageUptate")
    public String  passwordUpate() 
        return "behind/merchant/mibaoUptate";
    

    *//**
     * 修改密码
     *//*
    @RequestMapping("/mimaUpate")
    @ResponseBody
    public Map<String,String> passwordUpate(Model model, String  mima, String  mibao, String zhanghao) 
            Map<String, String> map =  new HashMap<String, String>();
            Merchant me = new Merchant();
            me.setZhanghao(zhanghao);
            me.setMibao(mibao);
            List<Merchant> list = merchantService.selectMerchant(me);
            if(list.size() > 0)
                Merchant me2 = new Merchant();
                me2.setId(list.get(0).getId());
                me2.setMima(mima);
                merchantService.updateByPrimaryKeySelective(me2);
                map.put("pan","ok");
            else
                map.put("pan","err");
            
           return    map;
    





    *//**
     * 后台登陆界面
     * @return
     *//*
    @RequestMapping("/afterView")
    public String afterLogin(Integer type,Model model) 
        if(type == null)
            type = 1;
        
        model.addAttribute("type",type);
        return "behind/login";
    
    *//**
     * 登陆验证
     * @return
     *//*
    @RequestMapping("/verificatio")
    public String signin(String username, String password, Integer type, HttpServletRequest request,Model model) 
        HttpSession session = request.getSession();
        session.setAttribute("type",type);
        //类型为1是商户后台 2是管理员
         if(type == 1)
             Merchant merchant = new Merchant();
             merchant.setZhanghao(username);
             merchant.setMima(password);
             merchant.setState(1);
             List<Merchant> merchants = merchantService.selectMerchant(merchant);
             if(merchants.size() <= 0)
                 model.addAttribute("message","密码错误");
                 model.addAttribute("type",type);
                 return "behind/login";
             
             session.setAttribute("MERCHANT",merchants.get(0));
             return "redirect:/merchant/index";
         
        Admin admin = new Admin();
        admin.setUsername(username);
        admin.setPassword(password);
        List<Admin> adminlist  = adminService.selectAdmin(admin);
        if(adminlist.size() <= 0)
            model.addAttribute("message","密码错误");
            model.addAttribute("type",type);
            return "behind/login";
        
        session.setAttribute("ADMIN",adminlist.get(0));
        return "redirect:/admin/index";
    

    *//**
     * 退出登录
     * @param request
     * @return
     *//*
    @RequestMapping("/sessionInvalidate")
    public String boot(HttpServletRequest request,Model model) 
        HttpSession session = request.getSession();
        Integer type = (Integer) session.getAttribute("type");
        if(type == null)
            type=1;
        
        model.addAttribute("type",type);
        session.invalidate();   //session销毁
        return "behind/login";
    


    *//**
     *  管理员修改密码界面
     * @return
     *//*
    @RequestMapping("/adminUptatePage")
    public String adminUptatePage(Model model) 

        return "behind/admin/adminUptate";
    


    *//**
     *  商户修改密码界面
     * @return
     *//*
    @RequestMapping("/merchantUptate")
    public String merchantUptate(Model model) 
        return "behind/merchant/merchantUptate";
    
*/


以上是关于Java项目:医院预约挂号系统(java+Springboot+jsp+maven+layui+mysql)的主要内容,如果未能解决你的问题,请参考以下文章

Java精品项目源码第96期宠物医院预约挂号系统

Java精品项目源码前后端分离项目第23期医院预约挂号系统

Java精品项目源码第40期宠物医院在线预约挂号系统

Java精品项目源码第40期宠物医院在线预约挂号系统

计算机毕业设计之java+ssm医院预约挂号系统

基于java+ssm医院门诊预约挂号排班系统-计算机毕业设计