第4天---智慧物业管理系统
创建: 2024.04.01 10:46:28 字数: 0 图片: 0
一、项目文档📄
技术栈
SpringBoot + Mybatis-plus + Redis + Spring Security + 若依
- 项目主体是基于若依进行项目构建:
- 权限管理:用户管理、角色管理、菜单管理
- 部门管理、岗位管理
- 字典管理:可用使用现有的数据字典、也可用新增数据字典
- 参数管理:默认密码、验证码、
- 通知管理、日志管理
- 系统监控
- 动态菜单
- 若依中已经集成了SpringSecurity实现了认证和授权
- 单表操作:单表的CRUD就使用若依代码生成功能,修改页面
- 多表操作:定义api接口,使用权限注解,编写Service/多表查询
- Redis做热点数据的缓存:动态菜单数据、部门数据、角色数据、验证码、sms短信服务(阿里云SMS)
- 其实就是使用RedisCache来实现数据缓存
- 若依中使用的是Mybatis,如果要用Mybatis-plus,只需要引入Mybatis-plus场景启动器即可
- Mybatis-plus只做增强,不做改变
- 基于SpringBoot构建的工程,我们使用的若依就是SpringBoot + Vue版本
项目介绍
- 官网:肇新智慧物业
- 使用文档:Document (太旧)
- 三端:
- 社区APP/小程序:业主
- 物管APP/小程序:物业工作人员->管家、维修人员
- PC管理系统:管理员、收费人员…
- 若依已实现功能:系统管理、团队管理
- 资产管理:
- 商业区管理:单表的CRUD
- 楼栋管理:单表的CRUD,但是新增、修改、查询需要关联商业区数据
- 商铺管理:单表的CRUD,但是新增、修改、查询关联楼栋数据
- 级联选择器:Cascader 级联选择器
- 数据导入:导入导出
- 租赁统计:只是数据的查询,但是在前端需要进行特殊的处理
- 数据查询:order排序,根据楼层和房间号从小到大排序
- 关系:商业区 > 楼栋 > 商品
- 租售管理:
- 业主管理:单表的CRUD、没有删除,但是有明细功能、关联查询
- 租售合同管理:
- 没有新增,租售和商铺挂钩,在商铺管理里面添加的数据,都可用作租售;
- 商铺编号、使用状态和商铺数据挂钩
- 公司名、姓名、电话和业主数据挂钩
- 发起合同:
- 步骤条: Steps 步骤条
- 1、选择租售类型、开始时间
- 2、选择业主、从事行业
- 3、设置收费项(关联默认收费项,只能关联常规收费项)
- 撤销合同
- 没有新增,租售和商铺挂钩,在商铺管理里面添加的数据,都可用作租售;
- 收费管理:
- 收费项管理:单表的CRUD
- 物业可用设置收费项
- 系统自带的收费项只有物业管理费,后续可用新增:
- 车位管理费、装修押金、建筑垃圾清理费(针对于业主)
- 广告费、投放费(不是针对于业主)
- 收费数据生成
- 生成数据(非抄表):费用生效日期、收费项目、收费限期
- 收费项目:只要商铺关联了该收费项目,都会生成收费数据
- 生成数据(非抄表):费用生效日期、收费项目、收费限期
- 综合收银:常规收费、临时收费、收取押金 【针对于商铺】
- 1、输入商铺编号,点击查询
- layout实现布局:Layout 布局
- 2、选择收费项,点击收费
- 选择付款方式、使用预付款
- 3、查询历史信息
- 1、输入商铺编号,点击查询
- 预存款管理
- 预存:新增
- 退还:修改
- 非商铺:临时收费、押金管理
- 收费项管理:单表的CRUD
- 收费项类型是固定的,但是只有查询,没有增删改;
二、技术体系
Java 基础阶段课程体系涉及的知识点:
- 基础语法:变量、数据类型、运算符、流程控制、数组
- 面向对象:封装、继承、多态、内部类、常用关键字…
- 异常处理:try-catch-finally、throw 和 throws、自定义异常…
- 常用类:String、StringBuffer、SttringBuilder、Date、日期格式化、系统类、包装类…
- 枚举类、注解、泛型:泛型类、泛型接口、泛型方法
- 集合框架:Collection、List、Set、Map…
- List:ArrayList、LinkedList、Vector
- Set:HashSet、TreeSet、LinkedHashSet
- Map:HashMap、TreeMap、LinkedHashMap
- 多线程:同步和异步、创建线程的四种方式、常见的 API、线程同步和通信、线程池
- IO 流:文件流、缓冲流、转换流、对象流(序列化)、
- 反射:理解反射、反射常用 API
- JDK 8 新特性:Lambda 表达式、流 Stream、新的日期 API…
- 基础的知识在开发中,肯定是用到的
- 面试核心:
- 面向对象
- 集合框架(接口和接口的关系、底层数据结构、扩容机制、实现原理)
- 多线程
- 反射
- 如果是校招,那么肯定会涉及到数据结构和算法
- 框架 = 反射 + 注解 + 设计模式
JavaWeb 阶段
- 前端技术:
- HTML 5:一系列标签
- CSS 3:一系列的样式,媒体查询、flex 布局
- JS:基础语法、BOM、DOM
- Vue:主流前端框架
- 后端技术:
- MySQL 数据库、JDBC
- Tomcat
- Servlet
- Cookie 和 Session
- 监听器过滤器
- Ajax 和 JSON
- Git
- 面试核心:
- MySQL 数据库:SQL 语句、索引
- Git:Git 常用命令(分支、版本回退)
Java 核心框架阶段
- 微信小程序:原生微信小程序
- Maven:Maven 坐标、依赖传递、生命周期、项目拆分和聚合
- 三大核心框架 SSM
- Spring
- SpringMVC
- Mybatis
- 面试核心:
- Spring:
- Spring 的 IOC 和 AOP
- Spring Bean 的生命周期
- 源码
- Mybatis
- Spring:
- 开发核心:
- 目前 Java 开发都是基于 Maven
Java 企业级应用
- SpringBoot:简化 Spring 项目的初始化搭建和简化开发周期
- Mybatis-plus:Mybatis 的增强版,快速生成单表的 CRUD
- Nginx:静态资源服务器、反向代理和负载均衡
- 项目上云:阿里云 ECS 服务器、OSS、阿里云数据库、域名…
- Linux 操作系统
- Docker:容器化部署
- Redis:数据缓存
- Spring Security:安全管理框架,认证和授权
- 若依:低代码开发平台
- 面试核心:
- SpringBoot 自动装配的原理
- Redis
- 开发核心:
- SpringBoot、Mybatis-plus、Redis、Spring Security
- 运维核心:
- 云平台、Linux、Docker
Java 微服务
- Uniapp:跨端应用开发
- RabbitMQ:消息队列,异步处理的一种方式
- 异步提速、应用解耦、削峰填谷、延迟队列、死信队列…
- ElasticSearch:全文检索、核心特性倒排索引…
- Spring Cloud:微服务解决方案
- 面试核心:
- MQ 消息队列
- ElasticSearch:全文检索