wiki-files/wg-basic/modules.md

13 KiB
Raw Blame History

title description published date tags editor dateCreated
1.基础模块简介 wg-basic中的基础模块简介 true 2021-12-12T15:10:58.576Z wg-basic markdown 2021-07-29T06:22:03.545Z

依赖模块说明

模块的命名规律

  1. basic-* 基础模块,必须存在,在一般情况下,已经由其他模块依赖。
  2. common 通用模块,必须引入,唯一。
  3. login-* 登录模块。
  4. module-* 独立模块,可有可无,需根据实际情况灵活配置。
  5. service-* 默认的核心业务模块,相互之间由所依赖,需要根据实际情况灵活配置。

basic-annotation

该模块包含了框架中用到的注解,属于基础模块,由common模块依赖,无需单独引入。

<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>basic-annotation</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

basic-pojo

该模块包含了框架中使用到的公共实体类DTO、BO、PO、VO等无需单独引入basic-interface模块依赖。

<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>basic-pojo</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

basic-app

该模块用于实现对APP的的管理包含了APP的token管理token格式的校验。 开发人员根据实际情况确认是否引入该模块如果开发的系统需要对接APP而又没有引入该模块时在解析token时会抛出异常。

<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>basic-app</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

basic-exception

该模块中包含了框架中使用到的全部自定义异常,无需单独引入,由common模块依赖。

<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>basic-exception</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

basic-interface

该模块包含了框架中使用到的公共接口,无需单独引入,由common模块依赖。

<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>basic-interface</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

basic-properties

该模块包含了框架中用到的公共配置类,无需单独引入,由common模块依赖。

<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>basic-properties</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

basic-util

该模块包含了框架中使用到的工具类,无需单独引入,由common模块依赖

<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>basic-util</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

common

该模块为框架通用核心模块,包含了框架中使用到的增强过滤器、参数校验、权限校验与失败处理、系统默认菜单自动创建等功能。如果单独引入了common模块,可在此基础上自定义构建系统,同时也可以通过引入其他模块(已经依赖了common模块)来快速构建系统。

<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>common</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

login-base

登录的基础模块提供了Web的登录的必要功能和接口。

功能包括:

  1. 界面配置
  2. 用户统计
  3. 用户操作日志
  4. 登录失败
  5. 退出登录
  6. 用户登录、权限校验
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>login-base</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

login-app

App登录模块提供了App登录的必要功能依赖于login-base模块。

功能包括:

  1. App版本管理
  2. App用户登录
  3. App设备绑定
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>login-app</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

login-wechat

Wechat登录模块依赖于login-base模块于module-wechat模块。 功能包括:

  1. 微信小程序用户登录
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>login-wechat</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

login-oauth2-server

OAuth2认证服务端模块依赖于 login-base 模块,service-menu 模块 功能包括:

  1. 客户端管理
  2. OAuth2单点登录认证
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>login-oauth2-server</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

login-oauth2-client

OAuth2客户端 功能包括:

  1. 用户业务
  2. 部门业务
  3. 角色业务
  4. 职位业务
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>login-oauth2-client</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

module-activiti

流程模块:如果项目需要使用流程引擎,可引入该模块 功能包括:

  1. 流程管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>module-activiti</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

module-article

文章模块,如果系统要使用简单的文章管理,可引入该模块,也可以在该模块的基础上进行拓展。 功能包括:

  1. 文章目录管理
  2. 内容管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>module-article</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

module-dictionary

字典模块,系统中使用到的各种数据字典。 功能包括:

  1. 地区字典管理
  2. 数据字典管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>module-dictionary</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

mongo-module-dictionary

数据字典的mongo版本该模块能够将数据字典中的数据同步到mongo中方便快速查询。

注意:需手动点击按钮同步

功能包括:

  1. 地区字典管理
  2. 数据字典管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>mongo-module-wechat</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

module-file

文件模块,包括了文件简单的上传、下载等功能。上传图片时,会对图片进行压缩处理,压缩比例可通过配置文件设置。 功能包括:

  1. 视频管理
  2. 音频管理
  3. 文件管理
  4. 图片管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>module-file</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

module-file-media

文件媒体模块,该模块用于替换module-file模块,属于升级模块,目前,模块中对音视频的上传做了分类处理,对视频文件增加了转码功能。 功能包括:

  1. 视频管理
  2. 音频管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>module-file-media</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

mongo-module-file

文件模块的mongo版本改模块用于在在使用minio时多系统统一文件管理。

<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>mongo-module-file</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

module-map

地图模块,目前只有对网格的数据管理功能。

<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>module-map</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

module-oauth2-client

OAuth2客户端依赖

<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>module-oauth2-client</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

module-sms

信息模块,该模块用户发送短信息,提供了对用户发送手机短信、邮件。 短信功能的发送方可通过配置文件控制,目前的默认方式需要获取用户名和密码(与提供商购买)。后续会完善腾讯云的短信功能,根据配置激活即可。 功能包括:

  1. 短信管理
  2. 邮件管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>module-sms</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

module-wechat

微信功能模块,对接微信公众号、小程序时使用该模块,目前只提供了公众号与小程序的用户绑定功能,后续会根据项目完善该模块功能。依赖于service-user模块。 功能包括:

  1. 公众号用户绑定
  2. 小程序用户绑定
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>module-wechat</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

register-base

用户注册基础模块目前该模块只提供了App的用户注册用户名+密码、手机+验证码注册,当使用手机+验证码注册用户时用户的密码为默认密码默认密码可根据配置文件设置如果没有设置密码为88888888。依赖于service-user模块,后续可能会更改包名。 功能包括:

  1. App用户注册
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>register-base</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

register-wechat

微信公众号用户注册,通过手机与唯一验证码绑定微信与系统用户。依赖于service-user模块、module-wechat模块。 功能包括:

  1. 微信公众号用户注册
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>register-wechat</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

service-department

组织机构管理业务,该模块用于管理组织机构、组织机构用户。如果系统中不需要组织机构管理可以不引入该业务模块。依赖于service-user模块、module-dictionary模块。 功能包括:

  1. 组织机构管理
  2. 组织机构用户管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>service-department</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

service-group

组业务,该模块用于管理组与用户之间的关系,组相当于对用户进行归类,与组织机构类似,一般情况下该模块不需要引入。依赖于service-user模块。 功能包括:

  1. 组管理
  2. 组用户管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>service-group</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

service-menu

菜单业务,该模块用于系统中的菜单。如果系统中的菜单不需要动态维护则可不引入该依赖。引入依赖后,系统启动时,会根据该模块中的设置动态创建默认菜单,模块中的初始化菜单代码和方式后续会根据实际情况作出调整。 功能包括:

  1. 菜单管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>service-menu</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

service-oauth-client

单点登录客户端业务该模块用于分布式系统的统一登录管理引入该模块的系统可以作为Oauth2.0客户端独立运行,用户在登录时,访问系统后,会自动重定向到登录页面,在登录授权之后又会重定向回访问的页面。目前该模块并未完善,后续会根据实际情况作出调整。 功能包括:

  1. 客户端管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>service-oauth-client</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

service-permission

权限业务该模块提供了Web系统的接口权限,支持 ant 风格路径匹配,并且提供了接口快捷导入功能。如果系统不需要细化的权限管理,可以引入该模块。

  1. 增、删、改、查权限管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>service-permission</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

service-position

职位业务,该模块用于管理职位与用户之间的关系,与组织机构类似,一般情况下该模块不需要引入。依赖于service-user模块。 功能包括:

  1. 职位管理
  2. 职位用户管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>service-position</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

service-role

角色业务,与用户有关系的接口权限、菜单权限、数据权限等均由该模块进行管理,属于用户管理中的核心模块,将用户与权限进行动态关联。如果不需要权限的动态管理则不需要要引入该模块,依赖于service-menu模块,service-permission模块,service-department模块。 功能包括:

  1. 角色管理
  2. 数据权限管理
  3. 接口权限管理
  4. 菜单权限管理
  5. 角色用户管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>service-role</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

service-user

用户业务,对系统用户进行统一管理。如果开发人员想自定义其他有关的业务功能,就只需要单独引入该模块进行拓展。如果系统没有用户动态管理功能,则不需要引入该模块,同时与该模块由管的其他所有模块将均不能使用。 功能包括:

  1. 用户管理
<dependency>
  <groupId>ink.wgink</groupId>
  <artifactId>service-user</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>