采用技术
基于SpringBoot房屋租赁管理系统的设计与实现~
开发语言:Java
数据库:MySQL
技术:SpringBoot+MyBatis
工具:IDEA/Ecilpse、Navicat、Maven
页面展示效果
屋主功能实现
租用订单管理
房屋信息管理
保洁管理
用户功能实现
房屋信息
租用订单管理
取消订单管理
管理员功能
屋主管理
房屋信息管理
房屋租赁公告
项目背景
互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。所以各行业,尤其是规模较大的企业和学校等都开始借助互联网和软件工具管理信息,传播信息,共享信息等等,以此可以增强自身实力,提高在同行业当中的竞争能力,并从各种激烈的竞争中获取发展的机会。针对房屋租赁信息管理混乱,出错率高,信息安全性差,劳动强度大,费时费力等问题,经过分析和考虑,在目前的情况下,可以引进一款房屋租赁管理系统这样的现代化管理工具,这个工具就是解决上述问题的最好的解决方案。它不仅可以实时完成信息处理,还缩短房屋租赁信息管理流程,使其系统化和规范化。同时还可以减少工作量,节约房屋租赁信息管理需要的人力和资金。所以房屋租赁管理系统是信息管理环节中不可缺少的工具,它对管理者来说非常重要。
研究意义
信息种类变得越来越多,信息的容量也变得越来越大,这就是信息时代的标志。近些年,计算机科学发展得也越来越快,而且软件开发技术也越来越成熟,因此,在生活中的各个领域,只要存在信息管理,几乎都有计算机的影子,可以说很多行业都采用计算机的方式管理信息。信息计算机化处理相比手工操作,有着保密性强,效率高,存储空间大,成本低等诸多优点。针对房屋租赁信息管理,采用房屋租赁管理系统可以有效管理,使信息管理能够更加科学和规范。
总之,在实际中使用房屋租赁管理系统,其意义如下:
- 第一点:房屋租赁管理系统的实际运用,可以帮助管理人员在短时间内完成信息处理工作;
- 第二点:通过系统页面的合理排版布局,可以更加直观的展示系统的内容,并且使用者可以随时阅读页面信息,随时操作系统提供的功能;
- 第三点:可以实现信息管理计算机化;
- 第四点:可以降低信息管理成本;
代码示例
@RestController
@RequestMapping("/baojieguanli")
public class BaojieguanliController {
@Autowired
private BaojieguanliService baojieguanliService;
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,BaojieguanliEntity baojieguanli,
HttpServletRequest request){
String tableName = request.getSession().getAttribute("tableName").toString();
if(tableName.equals("wuzhu")) {
baojieguanli.setWuzhuzhanghao((String)request.getSession().getAttribute("username"));
}
EntityWrapper<BaojieguanliEntity> ew = new EntityWrapper<BaojieguanliEntity>();
PageUtils page = baojieguanliService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, baojieguanli), params), params));
return R.ok().put("data", page);
}
/**
* 前端列表
*/
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,BaojieguanliEntity baojieguanli,
HttpServletRequest request){
EntityWrapper<BaojieguanliEntity> ew = new EntityWrapper<BaojieguanliEntity>();
PageUtils page = baojieguanliService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, baojieguanli), params), params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/lists")
public R list( BaojieguanliEntity baojieguanli){
EntityWrapper<BaojieguanliEntity> ew = new EntityWrapper<BaojieguanliEntity>();
ew.allEq(MPUtil.allEQMapPre( baojieguanli, "baojieguanli"));
return R.ok().put("data", baojieguanliService.selectListView(ew));
}
/**
* 查询
*/
@RequestMapping("/query")
public R query(BaojieguanliEntity baojieguanli){
EntityWrapper< BaojieguanliEntity> ew = new EntityWrapper< BaojieguanliEntity>();
ew.allEq(MPUtil.allEQMapPre( baojieguanli, "baojieguanli"));
BaojieguanliView baojieguanliView = baojieguanliService.selectView(ew);
return R.ok("查询保洁管理成功").put("data", baojieguanliView);
}
/**
* 后端详情
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") Long id){
BaojieguanliEntity baojieguanli = baojieguanliService.selectById(id);
return R.ok().put("data", baojieguanli);
}
/**
* 前端详情
*/
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") Long id){
BaojieguanliEntity baojieguanli = baojieguanliService.selectById(id);
return R.ok().put("data", baojieguanli);
}
/**
* 后端保存
*/
@RequestMapping("/save")
public R save(@RequestBody BaojieguanliEntity baojieguanli, HttpServletRequest request){
baojieguanli.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(baojieguanli);
baojieguanliService.insert(baojieguanli);
return R.ok();
}
/**
* 前端保存
*/
@RequestMapping("/add")
public R add(@RequestBody BaojieguanliEntity baojieguanli, HttpServletRequest request){
baojieguanli.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
//ValidatorUtils.validateEntity(baojieguanli);
baojieguanliService.insert(baojieguanli);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
public R update(@RequestBody BaojieguanliEntity baojieguanli, HttpServletRequest request){
//ValidatorUtils.validateEntity(baojieguanli);
baojieguanliService.updateById(baojieguanli);//全部更新
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
baojieguanliService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
/**
* 提醒接口
*/
@RequestMapping("/remind/{columnName}/{type}")
public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,
@PathVariable("type") String type,@RequestParam Map<String, Object> map) {
map.put("column", columnName);
map.put("type", type);
if(type.equals("2")) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
Date remindStartDate = null;
Date remindEndDate = null;
if(map.get("remindstart")!=null) {
Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindStart);
remindStartDate = c.getTime();
map.put("remindstart", sdf.format(remindStartDate));
}
if(map.get("remindend")!=null) {
Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindEnd);
remindEndDate = c.getTime();
map.put("remindend", sdf.format(remindEndDate));
}
}
Wrapper<BaojieguanliEntity> wrapper = new EntityWrapper<BaojieguanliEntity>();
if(map.get("remindstart")!=null) {
wrapper.ge(columnName, map.get("remindstart"));
}
if(map.get("remindend")!=null) {
wrapper.le(columnName, map.get("remindend"));
}
String tableName = request.getSession().getAttribute("tableName").toString();
if(tableName.equals("wuzhu")) {
wrapper.eq("wuzhuzhanghao", (String)request.getSession().getAttribute("username"));
}
int count = baojieguanliService.selectCount(wrapper);
return R.ok().put("count", count);
}
}
数据库脚本
JAVA毕设帮助,指导,源码分享,调试部署