项目总结
B站直达【为尚硅谷点赞】:
https://www.bilibili.com/video/BV1Ya411S7aT
本博文以课程相关为主发布,并且融入了自己的一些看法以及对学习过程中遇见的问题给出相关的解决方法。一起学习一起进步!!!
文章目录
- 项目总结
- 1、项目功能模块和核心业务流程
- 1.1、管理端
- 1.1.1、系统管理:
- (1)用户管理、角色管理、菜单管理
- (2)表之间关系
- 1.1.2、审批模块
- (1)审批类型管理
- (2)审批模板管理
- (3)审批列表
- 1.1.3、公众号菜单管理
- 1.2、员工端
- 1.2.1、微信授权登录
- (1)通过手机号和微信openid进行用户关联
- 1.2.2、显示所有审批类型和模板
- 1.2.3、发起申请
- 1.2.4、消息推送
- 1.2.5、待处理和已处理
- 1.2.6、查询审批详情和审批操作
- 2、项目技术
- 3、项目问题和解决方式
- 3.1、跨域问题
- 3.2、mapper扫描问题
- 3.3、xml文件加载问题
- 3.4、流程定义部署zip文件
- 3.5、内网穿透问题
- 3.6、其他问题
- 4、感悟
1、项目功能模块和核心业务流程
1.1、管理端
1.1.1、系统管理:
(1)用户管理、角色管理、菜单管理
(2)表之间关系
角色表、用户表、菜单表
用户和角色是多对多关系
角色和菜单是多对多关系
1.1.2、审批模块
(1)审批类型管理
(2)审批模板管理
(3)审批列表
1.1.3、公众号菜单管理
1.2、员工端
1.2.1、微信授权登录
(1)通过手机号和微信openid进行用户关联
1.2.2、显示所有审批类型和模板
1.2.3、发起申请
1.2.4、消息推送
1.2.5、待处理和已处理
1.2.6、查询审批详情和审批操作
2、项目技术
基础框架:SpringBoot |
---|
数据缓存:Redis |
数据库:MyBatisPlus + MySQL |
权限控制:SpringSecurity |
工作流引擎:Activiti7 |
前端技术:vue-admin-template + Node.js + Npm + Vue + ElementUI + Axios |
微信公众号:公众号菜单 + 微信授权登录 + 消息推送 |
3、项目问题和解决方式
3.1、跨域问题
访问协议: http https
ip地址(域名): oa.atguigu.com oa.baidu.com
端口号:8800 9528
多种解决方式:
(1)在controller类上面添加注解
(2)在前端进行配置
3.2、mapper扫描问题
//第一种方式 :创建配置类,使用@MapperScan注解
@Configuration
@MapperScan(basePackages = {"com.atguigu.auth.mapper","com.atguigu.process.mapper","com.atguigu.wechat.mapper"})
public class MybatisPlusConfig {
}
//第二种方式:在mapper的接口上面添加注解 @Mapper
@Mapper
public interface SysMenuMapper extends BaseMapper<SysMenu> {
}
3.3、xml文件加载问题
Maven默认情况下,在src - main -java目录下面,只会加载java类型文件,其他类型文件不会加载的
第一种解决方式:把xml文件放到resources目录下
第二种解决方式:在pom.xml和项目配置文件进行配置
3.4、流程定义部署zip文件
zip文件规范(要求)
(1)zip文件名称和流程key保持一致
例如: 文件名称 qingjia.zip
(2)在zip文件打包xml文件,xml文件命名 .bpmn20.xml
例如:jiaban.bpmn20.xml
3.5、内网穿透问题
接口和页面在本地localhost,公众号不能直接访问本地路径的,需要使用内网穿透
有两个用途:
第一个:公众号页面通过内网穿透到本地页面 9090
第二个:公众号里面接口通过内网穿透到本地接口 8800