Java项目:房屋租赁管理系统(java+SSM+Layui+Maven+Mysql+Jsp)

Posted qq_1334611189

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java项目:房屋租赁管理系统(java+SSM+Layui+Maven+Mysql+Jsp)相关的知识,希望对你有一定的参考价值。

一、项目简述


功能包括:
房屋租赁管理系统是一款方便快捷,易操作的租房和各种物业收费的管理系统,该系统官网包含着用户和管理员分类登录,减少了为使用管理员系统的开支,用户分别支持手机网上或电脑网页快捷的查找可出租的房子,并在网上在线支付,并还包含有故障报修,缴租提醒,极大符合现代人们不想出门又快捷办事的需求,管理员也只需在网上提醒用户缴费即可,并有着查看用户信息,查看报障,租金信息,合同信息,日常提醒,添加删除或修改房屋的功能。

二、项目运行

环境配置:

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

项目技术:

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

 

 

 

 

管理员管理控制层:

@Controller
@RequestMapping("/admin")
public class Adminfunctioncontroller 

	@Resource
	private RentwithdrawnService rentwithdrawnService;

	@Resource
	private LeaseinformationService leaseinformationService;

	@Resource
	private CheckoutapplicationService checkoutapplicationService;

	@Resource
	private MydailylifeService mydailylifeService;
	@Resource
	private RentcollectionService rentcollectionService;
	@Resource
	private FaultService faultService;

	@Resource
	private UserlistService userlistService;
	@Resource
	private LeaseimgService leaseimgService;
	@Resource
	private HeadPortraitImgService headPortraitImgService;

	/**
	 * 注销
	 */
	@RequestMapping("/admincancel")
	public String cancellation(HttpServletRequest request) 
		HttpSession session = request.getSession();
		session.removeAttribute("admin");
		System.out.println("注销成功");
		return "official";
	

	@RequestMapping("/details")
	public ModelAndView listCategory(@RequestParam int pn) 
		ModelAndView mav = new ModelAndView("rentingdel");
		// 设置分页传输
		PageHelper.startPage(pn, 10);
		// 查询所有数据
		List<rentwithdrawn> list = rentwithdrawnService.selectRwState("已退租");
		// 使用PageInFo封装查询结果
		PageInfo<rentwithdrawn> pageInfo = new PageInfo<rentwithdrawn>(list, 5);
		// 放入转发参数
		mav.addObject("cs", pageInfo);
		return mav;
	

	@RequestMapping("/delect")
	public ModelAndView delect(@RequestParam int id) 
		ModelAndView mav = new ModelAndView("rentingdel");
		rentwithdrawnService.deleteByPrimaryKey(id);
		return mav;
	

	@RequestMapping("/rentinglist")
	public ModelAndView listHouseState(@RequestParam int pn) 
		ModelAndView mav = new ModelAndView("rentinglist");
		// 设置分页传输
		PageHelper.startPage(pn, 10);
		// 查询所有数据
		List<leaseinformation> list = leaseinformationService.selecthousteaseWith("出租中");
		// 使用PageInFo封装查询结果
		PageInfo<leaseinformation> pageInfo = new PageInfo<leaseinformation>(list, 5);
		// 放入转发参数
		mav.addObject("cs", pageInfo);
		return mav;
	

	@RequestMapping("/delectcontract")
	public ModelAndView delectcontract(@RequestParam int id) 
		ModelAndView mav = new ModelAndView("rentinglist");
		leaseinformationService.updacontract(id);
		return mav;
	

	/**
	 * 看房申请列表
	 */
	@RequestMapping("/houseapply")
	public ModelAndView kanfansqing(@RequestParam int pn) 
		ModelAndView mav = new ModelAndView("houseapply");
		// 设置分页传输
		PageHelper.startPage(pn, 10);
		// 查询所有数据
		List<checkoutapplication> list = checkoutapplicationService.selectCoaState();
		// 使用PageInFo封装查询结果
		PageInfo<checkoutapplication> pageInfo = new PageInfo<checkoutapplication>(list, 5);
		// 放入转发参数
		mav.addObject("cs", pageInfo);
		return mav;
	

	/**
	 * 预约看房申请
	 */
	@RequestMapping("/tonyizp")
	public ModelAndView tonyizp(@RequestParam int id, String housecall, String name) throws ParseException 
		ModelAndView mav = new ModelAndView("houseapply");
		checkoutapplicationService.xgaiCoaState("已同意", id);
		leaseinformation house = leaseinformationService.selectHouseCall(housecall).get(0);
		SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");// 设置日期格式
		Calendar c = Calendar.getInstance();
		c.add(Calendar.DATE, 30);// 计算30天后的时间
		String t1 = df.format(new Date());
		String t2 = df.format(c.getTime());
		// 格式转换date格式
		Date date1 = df.parse(t1);
		Date date2 = df.parse(t2);
		house.setHousestartingdate(date1);
		house.setHouseclosingdate(date2);
		house.setHousestate("出租中");
		house.setUsername(name);
		leaseinformationService.updateByPrimaryKey(house);
		return mav;
	

	@RequestMapping("/jujzp")
	public ModelAndView jujzp(@RequestParam int id) 
		ModelAndView mav = new ModelAndView("houseapply");
		checkoutapplicationService.xgaiCoaState("已拒绝", id);
		return mav;
	

	/**
	 *	退房申请
	 */
	@RequestMapping("/tzshenqing")
	public ModelAndView tzshenqing(@RequestParam int pn) 
		ModelAndView mav = new ModelAndView("housedel");
		// 设置分页传输
		PageHelper.startPage(pn, 10);
		// 查询所有数据
		List<checkoutapplication> list = checkoutapplicationService.selectCoaState1();
		// 使用PageInFo封装查询结果
		PageInfo<checkoutapplication> pageInfo = new PageInfo<checkoutapplication>(list, 5);
		// 放入转发参数
		mav.addObject("cs", pageInfo);
		return mav;
	

	/**
	 * 删除退房记录
	 */
	@RequestMapping("/delecttzsq")
	public ModelAndView delecttzsq(@RequestParam int id) 
		ModelAndView mav = new ModelAndView("housedel");
		checkoutapplicationService.deleteByPrimaryKey(id);
		return mav;
	

	/**
	 * 同意退房
	 */
	@RequestMapping("/checkoutmvc")
	public ModelAndView checkoutmvc(@RequestParam int id,String housecall) 
		ModelAndView mav = new ModelAndView("housedel");
		String news=checkoutapplicationService.updateState("已同意", id);
		if(news.equals("同意退租成功!")) 
			System.out.println(news);
			System.out.println(leaseinformationService.updateCancelForeignKey(housecall));
		
		return mav;
	
	
	/**
	 * 拒绝退房
	 */
	@RequestMapping("/refusemvc")
	public ModelAndView refusemvc(@RequestParam int id) 
		ModelAndView mav = new ModelAndView("housedel");
		System.out.println(checkoutapplicationService.updateState("已拒绝", id));
		return mav;
	
	
	/**
	 * 分页查找所有用户
	 */
	@RequestMapping("/pagingselectuser")
	public String pagingselectuser(Model model, @RequestParam(value = "pn", defaultValue = "1") Integer pn,
			@RequestParam(required = false, defaultValue = "6") Integer pageSize) 
		PageHelper.startPage(pn, 10);
		List<userlist> userlist = userlistService.selectAll();
		PageInfo<userlist> p = new PageInfo<userlist>(userlist, 3);
		model.addAttribute("p", p);
		return "account";
	

	/**
	 * 删除用户信息
	 */
	@RequestMapping("/deletuser")
	public String deletuser(int id,String username,HttpServletRequest request) 
		userlistService.updateJointTabledelete(username);
		headPortraitImgService.deletuserimg(userlistService.selectUserId(id).getUsercall());
		userlistService.deleteByPrimaryKey(id);
		return "redirect:pagingselectuser.do";
	

	/**
	 * 添加房源
	 * 
	 * @throws IOException
	 * @throws IllegalStateException
	 */
	@RequestMapping("/addhouse")
	public String addhouse(String housecall, String address, String area, String rent, String housetype, String[] state,
			@RequestParam(value = "file", required = false) MultipartFile file, HttpServletRequest request)
			throws IllegalStateException, IOException 
		if (housecall.equals("") || address.equals("") || area.equals("") || rent.equals("") || state.equals("")
				|| housetype.equals("")) 
			request.setAttribute("erro", "输入房源信息不能缺少任意一项!");
			return "housingadd";
		
		List<leaseinformation> list = leaseinformationService.queryAll();
		for (leaseinformation leaseinformation : list) 
			if (housecall.equals(leaseinformation.getHousecall())) 
				request.setAttribute("erro", "该房源编号已存在");
				return "housingadd";
			
		
		String path = "";
		String imgname = "";
		if (!file.isEmpty()) 
			// 生成uuid作为文件名称
			String uuid = UUID.randomUUID().toString().replaceAll("-", "");
			// 获得文件类型(可以判断如果不是图片,禁止上传)
			String contentType = file.getContentType();
			// 获得文件后缀名称
			String imageName = contentType.substring(contentType.indexOf("/") + 1);
			path = "C://Users/Rain/Desktop/ssm_leaseOfHouses/WebContent/leaseimg/" + uuid + "." + imageName;
			file.transferTo(new File(path));
			imgname = uuid + "." + imageName;
		
		leaseimg img = new leaseimg();
		img.setImgname(address);
		img.setImgroute(imgname);
		leaseimgService.insert(img);
		int id = leaseimgService.selectAll().get(leaseimgService.selectAll().size() - 1).getId();
		leaseinformation house = new leaseinformation();
		house.setHouseaddress(address);
		house.setHousesize(Double.valueOf(area));
		house.setHousemoney(rent);
		house.setHousestate(state[0]);
		house.setHousecall(housecall);
		//获取当前时间和一个月后的时间
		Date date = new Date();
		SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
		String HouseStartingDate=sdf.format(date);
		Calendar cal = Calendar.getInstance();
		cal.setTime(date);
		cal.add(Calendar.DATE, 30);
		String HouseClosingDate=sdf.format(cal.getTime());
		house.setHousestartingdate(date);
		house.setHouseclosingdate(cal.getTime());
		house.setHousestartingdatetemp(HouseStartingDate);
		house.setHouseclosingdatetemp(HouseClosingDate);
		house.setId(id);
		house.setHousetype(housetype);
		house.setHouserecommend("未设置");
		leaseinformationService.addHouse(house);
		request.setAttribute("sessce", "添加成功");
		return "housingadd";
	

	/**
	 * 分页展示房源信息
	 */
	@RequestMapping("/pagingselecthouse")
	public String pagingselecthouse(Model model, @RequestParam(value = "pn", defaultValue = "1") Integer pn,
			@RequestParam(required = false, defaultValue = "6") Integer pageSize) 
		PageHelper.startPage(pn, 10);
		List<leaseinformation> leaseinformation = leaseinformationService.queryAll();
		PageInfo<leaseinformation> p = new PageInfo<leaseinformation>(leaseinformation, 3);

		model.addAttribute("p", p);
		return "housinglist";
	

	/**
	 * 获取修改房源信息
	 */
	@RequestMapping("/getupdatehouse")
	public String getupdatehouse(int houseid, HttpServletRequest request) 
		List<leaseinformation> house = leaseinformationService.queryID(houseid);
		request.setAttribute("uphouse", house);
		return "houseupdate";
	

	/**
	 * 修改房源信息
	 */
	@RequestMapping("/updatehouse")
	public String updatehouse(Integer houseid, String housetype, String address, String area, String rent, String state,
			HttpServletRequest request) 
		leaseinformation house = leaseinformationService.queryID(houseid).get(0);
		request.removeAttribute("uphouse");
		house.setHouseaddress(address);
		house.setHousemoney(rent);
		house.setHousetype(housetype);
		house.setHousesize(Double.valueOf(area));
		house.setHousestate(state);
		house.setHouseid(houseid);
		leaseinformationService.updateByPrimaryKey(house);
		request.setAttribute("sessce", "修改成功");
		request.setAttribute("newhouse", house);
		return "houseupdate";
	

	/**
	 * 删除房源信息
	 */
	@RequestMapping("/delethouse")
	public String delethouse(int houseid, HttpServletRequest request) 
		if (houseid >= 0) 
			int id = leaseinformationService.queryID(houseid).get(0).getId();

			leaseinformationService.deleteByPrimaryKey(houseid);
			leaseimgService.deleteByPrimaryKey(id);
		
		return "redirect:pagingselecthouse.do";
	

	/*
	 * 推荐房屋列表
	 */
	@RequestMapping("/recommendlist")
	public String recommendlist(Model model, @RequestParam(value = "pn", defaultValue = "1") Integer pn,
			@RequestParam(required = false, defaultValue = "6") Integer pageSize) 
		PageHelper.startPage(pn, 10);
		List<leaseinformation> leaseinformation = leaseinformationService.selectAllLeasable();
		PageInfo<leaseinformation> p = new PageInfo<leaseinformation>(leaseinformation, 3);
		model.addAttribute("p", p);
		return "recommendhouse";
	

	/**
	 * 修改推荐信息
	 */
	@RequestMapping("/updaterecommend")
	public String updatehouse(Integer houseid) 
		leaseinformation house = leaseinformationService.queryID(houseid).get(0);
		if (house.getHouserecommend().equals("未推荐")) 
			house.setHouserecommend("已推荐");
		 else 
			house.setHouserecommend("未推荐");
		
		leaseinformationService.updateByPrimaryKey(house);
		return "redirect:recommendlist.do?";
	

	/**
	 * 分页查询日程信息
	 */
	@RequestMapping("/schedulelist")
	public String mydailylifelist(@RequestParam(value = "pn", defaultValue = "1") Integer pn, Model model) 
		// 引用PageHelper分页插件
		PageHelper.startPage(pn, 10);
		List<mydailylife> mydailylifes = mydailylifeService.selectAll();
		PageInfo<mydailylife> page = new PageInfo<mydailylife>(mydailylifes, 3);
		model.addAttribute("p", page);
		return "schedulelist";
	

	/**
	 * 添加日程
	 */
	@RequestMapping("/addmydailylife")
	public String mydailylifeadd(mydailylife mydailylife) 
		mydailylifeService.insert(mydailylife);
		return "redirect:/admin/schedulelist.do";
	

	/**
	 * 修改日程
	 */
	@RequestMapping("/updatemydailylife")
	public String mydailylifeupdate1(Integer id, HttpServletRequest request) 
		mydailylife mydailylife = mydailylifeService.selectByPrimaryKey(id);
		request.setAttribute("mydailylife", mydailylife);
		return "scheduleupdate";
	

	@RequestMapping("/toupdate")
	public String mydailylifeupdate2(mydailylife mydailylife) 
		mydailylifeService.updateByPrimaryKey(mydailylife);
		return "redirect:/admin/schedulelist.do";
	

	/**
	 * 删除日程
	 */
	@RequestMapping("/delmydailylife")
	public String mydailylifedel(Integer id) 
		mydailylifeService.deleteByPrimaryKey(id);
		return "redirect:/admin/schedulelist.do";
	

	// 报障
	/**
	 * 查询待处理报障
	 */
	@RequestMapping("/Adminselectrepairwait")
	public String selectrepairwait(String state, @RequestParam(value = "pn", defaultValue = "1") Integer pn,
			Model model) 
		state = "未处理";
		// 引用PageHelper分页插件
		PageHelper.startPage(pn, 10);
		List<fault> faultlist = faultService.AdminSelectStateAll(state);
		PageInfo<fault> page = new PageInfo<fault>(faultlist, 3);
		model.addAttribute("p", page);
		return "repairwait";
	

	/**
	 * 已完成全部报障
	 */
	@RequestMapping("/Adminselectrepairdone")
	public String selectrepairdone(String state, @RequestParam(value = "pn", defaultValue = "1") Integer pn,
			Model model) 
		state = "已处理";
		// 引用PageHelper分页插件
		PageHelper.startPage(pn, 10);
		List<fault> faultdone = faultService.AdminSelectStateAll(state);
		PageInfo<fault> page = new PageInfo<fault>(faultdone, 3);
		model.addAttribute("p", page);
		return "repairdone";
	

	/**
	 * 报障状态修改
	 */
	@RequestMapping("/adminrepairwait")
	public String updaterepairwait(Integer id) 
		fault fault = faultService.selectByPrimaryKey(id);
		String fhouseid = fault.getFhouseid();
		String fhouseaddress = fault.getFhouseaddress();
		Double fprice = fault.getFprice();
		Date fdate = fault.getFdate();
		String fcontent = fault.getFcontent();
		String fusername = fault.getFusername();
		String fuserid = fault.getFuserid();
		String fuserphone = fault.getFuserphone();
		String fstate = "已处理";
		fault f = new fault(fhouseid, fhouseaddress, fprice, fdate, fcontent, fusername, fuserid, fuserphone, fstate,
				id);
		faultService.updateByPrimaryKey(f);
		return "redirect:/admin/Adminselectrepairwait.do";
	

	/**
	 * 报障删除
	 */
	@RequestMapping("/adminrepairdone")
	public String delrepair(Integer id) 
		faultService.deleteByPrimaryKey(id);
		return "redirect:/admin/Adminselectrepairdone.do";
	

	/**
	 * 搜索报障
	 */
	@RequestMapping("/repairselect")
	public String repairselect(QueryVo vo, @RequestParam(value = "pn", defaultValue = "1") Integer pn, Model model) 
		// 引用PageHelper分页插件
		PageHelper.startPage(pn, 10);
		List<fault> faultdone = faultService.repairselect(vo);
		for (fault temp : faultdone) 
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
			String date = sdf.format(temp.getFdate());
			temp.setFdatetemp(date);
		
		PageInfo<fault> page = new PageInfo<fault>(faultdone, 3);
		model.addAttribute("p", page);
		model.addAttribute("vo", vo);
		return "repairdone";
	

	/**
	 * 我要收租
	 */
	@RequestMapping("/adminrentshou")
	public String rentshou(@RequestParam(value = "pn", defaultValue = "1") Integer pn, Model model) 
		// 引用PageHelper分页插件
		PageHelper.startPage(pn, 10);
		List<userlist> userlists = userlistService.rentSelectAll();
		PageInfo<userlist> page = new PageInfo<userlist>(userlists, 3);
		model.addAttribute("rent", page);
		return "rentshou";
	

	/**
	 * 获取收租信息
	 */
	@RequestMapping("/adminrentselect")
	public String rentadd(String housecall, Model model) 
		userlist userlist = userlistService.selectUserCallWith(housecall);
		model.addAttribute("addrent", userlist);
		return "rentadd";
	

	/**
	 * 添加代缴租金
	 */
	@RequestMapping("/adminrentadd")
	public String rentaddwait(rentcollection rentcollection) 
		rentcollectionService.insert(rentcollection);
		return "redirect:/admin/adminrentshou.do";
	

	/**
	 * 代缴租金
	 */
	@RequestMapping("/adminrentwait")
	public String rentwait(String rcstate, @RequestParam(value = "pn", defaultValue = "1") Integer pn, Model model) 
		rcstate = "未缴纳";
		// 引用PageHelper分页插件
		PageHelper.startPage(pn, 10);
		List<rentcollection> rentlists = rentcollectionService.selectPaidStateAll(rcstate);
		PageInfo<rentcollection> page = new PageInfo<rentcollection>(rentlists, 3);
		model.addAttribute("rent", page);
		return "rentwait";
	

	/**
	 * 删除租金缴纳记录
	 */
	@RequestMapping("/admindelrent")
	public String delrent(Integer id) 
		rentcollectionService.deleteByPrimaryKey(id);
		return "redirect:/admin/adminselectPaidAll.do";
	

	/**
	 * 搜索查询
	 */
	@RequestMapping("/adminselectPaidAll")
	public String adminselectPaidAll(QueryVo vo, @RequestParam(value = "pn", defaultValue = "1") Integer pn,
			Model model) 
		// 引用PageHelper分页插件
		PageHelper.startPage(pn, 10);
		List<rentcollection> rentlists = rentcollectionService.selectPaidAll(vo);
		for (rentcollection temp : rentlists) 
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
			String date = sdf.format(temp.getRcdate());
			temp.setRcdatetemp(date);
			if(temp.getRcpaiddate()!=null) 
				String Rcpaiddate = sdf.format(temp.getRcpaiddate());
				temp.setRcpaiddatetemp(Rcpaiddate);
			
			
		
		PageInfo<rentcollection> page = new PageInfo<rentcollection>(rentlists, 3);
		model.addAttribute("rent", page);
		model.addAttribute("vo", vo);
		return "rentdone";
	

	/**
	 * 查看合同
	 */
	@RequestMapping("/viewcontractadmin")
	public ModelAndView viewcontractadmin(String username, String userid, String houseaddress,
			String housestartingdatetemp, String houseclosingdatetemp, String housemoney, String userphone,
			String houseid, HttpServletRequest request, HttpSession session) 
		ModelAndView mav = new ModelAndView("rentinglist");
		String arraytemp[] =  username, userid, houseaddress, housestartingdatetemp, houseclosingdatetemp, housemoney,
				userphone, houseid ;
		System.out.println(Arrays.toString(arraytemp));
		String temp = arraytemp[7] + "pdf.pdf";
		File filetemp = new File("C://Users/Rain/Desktop/ssm_leaseOfHouses/WebContent/contract/pdf/" + temp);
		if (!filetemp.exists()) 
			System.out.println(new DocumentConversion().DocumentGeneration(arraytemp));
			new DocumentConversion().PdfGeneration(arraytemp[7]);
			filetemp = new File("C://Users/Rain/Desktop/ssm_leaseOfHouses/WebContent/contract/pdf/" + temp);
		

		String pdf = filetemp.getName();
		// 放入转发参数
		mav.addObject("pdftemp", pdf);

		return mav;
	

房屋信息控制器:

/**
 * 房屋信息控制器
 * @author yy
 *
 */
 
@Controller
@RequestMapping("/leaseinformationmvc")
public class LeaseinformationController 
    @Autowired
    LeaseinformationService leaseinformationService;
        
    @RequestMapping("/details")
    public ModelAndView listCategory(@RequestParam int id)
        ModelAndView mav = new ModelAndView("details");
        List<leaseinformation> cs= leaseinformationService.allANDimg1(id);
        for (leaseinformation leaseinformation : cs) 
			System.out.println(leaseinformation.getLeaseimg().getImgroute());
		
        // 放入转发参数
        mav.addObject("cs", cs);
        return mav;
    
 

个人中心控制器:

/**
 * 个人中心控制器
 * 
 * @author yy
 *
 */
@Controller
@RequestMapping("/personacentermvc")
public class PersonacenterController 

	@Resource
	private RentwithdrawnService rentwithdrawnService;

	@Resource
	private UserlistService userlistService;

	@Resource
	private LeaseinformationService leaseinformationService;

	@Resource
	private CheckoutapplicationService checkoutapplicationService;

	@Resource
	private RentcollectionService rentcollectionService;

	@Resource
	private FaultService faultService;

	@Resource
	private HeadPortraitImgService headPortraitImgService;

	/**
	 * 个人信息切换页面
	 */
	@RequestMapping("/personal_switch")
	public void temp(String txt, HttpServletResponse response) throws IOException 
		response.setCharacterEncoding("UTF-8");
		switch (txt) 
		case "租赁信息":
			response.getWriter().print("/jsp/personalInformation/information.jsp");
			break;
		case "我的申请":
			response.getWriter().print("/jsp/personalInformation/myapplication.jsp");
			break;
		case "代缴租金":
			response.getWriter().print("/jsp/personalInformation/rentpayment.jsp");
			break;
		case "报障模块":
			response.getWriter().print("/jsp/personalInformation/faultreportingmodule.jsp");
			break;
		case "其他操作":
			response.getWriter().print("/jsp/personalInformation/otheroperations.jsp");
			break;
		
	

	/**
	 * 我的租赁分页查询
	 */
	@RequestMapping("/myRentalList")
	@ResponseBody
	public Msg myRentalList(@RequestParam(value = "pn") Integer pn, HttpSession session) 
		// 查询所有数据
		userlist user = userlistService.selectUserCall((String) session.getAttribute("user"));
		// 设置分页传输
		PageHelper.startPage(pn, 8);
		List<userlist> leaseuser = userlistService.selectUserNameWith(user.getUsername());
		// 使用PageInFo封装查询结果
		PageInfo<userlist> pageInfo = new PageInfo<userlist>(leaseuser, 3);

		return Msg.success().add("pageInfo", pageInfo);
	

	/**
	 * 已退租赁记录分页查询
	 */
	@RequestMapping("/refundedLeaseList")
	@ResponseBody
	public Msg refundedLeaseList(@RequestParam(value = "pn") Integer pn, HttpSession session) 
		// 查询所有数据
		userlist user = userlistService.selectUserCall((String) session.getAttribute("user"));
		// 设置分页传输
		PageHelper.startPage(pn, 8);
		List<rentwithdrawn> list = rentwithdrawnService.queryAllStateName("已退租", "", user.getUsername());

		// 使用PageInFo封装查询结果
		PageInfo<rentwithdrawn> pageInfo = new PageInfo<rentwithdrawn>(list, 3);

		return Msg.success().add("pageInfo", pageInfo);
	

	/**
	 * 申请状态记录分页查询
	 */
	@RequestMapping("/applicationAtatusList")
	@ResponseBody
	public Msg applicationAtatusList(@RequestParam(value = "pn") Integer pn, boolean flag, HttpSession session) 
		List<checkoutapplication> list = null;
		userlist user = userlistService.selectUserCall((String) session.getAttribute("user"));
		// 设置分页传输
		PageHelper.startPage(pn, 8);
		// 查询所有数据
		if (flag) 
			list = checkoutapplicationService.selectStateAll("看房申请中", "退房申请中", "", user.getUsername());
		 else 
			list = checkoutapplicationService.selectStateAll("已拒绝", "已同意", "已取消", user.getUsername());
		

		// 使用PageInFo封装查询结果
		PageInfo<checkoutapplication> pageInfo = new PageInfo<checkoutapplication>(list, 3);

		return Msg.success().add("pageInfo", pageInfo);
	

	/**
	 * 代缴租金分页查询
	 */
	@RequestMapping("/rentpaymentList")
	@ResponseBody
	public Msg rentpaymentList(@RequestParam(value = "pn") Integer pn, String state, HttpSession session) 
		userlist user = userlistService.selectUserCall((String) session.getAttribute("user"));
		// 设置分页传输
		PageHelper.startPage(pn, 8);
		List<rentcollection> list = rentcollectionService.queryPaidStateAll(state, user.getUsername());
		// 使用PageInFo封装查询结果
		PageInfo<rentcollection> pageInfo = new PageInfo<rentcollection>(list, 3);

		return Msg.success().add("pageInfo", pageInfo);
	

	/**
	 * 缴纳租金
	 */
	@RequestMapping("/payrentmvc")
	public ModelAndView payrentmvc(String rchousemoney,Integer rcid,String token,HttpServletRequest request,HttpSession session) 
		ModelAndView mav = new ModelAndView("personacenter");
		//令牌验证
		if(!new Koken().kokenid(request, session)) 
			return mav;	
		
		Warning news = rentcollectionService.updateState(rcid);
		System.out.println(news.getWarningContent());
		// 放入转发参数
		mav.addObject("news", news);
		return mav;
	
	
	/**
	 * 已缴纳租金删除记录
	 */
	@RequestMapping("/paidrent")
	public ModelAndView paidrent(Integer rcid,HttpServletRequest request,HttpSession session) 
		ModelAndView mav = new ModelAndView("personacenter");
		//令牌验证
		if(!new Koken().kokenid(request, session)) 
			return mav;	
		
		Warning news = rentcollectionService.deleteByPrimaryKey(rcid);
		System.out.println(news.getWarningContent());
		// 放入转发参数
		mav.addObject("news", news);
		return mav;
	

	/**
	 * 共缴费费用
	 */
	@RequestMapping("/copaymentfee")
	@ResponseBody
	public Msg copaymentfee(String state, HttpSession session) 
		userlist user = userlistService.selectUserCall((String) session.getAttribute("user"));
		List<rentcollection> list = rentcollectionService.queryPaidStateAll(state, user.getUsername());
		int num = 0;
		for (rentcollection temp : list) 
			num += Float.parseFloat(temp.getRchousemoney());
		
		return Msg.success().add("num", num);
	

	/**
	 * 报障分页查询
	 */
	@RequestMapping("/repairList")
	@ResponseBody
	public Msg repairList(@RequestParam(value = "pn") Integer pn, String str, HttpSession session) 
		// 使用PageInFo封装查询结果
		userlist user = userlistService.selectUserCall((String) session.getAttribute("user"));
		// 设置分页传输
		PageHelper.startPage(pn, 8);
		if (str.equals("我要报障")) 
			List<userlist> leaseuser = userlistService.selectUserNameWith(user.getUsername());
			PageInfo<userlist> pageInfo = new PageInfo<userlist>(leaseuser, 3);
			return Msg.success().add("pageInfo", pageInfo);
		

		List<fault> list = faultService.queryAllState(str, user.getUsername());
		PageInfo<fault> pageInfo = new PageInfo<fault>(list, 3);

		return Msg.success().add("pageInfo", pageInfo);
	

	/**
	 * 报障提交内容
	 * 
	 * @throws ParseException
	 */
	@RequestMapping("/contentofthereport")
	public ModelAndView contentofthereport(String date, String housecall, String contentofthe,String token,HttpServletRequest request,HttpSession session) throws ParseException 
		ModelAndView mav = new ModelAndView("personacenter");
		//令牌验证
		if(!new Koken().kokenid(request, session)) 
			return mav;	
		
		userlist user = userlistService.selectUserCallWith(housecall);
		fault fault = new fault();
		fault.setFhouseid(housecall);
		fault.setFhouseaddress(user.getLeaseinformation().getHouseaddress());
		fault.setFprice(Double.parseDouble(user.getLeaseinformation().getHousemoney()));
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
		Date t1 = sdf.parse(date);
		fault.setFdate(t1);
		fault.setFdatetemp(date);
		fault.setFcontent(contentofthe);
		fault.setFusername(user.getUsername());
		fault.setFuserid(user.getUserid());
		fault.setFuserphone(user.getUserphone());
		fault.setFstate("未处理");
		Warning news = faultService.insert(fault);
		System.out.println(news.getWarningContent());
		// 放入转发参数
		mav.addObject("news", news);
		return mav;
	

	/**
	 * 报障删除记录
	 */
	@RequestMapping("/deleterepair")
	public ModelAndView deleterepair(Integer fid,String token,HttpServletRequest request,HttpSession session) 
		ModelAndView mav = new ModelAndView("personacenter");
		//令牌验证
		if(!new Koken().kokenid(request, session)) 
			return mav;	
		
		Warning news = faultService.deleteByPrimaryKey(fid);
		System.out.println(news.getWarningContent());
		// 放入转发参数
		mav.addObject("news", news);
		return mav;
	

	/**
	 * 头像上传 用户真实姓名,身份证号,手机号上传
	 * 
	 * @throws FileNotFoundException
	 */
	@RequestMapping("/file")
	public ModelAndView file(String username,String userid,String userphone,HttpServletRequest request,HttpSession session,@RequestParam MultipartFile file) throws Exception 
		System.out.println(username);
		
		ModelAndView mav = new ModelAndView("personacenter");
		userlist usere=userlistService.selectUserName(username);
		if (usere==null) 
			session.setAttribute("modifyerro",null);
			System.out.println("可修改");
		else 
			Warning news=new Warning(2, "修改失败!该姓名用户已注册");
			mav.addObject("news", news);
			return mav;
		
		
		//令牌验证
		if(!new Koken().kokenid(request, session)) 
			return mav;	
		
		// 获取文件的名称
		String fName = file.getOriginalFilename();
		System.out.println(fName);
		if (!fName.equals("")) 
			// 保存图片的目录
			String path = "C://Users/Rain/Desktop/ssm_leaseOfHouses/WebContent/headPortraitImg";
			File filepath = new File(path);
			// 如果目录不存在,创建
			if (!filepath.exists()) 
				filepath.mkdir();
			

			File f = new File(path, fName);

			// 更改用户头像
			headportraitimg headportraitimg = new headportraitimg();
			String user = (String) session.getAttribute("user");
			headportraitimg.setHeadportraitimgusername(user);
			headportraitimg.setHeadportraitimgaddress(fName);
			// 图片路径上传到数据库
			headPortraitImgService.updatauserimg(headportraitimg);
			// 更换头像
			session.setAttribute("headportraitimg", headportraitimg.getHeadportraitimgaddress());
			// 上传文件
			file.transferTo(f);
		

		userlist user = userlistService.selectUserCall((String) session.getAttribute("user"));
		//暂时储存需要修改的真实姓名
		String rcusernametemp=user.getUsername();
		//判断,如有真实姓名联表修改,则添加
		if(user.getUsername()==null||"".equals(user.getUsername())) 
			// 上传真实姓名,身份证,手机号
			userlist userlist = new userlist();
			userlist.setUsercall((String) session.getAttribute("user"));
			userlist.setUsername(username);
			userlist.setUserid(userid);
			userlist.setUserphone(userphone);
			Warning news = userlistService.updateByPrimaryCall(userlist);
			System.out.println(news.getWarningContent());
			// 放入转发参数
			mav.addObject("news", news);
		else 
			// 修改真实姓名,身份证,手机号
			userlist userlist = new userlist();
			userlist.setUsername(username);
			userlist.setUserid(userid);
			userlist.setUserphone(userphone);
			userlist.setUsernametemp(user.getUsername());
			Warning news = userlistService.updateJointTableName(userlist);
			//修改租金真实姓名
			System.out.println(rentcollectionService.updateUserName(username,rcusernametemp));
			System.out.println(news.getWarningContent());
			// 放入转发参数
			mav.addObject("news", news);
		

		return mav;
	

	/**
	 * 删除已退租记录
	 */
	@RequestMapping("/deleterentrefund")
	public ModelAndView deleterentrefund(Integer rwid,String token,HttpServletRequest request,HttpSession session) 
		ModelAndView mav = new ModelAndView("personacenter");
		//令牌验证
		if(!new Koken().kokenid(request, session)) 
			return mav;	
		
		Warning news = rentwithdrawnService.deleteByPrimaryKey(rwid);
		System.out.println(news.getWarningContent());
		// 放入转发参数
		mav.addObject("news", news);
		return mav;
	

	/**
	 * 查看合同
	 */
	@RequestMapping("/viewcontract")
	public ModelAndView viewcontract(String username, String userid, String houseaddress, String housestartingdatetemp,
			String houseclosingdatetemp, String housemoney, String userphone, String houseid,HttpServletRequest request,HttpSession session) 
		ModelAndView mav = new ModelAndView("personacenter");
		String arraytemp[] =  username, userid, houseaddress, housestartingdatetemp, houseclosingdatetemp, housemoney,
				userphone, houseid ;
		String temp = (arraytemp[0]+arraytemp[7]) + "pdf.pdf";
		File filetemp = new File("C://Users/Rain/Desktop/ssm_leaseOfHouses/WebContent/contract/pdf/" + temp);
		if (!filetemp.exists()) 
//			System.out.println(new DocumentConversion().DocumentGeneration(arraytemp));
			new DocumentConversion().PdfGeneration((arraytemp[0]+arraytemp[7]));
			filetemp = new File("C://Users/Rain/Desktop/ssm_leaseOfHouses/WebContent/contract/pdf/" + temp);
		
		
		String pdf = filetemp.getName();
		// 放入转发参数
		mav.addObject("pdftemp", pdf);

		return mav;
	

	/**
	 * 终止合同
	 */
	@RequestMapping("/termination")
	public ModelAndView termination(String call,String token,HttpServletRequest request,HttpSession session) 
		ModelAndView mav = new ModelAndView("personacenter");
		//令牌验证
		if(!new Koken().kokenid(request, session)) 
			return mav;	
		
		userlist leaseuser = userlistService.selectUserCallWith(call);
		Warning news = checkoutapplicationService.insert(leaseuser);
		// 放入转发参数
		mav.addObject("news", news);
		return mav;
	

	/**
	 * 终止申请
	 */
	@RequestMapping("/stopapplying")
	public ModelAndView stopapplying(String call,String token,HttpServletRequest request,HttpSession session) 
		ModelAndView mav = new ModelAndView("personacenter");
		//令牌验证
		if(!new Koken().kokenid(request, session)) 
			return mav;	
		
		Warning news = checkoutapplicationService.updateCallState("已取消", call);
		System.out.println(news.getWarningContent());
		// 放入转发参数
		mav.addObject("news", news);
		return mav;
	

	/**
	 * 删除申请记录
	 */
	@RequestMapping("/deleterecord")
	public ModelAndView deleterecord(Integer coaid,String token,HttpServletRequest request,HttpSession session) 
		ModelAndView mav = new ModelAndView("personacenter");
		//令牌验证
		if(!new Koken().kokenid(request, session)) 
			return mav;	
		
		Warning news = checkoutapplicationService.deleteByPrimaryKey(coaid);
		System.out.println(news.getWarningContent());
		// 放入转发参数
		mav.addObject("news", news);
		return mav;
	

以上是关于Java项目:房屋租赁管理系统(java+SSM+Layui+Maven+Mysql+Jsp)的主要内容,如果未能解决你的问题,请参考以下文章

java+ssm+mysql房屋租赁系统.rar(项目文档+项目源码+系统实现+视频讲解+配置说明)

Java项目:房屋租赁系统设计和实现(java+ssm+mysql+spring+jsp)

Java项目:酒店房屋预定系统(java+SSM+jsp+mysql+maven)

Java项目:酒店房屋预定系统(java+SSM+jsp+mysql+maven)

Java项目:汽车出租租赁系统(java+jsp+SSM+maven+mysql)

计算机毕业设计之java+ssm公廉租房维保系统-房屋维修系统