基于javaweb+mysql的ssm校园帮跑腿代办管理平台(java+ssm+jsp+layui+echarts+mysql)

基于javaweb+mysql的ssm校园帮跑腿代办管理平台(java+ssm+jsp+layui+echarts+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

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

适用

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

功能说明

基于javaweb+mysql的SSM校园帮跑腿代办管理平台(java+ssm+jsp+layui+echarts+mysql)

项目介绍

本项目包含管理员与学生两种角色;

管理员角色包含以下功能:

管理员登录,院校管理,任务管理,用户维护,用户余额充值,添加管理员等功能。

学生用户角色包含以下功能:

学生注册,学生角色登录,发布新任务,个人信息查看,资料修改,密码修改等功能。

环境需要

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. 后端:Spring+SpringMVC+Mybatis 2. 前端:JSP+CSS+JavaScript+LayUI+jquery+echarts

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven; 若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.xml配置文件中的数据库配置改为自己的配置; 4. 运行项目,浏览器中输入localhost:8080/campusHelp 登录
@SessionAttributes({ "nowuser" })
@RequestMapping(value = "user/")
public class UserController {

	@Resource(name = "userService")
	public UserService userService;

	@Resource(name = "adminService")
	public AdminService adminService;

	// 登录
	@RequestMapping("login.do")
	public String login(String studentid, String password, Model model) {

		User user = null;

		user = userService.login(studentid);

		if (user == null) {
			model.addAttribute("msg", "登录失败--请确定账号和密码正确");
			return "login";
		}

		if (password.equals(user.getPassword())) {
			model.addAttribute("nowuser", user);
			model.addAttribute("loginflag", "loginflag");//
			return "index";
		} else {
			model.addAttribute("msg", "登录失败--请确定账号和密码正确");
			return "login";
		}

	}

	// 注册
	@RequestMapping("register.do")
	public String register(User user, Model model) {

		// 检查学号账号重复
		int countnum = userService.getAccountCount(user.getStudentid());
		if (countnum > 0) {
			model.addAttribute("msg", "该学号已经注册");
			model.addAttribute("user", user);
			return "register";
		}
		user.setStuid(0);
		user.setRegistertime(new Date());
		user.setMoney(0.00);
	    	model.addAttribute("msg", "对方已获取全部奖励");
		}
		List<Task> list = taskService.getUserTask(uid);
		model.addAttribute("list", list);
		return "userPtask";
	}

	// to1.发布者点击关闭删除取消
	@RequestMapping("taskclose.do")
	public String taskclose(String tidstr, HttpServletRequest request, Model model) {
		int tid = 0;
		try {
			tid = Integer.parseInt(tidstr);
		} catch (Exception e) {
			model.addAttribute("msg", "出现错误");
			return getusertask(request, model,null);
		}
		if (tid == 0) {
			model.addAttribute("msg", "出现错误");
			return getusertask(request, model,null);
		}
		User user = null;
		try {
			user = (User) request.getSession(false).getAttribute("nowuser");
		} catch (Exception e) {
			model.addAttribute("msg", "请检查登录状况");
			return "login";
		}
		int uid = 0;
		try {
			uid = user.getStuid();
			if (user == null || uid == 0) {
				model.addAttribute("msg", "请检查登录状况");
				return getusertask(request, model,null);
			}
		} catch (Exception e) {
			model.addAttribute("msg", "请检查登录状况");
			return getusertask(request, model,null);
		}
		Task theTask = taskService.getTask(tid);
		if (!(uid + "").equals(theTask.getPublishUserId())) {
			model.addAttribute("msg", "出现错误");
			return getusertask(request, model,null);
		}
		theTask.setState(1);
		int r = taskService.updateTask(theTask);
		if (r > 0) {
			user.setMoney(user.getMoney()+theTask.getReward());
			int ruser = userService.updateUserInfo(user);
			if (ruser> 0) {
				model.addAttribute("msg", "成功");
			}else {
			user = (User) request.getSession(false).getAttribute("nowuser");
		} catch (Exception e) {
			model.addAttribute("msg", "请检查登录状况");
			return findtask("","", "-1", 1, model,"","");
		}
		int uid = 0;
		try {
			uid = user.getStuid();
			if (user == null || uid == 0) {
				model.addAttribute("msg", "请检查登录状况");
				return findtask("","", "-1", 1, model,"","");
			}
		} catch (Exception e) {
			model.addAttribute("msg", "请检查登录状况");
			return findtask("","", "-1", 1, model,"","");
		}
		List<Task> list = taskService.getUserTask(uid);
		int pagesize = getPageSize(list, size);
		list = getList(list, page, size);
		if(page<=0) {
			page = 1;
		}
		if(page>=pagesize) {
			page = pagesize;
		}
		model.addAttribute("pagesize", pagesize);
		model.addAttribute("nowpage", page);
		model.addAttribute("list", list);
		return "userPtask";
	}
	
	
	static List<Task> getList(List<Task> list,int page,int size){
		int end = 0;
		int pages = list.size()/size + 1;
		if(page>pages) {
			page = pages - 1;
		}
		if(page < 1) {
			page = 1;
		}
		if(page*size>list.size()) {
			end = list.size();
		}else {
			end = page*size;
		}
		
		return list.subList((page-1)*size, end);
	}
				value[i] = list.get(i).getCount();
			}
			result.put("name", name);
			result.put("value", value);
			return result.toString();
		}

	// 获取任务详细信息
	@RequestMapping("gettaskinfo.do")
	public String gettaskinfo(String tidstr,HttpServletRequest request, Model model) {
		int tid = 0;
		try {
			tid = Integer.parseInt(tidstr);
		} catch (Exception e) {
			model.addAttribute("msg", "出现错误");
			return "taskInfo";
		}
		Task theTask = taskService.getTask(tid);
		model.addAttribute("theTask", theTask);
		return "taskInfo";
	}
	
	//搜索任务
	@RequestMapping("list.do")
	public String findtask(String words,@RequestParam(required=false,defaultValue="")String louhao, 
			 @RequestParam(required=true,defaultValue="-1") String schoolidstr,@RequestParam(required=true,defaultValue="1") Integer page , Model model,@RequestParam(required=false,defaultValue="")String bd, 
				@RequestParam(required=false,defaultValue="")String ed) {
		
		model.addAttribute("words", words);
		model.addAttribute("schoolidstr", schoolidstr);
		model.addAttribute("louhao", louhao);
		model.addAttribute("bd", bd);
		model.addAttribute("ed", ed);
		
		int schoolid = -1;
		if (!schoolidstr.equals("-1")) {
			try {
				schoolid = Integer.parseInt(schoolidstr);
			} catch (Exception e) {
				System.err.println("err");
			}
		}
		
		if (words!=null&&!"".equals(words)) {
			words="%"+words+"%";
		}
		if (louhao!=null) {
			louhao="%"+louhao+"%";
		}
		if (ed!=null&&!"".equals(ed)) {
			ed=""+ed+"";
		}
		List<Task> list = taskService.getTaskByKeys(words, schoolid);
		model.addAttribute("list", list);
		return "adminTask";
	}

	// to1.管理员点击关闭删除取消
	@RequestMapping("taskclose.do")
	public String taskclose(String tidstr, String words,
			@RequestParam(required = true, defaultValue = "-1") String schoolidstr, HttpServletRequest request,
			Model model) {
		int tid = 0;
		try {
			tid = Integer.parseInt(tidstr);
		} catch (Exception e) {
			model.addAttribute("msg", "出现错误");
			return gettasks(words, schoolidstr, model);
		}
		if (tid == 0) {
			model.addAttribute("msg", "出现错误");
			return gettasks(words, schoolidstr, model);
		}
		Admin admin = null;
		try {
			admin = (Admin) request.getSession(false).getAttribute("nowadmin");
			int uid = 0;
			uid = admin.getAid();
			if (admin == null || uid == 0) {
				model.addAttribute("msg", "请检查登录状况");
				return gettasks(words, schoolidstr, model);
			}
		} catch (Exception e) {
			model.addAttribute("msg", "请检查登录状况");
			return "login";
		}

		Task theTask = taskService.getTask(tid);

		theTask.setState(1);
		int r = taskService.updateTask(theTask);
		if (r > 0) {
			model.addAttribute("msg", "成功");
		} else {
			model.addAttribute("msg", "失败");
		}
		if (user == null) {
			model.addAttribute("msg", "登录失败--请确定账号和密码正确");
			return "login";
		}

		if (password.equals(user.getPassword())) {
			model.addAttribute("nowuser", user);
			model.addAttribute("loginflag", "loginflag");//
			return "index";
		} else {
			model.addAttribute("msg", "登录失败--请确定账号和密码正确");
			return "login";
		}

	}

	// 注册
	@RequestMapping("register.do")
	public String register(User user, Model model) {

		// 检查学号账号重复
		int countnum = userService.getAccountCount(user.getStudentid());
		if (countnum > 0) {
			model.addAttribute("msg", "该学号已经注册");
			model.addAttribute("user", user);
			return "register";
		}
		user.setStuid(0);
		user.setRegistertime(new Date());
		user.setMoney(0.00);
		user.setState(0);
		System.out.println(user.toString());
		int result = userService.setUser(user);

		if (result <= 0) {
			model.addAttribute("msg", "注册失败");
			model.addAttribute("user", user);
			return "register";
		}

		model.addAttribute("msg", "注册成功,请登录");

		return "login";
	}

		if (r > 0) {
			model.addAttribute("msg", "添加成功");
			model.addAttribute("flag", "添加成功");
			return "adminSchoolAdd";
		} else {
			model.addAttribute("msg", "添加失败");
			return "adminSchoolAdd";
		}
	}

	@org.springframework.web.bind.annotation.InitBinder
	public void InitBinder(ServletRequestDataBinder bin) {
		bin.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"), true));
	}

}

/**
 * *****任务********
 * 用户发布新任务*
 * 用户读取自己发布的任务*
 * 用户读取自己接受的任务*
 * 用户确认任务完成*
 * 用户关闭未被人接受的任务*

/**
 * ****管理员功能**** 
 * ------- 
 * 管理员登录 . 
 * 管理员个人信息更新 . 
 * 密码更新 . 
 * 添加管理员 . 
 * ------ 
 * 获取任务列表 .
 * 关闭待解决任务. 
 * ------ 
 * 获取用户列表 . 
 * 读取一个用户. 
 * 添加用户余额. 
 * 解除用户限制 . 
 * 添加用户限制 . 
 * ---------- 
 * 获取学校列表.
 * 读取单个学校信息 . 
 * 更新学校信息 . 
 * 添加院校.
 * 
 *
 */
@Controller
@SessionAttributes({ "nowadmin" })
@RequestMapping(value = "admin/")
public class AdminController {

	@Resource(name = "adminService")
	public AdminService adminService;

	@Resource(name = "schoolService")
	public SchoolService schoolService;

	@Resource(name = "taskService")
	public TaskService taskService;

	@Resource(name = "userService")
	public UserService userService;
	// 解除用户限制
	@RequestMapping("useropen.do")
	public String useropen(String keys, String stuidstr, Model model) {
		if (stuidstr == null) {
			model.addAttribute("msg", "出现错误");
			return getusers(keys, model);
		} else {
			if (stuidstr.length() == 0) {
				model.addAttribute("msg", "出现错误");
				return getusers(keys, model);
			}
		}
		int stuid = 0;
		try {
			stuid = Integer.parseInt(stuidstr);
			if (stuid == 0) {
				model.addAttribute("msg", "出现错误");
				return getusers(keys, model);
			}
		} catch (Exception e) {
			model.addAttribute("msg", "出现错误");
			return getusers(keys, model);
		}

		User theUser = userService.getByUid(stuid);
		theUser.setState(0);

		int r = userService.updateUserInfo(theUser);
		if (r > 0) {
			model.addAttribute("msg", "修改成功");
		} else {
			model.addAttribute("msg", "修改失败");
		}
		return getusers(keys, model);
	}

	// 限制用户
	@RequestMapping("userclose.do")
	public String userclose(String keys, String stuidstr, Model model) {
		if (stuidstr == null) {
			model.addAttribute("msg", "出现错误");
			return getusers(keys, model);
		} else {
			if (stuidstr.length() == 0) {
				model.addAttribute("msg", "出现错误");
				return getusers(keys, model);
			}
		}
		int stuid = 0;
		try {
			stuid = Integer.parseInt(stuidstr);
			if (stuid == 0) {
				model.addAttribute("msg", "出现错误");
			model.addAttribute("msg", "出现错误");
			return "userInfo";
		}
		if (stuid == 0) {
			model.addAttribute("msg", "出现错误");
			return "userInfo";
		}
		User user = userService.getByUid(stuid);
		model.addAttribute("theuser", user);
		return "adminUserMoney";
	}

	// 添加用户余额
	@RequestMapping("addusermoney.do")
	public String addusermoney(String moneystr, String stuidstr, Model model) {
		double money = 0.00;
		try {
			money = Double.parseDouble(moneystr);
		} catch (Exception e) {
			model.addAttribute("msg", "金额出现错误");
			return getuser(stuidstr, model);
		}

		if (stuidstr == null) {
			model.addAttribute("msg", "出现错误");
			return getuser(stuidstr, model);
		} else {
			if (stuidstr.length() == 0) {
				model.addAttribute("msg", "出现错误");
				return getuser(stuidstr, model);
			}
		}
		int stuid = 0;
		try {
			stuid = Integer.parseInt(stuidstr);
			if (stuid == 0) {
				model.addAttribute("msg", "出现错误");
				return getuser(stuidstr, model);
			}
		} catch (Exception e) {
			model.addAttribute("msg", "出现错误");
			return getuser(stuidstr, model);
		}

		User theUser = userService.getByUid(stuid);
		theUser.setMoney(theUser.getMoney() + money);


		// 检查账号重复
		int countnum = adminService.getAccountCount(account);
		if (countnum > 0) {
			model.addAttribute("msg", account + "   该账号已经被使用");
			return "adminAddAdmin";
		}

		Admin admin = new Admin(0, account, "123456", account, new Date(), 0);

		int result = adminService.setAdmin(admin);

		if (result <= 0) {
			model.addAttribute("msg", "注册失败");
			return "adminAddAdmin";
		}

		model.addAttribute("msg", "注册成功,可以登录。默认密码:123456");

		return "adminAddAdmin";
	}

	@RequestMapping("gettasks.do")
	public String gettasks(String words, @RequestParam(required = true, defaultValue = "-1") String schoolidstr,
			Model model) {
		model.addAttribute("words", words);
		model.addAttribute("schoolidstr", schoolidstr);
		int schoolid = -1;
		if (!schoolidstr.equals("-1")) {
			try {
				schoolid = Integer.parseInt(schoolidstr);
			} catch (Exception e) {
				System.err.println("err");
			}
		}
		if (words != null) {
			words = "%" + words + "%";
		} else {
			words = "%%";
		}
		List<Task> list = taskService.getTaskByKeys(words, schoolid);
		model.addAttribute("list", list);
		return "adminTask";
		} catch (Exception e) {
			model.addAttribute("msg", "出现错误");
			return getusertask(request, model,null);
		}
		if (tid == 0) {
			model.addAttribute("msg", "出现错误");
			return getusertask(request, model,null);
		}
		User user = null;
		try {
			user = (User) request.getSession(false).getAttribute("nowuser");
		} catch (Exception e) {
			model.addAttribute("msg", "请检查登录状况");
			return "login";
		}
		int uid = 0;
		try {
			uid = user.getStuid();
			if (user == null || uid == 0) {
				model.addAttribute("msg", "请检查登录状况");
				return getusertask(request, model,null);
			}
		} catch (Exception e) {
			model.addAttribute("msg", "请检查登录状况");
			return getusertask(request, model,null);
		}
		Task theTask = taskService.getTask(tid);
		if (!(uid + "").equals(theTask.getPublishUserId())) {
			model.addAttribute("msg", "出现错误");
			return getusertask(request, model,null);
		}
		theTask.setState(1);
		int r = taskService.updateTask(theTask);
		if (r > 0) {
			user.setMoney(user.getMoney()+theTask.getReward());
			int ruser = userService.updateUserInfo(user);
			if (ruser> 0) {
				model.addAttribute("msg", "成功");
			}else {
				model.addAttribute("msg", "已关闭-奖励未返回,请与管理员联系");
		}

		School theSchool = schoolService.getSchoolByID(school.getSchoolid());

		model.addAttribute("theSchool", theSchool);

		return "adminSchoolSetting";
	}

	// 更新院校
	@RequestMapping("addschool.do")
	public String addschool(String name, Model model) {

		if (name == null) {
			model.addAttribute("msg", "添加失败");
			return "adminSchoolAdd";
		} else {
			if (name.length() == 0) {
				model.addAttribute("msg", "添加失败");
				return "adminSchoolAdd";
			}
		}

		School theSchool = new School(0, name, new Date(), 0);

		int r = 0;

		r = schoolService.setSchool(theSchool);

		if (r > 0) {
			model.addAttribute("msg", "添加成功");
			model.addAttribute("flag", "添加成功");
			return "adminSchoolAdd";
		} else {
			model.addAttribute("msg", "添加失败");
			return "adminSchoolAdd";
		}
	}

	@org.springframework.web.bind.annotation.InitBinder
	public void InitBinder(ServletRequestDataBinder bin) {
		bin.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"), true));
	}
			Model model) {
		model.addAttribute("words", words);
		model.addAttribute("schoolidstr", schoolidstr);
		int schoolid = -1;
		if (!schoolidstr.equals("-1")) {
			try {
				schoolid = Integer.parseInt(schoolidstr);
			} catch (Exception e) {
				System.err.println("err");
			}
		}
		if (words != null) {
			words = "%" + words + "%";
		} else {
			words = "%%";
		}
		List<Task> list = taskService.getTaskByKeys(words, schoolid);
		model.addAttribute("list", list);
		return "adminTask";
	}

	// to1.管理员点击关闭删除取消
	@RequestMapping("taskclose.do")
	public String taskclose(String tidstr, String words,
			@RequestParam(required = true, defaultValue = "-1") String schoolidstr, HttpServletRequest request,
			Model model) {
		int tid = 0;
		try {
			tid = Integer.parseInt(tidstr);
		} catch (Exception e) {
			model.addAttribute("msg", "出现错误");
			return gettasks(words, schoolidstr, model);
		}
		if (tid == 0) {
			model.addAttribute("msg", "出现错误");
			return gettasks(words, schoolidstr, model);
		}
		Admin admin = null;
		try {
			admin = (Admin) request.getSession(false).getAttribute("nowadmin");
			int uid = 0;
			uid = admin.getAid();
			if (admin == null || uid == 0) {
				model.addAttribute("msg", "请检查登录状况");
				return gettasks(words, schoolidstr, model);
			}
		} catch (Exception e) {
		}
		int stuid = 0;
		try {
			stuid = Integer.parseInt(stuidstr);
			if (stuid == 0) {
				model.addAttribute("msg", "出现错误");
				return getusers(keys, model);
			}
		} catch (Exception e) {
			model.addAttribute("msg", "出现错误");
			return getusers(keys, model);
		}

		User theUser = userService.getByUid(stuid);
		theUser.setState(0);

		int r = userService.updateUserInfo(theUser);
		if (r > 0) {
			model.addAttribute("msg", "修改成功");
		} else {
			model.addAttribute("msg", "修改失败");
		}
		return getusers(keys, model);
	}

	// 限制用户
	@RequestMapping("userclose.do")
	public String userclose(String keys, String stuidstr, Model model) {
		if (stuidstr == null) {
			model.addAttribute("msg", "出现错误");
			return getusers(keys, model);
		} else {
			if (stuidstr.length() == 0) {
				model.addAttribute("msg", "出现错误");
				return getusers(keys, model);
			}
		}
		int stuid = 0;
		try {
			stuid = Integer.parseInt(stuidstr);
			if (stuid == 0) {
				model.addAttribute("msg", "出现错误");
				return getusers(keys, model);
			}
		} catch (Exception e) {
			model.addAttribute("msg", "出现错误");
			return getusers(keys, model);
		}


/**
 * *****任务********
 * 用户发布新任务*
 * 用户读取自己发布的任务*
 * 用户读取自己接受的任务*
 * 用户确认任务完成*
 * 用户关闭未被人接受的任务*
 * 用户接受任务*
 * 读取任务的信息*
 * 搜索任务*
 * 
 *
 */

@Controller
@RequestMapping(value = "task/")
public class TaskController {

	@Resource(name = "taskService")
	public TaskService taskService;
	
	@Resource(name = "userService")
	public UserService userService;
	
	//发布新任务
	@RequestMapping("newtask.do")
	public String newtask(Task task, HttpServletRequest request, Model model) {
		User user = null;
		try {
			user = (User) request.getSession(false).getAttribute("nowuser");
		} catch (Exception e) {
			model.addAttribute("msg", "请检查登录状况");
			return "login";
		}
		try {
			if (user == null || user.getStuid() == 0) {

		Task theTask = taskService.getTask(tid);

		theTask.setState(1);
		int r = taskService.updateTask(theTask);
		if (r > 0) {
			model.addAttribute("msg", "成功");
		} else {
			model.addAttribute("msg", "失败");
		}

		return gettasks(words, schoolidstr, model);
	}

	// 获取用户信息
	@RequestMapping("getusers.do")
	public String getusers(String userstr, Model model) {
		model.addAttribute("keys", userstr);
		if (userstr != null) {
			userstr = "%" + userstr + "%";
		} else {
			userstr = "%%";
		}
		List<User> list = userService.getByLikeNameAccount(userstr);
		model.addAttribute("list", list);
		return "adminUser";
	}

 	@RequestMapping("tongji.do")
	public String tongji( Model model) {

		return "tongji";

	}

	// 获取用户信息
	@RequestMapping(value="tongjidata.do",produces={"application/json;charset=UTF-8"})
	@ResponseBody
	public String tongjidata( Model model) {

		JSONObject result = new JSONObject();
		Map<String, Integer> map = new HashMap<String, Integer>();

		List<Task> list = taskService.selecttongji();
		System.out.println(list.size());
		Collections.sort(list, new Comparator<Task>() {
			@Override

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值