Java项目:毕业论文管理系统(java+SSM+JSP+Tomcat+mysql)

这是一个基于SSM框架的毕业设计管理系统,包含管理员、教师和学生三种角色。管理员可进行信息、教师、学生、选题、公告等管理,教师可管理个人信息、选题、进度等,学生可管理个人信息、课题、进度。系统提供了文件上传、预览、下载和删除功能,同时支持文件编码适应不同浏览器。后台管理包括教师、学生、系部、专业等信息的增删改查,以及成绩比重设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

源码获取:博客首页 "资源" 里下载!

毕业设计管理系统

1、本系统使用SSM框架

2、有管理员、教师、学生三种角色,管理员使用admin/admin登录,教师使用t_01/6666登录,学生使用142001/111登录

3、管理员有最大权限,可以进行信息管理、教师管理、学生管理、选题管理、公告管理、查看已上传等;

4、教师角色包括个人信息管理、选题管理、进度管理、学生管理、疑问管理、文档管理、成绩管理

5、学生角色包括个人信息管理、课题管理、进度管理、文档管理、提问管理、查看答辩资格、成绩管理

管理员用户:admin 密码:admin

教师用户:t_01 密码:6666

学生用户:142001 密码:111

环境要求

1.JDK配置

首先安装好JDK,我一般使用1.8版本的JDK。

2.安装IDEA
3.MySQL安装
4.   IDEA/Eclipse配置Tomcat 8

MySQL一般安装5.7版本的。

 

 

 

 

 

 

文件管理控制层:

@Controller
public class FileController {
	@Autowired
	private MyFileService fileService;
	
	@Autowired
	private SelectTitleService selectTitleService;

	@Autowired
	private TeacherService teacherService;

	@Autowired
	private ProjBookService projBookService;
	
	@Autowired
	private OpenReportService openReportService;
	
	@Autowired
	private MidCheckService midCheckService;
	
	@Autowired
	private ThesisService thesisService;
	
	@Autowired
	private ThesisAttachmentService thesisAttachmentService;

	@Autowired
	private StudentService studentService;

	@Autowired
	private TitleService titleService;
	
	@Autowired
	private MyFileService myFileService;
	
	
	

	/**
	 * 根据浏览器的不同进行编码设置,返回编码后的文件名
	 */
	public String getFilename(HttpServletRequest request, String filename) throws Exception {
		// IE不同版本User-Agent中出现的关键词
		String[] IEBrowserKeyWords = { "MSIE", "Trident", "Edge" };
		// 获取请求头代理信息
		String userAgent = request.getHeader("User-Agent");
		for (String keyWord : IEBrowserKeyWords) {
			if (userAgent.contains(keyWord)) {
				// IE内核浏览器,统一为UTF-8编码显示
				return URLEncoder.encode(filename, "UTF-8");
			}
		}
		// 火狐等其它浏览器统一为ISO-8859-1编码显示
		return new String(filename.getBytes("UTF-8"), "ISO-8859-1");
	}

	/**
	 * 预览文档(pdf)
	 */
	@RequestMapping("/file/toPdfProjBook.action")
	public ModelAndView toPdfProjBook(Long num1, String num2) {
		Myfile file = fileService.toPdfProjBook(num1);
		Teacher teacher = teacherService.findTeacherById(num2);
		String fPath = file.getfPath();
		String fPath2 = StringUtils.substringBeforeLast(fPath, ".");
		fPath2 = fPath2 + ".pdf";
		System.out.println("检查是否存在此pdf文件" + fPath2);
		File file2 = new File(fPath2);
		if(!file2.exists()) {
			WordToPdf w = new WordToPdf();
			w.wordToPDF(fPath, fPath2);
		}
		String f = file.getfName();
		f = f.substring(0, f.indexOf("."));
		f = f + ".pdf";
		String t = teacher.gettId();
		ModelAndView mv = new ModelAndView();
		mv.addObject("f", f);
		mv.addObject("t", t);
		System.out.println(f+t);
		mv.setViewName("views/pdf");
		return mv;
	}

	/**
	 * 文件下载
	 */
	@RequestMapping("/file/filedown.action")
	public ResponseEntity<byte[]> downfile(HttpSession session, HttpServletRequest request,
			HttpServletResponse response) throws Exception {
		String fId = request.getParameter("fId");
		ProjBook projBook = null;
		Myfile myfile = new Myfile();
		long l = Long.parseLong(fId);
		myfile = fileService.selectById(l);
		String filename = myfile.getfName();
		projBook = projBookService.findProjBookByfId(l);
		User user =(User) session.getAttribute("USER");
		String path = null;
		if(user.getRole().equals("学生")) {
			System.out.println("进来了");
			Student student = (Student) session.getAttribute("USER_INFO");
			List<ProjBook> list = projBookService.findProjBookList(projBook, (String) student.getsId());
			String tId = list.get(0).gettId();
			String tName = list.get(0).gettName();
			System.out.println(tId);
			System.out.println(tName);
			tName = tId;
			path = request.getServletContext().getRealPath("/upload/");
			path = path + tName + "\\";
		}
		else if(user.getRole().equals("教师")) {
			String tId = request.getParameter("tId");
			String tName = request.getParameter("tName");
			tName = tId;
			path = request.getServletContext().getRealPath("/upload/");
			path = path + tName + "\\";
		}
		System.out.println("地址是 " + path);
		// 指定要下载的文件所在路径
		ResponseEntity<byte[]> result = null;
		try {
			// 创建该文件对象
			File file = new File(path + File.separator + filename);
			// 对文件名编码,防止中文文件乱码
			filename = this.getFilename(request, filename);
			// 设置响应头
			HttpHeaders headers = new HttpHeaders();
			// 通知浏览器以下载的方式打开文件
			headers.setContentDispositionFormData("attachment", filename);
			// 定义以流的形式下载返回文件数据
			headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
			// 使用Sring MVC框架的ResponseEntity对象封装返回下载数据
			result = new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file), headers, HttpStatus.OK);
		} catch (FileNotFoundException e) {
			e.printStackTrace();
			response.setContentType("text/html;charset=utf-8");
			PrintWriter out = response.getWriter();
			out.print("<script language=\"javascript\">alert('下载失败!')</script>");
		} catch (IOException e) {
			e.printStackTrace();
			response.setContentType("text/html;charset=utf-8");
			PrintWriter out = response.getWriter();
			out.print("<script language=\"javascript\">alert('下载失败!')</script>");
		}
		return result;
	}

	/**
	 * 文件上传
	 * @throws IOException 
	 */
	@RequestMapping("/file/fileUpload.action")
	public ModelAndView fileUpload(HttpSession session,HttpServletResponse response,
			@RequestParam("fType") String fType,
			@RequestParam("uploadfile") List<MultipartFile> uploadfile, HttpServletRequest request) throws IOException {
		Student student = (Student)session.getAttribute("USER_INFO");
		ModelAndView mv = new ModelAndView();
		mv.addObject("fType", fType);
		if(fType.equals("任务书")) {
			List<ProjBook> list = projBookService.findProjBookBysIdAndAgree(student.getsId(), "待通过");
			if(list.size()!=0) {
				mv.addObject("FAIL", "FAIL1");
				mv.setViewName("views/error");
				return mv;
			}
		}else if(fType.equals("开题报告")) {
			List<OpenReport> list = openReportService.findOpenReportBysIdAndAgree(student.getsId(), "待通过");
			if(list.size()!=0) {
				mv.addObject("FAIL", "FAIL1");
				mv.setViewName("views/error");
				return mv;
			}
		}else if(fType.equals("中期检查")) {
			List<MidCheck> list = midCheckService.findMidCheckBysIdAndAgree(student.getsId(), "待通过");
			if(list.size()!=0) {
				mv.addObject("FAIL", "FAIL1");
				mv.setViewName("views/error");
				return mv;
			}
		}else if(fType.equals("论文")) {
			List<Thesis> list = thesisService.findThesisBysIdAndAgree(student.getsId(), "待通过");
			if(list.size()!=0) {
				mv.addObject("FAIL", "FAIL1");
				mv.setViewName("views/error");
				return mv;
			}
		}else if(fType.equals("附件")) {

			List<ThesisAttachment> list = thesisAttachmentService.findThesisAttachmentBysId(student.getsId());
			if(list.size()!=0) {
				mv.addObject("FAIL", "FAIL1");
				mv.setViewName("views/error");
				return mv;
			}
		}
		student = studentService.findStudent(student.getsId(), student.getsPwd());
		Title title = titleService.findTitleBysId(student.getsId());
		String tId = title.gettId();
	//	String tName = title.gettName();
		String t = tId;
		String s = student.getsId() + student.getsName();
		s = s + fType;

		// 判断所上传文件是否存在
				if (!uploadfile.isEmpty() && uploadfile.size() > 0) {
					//循环输出上传的文件
					for (MultipartFile file : uploadfile) {
						String name1 = t;
						// 获取上传文件的原始名称
						String originalFilename = file.getOriginalFilename();
						System.out.println("上传文件原始文件名是: "+ originalFilename);
						int c = originalFilename.indexOf(".");
						String s1 = originalFilename.substring(c);
						String s2 = originalFilename.substring(0, c);
						s2 = s;
						originalFilename = s2 + s1;
						//获取上传文件后缀名
						String dirPath = 
		                       request.getServletContext().getRealPath("/upload/"+name1);
						System.out.println(dirPath);
						File filePath = new File(dirPath);
						// 如果保存文件的地址不存在,就先创建目录
						if (!filePath.exists()) {
							filePath.mkdirs();
						}
						String newFilename = dirPath + "\\" + originalFilename;
						System.out.println("文件保存地址" + newFilename +"\n");
						File filePath2 = new File(newFilename);
						int i = 0;
						String s3 = null;
						while(filePath2.exists()) {
							i++;
							s3 = s2+ "(" + String.valueOf(i) +")";
							originalFilename = s3 + s1;
		     				System.out.println("文件已存在,重新命名为: "+originalFilename);  //文件名
							newFilename = dirPath + "\\" + originalFilename;
							System.out.println("新文件地址是: " +newFilename);
							filePath2 = new File(newFilename);
						}
						SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
						String nowtime = df.format(new Date());
				        System.out.println(nowtime);// new Date()为获取当前系统时间
						try {
							// 使用MultipartFile接口的方法完成文件上传到指定位置
							file.transferTo(new File(newFilename));
			//				String newFilenamePdf = s3 + ".pdf";
			//				System.out.println("生成的pdf文件名是: "+ newFilenamePdf);
			//				newFilenamePdf = dirPath + "\\" + newFilenamePdf;
			//				System.out.println("生成的pdf文件的保存地址是: "+newFilenamePdf);
			//				WordToPdf w = new WordToPdf();
			//				w.wordToPDF(newFilename, newFilenamePdf);
							Myfile myfile = new Myfile();
							myfile.setfName(originalFilename);                           
							myfile.setfPath(newFilename);
							Date date = df.parse(nowtime);
							myfile.setUploadDatetime(date);
							myfile.setfType(fType);
							myFileService.createMyfile(myfile);
							if(fType.equals("任务书")) {
								ProjBook projBook = new ProjBook();
								projBook.setfId(myFileService.selectByfName(originalFilename).getfId());
								projBook.setsId(student.getsId());
								projBook.setAgree("待通过");
								projBookService.createProjBook(projBook);
							}else if(fType.equals("开题报告")) {
								OpenReport openReport = new OpenReport();
								openReport.setfId(myFileService.selectByfName(originalFilename).getfId());
								openReport.setsId(student.getsId());
								openReport.setAgree("待通过");
								openReportService.createOpenReport(openReport);
							}else if(fType.equals("中期检查")) {
								MidCheck midCheck = new MidCheck();
								midCheck.setfId(myFileService.selectByfName(originalFilename).getfId());
								midCheck.setsId(student.getsId());
								midCheck.setAgree("待通过");
								midCheckService.createMidCheck(midCheck);
							}else if(fType.equals("论文")) {
								SelectTitle selectTitle = selectTitleService.findSelTitleListBysIdAndState(student.getsId(),"同意").get(0);
								Thesis thesis = new Thesis();
								thesis.setfId(myFileService.selectByfName(originalFilename).getfId());
								thesis.setsId(student.getsId());
								thesis.setAgree("待通过");
								thesis.setTitlId(selectTitle.getTitlId());
								thesisService.createThesis(thesis);
							}else if(fType.equals("附件")) {
								ThesisAttachment thesisAttachment = new ThesisAttachment();
								thesisAttachment.setfId(myFileService.selectByfName(originalFilename).getfId());
								thesisAttachment.setsId(student.getsId());
								thesisAttachmentService.createThesisAttachment(thesisAttachment);
							}
							
						} catch (Exception e) {
							e.printStackTrace();
							mv.setViewName("views/error");
		                    return mv;
						}
					}
					// 跳转到成功页面
					mv.setViewName("views/success");
					return mv;
				}else{
					mv.setViewName("views/error");
                    return mv;
				}

	}
	
	/**
	 * 删除文件
	 */
	@RequestMapping("/file/filedelete.action")
	@ResponseBody
	public String filedelete(HttpSession session,HttpServletRequest request ,Long fId) {
		Myfile myfile = fileService.selectById(fId);

		File file = new File(myfile.getfPath());
		if (file.isFile() && file.exists()) {
			file.delete();
		}
		int rows = fileService.delete(fId);
	    if(rows > 0){			
	        return "OK";
	    }else 
	    	return "FAIL";
	}

}

后台管理员控制层:

@Controller
public class AdminController {
	
	@Autowired
	private TeacherService teacherService;
	@Autowired
	private StudentService studentService;
	@Autowired
	private BaseDeptService baseDeptService;
	@Autowired
	private BaseMajorService baseMajorService;
	@Autowired
	private AdminService adminService;
	@Autowired
	private TitleService titleService;
	@Autowired
	private MyFileService myFileService;
	@Autowired
	private ScoreProportionService scoreProportionService;
	
	/**
	 * 向管理员主页面跳转
	 */
	@RequestMapping(value = "/admin/toindex.action", method = RequestMethod.GET)
	public String toIndex() {
	    return "views/user/admin/index";
	}
	
	/**
	 * 向教师列表跳转
	 */
	@RequestMapping(value = "/admin/toteacherlist.action")
	public ModelAndView teacherlist(@ModelAttribute("teacher") Teacher teacher,
                                    @RequestParam(value="pageNum",required=false,defaultValue="1") int pageNum) {
		List<Teacher> list = teacherService.Teacherlist(teacher);
		List<BaseDept> list1 = baseDeptService.deptlist();
		PageInfo<Teacher> pageInfo = new PageInfo<>(list,10);
		ModelAndView mv = new ModelAndView();
		mv.addObject("pageInfo", pageInfo);
		mv.addObject("BaseDept", list1);
		mv.setViewName("views/user/admin/teacherlist");
		return mv;
	}
	
	/**
	 * 系部下拉框选中值改变时获取对应专业
	 */
	@RequestMapping(value="/admin/changeDept.action")
	@ResponseBody
	public List<BaseMajor> changeDept(String deptId){
		List<BaseMajor> list = null;
	  try{
		  list = baseMajorService.findMajorBydeptId(deptId);
	  }catch(Exception e){
	     
	  }
	  return list;
	}
	
	/**
	 * 系部下拉框选中值改变时获取对应专业
	 */
	@RequestMapping(value="/admin/changeDept1.action")
	@ResponseBody
	public List<BaseMajor> changeDept1(String dept){
		List<BaseMajor> list = null;
		BaseDept baseDept = baseDeptService.findDeptByName(dept);
	  try{
		  list = baseMajorService.findMajorBydeptId(baseDept.getDeptId());
	  }catch(Exception e){
	     
	  }
	  return list;
	}
	
	
	/**
	 * 通过tId获取教师信息详情
	 */
	@RequestMapping("/admin/getTeacherBytId.action")
	@ResponseBody
	public Teacher getTeacherBytId(String tId) {
		Teacher teacher = teacherService.findTeacherById(tId);
	    return teacher;
	}
	
	/**
	 * 添加教师
	 */
	@RequestMapping("/admin/createTeacher.action")
	@ResponseBody
	public String createTeacher(Teacher teacher) {
		teacher.settPwd("123");
		teacher.settState(1);
		BaseDept baseDept = baseDeptService.findDeptById(teacher.getDeptId());
		teacher.setDept(baseDept.getDeptName());
		if(teacher.getMajorId()!=null && !teacher.getMajorId().equals("")) {
			BaseMajor baseMajor = baseMajorService.findMajorById(teacher.getMajorId());
			teacher.setMajor(baseMajor.getMajorName());
		}else {
			teacher.setMajor("无");
		}
		if(teacher.getPower().equals("否")) {
			teacher.setMajorId(null);
		}
		int rows = 0;
		try {
			rows = teacherService.createTeacher(teacher);
		} catch(Exception e) {
			
		}
		
		if(rows > 0){
	        return "OK";
	    }else{
	        return "FAIL";
	    }
	}
	
	/**
	 * 删除教师
	 */
	@RequestMapping("/admin/deleteTeacher.action")
	@ResponseBody
	public String deleteTeacher(String tId, int s) {
		int rows = 0;
		try {
			Teacher teacher = new Teacher();
			teacher.settId(tId);
			teacher.settState(s);
			rows = teacherService.editInfo(teacher);
		} catch(Exception e) {
			
		}
		if(rows > 0){
	        return "OK";
	    }else{
	        return "FAIL";
	    }
	}
	
	
	/**
	 * 修改教师信息
	 */
	@RequestMapping("/admin/updateTeacher.action")
	@ResponseBody
	public String updateTeacher(Teacher teacher) {
		if(teacher.getPower().equals("否")) {
			teacher.setMajorId(null);
			teacher.setMajor("无");
		}
		else {
			BaseMajor baseMajor = baseMajorService.findMajorById(teacher.getMajorId());
			teacher.setMajor(baseMajor.getMajorName());
		}
		int rows = 0;
		try {
			rows = teacherService.editInfo(teacher);
		} catch (Exception e){
			
		}
		if(rows > 0){
	        return "OK";
	    }else{
	        return "FAIL";
	    }
	}
	
	
	
	/**
	 * 向学生列表跳转
	 */
	@RequestMapping(value = "/admin/tostudentlist.action")
	public ModelAndView studentlist(@ModelAttribute("student") Student student,
                                    @RequestParam(value="pageNum",required=false,defaultValue="1") int pageNum) {
		List<Student> list = studentService.Studentlist(student);
		List<BaseDept> list1 = baseDeptService.deptlist();
		PageInfo<Student> pageInfo = new PageInfo<>(list,10);
	    ModelAndView mv = new ModelAndView();
	    mv.addObject("pageInfo", pageInfo);
	    mv.addObject("BaseDept", list1);
	    mv.setViewName("views/user/admin/studentlist");
	    return mv;
	}
	
	/**
	 * 通过sId获取学生信息
	 */
	@RequestMapping("/admin/getStudentBysId.action")
	@ResponseBody
	public Student getStudentBysId(String sId) {
		Student student = studentService.findStudentById(sId);
		   return student;
		}
	 
	/**
	* 修改学生信息
	*/
	@RequestMapping("/admin/updateStudent.action")
	@ResponseBody
	public String updateStudent(Student student) {
		BaseMajor baseMajor = baseMajorService.findMajorById(student.getMajorId());
		student.setMajor(baseMajor.getMajorName());
		int rows = studentService.editInfo(student);
		    if(rows > 0){
		        return "OK";
		    }else{
		        return "FAIL";
		    }
	}
	
	/**
	 * 删除学生
	 */
	@RequestMapping("/admin/deleteStudent.action")
	@ResponseBody
	public String deleteStudent(String sId, int s) {
		int rows = 0;
		try {
			Student student = new Student();
			student.setsId(sId);
			student.setsState(s);
			rows = studentService.editInfo(student);
		} catch(Exception e) {
			
		}
		
		if(rows > 0){
	        return "OK";
	    }else{
	        return "FAIL";
	    }
	}
	
	/**
	 * 添加学生
	 */
	@RequestMapping("/admin/createStudent.action")
	@ResponseBody
	public String createStudent(Student student) {
		student.setsPwd("123");
		student.setsState(1);
		BaseMajor baseMajor = baseMajorService.findMajorById(student.getMajorId());
		BaseDept baseDept = baseDeptService.findDeptById(baseMajor.getDeptId());
		student.setMajor(baseMajor.getMajorName());
		student.setDept(baseDept.getDeptName());
		int rows = 0;
		try {
			rows = studentService.createStudent(student);
		} catch(Exception e) {
			
		}
		
		if(rows > 0){
	        return "OK";
	    }else{
	        return "FAIL";
	    }
	}
	
	/**
	 * 向系部列表跳转
	 */
	@RequestMapping(value = "/admin/todeptlist.action")
	public ModelAndView deptlist(@ModelAttribute("baseDept") BaseDept baseDept,
                                 @RequestParam(value="pageNum",required=false,defaultValue="1") int pageNum) {
		List<BaseDept> list1 = baseDeptService.findDeptByName1(baseDept);
		PageInfo<BaseDept> pageInfo = new PageInfo<>(list1,10);
		ModelAndView mv = new ModelAndView();
		mv.addObject("pageInfo", pageInfo);
		mv.setViewName("views/user/admin/deptlist");
		return mv;
	}
	
	/**
	 * 新建系部
	 */
	@RequestMapping(value = "/admin/createDept.action")
	@ResponseBody
	public String createDept(BaseDept baseDept) {
		baseDept.setDeptState(1);
		int rows = 0;
		try {
			rows = baseDeptService.createDept(baseDept);
		} catch(Exception e) {
			
		}
		
		if(rows > 0){
	        return "OK";
	    }else{
	        return "FAIL";
	    }
	}

	/**
	 * 删除/恢复系部
	 */
	@RequestMapping("/admin/deleteDept.action")
	@ResponseBody
	public String deleteDept(String deptId,int s) {
		int rows = 0;
		try {
			rows = baseDeptService.editInfo(deptId,s);
		} catch(Exception e) {
			
		}
		
		if(rows > 0){
	        return "OK";
	    }else{
	        return "FAIL";
	    }
	}
	
	/**
	 * 通过deptId获取系部详情
	 */
	@RequestMapping("/admin/getDeptById.action")
	@ResponseBody
	public BaseDept getDeptById(String deptId) {
		BaseDept baseDept = baseDeptService.findDeptById(deptId);
	    return baseDept;
	}
	
	/**
	* 修改系部信息
	*/
	@RequestMapping("/admin/updateDept.action")
	@ResponseBody
	public String updateDept(BaseDept baseDept) {
		String oldName = baseDeptService.findDeptById(baseDept.getDeptId()).getDeptName();
		int rows = 0;
		rows = baseDeptService.editInfo1(baseDept);
		    if(rows > 0){
		    	teacherService.editInfo1(baseDept);
		    	studentService.editInfo1(baseDept,oldName);
		        return "OK";
		    }else{
		        return "FAIL";
		    }
	}

	/**
	 * 向专业列表跳转
	 */
	@RequestMapping(value = "/admin/tomajorlist.action")
	public ModelAndView majorlist(String deptId,@RequestParam(value="pageNum",required=false,defaultValue="1") int pageNum) {
		List<BaseMajor> list1 = baseMajorService.findMajorBydeptId1(deptId);
		PageInfo<BaseMajor> pageInfo = new PageInfo<>(list1,10);
		ModelAndView mv = new ModelAndView();
		mv.addObject("pageInfo", pageInfo);
		mv.addObject("deptId", deptId);
		mv.setViewName("views/user/admin/majorlist");
		return mv;
	}
	
	/**
	 * 通过majorId获取专业详情
	 */
	@RequestMapping("/admin/getMajorById.action")
	@ResponseBody
	public BaseMajor getMajorById(String majorId) {
		BaseMajor baseMajor = baseMajorService.findMajorById(majorId);
	    return baseMajor;
	}

	/**
	 * 新建专业
	 */
	@RequestMapping(value = "/admin/createMajor.action")
	@ResponseBody
	public String createMajor(BaseMajor baseMajor) {
		baseMajor.setMajorState(1);
		int rows = 0;
		try {
			rows = baseMajorService.createMajor(baseMajor);
		} catch(Exception e) {
			
		}		
		if(rows > 0){
	        return "OK";
	    }else{
	        return "FAIL";
	    }
	}

	/**
	* 修改专业信息
	*/
	@RequestMapping("/admin/updateMajor.action")
	@ResponseBody
	public String updateMajor(BaseMajor baseMajor) {
		int rows = 0;
		String oldName = baseMajorService.findMajorById(baseMajor.getMajorId()).getMajorName();
		rows = baseMajorService.editMajor(baseMajor);
		    if(rows > 0){
		    	teacherService.editInfo2(baseMajor);
		    	studentService.editInfo2(baseMajor);
		    	titleService.updateTitleMajor(baseMajor.getMajorName(),oldName);
		        return "OK";
		    }else{
		        return "FAIL";
		    }
	}
	
	/**
	 * 删除/恢复专业
	 */
	@RequestMapping("/admin/deleteMajor.action")
	@ResponseBody
	public String deleteMajor(String majorId,int s) {
		int rows = 0;
		try {
			rows = baseMajorService.editMajor1(majorId,s);
		} catch(Exception e) {
			
		}
		
		if(rows > 0){
	        return "OK";
	    }else{
	        return "FAIL";
	    }
	}
	
	/**
	 * 向管理员修改密码界面跳转
	 */
	@RequestMapping("/admin/toeditPwd.action")
	public String toeditPwd(HttpSession session) {
		Admin admin = (Admin)session.getAttribute("USER_INFO");
		admin = adminService.getAdmin(admin.getAdminId());
		session.setAttribute("USER_INFO", admin);
		return "views/user/admin/editPwd";
	}

	/**
	 * 管理员密码修改
	 */
	@RequestMapping(value = "/admin/editPwd.action")
	@ResponseBody
	public String editPwd(Admin admin) {
		int rows =0;
		try{
			rows = adminService.editInfo(admin);
			}catch(Exception e){
				
			}
		if(rows > 0){
	        return "OK";
	    }else{
	        return "FAIL";
	    }
	}
	
	/**
	 * 向文件列表跳转
	 */
	@RequestMapping(value = "/admin/tofilelist.action")
	public ModelAndView filelist(@ModelAttribute("myfile") Myfile myfile,
                                 @RequestParam(value="pageNum",required=false,defaultValue="1") int pageNum) {
		PageHelper.startPage(pageNum, 10);
		List<Myfile> list = myFileService.filelist(myfile);
		PageInfo<Myfile> pageInfo = new PageInfo<>(list,10);
		ModelAndView mv = new ModelAndView();
		mv.addObject("pageInfo", pageInfo);
		mv.setViewName("views/user/admin/filelist");
		return mv;
	}
	
	/**
	 * 向成绩比重页面跳转
	 */
	@RequestMapping(value = "/admin/scoreproportion.action")
	public ModelAndView scoreproportion() {
		ScoreProportion scoreProportion = scoreProportionService.getScoreProportion("1");
		ModelAndView mv = new ModelAndView();
		int tScoreProportion = (int) Math.round(scoreProportion.gettScoreProportion() * 100);
		int leaderScoreProportion = (int) Math.round(scoreProportion.getLeaderScoreProportion() * 100);
		int reviewScoreProportion = (int) Math.round(scoreProportion.getReviewScoreProportion() * 100);
		mv.addObject("tScoreProportion", tScoreProportion);
		mv.addObject("leaderScoreProportion", leaderScoreProportion);
		mv.addObject("reviewScoreProportion", reviewScoreProportion);
		mv.setViewName("views/user/admin/scoreproportion");
		return mv;
	}
	
	/**
	 * 保存成绩比重
	 */
	@RequestMapping(value = "/admin/saveScoreProportion.action")
	@ResponseBody
	public String saveScoreProportion(String tScoreProportion,String leaderScoreProportion,String reviewScoreProportion) {
		ScoreProportion scoreProportion = new ScoreProportion();
		scoreProportion.setProportionId("1");
		scoreProportion.settScoreProportion(Integer.parseInt(tScoreProportion)*0.01);
		scoreProportion.setLeaderScoreProportion(Integer.parseInt(leaderScoreProportion)*0.01);
		scoreProportion.setReviewScoreProportion(Integer.parseInt(reviewScoreProportion)*0.01);
		int rows =0;
		try{
			rows = scoreProportionService.update(scoreProportion);
			}catch(Exception e){
				
			}
		if(rows > 0){
	        return "OK";
	    }else{
	        return "FAIL";
	    }
	}
}

用户管理控制层:

@Controller
public class UserController {

	@Autowired
	private StudentService studentService;
	@Autowired
	private TeacherService teacherService;
	@Autowired
	private AdminService adminService;
	/**
	 * 用户登录
	 */
	@RequestMapping(value = "/login.action", method = RequestMethod.POST)
	public String login(String usercode, String password, String role, Model model, HttpSession session) {
		if(role.equals("学生")) {

			Student student = studentService.findStudent(usercode, password);
			if(student!=null) {
				User user = new User();
				user.setRole(role);
				session.setAttribute("USER", user);
				session.setAttribute("USER_INFO", student);
				return "redirect:student/toindex.action";
			}
		}
		else if(role.equals("教师")) {
			
			Teacher teacher = teacherService.findTeacher(usercode, password);
			if(teacher!=null) {
				User user = new User();
				user.setRole(role);
				session.setAttribute("USER", user);
				session.setAttribute("USER_INFO", teacher);
				return "redirect:teacher/roleset.action";
			}
		}
		else if(role.equals("管理员")) {
			Admin admin = adminService.findAdmin(usercode, password);
			if(admin!=null) {
				User user = new User();
				user.setRole(role);
				session.setAttribute("USER", user);
				session.setAttribute("USER_INFO", admin);
				return "redirect:admin/toindex.action";
			}
		}
		
		model.addAttribute("msg", "账号或密码错误,请重新输入!");
		return "login";
	}
	
	/**
	 * 退出登录
	 */
	@RequestMapping(value = "/logout.action")
	public String logout(HttpSession session) {
	    // 清除Session
	    session.invalidate();
	    // 重定向到登录页面的跳转方法
	    return "redirect:tologin.action";
	}
	
	/**
	 * 向用户登陆页面跳转
	 */
	@RequestMapping(value = "/tologin.action", method = RequestMethod.GET)
	public String toLogin() {
	    return "login";
	}
	

}

源码获取:博客首页 "资源" 里下载! 

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

OldWinePot

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值