Java项目:物业缴费管理系统(java+SSM+HTML+JS+JSP+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版本;


技术栈

1. 后端:Spring+SpringMVC+Mybatis
2. 前端:HTML+CSS+JavaScript+jsp


使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;
4. 运行项目,输入localhost:8080/ 登录

 

 

 

 

 

用户管理控制层:

@Controller
@RequestMapping("/user")
public class UserController {
	
	@Autowired
	private UserService userService;
	
	@Autowired
	private CarService carservice;
	
	@Autowired
	private RoomService roomservice;
	
	@RequestMapping("/welcome")
	public String welcome(HttpServletRequest request,ModelMap model){
		return "login";
	}
	
	/**
	 * 用户登录
	 * @param request
	 * @return
	 */
	@RequestMapping("/login")
	public String login(HttpServletRequest request,ModelMap model){
		
		String username = request.getParameter("username");
		String password = request.getParameter("password");
		if(StringUtils.isEmpty(username)||StringUtils.isEmpty(password)){
			return "login";
		}
		User user = userService.getUserByUsername(username);
		HttpSession session = request.getSession();
		session.setAttribute("user", user);
		
		if(user.getPassword().equals(password)){
				if(user.getRole().equals(0)){
					return "adminindex";
				}else {
					return "userindex";
				}
		}else{
			model.put("msg", "用户名或者密码错误!");
			return "login";
		}
	}

	/**
	 * 跳转用户注册页面
	 */
	@RequestMapping(value="/getregister")
	public String getRegister(){
		return "register";
	}
	
	/**
	 * 用户注册
	 * @param user
	 * @param modelMap
	 * @return
	 */
	@RequestMapping("/register")
	public String register(ModelMap modelMap,HttpServletRequest request){
		
		try{
			String username = request.getParameter("username");
			String password = request.getParameter("password");
			String realname = request.getParameter("realname");
			String idCardNum = request.getParameter("idCardNum");
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd HH:mm:ss");			
			String settleTime = request.getParameter("settleTime");
			Date date = sdf.parse(settleTime);
			String sex = request.getParameter("sex");
			String address = request.getParameter("address");
			
			User user = new User();
			user.setUserName(username);
			user.setPassword(password);
			user.setRealName(realname);
			user.setIdCardNum(idCardNum);
			user.setSettleTime(date);
			user.setSex(sex);
			user.setAddress(address);
			
			userService.addUser(user);
			modelMap.put("msg", "注册成功,请登录!");
			return "login";
		}catch(Exception e){
			modelMap.put("msg", "注册失败!");
			e.printStackTrace();
			return "register";
		}
	}
	
	/**
	 * 跳转更新用户页面
	 */
	@RequestMapping(value="/getupdateUser")
	public String getupdateUser(HttpServletRequest request,User user,ModelMap model){
		HttpSession session = request.getSession();
		user = (User) session.getAttribute("user");
		int id = user.getId();
		user = userService.getUserById(id);
		model.put("user", user);
		return "updateUser";
	}
	
	/**
	 * 更新用户
	 * @param user
	 * @return
	 * @throws ParseException 
	 */
	@RequestMapping("/updateUser")
	public String updateUser(HttpServletRequest request,User user,ModelMap model,
			HttpSession session) throws ParseException{
		user = (User) session.getAttribute("user");
		int id = user.getId();
		String userName = request.getParameter("username");
		String companyName = request.getParameter("companyname");
		String phone = request.getParameter("phone");
		String email = request.getParameter("email");
		/*SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss E");
		String outmigrationTime = request.getParameter("outmigrationTime");
		Date date = sdf.parse(outmigrationTime);*/
		String relationship =  request.getParameter("relationship");
		
		user.setId(id);
		user.setUserName(userName);
		user.setCompanyName(companyName);
		user.setPhone(phone);
		user.setEmail(email);
		/*user.setOutmigrationTime(date);*/
		user.setRelationship(relationship);
		userService.updateUser(user);
		//人
		user = userService.getUserByUsername(userName);
		model.put("user", user);
		//车
		Car car = carservice.getCarById(id);
		model.put("car", car);
		//房
		Room room = roomservice.getRoomByUserId(id);
		model.put("room", room);
		
		return "userinfo";
	}
	
	/**
	 * 跳转修改密码页面
	 */
	@RequestMapping(value="/getupdatePassword")
	public String getUpdatePassword(HttpServletRequest request,User user,
			ModelMap model){
		HttpSession session = request.getSession();
		user = (User) session.getAttribute("user");
		String username = user.getUserName();
		model.put("username", username);
		return "pass";
	}
	
	/**
	 * 更新密码
	 * @param user
	 * @return
	 */
	@RequestMapping("/updatePassword")
	public String updatePassword(HttpServletRequest request,ModelMap modelMap){
		
		HttpSession session = request.getSession();
		User user1=(User) session.getAttribute("user");
		String username = user1.getUserName();
		String mpass = request.getParameter("mpass");
		String newpass = request.getParameter("newpass");
		
		User user2 = userService.getUserByUsername(username);
		if (user2.getPassword().equals(mpass)) {
			User user3 = new User();
			user3.setUserName(username);
			user3.setPassword(newpass); 
			userService.updatePassword(user3);
			modelMap.put("msg", "更新成功!");
			//人
			User user = userService.getUserByUsername(username);
			modelMap.put("user", user);
			//车
			Car car = carservice.getCarById(user2.getId());
			modelMap.put("car", car);
			//房
			Room room = roomservice.getRoomByUserId(user2.getId());
			modelMap.put("room", room);
				
			return "user";
		}else{
			modelMap.put("msg", "原密码输入错误!");
			return "pass";
		}
	}
	
	/**
	 * 分页查询用户列表(未做)
	 * @param page
	 * @return
	 */
	@RequestMapping("/getAllUserByPage")
	public String getAllUserByPage(HttpServletRequest request,ModelMap model){
		List<User> userList = userService.getAllUsers();
		model.put("userList", userList);
		for (User user : userList) {
			Room room = roomservice.getRoomByUserId(user.getId());
			if(room==null) {
				continue;
			}
			user.setRelationship(room.getBuildingNum()+"号楼"+room.getUnitNum()+"单元"+room.getRoomNum());
		}
		
		return "adminUserAll";
	}
	
	/**
	 * 获取单个用户信息
	 * @param request
	 * @return
	 */
	@RequestMapping("/getUserById")
	public String getUserById(HttpServletRequest request,ModelMap model,HttpSession session){
		User user1 = (User) session.getAttribute("user");
		int id = user1.getId();
		User user = userService.getUserById(id);
		model.addAttribute("user", user);
		return "user";
	}
	
	/**
	 * 首页
	 * @param request
	 * @return
	 */
	@RequestMapping(value="/getWelcome")
	public String Welcome(HttpServletRequest request){
		return "user";
		
	}
	
}

用户反馈管理控制层:

@Controller
@RequestMapping("/userrepair")
public class UserrepairController {
	@Autowired
	private UserrepairService userrepairService ;
	
	String msg ="暂无维修内容!";
	
	/**
	 * 查看所有业主待维修信息--admin
	 * @param request
	 * @param model
	 * @return
	 */
	@RequestMapping(value="/alluserrepair")
	public String getAllUserrepair(HttpServletRequest request,ModelMap model){
		List<Userrepair> userrepair1 = userrepairService.getUserrepairByStatus(1);
		if(userrepair1 != null && userrepair1.size()>0){
			model.put("userrepair1", userrepair1);
		}else{
			model.put("msg", msg);
		}
		return "adminUserrepair";
	}
	
	/**
	 * 跳转--业主添加维修--user
	 */
	@RequestMapping(value="/adduserrepair")
	public String getAdduserrepair(HttpServletRequest request,ModelMap model,
			HttpSession session){
		User user = (User) session.getAttribute("user");
		model.put("user", user);
		
		List<Userrepair> userrepair1 = userrepairService.getUserrepairById(user.getId(),1);
		if(userrepair1 != null && userrepair1.size()>0){
			model.put("userrepair1", userrepair1);
		}else{
			model.put("msg", msg);
		}
		return "userUserrepair";
	}
	
	/**
	 * 业主添加维修信息--user
	 * @param request
	 * @param model
	 * @return
	 * @throws ParseException
	 */
	@RequestMapping(value="/addUserrepair")
	public String getAddUserrepair(HttpServletRequest request,
			ModelMap model) throws ParseException{
		int userId = Integer.parseInt(request.getParameter("userId"));
		String realName = request.getParameter("realName");
		String phone = request.getParameter("phone");
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd HH:mm:ss");
		String date = request.getParameter("bookTime"); 
		Date bookTime = sdf.parse(date);
		String comments = request.getParameter("comments");
		
		Userrepair userrepair = new Userrepair();
		userrepair.setUserId(userId);
		userrepair.setRealName(realName);
		userrepair.setPhone(phone);
		userrepair.setBookTime(bookTime);
		userrepair.setComments(comments);
		userrepair.setStatus(1);
		
		userrepairService.addUserrepair(userrepair);
		List<Userrepair> userrepair1 = userrepairService.getUserrepairById(userId,1);
		if(userrepair1 != null && userrepair1.size()>0){
			model.put("userrepair1", userrepair1);
		}
		
		List<Userrepair> userrepair0 = userrepairService.getUserrepairById(userId,0);
		if(userrepair0 != null && userrepair0.size()>0){
			model.put("userrepair0", userrepair0);
		}
		
		return "userUserrepair";
	}
	
	/**
	 * 物业修改维修信息--admin
	 * @param request
	 * @param model
	 * @return
	 */
	@RequestMapping(value="/updateUserrepair")
	public String getUpdateUserrepair(HttpServletRequest request,ModelMap model){
		int id = Integer.parseInt(request.getParameter("id"));
		BigDecimal serviceCost = new BigDecimal(request.getParameter("serviceCost"));
		BigDecimal equipmentCost = new BigDecimal(request.getParameter("equipmentCost"));
		BigDecimal allCost = serviceCost.add(equipmentCost);
		String replyComments = request.getParameter("replyComments");
		
		Userrepair userrepair = new Userrepair();
		userrepair.setId(id);
		userrepair.setServiceCost(serviceCost);
		userrepair.setEquipmentCost(equipmentCost);
		userrepair.setAllCost(allCost);
		userrepair.setReplyComments(replyComments);
		userrepair.setAgreement(1);
		userrepair.setStatus(0);
		
		userrepairService.updateUserrepair(userrepair);

		List<Userrepair> userrepair0 = userrepairService.getUserrepairByStatus(0);
		if(userrepair0 != null && userrepair0.size()>0){
			model.put("userrepair0", userrepair0);
		}
		List<Userrepair> userrepair1 = userrepairService.getUserrepairByStatus(1);
		if(userrepair1 != null && userrepair1.size()>0){
			model.put("userrepair1", userrepair1);
		}
		return "adminUserrepair";
	}
	
}

公告管理控制层:

@Controller
public class MessageController {

	
	@Autowired
	private MessageService messService;
	@Autowired
	private OwnerService ownerService;
	
	private SimpleDateFormat cx = new SimpleDateFormat("yyyy-MM-dd");
	
	/**
	 * @category 未阅读的通知
	 * @param model
	 * @param request
	 * @return
	 */
	@RequestMapping("/unread.action")
	public String unread(Model model,HttpServletRequest request) {
		System.out.println("我进来了");
		HttpSession session = request.getSession();
		Owner owner=(Owner)session.getAttribute("currentOwnerr");
		List<Message> list1=messService.selectByOid(owner.getOid());
		List<Message> list=new ArrayList<Message>();
		for (int i = 0; i < list1.size(); i++) {
			if(list1.get(i).getStatus().equals("未阅读")) {
				
				list.add(list1.get(i));
			}
		}
		if(list.size()<1) {
			model.addAttribute("nomess", "暂无通知");
		}
		model.addAttribute("type", "未阅读");
		model.addAttribute("readlist", list);
		return "messinfo";
	}
	/**
	 * @category 已阅读的通知
	 * @param model
	 * @param request
	 * @return
	 */
	@RequestMapping("/readed.action")
	public String readed(Model model,HttpServletRequest request) { 
		System.out.println("我进来了");
		HttpSession session = request.getSession();
		Owner owner=(Owner)session.getAttribute("currentOwnerr");
		List<Message> list1=messService.selectByOid(owner.getOid());
		List<Message> list=new ArrayList<Message>();
		for (int i = 0; i < list1.size(); i++) {
			if(list1.get(i).getStatus().equals("已读")) {
				
				list.add(list1.get(i));
			}
		}
		model.addAttribute("type", "已读");
		model.addAttribute("readlist", list);
		model.addAttribute("nomess", " ");
		return "messinfo";
	}
	/**
	 * @category 单个已读操作
	 * @param messid
	 * @param model
	 * @return
	 */
	@RequestMapping("/doread.action")
	public String doread(int messid,Model model) {
		Message mess=new Message();	
		mess.setMessid(messid);
		mess.setStatus("已读");
		messService.updateByPrimaryKeySelective(mess);
		return "redirect:unread.action";
	}
	/**
	 * @category ajax控制器用于动态传递业主通知数量
	 * @param request
	 * @return
	 */
	@RequestMapping("/showMessNum")
	public @ResponseBody List<String> showMessNum(HttpServletRequest request) {
		//System.out.println("json");
		HttpSession session = request.getSession();
		Owner owner=(Owner)session.getAttribute("currentOwnerr");
		//System.out.println(owner.getOname());
		List<Message> list1=messService.selectByOid(owner.getOid());
		List<Message> list=new ArrayList<Message>();
		for (int i = 0; i < list1.size(); i++) {
			if(list1.get(i).getStatus().equals("未阅读")) {
				
				list.add(list1.get(i));
			}
		}
		String a= "我的通知"+list.size();
		String b="未读"+list.size();
		List<String> list2=new ArrayList<>();
		list2.add(a);
		list2.add(b);
		return list2;
	}
	
	/**
	 * @category 通知一键已读控制器
	 * @param request
	 * @param model
	 * @return
	 */
	@RequestMapping("/allread.action")
	public String allread(HttpServletRequest request,Model model) {
		HttpSession session = request.getSession();
		Owner owner=(Owner)session.getAttribute("currentOwnerr");
		messService.updateByOid(owner.getOid());
		model.addAttribute("nomess", "暂无通知");
		model.addAttribute("readlist", null);
		return "messinfo";
	}

	/**
	 * @category 给业主发送催款通知
	 * @param oid
	 * @return
	 */
	@RequestMapping("/cuikuan.action")
	public @ResponseBody int cuikuan(int oid) {
		
		Message mess=new Message();
		mess.setMessinfo("请您及时缴纳相关费用,详情请到我的账单查看");
		mess.setOid(oid);
		mess.setStatus("未阅读");
		Date date=new Date();
		String time=cx.format(date);
		mess.setMesstime(time);
		messService.insert(mess);
		return oid;
		
	}
	
	@RequestMapping("/sendmess")
	public @ResponseBody List<String> sendmess(HttpServletRequest request,String message,Integer oid){
		//System.out.println(oid);
		//System.out.println(message);
		String oname=ownerService.findById(oid).getOname();
		Date date=new Date();
		String timeString=cx.format(date);
		Message mess=new Message();
		mess.setMessinfo(message);
		mess.setOid(oid);
		mess.setStatus("未阅读");
		mess.setMesstime(timeString);
		messService.insert(mess);
		List<String> list=new ArrayList<>();
		list.add(oname);
		return list;		
	}
	
}

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

  • 6
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

OldWinePot

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

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

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

打赏作者

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

抵扣说明:

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

余额充值