赞
踩
源码获取:俺的博客首页 "资源" 里下载!
本项目为后台管理系统,包括管理员与学生两种角色;
学生包含以下功能:
学生提交报修,添加维修,催单,水电缴费,登录页面等功能。
管理员包含以下功能:
查看所有报修单,催单,维修安排,学生管理,添加学生,维修人员管理等功能。
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.数据库:MySql 5.7版本;
6.是否Maven项目:是;
1. 后端:SpringBoot
2. 前端:JSP+CSS+JavaScript+jquery+bootstrap
1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中application.properties配置文件中的数据库配置改为自己的配置;
4. 运行项目,输入localhost:8080/ 登录
- /**
- * 系统管理员端的控制器
- *
- */
- @Controller
- @RequestMapping(value = "/admin")
- public class AdminController {
- private Logger logger = LoggerFactory.getLogger(this.getClass());
-
-
- @Resource
- private RepairService repairService;
-
- @Resource
- private StudentService studentService;
-
- @Resource
- private AdminService adminService;
-
- @Resource
- private UrgentRepairService urgentRepairService;
-
- @Resource
- private MaintenanceService maintenanceService;
-
- @Resource
- private TechnicianService technicianService;
-
- @Resource
- private DoorDao doorDao;
-
- @RequestMapping(value = "/login", method = RequestMethod.GET)
- public String login(Model model) {
- return "redirect:../student/login";
- }
-
- @RequestMapping(value = "/login", method = RequestMethod.POST)
- @ResponseBody
- public LoginResult login(int id, String password, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) {
- logger.info("================admin login===================");
- logger.info("admin id: "+id);
- logger.info("admin password: "+password);
- logger.info("================admin login===================");
-
- Admin admin = adminService.getAdminById(id);
-
- LoginResult loginResult = null;
-
- if(admin==null){
- logger.info("admin null");
- loginResult = new LoginResult(false);
- }else{
- String psw = admin.getPassword();
- logger.info("admin password:"+psw);
- //密码正确
- if(psw.equals(password)){
- loginResult = new LoginResult(true);
-
- httpServletRequest.getSession().setAttribute("ADMIN_ID", id);
- httpServletResponse.addCookie(new Cookie("ADMIN_ID", String.valueOf(id)));
- }else{
- loginResult = new LoginResult(false);
- }
- }
-
- if(!loginResult.isSuccess()){
- loginResult.setReason("invalid user");
- }
-
- logger.info("LoginResult:"+loginResult);
- return loginResult;
- }
-
- @RequestMapping(value = "/logout", method = RequestMethod.GET)
- public String logout(HttpSession httpSession) {
- logger.info("退出要移除的sessionId是:"+httpSession.getId());
- httpSession.removeAttribute("ADMIN_ID");
- return "redirect:../student/login";
- }
-
- @RequestMapping(value = "/dashboard", method = RequestMethod.GET)
- public String dashboard(Model model, HttpServletRequest httpServletRequest) {
- List<Repair> repairs = repairService.getAllUnFinish();
-
- Student student;
- List<RepairInfoVo> repairInfoVos = new ArrayList<>();
- for(Repair repair:repairs){
- student = studentService.getStudentById(repair.getStudentId());
- RepairInfoVo repairInfoVo = new RepairInfoVo(student, repair);
- repairInfoVo.setStatesInfo(RepairEnumCN.stateOf(repair.getStatus()).getStateInfo());
- repairInfoVos.add(repairInfoVo);
- }
-
- model.addAttribute("repairInfoVos", repairInfoVos);
-
- return "/admin/dashboard";
- }
-
- @RequestMapping(value = "/repair/{repairId}/detail", method = RequestMethod.GET)
- public String detailRepair(@PathVariable("repairId") int repairId, Model model) {
- Repair repair;
-
- repair = repairService.getRepairById(repairId);
- repair.setPicMD5("/" + repair.getPicMD5());
-
- RepairInfoVo repairInfoVo = new RepairInfoVo(repair);
- repairInfoVo.setStatesInfo(RepairEnumCN.stateOf(repair.getStatus()).getStateInfo());
-
- model.addAttribute("repairInfoVo", repairInfoVo);
-
- return "admin/detail";
- }
-
- @RequestMapping(value = "/repair/{repairId}/cancel", method = RequestMethod.GET)
- public String cancelRepair(@PathVariable("repairId") int repairId) {
- repairService.cancelRepair(repairId);
- return "redirect:/admin/dashboard";
- }
-
- @RequestMapping(value = "/repair/{repairId}/confirm", method = RequestMethod.GET)
- public String confirmRepair(@PathVariable("repairId") int repairId) {
- repairService.confirmRepair(repairId);
-
- return "redirect:/admin/dashboard";
- }
-
- @RequestMapping(value = "/repair/{repairId}/arrange", method = RequestMethod.GET)
- public String arrangeRepair(@PathVariable("repairId") int repairId, Model model) {
- Repair repair = repairService.getRepairById(repairId);
-
- if (repair.getStatus() == RepairEnum.REPAIR_ARRANGED.getState())
- {
- return "redirect:/admin/repair/" + String.valueOf(repairId) + "/detail";
- }
-
- List<Technician> techniciens = technicianService.getAllTechnician();
-
- model.addAttribute("repair", repair);
- model.addAttribute("techniciens", techniciens);
-
- return "/admin/addArrange";
- }
-
- @RequestMapping(value = "/maintenance/{repairId}/add", method = RequestMethod.POST)
- public String submitArrange(@PathVariable("repairId") int repairId, @RequestParam("technicianId") String technicianId) {
-
- // 解决表单提交时乱码的问题(JSP在表单提交时默认采用ISO-8859-1编码)
- try {
- technicianId = new String(technicianId.getBytes("ISO-8859-1"), "utf8");
- } catch (UnsupportedEncodingException e) {
- e.printStackTrace();
- }
-
- repairService.arrangeRepair(repairId, Integer.valueOf(technicianId));
-
- return "redirect:/admin/dashboard";
- }
-
- @RequestMapping(value = "/finish", method = RequestMethod.GET)
- public String finish(Model model) {
- List<Repair> repairs = repairService.getAllFinish();
-
- Student student;
- List<RepairInfoVo> repairInfoVos = new ArrayList<>();
- for(Repair repair: repairs){
- student = studentService.getStudentById(repair.getStudentId());
- RepairInfoVo repairInfoVo = new RepairInfoVo(student, repair);
- repairInfoVo.setStatesInfo(RepairEnumCN.stateOf(repair.getStatus()).getStateInfo());
- repairInfoVos.add(repairInfoVo);
- }
- model.addAttribute("repairInfoVos", repairInfoVos);
-
- return "/admin/finish";
- }
-
- @RequestMapping(value = "/urgent", method = RequestMethod.GET)
- public String urgent(Model model) {
-
- List<UrgentRepair> urgentRepairs = urgentRepairService.getAllUrgentRepair();
-
- List<UrgentRepairResult> urgentRepairResults = new ArrayList<UrgentRepairResult>();
-
- Student student;
- Repair repair;
-
- for (UrgentRepair urgentRepair : urgentRepairs) {
- repair = repairService.getRepairById(urgentRepair.getRepairId());
- student = studentService.getStudentById(urgentRepair.getStudentId());
-
- urgentRepairResults.add(
- new UrgentRepairResult
- (urgentRepair.getId(),
- urgentRepair.getStatus(), UrgentRepairEnum.stateOf(urgentRepair.getStatus()).getStateInfo(),
- urgentRepair.getRepairId(), repair.getDetail(),
- urgentRepair.getStudentId(), student.getName(),
- new Timestamp(System.currentTimeMillis())));
- }
-
- model.addAttribute("list", urgentRepairResults);
-
- return "/admin/urgent";
- }
-
- @RequestMapping(value = "/urgent/{repairId}/delete", method = RequestMethod.GET)
- public String deleteUrgent(@PathVariable("repairId") int repairId) {
- urgentRepairService.checkUrgentRepair(repairId);
- return "redirect:/admin/urgent";
- }
-
- @RequestMapping(value = "/arrange", method = RequestMethod.GET)
- public String arrange(Model model) {
- List<Maintenance> maintenances = maintenanceService.getAll();
-
- List<MaintenanceResult> maintenanceResults = new ArrayList<MaintenanceResult>();
-
- Repair repair;
- Technician technician;
-
- for (Maintenance maintenance : maintenances) {
-
- repair = repairService.getRepairById(maintenance.getRepairId());
-
- // 以下状态的报修单对应的维修记录就没必要显示了
- // 1. 被学生删除
- // 2. 学生同意取消
- // 3. 已经验收
- if (repair.getStatus() == RepairEnum.DELETED_BY_STUDENT.getState()
- || repair.getStatus() == RepairEnum.CANCELED_AGREE.getState()
- || repair.getStatus() == RepairEnum.CONFIRM.getState())
- {
- continue;
- }
-
- technician = technicianService.getById(maintenance.getTechnicianId());
- maintenanceResults.add(
- new MaintenanceResult(
- maintenance.getId(),
- maintenance.getRepairId(), repair.getDetail(),
- maintenance.getTechnicianId(), technician.getName(),
- new Timestamp(System.currentTimeMillis())
- )
- );
- }
-
- model.addAttribute("list", maintenanceResults);
-
- return "/admin/arrange";
- }
-
- @RequestMapping(value = "/arrange/{maintenanceId}/cancel", method = RequestMethod.GET)
- public String cancelArrange(@PathVariable("maintenanceId") int maintenanceId) {
- Maintenance maintenance = maintenanceService.getById(maintenanceId);
-
- // 删除检修安排记录
- maintenanceService.cancelMaintenance(maintenanceId);
-
- // 同时也修改相应的维修单的状态
- repairService.unArrangeRepair(maintenance.getRepairId());
-
- return "redirect:/admin/arrange";
- }
-
- @RequestMapping(value = "/student", method = RequestMethod.GET)
- public String student(Model model) {
- List<Student> students = studentService.getAll();
-
- List<StudentResult> studentResults = new ArrayList<StudentResult>();
-
- for (Student student : students) {
- studentResults.add(new StudentResult(
- student.getId(), student.getName(), student.getPassword(),
- student.getSexual(), student.getSexual() == 0 ? "男" : "女",
- student.getEmail(), student.getPhone(), student.getDoor())
- );
- }
- model.addAttribute("students", studentResults);
-
- return "admin/student";
- }
-
- @RequestMapping(value = "/addstudent", method = RequestMethod.GET)
- public String addStudent(Model model) {
- return "/admin/addStudent";
- }
-
- @RequestMapping(value = "/addstudent", method = RequestMethod.POST)
- public String addStudent(@RequestParam("name") String name, @RequestParam("email") String email,
- @RequestParam("password") String password, @RequestParam("sexual") String sexual,
- @RequestParam("phone") String phone,@RequestParam("door") String door, Model model, HttpServletRequest httpServletRequest) {
-
- int sex = sexual.equals("男") ? 0 : 1;
-
- studentService.addStudent(System.currentTimeMillis()+"", name, password, sex, email, phone, door);
- Door door2 = doorDao.queryByName(door);
- if (door2==null) {
- Door doorObject = new Door();
- doorObject.setDate(new Date(System.currentTimeMillis()));
- doorObject.setId(System.currentTimeMillis()+"");
- doorObject.setName(door);
- doorObject.setPower("100");
- doorObject.setWater("100");
- doorDao.add(doorObject);
- }
-
- return "redirect:/admin/student";
- }
-
- @RequestMapping(value = "/technician", method = RequestMethod.GET)
- public String technician(Model model) {
-
- List<Technician> techniciens = technicianService.getAllTechnician();
-
- model.addAttribute("techniciens", techniciens);
-
- return "admin/technician";
- }
-
- /**
- * 添加维修人员 GET方法
- * @param model
- * @return
- */
- @RequestMapping(value = "/addtechnician", method = RequestMethod.GET)
- public String addTechnician(Model model) {
- return "/admin/addTechnician";
- }
-
- /**
- * 添加维修人员 POST方法
- * @param model
- * @return
- */
- @RequestMapping(value = "/addtechnician", method = RequestMethod.POST)
- public String addTechnician(@RequestParam("name") String name,@RequestParam("number") String number,@RequestParam("phone") String phone, Model model, HttpServletRequest httpServletRequest) {
-
- technicianService.addTechnician(name,number,phone);
-
- return "redirect:/admin/technician";
- }
- }

- /**
- * 用户的web层
- *
- */
- @Controller
- @CrossOrigin(origins = {"http://localhost:18084", "null"})
- @RequestMapping("/student")
- public class StudentController {
-
- private final Logger logger = LoggerFactory.getLogger(this.getClass());
-
- @Resource
- private StudentService studentService;
-
- @Resource
- private RepairService repairService;
-
- @Resource
- private UrgentRepairService urgentRepairService;
-
- @Resource
- private DoorDao doorDao;
-
- @RequestMapping(value = "/introduce", method = RequestMethod.GET)
- public String index() {
- return "student/introduce";
- }
-
- /**
- * 登录的GET方法
- *
- * @return
- */
- @RequestMapping(value = "/login", method = RequestMethod.GET)
- public String login() {
- return "student/login";
- }
-
- /**
- * 登录的POST方法
- *
- * @param id
- * @param password
- * @param httpSession
- * @return
- */
- @RequestMapping(value = "/login", method = RequestMethod.POST)
- public
- @ResponseBody
- LoginResult login(String id, String password, HttpSession httpSession, HttpServletResponse httpServletResponse) {
-
-
- LoginResult loginResult=null;
- String stuName = null;
-
- Student student = studentService.getStudentById(id);
-
- Spider spider = new Spider();
- try {
- //调用service将数据存入数据库中
- if(student==null){
- // stuName = spider.getStudentName(id, password);
- // student = new Student(id, stuName, password);
- // System.out.println(stuName);
- // studentService.addStudent(id, stuName, password, 0, "", "");
-
- loginResult = new LoginResult(true);
- loginResult.setReason("invalid user");
- }else{
- stuName = student.getName();
-
- // 密码正确
- if (student.getPassword().equals(password)) {
- loginResult = new LoginResult(true);
- } else {
- loginResult = new LoginResult(false);
- loginResult.setReason("invalid user");
- }
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
-
- if(loginResult.isSuccess()){
- // 登录成功后,为该学生生成session
- httpSession.setAttribute(StudentConst.STUDENT_ID, id);
-
- httpServletResponse.addCookie(new Cookie(StudentConst.STUDENT_ID, id));
- System.out.println("StudentName:"+StudentConst.STUDENT_NAME);
- httpServletResponse.addCookie(new Cookie(StudentConst.STUDENT_NAME, stuName));
- }
-
- logger.info("***************************************************************************");
- logger.info("登录: " + String.valueOf(loginResult.isSuccess()) + " id : " + id + " password : " + password);
- logger.info("***************************************************************************");
-
- return loginResult;
- }
-
- /**
- * 退出的控制
- *
- * @param httpSession
- * @return
- */
- @RequestMapping(value = "/logout", method = RequestMethod.GET)
- public String logout(HttpSession httpSession) {
- httpSession.removeAttribute(StudentConst.STUDENT_EMAIL);
- return "redirect:/student/login";
- }
-
- /**
- * 提交报修单的POST方法
- *
- * @param model
- * @return
- */
- @RequestMapping(value = "/commit", method = RequestMethod.GET)
- public String commit(Model model) {
- return "/student/commit";
- }
-
- @RequestMapping(value = "/commit", method = RequestMethod.POST)
- public String commit(@RequestParam("detail") String detail, @RequestParam("place") String place,
- @RequestParam("file") MultipartFile file, HttpServletRequest httpServletRequest) {
-
- String id = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
-
- Student student = studentService.getStudentById(id);
-
- String picMD5 = "";
-
- logger.info(detail);
- logger.info(place);
- logger.info(picMD5);
-
- try {
- logger.info(file.getInputStream().toString());
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- if (file != null) {
- try {
- picMD5 = MD5.getMD5(id + String.valueOf(System.currentTimeMillis()) + file.getOriginalFilename());
- } catch (Exception e) {
- e.printStackTrace();
- }
-
- // 往数据库中插入维修单记录
- repairService.submitRepair(detail, place, picMD5, student.getId());
-
- // 保存现场照片
- String path = httpServletRequest.getSession().getServletContext().getRealPath("/");
- System.out.println("图片路径:" + path);
- String fileName = picMD5;
- File targetFile = new File(path, fileName);
- try {
- InputStream inputStream = file.getInputStream();
- OutputStream outputStream = new FileOutputStream(targetFile);
- byte[] buffer = new byte[2048];
- int len = 0;
- while ((len = inputStream.read(buffer)) != -1) {
- outputStream.write(buffer, 0, len);
- }
- inputStream.close();
- outputStream.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- } else {
- // 往数据库中插入维修单记录
- repairService.submitRepair(detail, place, picMD5, student.getId());
- }
-
- return "redirect:/student/dashboard";
- }
-
- /**
- * 获取显示的主页面
- *
- * @param model
- * @return
- */
- @RequestMapping(value = "/dashboard", method = RequestMethod.GET)
- public String board(Model model, HttpServletRequest httpServletRequest) {
- String id = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
-
- List<Repair> repairs = repairService.getRepqirByStudentId(id);
-
- List<RepairInfoVo> repairInfoVos = new ArrayList<>();
- for(Repair repair: repairs){
- repair.setPicMD5("/"+repair.getPicMD5());
- RepairInfoVo repairInfoVo = new RepairInfoVo(repair);
- repairInfoVo.setStatesInfo(RepairEnumCN.stateOf(repair.getStatus()).getStateInfo());
- repairInfoVos.add(repairInfoVo);
- }
- model.addAttribute("repairInfoVos", repairInfoVos);
-
- return "/student/dashboard";
- }
-
- /**
- * 报修单详情
- *
- * @param repairId
- * @param model
- * @return
- */
- @RequestMapping(value = "/repair/{repairId}/detail", method = RequestMethod.GET)
- public String detail(@PathVariable("repairId") int repairId, Model model) {
- Repair repair = repairService.getRepairById(repairId);
- repair.setPicMD5("/" + repair.getPicMD5());
-
- RepairInfoVo repairInfoVo = new RepairInfoVo(repair);
- repairInfoVo.setStatesInfo(RepairEnumCN.stateOf(repair.getStatus()).getStateInfo());
- model.addAttribute("repairInfoVo", repairInfoVo);
-
- return "student/detail";
- }
-
- /**
- * 删除报修单
- *
- * @param repairId
- * @return
- */
- @RequestMapping(value = "/repair/{repairId}/delete", method = RequestMethod.GET)
- public String delete(@PathVariable("repairId") int repairId) {
- repairService.deleteRepair(repairId);
-
- return "redirect:/student/dashboard";
- }
-
- /**
- * 修改报修单
- *
- * @param repairId
- * @param model
- * @return
- */
- @RequestMapping(value = "/repair/{repairId}/update", method = RequestMethod.GET)
- public String update(@PathVariable("repairId") int repairId, Model model) {
- Repair repair = repairService.getRepairById(repairId);
- model.addAttribute("repair", repair);
- return "/student/update";
- }
-
- /**
- * 修改报修单
- *
- * @return
- */
- @RequestMapping(value = "/repair/{repairId}/update", method = RequestMethod.POST)
- public String update(@PathVariable("repairId") int repairId, @RequestParam("detail") String detail, @RequestParam("place") String place,
- @RequestParam("file") MultipartFile file, HttpServletRequest httpServletRequest) {
-
- String sno = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
-
- int id = repairId;
-
- String picMD5 = "";
-
- logger.info(detail);
- logger.info(place);
- logger.info(picMD5);
-
- if (file != null) {
- try {
- picMD5 = MD5.getMD5(sno + String.valueOf(System.currentTimeMillis()) + file.getOriginalFilename());
- } catch (Exception e) {
- e.printStackTrace();
- System.out.println("*************************************************");
- }
-
- // 保存现场照片
- String path = httpServletRequest.getSession().getServletContext().getRealPath("/");
- System.out.println("图片路径:" + path);
- String fileName = picMD5;
- File targetFile = new File(path, fileName);
- try {
- OutputStream outputStream = new FileOutputStream(targetFile);
- InputStream inputStream = file.getInputStream();
- byte[] buffer = new byte[2048];
- int len = 0;
- while ((len = inputStream.read(buffer)) != -1) {
- outputStream.write(buffer, 0, len);
- }
- inputStream.close();
- outputStream.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
- // 调用修改报修单接口
- repairService.changeRepair(id, detail, place, picMD5);
-
- return "redirect:/student/repair/" + String.valueOf(id) + "/detail";
- }
-
- /**
- * 验收报修单
- *
- * @param repairId
- * @return
- */
- @RequestMapping(value = "/repair/{repairId}/acceptance", method = RequestMethod.GET)
- public String acceptance(@PathVariable("repairId") int repairId) {
- repairService.Acceptance(repairId);
- return "redirect:/student/dashboard";
- }
-
- /**
- * 将报修单标记为催单
- *
- * @param repairId
- * @param httpServletRequest
- * @return
- */
- @RequestMapping(value = "/repair/{repairId}/urgent", method = RequestMethod.GET)
- public String urgent(@PathVariable("repairId") int repairId, HttpServletRequest httpServletRequest) {
- String id = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
-
- Student student = studentService.getStudentById(id);
-
- urgentRepairService.submitUrgentRepair(repairId, student.getId());
-
- return "redirect:/student/urgent";
- }
-
- /**
- * 查看所有的催单
- *
- * @param httpServletRequest
- * @param model
- * @return
- */
- @RequestMapping(value = "/urgent", method = RequestMethod.GET)
- public String showUrgent(HttpServletRequest httpServletRequest, Model model) {
- String id = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
-
- Student student = studentService.getStudentById(id);
-
- List<UrgentRepair> urgentRepairs = urgentRepairService.getAllUrgentRepairByStudentId(student.getId());
-
- List<StudentUrgentResult> studentUrgentResults = new ArrayList<StudentUrgentResult>();
-
- String detail = "";
- for (UrgentRepair urgentRepair : urgentRepairs) {
- detail = repairService.getRepairById(urgentRepair.getRepairId()).getDetail();
- studentUrgentResults.add(new StudentUrgentResult(
- urgentRepair.getId(), urgentRepair.getStatus(), UrgentRepairEnum.stateOf(urgentRepair.getStatus()).getStateInfo(),
- urgentRepair.getRepairId(), detail, urgentRepair.getStudentId(), urgentRepair.getCreateTime()));
- }
- model.addAttribute("studentUrgentResults", studentUrgentResults);
-
- return "student/urgent";
- }
-
- /**
- * 删除某条催单
- *
- * @param repairId
- * @param httpServletRequest
- * @return
- */
- @RequestMapping(value = "/urgent/{repairId}/delete", method = RequestMethod.GET)
- public String deleteUrgent(@PathVariable("repairId") int repairId, HttpServletRequest httpServletRequest) {
- String id = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
-
- Student student = studentService.getStudentById(id);
-
- urgentRepairService.deleteUrgentRepair(repairId);
-
- return "redirect:/student/urgent";
- }
-
- /**
- * 重新提交某条催单
- *
- * @param repairId
- * @return
- */
- @RequestMapping(value = "/urgent/{repairId}/resubmit", method = RequestMethod.GET)
- public String reSubmitUrgent(@PathVariable("repairId") int repairId) {
-
- urgentRepairService.reSubmit(repairId);
-
- return "redirect:/student/urgent";
- }
-
- /**
- * 获取所有待取消的报修单
- *
- * @param httpServletRequest
- * @param model
- * @return
- */
- @RequestMapping(value = "/tobecanceled", method = RequestMethod.GET)
- public String toBeCanceled(HttpServletRequest httpServletRequest, Model model) {
- String id = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
-
- List<Repair> repairs = repairService.getAllToBeCanceledById(id);
-
- List<RepairInfoVo> repairInfoVos = new ArrayList<>();
- for(Repair repair:repairs){
- repair.setPicMD5("/"+repair.getPicMD5());
- RepairInfoVo repairInfoVo = new RepairInfoVo(repair);
- repairInfoVo.setStatesInfo(RepairEnumCN.stateOf(repair.getStatus()).getStateInfo());
- repairInfoVos.add(repairInfoVo);
- }
- model.addAttribute("repairInfoVos", repairInfoVos);
-
- return "student/tobecanceled";
-
- }
-
- /**
- * 同意取消报修单
- *
- * @param repairId
- * @param httpServletRequest
- * @return
- */
- @RequestMapping(value = "/tobecanceled/{repairId}/agree", method = RequestMethod.GET)
- public String agreeCanceled(@PathVariable("repairId") int repairId, HttpServletRequest httpServletRequest) {
- String id = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
-
- Student student = studentService.getStudentByEmail(id);
-
- repairService.agreeToBeCanceled(repairId);
-
- return "redirect:/student/tobecanceled";
- }
-
- /**
- * 拒绝取消报修单
- *
- * @param repairId
- * @param httpServletRequest
- * @return
- */
- @RequestMapping(value = "/tobecanceled/{repairId}/reject", method = RequestMethod.GET)
- public String rejectCanceled(@PathVariable("repairId") int repairId, HttpServletRequest httpServletRequest) {
- String id = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
-
- repairService.rejectToBeCanceled(repairId);
-
- return "redirect:/student/tobecanceled";
- }
-
- /**
- * 获取个人信息的控制器
- *
- * @param httpServletRequest
- * @param model
- * @return
- */
- @RequestMapping(value = "/info", method = RequestMethod.GET)
- public String infomation(HttpServletRequest httpServletRequest, Model model) {
- String id = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
-
- Student student = studentService.getStudentById(id);
-
- StudentResult studentResult = new StudentResult(
- student.getId(), student.getName(), student.getPassword(),
- student.getSexual(), student.getSexual() == 0 ? "男" : "女",
- student.getEmail(), student.getPhone(), student.getDoor());
- model.addAttribute("student", studentResult);
-
- return "student/info";
- }
-
- /**
- * 修改密码的控制器
- *
- * @param password
- * @param httpSession
- * @param httpServletResponse
- * @param httpServletRequest
- * @return
- */
- @RequestMapping(value = "/changepassword", method = RequestMethod.POST)
- public
- @ResponseBody
- LoginResult changePassword(String password, HttpSession httpSession, HttpServletResponse httpServletResponse, HttpServletRequest httpServletRequest) {
- String id = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
-
- Student student = studentService.getStudentByEmail(id);
-
- studentService.changePassword(student.getId(), password);
-
- return new LoginResult(true);
- }
-
-
- /**
- * 修改其它资料
- *
- * @param name
- * @param phone
- * @param sexual
- * @param httpSession
- * @param httpServletResponse
- * @param httpServletRequest
- * @return
- */
- @RequestMapping(value = "/feelist", method = RequestMethod.GET)
- public String feelist( Model model, HttpSession httpSession, HttpServletResponse httpServletResponse, HttpServletRequest httpServletRequest) {
- String id = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
- Student student = studentService.getStudentById(id);
- String doorName = student.getDoor();
- Door door = doorDao.queryByName(doorName);
- model.addAttribute("fee", door);
- return "student/feelist";
- }
-
- @RequestMapping(value = "/feeupload", method = RequestMethod.GET)
- public String feeupload(Model model,HttpSession httpSession, HttpServletResponse httpServletResponse, HttpServletRequest httpServletRequest) {
- String id = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
- Student student = studentService.getStudentById(id);
- String doorName = student.getDoor();
- Door door = doorDao.queryByName(doorName);
- model.addAttribute("feeup", door);
- return "student/feeupload";
- }
-
- /**
- * 缴费
- * @param model
- * @param httpSession
- * @param httpServletResponse
- * @param httpServletRequest
- * @return
- */
- @RequestMapping(value = "/uploadfee", method = RequestMethod.POST)
- public String uploadfee(String name, String water, String power,Model model,HttpSession httpSession, HttpServletResponse httpServletResponse, HttpServletRequest httpServletRequest) {
- String id = null;
- try {
- id = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
- } catch (NullPointerException e1) {
- return "student/login";
- }
- Student student = studentService.getStudentById(id);
- String doorName = student.getDoor();
- Door door = doorDao.queryByName(doorName);
- double waterInput = 0;
- double PowerInput = 0;
- double waterDB = 0;
- double powerDB = 0;
- try {
- waterInput = Double.parseDouble(water);
- } catch (NumberFormatException e) {
- waterInput = 0;
- }
- try {
- PowerInput = Double.parseDouble(power);
- } catch (NumberFormatException e) {
- PowerInput = 0;
- }
- try {
- waterDB = Double.parseDouble(door.getWater());
- } catch (NumberFormatException e) {
- waterDB = 0;
- }
- try {
- powerDB = Double.parseDouble(door.getPower());
- } catch (NumberFormatException e) {
- powerDB = 0;
- }
-
- door.setWater( waterDB+waterInput+"");
- door.setPower( powerDB+PowerInput+"");
- door.setDate(new Date(System.currentTimeMillis()));
- doorDao.update(door);
- model.addAttribute("fee", door);
- return "student/feelist";
- }
-
-
- /**
- * 修改其它资料
- *
- * @param name
- * @param phone
- * @param sexual
- * @param httpSession
- * @param httpServletResponse
- * @param httpServletRequest
- * @return
- */
- @RequestMapping(value = "/changeinfo", method = RequestMethod.POST)
- public
- @ResponseBody
- LoginResult changeInfo(String name, String phone, String sexual, HttpSession httpSession, HttpServletResponse httpServletResponse, HttpServletRequest httpServletRequest) {
- String id = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_ID).toString();
- System.out.println("name:"+name+";phone:"+phone+";sexual:"+sexual);
- Student student = studentService.getStudentByEmail(id);
-
- if(sexual.equals("男"))
- {
- sexual="0";
- }else{
- sexual="1";
- }
- studentService.changeOtherInfo(student.getId(), Integer.valueOf(sexual), name, phone);
-
- httpServletResponse.addCookie(new Cookie(StudentConst.STUDENT_NAME, student.getName()));
-
- return new LoginResult(true);
- }
- }

- /**
- * 学生登录验证的拦截器
- *
- */
- public class StudentSessionInterceptor implements HandlerInterceptor {
- private Logger logger = LoggerFactory.getLogger(this.getClass());
-
- @Override
- public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception {
- Object email = httpServletRequest.getSession().getAttribute(StudentConst.STUDENT_EMAIL);
- if (email == null) {
- logger.info("用户尚未登录,将其重定向至登录页面");
- httpServletResponse.sendRedirect("/student/login");
- return false;
- }
- return true;
- }
-
- @Override
- public void postHandle(HttpServletRequest hsr, HttpServletResponse hsr1, Object o, ModelAndView mav) throws Exception {
- }
-
- @Override
- public void afterCompletion(HttpServletRequest hsr, HttpServletResponse hsr1, Object o, Exception excptn) throws Exception {
- }
-
- }

源码获取:俺的博客首页 "资源" 里下载!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。