返回

SSM框架(spring+springmvc+mybatis)+Mysql实现的社区物业管理系统(功能包含分角色,报修管理、抄表管理、车位管理、房屋管理、业主管理、投诉管理、报修统计分析等)

发布时间:2022-11-02 07:37:23 246
# 前端# mysql# 数据库# apache# 数据

(博客目录)

SSM框架(spring+springmvc+mybatis)+Mysql实现的社区物业管理系统

本系统为了解决线下物业管理小区的冗余繁杂的难题,通过整合业主和物业,将平时的业务在线化,节省了物业处理小区问题的效率。 完整源码点击头像查看个人签名

实现功能截图

登录 请添加图片描述 车位费查询 请添加图片描述 物业费查询 请添加图片描述 我的投诉列表 请添加图片描述 管理员首页 请添加图片描述 楼宇管理 请添加图片描述 房屋管理 请添加图片描述 业主管理 请添加图片描述 用户管理 请添加图片描述 车位管理 请添加图片描述 报修统计分析 请添加图片描述 报修信息管理 请添加图片描述 投诉信息管理 请添加图片描述 车位收费管理 请添加图片描述

系统功能

本系统实现了以下功能: 分普通用户和管理员 1、物业费查询 2、我的投诉列表 3、车位费 4、我的报修 管理员端 5、车位管理 6、业主管理 7、用户管理 8、报修信息管理 9、房屋管理 10、车位费管理 11、抄表管理 12、投诉信息管理 13、楼宇管理 14、添加房屋、添加楼宇 15、物业收费管理 等

使用技术

数据库:mysql 开发工具:Idea(Myeclispe、Eclipse也可以) 知识点:SSM+layui

项目结构 请添加图片描述

代码

实体类 Building.java

package com.code2life.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;

/**
 * 

* *

* * @author kappy * @since 2020-11-08 */ @Data @EqualsAndHashCode(callSuper = false) @Accessors(chain = true) @ApiModel(value="Building对象", description="") public class Building implements Serializable { private static final long serialVersionUID = 1L; @TableId(value = "id", type = IdType.AUTO) private Integer id; private String numbers; private String uints; private String remarks; }

Repair.java

package com.code2life.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * 

* *

* * @author kappy * @since 2020-10-28 */ @Data @EqualsAndHashCode(callSuper = false) @Accessors(chain = true) @ApiModel(value="Repair对象", description="") public class Repair implements Serializable { private static final long serialVersionUID = 1L; private Owner owner; private Repairtype type; @TableId(value = "id", type = IdType.AUTO) private Integer id; private String comId; @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd") private Date comDate; @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd") private Date handleDate; private Integer ownerId; private Integer status; private Integer clr; private String remarks; }

DAO层 BuildingMapper.java

package com.code2life.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.code2life.model.Building;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;

import java.util.List;

/**
 * 

* Mapper 接口 *

* * @author kappy * @since 2020-11-08 */ @Component("buildingDao") public interface BuildingMapper extends BaseMapper { List queryBuildAll(@Param("numbers") String numbers); /** * 通过house中building_id查找building */ Building queryBuildById(@Param("buildId") Integer buildId); }

RepairMapper.java

package com.code2life.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.code2life.model.Repair;
import com.code2life.model.Tongji;
import org.springframework.stereotype.Component;

import java.util.List;

/**
 * 

* Mapper 接口 *

* * @author kappy * @since 2020-10-28 */ @Component("repairDao") public interface RepairMapper extends BaseMapper { List queryRepairAll(Repair repair); //统计处理 List queryTongji(); }

service层 BuildingServiceImpl.java

package com.code2life.service.impl;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.code2life.dao.BuildingMapper;
import com.code2life.model.Building;
import com.code2life.service.IBuildingService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 

* 服务实现类 *

* * @author kappy * @since 2020-11-08 */ @Service public class BuildingServiceImpl extends ServiceImpl implements IBuildingService { @Autowired private BuildingMapper buildingDao; @Override public PageInfo findBuildAll(int page, int pageSize, String numbers) { PageHelper.startPage(page,pageSize); List list=buildingDao.queryBuildAll(numbers); return new PageInfo<>(list); } @Override public IPage findListByPage(Integer page, Integer pageCount){ IPage wherePage = new Page<>(page, pageCount); Building where = new Building(); return baseMapper.selectPage(wherePage, Wrappers.query(where)); } @Override public int add(Building building){ return baseMapper.insert(building); } @Override public int delete(Long id){ return baseMapper.deleteById(id); } @Override public int updateData(Building building){ return baseMapper.updateById(building); } @Override public Building findById(Long id){ return baseMapper.selectById(id); } @Override public Building queryBuildById(Integer buildId) { return buildingDao.queryBuildById(buildId); } }

RepairServiceImpl.java

package com.code2life.service.impl;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.code2life.dao.RepairMapper;
import com.code2life.model.Repair;
import com.code2life.model.Tongji;
import com.code2life.service.IRepairService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 

* 服务实现类 *

* * @author kappy * @since 2020-10-28 */ @Service public class RepairServiceImpl extends ServiceImpl implements IRepairService { @Autowired private RepairMapper repairDao; @Override public PageInfo findRepairAll(int page, int pagesize, Repair repair) { PageHelper.startPage(page,pagesize); List list=repairDao.queryRepairAll(repair); PageInfo pageInfo=new PageInfo(list); return pageInfo; } @Override public List queryList() { return repairDao.queryRepairAll(null); } @Override public IPage findListByPage(Integer page, Integer pageCount){ IPage wherePage = new Page<>(page, pageCount); Repair where = new Repair(); return baseMapper.selectPage(wherePage, Wrappers.query(where)); } @Override public int add(Repair repair){ return baseMapper.insert(repair); } @Override public int delete(Long id){ return baseMapper.deleteById(id); } @Override public int updateData(Repair repair){ return baseMapper.updateById(repair); } @Override public Repair findById(Long id){ return baseMapper.selectById(id); } @Override public List queryTongji() { return repairDao.queryTongji(); } }

controller层 BuildingController.java

package com.code2life.controller;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.pagehelper.PageInfo;
import com.code2life.model.Building;
import com.code2life.service.IBuildingService;
import com.code2life.util.JsonObject;
import com.code2life.util.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import java.util.Arrays;
import java.util.List;

/**
 * 

* 前端控制器 *

* * @author kappy * @since 2020-11-08 */ @Api(tags = {""}) @RestController @RequestMapping("/building") public class BuildingController { private Logger log = LoggerFactory.getLogger(getClass()); @Resource private IBuildingService buildingService; @RequestMapping("/queryBuildAll") public JsonObject queryBuildAll(@RequestParam(defaultValue = "1") Integer page, @RequestParam(defaultValue = "15") Integer limit, String numbers){ JsonObject object=new JsonObject(); PageInfo pageInfo= buildingService.findBuildAll(page,limit,numbers); object.setCode(0); object.setMsg("ok"); object.setCount(pageInfo.getTotal()); object.setData(pageInfo.getList()); return object; } @RequestMapping("/queryBuild") public List queryBuild(){ PageInfo pageInfo= buildingService.findBuildAll(1,100,null); return pageInfo.getList(); } @ApiOperation(value = "新增") @RequestMapping("/add") public R add(@RequestBody Building building){ int num= buildingService.add(building); if(num>0){ return R.ok(); }else{ return R.fail("添加失败"); } } @ApiOperation(value = "删除") @RequestMapping("/deleteByIds") public R delete(String ids){ List list= Arrays.asList(ids.split(",")); //遍历遍历进行删除 for(String id:list){ buildingService.delete(Long.parseLong(id)); } return R.ok(); } @ApiOperation(value = "更新") @RequestMapping("/update") public R update(@RequestBody Building building){ int num= buildingService.updateData(building); if(num>0){ return R.ok(); }else{ return R.fail("修改失败"); } } @ApiOperation(value = "查询分页数据") @ApiImplicitParams({ @ApiImplicitParam(name = "page", value = "页码"), @ApiImplicitParam(name = "pageCount", value = "每页条数") }) @GetMapping() public IPage findListByPage(@RequestParam Integer page, @RequestParam Integer pageCount){ return buildingService.findListByPage(page, pageCount); } @ApiOperation(value = "id查询") @GetMapping("{id}") public Building findById(@PathVariable Long id){ return buildingService.findById(id); } }

RepairController.java

package com.code2life.controller;

import com.github.pagehelper.PageInfo;
import com.code2life.model.*;
import com.code2life.service.IOwnerService;
import com.code2life.service.IRepairService;
import com.code2life.service.IRepairtypeService;
import com.code2life.util.JsonObject;
import com.code2life.util.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Arrays;
import java.util.Date;
import java.util.List;

/**
 * 

* 前端控制器 *

* * @author kappy * @since 2020-10-28 */ @Api(tags = {""}) @RestController @RequestMapping("/repair") public class RepairController { private Logger log = LoggerFactory.getLogger(getClass()); @Resource private IRepairService repairService; @Resource private IRepairtypeService repairtypeService; @Resource private IOwnerService ownerService; @RequestMapping("/queryRepairAll") public JsonObject queryRepairAll(Repair repair, @RequestParam(defaultValue = "1") Integer page, @RequestParam(defaultValue = "15") Integer limit){ PageInfo pageInfo=repairService.findRepairAll(page,limit,repair); return new JsonObject(0,"ok",pageInfo.getTotal(),pageInfo.getList()); } @RequestMapping("/queryRepairAll2") public JsonObject queryRepairAll2(Repair repair, HttpServletRequest request, @RequestParam(defaultValue = "1") Integer page, @RequestParam(defaultValue = "15") Integer limit){ //获取当前得登录用户 Userinfo userinfo= (Userinfo) request.getSession().getAttribute("user"); String username=userinfo.getUsername(); //根据username获取登录账号得业主id Owner owner=ownerService.queryOwnerByName(username); repair.setOwnerId(owner.getId()); PageInfo pageInfo=repairService.findRepairAll(page,limit,repair); return new JsonObject(0,"ok",pageInfo.getTotal(),pageInfo.getList()); } @RequestMapping("/queryAll") public List queryAll(){ return repairtypeService.findList(); } @RequestMapping("/deleteByIds") public R deleteByIds(String ids){ List list= Arrays.asList(ids.split(",")); for(String id:list){ repairService.delete(Long.parseLong(id)); } return R.ok(); } @ApiOperation(value = "新增") @RequestMapping("/add") public R add(@RequestBody Repair repair,HttpServletRequest request) { System.out.println("-------111--------"); System.out.println(repair); System.out.println("---------------"); //获取当前得登录用户 Userinfo userinfo= (Userinfo) request.getSession().getAttribute("user"); String username=userinfo.getUsername(); //根据username获取登录账号得业主id Owner owner=ownerService.queryOwnerByName(username); repair.setOwnerId(owner.getId()); repair.setStatus(0); repair.setComDate(new Date()); System.out.println("-------222--------"); System.out.println(repair); System.out.println("---------------"); int num=repairService.add(repair); if(num>0){ return R.ok(); } return R.fail("新增失败"); } @ApiOperation(value = "更新") @RequestMapping("/update") public R update(Integer id){ Repair repair=new Repair(); repair.setId(id); repair.setStatus(1); repair.setHandleDate(new Date()); int num=repairService.updateData(repair); return R.ok(); } /** * 统计分析 */ @RequestMapping("/queryTongJi") public List queryTongji(){ return repairService.queryTongji(); } }

写在最后

完整源码点击头像查看个人签名 得有用,记得一键三连哦!

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线