基于javaweb和mysql的ssm房屋租赁管理系统(java+ssm+layui+mysql+jsp)
·
基于javaweb和mysql的ssm房屋租赁管理系统(java+ssm+layui+mysql+jsp)
私信源码获取及调试交流
私信源码获取及调试交流
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb的SSM房屋租赁管理系统(java+ssm+layui+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("/alipaymvc")
public class PayController {
@Resource
private RentcollectionService rentcollectionService;
@Resource
private HeadPortraitImgService headPortraitImgService;
/**
* 回调并缴纳租金
*/
@RequestMapping(value = "/returnUrl", method = RequestMethod.GET)
public ModelAndView returnUrl(HttpServletRequest request, HttpServletResponse response,HttpSession session) throws UnsupportedEncodingException, AlipayApiException {
session.setAttribute("user", AlipayConfig.usercall);
headportraitimg headportraitimg = headPortraitImgService.selectheadportrait(AlipayConfig.usercall);
if (headportraitimg.getHeadportraitimgaddress() != null) {
session.setAttribute("headportraitimg", headportraitimg.getHeadportraitimgaddress());
}
ModelAndView mav = new ModelAndView("redirect:/jsp/personacenter.jsp");
// 获取支付宝GET过来反馈信息
Map<String, String> params = new HashMap<String, String>();
Map<String, String[]> requestParams = request.getParameterMap();
for (Iterator<String> iter = requestParams.keySet().iterator(); iter.hasNext();) {
String name = (String) iter.next();
String[] values = (String[]) requestParams.get(name);
String valueStr = "";
for (int i = 0; i < values.length; i++) {
valueStr = (i == values.length - 1) ? valueStr + values[i] : valueStr + values[i] + ",";
}
// 引用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);
/**
* 回调并缴纳租金
*/
@RequestMapping(value = "/returnUrl", method = RequestMethod.GET)
public ModelAndView returnUrl(HttpServletRequest request, HttpServletResponse response,HttpSession session) throws UnsupportedEncodingException, AlipayApiException {
session.setAttribute("user", AlipayConfig.usercall);
headportraitimg headportraitimg = headPortraitImgService.selectheadportrait(AlipayConfig.usercall);
if (headportraitimg.getHeadportraitimgaddress() != null) {
session.setAttribute("headportraitimg", headportraitimg.getHeadportraitimgaddress());
}
ModelAndView mav = new ModelAndView("redirect:/jsp/personacenter.jsp");
// 获取支付宝GET过来反馈信息
Map<String, String> params = new HashMap<String, String>();
Map<String, String[]> requestParams = request.getParameterMap();
for (Iterator<String> iter = requestParams.keySet().iterator(); iter.hasNext();) {
String name = (String) iter.next();
String[] values = (String[]) requestParams.get(name);
String valueStr = "";
for (int i = 0; i < values.length; i++) {
valueStr = (i == values.length - 1) ? valueStr + values[i] : valueStr + values[i] + ",";
}
// 乱码解决,这段代码在出现乱码时使用
valueStr = new String(valueStr.getBytes("utf-8"), "utf-8");
params.put(name, valueStr);
}
System.out.println(params);//查看参数都有哪些
boolean signVerified = AlipaySignature.rsaCheckV1(params, AlipayConfig.alipay_public_key, AlipayConfig.charset, AlipayConfig.sign_type); // 调用SDK验证签名
//验证签名通过
if(signVerified){
// 商户订单号
String out_trade_no = new String(request.getParameter("out_trade_no").getBytes("ISO-8859-1"), "UTF-8");
// 支付宝交易号
String trade_no = new String(request.getParameter("trade_no").getBytes("ISO-8859-1"), "UTF-8");
// 付款金额
String total_amount = new String(request.getParameter("total_amount").getBytes("ISO-8859-1"), "UTF-8");
@Controller
@RequestMapping("/admin")
public class Adminfunctioncontroller {
@Resource
private RentwithdrawnService rentwithdrawnService;
@Resource
private LeaseinformationService leaseinformationService;
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";
}
/**
* 我要收租
*/
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";
}
/**
String temp=checkoutapplicationService.insertApply(coa);
mav.addObject("apply", temp);
}
return mav;
}
}
@Controller
@RequestMapping("/alipaymvc")
public class PayController {
@Resource
private RentcollectionService rentcollectionService;
@Resource
private HeadPortraitImgService headPortraitImgService;
/**
}
/**
* 删除已退租记录
*/
@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://cnqf/contract/pdf/" + temp);
if (!filetemp.exists()) {
// System.out.println(new DocumentConversion().DocumentGeneration(arraytemp));
new DocumentConversion().PdfGeneration((arraytemp[0]+arraytemp[7]));
filetemp = new File("C://cnqf/contract/pdf/" + temp);
}
String pdf = filetemp.getName();
// 放入转发参数
mav.addObject("pdftemp", pdf);
return mav;
}
/**
* 终止合同
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);
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");
String result = "";
Random random = new Random();
for (int i = 0; i < 4; i++) {
int index = random.nextInt(ch.length());
char c = ch.charAt(index);
result += c;
}
return result;
}
public static void main(String[] args) {
try {
Code.getNum("18775756179");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
/**
* 房屋信息控制器
*
*/
@Controller
@RequestMapping("/leaseinformationmvc")
public class LeaseinformationController {
@Autowired
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) {
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";
}
return mav;
}
}
/**
* 用户控制器
*
*
*/
@Controller
@RequestMapping("/userlistmvc")
public class UserListController {
private static final long serialVersionUID = -884689940866074733L;
@Resource
System.out.println(Arrays.toString(arraytemp));
String temp = arraytemp[7] + "pdf.pdf";
File filetemp = new File("C://cnqf/contract/pdf/" + temp);
if (!filetemp.exists()) {
System.out.println(new DocumentConversion().DocumentGeneration(arraytemp));
new DocumentConversion().PdfGeneration(arraytemp[7]);
filetemp = new File("C://cnqf/contract/pdf/" + temp);
}
String pdf = filetemp.getName();
// 放入转发参数
mav.addObject("pdftemp", pdf);
return mav;
}
}
headportraitimg headportraitimg = headPortraitImgService.selectheadportrait(AlipayConfig.usercall);
if (headportraitimg.getHeadportraitimgaddress() != null) {
session.setAttribute("headportraitimg", headportraitimg.getHeadportraitimgaddress());
}
ModelAndView mav = new ModelAndView("redirect:/jsp/personacenter.jsp");
// 获取支付宝GET过来反馈信息
Map<String, String> params = new HashMap<String, String>();
Map<String, String[]> requestParams = request.getParameterMap();
for (Iterator<String> iter = requestParams.keySet().iterator(); iter.hasNext();) {
String name = (String) iter.next();
String[] values = (String[]) requestParams.get(name);
String valueStr = "";
for (int i = 0; i < values.length; i++) {
valueStr = (i == values.length - 1) ? valueStr + values[i] : valueStr + values[i] + ",";
}
// 乱码解决,这段代码在出现乱码时使用
valueStr = new String(valueStr.getBytes("utf-8"), "utf-8");
params.put(name, valueStr);
}
System.out.println(params);//查看参数都有哪些
boolean signVerified = AlipaySignature.rsaCheckV1(params, AlipayConfig.alipay_public_key, AlipayConfig.charset, AlipayConfig.sign_type); // 调用SDK验证签名
//验证签名通过
if(signVerified){
// 商户订单号
String out_trade_no = new String(request.getParameter("out_trade_no").getBytes("ISO-8859-1"), "UTF-8");
// 支付宝交易号
String trade_no = new String(request.getParameter("trade_no").getBytes("ISO-8859-1"), "UTF-8");
// 付款金额
String total_amount = new String(request.getParameter("total_amount").getBytes("ISO-8859-1"), "UTF-8");
System.out.println("商户订单号="+out_trade_no);
System.out.println("支付宝交易号="+trade_no);
System.out.println("付款金额="+total_amount);
/**
* 缴纳租金
*/
Warning news = rentcollectionService.updateState(Integer.parseInt(AlipayConfig.rcid));
* 删除已退租记录
*/
@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://cnqf/contract/pdf/" + temp);
if (!filetemp.exists()) {
// System.out.println(new DocumentConversion().DocumentGeneration(arraytemp));
new DocumentConversion().PdfGeneration((arraytemp[0]+arraytemp[7]));
filetemp = new File("C://cnqf/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;
// 放入转发参数
mav.addObject("pdftemp", pdf);
return mav;
}
}






更多推荐


所有评论(0)