26aa3bd8 by chentao

no message

1 parent 0eaea8b0
Showing 830 changed files with 0 additions and 6937 deletions
--- # 数据源配置
spring:
datasource:
type: com.zaxxer.hikari.HikariDataSource
# 动态数据源文档 https://www.kancloud.cn/tracy5546/dynamic-datasource/content
dynamic:
# 性能分析插件(有性能损耗 不建议生产环境使用)
p6spy: true
# 设置默认的数据源或者数据源组,默认值即为 master
primary: master
# 严格模式 匹配不到数据源则报错
strict: true
datasource:
# 主库数据源
master:
type: ${spring.datasource.type}
driverClassName: com.mysql.cj.jdbc.Driver
# jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562
# rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题)
url: jdbc:mysql://localhost:3306/lego_manage?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
username: root
password: 1234a!
hikari:
# 最大连接池数量
maxPoolSize: 20
# 最小空闲线程数量
minIdle: 10
# 配置获取连接等待超时的时间
connectionTimeout: 30000
# 校验超时时间
validationTimeout: 5000
# 空闲连接存活最大时间,默认10分钟
idleTimeout: 600000
# 此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认30分钟
maxLifetime: 1800000
# 多久检查一次连接的活性
keepaliveTime: 30000
--- # redis 单机配置(单机与集群只能开启一个另一个需要注释掉)
spring:
redis:
# 地址
host: localhost
# 端口,默认为6379
port: 6379
# 数据库索引
database: 15
# 密码(如没有密码请注释掉)
# password:
# 连接超时时间
timeout: 10s
# 是否开启ssl
ssl: false
redisson:
# redis key前缀
keyPrefix:
# 线程池数量
threads: 4
# Netty线程池数量
nettyThreads: 8
# 单节点配置
singleServerConfig:
# 客户端名称
clientName: ${lego.name}
# 最小空闲连接数
connectionMinimumIdleSize: 8
# 连接池大小
connectionPoolSize: 32
# 连接空闲超时,单位:毫秒
idleConnectionTimeout: 10000
# 命令等待超时,单位:毫秒
timeout: 3000
# 发布和订阅连接池大小
subscriptionConnectionPoolSize: 50
--- # 临时文件存储位置 避免临时文件被系统清理报错
spring.servlet.multipart.location: /ruoyi/server/temp
--- # 数据源配置
spring:
datasource:
type: com.zaxxer.hikari.HikariDataSource
# 动态数据源文档 https://www.kancloud.cn/tracy5546/dynamic-datasource/content
dynamic:
# 性能分析插件(有性能损耗 不建议生产环境使用)
p6spy: false
# 设置默认的数据源或者数据源组,默认值即为 master
primary: master
# 严格模式 匹配不到数据源则报错
strict: true
datasource:
# 主库数据源
master:
type: ${spring.datasource.type}
driverClassName: com.mysql.cj.jdbc.Driver
# jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562
# rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题)
url: jdbc:mysql://localhost:3306/legov22?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
username: legov22
password: d4hmL44kzBSi6baT
# 从库数据源
slave:
lazy: true
type: ${spring.datasource.type}
driverClassName: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
username:
password:
# oracle:
# type: ${spring.datasource.type}
# driverClassName: oracle.jdbc.OracleDriver
# url: jdbc:oracle:thin:@//localhost:1521/XE
# username: ROOT
# password: root
# postgres:
# type: ${spring.datasource.type}
# driverClassName: org.postgresql.Driver
# url: jdbc:postgresql://localhost:5432/postgres?useUnicode=true&characterEncoding=utf8&useSSL=true&autoReconnect=true&reWriteBatchedInserts=true
# username: root
# password: root
# sqlserver:
# type: ${spring.datasource.type}
# driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
# url: jdbc:sqlserver://localhost:1433;DatabaseName=tempdb;SelectMethod=cursor;encrypt=false;rewriteBatchedStatements=true
# username: SA
# password: root
hikari:
# 最大连接池数量
maxPoolSize: 20
# 最小空闲线程数量
minIdle: 10
# 配置获取连接等待超时的时间
connectionTimeout: 30000
# 校验超时时间
validationTimeout: 5000
# 空闲连接存活最大时间,默认10分钟
idleTimeout: 600000
# 此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认30分钟
maxLifetime: 1800000
# 多久检查一次连接的活性
keepaliveTime: 30000
--- # redis 单机配置(单机与集群只能开启一个另一个需要注释掉)
spring:
redis:
# 地址
host: localhost
# 端口,默认为6379
port: 6379
# 数据库索引
database: 5
# 密码(如没有密码请注释掉)
password: parking@nlife
# 连接超时时间
timeout: 10s
# 是否开启ssl
ssl: false
redisson:
# redis key前缀
keyPrefix:
# 线程池数量
threads: 16
# Netty线程池数量
nettyThreads: 32
# 单节点配置
singleServerConfig:
# 客户端名称
clientName: ${lego.name}
# 最小空闲连接数
connectionMinimumIdleSize: 32
# 连接池大小
connectionPoolSize: 64
# 连接空闲超时,单位:毫秒
idleConnectionTimeout: 10000
# 命令等待超时,单位:毫秒
timeout: 3000
# 发布和订阅连接池大小
subscriptionConnectionPoolSize: 50
# 项目相关配置
lego:
# 名称
name: lego
# 版本
version: 1.0.0
# 版权年份
copyrightYear: 2023
# 缓存懒加载
cacheLazy: false
captcha:
# 页面 <参数设置> 可开启关闭 验证码校验
# 验证码类型 math 数组计算 char 字符验证
type: MATH
# line 线段干扰 circle 圆圈干扰 shear 扭曲干扰
category: CIRCLE
# 数字验证码位数
numberLength: 1
# 字符验证码长度
charLength: 4
# 开发环境配置
server:
# 服务器的HTTP端口,默认为8080
port: 8082
servlet:
# 应用的访问路径
context-path: /
# undertow 配置
undertow:
# HTTP post内容的最大大小。当值为-1时,默认值为大小是无限的
max-http-post-size: -1
# 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
# 每块buffer的空间大小,越小的空间被利用越充分
buffer-size: 512
# 是否分配的直接内存
direct-buffers: true
threads:
# 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
io: 8
# 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载
worker: 256
# 日志配置
logging:
level:
com.lego: info
org.springframework: warn
config: classpath:logback-plus.xml
# 用户配置
user:
password:
# 密码最大错误次数
maxRetryCount: 5
# 密码锁定时间(默认10分钟)
lockTime: 10
# Spring配置
spring:
application:
name: ${lego.name}
# 资源信息
messages:
# 国际化资源文件路径
basename: i18n/messages
profiles:
active: dev
# 文件上传
servlet:
multipart:
# 单个文件大小
max-file-size: 10MB
# 设置总上传的文件大小
max-request-size: 20MB
# 服务模块
devtools:
restart:
# 热部署开关
enabled: true
mvc:
format:
date-time: yyyy-MM-dd HH:mm:ss
jackson:
# 日期格式化
date-format: yyyy-MM-dd HH:mm:ss
serialization:
# 格式化输出
indent_output: false
# 忽略无法转换的对象
fail_on_empty_beans: false
deserialization:
# 允许对象忽略json中不存在的属性
fail_on_unknown_properties: false
# Sa-Token配置
sa-token:
# token名称 (同时也是cookie名称)
token-name: Authorization
# token有效期 设为一天 (必定过期) 单位: 秒
timeout: 86400
# 多端不同 token 有效期 可查看 LoginHelper.loginByDevice 方法自定义
# token最低活跃时间 (指定时间无操作就过期) 单位: 秒
active-timeout: 1800
# 允许动态设置 token 有效期
dynamic-active-timeout: true
# 是否允许同一账号并发登录 (为true时允许一起登录, 为false时新登录挤掉旧登录)
is-concurrent: true
# 在多人登录同一账号时,是否共用一个token (为true时所有登录共用一个token, 为false时每次登录新建一个token)
is-share: false
# 是否尝试从header里读取token
is-read-header: true
# 是否尝试从cookie里读取token
is-read-cookie: false
# token前缀
token-prefix: "Bearer"
# jwt秘钥
jwt-secret-key: abcdefghijklmnopqrstuvwxyz
# security配置
security:
# 排除路径
excludes:
# 静态资源
- /*.html
- /**/*.html
- /**/*.css
- /**/*.js
# 公共路径
- /favicon.ico
- /error
# swagger 文档配置
- /*/api-docs
- /*/api-docs/**
# actuator 监控配置
- /actuator
- /actuator/**
# MyBatisPlus配置
# https://baomidou.com/config/
mybatis-plus:
# 不支持多包, 如有需要可在注解配置 或 提升扫包等级
# 例如 com.**.**.mapper
mapperPackage: com.lego.**.mapper
# 对应的 XML 文件位置
mapperLocations: classpath*:mapper/**/*Mapper.xml
# 实体扫描,多个package用逗号或者分号分隔
typeAliasesPackage: com.lego.**.domain
# 启动时是否检查 MyBatis XML 文件的存在,默认不检查
checkConfigLocation: false
configuration:
# 自动驼峰命名规则(camel case)映射
mapUnderscoreToCamelCase: true
# MyBatis 自动映射策略
# NONE:不启用 PARTIAL:只对非嵌套 resultMap 自动映射 FULL:对所有 resultMap 自动映射
autoMappingBehavior: PARTIAL
# MyBatis 自动映射时未知列或未知属性处理策
# NONE:不做处理 WARNING:打印相关警告 FAILING:抛出异常和详细信息
autoMappingUnknownColumnBehavior: NONE
# 更详细的日志输出 会有性能损耗 org.apache.ibatis.logging.stdout.StdOutImpl
# 关闭日志记录 (可单纯使用 p6spy 分析) org.apache.ibatis.logging.nologging.NoLoggingImpl
# 默认日志输出 org.apache.ibatis.logging.slf4j.Slf4jImpl
logImpl: org.apache.ibatis.logging.nologging.NoLoggingImpl
global-config:
# 是否打印 Logo banner
banner: true
dbConfig:
# 主键类型
# AUTO 自增 NONE 空 INPUT 用户输入 ASSIGN_ID 雪花 ASSIGN_UUID 唯一 UUID
idType: ASSIGN_ID
# 逻辑已删除值
logicDeleteValue: 2
# 逻辑未删除值
logicNotDeleteValue: 0
# 字段验证策略之 insert,在 insert 的时候的字段验证策略
# IGNORED 忽略 NOT_NULL 非NULL NOT_EMPTY 非空 DEFAULT 默认 NEVER 不加入 SQL
insertStrategy: NOT_NULL
# 字段验证策略之 update,在 update 的时候的字段验证策略
updateStrategy: NOT_NULL
# 字段验证策略之 select,在 select 的时候的字段验证策略既 wrapper 根据内部 entity 生成的 where 条件
where-strategy: NOT_NULL
# 数据加密
mybatis-encryptor:
# 是否开启加密
enable: false
# 默认加密算法
algorithm: BASE64
# 编码方式 BASE64/HEX。默认BASE64
encode: BASE64
# 安全秘钥 对称算法的秘钥 如:AES,SM4
password:
# 公私钥 非对称算法的公私钥 如:SM2,RSA
publicKey:
privateKey:
springdoc:
api-docs:
# 是否开启接口文档
enabled: true
# swagger-ui:
# # 持久化认证数据
# persistAuthorization: true
info:
# 标题
title: '标题:${lego.name}后台管理系统_接口文档'
# 描述
description: '描述:用于管理集团旗下公司的人员信息,具体包括XXX,XXX模块...'
# 版本
version: '版本号: 1.0.0'
# 作者信息
contact:
name: Lion Li
email: crazylionli@163.com
url: https://gitee.com/dromara/RuoYi-Vue-Plus
components:
# 鉴权方式配置
security-schemes:
apiKey:
type: APIKEY
in: HEADER
name: ${sa-token.token-name}
#这里定义了两个分组,可定义多个,也可以不定义
group-configs:
- group: 1.核心功能
packages-to-scan: com.lego.web
# 防止XSS攻击
xss:
# 过滤开关
enabled: true
# 排除链接(多个用逗号分隔)
excludes: /system/notice
# 匹配链接
urlPatterns: /system/*,/monitor/*,/tool/*
# 全局线程池相关配置
thread-pool:
# 是否开启线程池
enabled: false
# 队列最大长度
queueCapacity: 128
# 线程池维护线程所允许的空闲时间
keepAliveSeconds: 300
--- # 分布式锁 lock4j 全局配置
lock4j:
# 获取分布式锁超时时间,默认为 3000 毫秒
acquire-timeout: 3000
# 分布式锁的超时时间,默认为 30 秒
expire: 30000
--- # Actuator 监控端点的配置项
management:
endpoints:
web:
exposure:
include: '*'
endpoint:
health:
show-details: ALWAYS
logfile:
external-file: ./logs/sys-console.log
Application Version: ${ruoyi-vue-plus.version}
Spring Boot Version: 2.7.18
__________ _____.___.__ ____ ____ __________.__
\______ \__ __ ____\__ | |__| \ \ / /_ __ ____ \______ \ | __ __ ______
| _/ | \/ _ \/ | | | ______ \ Y / | \_/ __ \ ______ | ___/ | | | \/ ___/
| | \ | ( <_> )____ | | /_____/ \ /| | /\ ___/ /_____/ | | | |_| | /\___ \
|____|_ /____/ \____// ______|__| \___/ |____/ \___ > |____| |____/____//____ >
\/ \/ \/ \/
{"doc":" 启动程序\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" web容器中进行部署\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 验证码操作处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"emailCode","paramTypes":["java.lang.String"],"doc":" 邮箱验证码\n\n @param email 邮箱\n"},{"name":"getCode","paramTypes":[],"doc":" 生成验证码\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 广告 信息操作处理\n\n @author GYongYi\n @date 2024/9/8 15:32\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.common.core.domain.PageQuery","javax.servlet.http.HttpServletRequest"],"doc":" 查询列表数据\n\n @param query\n @return\n"},{"name":"addAdvert","paramTypes":["com.lego.core.domin.bo.AdvertBo"],"doc":" 新增\n\n @param advertBo\n @return\n"},{"name":"updateAdvert","paramTypes":["com.lego.core.domin.bo.AdvertBo"],"doc":" 修改\n\n @param advertBo\n @return\n"},{"name":"updateStatus","paramTypes":["com.lego.core.domin.bo.AdvertBo"],"doc":" 修改状态\n\n @param advertBo\n @return\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 积木 信息操作处理\n\n @author GYongYi\n @date 2024/9/8 15:32\n","fields":[],"enumConstants":[],"methods":[{"name":"listPage","paramTypes":["com.lego.core.domin.bo.BuildingBlockQueryBo","javax.servlet.http.HttpServletRequest"],"doc":" 查询列表数据(带分页)\n\n @param query\n @return\n"},{"name":"list","paramTypes":["javax.servlet.http.HttpServletRequest"],"doc":" 查询列表数据(不分页)\n\n @return\n"},{"name":"addBlock","paramTypes":["com.lego.core.domin.bo.BuildingBlockBo"],"doc":" 新增\n\n @param blockBo\n @return\n"},{"name":"update","paramTypes":["com.lego.core.domin.bo.BuildingBlockBo"],"doc":" 修改\n\n @param blockBo\n @return\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 课程 信息操作处理\n\n @author GYongYi\n @date 2024/9/8 15:32\n","fields":[],"enumConstants":[],"methods":[{"name":"listPage","paramTypes":["com.lego.core.domin.bo.CourseQueryBo","javax.servlet.http.HttpServletRequest"],"doc":" 查询列表数据(带分页)\n\n @param query\n @return\n"},{"name":"addCourse","paramTypes":["com.lego.core.domin.bo.CourseBo"],"doc":" 新增\n\n @param CourseBo\n @return\n"},{"name":"update","paramTypes":["com.lego.core.domin.bo.CourseBo"],"doc":" 修改\n\n @param CourseBo\n @return\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 套件 信息操作处理\n\n @author GYongYi\n @date 2024/9/8 15:32\n","fields":[],"enumConstants":[],"methods":[{"name":"listPage","paramTypes":["com.lego.common.core.domain.PageQuery","javax.servlet.http.HttpServletRequest"],"doc":" 查询列表数据(带分页)\n\n @param query\n @return\n"},{"name":"list","paramTypes":["javax.servlet.http.HttpServletRequest"],"doc":" 查询列表数据(不分页)\n\n @return\n"},{"name":"addEntirety","paramTypes":["com.lego.core.domin.bo.EntiretyBo"],"doc":" 新增\n\n @param entiretyBo\n @return\n"},{"name":"update","paramTypes":["com.lego.core.domin.bo.EntiretyBo"],"doc":" 修改\n\n @param entiretyBo\n @return\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 问题 信息操作处理\n\n @author GYongYi\n @date 2024/9/8 15:32\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.core.domin.bo.QuestionQueryBo","javax.servlet.http.HttpServletRequest"],"doc":" 查询列表数据\n\n @param query\n @return\n"},{"name":"addQuestion","paramTypes":["com.lego.core.domin.bo.QuestionBo"],"doc":" 新增\n\n @param QuestionBo\n @return\n"},{"name":"updateQuestion","paramTypes":["com.lego.core.domin.bo.QuestionBo"],"doc":" 修改\n\n @param QuestionBo\n @return\n"},{"name":"updateStatus","paramTypes":["com.lego.core.domin.bo.QuestionBo"],"doc":" 修改状态\n\n @param QuestionBo\n @return\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" APP升级 信息操作处理\n\n @author GYongYi\n @date 2024/9/8 15:32\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.core.domin.bo.UpgradeQueryBo","javax.servlet.http.HttpServletRequest"],"doc":" 查询列表数据\n\n @param query\n @return\n"},{"name":"addUpgrade","paramTypes":["com.lego.core.domin.bo.UpgradeBo"],"doc":" 新增\n\n @param UpgradeBo\n @return\n"},{"name":"updateUpgrade","paramTypes":["com.lego.core.domin.bo.UpgradeBo"],"doc":" 修改\n\n @param UpgradeBo\n @return\n"},{"name":"release","paramTypes":["java.lang.String"],"doc":" 发布\n\n @param id\n @return\n @throws ServerException\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 缓存监控\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"getInfo","paramTypes":[],"doc":" 获取缓存监控列表\n"},{"name":"cache","paramTypes":[],"doc":" 获取缓存监控缓存名列表\n"},{"name":"getCacheKeys","paramTypes":["java.lang.String"],"doc":" 获取缓存监控Key列表\n\n @param cacheName 缓存名\n"},{"name":"getCacheValue","paramTypes":["java.lang.String","java.lang.String"],"doc":" 获取缓存监控缓存值详情\n\n @param cacheName 缓存名\n @param cacheKey 缓存key\n"},{"name":"clearCacheName","paramTypes":["java.lang.String"],"doc":" 清理缓存监控缓存名\n\n @param cacheName 缓存名\n"},{"name":"clearCacheKey","paramTypes":["java.lang.String","java.lang.String"],"doc":" 清理缓存监控Key\n\n @param cacheKey key名\n"},{"name":"clearCacheAll","paramTypes":[],"doc":" 清理全部缓存监控\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 系统访问记录\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.system.domain.SysLogininfor","com.lego.common.core.domain.PageQuery"],"doc":" 获取系统访问记录列表\n"},{"name":"export","paramTypes":["com.lego.system.domain.SysLogininfor","javax.servlet.http.HttpServletResponse"],"doc":" 导出系统访问记录列表\n"},{"name":"remove","paramTypes":["java.lang.Long[]"],"doc":" 批量删除登录日志\n @param infoIds 日志ids\n"},{"name":"clean","paramTypes":[],"doc":" 清理系统访问记录\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 操作日志记录\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.system.domain.SysOperLog","com.lego.common.core.domain.PageQuery"],"doc":" 获取操作日志记录列表\n"},{"name":"export","paramTypes":["com.lego.system.domain.SysOperLog","javax.servlet.http.HttpServletResponse"],"doc":" 导出操作日志记录列表\n"},{"name":"remove","paramTypes":["java.lang.Long[]"],"doc":" 批量删除操作日志记录\n @param operIds 日志ids\n"},{"name":"clean","paramTypes":[],"doc":" 清理操作日志记录\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 在线用户监控\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["java.lang.String","java.lang.String"],"doc":" 获取在线用户监控列表\n\n @param ipaddr IP地址\n @param userName 用户名\n"},{"name":"forceLogout","paramTypes":["java.lang.String"],"doc":" 强退用户\n\n @param tokenId token值\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 参数配置 信息操作处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.system.domain.SysConfig","com.lego.common.core.domain.PageQuery"],"doc":" 获取参数配置列表\n"},{"name":"export","paramTypes":["com.lego.system.domain.SysConfig","javax.servlet.http.HttpServletResponse"],"doc":" 导出参数配置列表\n"},{"name":"getInfo","paramTypes":["java.lang.Long"],"doc":" 根据参数编号获取详细信息\n\n @param configId 参数ID\n"},{"name":"getConfigKey","paramTypes":["java.lang.String"],"doc":" 根据参数键名查询参数值\n\n @param configKey 参数Key\n"},{"name":"add","paramTypes":["com.lego.system.domain.SysConfig"],"doc":" 新增参数配置\n"},{"name":"edit","paramTypes":["com.lego.system.domain.SysConfig"],"doc":" 修改参数配置\n"},{"name":"updateByKey","paramTypes":["com.lego.system.domain.SysConfig"],"doc":" 根据参数键名修改参数配置\n"},{"name":"remove","paramTypes":["java.lang.Long[]"],"doc":" 删除参数配置\n\n @param configIds 参数ID串\n"},{"name":"refreshCache","paramTypes":[],"doc":" 刷新参数缓存\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 部门信息\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 获取部门列表\n"},{"name":"excludeChild","paramTypes":["java.lang.Long"],"doc":" 查询部门列表(排除节点)\n\n @param deptId 部门ID\n"},{"name":"getInfo","paramTypes":["java.lang.Long"],"doc":" 根据部门编号获取详细信息\n\n @param deptId 部门ID\n"},{"name":"add","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 新增部门\n"},{"name":"edit","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 修改部门\n"},{"name":"remove","paramTypes":["java.lang.Long"],"doc":" 删除部门\n\n @param deptId 部门ID\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 数据字典信息\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.common.core.domain.entity.SysDictData","com.lego.common.core.domain.PageQuery"],"doc":" 查询字典数据列表\n"},{"name":"export","paramTypes":["com.lego.common.core.domain.entity.SysDictData","javax.servlet.http.HttpServletResponse"],"doc":" 导出字典数据列表\n"},{"name":"getInfo","paramTypes":["java.lang.Long"],"doc":" 查询字典数据详细\n\n @param dictCode 字典code\n"},{"name":"dictType","paramTypes":["java.lang.String"],"doc":" 根据字典类型查询字典数据信息\n\n @param dictType 字典类型\n"},{"name":"add","paramTypes":["com.lego.common.core.domain.entity.SysDictData"],"doc":" 新增字典类型\n"},{"name":"edit","paramTypes":["com.lego.common.core.domain.entity.SysDictData"],"doc":" 修改保存字典类型\n"},{"name":"remove","paramTypes":["java.lang.Long[]"],"doc":" 删除字典类型\n\n @param dictCodes 字典code串\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 数据字典信息\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.common.core.domain.entity.SysDictType","com.lego.common.core.domain.PageQuery"],"doc":" 查询字典类型列表\n"},{"name":"export","paramTypes":["com.lego.common.core.domain.entity.SysDictType","javax.servlet.http.HttpServletResponse"],"doc":" 导出字典类型列表\n"},{"name":"getInfo","paramTypes":["java.lang.Long"],"doc":" 查询字典类型详细\n\n @param dictId 字典ID\n"},{"name":"add","paramTypes":["com.lego.common.core.domain.entity.SysDictType"],"doc":" 新增字典类型\n"},{"name":"edit","paramTypes":["com.lego.common.core.domain.entity.SysDictType"],"doc":" 修改字典类型\n"},{"name":"remove","paramTypes":["java.lang.Long[]"],"doc":" 删除字典类型\n\n @param dictIds 字典ID串\n"},{"name":"refreshCache","paramTypes":[],"doc":" 刷新字典缓存\n"},{"name":"optionselect","paramTypes":[],"doc":" 获取字典选择框列表\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 枚举 存储查询一些不会更改的枚举数据\n\n @author gyongyi\n @date 2024-07-19\n","fields":[],"enumConstants":[],"methods":[{"name":"getInfo","paramTypes":["java.lang.String"],"doc":" 根据id,查询枚举对象\n"},{"name":"list","paramTypes":["com.lego.system.domain.bo.SysEnumerationQueryBo"],"doc":" 根据id,查询枚举对象\n"},{"name":"list","paramTypes":["java.lang.String"],"doc":" 查询枚举树列表\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 首页\n\n @author Lion Li\n","fields":[{"name":"legoConfig","doc":" 系统基础配置\n"}],"enumConstants":[],"methods":[{"name":"index","paramTypes":[],"doc":" 访问首页,提示语\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 登录验证\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"login","paramTypes":["com.lego.common.core.domain.model.LoginBody"],"doc":" 登录方法\n\n @param loginBody 登录信息\n @return 结果\n"},{"name":"smsLogin","paramTypes":["com.lego.common.core.domain.model.SmsLoginBody"],"doc":" 短信登录\n\n @param smsLoginBody 登录信息\n @return 结果\n"},{"name":"emailLogin","paramTypes":["com.lego.common.core.domain.model.EmailLoginBody"],"doc":" 邮件登录\n\n @param body 登录信息\n @return 结果\n"},{"name":"xcxLogin","paramTypes":["java.lang.String"],"doc":" 小程序登录(示例)\n\n @param xcxCode 小程序code\n @return 结果\n"},{"name":"logout","paramTypes":[],"doc":" 退出登录\n"},{"name":"getInfo","paramTypes":[],"doc":" 获取用户信息\n\n @return 用户信息\n"},{"name":"getRouters","paramTypes":[],"doc":" 获取路由信息\n\n @return 路由信息\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 菜单信息\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 获取菜单列表\n"},{"name":"routerList","paramTypes":[],"doc":" 获取当前账号路由菜单列表\n"},{"name":"getInfo","paramTypes":["java.lang.Long"],"doc":" 根据菜单编号获取详细信息\n\n @param menuId 菜单ID\n"},{"name":"treeselect","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 获取菜单下拉树列表\n"},{"name":"roleMenuTreeselect","paramTypes":["java.lang.Long"],"doc":" 加载对应角色菜单列表树\n\n @param roleId 角色ID\n"},{"name":"add","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 新增菜单\n"},{"name":"edit","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 修改菜单\n"},{"name":"remove","paramTypes":["java.lang.Long"],"doc":" 删除菜单\n\n @param menuId 菜单ID\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 公告 信息操作处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.system.domain.SysNotice","com.lego.common.core.domain.PageQuery"],"doc":" 获取通知公告列表\n"},{"name":"getInfo","paramTypes":["java.lang.Long"],"doc":" 根据通知公告编号获取详细信息\n\n @param noticeId 公告ID\n"},{"name":"add","paramTypes":["com.lego.system.domain.SysNotice"],"doc":" 新增通知公告\n"},{"name":"edit","paramTypes":["com.lego.system.domain.SysNotice"],"doc":" 修改通知公告\n"},{"name":"remove","paramTypes":["java.lang.Long[]"],"doc":" 删除通知公告\n\n @param noticeIds 公告ID串\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 对象存储配置\n\n @author Lion Li\n @author 孤舟烟雨\n @date 2021-08-13\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.system.domain.bo.SysOssConfigBo","com.lego.common.core.domain.PageQuery"],"doc":" 查询对象存储配置列表\n"},{"name":"getInfo","paramTypes":["java.lang.Long"],"doc":" 获取对象存储配置详细信息\n\n @param ossConfigId OSS配置ID\n"},{"name":"add","paramTypes":["com.lego.system.domain.bo.SysOssConfigBo"],"doc":" 新增对象存储配置\n"},{"name":"edit","paramTypes":["com.lego.system.domain.bo.SysOssConfigBo"],"doc":" 修改对象存储配置\n"},{"name":"remove","paramTypes":["java.lang.Long[]"],"doc":" 删除对象存储配置\n\n @param ossConfigIds OSS配置ID串\n"},{"name":"changeStatus","paramTypes":["com.lego.system.domain.bo.SysOssConfigBo"],"doc":" 状态修改\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 文件上传 控制层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.system.domain.bo.SysOssBo","com.lego.common.core.domain.PageQuery"],"doc":" 查询OSS对象存储列表\n"},{"name":"listByIds","paramTypes":["java.lang.Long[]"],"doc":" 查询OSS对象基于id串\n\n @param ossIds OSS对象ID串\n"},{"name":"upload","paramTypes":["org.springframework.web.multipart.MultipartFile"],"doc":" 上传OSS对象存储\n\n @param file 文件\n"},{"name":"download","paramTypes":["java.lang.Long","javax.servlet.http.HttpServletResponse"],"doc":" 下载OSS对象\n\n @param ossId OSS对象ID\n"},{"name":"remove","paramTypes":["java.lang.Long[]"],"doc":" 删除OSS对象存储\n\n @param ossIds OSS对象ID串\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 岗位信息操作处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.system.domain.SysPost","com.lego.common.core.domain.PageQuery"],"doc":" 获取岗位列表\n"},{"name":"export","paramTypes":["com.lego.system.domain.SysPost","javax.servlet.http.HttpServletResponse"],"doc":" 导出岗位列表\n"},{"name":"getInfo","paramTypes":["java.lang.Long"],"doc":" 根据岗位编号获取详细信息\n\n @param postId 岗位ID\n"},{"name":"add","paramTypes":["com.lego.system.domain.SysPost"],"doc":" 新增岗位\n"},{"name":"edit","paramTypes":["com.lego.system.domain.SysPost"],"doc":" 修改岗位\n"},{"name":"remove","paramTypes":["java.lang.Long[]"],"doc":" 删除岗位\n\n @param postIds 岗位ID串\n"},{"name":"optionselect","paramTypes":[],"doc":" 获取岗位选择框列表\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 个人信息 业务处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"profile","paramTypes":[],"doc":" 个人信息\n"},{"name":"updateProfile","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 修改用户\n"},{"name":"updatePwd","paramTypes":["java.lang.String","java.lang.String"],"doc":" 重置密码\n\n @param newPassword 新密码\n @param oldPassword 旧密码\n"},{"name":"avatar","paramTypes":["org.springframework.web.multipart.MultipartFile"],"doc":" 头像上传\n\n @param avatarfile 用户头像\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 注册验证\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"register","paramTypes":["com.lego.common.core.domain.model.RegisterBody"],"doc":" 用户注册\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 角色信息\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.common.core.domain.entity.SysRole","com.lego.common.core.domain.PageQuery"],"doc":" 获取角色信息列表\n"},{"name":"export","paramTypes":["com.lego.common.core.domain.entity.SysRole","javax.servlet.http.HttpServletResponse"],"doc":" 导出角色信息列表\n"},{"name":"getInfo","paramTypes":["java.lang.Long"],"doc":" 根据角色编号获取详细信息\n\n @param roleId 角色ID\n"},{"name":"add","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 新增角色\n"},{"name":"edit","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 修改保存角色\n"},{"name":"dataScope","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 修改保存数据权限\n"},{"name":"changeStatus","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 状态修改\n"},{"name":"remove","paramTypes":["java.lang.Long[]"],"doc":" 删除角色\n\n @param roleIds 角色ID串\n"},{"name":"optionselect","paramTypes":[],"doc":" 获取角色选择框列表\n"},{"name":"allocatedList","paramTypes":["com.lego.common.core.domain.entity.SysUser","com.lego.common.core.domain.PageQuery"],"doc":" 查询已分配用户角色列表\n"},{"name":"unallocatedList","paramTypes":["com.lego.common.core.domain.entity.SysUser","com.lego.common.core.domain.PageQuery"],"doc":" 查询未分配用户角色列表\n"},{"name":"cancelAuthUser","paramTypes":["com.lego.system.domain.SysUserRole"],"doc":" 取消授权用户\n"},{"name":"cancelAuthUserAll","paramTypes":["java.lang.Long","java.lang.Long[]"],"doc":" 批量取消授权用户\n\n @param roleId 角色ID\n @param userIds 用户ID串\n"},{"name":"selectAuthUserAll","paramTypes":["java.lang.Long","java.lang.Long[]"],"doc":" 批量选择用户授权\n\n @param roleId 角色ID\n @param userIds 用户ID串\n"},{"name":"roleDeptTreeselect","paramTypes":["java.lang.Long"],"doc":" 获取对应角色部门树列表\n\n @param roleId 角色ID\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 用户信息\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.common.core.domain.entity.SysUser","com.lego.common.core.domain.PageQuery"],"doc":" 获取用户列表\n"},{"name":"export","paramTypes":["com.lego.common.core.domain.entity.SysUser","javax.servlet.http.HttpServletResponse"],"doc":" 导出用户列表\n"},{"name":"importData","paramTypes":["org.springframework.web.multipart.MultipartFile","boolean"],"doc":" 导入数据\n\n @param file 导入文件\n @param updateSupport 是否更新已存在数据\n"},{"name":"importTemplate","paramTypes":["javax.servlet.http.HttpServletResponse"],"doc":" 获取导入模板\n"},{"name":"getInfo","paramTypes":["java.lang.Long"],"doc":" 根据用户编号获取详细信息\n\n @param userId 用户ID\n"},{"name":"add","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 新增用户\n"},{"name":"edit","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 修改用户\n"},{"name":"remove","paramTypes":["java.lang.Long[]"],"doc":" 删除用户\n\n @param userIds 角色ID串\n"},{"name":"resetPwd","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 重置密码\n"},{"name":"changeStatus","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 状态修改\n"},{"name":"authRole","paramTypes":["java.lang.Long"],"doc":" 根据用户编号获取授权角色\n\n @param userId 用户ID\n"},{"name":"insertAuthRole","paramTypes":["java.lang.Long","java.lang.Long[]"],"doc":" 用户授权角色\n\n @param userId 用户Id\n @param roleIds 角色ID串\n"},{"name":"deptTree","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 获取部门树列表\n"}],"constructors":[]}
\ No newline at end of file
#错误消息
not.null=* 必须填写
user.jcaptcha.error=验证码错误
user.jcaptcha.expire=验证码已失效
user.not.exists=对不起, 您的账号:{0} 不存在.
user.password.not.match=用户不存在/密码错误
user.password.retry.limit.count=密码输入错误{0}次
user.password.retry.limit.exceed=密码输入错误{0}次,帐户锁定{1}分钟
user.password.delete=对不起,您的账号:{0} 已被删除
user.blocked=对不起,您的账号:{0} 已禁用,请联系管理员
role.blocked=角色已封禁,请联系管理员
user.logout.success=退出成功
length.not.valid=长度必须在{min}到{max}个字符之间
user.username.not.blank=用户名不能为空
user.username.not.valid=* 2到20个汉字、字母、数字或下划线组成,且必须以非数字开头
user.username.length.valid=账户长度必须在{min}到{max}个字符之间
user.password.not.blank=用户密码不能为空
user.password.length.valid=用户密码长度必须在{min}到{max}个字符之间
user.password.not.valid=* 5-50个字符
user.email.not.valid=邮箱格式错误
user.email.not.blank=邮箱不能为空
user.phonenumber.not.blank=用户手机号不能为空
user.mobile.phone.number.not.valid=手机号格式错误
user.login.success=登录成功
user.register.success=注册成功
user.register.save.error=保存用户 {0} 失败,注册账号已存在
user.register.error=注册失败,请联系系统管理人员
user.notfound=请重新登录
user.forcelogout=管理员强制退出,请重新登录
user.unknown.error=未知错误,请重新登录
##文件上传消息
upload.exceed.maxSize=上传的文件大小超出限制的文件大小!<br/>允许的文件最大大小是:{0}MB!
upload.filename.exceed.length=上传的文件名最长{0}个字符
##权限
no.permission=您没有数据的权限,请联系管理员添加权限 [{0}]
no.create.permission=您没有创建数据的权限,请联系管理员添加权限 [{0}]
no.update.permission=您没有修改数据的权限,请联系管理员添加权限 [{0}]
no.delete.permission=您没有删除数据的权限,请联系管理员添加权限 [{0}]
no.export.permission=您没有导出数据的权限,请联系管理员添加权限 [{0}]
no.view.permission=您没有查看数据的权限,请联系管理员添加权限 [{0}]
repeat.submit.message=不允许重复提交,请稍候再试
rate.limiter.message=访问过于频繁,请稍候再试
sms.code.not.blank=短信验证码不能为空
sms.code.retry.limit.count=短信验证码输入错误{0}次
sms.code.retry.limit.exceed=短信验证码输入错误{0}次,帐户锁定{1}分钟
email.code.not.blank=邮箱验证码不能为空
email.code.retry.limit.count=邮箱验证码输入错误{0}次
email.code.retry.limit.exceed=邮箱验证码输入错误{0}次,帐户锁定{1}分钟
xcx.code.not.blank=小程序code不能为空
#系统信息
system.success=operation successful
system.fail=operation failed
#错误消息
not.null=* Required fill in
user.jcaptcha.error=Captcha error
user.jcaptcha.expire=Captcha invalid
user.not.exists=Sorry, your account: {0} does not exist
user.password.not.match=User does not exist/Password error
user.password.retry.limit.count=Password input error {0} times
user.password.retry.limit.exceed=Password input error {0} times, account locked for {1} minutes
user.password.delete=Sorry, your account:{0} has been deleted
user.blocked=Sorry, your account: {0} has been disabled. Please contact the administrator
role.blocked=Role disabled,please contact administrators
user.logout.success=Exit successful
length.not.valid=The length must be between {min} and {max} characters
user.username.not.blank=Username cannot be blank
user.username.not.valid=* 2 to 20 chinese characters, letters, numbers or underscores, and must start with a non number
user.username.length.valid=Account length must be between {min} and {max} characters
user.password.not.blank=Password cannot be empty
user.password.length.valid=Password length must be between {min} and {max} characters
user.password.not.valid=* 5-50 characters
user.email.not.valid=Mailbox format error
user.email.not.blank=Mailbox cannot be blank
user.phonenumber.not.blank=Phone number cannot be blank
user.mobile.phone.number.not.valid=Phone number format error
user.login.success=Login successful
user.register.success=Register successful
user.register.save.error=Failed to save user {0}, The registered account already exists
user.register.error=Register failed, please contact system administrator
user.notfound=Please login again
user.forcelogout=The administrator is forced to exit,please login again
user.unknown.error=Unknown error, please login again
##文件上传消息
upload.exceed.maxSize=The uploaded file size exceeds the limit file size!<br/>the maximum allowed file size is:{0}MB!
upload.filename.exceed.length=The maximum length of uploaded file name is {0} characters
##权限
no.permission=You do not have permission to the data,please contact your administrator to add permissions [{0}]
no.create.permission=You do not have permission to create data,please contact your administrator to add permissions [{0}]
no.update.permission=You do not have permission to modify data,please contact your administrator to add permissions [{0}]
no.delete.permission=You do not have permission to delete data,please contact your administrator to add permissions [{0}]
no.export.permission=You do not have permission to export data,please contact your administrator to add permissions [{0}]
no.view.permission=You do not have permission to view data,please contact your administrator to add permissions [{0}]
repeat.submit.message=Repeat submit is not allowed, please try again later
rate.limiter.message=Visit too frequently, please try again later
sms.code.not.blank=Sms code cannot be blank
sms.code.retry.limit.count=Sms code input error {0} times
sms.code.retry.limit.exceed=Sms code input error {0} times, account locked for {1} minutes
email.code.not.blank=Email code cannot be blank
email.code.retry.limit.count=Email code input error {0} times
email.code.retry.limit.exceed=Email code input error {0} times, account locked for {1} minutes
xcx.code.not.blank=Mini program code cannot be blank
#系统信息
system.success=操作成功
system.fail=操作失败
#错误消息
not.null=* 必须填写
user.jcaptcha.error=验证码错误
user.jcaptcha.expire=验证码已失效
user.not.exists=对不起, 您的账号:{0} 不存在.
user.password.not.match=用户不存在/密码错误
user.password.retry.limit.count=密码输入错误{0}次
user.password.retry.limit.exceed=密码输入错误{0}次,帐户锁定{1}分钟
user.password.delete=对不起,您的账号:{0} 已被删除
user.blocked=对不起,您的账号:{0} 已禁用,请联系管理员
role.blocked=角色已封禁,请联系管理员
user.logout.success=退出成功
length.not.valid=长度必须在{min}到{max}个字符之间
user.username.not.blank=用户名不能为空
user.username.not.valid=* 2到20个汉字、字母、数字或下划线组成,且必须以非数字开头
user.username.length.valid=账户长度必须在{min}到{max}个字符之间
user.password.not.blank=用户密码不能为空
user.password.length.valid=用户密码长度必须在{min}到{max}个字符之间
user.password.not.valid=* 5-50个字符
user.email.not.valid=邮箱格式错误
user.email.not.blank=邮箱不能为空
user.phonenumber.not.blank=用户手机号不能为空
user.mobile.phone.number.not.valid=手机号格式错误
user.login.success=登录成功
user.register.success=注册成功
user.register.save.error=保存用户 {0} 失败,注册账号已存在
user.register.error=注册失败,请联系系统管理人员
user.notfound=请重新登录
user.forcelogout=管理员强制退出,请重新登录
user.unknown.error=未知错误,请重新登录
##文件上传消息
upload.exceed.maxSize=上传的文件大小超出限制的文件大小!<br/>允许的文件最大大小是:{0}MB!
upload.filename.exceed.length=上传的文件名最长{0}个字符
##权限
no.permission=您没有数据的权限,请联系管理员添加权限 [{0}]
no.create.permission=您没有创建数据的权限,请联系管理员添加权限 [{0}]
no.update.permission=您没有修改数据的权限,请联系管理员添加权限 [{0}]
no.delete.permission=您没有删除数据的权限,请联系管理员添加权限 [{0}]
no.export.permission=您没有导出数据的权限,请联系管理员添加权限 [{0}]
no.view.permission=您没有查看数据的权限,请联系管理员添加权限 [{0}]
repeat.submit.message=不允许重复提交,请稍候再试
rate.limiter.message=访问过于频繁,请稍候再试
sms.code.not.blank=短信验证码不能为空
sms.code.retry.limit.count=短信验证码输入错误{0}次
sms.code.retry.limit.exceed=短信验证码输入错误{0}次,帐户锁定{1}分钟
email.code.not.blank=邮箱验证码不能为空
email.code.retry.limit.count=邮箱验证码输入错误{0}次
email.code.retry.limit.exceed=邮箱验证码输入错误{0}次,帐户锁定{1}分钟
xcx.code.not.blank=小程序code不能为空
#系统信息
system.success=操作成功
system.fail=操作失败
#错误消息
not.null=* 必须填写
user.jcaptcha.error=验证码错误
user.jcaptcha.expire=验证码已失效
user.not.exists=对不起, 您的账号:{0} 不存在.
user.password.not.match=用户不存在/密码错误
user.password.retry.limit.count=密码输入错误{0}次
user.password.retry.limit.exceed=密码输入错误{0}次,帐户锁定{1}分钟
user.password.delete=对不起,您的账号:{0} 已被删除
user.blocked=对不起,您的账号:{0} 已禁用,请联系管理员
role.blocked=角色已封禁,请联系管理员
user.logout.success=退出成功
length.not.valid=长度必须在{min}到{max}个字符之间
user.username.not.blank=用户名不能为空
user.username.not.valid=* 2到20个汉字、字母、数字或下划线组成,且必须以非数字开头
user.username.length.valid=账户长度必须在{min}到{max}个字符之间
user.password.not.blank=用户密码不能为空
user.password.length.valid=用户密码长度必须在{min}到{max}个字符之间
user.password.not.valid=* 5-50个字符
user.email.not.valid=邮箱格式错误
user.email.not.blank=邮箱不能为空
user.phonenumber.not.blank=用户手机号不能为空
user.mobile.phone.number.not.valid=手机号格式错误
user.login.success=登录成功
user.register.success=注册成功
user.register.save.error=保存用户 {0} 失败,注册账号已存在
user.register.error=注册失败,请联系系统管理人员
user.notfound=请重新登录
user.forcelogout=管理员强制退出,请重新登录
user.unknown.error=未知错误,请重新登录
##文件上传消息
upload.exceed.maxSize=上传的文件大小超出限制的文件大小!<br/>允许的文件最大大小是:{0}MB!
upload.filename.exceed.length=上传的文件名最长{0}个字符
##权限
no.permission=您没有数据的权限,请联系管理员添加权限 [{0}]
no.create.permission=您没有创建数据的权限,请联系管理员添加权限 [{0}]
no.update.permission=您没有修改数据的权限,请联系管理员添加权限 [{0}]
no.delete.permission=您没有删除数据的权限,请联系管理员添加权限 [{0}]
no.export.permission=您没有导出数据的权限,请联系管理员添加权限 [{0}]
no.view.permission=您没有查看数据的权限,请联系管理员添加权限 [{0}]
repeat.submit.message=不允许重复提交,请稍候再试
rate.limiter.message=访问过于频繁,请稍候再试
sms.code.not.blank=短信验证码不能为空
sms.code.retry.limit.count=短信验证码输入错误{0}次
sms.code.retry.limit.exceed=短信验证码输入错误{0}次,帐户锁定{1}分钟
email.code.not.blank=邮箱验证码不能为空
email.code.retry.limit.count=邮箱验证码输入错误{0}次
email.code.retry.limit.exceed=邮箱验证码输入错误{0}次,帐户锁定{1}分钟
xcx.code.not.blank=小程序code不能为空
##业务
core.data.not.exists=数据不存在
core.advert.status.fail=广告状态不存在
This file is too large to display.
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<property name="log.path" value="./logs"/>
<property name="console.log.pattern"
value="%red(%d{yyyy-MM-dd HH:mm:ss}) %green([%thread]) %highlight(%-5level) %boldMagenta(%logger{36}%n) - %msg%n"/>
<property name="log.pattern" value="%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n"/>
<!-- 控制台输出 -->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${console.log.pattern}</pattern>
<charset>utf-8</charset>
</encoder>
</appender>
<!-- 控制台输出 -->
<appender name="file_console" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/sys-console.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/sys-console.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大 1天 -->
<maxHistory>1</maxHistory>
</rollingPolicy>
<encoder>
<pattern>${log.pattern}</pattern>
<charset>utf-8</charset>
</encoder>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<!-- 过滤的级别 -->
<level>INFO</level>
</filter>
</appender>
<!-- 系统日志输出 -->
<appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/sys-info.log</file>
<!-- 循环政策:基于时间创建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/sys-info.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory>
</rollingPolicy>
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!-- 过滤的级别 -->
<level>INFO</level>
<!-- 匹配时的操作:接收(记录) -->
<onMatch>ACCEPT</onMatch>
<!-- 不匹配时的操作:拒绝(不记录) -->
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/sys-error.log</file>
<!-- 循环政策:基于时间创建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/sys-error.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory>
</rollingPolicy>
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!-- 过滤的级别 -->
<level>ERROR</level>
<!-- 匹配时的操作:接收(记录) -->
<onMatch>ACCEPT</onMatch>
<!-- 不匹配时的操作:拒绝(不记录) -->
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<!-- info异步输出 -->
<appender name="async_info" class="ch.qos.logback.classic.AsyncAppender">
<!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 -->
<discardingThreshold>0</discardingThreshold>
<!-- 更改默认的队列的深度,该值会影响性能.默认值为256 -->
<queueSize>512</queueSize>
<!-- 添加附加的appender,最多只能添加一个 -->
<appender-ref ref="file_info"/>
</appender>
<!-- error异步输出 -->
<appender name="async_error" class="ch.qos.logback.classic.AsyncAppender">
<!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 -->
<discardingThreshold>0</discardingThreshold>
<!-- 更改默认的队列的深度,该值会影响性能.默认值为256 -->
<queueSize>512</queueSize>
<!-- 添加附加的appender,最多只能添加一个 -->
<appender-ref ref="file_error"/>
</appender>
<!-- 整合 skywalking 控制台输出 tid -->
<!-- <appender name="console" class="ch.qos.logback.core.ConsoleAppender">-->
<!-- <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">-->
<!-- <layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout">-->
<!-- <pattern>[%tid] ${console.log.pattern}</pattern>-->
<!-- </layout>-->
<!-- <charset>utf-8</charset>-->
<!-- </encoder>-->
<!-- </appender>-->
<!-- 整合 skywalking 推送采集日志 -->
<!-- <appender name="sky_log" class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.log.GRPCLogClientAppender">-->
<!-- <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">-->
<!-- <layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout">-->
<!-- <pattern>[%tid] ${console.log.pattern}</pattern>-->
<!-- </layout>-->
<!-- <charset>utf-8</charset>-->
<!-- </encoder>-->
<!-- </appender>-->
<!--系统操作日志-->
<root level="info">
<appender-ref ref="console" />
<appender-ref ref="async_info" />
<appender-ref ref="async_error" />
<appender-ref ref="file_console" />
<!-- <appender-ref ref="sky_log"/>-->
</root>
</configuration>
# p6spy 性能分析插件配置文件
modulelist=com.baomidou.mybatisplus.extension.p6spy.MybatisPlusLogFactory,com.p6spy.engine.outage.P6OutageFactory
# 自定义日志打印
logMessageFormat=com.baomidou.mybatisplus.extension.p6spy.P6SpyLogger
#日志输出到控制台
appender=com.baomidou.mybatisplus.extension.p6spy.StdoutLogger
# 使用日志系统记录 sql
#appender=com.p6spy.engine.spy.appender.Slf4JLogger
# 设置 p6spy driver 代理
#deregisterdrivers=true
# 取消JDBC URL前缀
useprefix=true
# 配置记录 Log 例外,可去掉的结果集有error,info,batch,debug,statement,commit,rollback,result,resultset.
excludecategories=info,debug,result,commit,resultset
# 日期格式
dateformat=yyyy-MM-dd HH:mm:ss
# SQL语句打印时间格式
databaseDialectTimestampFormat=yyyy-MM-dd HH:mm:ss
# 实际驱动可多个
#driverlist=org.h2.Driver
# 是否开启慢SQL记录
outagedetection=true
# 慢SQL记录标准 2 秒
outagedetectioninterval=2
# 是否过滤 Log
filter=true
# 过滤 Log 时所排除的 sql 关键字,以逗号分隔
exclude=SELECT 1
com\lego\web\controller\system\SysOssConfigController.class
com\lego\web\controller\monitor\SysUserOnlineController__Javadoc.json
com\lego\web\controller\monitor\SysOperlogController.class
com\lego\web\controller\system\SysMenuController.class
com\lego\web\controller\system\SysPostController.class
com\lego\LegoManageApplication.class
com\lego\web\controller\system\SysEnumerationController__Javadoc.json
com\lego\web\controller\monitor\SysOperlogController__Javadoc.json
com\lego\web\controller\system\SysRoleController.class
com\lego\web\controller\monitor\SysLogininforController.class
com\lego\web\controller\core\CourseController__Javadoc.json
com\lego\web\controller\common\CaptchaController__Javadoc.json
com\lego\web\controller\system\SysProfileController.class
com\lego\web\controller\core\EntiretyController__Javadoc.json
com\lego\web\controller\core\UpgradeController.class
com\lego\web\controller\monitor\SysUserOnlineController.class
com\lego\web\controller\core\QuestionController.class
com\lego\web\controller\system\SysNoticeController__Javadoc.json
com\lego\LegoManageApplication__Javadoc.json
com\lego\web\controller\system\SysConfigController__Javadoc.json
com\lego\web\controller\system\SysProfileController__Javadoc.json
com\lego\web\controller\system\SysMenuController__Javadoc.json
com\lego\web\controller\common\CaptchaController.class
com\lego\web\controller\system\SysConfigController.class
com\lego\web\controller\system\SysOssController__Javadoc.json
com\lego\web\controller\system\SysDictTypeController.class
com\lego\LegoManageServletInitializer.class
com\lego\web\controller\core\AdvertController__Javadoc.json
com\lego\web\controller\system\SysPostController__Javadoc.json
com\lego\web\controller\system\SysRegisterController__Javadoc.json
com\lego\web\controller\system\SysDictDataController.class
com\lego\web\controller\system\SysOssConfigController__Javadoc.json
com\lego\web\controller\system\SysUserController__Javadoc.json
com\lego\web\controller\core\BuildingBlockController.class
com\lego\web\controller\system\SysIndexController__Javadoc.json
com\lego\web\controller\system\SysDictTypeController__Javadoc.json
com\lego\web\controller\system\SysRegisterController.class
com\lego\web\controller\monitor\CacheController.class
com\lego\web\controller\monitor\CacheController__Javadoc.json
com\lego\web\controller\system\SysIndexController.class
com\lego\web\controller\system\SysOssController.class
com\lego\web\controller\core\BuildingBlockController__Javadoc.json
com\lego\web\controller\core\QuestionController__Javadoc.json
com\lego\web\controller\system\SysNoticeController.class
com\lego\web\controller\monitor\SysLogininforController__Javadoc.json
com\lego\web\controller\core\CourseController.class
com\lego\web\controller\system\SysDeptController.class
com\lego\LegoManageServletInitializer__Javadoc.json
com\lego\web\controller\system\SysUserController.class
com\lego\web\controller\system\SysDeptController__Javadoc.json
com\lego\web\controller\core\UpgradeController__Javadoc.json
com\lego\web\controller\core\EntiretyController.class
com\lego\web\controller\core\AdvertController.class
com\lego\web\controller\system\SysRoleController__Javadoc.json
com\lego\web\controller\system\SysLoginController.class
com\lego\web\controller\system\SysLoginController__Javadoc.json
com\lego\web\controller\system\SysDictDataController__Javadoc.json
com\lego\web\controller\system\SysEnumerationController.class
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\common\CaptchaController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\monitor\SysOperlogController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\monitor\CacheController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\core\UpgradeController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysOssController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\core\QuestionController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysDictDataController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysOssConfigController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\monitor\SysUserOnlineController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysUserController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysEnumerationController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysIndexController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysMenuController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\core\AdvertController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\core\EntiretyController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysLoginController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysRegisterController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysPostController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\LegoManageApplication.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysConfigController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysDictTypeController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\core\BuildingBlockController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\monitor\SysLogininforController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysDeptController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysProfileController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\core\CourseController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysRoleController.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\LegoManageServletInitializer.java
F:\workspace\lego-manage\lego-admin\src\main\java\com\lego\web\controller\system\SysNoticeController.java
{
"groups": [
{
"name": "lego",
"type": "com.lego.common.config.LegoConfig",
"sourceType": "com.lego.common.config.LegoConfig"
}
],
"properties": [
{
"name": "lego.cache-lazy",
"type": "java.lang.Boolean",
"description": "缓存懒加载",
"sourceType": "com.lego.common.config.LegoConfig",
"defaultValue": false
},
{
"name": "lego.copyright-year",
"type": "java.lang.String",
"description": "版权年份",
"sourceType": "com.lego.common.config.LegoConfig"
},
{
"name": "lego.name",
"type": "java.lang.String",
"description": "项目名称",
"sourceType": "com.lego.common.config.LegoConfig"
},
{
"name": "lego.version",
"type": "java.lang.String",
"description": "版本",
"sourceType": "com.lego.common.config.LegoConfig"
}
],
"hints": []
}
\ No newline at end of file
{"doc":" 无符号计算生成器\n\n @author Lion Li\n","fields":[{"name":"numberLength","doc":" 参与计算数字最大长度\n"}],"enumConstants":[],"methods":[{"name":"getLength","paramTypes":[],"doc":" 获取验证码长度\n\n @return 验证码长度\n"},{"name":"getLimit","paramTypes":[],"doc":" 根据长度获取参与计算数字最大值\n\n @return 最大值\n"}],"constructors":[{"name":"<init>","paramTypes":[],"doc":" 构造\n"},{"name":"<init>","paramTypes":["int"],"doc":" 构造\n\n @param numberLength 参与计算最大数字位数\n"}]}
\ No newline at end of file
{"doc":" 读取项目相关配置\n\n @author Lion Li\n","fields":[{"name":"name","doc":" 项目名称\n"},{"name":"version","doc":" 版本\n"},{"name":"copyrightYear","doc":" 版权年份\n"},{"name":"cacheLazy","doc":" 缓存懒加载\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 缓存的key 常量\n\n @author gyongyi\n","fields":[{"name":"ONLINE_TOKEN_KEY","doc":" 在线用户 redis key\n"},{"name":"CAPTCHA_CODE_KEY","doc":" 验证码 redis key\n"},{"name":"SYS_CONFIG_KEY","doc":" 参数管理 cache key\n"},{"name":"SYS_DICT_KEY","doc":" 字典管理 cache key\n"},{"name":"REPEAT_SUBMIT_KEY","doc":" 防重提交 redis key\n"},{"name":"RATE_LIMIT_KEY","doc":" 限流 redis key\n"},{"name":"PWD_ERR_CNT_KEY","doc":" 登录账户密码错误次数 redis key\n"},{"name":"SYS_USER_SEX","doc":"性别缓存 key "},{"name":"ORDER_TYPE","doc":"订单类型 key "}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 缓存组名称常量\n <p>\n key 格式为 cacheNames#ttl#maxIdleTime#maxSize\n <p>\n ttl 过期时间 如果设置为0则不过期 默认为0\n maxIdleTime 最大空闲时间 根据LRU算法清理空闲数据 如果设置为0则不检测 默认为0\n maxSize 组最大长度 根据LRU算法清理溢出数据 如果设置为0则无限长 默认为0\n <p>\n 例子: test#60s、test#0#60s、test#0#1m#1000、test#1h#0#500\n\n @author Lion Li\n","fields":[{"name":"DEMO_CACHE","doc":" 演示案例\n"},{"name":"SYS_CONFIG","doc":" 系统配置\n"},{"name":"SYS_DICT","doc":" 数据字典\n"},{"name":"SYS_USER_NAME","doc":" 用户账户\n"},{"name":"SYS_DEPT","doc":" 部门\n"},{"name":"SYS_OSS","doc":" OSS内容\n"},{"name":"SYS_OSS_CONFIG","doc":" OSS配置\n"},{"name":"ONLINE_TOKEN","doc":" 在线用户\n"},{"name":"SYS_ENUMERATION_TYPE","doc":" 枚举缓存key\n"},{"name":"SYS_AREA","doc":" 枚举缓存key\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 通用常量信息\n\n @author gyongyi\n","fields":[{"name":"UTF8","doc":" UTF-8 字符集\n"},{"name":"GBK","doc":" GBK 字符集\n"},{"name":"WWW","doc":" www主域\n"},{"name":"HTTP","doc":" http请求\n"},{"name":"HTTPS","doc":" https请求\n"},{"name":"SUCCESS","doc":" 通用成功标识\n"},{"name":"FAIL","doc":" 通用失败标识\n"},{"name":"LOGIN_SUCCESS","doc":" 登录成功\n"},{"name":"LOGOUT","doc":" 注销\n"},{"name":"REGISTER","doc":" 注册\n"},{"name":"LOGIN_FAIL","doc":" 登录失败\n"},{"name":"CAPTCHA_EXPIRATION","doc":" 验证码有效期(分钟)\n"},{"name":"TOKEN","doc":" 令牌\n"},{"name":"TREE_TOPE_LVEL","doc":" 顶级树节点\n"},{"name":"SEPARATOR","doc":" 分隔符\n"},{"name":"TXT_SEPARATOR","doc":" 分隔符\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 代码生成通用常量\n\n @author gyongyi\n","fields":[{"name":"TPL_CRUD","doc":" 单表(增删改查)\n"},{"name":"TPL_TREE","doc":" 树表(增删改查)\n"},{"name":"TPL_SUB","doc":" 主子表(增删改查)\n"},{"name":"TREE_CODE","doc":" 树编码字段\n"},{"name":"TREE_PARENT_CODE","doc":" 树父编码字段\n"},{"name":"TREE_NAME","doc":" 树名称字段\n"},{"name":"PARENT_MENU_ID","doc":" 上级菜单ID字段\n"},{"name":"PARENT_MENU_NAME","doc":" 上级菜单名称字段\n"},{"name":"COLUMNTYPE_STR","doc":" 数据库字符串类型\n"},{"name":"COLUMNTYPE_TEXT","doc":" 数据库文本类型\n"},{"name":"COLUMNTYPE_TIME","doc":" 数据库时间类型\n"},{"name":"COLUMNTYPE_NUMBER","doc":" 数据库数字类型\n"},{"name":"COLUMNNAME_NOT_ADD","doc":" BO对象 不需要添加字段\n"},{"name":"COLUMNNAME_NOT_EDIT","doc":" BO对象 不需要编辑字段\n"},{"name":"COLUMNNAME_NOT_LIST","doc":" VO对象 不需要返回字段\n"},{"name":"COLUMNNAME_NOT_QUERY","doc":" BO对象 不需要查询字段\n"},{"name":"BASE_ENTITY","doc":" Entity基类字段\n"},{"name":"TREE_ENTITY","doc":" Tree基类字段\n"},{"name":"HTML_INPUT","doc":" 文本框\n"},{"name":"HTML_TEXTAREA","doc":" 文本域\n"},{"name":"HTML_SELECT","doc":" 下拉框\n"},{"name":"HTML_RADIO","doc":" 单选框\n"},{"name":"HTML_CHECKBOX","doc":" 复选框\n"},{"name":"HTML_DATETIME","doc":" 日期控件\n"},{"name":"HTML_IMAGE_UPLOAD","doc":" 图片上传控件\n"},{"name":"HTML_FILE_UPLOAD","doc":" 文件上传控件\n"},{"name":"HTML_EDITOR","doc":" 富文本控件\n"},{"name":"TYPE_STRING","doc":" 字符串类型\n"},{"name":"TYPE_INTEGER","doc":" 整型\n"},{"name":"TYPE_LONG","doc":" 长整型\n"},{"name":"TYPE_DOUBLE","doc":" 浮点型\n"},{"name":"TYPE_BIGDECIMAL","doc":" 高精度计算类型\n"},{"name":"TYPE_DATE","doc":" 时间类型\n"},{"name":"QUERY_LIKE","doc":" 模糊查询\n"},{"name":"QUERY_EQ","doc":" 相等查询\n"},{"name":"REQUIRE","doc":" 需要\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 返回状态码\n\n @author Lion Li\n","fields":[{"name":"SUCCESS","doc":" 操作成功\n"},{"name":"CREATED","doc":" 对象创建成功\n"},{"name":"ACCEPTED","doc":" 请求已经被接受\n"},{"name":"NO_CONTENT","doc":" 操作已经执行成功,但是没有返回数据\n"},{"name":"MOVED_PERM","doc":" 资源已被移除\n"},{"name":"SEE_OTHER","doc":" 重定向\n"},{"name":"NOT_MODIFIED","doc":" 资源没有被修改\n"},{"name":"BAD_REQUEST","doc":" 参数列表错误(缺少,格式不匹配)\n"},{"name":"UNAUTHORIZED","doc":" 未授权\n"},{"name":"FORBIDDEN","doc":" 访问受限,授权过期\n"},{"name":"NOT_FOUND","doc":" 资源,服务未找到\n"},{"name":"BAD_METHOD","doc":" 不允许的http方法\n"},{"name":"CONFLICT","doc":" 资源冲突,或者资源被锁\n"},{"name":"UNSUPPORTED_TYPE","doc":" 不支持的数据,媒体类型\n"},{"name":"ERROR","doc":" 系统内部错误\n"},{"name":"NOT_IMPLEMENTED","doc":" 接口未实现\n"},{"name":"WARN","doc":" 系统警告消息\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 系统常量配置\n","fields":[{"name":"YES","doc":"是/否 "},{"name":"ENUMERATION_LABEL","doc":"枚举数据,属性名称 "}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 翻译常量\n\n @author Lion Li\n","fields":[{"name":"USER_ID_TO_NAME","doc":" 用户id转账号\n"},{"name":"DEPT_ID_TO_NAME","doc":" 部门id转名称\n"},{"name":"DICT_TYPE_TO_LABEL","doc":" 字典type转label\n"},{"name":"OSS_ID_TO_URL","doc":" ossId转url\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户常量信息\n\n @author gyongyi\n","fields":[{"name":"SYS_USER","doc":" 平台内系统用户的唯一标志\n"},{"name":"NORMAL","doc":" 正常状态\n"},{"name":"EXCEPTION","doc":" 异常状态\n"},{"name":"USER_NORMAL","doc":" 用户正常状态\n"},{"name":"USER_DISABLE","doc":" 用户封禁状态\n"},{"name":"ROLE_NORMAL","doc":" 角色正常状态\n"},{"name":"ROLE_DISABLE","doc":" 角色封禁状态\n"},{"name":"DEPT_NORMAL","doc":" 部门正常状态\n"},{"name":"DEPT_DISABLE","doc":" 部门停用状态\n"},{"name":"POST_NORMAL","doc":" 岗位正常状态\n"},{"name":"POST_DISABLE","doc":" 岗位停用状态\n"},{"name":"DICT_NORMAL","doc":" 字典正常状态\n"},{"name":"YES","doc":" 是否为系统默认(是)\n"},{"name":"YES_FRAME","doc":" 是否菜单外链(是)\n"},{"name":"NO_FRAME","doc":" 是否菜单外链(否)\n"},{"name":"MENU_NORMAL","doc":" 菜单正常状态\n"},{"name":"MENU_DISABLE","doc":" 菜单停用状态\n"},{"name":"TYPE_DIR","doc":" 菜单类型(目录)\n"},{"name":"TYPE_MENU","doc":" 菜单类型(菜单)\n"},{"name":"TYPE_BUTTON","doc":" 菜单类型(按钮)\n"},{"name":"LAYOUT","doc":" Layout组件标识\n"},{"name":"PARENT_VIEW","doc":" ParentView组件标识\n"},{"name":"INNER_LINK","doc":" InnerLink组件标识\n"},{"name":"USERNAME_MIN_LENGTH","doc":" 用户名长度限制\n"},{"name":"PASSWORD_MIN_LENGTH","doc":" 密码长度限制\n"},{"name":"ADMIN_ID","doc":" 超级管理员ID\n"},{"name":"ADMIN_ROLE_KEY","doc":" 超级管理员角色key\n"},{"name":"ADMINISTRATOR","doc":" 管理员角色key\n"},{"name":"MALE","doc":" 性别:0男、1女\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 大数值转换\n Excel 数值长度位15位 大于15位的数值转换位字符串\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 字典格式化转换处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 枚举格式化转换处理\n\n @author Liang\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" web层通用数据处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"toAjax","paramTypes":["int"],"doc":" 响应返回结果\n\n @param rows 影响行数\n @return 操作结果\n"},{"name":"toAjax","paramTypes":["boolean"],"doc":" 响应返回结果\n\n @param result 结果\n @return 操作结果\n"},{"name":"redirect","paramTypes":["java.lang.String"],"doc":" 页面跳转\n"},{"name":"getLoginUser","paramTypes":[],"doc":" 获取用户缓存信息\n"},{"name":"getUserId","paramTypes":[],"doc":" 获取登录用户id\n"},{"name":"getDeptId","paramTypes":[],"doc":" 获取登录部门id\n"},{"name":"getUsername","paramTypes":[],"doc":" 获取登录用户名\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" Entity基类\n\n @author Lion Li\n","fields":[{"name":"searchValue","doc":" 搜索值\n"},{"name":"createBy","doc":" 创建者\n"},{"name":"createTime","doc":" 创建时间\n"},{"name":"updateBy","doc":" 更新者\n"},{"name":"updateTime","doc":" 更新时间\n"},{"name":"params","doc":" 请求参数\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 分页查询实体类\n\n @author Lion Li\n","fields":[{"name":"pageSize","doc":" 分页大小\n"},{"name":"pageNum","doc":" 当前页数\n"},{"name":"orderByColumn","doc":" 排序列\n"},{"name":"isAsc","doc":" 排序的方向desc或者asc\n"},{"name":"DEFAULT_PAGE_NUM","doc":" 当前记录起始索引 默认值\n"},{"name":"DEFAULT_PAGE_SIZE","doc":" 每页显示记录数 默认值 默认查全部\n"}],"enumConstants":[],"methods":[{"name":"buildOrderItem","paramTypes":[],"doc":" 构建排序\n\n 支持的用法如下:\n {isAsc:\"asc\",orderByColumn:\"id\"} order by id asc\n {isAsc:\"asc\",orderByColumn:\"id,createTime\"} order by id asc,create_time asc\n {isAsc:\"desc\",orderByColumn:\"id,createTime\"} order by id desc,create_time desc\n {isAsc:\"asc,desc\",orderByColumn:\"id,createTime\"} order by id asc,create_time desc\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 响应信息主体\n\n @author Lion Li\n","fields":[{"name":"SUCCESS","doc":" 成功\n"},{"name":"FAIL","doc":" 失败\n"}],"enumConstants":[],"methods":[{"name":"warn","paramTypes":["java.lang.String"],"doc":" 返回警告消息\n\n @param msg 返回内容\n @return 警告消息\n"},{"name":"warn","paramTypes":["java.lang.String","java.lang.Object"],"doc":" 返回警告消息\n\n @param msg 返回内容\n @param data 数据对象\n @return 警告消息\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" Tree基类\n\n @author Lion Li\n","fields":[{"name":"parentName","doc":" 父菜单名称\n"},{"name":"parentId","doc":" 父菜单ID\n"},{"name":"children","doc":" 子部门\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 角色\n\n @author Lion Li\n","fields":[{"name":"roleId","doc":" 角色ID\n"},{"name":"roleName","doc":" 角色名称\n"},{"name":"roleKey","doc":" 角色权限\n"},{"name":"dataScope","doc":" 数据范围(1:所有数据权限;2:自定义数据权限;3:本部门数据权限;4:本部门及以下数据权限;5:仅本人数据权限)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 当前在线会话\n\n @author gyongyi\n","fields":[{"name":"tokenId","doc":" 会话编号\n"},{"name":"deptName","doc":" 部门名称\n"},{"name":"userName","doc":" 用户名称\n"},{"name":"ipaddr","doc":" 登录IP地址\n"},{"name":"loginLocation","doc":" 登录地址\n"},{"name":"browser","doc":" 浏览器类型\n"},{"name":"os","doc":" 操作系统\n"},{"name":"loginTime","doc":" 登录时间\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 部门表 sys_dept\n\n @author Lion Li\n","fields":[{"name":"deptId","doc":" 部门ID\n"},{"name":"deptName","doc":" 部门名称\n"},{"name":"location","doc":" 部门所在位置\n"},{"name":"orderNum","doc":" 显示顺序\n"},{"name":"leader","doc":" 负责人\n"},{"name":"phone","doc":" 联系电话\n"},{"name":"email","doc":" 邮箱\n"},{"name":"status","doc":" 部门状态:0正常,1停用\n"},{"name":"delFlag","doc":" 删除标志(0代表存在 2代表删除)\n"},{"name":"ancestors","doc":" 祖级列表\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 字典数据表 sys_dict_data\n\n @author Lion Li\n","fields":[{"name":"dictCode","doc":" 字典编码\n"},{"name":"dictSort","doc":" 字典排序\n"},{"name":"dictLabel","doc":" 字典标签\n"},{"name":"dictValue","doc":" 字典键值\n"},{"name":"dictType","doc":" 字典类型\n"},{"name":"cssClass","doc":" 样式属性(其他样式扩展)\n"},{"name":"listClass","doc":" 表格字典样式\n"},{"name":"isDefault","doc":" 是否默认(Y是 N否)\n"},{"name":"status","doc":" 状态(0正常 1停用)\n"},{"name":"remark","doc":" 备注\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 字典类型表 sys_dict_type\n\n @author Lion Li\n","fields":[{"name":"dictId","doc":" 字典主键\n"},{"name":"dictName","doc":" 字典名称\n"},{"name":"dictType","doc":" 字典类型\n"},{"name":"status","doc":" 状态(0正常 1停用)\n"},{"name":"remark","doc":" 备注\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 菜单权限表 sys_menu\n\n @author Lion Li\n","fields":[{"name":"menuId","doc":" 菜单ID\n"},{"name":"menuName","doc":" 菜单名称\n"},{"name":"orderNum","doc":" 显示顺序\n"},{"name":"path","doc":" 路由地址\n"},{"name":"component","doc":" 组件路径\n"},{"name":"queryParam","doc":" 路由参数\n"},{"name":"isFrame","doc":" 是否为外链(0是 1否)\n"},{"name":"isCache","doc":" 是否缓存(0缓存 1不缓存)\n"},{"name":"menuType","doc":" 类型(M目录 C菜单 F按钮)\n"},{"name":"visible","doc":" 显示状态(0显示 1隐藏)\n"},{"name":"isCommon","doc":" 是否首页常用菜单 0否 1是\n"},{"name":"status","doc":" 菜单状态(0正常 1停用)\n"},{"name":"perms","doc":" 权限字符串\n"},{"name":"icon","doc":" 菜单图标\n"},{"name":"remark","doc":" 备注\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 角色表 sys_role\n\n @author Lion Li\n","fields":[{"name":"roleId","doc":" 角色ID\n"},{"name":"roleName","doc":" 角色名称\n"},{"name":"roleKey","doc":" 角色权限\n"},{"name":"roleSort","doc":" 角色排序\n"},{"name":"dataScope","doc":" 数据范围(1:所有数据权限;2:自定义数据权限;3:本部门数据权限;4:本部门及以下数据权限;5:仅本人数据权限)\n"},{"name":"menuCheckStrictly","doc":" 菜单树选择项是否关联显示( 0:父子不互相关联显示 1:父子互相关联显示)\n"},{"name":"deptCheckStrictly","doc":" 部门树选择项是否关联显示(0:父子不互相关联显示 1:父子互相关联显示 )\n"},{"name":"status","doc":" 角色状态(0正常 1停用)\n"},{"name":"delFlag","doc":" 删除标志(0代表存在 2代表删除)\n"},{"name":"remark","doc":" 备注\n"},{"name":"flag","doc":" 用户是否存在此角色标识 默认不存在\n"},{"name":"menuIds","doc":" 菜单组\n"},{"name":"deptIds","doc":" 部门组(数据权限)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户对象 sys_user\n\n @author Lion Li\n","fields":[{"name":"userId","doc":" 用户ID\n"},{"name":"deptId","doc":" 部门ID\n"},{"name":"userName","doc":" 用户账号\n"},{"name":"nickName","doc":" 用户昵称\n"},{"name":"userType","doc":" 用户类型(sys_user系统用户)\n"},{"name":"email","doc":" 用户邮箱\n"},{"name":"phonenumber","doc":" 手机号码\n"},{"name":"sex","doc":" 用户性别\n"},{"name":"avatar","doc":" 用户头像\n"},{"name":"password","doc":" 密码\n"},{"name":"status","doc":" 帐号状态(0正常 1停用)\n"},{"name":"delFlag","doc":" 删除标志(0代表存在 2代表删除)\n"},{"name":"loginIp","doc":" 最后登录IP\n"},{"name":"loginDate","doc":" 最后登录时间\n"},{"name":"remark","doc":" 备注\n"},{"name":"dept","doc":" 部门对象\n"},{"name":"roles","doc":" 角色对象\n"},{"name":"roleIds","doc":" 角色组\n"},{"name":"postIds","doc":" 岗位组\n"},{"name":"roleId","doc":" 数据权限 当前角色ID\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 登录事件\n\n @author Lion Li\n","fields":[{"name":"username","doc":" 用户账号\n"},{"name":"status","doc":" 登录状态 0成功 1失败\n"},{"name":"message","doc":" 提示消息\n"},{"name":"request","doc":" 请求体\n"},{"name":"args","doc":" 其他参数\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 操作日志事件\n\n @author Lion Li\n","fields":[{"name":"operId","doc":" 日志主键\n"},{"name":"title","doc":" 操作模块\n"},{"name":"businessType","doc":" 业务类型(0其它 1新增 2修改 3删除)\n"},{"name":"businessTypes","doc":" 业务类型数组\n"},{"name":"method","doc":" 请求方法\n"},{"name":"requestMethod","doc":" 请求方式\n"},{"name":"operatorType","doc":" 操作类别(0其它 1后台用户 2手机端用户)\n"},{"name":"operName","doc":" 操作人员\n"},{"name":"deptName","doc":" 部门名称\n"},{"name":"operUrl","doc":" 请求url\n"},{"name":"operIp","doc":" 操作地址\n"},{"name":"operLocation","doc":" 操作地点\n"},{"name":"operParam","doc":" 请求参数\n"},{"name":"jsonResult","doc":" 返回参数\n"},{"name":"status","doc":" 操作状态(0正常 1异常)\n"},{"name":"errorMsg","doc":" 错误消息\n"},{"name":"operTime","doc":" 操作时间\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 邮箱登录对象\n\n @author Lion Li\n","fields":[{"name":"email","doc":" 邮箱\n"},{"name":"emailCode","doc":" 邮箱code\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户登录对象\n\n @author Lion Li\n","fields":[{"name":"username","doc":" 用户名\n"},{"name":"password","doc":" 用户密码\n"},{"name":"code","doc":" 验证码\n"},{"name":"uuid","doc":" 唯一标识\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 登录用户身份权限\n\n @author Lion Li\n","fields":[{"name":"userId","doc":" 用户ID\n"},{"name":"deptIdList","doc":" 部门ID\n"},{"name":"deptName","doc":" 部门名\n"},{"name":"token","doc":" 用户唯一标识\n"},{"name":"userType","doc":" 用户类型\n"},{"name":"loginTime","doc":" 登录时间\n"},{"name":"expireTime","doc":" 过期时间\n"},{"name":"ipaddr","doc":" 登录IP地址\n"},{"name":"loginLocation","doc":" 登录地点\n"},{"name":"browser","doc":" 浏览器类型\n"},{"name":"os","doc":" 操作系统\n"},{"name":"menuPermission","doc":" 菜单权限\n"},{"name":"rolePermission","doc":" 角色权限\n"},{"name":"username","doc":" 用户名\n"},{"name":"nickName","doc":" 用户账号\n"},{"name":"roles","doc":" 角色对象\n"},{"name":"roleId","doc":" 数据权限 当前角色ID\n"}],"enumConstants":[],"methods":[{"name":"getLoginId","paramTypes":[],"doc":" 获取登录id\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 用户注册对象\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 短信登录对象\n\n @author Lion Li\n","fields":[{"name":"phonenumber","doc":" 手机号\n"},{"name":"smsCode","doc":" 短信code\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 小程序登录用户身份权限\n\n @author Lion Li\n","fields":[{"name":"openid","doc":" openid\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 自定义 Mapper 接口, 实现 自定义扩展\n\n @param <M> mapper 泛型\n @param <T> table 泛型\n @param <V> vo 泛型\n @author Lion Li\n @since 2021-05-13\n","fields":[],"enumConstants":[],"methods":[{"name":"insertBatch","paramTypes":["java.util.Collection"],"doc":" 批量插入\n"},{"name":"updateBatchById","paramTypes":["java.util.Collection"],"doc":" 批量更新\n"},{"name":"insertOrUpdateBatch","paramTypes":["java.util.Collection"],"doc":" 批量插入或更新\n"},{"name":"insertBatch","paramTypes":["java.util.Collection","int"],"doc":" 批量插入(包含限制条数)\n"},{"name":"updateBatchById","paramTypes":["java.util.Collection","int"],"doc":" 批量更新(包含限制条数)\n"},{"name":"insertOrUpdateBatch","paramTypes":["java.util.Collection","int"],"doc":" 批量插入或更新(包含限制条数)\n"},{"name":"insertOrUpdate","paramTypes":["java.lang.Object"],"doc":" 插入或更新(包含限制条数)\n"},{"name":"selectVoById","paramTypes":["java.io.Serializable","java.lang.Class"],"doc":" 根据 ID 查询\n"},{"name":"selectVoBatchIds","paramTypes":["java.util.Collection","java.lang.Class"],"doc":" 查询(根据ID 批量查询)\n"},{"name":"selectVoByMap","paramTypes":["java.util.Map","java.lang.Class"],"doc":" 查询(根据 columnMap 条件)\n"},{"name":"selectVoOne","paramTypes":["com.baomidou.mybatisplus.core.conditions.Wrapper","java.lang.Class"],"doc":" 根据 entity 条件,查询一条记录\n"},{"name":"selectVoList","paramTypes":["com.baomidou.mybatisplus.core.conditions.Wrapper","java.lang.Class"],"doc":" 根据 entity 条件,查询全部记录\n"},{"name":"selectVoPage","paramTypes":["com.baomidou.mybatisplus.core.metadata.IPage","com.baomidou.mybatisplus.core.conditions.Wrapper","java.lang.Class"],"doc":" 分页查询VO\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 表格分页数据对象\n\n @author Lion Li\n","fields":[{"name":"total","doc":" 总记录数\n"},{"name":"rows","doc":" 列表数据\n"},{"name":"code","doc":" 消息状态码\n"},{"name":"msg","doc":" 消息内容\n"}],"enumConstants":[],"methods":[],"constructors":[{"name":"<init>","paramTypes":["java.util.List","long"],"doc":" 分页\n\n @param list 列表数据\n @param total 总记录数\n"}]}
\ No newline at end of file
{"doc":" 通用 参数配置服务\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"getConfigValue","paramTypes":["java.lang.String"],"doc":" 根据参数 key 获取参数值\n\n @param configKey 参数 key\n @return 参数值\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 通用 部门服务\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectDeptNameByIds","paramTypes":["java.lang.String"],"doc":" 通过部门ID查询部门名称\n\n @param deptIds 部门ID串逗号分隔\n @return 部门名称串逗号分隔\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 通用 字典服务\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"getDictLabel","paramTypes":["java.lang.String","java.lang.String"],"doc":" 根据字典类型和字典值获取字典标签\n\n @param dictType 字典类型\n @param dictValue 字典值\n @return 字典标签\n"},{"name":"getDictValue","paramTypes":["java.lang.String","java.lang.String"],"doc":" 根据字典类型和字典标签获取字典值\n\n @param dictType 字典类型\n @param dictLabel 字典标签\n @return 字典值\n"},{"name":"getDictLabel","paramTypes":["java.lang.String","java.lang.String","java.lang.String"],"doc":" 根据字典类型和字典值获取字典标签\n\n @param dictType 字典类型\n @param dictValue 字典值\n @param separator 分隔符\n @return 字典标签\n"},{"name":"getDictValue","paramTypes":["java.lang.String","java.lang.String","java.lang.String"],"doc":" 根据字典类型和字典标签获取字典值\n\n @param dictType 字典类型\n @param dictLabel 字典标签\n @param separator 分隔符\n @return 字典值\n"},{"name":"getAllDictByDictType","paramTypes":["java.lang.String"],"doc":" 获取字典下所有的字典值与标签\n\n @param dictType 字典类型\n @return dictValue为key,dictLabel为值组成的Map\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 通用 OSS服务\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectUrlByIds","paramTypes":["java.lang.String"],"doc":" 通过ossId查询对应的url\n\n @param ossIds ossId串逗号分隔\n @return url串逗号分隔\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 脱敏服务\n 默认管理员不过滤\n 需自行根据业务重写实现\n\n @author Lion Li\n @version 3.6.0\n","fields":[],"enumConstants":[],"methods":[{"name":"isSensitive","paramTypes":[],"doc":" 是否脱敏\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 通用 用户服务\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectUserNameById","paramTypes":["java.lang.Long"],"doc":" 通过用户ID查询用户账户\n\n @param userId 用户ID\n @return 用户账户\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 校验分组 add\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 校验分组 edit\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 校验分组 query\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 加密上下文 用于encryptor传递必要的参数。\n\n @author 老马\n @version 4.6.0\n","fields":[{"name":"algorithm","doc":" 默认算法\n"},{"name":"password","doc":" 安全秘钥\n"},{"name":"publicKey","doc":" 公钥\n"},{"name":"privateKey","doc":" 私钥\n"},{"name":"encode","doc":" 编码方式,base64/hex\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 加解者\n\n @author 老马\n @version 4.6.0\n","fields":[],"enumConstants":[],"methods":[{"name":"algorithm","paramTypes":[],"doc":" 获得当前算法\n"},{"name":"encrypt","paramTypes":["java.lang.String","com.lego.common.enums.EncodeType"],"doc":" 加密\n\n @param value 待加密字符串\n @param encodeType 加密后的编码格式\n @return 加密后的字符串\n"},{"name":"decrypt","paramTypes":["java.lang.String"],"doc":" 解密\n\n @param value 待加密字符串\n @return 解密后的字符串\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 所有加密执行者的基类\n\n @author 老马\n @version 4.6.0\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" AES算法实现\n\n @author 老马\n @version 4.6.0\n","fields":[],"enumConstants":[],"methods":[{"name":"algorithm","paramTypes":[],"doc":" 获得当前算法\n"},{"name":"encrypt","paramTypes":["java.lang.String","com.lego.common.enums.EncodeType"],"doc":" 加密\n\n @param value 待加密字符串\n @param encodeType 加密后的编码格式\n"},{"name":"decrypt","paramTypes":["java.lang.String"],"doc":" 解密\n\n @param value 待加密字符串\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" Base64算法实现\n\n @author 老马\n @version 4.6.0\n","fields":[],"enumConstants":[],"methods":[{"name":"algorithm","paramTypes":[],"doc":" 获得当前算法\n"},{"name":"encrypt","paramTypes":["java.lang.String","com.lego.common.enums.EncodeType"],"doc":" 加密\n\n @param value 待加密字符串\n @param encodeType 加密后的编码格式\n"},{"name":"decrypt","paramTypes":["java.lang.String"],"doc":" 解密\n\n @param value 待加密字符串\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" RSA算法实现\n\n @author 老马\n @version 4.6.0\n","fields":[],"enumConstants":[],"methods":[{"name":"algorithm","paramTypes":[],"doc":" 获得当前算法\n"},{"name":"encrypt","paramTypes":["java.lang.String","com.lego.common.enums.EncodeType"],"doc":" 加密\n\n @param value 待加密字符串\n @param encodeType 加密后的编码格式\n"},{"name":"decrypt","paramTypes":["java.lang.String"],"doc":" 解密\n\n @param value 待加密字符串\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" sm2算法实现\n\n @author 老马\n @version 4.6.0\n","fields":[],"enumConstants":[],"methods":[{"name":"algorithm","paramTypes":[],"doc":" 获得当前算法\n"},{"name":"encrypt","paramTypes":["java.lang.String","com.lego.common.enums.EncodeType"],"doc":" 加密\n\n @param value 待加密字符串\n @param encodeType 加密后的编码格式\n"},{"name":"decrypt","paramTypes":["java.lang.String"],"doc":" 解密\n\n @param value 待加密字符串\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" sm4算法实现\n\n @author 老马\n @version 4.6.0\n","fields":[],"enumConstants":[],"methods":[{"name":"algorithm","paramTypes":[],"doc":" 获得当前算法\n"},{"name":"encrypt","paramTypes":["java.lang.String","com.lego.common.enums.EncodeType"],"doc":" 加密\n\n @param value 待加密字符串\n @param encodeType 加密后的编码格式\n"},{"name":"decrypt","paramTypes":["java.lang.String"],"doc":" 解密\n\n @param value 待加密字符串\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 算法名称\n\n @author 老马\n @version 4.6.0\n","fields":[],"enumConstants":[{"name":"DEFAULT","doc":" 默认走yml配置\n"},{"name":"BASE64","doc":" base64\n"},{"name":"AES","doc":" aes\n"},{"name":"RSA","doc":" rsa\n"},{"name":"SM2","doc":" sm2\n"},{"name":"SM4","doc":" sm4\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 操作状态\n\n @author gyongyi\n","fields":[],"enumConstants":[{"name":"SUCCESS","doc":" 成功\n"},{"name":"FAIL","doc":" 失败\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 业务操作类型\n\n @author gyongyi\n","fields":[],"enumConstants":[{"name":"OTHER","doc":" 其它\n"},{"name":"INSERT","doc":" 新增\n"},{"name":"UPDATE","doc":" 修改\n"},{"name":"DELETE","doc":" 删除\n"},{"name":"GRANT","doc":" 授权\n"},{"name":"EXPORT","doc":" 导出\n"},{"name":"IMPORT","doc":" 导入\n"},{"name":"FORCE","doc":" 强退\n"},{"name":"GENCODE","doc":" 生成代码\n"},{"name":"CLEAN","doc":" 清空数据\n"},{"name":"AUDIT","doc":" 审批\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 验证码类别\n\n @author Lion Li\n","fields":[],"enumConstants":[{"name":"LINE","doc":" 线段干扰\n"},{"name":"CIRCLE","doc":" 圆圈干扰\n"},{"name":"SHEAR","doc":" 扭曲干扰\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 验证码类型\n\n @author Lion Li\n","fields":[],"enumConstants":[{"name":"MATH","doc":" 数字\n"},{"name":"CHAR","doc":" 字符\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 项科室结论判断条件枚举\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 项科室结论条件关系枚举\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 数据库类型\n\n @author Lion Li\n","fields":[],"enumConstants":[{"name":"MY_SQL","doc":" MySQL\n"},{"name":"ORACLE","doc":" Oracle\n"},{"name":"POSTGRE_SQL","doc":" PostgreSQL\n"},{"name":"SQL_SERVER","doc":" SQL Server\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 数据权限类型\n <p>\n 语法支持 spel 模板表达式\n <p>\n 内置数据 user 当前用户 内容参考 LoginUser\n 如需扩展数据 可使用 {@link DataPermissionHelper} 操作\n 内置服务 sdss 系统数据权限服务 内容参考 SysDataScopeService\n 如需扩展更多自定义服务 可以参考 sdss 自行编写\n\n @author Lion Li\n @version 3.5.0\n","fields":[{"name":"sqlTemplate","doc":" 语法 采用 spel 模板表达式\n"},{"name":"elseSql","doc":" 不满足 sqlTemplate 则填充\n"}],"enumConstants":[{"name":"ALL","doc":" 全部数据权限\n"},{"name":"CUSTOM","doc":" 自定数据权限\n"},{"name":"DEPT","doc":" 部门数据权限\n"},{"name":"DEPT_AND_CHILD","doc":" 部门及以下数据权限\n"},{"name":"SELF","doc":" 仅本人数据权限\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 设备类型\n 针对一套 用户体系\n\n @author Lion Li\n","fields":[],"enumConstants":[{"name":"PC","doc":" pc端\n"},{"name":"APP","doc":" app端\n"},{"name":"XCX","doc":" 小程序端\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 编码类型\n\n @author 老马\n @version 4.6.0\n","fields":[],"enumConstants":[{"name":"DEFAULT","doc":" 默认使用yml配置\n"},{"name":"BASE64","doc":" base64编码\n"},{"name":"HEX","doc":" 16进制编码\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 体检类型枚举\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 请求方式\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 限流类型\n\n @author gyongyi\n","fields":[],"enumConstants":[{"name":"DEFAULT","doc":" 默认策略全局限流\n"},{"name":"IP","doc":" 根据请求者IP进行限流\n"},{"name":"CLUSTER","doc":" 实例限流(集群多后端实例)\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 登录类型\n\n @author Lion Li\n","fields":[{"name":"retryLimitExceed","doc":" 登录重试超出限制提示\n"},{"name":"retryLimitCount","doc":" 登录重试限制计数提示\n"}],"enumConstants":[{"name":"PASSWORD","doc":" 密码登录\n"},{"name":"SMS","doc":" 短信登录\n"},{"name":"EMAIL","doc":" 邮箱登录\n"},{"name":"XCX","doc":" 小程序登录\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" @author GaoYongYi\n @since 2023/4/24 8:57\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 操作人类别\n\n @author gyongyi\n","fields":[],"enumConstants":[{"name":"OTHER","doc":" 其它\n"},{"name":"MANAGE","doc":" 后台用户\n"},{"name":"MOBILE","doc":" 手机端用户\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 脱敏策略\n\n @author Yjoioooo\n @version 3.6.0\n","fields":[],"enumConstants":[{"name":"ID_CARD","doc":" 身份证脱敏\n"},{"name":"PHONE","doc":" 手机号脱敏\n"},{"name":"ADDRESS","doc":" 地址脱敏\n"},{"name":"EMAIL","doc":" 邮箱脱敏\n"},{"name":"BANK_CARD","doc":" 银行卡\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 流水号循环方式\n","fields":[],"enumConstants":[{"name":"YEAR","doc":"按年 "},{"name":"MONTH","doc":"按月 "},{"name":"DAY","doc":"按天 "},{"name":"HOUR","doc":"按小时 "},{"name":"MINITE","doc":"按分钟 "}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户状态\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 设备类型\n 针对多套 用户体系\n\n @author Lion Li\n","fields":[],"enumConstants":[{"name":"SYS_USER","doc":" pc端\n"},{"name":"APP_USER","doc":" app端\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":"","fields":[],"enumConstants":[{"name":"ID_CARD","doc":"居民身份证 "},{"name":"RESIDENCE","doc":"居民户口簿 "},{"name":"PASSPORT","doc":"护照 "},{"name":"SOLDIER","doc":"军官证 "},{"name":"CARS","doc":"驾驶证 "},{"name":"HONG_KONG_AND_MACAO","doc":"港澳居民来往内地通行证 "},{"name":"TAIWAN","doc":"台湾居民来往内地通行证 "},{"name":"NOT_ACQUIRE","doc":"暂未获取 "}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 体检状态枚举\n","fields":[],"enumConstants":[{"name":"NOT_REACHED","doc":"未到检 "},{"name":"ARRIVAL","doc":"报到 "},{"name":"CHECKED","doc":"检查中 "},{"name":"COMPILE","doc":"总检中 "},{"name":"FINISH","doc":"已终检 "},{"name":"ARCHIVE","doc":"已归档 "}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 人员类型 枚举\n","fields":[],"enumConstants":[{"name":"PERSON","doc":"个人 "},{"name":"TEAM","doc":"团体 "}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 弃检记录明细 状态\n","fields":[],"enumConstants":[{"name":"SUBMIT","doc":"提交 "},{"name":"REVOCATION","doc":"撤回 "}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 团检订单 状态枚举\n","fields":[],"enumConstants":[{"name":"STORAGE","doc":"暂存 "},{"name":"SUBMIT","doc":"提交 "},{"name":"PASS","doc":"通过 "},{"name":"TURN_DOWN","doc":"驳回 "},{"name":"EXAMINING","doc":" 体检中\n"},{"name":"ARCHIVIST","doc":"归档 "}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 列值重复合并策略\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" Excel 导入监听\n\n @author Yjoioooo\n @author Lion Li\n","fields":[{"name":"isValidate","doc":" 是否Validator检验,默认为是\n"},{"name":"headMap","doc":" excel 表头数据\n"},{"name":"excelResult","doc":" 导入回执\n"}],"enumConstants":[],"methods":[{"name":"onException","paramTypes":["java.lang.Exception","com.alibaba.excel.context.AnalysisContext"],"doc":" 处理异常\n\n @param exception ExcelDataConvertException\n @param context Excel 上下文\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 默认excel返回对象\n\n @author Yjoioooo\n @author Lion Li\n","fields":[{"name":"list","doc":" 数据对象list\n"},{"name":"errorList","doc":" 错误信息列表\n"}],"enumConstants":[],"methods":[{"name":"getAnalysis","paramTypes":[],"doc":" 获取导入回执\n\n @return 导入回执\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" <h1>Excel下拉可选项</h1>\n 注意:为确保下拉框解析正确,传值务必使用createOptionValue()做为值的拼接\n\n @author Emil.Zhang\n","fields":[{"name":"index","doc":" 一级下拉所在列index,从0开始算\n"},{"name":"nextIndex","doc":" 二级下拉所在的index,从0开始算,不能与一级相同\n"},{"name":"options","doc":" 一级下拉所包含的数据\n"},{"name":"nextOptions","doc":" 二级下拉所包含的数据Map\n <p>以每一个一级选项值为Key,每个一级选项对应的二级数据为Value</p>\n"},{"name":"DELIMITER","doc":" 分隔符\n"}],"enumConstants":[],"methods":[{"name":"createOptionValue","paramTypes":["java.lang.Object[]"],"doc":" <h2>创建每个选项可选值</h2>\n <p>注意:不能以数字,特殊符号开头,选项中不可以包含任何运算符号</p>\n\n @param vars 可选值内包含的参数\n @return 合规的可选值\n"},{"name":"analyzeOptionValue","paramTypes":["java.lang.String"],"doc":" 将处理后合理的可选值解析为原始的参数\n\n @param option 经过处理后的合理的可选项\n @return 原始的参数\n"},{"name":"buildLinkedOptions","paramTypes":["java.util.List","int","java.util.List","int","java.util.function.Function","java.util.function.Function","java.util.function.Function"],"doc":" 创建级联下拉选项\n\n @param parentList 父实体可选项原始数据\n @param parentIndex 父下拉选位置\n @param sonList 子实体可选项原始数据\n @param sonIndex 子下拉选位置\n @param parentHowToGetIdFunction 父类如何获取唯一标识\n @param sonHowToGetParentIdFunction 子类如何获取父类的唯一标识\n @param howToBuildEveryOption 如何生成下拉选内容\n @return 级联下拉选项\n"}],"constructors":[{"name":"<init>","paramTypes":["int","java.util.List"],"doc":" 创建只有一级的下拉选\n"}]}
\ No newline at end of file
{"doc":" <h1>Excel表格下拉选操作</h1>\n 考虑到下拉选过多可能导致Excel打开缓慢的问题,只校验前1000行\n <p>\n 即只有前1000行的数据可以用下拉框,超出的自行通过限制数据量的形式,第二次输出\n\n @author Emil.Zhang\n","fields":[{"name":"EXCEL_COLUMN_NAME","doc":" Excel表格中的列名英文\n 仅为了解析列英文,禁止修改\n"},{"name":"OPTIONS_SHEET_NAME","doc":" 单选数据Sheet名\n"},{"name":"LINKED_OPTIONS_SHEET_NAME","doc":" 联动选择数据Sheet名的头\n"},{"name":"dropDownOptions","doc":" 下拉可选项\n"},{"name":"currentOptionsColumnIndex","doc":" 当前单选进度\n"},{"name":"currentLinkedOptionsSheetIndex","doc":" 当前联动选择进度\n"}],"enumConstants":[],"methods":[{"name":"afterSheetCreate","paramTypes":["com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder","com.alibaba.excel.write.metadata.holder.WriteSheetHolder"],"doc":" <h2>开始创建下拉数据</h2>\n 1.通过解析传入的@ExcelProperty同级是否标注有@DropDown选项\n 如果有且设置了value值,则将其直接置为下拉可选项\n <p>\n 2.或者在调用ExcelUtil时指定了可选项,将依据传入的可选项做下拉\n <p>\n 3.二者并存,注意调用方式\n"},{"name":"dropDownWithSimple","paramTypes":["org.apache.poi.ss.usermodel.DataValidationHelper","org.apache.poi.ss.usermodel.Sheet","java.lang.Integer","java.util.List"],"doc":" <h2>简单下拉框</h2>\n 直接将可选项拼接为指定列的数据校验值\n\n @param celIndex 列index\n @param value 下拉选可选值\n"},{"name":"dropDownLinkedOptions","paramTypes":["org.apache.poi.ss.usermodel.DataValidationHelper","org.apache.poi.ss.usermodel.Workbook","org.apache.poi.ss.usermodel.Sheet","com.lego.common.excel.DropDownOptions"],"doc":" <h2>额外表格形式的级联下拉框</h2>\n\n @param options 额外表格形式存储的下拉可选项\n"},{"name":"dropDownWithSheet","paramTypes":["org.apache.poi.ss.usermodel.DataValidationHelper","org.apache.poi.ss.usermodel.Workbook","org.apache.poi.ss.usermodel.Sheet","java.lang.Integer","java.util.List"],"doc":" <h2>额外表格形式的普通下拉框</h2>\n 由于下拉框可选值数量过多,为提升Excel打开效率,使用额外表格形式做下拉\n\n @param celIndex 下拉选\n @param value 下拉选可选值\n"},{"name":"markOptionsToSheet","paramTypes":["org.apache.poi.ss.usermodel.DataValidationHelper","org.apache.poi.ss.usermodel.Sheet","java.lang.Integer","org.apache.poi.ss.usermodel.DataValidationConstraint"],"doc":" 挂载下拉的列,仅限一级选项\n"},{"name":"markLinkedOptionsToSheet","paramTypes":["org.apache.poi.ss.usermodel.DataValidationHelper","org.apache.poi.ss.usermodel.Sheet","java.lang.Integer","java.lang.Integer","org.apache.poi.ss.usermodel.DataValidationConstraint"],"doc":" 挂载下拉的列,仅限二级选项\n"},{"name":"markDataValidationToSheet","paramTypes":["org.apache.poi.ss.usermodel.DataValidationHelper","org.apache.poi.ss.usermodel.Sheet","org.apache.poi.ss.usermodel.DataValidationConstraint","org.apache.poi.ss.util.CellRangeAddressList"],"doc":" 应用数据校验\n"},{"name":"getExcelColumnName","paramTypes":["int"],"doc":" <h2>依据列index获取列名英文</h2>\n 依据列index转换为Excel中的列名英文\n <p>例如第1列,index为0,解析出来为A列</p>\n 第27列,index为26,解析为AA列\n <p>第28列,index为27,解析为AB列</p>\n\n @param columnIndex 列index\n @return 列index所在得英文名\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" Excel 导入监听\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" excel返回对象\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"getList","paramTypes":[],"doc":" 对象列表\n"},{"name":"getErrorList","paramTypes":[],"doc":" 错误列表\n"},{"name":"getAnalysis","paramTypes":[],"doc":" 导入回执\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 演示模式异常\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 全局异常\n\n @author gyongyi\n","fields":[{"name":"message","doc":" 错误提示\n"},{"name":"detailMessage","doc":" 错误明细,内部调试错误\n <p>\n 和 {@link CommonResult#getDetailMessage()} 一致的设计\n"}],"enumConstants":[],"methods":[],"constructors":[{"name":"<init>","paramTypes":[],"doc":" 空构造方法,避免反序列化问题\n"}]}
\ No newline at end of file
{"doc":" 业务异常\n\n @author gyongyi\n","fields":[{"name":"code","doc":" 错误码\n"},{"name":"message","doc":" 错误提示\n"},{"name":"detailMessage","doc":" 错误明细,内部调试错误\n <p>\n 和 {@link CommonResult#getDetailMessage()} 一致的设计\n"}],"enumConstants":[],"methods":[],"constructors":[{"name":"<init>","paramTypes":[],"doc":" 空构造方法,避免反序列化问题\n"}]}
\ No newline at end of file
{"doc":" 工具类异常\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 基础异常\n\n @author gyongyi\n","fields":[{"name":"module","doc":" 所属模块\n"},{"name":"code","doc":" 错误码\n"},{"name":"args","doc":" 错误码对应的参数\n"},{"name":"defaultMessage","doc":" 错误消息\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 文件信息异常类\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 文件名称超长限制异常类\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 文件名大小限制异常类\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 验证码错误异常类\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 验证码失效异常类\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户信息异常类\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户密码不正确或不符合规范异常类\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户错误最大次数异常类\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" Repeatable 过滤器\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 构建可重复读取inputStream的request\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 防止XSS攻击的过滤器\n\n @author gyongyi\n","fields":[{"name":"excludes","doc":" 排除链接\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" XSS过滤处理\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[{"name":"isJsonRequest","paramTypes":[],"doc":" 是否是Json请求\n"}],"constructors":[{"name":"<init>","paramTypes":["javax.servlet.http.HttpServletRequest"],"doc":" @param request\n"}]}
\ No newline at end of file
{"doc":" 数据库助手\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"getDataBaseType","paramTypes":[],"doc":" 获取当前数据库类型\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 数据权限助手\n\n @author Lion Li\n @version 3.5.0\n","fields":[],"enumConstants":[],"methods":[{"name":"enableIgnore","paramTypes":[],"doc":" 开启忽略数据权限(开启后需手动调用 {@link #disableIgnore()} 关闭)\n"},{"name":"disableIgnore","paramTypes":[],"doc":" 关闭忽略数据权限\n"},{"name":"ignore","paramTypes":["java.lang.Runnable"],"doc":" 在忽略数据权限中执行\n\n @param handle 处理执行方法\n"},{"name":"ignore","paramTypes":["java.util.function.Supplier"],"doc":" 在忽略数据权限中执行\n\n @param handle 处理执行方法\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 登录鉴权助手\n <p>\n user_type 为 用户类型 同一个用户表 可以有多种用户类型 例如 pc,app\n deivce 为 设备类型 同一个用户类型 可以有 多种设备类型 例如 web,ios\n 可以组成 用户类型与设备类型多对多的 权限灵活控制\n <p>\n 多用户体系 针对 多种用户类型 但权限控制不一致\n 可以组成 多用户类型表与多设备类型 分别控制权限\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"login","paramTypes":["com.lego.common.core.domain.model.LoginUser"],"doc":" 登录系统\n\n @param loginUser 登录用户信息\n"},{"name":"loginByDevice","paramTypes":["com.lego.common.core.domain.model.LoginUser","com.lego.common.enums.DeviceType"],"doc":" 登录系统 基于 设备类型\n 针对相同用户体系不同设备\n\n @param loginUser 登录用户信息\n"},{"name":"getLoginUser","paramTypes":[],"doc":" 获取用户(多级缓存)\n"},{"name":"getLoginUser","paramTypes":["java.lang.String"],"doc":" 获取用户基于token\n"},{"name":"getUserId","paramTypes":[],"doc":" 获取用户id\n"},{"name":"getDeptId","paramTypes":[],"doc":" 获取部门ID\n"},{"name":"getUsername","paramTypes":[],"doc":" 获取用户账户\n"},{"name":"getUserType","paramTypes":[],"doc":" 获取用户类型\n"},{"name":"isAdmin","paramTypes":["java.lang.Long"],"doc":" 是否为超级管理员\n\n @param userId 用户ID\n @return 结果\n"},{"name":"isAdministrator","paramTypes":[],"doc":" 是否为管理员\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 字典数据json序列化工具\n\n @author itino\n @deprecated 建议使用通用翻译注解\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 数据脱敏json序列化工具\n\n @author Yjoioooo\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" @author GaoYongYi\n @date 2023/7/25 14:51\n","fields":[],"enumConstants":[],"methods":[{"name":"draw","paramTypes":["java.lang.String","java.lang.String","java.lang.String"],"doc":" 画公章\n"},{"name":"drawCircle","paramTypes":["java.awt.Graphics2D","com.lego.common.seal.SealCircle","int","int"],"doc":" 画圆\n"},{"name":"drawFont","paramTypes":["java.awt.Graphics2D","int","int","com.lego.common.seal.SealFont"],"doc":" 画文字\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 翻译接口 (实现类需标注 {@link TranslationType} 注解标明翻译类型)\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"translation","paramTypes":["java.lang.Object","java.lang.String"],"doc":" 翻译\n\n @param key 需要被翻译的键(不为空)\n @return 返回键对应的值\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" Bean 序列化修改器 解决 Null 被单独处理问题\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 翻译处理器\n\n @author Lion Li\n","fields":[{"name":"TRANSLATION_MAPPER","doc":" 全局翻译实现类映射器\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 部门翻译实现\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 字典翻译实现\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" OSS翻译实现\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户名翻译实现\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" BeanCopier属性缓存<br>\n 缓存用于防止多次反射造成的性能问题\n\n @author Looly\n @since 5.4.1\n","fields":[],"enumConstants":[{"name":"INSTANCE","doc":" BeanCopier属性缓存单例\n"}],"methods":[{"name":"get","paramTypes":["java.lang.Class","java.lang.Class","org.springframework.cglib.core.Converter"],"doc":" 获得类与转换器生成的key在{@link BeanCopier}的Map中对应的元素\n\n @param srcClass 源Bean的类\n @param targetClass 目标Bean的类\n @param converter 转换器\n @return Map中对应的BeanCopier\n"},{"name":"genKey","paramTypes":["java.lang.Class","java.lang.Class","org.springframework.cglib.core.Converter"],"doc":" 获得类与转换器生成的key\n\n @param srcClass 源Bean的类\n @param targetClass 目标Bean的类\n @param converter 转换器\n @return 属性名和Map映射的key\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" bean拷贝工具(基于 cglib 性能优异)\n <p>\n 重点 cglib 不支持 拷贝到链式对象\n 例如: 源对象 拷贝到 目标(链式对象)\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"copy","paramTypes":["java.lang.Object","java.lang.Class"],"doc":" 单对象基于class创建拷贝\n\n @param source 数据来源实体\n @param desc 描述对象 转换后的对象\n @return desc\n"},{"name":"copy","paramTypes":["java.lang.Object","java.lang.Object"],"doc":" 单对象基于对象创建拷贝\n\n @param source 数据来源实体\n @param desc 转换后的对象\n @return desc\n"},{"name":"copyList","paramTypes":["java.util.List","java.lang.Class"],"doc":" 列表对象基于class创建拷贝\n\n @param sourceList 数据来源实体列表\n @param desc 描述对象 转换后的对象\n @return desc\n"},{"name":"copyToMap","paramTypes":["java.lang.Object"],"doc":" bean拷贝到map\n\n @param bean 数据来源实体\n @return map对象\n"},{"name":"mapToBean","paramTypes":["java.util.Map","java.lang.Class"],"doc":" map拷贝到bean\n\n @param map 数据来源\n @param beanClass bean类\n @return bean对象\n"},{"name":"mapToBean","paramTypes":["java.util.Map","java.lang.Object"],"doc":" map拷贝到bean\n\n @param map 数据来源\n @param bean bean对象\n @return bean对象\n"},{"name":"mapToMap","paramTypes":["java.util.Map","java.lang.Class"],"doc":" map拷贝到map\n\n @param map 数据来源\n @param clazz 返回的对象类型\n @return map对象\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 时间工具类\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[{"name":"getNowDate","paramTypes":[],"doc":" 获取当前Date型日期\n\n @return Date() 当前日期\n"},{"name":"getDate","paramTypes":[],"doc":" 获取当前日期, 默认格式为yyyy-MM-dd\n\n @return String\n"},{"name":"datePath","paramTypes":[],"doc":" 日期路径 即年/月/日 如2018/08/08\n"},{"name":"dateTime","paramTypes":[],"doc":" 日期路径 即年/月/日 如20180808\n"},{"name":"parseDate","paramTypes":["java.lang.Object"],"doc":" 日期型字符串转化为日期 格式\n"},{"name":"getServerStartDate","paramTypes":[],"doc":" 获取服务器启动时间\n"},{"name":"differentDaysByMillisecond","paramTypes":["java.util.Date","java.util.Date"],"doc":" 计算相差天数\n"},{"name":"getDatePoor","paramTypes":["java.util.Date","java.util.Date"],"doc":" 计算两个时间差\n"},{"name":"toDate","paramTypes":["java.time.LocalDateTime"],"doc":" 增加 LocalDateTime ==> Date\n"},{"name":"toDate","paramTypes":["java.time.LocalDate"],"doc":" 增加 LocalDate ==> Date\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 安全相关工具类\n\n @author 老马\n","fields":[{"name":"PUBLIC_KEY","doc":" 公钥\n"},{"name":"PRIVATE_KEY","doc":" 私钥\n"},{"name":"AES_SECRET","doc":" AES系统内置密钥\n"}],"enumConstants":[],"methods":[{"name":"encryptByBase64","paramTypes":["java.lang.String"],"doc":" Base64加密\n\n @param data 待加密数据\n @return 加密后字符串\n"},{"name":"decryptByBase64","paramTypes":["java.lang.String"],"doc":" Base64解密\n\n @param data 待解密数据\n @return 解密后字符串\n"},{"name":"encryptByAes","paramTypes":["java.lang.String","java.lang.String"],"doc":" AES加密\n\n @param data 待解密数据\n @param password 秘钥字符串\n @return 加密后字符串, 采用Base64编码\n"},{"name":"encryptByAes","paramTypes":["java.lang.String"],"doc":" AES加密\n\n @param data 待解密数据\n @return 加密后字符串, 采用Base64编码\n"},{"name":"encryptByAesHex","paramTypes":["java.lang.String","java.lang.String"],"doc":" AES加密\n\n @param data 待解密数据\n @param password 秘钥字符串\n @return 加密后字符串, 采用Hex编码\n"},{"name":"encryptByAesHex","paramTypes":["java.lang.String"],"doc":" AES加密\n\n @param data 待解密数据\n @return 加密后字符串, 采用Hex编码\n"},{"name":"decryptByAes","paramTypes":["java.lang.String","java.lang.String"],"doc":" AES解密\n\n @param data 待解密数据\n @param password 秘钥字符串\n @return 解密后字符串\n"},{"name":"decryptByAes","paramTypes":["java.lang.String"],"doc":" AES解密\n\n @param data 待解密数据\n @return 解密后字符串\n"},{"name":"encryptBySm4","paramTypes":["java.lang.String","java.lang.String"],"doc":" sm4加密\n\n @param data 待加密数据\n @param password 秘钥字符串\n @return 加密后字符串, 采用Base64编码\n"},{"name":"encryptBySm4Hex","paramTypes":["java.lang.String","java.lang.String"],"doc":" sm4加密\n\n @param data 待加密数据\n @param password 秘钥字符串\n @return 加密后字符串, 采用Base64编码\n"},{"name":"decryptBySm4","paramTypes":["java.lang.String","java.lang.String"],"doc":" sm4解密\n\n @param data 待解密数据\n @param password 秘钥字符串\n @return 解密后字符串\n"},{"name":"generateSm2Key","paramTypes":[],"doc":" 产生sm2加解密需要的公钥和私钥\n\n @return 公私钥Map\n"},{"name":"encryptBySm2","paramTypes":["java.lang.String","java.lang.String"],"doc":" sm2公钥加密\n\n @param data 待加密数据\n @param publicKey 公钥\n @return 加密后字符串, 采用Base64编码\n"},{"name":"encryptBySm2Hex","paramTypes":["java.lang.String","java.lang.String"],"doc":" sm2公钥加密\n\n @param data 待加密数据\n @param publicKey 公钥\n @return 加密后字符串, 采用Hex编码\n"},{"name":"decryptBySm2","paramTypes":["java.lang.String","java.lang.String"],"doc":" sm2私钥解密\n\n @param data 待加密数据\n @param privateKey 私钥\n @return 解密后字符串\n"},{"name":"generateRsaKey","paramTypes":[],"doc":" 产生RSA加解密需要的公钥和私钥\n\n @return 公私钥Map\n"},{"name":"encryptByRsa","paramTypes":["java.lang.String","java.lang.String"],"doc":" rsa公钥加密\n\n @param data 待加密数据\n @param publicKey 公钥\n @return 加密后字符串, 采用Base64编码\n"},{"name":"encryptByRsaHex","paramTypes":["java.lang.String","java.lang.String"],"doc":" rsa公钥加密\n\n @param data 待加密数据\n @param publicKey 公钥\n @return 加密后字符串, 采用Hex编码\n"},{"name":"decryptByRsa","paramTypes":["java.lang.String","java.lang.String"],"doc":" rsa私钥解密\n\n @param data 待加密数据\n @param privateKey 私钥\n @return 解密后字符串\n"},{"name":"encryptByMd5","paramTypes":["java.lang.String"],"doc":" md5加密\n\n @param data 待加密数据\n @return 加密后字符串, 采用Hex编码\n"},{"name":"encryptBySha256","paramTypes":["java.lang.String"],"doc":" sha256加密\n\n @param data 待加密数据\n @return 加密后字符串, 采用Hex编码\n"},{"name":"encryptBySm3","paramTypes":["java.lang.String"],"doc":" sm3加密\n\n @param data 待加密数据\n @return 加密后字符串, 采用Hex编码\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" JSON 工具类\n\n @author 芋道源码\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 获取i18n资源文件\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"message","paramTypes":["java.lang.String","java.lang.Object[]"],"doc":" 根据消息键和参数 获取消息 委托给spring messageSource\n\n @param code 消息键\n @param args 参数\n @return 获取国际化翻译值\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 客户端工具类\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[{"name":"getParameter","paramTypes":["java.lang.String"],"doc":" 获取String参数\n"},{"name":"getParameter","paramTypes":["java.lang.String","java.lang.String"],"doc":" 获取String参数\n"},{"name":"getParameterToInt","paramTypes":["java.lang.String"],"doc":" 获取Integer参数\n"},{"name":"getParameterToInt","paramTypes":["java.lang.String","java.lang.Integer"],"doc":" 获取Integer参数\n"},{"name":"getParameterToBool","paramTypes":["java.lang.String"],"doc":" 获取Boolean参数\n"},{"name":"getParameterToBool","paramTypes":["java.lang.String","java.lang.Boolean"],"doc":" 获取Boolean参数\n"},{"name":"getParams","paramTypes":["javax.servlet.ServletRequest"],"doc":" 获得所有请求参数\n\n @param request 请求对象{@link ServletRequest}\n @return Map\n"},{"name":"getParamMap","paramTypes":["javax.servlet.ServletRequest"],"doc":" 获得所有请求参数\n\n @param request 请求对象{@link ServletRequest}\n @return Map\n"},{"name":"getRequest","paramTypes":[],"doc":" 获取request\n"},{"name":"getResponse","paramTypes":[],"doc":" 获取response\n"},{"name":"getSession","paramTypes":[],"doc":" 获取session\n"},{"name":"renderString","paramTypes":["javax.servlet.http.HttpServletResponse","java.lang.String"],"doc":" 将字符串渲染到客户端\n\n @param response 渲染对象\n @param string 待渲染的字符串\n"},{"name":"isAjaxRequest","paramTypes":["javax.servlet.http.HttpServletRequest"],"doc":" 是否是Ajax异步请求\n\n @param request\n"},{"name":"urlEncode","paramTypes":["java.lang.String"],"doc":" 内容编码\n\n @param str 内容\n @return 编码后的内容\n"},{"name":"urlDecode","paramTypes":["java.lang.String"],"doc":" 内容解码\n\n @param str 内容\n @return 解码后的内容\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" stream 流工具类\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"filter","paramTypes":["java.util.Collection","java.util.function.Predicate"],"doc":" 将collection过滤\n\n @param collection 需要转化的集合\n @param function 过滤方法\n @return 过滤后的list\n"},{"name":"join","paramTypes":["java.util.Collection","java.util.function.Function"],"doc":" 将collection拼接\n\n @param collection 需要转化的集合\n @param function 拼接方法\n @return 拼接后的list\n"},{"name":"join","paramTypes":["java.util.Collection","java.util.function.Function","java.lang.CharSequence"],"doc":" 将collection拼接\n\n @param collection 需要转化的集合\n @param function 拼接方法\n @param delimiter 拼接符\n @return 拼接后的list\n"},{"name":"sorted","paramTypes":["java.util.Collection","java.util.Comparator"],"doc":" 将collection排序\n\n @param collection 需要转化的集合\n @param comparing 排序方法\n @return 排序后的list\n"},{"name":"toIdentityMap","paramTypes":["java.util.Collection","java.util.function.Function"],"doc":" 将collection转化为类型不变的map<br>\n <B>{@code Collection<V> ----> Map<K,V>}</B>\n\n @param collection 需要转化的集合\n @param key V类型转化为K类型的lambda方法\n @param <V> collection中的泛型\n @param <K> map中的key类型\n @return 转化后的map\n"},{"name":"toMap","paramTypes":["java.util.Collection","java.util.function.Function","java.util.function.Function"],"doc":" 将Collection转化为map(value类型与collection的泛型不同)<br>\n <B>{@code Collection<E> -----> Map<K,V> }</B>\n\n @param collection 需要转化的集合\n @param key E类型转化为K类型的lambda方法\n @param value E类型转化为V类型的lambda方法\n @param <E> collection中的泛型\n @param <K> map中的key类型\n @param <V> map中的value类型\n @return 转化后的map\n"},{"name":"groupByKey","paramTypes":["java.util.Collection","java.util.function.Function"],"doc":" 将collection按照规则(比如有相同的班级id)分类成map<br>\n <B>{@code Collection<E> -------> Map<K,List<E>> } </B>\n\n @param collection 需要分类的集合\n @param key 分类的规则\n @param <E> collection中的泛型\n @param <K> map中的key类型\n @return 分类后的map\n"},{"name":"groupBy2Key","paramTypes":["java.util.Collection","java.util.function.Function","java.util.function.Function"],"doc":" 将collection按照两个规则(比如有相同的年级id,班级id)分类成双层map<br>\n <B>{@code Collection<E> ---> Map<T,Map<U,List<E>>> } </B>\n\n @param collection 需要分类的集合\n @param key1 第一个分类的规则\n @param key2 第二个分类的规则\n @param <E> 集合元素类型\n @param <K> 第一个map中的key类型\n @param <U> 第二个map中的key类型\n @return 分类后的map\n"},{"name":"group2Map","paramTypes":["java.util.Collection","java.util.function.Function","java.util.function.Function"],"doc":" 将collection按照两个规则(比如有相同的年级id,班级id)分类成双层map<br>\n <B>{@code Collection<E> ---> Map<T,Map<U,E>> } </B>\n\n @param collection 需要分类的集合\n @param key1 第一个分类的规则\n @param key2 第二个分类的规则\n @param <T> 第一个map中的key类型\n @param <U> 第二个map中的key类型\n @param <E> collection中的泛型\n @return 分类后的map\n"},{"name":"toList","paramTypes":["java.util.Collection","java.util.function.Function"],"doc":" 将collection转化为List集合,但是两者的泛型不同<br>\n <B>{@code Collection<E> ------> List<T> } </B>\n\n @param collection 需要转化的集合\n @param function collection中的泛型转化为list泛型的lambda表达式\n @param <E> collection中的泛型\n @param <T> List中的泛型\n @return 转化后的list\n"},{"name":"toSet","paramTypes":["java.util.Collection","java.util.function.Function"],"doc":" 将collection转化为Set集合,但是两者的泛型不同<br>\n <B>{@code Collection<E> ------> Set<T> } </B>\n\n @param collection 需要转化的集合\n @param function collection中的泛型转化为set泛型的lambda表达式\n @param <E> collection中的泛型\n @param <T> Set中的泛型\n @return 转化后的Set\n"},{"name":"merge","paramTypes":["java.util.Map","java.util.Map","java.util.function.BiFunction"],"doc":" 合并两个相同key类型的map\n\n @param map1 第一个需要合并的 map\n @param map2 第二个需要合并的 map\n @param merge 合并的lambda,将key value1 value2合并成最终的类型,注意value可能为空的情况\n @param <K> map中的key类型\n @param <X> 第一个 map的value类型\n @param <Y> 第二个 map的value类型\n @param <V> 最终map的value类型\n @return 合并后的map\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 字符串工具类\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"blankToDefault","paramTypes":["java.lang.String","java.lang.String"],"doc":" 获取参数不为空值\n\n @param str defaultValue 要判断的value\n @return value 返回值\n"},{"name":"isEmpty","paramTypes":["java.lang.String"],"doc":" * 判断一个字符串是否为空串\n\n @param str String\n @return true:为空 false:非空\n"},{"name":"isNotEmpty","paramTypes":["java.lang.String"],"doc":" * 判断一个字符串是否为非空串\n\n @param str String\n @return true:非空串 false:空串\n"},{"name":"trim","paramTypes":["java.lang.String"],"doc":" 去空格\n"},{"name":"substring","paramTypes":["java.lang.String","int"],"doc":" 截取字符串\n\n @param str 字符串\n @param start 开始\n @return 结果\n"},{"name":"substring","paramTypes":["java.lang.String","int","int"],"doc":" 截取字符串\n\n @param str 字符串\n @param start 开始\n @param end 结束\n @return 结果\n"},{"name":"format","paramTypes":["java.lang.String","java.lang.Object[]"],"doc":" 格式化文本, {} 表示占位符<br>\n 此方法只是简单将占位符 {} 按照顺序替换为参数<br>\n 如果想输出 {} 使用 \\\\转义 { 即可,如果想输出 {} 之前的 \\ 使用双转义符 \\\\\\\\ 即可<br>\n 例:<br>\n 通常使用:format(\"this is {} for {}\", \"a\", \"b\") -> this is a for b<br>\n 转义{}: format(\"this is \\\\{} for {}\", \"a\", \"b\") -> this is {} for a<br>\n 转义\\: format(\"this is \\\\\\\\{} for {}\", \"a\", \"b\") -> this is \\a for b<br>\n\n @param template 文本模板,被替换的部分用 {} 表示\n @param params 参数值\n @return 格式化后的文本\n"},{"name":"ishttp","paramTypes":["java.lang.String"],"doc":" 是否为http(s)://开头\n\n @param link 链接\n @return 结果\n"},{"name":"str2Set","paramTypes":["java.lang.String","java.lang.String"],"doc":" 字符串转set\n\n @param str 字符串\n @param sep 分隔符\n @return set集合\n"},{"name":"str2List","paramTypes":["java.lang.String","java.lang.String","boolean","boolean"],"doc":" 字符串转list\n\n @param str 字符串\n @param sep 分隔符\n @param filterBlank 过滤纯空白\n @param trim 去掉首尾空白\n @return list集合\n"},{"name":"containsAnyIgnoreCase","paramTypes":["java.lang.CharSequence","java.lang.CharSequence[]"],"doc":" 查找指定字符串是否包含指定字符串列表中的任意一个字符串同时串忽略大小写\n\n @param cs 指定字符串\n @param searchCharSequences 需要检查的字符串数组\n @return 是否包含任意一个字符串\n"},{"name":"toUnderScoreCase","paramTypes":["java.lang.String"],"doc":" 驼峰转下划线命名\n"},{"name":"inStringIgnoreCase","paramTypes":["java.lang.String","java.lang.String[]"],"doc":" 是否包含字符串\n\n @param str 验证字符串\n @param strs 字符串组\n @return 包含返回true\n"},{"name":"convertToCamelCase","paramTypes":["java.lang.String"],"doc":" 将下划线大写方式命名的字符串转换为驼峰式。如果转换前的下划线大写方式命名的字符串为空,则返回空字符串。 例如:HELLO_WORLD->HelloWorld\n\n @param name 转换前的下划线大写方式命名的字符串\n @return 转换后的驼峰式命名的字符串\n"},{"name":"toCamelCase","paramTypes":["java.lang.String"],"doc":" 驼峰式命名法 例如:user_name->userName\n"},{"name":"matches","paramTypes":["java.lang.String","java.util.List"],"doc":" 查找指定字符串是否匹配指定字符串列表中的任意一个字符串\n\n @param str 指定字符串\n @param strs 需要检查的字符串数组\n @return 是否匹配\n"},{"name":"isMatch","paramTypes":["java.lang.String","java.lang.String"],"doc":" 判断url是否与规则配置:\n ? 表示单个字符;\n * 表示一层路径内的任意字符串,不可跨层级;\n ** 表示任意层路径;\n\n @param pattern 匹配规则\n @param url 需要匹配的url\n"},{"name":"padl","paramTypes":["java.lang.Number","int"],"doc":" 数字左边补齐0,使之达到指定长度。注意,如果数字转换为字符串后,长度大于size,则只保留 最后size个字符。\n\n @param num 数字对象\n @param size 字符串指定长度\n @return 返回数字的字符串格式,该字符串为指定长度。\n"},{"name":"padl","paramTypes":["java.lang.String","int","char"],"doc":" 字符串左补齐。如果原始字符串s长度大于size,则只保留最后size个字符。\n\n @param s 原始字符串\n @param size 字符串指定长度\n @param c 用于补齐的字符\n @return 返回指定长度的字符串,由原字符串左补齐或截取得到。\n"},{"name":"splitList","paramTypes":["java.lang.String"],"doc":" 切分字符串(分隔符默认逗号)\n\n @param str 被切分的字符串\n @return 分割后的数据列表\n"},{"name":"splitList","paramTypes":["java.lang.String","java.lang.String"],"doc":" 切分字符串\n\n @param str 被切分的字符串\n @param separator 分隔符\n @return 分割后的数据列表\n"},{"name":"splitTo","paramTypes":["java.lang.String","java.util.function.Function"],"doc":" 切分字符串自定义转换(分隔符默认逗号)\n\n @param str 被切分的字符串\n @param mapper 自定义转换\n @return 分割后的数据列表\n"},{"name":"splitTo","paramTypes":["java.lang.String","java.lang.String","java.util.function.Function"],"doc":" 切分字符串自定义转换\n\n @param str 被切分的字符串\n @param separator 分隔符\n @param mapper 自定义转换\n @return 分割后的数据列表\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 线程相关工具类.\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[{"name":"sleep","paramTypes":["long"],"doc":" sleep等待,单位为毫秒\n"},{"name":"shutdownAndAwaitTermination","paramTypes":["java.util.concurrent.ExecutorService"],"doc":" 停止线程池\n 先使用shutdown, 停止接收新任务并尝试完成所有已存在任务.\n 如果超时, 则调用shutdownNow, 取消在workQueue中Pending的任务,并中断所有阻塞函数.\n 如果仍然超時,則強制退出.\n 另对在shutdown时线程本身被调用中断做了处理.\n"},{"name":"printException","paramTypes":["java.lang.Runnable","java.lang.Throwable"],"doc":" 打印线程异常信息\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 扩展 hutool TreeUtil 封装系统树构建\n\n @author Lion Li\n","fields":[{"name":"DEFAULT_CONFIG","doc":" 根据前端定制差异化字段\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" Validator 校验框架工具\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 邮件工具类\n","fields":[],"enumConstants":[],"methods":[{"name":"getMailAccount","paramTypes":[],"doc":" 获取邮件发送实例\n"},{"name":"getMailAccount","paramTypes":["java.lang.String","java.lang.String","java.lang.String"],"doc":" 获取邮件发送实例 (自定义发送人以及授权码)\n\n @param user 发送人\n @param pass 授权码\n"},{"name":"sendText","paramTypes":["java.lang.String","java.lang.String","java.lang.String","java.io.File[]"],"doc":" 使用配置文件中设置的账户发送文本邮件,发送给单个或多个收件人<br>\n 多个收件人可以使用逗号“,”分隔,也可以通过分号“;”分隔\n\n @param to 收件人\n @param subject 标题\n @param content 正文\n @param files 附件列表\n @return message-id\n @since 3.2.0\n"},{"name":"sendHtml","paramTypes":["java.lang.String","java.lang.String","java.lang.String","java.io.File[]"],"doc":" 使用配置文件中设置的账户发送HTML邮件,发送给单个或多个收件人<br>\n 多个收件人可以使用逗号“,”分隔,也可以通过分号“;”分隔\n\n @param to 收件人\n @param subject 标题\n @param content 正文\n @param files 附件列表\n @return message-id\n @since 3.2.0\n"},{"name":"send","paramTypes":["java.lang.String","java.lang.String","java.lang.String","boolean","java.io.File[]"],"doc":" 使用配置文件中设置的账户发送邮件,发送单个或多个收件人<br>\n 多个收件人可以使用逗号“,”分隔,也可以通过分号“;”分隔\n\n @param to 收件人\n @param subject 标题\n @param content 正文\n @param isHtml 是否为HTML\n @param files 附件列表\n @return message-id\n"},{"name":"send","paramTypes":["java.lang.String","java.lang.String","java.lang.String","java.lang.String","java.lang.String","boolean","java.io.File[]"],"doc":" 使用配置文件中设置的账户发送邮件,发送单个或多个收件人<br>\n 多个收件人、抄送人、密送人可以使用逗号“,”分隔,也可以通过分号“;”分隔\n\n @param to 收件人,可以使用逗号“,”分隔,也可以通过分号“;”分隔\n @param cc 抄送人,可以使用逗号“,”分隔,也可以通过分号“;”分隔\n @param bcc 密送人,可以使用逗号“,”分隔,也可以通过分号“;”分隔\n @param subject 标题\n @param content 正文\n @param isHtml 是否为HTML\n @param files 附件列表\n @return message-id\n @since 4.0.3\n"},{"name":"sendText","paramTypes":["java.util.Collection","java.lang.String","java.lang.String","java.io.File[]"],"doc":" 使用配置文件中设置的账户发送文本邮件,发送给多人\n\n @param tos 收件人列表\n @param subject 标题\n @param content 正文\n @param files 附件列表\n @return message-id\n"},{"name":"sendHtml","paramTypes":["java.util.Collection","java.lang.String","java.lang.String","java.io.File[]"],"doc":" 使用配置文件中设置的账户发送HTML邮件,发送给多人\n\n @param tos 收件人列表\n @param subject 标题\n @param content 正文\n @param files 附件列表\n @return message-id\n @since 3.2.0\n"},{"name":"send","paramTypes":["java.util.Collection","java.lang.String","java.lang.String","boolean","java.io.File[]"],"doc":" 使用配置文件中设置的账户发送邮件,发送给多人\n\n @param tos 收件人列表\n @param subject 标题\n @param content 正文\n @param isHtml 是否为HTML\n @param files 附件列表\n @return message-id\n"},{"name":"send","paramTypes":["java.util.Collection","java.util.Collection","java.util.Collection","java.lang.String","java.lang.String","boolean","java.io.File[]"],"doc":" 使用配置文件中设置的账户发送邮件,发送给多人\n\n @param tos 收件人列表\n @param ccs 抄送人列表,可以为null或空\n @param bccs 密送人列表,可以为null或空\n @param subject 标题\n @param content 正文\n @param isHtml 是否为HTML\n @param files 附件列表\n @return message-id\n @since 4.0.3\n"},{"name":"send","paramTypes":["cn.hutool.extra.mail.MailAccount","java.lang.String","java.lang.String","java.lang.String","boolean","java.io.File[]"],"doc":" 发送邮件给多人\n\n @param mailAccount 邮件认证对象\n @param to 收件人,多个收件人逗号或者分号隔开\n @param subject 标题\n @param content 正文\n @param isHtml 是否为HTML格式\n @param files 附件列表\n @return message-id\n @since 3.2.0\n"},{"name":"send","paramTypes":["cn.hutool.extra.mail.MailAccount","java.util.Collection","java.lang.String","java.lang.String","boolean","java.io.File[]"],"doc":" 发送邮件给多人\n\n @param mailAccount 邮件帐户信息\n @param tos 收件人列表\n @param subject 标题\n @param content 正文\n @param isHtml 是否为HTML格式\n @param files 附件列表\n @return message-id\n"},{"name":"send","paramTypes":["cn.hutool.extra.mail.MailAccount","java.util.Collection","java.util.Collection","java.util.Collection","java.lang.String","java.lang.String","boolean","java.io.File[]"],"doc":" 发送邮件给多人\n\n @param mailAccount 邮件帐户信息\n @param tos 收件人列表\n @param ccs 抄送人列表,可以为null或空\n @param bccs 密送人列表,可以为null或空\n @param subject 标题\n @param content 正文\n @param isHtml 是否为HTML格式\n @param files 附件列表\n @return message-id\n @since 4.0.3\n"},{"name":"sendHtml","paramTypes":["java.lang.String","java.lang.String","java.lang.String","java.util.Map","java.io.File[]"],"doc":" 使用配置文件中设置的账户发送HTML邮件,发送给单个或多个收件人<br>\n 多个收件人可以使用逗号“,”分隔,也可以通过分号“;”分隔\n\n @param to 收件人\n @param subject 标题\n @param content 正文\n @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER\n @param files 附件列表\n @return message-id\n @since 3.2.0\n"},{"name":"send","paramTypes":["java.lang.String","java.lang.String","java.lang.String","java.util.Map","boolean","java.io.File[]"],"doc":" 使用配置文件中设置的账户发送邮件,发送单个或多个收件人<br>\n 多个收件人可以使用逗号“,”分隔,也可以通过分号“;”分隔\n\n @param to 收件人\n @param subject 标题\n @param content 正文\n @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER\n @param isHtml 是否为HTML\n @param files 附件列表\n @return message-id\n"},{"name":"send","paramTypes":["java.lang.String","java.lang.String","java.lang.String","java.lang.String","java.lang.String","java.util.Map","boolean","java.io.File[]"],"doc":" 使用配置文件中设置的账户发送邮件,发送单个或多个收件人<br>\n 多个收件人、抄送人、密送人可以使用逗号“,”分隔,也可以通过分号“;”分隔\n\n @param to 收件人,可以使用逗号“,”分隔,也可以通过分号“;”分隔\n @param cc 抄送人,可以使用逗号“,”分隔,也可以通过分号“;”分隔\n @param bcc 密送人,可以使用逗号“,”分隔,也可以通过分号“;”分隔\n @param subject 标题\n @param content 正文\n @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER\n @param isHtml 是否为HTML\n @param files 附件列表\n @return message-id\n @since 4.0.3\n"},{"name":"sendHtml","paramTypes":["java.util.Collection","java.lang.String","java.lang.String","java.util.Map","java.io.File[]"],"doc":" 使用配置文件中设置的账户发送HTML邮件,发送给多人\n\n @param tos 收件人列表\n @param subject 标题\n @param content 正文\n @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER\n @param files 附件列表\n @return message-id\n @since 3.2.0\n"},{"name":"send","paramTypes":["java.util.Collection","java.lang.String","java.lang.String","java.util.Map","boolean","java.io.File[]"],"doc":" 使用配置文件中设置的账户发送邮件,发送给多人\n\n @param tos 收件人列表\n @param subject 标题\n @param content 正文\n @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER\n @param isHtml 是否为HTML\n @param files 附件列表\n @return message-id\n"},{"name":"send","paramTypes":["java.util.Collection","java.util.Collection","java.util.Collection","java.lang.String","java.lang.String","java.util.Map","boolean","java.io.File[]"],"doc":" 使用配置文件中设置的账户发送邮件,发送给多人\n\n @param tos 收件人列表\n @param ccs 抄送人列表,可以为null或空\n @param bccs 密送人列表,可以为null或空\n @param subject 标题\n @param content 正文\n @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER\n @param isHtml 是否为HTML\n @param files 附件列表\n @return message-id\n @since 4.0.3\n"},{"name":"send","paramTypes":["cn.hutool.extra.mail.MailAccount","java.lang.String","java.lang.String","java.lang.String","java.util.Map","boolean","java.io.File[]"],"doc":" 发送邮件给多人\n\n @param mailAccount 邮件认证对象\n @param to 收件人,多个收件人逗号或者分号隔开\n @param subject 标题\n @param content 正文\n @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER\n @param isHtml 是否为HTML格式\n @param files 附件列表\n @return message-id\n @since 3.2.0\n"},{"name":"send","paramTypes":["cn.hutool.extra.mail.MailAccount","java.util.Collection","java.lang.String","java.lang.String","java.util.Map","boolean","java.io.File[]"],"doc":" 发送邮件给多人\n\n @param mailAccount 邮件帐户信息\n @param tos 收件人列表\n @param subject 标题\n @param content 正文\n @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER\n @param isHtml 是否为HTML格式\n @param files 附件列表\n @return message-id\n @since 4.6.3\n"},{"name":"send","paramTypes":["cn.hutool.extra.mail.MailAccount","java.util.Collection","java.util.Collection","java.util.Collection","java.lang.String","java.lang.String","java.util.Map","boolean","java.io.File[]"],"doc":" 发送邮件给多人\n\n @param mailAccount 邮件帐户信息\n @param tos 收件人列表\n @param ccs 抄送人列表,可以为null或空\n @param bccs 密送人列表,可以为null或空\n @param subject 标题\n @param content 正文\n @param imageMap 图片与占位符,占位符格式为cid:$IMAGE_PLACEHOLDER\n @param isHtml 是否为HTML格式\n @param files 附件列表\n @return message-id\n @since 4.6.3\n"},{"name":"getSession","paramTypes":["cn.hutool.extra.mail.MailAccount","boolean"],"doc":" 根据配置文件,获取邮件客户端会话\n\n @param mailAccount 邮件账户配置\n @param isSingleton 是否单例(全局共享会话)\n @return {@link Session}\n @since 5.5.7\n"},{"name":"send","paramTypes":["cn.hutool.extra.mail.MailAccount","boolean","java.util.Collection","java.util.Collection","java.util.Collection","java.lang.String","java.lang.String","java.util.Map","boolean","java.io.File[]"],"doc":" 发送邮件给多人\n\n @param mailAccount 邮件帐户信息\n @param useGlobalSession 是否全局共享Session\n @param tos 收件人列表\n @param ccs 抄送人列表,可以为null或空\n @param bccs 密送人列表,可以为null或空\n @param subject 标题\n @param content 正文\n @param imageMap 图片与占位符,占位符格式为cid:${cid}\n @param isHtml 是否为HTML格式\n @param files 附件列表\n @return message-id\n @since 4.6.3\n"},{"name":"splitAddress","paramTypes":["java.lang.String"],"doc":" 将多个联系人转为列表,分隔符为逗号或者分号\n\n @param addresses 多个联系人,如果为空返回null\n @return 联系人列表\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 文件处理工具类\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"setAttachmentResponseHeader","paramTypes":["javax.servlet.http.HttpServletResponse","java.lang.String"],"doc":" 下载文件名重新编码\n\n @param response 响应对象\n @param realFileName 真实文件名\n"},{"name":"percentEncode","paramTypes":["java.lang.String"],"doc":" 百分号编码工具方法\n\n @param s 需要百分号编码的字符串\n @return 百分号编码后的字符串\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 媒体类型工具类\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 获取地址类\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 根据ip地址定位工具类,离线方式\n 参考地址:<a href=\"https://gitee.com/lionsoul/ip2region/tree/master/binding/java\">集成 ip2region 实现离线IP地址定位库</a>\n\n @author lishuyan\n","fields":[],"enumConstants":[],"methods":[{"name":"getCityInfo","paramTypes":["java.lang.String"],"doc":" 根据IP地址离线获取城市\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" https://www.cnblogs.com/hlmy/p/16640635.html 随机生成\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" Excel相关处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"importExcel","paramTypes":["java.io.InputStream","java.lang.Class"],"doc":" 同步导入(适用于小数据量)\n\n @param is 输入流\n @return 转换后集合\n"},{"name":"importExcel","paramTypes":["java.io.InputStream","java.lang.Class","boolean"],"doc":" 使用校验监听器 异步导入 同步返回\n\n @param is 输入流\n @param clazz 对象类型\n @param isValidate 是否 Validator 检验 默认为是\n @return 转换后集合\n"},{"name":"importExcel","paramTypes":["java.io.InputStream","java.lang.Class","com.lego.common.excel.ExcelListener"],"doc":" 使用自定义监听器 异步导入 自定义返回\n\n @param is 输入流\n @param clazz 对象类型\n @param listener 自定义监听器\n @return 转换后集合\n"},{"name":"exportExcel","paramTypes":["java.util.List","java.lang.String","java.lang.Class","javax.servlet.http.HttpServletResponse"],"doc":" 导出excel\n\n @param list 导出数据集合\n @param sheetName 工作表的名称\n @param clazz 实体类\n @param response 响应体\n"},{"name":"exportExcel","paramTypes":["java.util.List","java.lang.String","java.lang.Class","javax.servlet.http.HttpServletResponse","java.util.List"],"doc":" 导出excel\n\n @param list 导出数据集合\n @param sheetName 工作表的名称\n @param clazz 实体类\n @param response 响应体\n @param options 级联下拉选\n"},{"name":"exportExcel","paramTypes":["java.util.List","java.lang.String","java.lang.Class","boolean","javax.servlet.http.HttpServletResponse"],"doc":" 导出excel\n\n @param list 导出数据集合\n @param sheetName 工作表的名称\n @param clazz 实体类\n @param merge 是否合并单元格\n @param response 响应体\n"},{"name":"exportExcel","paramTypes":["java.util.List","java.lang.String","java.lang.Class","boolean","javax.servlet.http.HttpServletResponse","java.util.List"],"doc":" 导出excel\n\n @param list 导出数据集合\n @param sheetName 工作表的名称\n @param clazz 实体类\n @param merge 是否合并单元格\n @param response 响应体\n @param options 级联下拉选\n"},{"name":"exportExcel","paramTypes":["java.util.List","java.lang.String","java.lang.Class","java.io.OutputStream"],"doc":" 导出excel\n\n @param list 导出数据集合\n @param sheetName 工作表的名称\n @param clazz 实体类\n @param os 输出流\n"},{"name":"exportExcel","paramTypes":["java.util.List","java.lang.String","java.lang.Class","java.io.OutputStream","java.util.List"],"doc":" 导出excel\n\n @param list 导出数据集合\n @param sheetName 工作表的名称\n @param clazz 实体类\n @param os 输出流\n @param options 级联下拉选内容\n"},{"name":"exportExcel","paramTypes":["java.util.List","java.lang.String","java.lang.Class","boolean","java.io.OutputStream","java.util.List"],"doc":" 导出excel\n\n @param list 导出数据集合\n @param sheetName 工作表的名称\n @param clazz 实体类\n @param merge 是否合并单元格\n @param os 输出流\n"},{"name":"exportTemplate","paramTypes":["java.util.List","java.lang.String","java.lang.String","javax.servlet.http.HttpServletResponse"],"doc":" 单表多数据模板导出 模板格式为 {.属性}\n\n @param filename 文件名\n @param templatePath 模板路径 resource 目录下的路径包括模板文件名\n 例如: excel/temp.xlsx\n 重点: 模板文件必须放置到启动类对应的 resource 目录下\n @param data 模板需要的数据\n @param response 响应体\n"},{"name":"exportTemplate","paramTypes":["java.util.List","java.lang.String","java.io.OutputStream"],"doc":" 单表多数据模板导出 模板格式为 {.属性}\n\n @param templatePath 模板路径 resource 目录下的路径包括模板文件名\n 例如: excel/temp.xlsx\n 重点: 模板文件必须放置到启动类对应的 resource 目录下\n @param data 模板需要的数据\n @param os 输出流\n"},{"name":"exportTemplateMultiList","paramTypes":["java.util.Map","java.lang.String","java.lang.String","javax.servlet.http.HttpServletResponse"],"doc":" 多表多数据模板导出 模板格式为 {key.属性}\n\n @param filename 文件名\n @param templatePath 模板路径 resource 目录下的路径包括模板文件名\n 例如: excel/temp.xlsx\n 重点: 模板文件必须放置到启动类对应的 resource 目录下\n @param data 模板需要的数据\n @param response 响应体\n"},{"name":"exportTemplateMultiList","paramTypes":["java.util.Map","java.lang.String","java.io.OutputStream"],"doc":" 多表多数据模板导出 模板格式为 {key.属性}\n\n @param templatePath 模板路径 resource 目录下的路径包括模板文件名\n 例如: excel/temp.xlsx\n 重点: 模板文件必须放置到启动类对应的 resource 目录下\n @param data 模板需要的数据\n @param os 输出流\n"},{"name":"resetResponse","paramTypes":["java.lang.String","javax.servlet.http.HttpServletResponse"],"doc":" 重置响应体\n"},{"name":"convertByExp","paramTypes":["java.lang.String","java.lang.String","java.lang.String"],"doc":" 解析导出值 0=男,1=女,2=未知\n\n @param propertyValue 参数值\n @param converterExp 翻译注解\n @param separator 分隔符\n @return 解析后值\n"},{"name":"reverseByExp","paramTypes":["java.lang.String","java.lang.String","java.lang.String"],"doc":" 反向解析值 男=0,女=1,未知=2\n\n @param propertyValue 参数值\n @param converterExp 翻译注解\n @param separator 分隔符\n @return 解析后值\n"},{"name":"encodingFilename","paramTypes":["java.lang.String"],"doc":" 编码文件名\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 缓存操作工具类 {@link }\n\n @author Michelle.Chung\n @date 2022/8/13\n","fields":[],"enumConstants":[],"methods":[{"name":"keys","paramTypes":["java.lang.String"],"doc":" 获取缓存组内所有的KEY\n\n @param cacheNames 缓存组名称\n"},{"name":"get","paramTypes":["java.lang.String","java.lang.Object"],"doc":" 获取缓存值\n\n @param cacheNames 缓存组名称\n @param key 缓存key\n"},{"name":"put","paramTypes":["java.lang.String","java.lang.Object","java.lang.Object"],"doc":" 保存缓存值\n\n @param cacheNames 缓存组名称\n @param key 缓存key\n @param value 缓存值\n"},{"name":"evict","paramTypes":["java.lang.String","java.lang.Object"],"doc":" 删除缓存值\n\n @param cacheNames 缓存组名称\n @param key 缓存key\n"},{"name":"clear","paramTypes":["java.lang.String"],"doc":" 清空缓存值\n\n @param cacheNames 缓存组名称\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 分布式队列工具\n 轻量级队列 重量级数据量 请使用 MQ\n 要求 redis 5.X 以上\n\n @author Lion Li\n @version 3.6.0 新增\n","fields":[],"enumConstants":[],"methods":[{"name":"getClient","paramTypes":[],"doc":" 获取客户端实例\n"},{"name":"addQueueObject","paramTypes":["java.lang.String","java.lang.Object"],"doc":" 添加普通队列数据\n\n @param queueName 队列名\n @param data 数据\n"},{"name":"getQueueObject","paramTypes":["java.lang.String"],"doc":" 通用获取一个队列数据 没有数据返回 null(不支持延迟队列)\n\n @param queueName 队列名\n"},{"name":"removeQueueObject","paramTypes":["java.lang.String","java.lang.Object"],"doc":" 通用删除队列数据(不支持延迟队列)\n"},{"name":"destroyQueue","paramTypes":["java.lang.String"],"doc":" 通用销毁队列 所有阻塞监听 报错(不支持延迟队列)\n"},{"name":"addDelayedQueueObject","paramTypes":["java.lang.String","java.lang.Object","long"],"doc":" 添加延迟队列数据 默认毫秒\n\n @param queueName 队列名\n @param data 数据\n @param time 延迟时间\n"},{"name":"addDelayedQueueObject","paramTypes":["java.lang.String","java.lang.Object","long","java.util.concurrent.TimeUnit"],"doc":" 添加延迟队列数据\n\n @param queueName 队列名\n @param data 数据\n @param time 延迟时间\n @param timeUnit 单位\n"},{"name":"getDelayedQueueObject","paramTypes":["java.lang.String"],"doc":" 获取一个延迟队列数据 没有数据返回 null\n\n @param queueName 队列名\n"},{"name":"removeDelayedQueueObject","paramTypes":["java.lang.String","java.lang.Object"],"doc":" 删除延迟队列数据\n"},{"name":"destroyDelayedQueue","paramTypes":["java.lang.String"],"doc":" 销毁延迟队列 所有阻塞监听 报错\n"},{"name":"addPriorityQueueObject","paramTypes":["java.lang.String","java.lang.Object"],"doc":" 添加优先队列数据\n\n @param queueName 队列名\n @param data 数据\n"},{"name":"getPriorityQueueObject","paramTypes":["java.lang.String"],"doc":" 优先队列获取一个队列数据 没有数据返回 null(不支持延迟队列)\n\n @param queueName 队列名\n"},{"name":"removePriorityQueueObject","paramTypes":["java.lang.String","java.lang.Object"],"doc":" 优先队列删除队列数据(不支持延迟队列)\n"},{"name":"destroyPriorityQueue","paramTypes":["java.lang.String"],"doc":" 优先队列销毁队列 所有阻塞监听 报错(不支持延迟队列)\n"},{"name":"trySetBoundedQueueCapacity","paramTypes":["java.lang.String","int"],"doc":" 尝试设置 有界队列 容量 用于限制数量\n\n @param queueName 队列名\n @param capacity 容量\n"},{"name":"trySetBoundedQueueCapacity","paramTypes":["java.lang.String","int","boolean"],"doc":" 尝试设置 有界队列 容量 用于限制数量\n\n @param queueName 队列名\n @param capacity 容量\n @param destroy 已存在是否销毁\n"},{"name":"addBoundedQueueObject","paramTypes":["java.lang.String","java.lang.Object"],"doc":" 添加有界队列数据\n\n @param queueName 队列名\n @param data 数据\n @return 添加成功 true 已达到界限 false\n"},{"name":"getBoundedQueueObject","paramTypes":["java.lang.String"],"doc":" 有界队列获取一个队列数据 没有数据返回 null(不支持延迟队列)\n\n @param queueName 队列名\n"},{"name":"removeBoundedQueueObject","paramTypes":["java.lang.String","java.lang.Object"],"doc":" 有界队列删除队列数据(不支持延迟队列)\n"},{"name":"destroyBoundedQueue","paramTypes":["java.lang.String"],"doc":" 有界队列销毁队列 所有阻塞监听 报错(不支持延迟队列)\n"},{"name":"subscribeBlockingQueue","paramTypes":["java.lang.String","java.util.function.Consumer","boolean"],"doc":" 订阅阻塞队列(可订阅所有实现类 例如: 延迟 优先 有界 等)\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" redis 工具类\n\n @author Lion Li\n @version 3.1.0 新增\n","fields":[],"enumConstants":[],"methods":[{"name":"rateLimiter","paramTypes":["java.lang.String","org.redisson.api.RateType","int","int"],"doc":" 限流\n\n @param key 限流key\n @param rateType 限流类型\n @param rate 速率\n @param rateInterval 速率间隔\n @return -1 表示失败\n"},{"name":"getClient","paramTypes":[],"doc":" 获取客户端实例\n"},{"name":"publish","paramTypes":["java.lang.String","java.lang.Object","java.util.function.Consumer"],"doc":" 发布通道消息\n\n @param channelKey 通道key\n @param msg 发送数据\n @param consumer 自定义处理\n"},{"name":"subscribe","paramTypes":["java.lang.String","java.lang.Class","java.util.function.Consumer"],"doc":" 订阅通道接收消息\n\n @param channelKey 通道key\n @param clazz 消息类型\n @param consumer 自定义处理\n"},{"name":"setCacheObject","paramTypes":["java.lang.String","java.lang.Object"],"doc":" 缓存基本的对象,Integer、String、实体类等\n\n @param key 缓存的键值\n @param value 缓存的值\n"},{"name":"setCacheObject","paramTypes":["java.lang.String","java.lang.Object","boolean"],"doc":" 缓存基本的对象,保留当前对象 TTL 有效期\n\n @param key 缓存的键值\n @param value 缓存的值\n @param isSaveTtl 是否保留TTL有效期(例如: set之前ttl剩余90 set之后还是为90)\n @since Redis 6.X 以上使用 setAndKeepTTL 兼容 5.X 方案\n"},{"name":"setCacheObject","paramTypes":["java.lang.String","java.lang.Object","java.time.Duration"],"doc":" 缓存基本的对象,Integer、String、实体类等\n\n @param key 缓存的键值\n @param value 缓存的值\n @param duration 时间\n"},{"name":"setObjectIfAbsent","paramTypes":["java.lang.String","java.lang.Object","java.time.Duration"],"doc":" 如果不存在则设置 并返回 true 如果存在则返回 false\n\n @param key 缓存的键值\n @param value 缓存的值\n @return set成功或失败\n"},{"name":"addObjectListener","paramTypes":["java.lang.String","org.redisson.api.ObjectListener"],"doc":" 注册对象监听器\n <p>\n key 监听器需开启 `notify-keyspace-events` 等 redis 相关配置\n\n @param key 缓存的键值\n @param listener 监听器配置\n"},{"name":"expire","paramTypes":["java.lang.String","long"],"doc":" 设置有效时间\n\n @param key Redis键\n @param timeout 超时时间\n @return true=设置成功;false=设置失败\n"},{"name":"expire","paramTypes":["java.lang.String","java.time.Duration"],"doc":" 设置有效时间\n\n @param key Redis键\n @param duration 超时时间\n @return true=设置成功;false=设置失败\n"},{"name":"getCacheObject","paramTypes":["java.lang.String"],"doc":" 获得缓存的基本对象。\n\n @param key 缓存键值\n @return 缓存键值对应的数据\n"},{"name":"getTimeToLive","paramTypes":["java.lang.String"],"doc":" 获得key剩余存活时间\n\n @param key 缓存键值\n @return 剩余存活时间\n"},{"name":"deleteObject","paramTypes":["java.lang.String"],"doc":" 删除单个对象\n\n @param key 缓存的键值\n"},{"name":"deleteObject","paramTypes":["java.util.Collection"],"doc":" 删除集合对象\n\n @param collection 多个对象\n"},{"name":"isExistsObject","paramTypes":["java.lang.String"],"doc":" 检查缓存对象是否存在\n\n @param key 缓存的键值\n"},{"name":"setCacheList","paramTypes":["java.lang.String","java.util.List"],"doc":" 缓存List数据\n\n @param key 缓存的键值\n @param dataList 待缓存的List数据\n @return 缓存的对象\n"},{"name":"addListListener","paramTypes":["java.lang.String","org.redisson.api.ObjectListener"],"doc":" 注册List监听器\n <p>\n key 监听器需开启 `notify-keyspace-events` 等 redis 相关配置\n\n @param key 缓存的键值\n @param listener 监听器配置\n"},{"name":"getCacheList","paramTypes":["java.lang.String"],"doc":" 获得缓存的list对象\n\n @param key 缓存的键值\n @return 缓存键值对应的数据\n"},{"name":"setCacheSet","paramTypes":["java.lang.String","java.util.Set"],"doc":" 缓存Set\n\n @param key 缓存键值\n @param dataSet 缓存的数据\n @return 缓存数据的对象\n"},{"name":"addSetListener","paramTypes":["java.lang.String","org.redisson.api.ObjectListener"],"doc":" 注册Set监听器\n <p>\n key 监听器需开启 `notify-keyspace-events` 等 redis 相关配置\n\n @param key 缓存的键值\n @param listener 监听器配置\n"},{"name":"getCacheSet","paramTypes":["java.lang.String"],"doc":" 获得缓存的set\n\n @param key 缓存的key\n @return set对象\n"},{"name":"setCacheMap","paramTypes":["java.lang.String","java.util.Map"],"doc":" 缓存Map\n\n @param key 缓存的键值\n @param dataMap 缓存的数据\n"},{"name":"addMapListener","paramTypes":["java.lang.String","org.redisson.api.ObjectListener"],"doc":" 注册Map监听器\n <p>\n key 监听器需开启 `notify-keyspace-events` 等 redis 相关配置\n\n @param key 缓存的键值\n @param listener 监听器配置\n"},{"name":"getCacheMap","paramTypes":["java.lang.String"],"doc":" 获得缓存的Map\n\n @param key 缓存的键值\n @return map对象\n"},{"name":"getCacheMapKeySet","paramTypes":["java.lang.String"],"doc":" 获得缓存Map的key列表\n\n @param key 缓存的键值\n @return key列表\n"},{"name":"setCacheMapValue","paramTypes":["java.lang.String","java.lang.String","java.lang.Object"],"doc":" 往Hash中存入数据\n\n @param key Redis键\n @param hKey Hash键\n @param value 值\n"},{"name":"getCacheMapValue","paramTypes":["java.lang.String","java.lang.String"],"doc":" 获取Hash中的数据\n\n @param key Redis键\n @param hKey Hash键\n @return Hash中的对象\n"},{"name":"delCacheMapValue","paramTypes":["java.lang.String","java.lang.String"],"doc":" 删除Hash中的数据\n\n @param key Redis键\n @param hKey Hash键\n @return Hash中的对象\n"},{"name":"delMultiCacheMapValue","paramTypes":["java.lang.String","java.util.Set"],"doc":" 删除Hash中的数据\n\n @param key Redis键\n @param hKeys Hash键\n"},{"name":"getMultiCacheMapValue","paramTypes":["java.lang.String","java.util.Set"],"doc":" 获取多个Hash中的数据\n\n @param key Redis键\n @param hKeys Hash键集合\n @return Hash对象集合\n"},{"name":"setAtomicValue","paramTypes":["java.lang.String","long"],"doc":" 设置原子值\n\n @param key Redis键\n @param value 值\n"},{"name":"getAtomicValue","paramTypes":["java.lang.String"],"doc":" 获取原子值\n\n @param key Redis键\n @return 当前值\n"},{"name":"incrAtomicValue","paramTypes":["java.lang.String"],"doc":" 递增原子值\n\n @param key Redis键\n @return 当前值\n"},{"name":"decrAtomicValue","paramTypes":["java.lang.String"],"doc":" 递减原子值\n\n @param key Redis键\n @return 当前值\n"},{"name":"keys","paramTypes":["java.lang.String"],"doc":" 获得缓存的基本对象列表\n\n @param pattern 字符串前缀\n @return 对象列表\n"},{"name":"deleteKeys","paramTypes":["java.lang.String"],"doc":" 删除缓存的基本对象列表\n\n @param pattern 字符串前缀\n"},{"name":"hasKey","paramTypes":["java.lang.String"],"doc":" 检查redis中是否存在key\n\n @param key 键\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 反射工具类. 提供调用getter/setter方法, 访问私有变量, 调用私有方法, 获取泛型类型Class, 被AOP过的真实类等工具函数.\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"invokeGetter","paramTypes":["java.lang.Object","java.lang.String"],"doc":" 调用Getter方法.\n 支持多级,如:对象名.对象名.方法\n"},{"name":"invokeSetter","paramTypes":["java.lang.Object","java.lang.String","java.lang.Object"],"doc":" 调用Setter方法, 仅匹配方法名。\n 支持多级,如:对象名.对象名.方法\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" spring工具类\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"containsBean","paramTypes":["java.lang.String"],"doc":" 如果BeanFactory包含一个与所给名称匹配的bean定义,则返回true\n\n @param name\n @return boolean\n"},{"name":"isSingleton","paramTypes":["java.lang.String"],"doc":" 判断以给定名字注册的bean定义是一个singleton还是一个prototype。\n 如果与给定名字相应的bean定义没有被找到,将会抛出一个异常(NoSuchBeanDefinitionException)\n\n @param name\n @return boolean\n"},{"name":"getType","paramTypes":["java.lang.String"],"doc":" @param name\n @return Class 注册对象的类型\n"},{"name":"getAliases","paramTypes":["java.lang.String"],"doc":" 如果给定的bean名字在bean定义中有别名,则返回这些别名\n\n @param name\n"},{"name":"getAopProxy","paramTypes":["java.lang.Object"],"doc":" 获取aop代理对象\n\n @param invoker\n @return\n"},{"name":"context","paramTypes":[],"doc":" 获取spring上下文\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" sql操作工具类\n\n @author gyongyi\n","fields":[{"name":"SQL_REGEX","doc":" 定义常用的 sql关键字\n"},{"name":"SQL_PATTERN","doc":" 仅支持字母、数字、下划线、空格、逗号、小数点(支持多个字段排序)\n"}],"enumConstants":[],"methods":[{"name":"escapeOrderBySql","paramTypes":["java.lang.String"],"doc":" 检查字符,防止注入绕过\n"},{"name":"isValidOrderBySql","paramTypes":["java.lang.String"],"doc":" 验证 order by 语法是否符合规范\n"},{"name":"filterKeyword","paramTypes":["java.lang.String"],"doc":" SQL关键字检查\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 自定义xss校验注解实现\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
com\lego\common\core\domain\PageQuery__Javadoc.json
com\lego\common\core\domain\model\EmailLoginBody__Javadoc.json
com\lego\common\annotation\DataColumn.class
com\lego\common\exception\user\UserException__Javadoc.json
com\lego\common\translation\handler\TranslationBeanSerializerModifier.class
com\lego\common\utils\StringUtils.class
com\lego\common\exception\user\CaptchaException__Javadoc.json
com\lego\common\core\domain\model\RegisterBody.class
com\lego\common\core\domain\model\XcxLoginUser.class
com\lego\common\encrypt\IEncryptor__Javadoc.json
com\lego\common\enums\HttpMethod.class
com\lego\common\enums\core\order\OrderTypeEnum.class
com\lego\common\core\domain\PageQuery.class
com\lego\common\exception\user\CaptchaExpireException__Javadoc.json
com\lego\common\exception\file\FileSizeLimitExceededException__Javadoc.json
com\lego\common\core\service\DictService__Javadoc.json
com\lego\common\xss\XssValidator__Javadoc.json
com\lego\common\translation\handler\TranslationBeanSerializerModifier__Javadoc.json
com\lego\common\excel\DropDownOptions.class
com\lego\common\core\domain\model\LoginUser__Javadoc.json
com\lego\common\core\domain\dto\UserOnlineDTO.class
com\lego\common\utils\BarcodeGenerator.class
com\lego\common\enums\DataBaseType__Javadoc.json
com\lego\common\core\domain\entity\SysDictType__Javadoc.json
com\lego\common\utils\Threads__Javadoc.json
com\lego\common\enums\BusinessStatus__Javadoc.json
com\lego\common\enums\CaptchaCategory__Javadoc.json
com\lego\common\core\service\UserService.class
com\lego\common\utils\redis\CacheUtils.class
com\lego\common\translation\impl\DictTypeTranslationImpl__Javadoc.json
com\lego\common\translation\impl\OssUrlTranslationImpl__Javadoc.json
com\lego\common\annotation\RepeatSubmit.class
com\lego\common\utils\file\MimeTypeUtils__Javadoc.json
com\lego\common\constant\HttpStatus__Javadoc.json
com\lego\common\excel\CellMergeStrategy$RepeatCell.class
com\lego\common\core\domain\event\OperLogEvent__Javadoc.json
com\lego\common\utils\DateUtils.class
com\lego\common\seal\SealFont.class
com\lego\common\enums\core\exam\CertificateTypeEnum.class
com\lego\common\jackson\DictDataJsonSerializer__Javadoc.json
com\lego\common\enums\ConclusionRelationEnum__Javadoc.json
com\lego\common\translation\impl\DeptNameTranslationImpl__Javadoc.json
com\lego\common\filter\XssHttpServletRequestWrapper__Javadoc.json
com\lego\common\core\service\DeptService__Javadoc.json
com\lego\common\constant\CacheConstants__Javadoc.json
com\lego\common\annotation\RateLimiter.class
com\lego\common\enums\core\exam\SurrenderDetailStatusEnum.class
com\lego\common\translation\impl\DeptNameTranslationImpl.class
com\lego\common\helper\LoginHelper__Javadoc.json
com\lego\common\config\LegoConfig__Javadoc.json
com\lego\common\core\domain\model\LoginBody__Javadoc.json
com\lego\common\core\domain\dto\UserOnlineDTO__Javadoc.json
com\lego\common\seal\SealCircle$SealCircleBuilder.class
com\lego\common\constant\GenConstants.class
com\lego\common\core\service\OssService.class
com\lego\common\core\domain\R__Javadoc.json
com\lego\common\core\domain\TreeEntity.class
com\lego\common\enums\OperatorType__Javadoc.json
com\lego\common\excel\ExcelListener__Javadoc.json
com\lego\common\exception\user\CaptchaExpireException.class
com\lego\common\utils\ip\AddressUtils__Javadoc.json
com\lego\common\enums\SerialMethod__Javadoc.json
com\lego\common\constant\CacheNames.class
com\lego\common\core\domain\model\XcxLoginUser__Javadoc.json
com\lego\common\enums\core\exam\CheckStatusEnum__Javadoc.json
com\lego\common\utils\poi\ExcelUtil.class
com\lego\common\excel\ExcelResult__Javadoc.json
com\lego\common\constant\CacheNames__Javadoc.json
com\lego\common\core\service\OssService__Javadoc.json
com\lego\common\excel\ExcelListener.class
com\lego\common\core\domain\dto\RoleDTO__Javadoc.json
com\lego\common\excel\DefaultExcelResult__Javadoc.json
com\lego\common\encrypt\encryptor\Base64Encryptor__Javadoc.json
com\lego\common\utils\ValidatorUtils.class
com\lego\common\utils\MessageUtils.class
com\lego\common\annotation\ExcelDictFormat.class
com\lego\common\utils\ValidatorUtils__Javadoc.json
com\lego\common\utils\redis\QueueUtils.class
com\lego\common\core\domain\entity\SysDictData__Javadoc.json
com\lego\common\translation\TranslationInterface.class
com\lego\common\exception\DemoModeException.class
com\lego\common\exception\UtilException.class
com\lego\common\enums\HttpMethod__Javadoc.json
com\lego\common\excel\DefaultExcelResult.class
com\lego\common\utils\StringUtils__Javadoc.json
com\lego\common\utils\file\FileUtils.class
com\lego\common\utils\poi\ExcelUtil__Javadoc.json
com\lego\common\encrypt\EncryptContext__Javadoc.json
com\lego\common\convert\ExcelBigNumberConvert__Javadoc.json
com\lego\common\core\domain\entity\SysRole__Javadoc.json
com\lego\common\enums\ExamTypeEnum.class
com\lego\common\helper\DataPermissionHelper__Javadoc.json
com\lego\common\core\mapper\BaseMapperPlus__Javadoc.json
com\lego\common\enums\DeviceType.class
com\lego\common\exception\GlobalException.class
com\lego\common\utils\EncryptUtils.class
com\lego\common\exception\file\FileNameLengthLimitExceededException.class
com\lego\common\excel\CellMergeStrategy__Javadoc.json
com\lego\common\exception\user\UserPasswordNotMatchException.class
com\lego\common\helper\DataBaseHelper.class
com\lego\common\enums\SensitiveStrategy__Javadoc.json
com\lego\common\exception\base\BaseException.class
com\lego\common\exception\user\UserPasswordNotMatchException__Javadoc.json
com\lego\common\core\domain\model\EmailLoginBody.class
com\lego\common\core\page\TableDataInfo.class
com\lego\common\constant\CacheConstants.class
com\lego\common\convert\ExcelBigNumberConvert.class
com\lego\common\enums\AlgorithmType.class
com\lego\common\annotation\EncryptField.class
com\lego\common\core\controller\BaseController.class
com\lego\common\enums\DataBaseType.class
com\lego\common\exception\file\FileException__Javadoc.json
com\lego\common\enums\BusinessType.class
com\lego\common\enums\LoginType.class
com\lego\common\encrypt\encryptor\AbstractEncryptor__Javadoc.json
com\lego\common\annotation\Log.class
com\lego\common\enums\ConclusionRelationEnum.class
com\lego\common\utils\file\FileUtils__Javadoc.json
com\lego\common\utils\ip\AddressUtils.class
com\lego\common\utils\spring\SpringUtils.class
com\lego\common\constant\SystemConstants.class
com\lego\common\seal\Seal.class
com\lego\common\enums\core\exam\SurrenderDetailStatusEnum__Javadoc.json
com\lego\common\enums\MimeTypeEnum__Javadoc.json
com\lego\common\core\service\ConfigService__Javadoc.json
com\lego\common\utils\redis\RedisUtils__Javadoc.json
com\lego\common\exception\ServiceException__Javadoc.json
com\lego\common\filter\RepeatedlyRequestWrapper__Javadoc.json
com\lego\common\excel\DefaultExcelListener__Javadoc.json
com\lego\common\utils\TreeBuildUtils__Javadoc.json
com\lego\common\annotation\ExcelEnumFormat.class
com\lego\common\enums\MimeTypeEnum.class
com\lego\common\translation\handler\TranslationHandler.class
com\lego\common\utils\redis\CacheUtils__Javadoc.json
com\lego\common\filter\XssFilter__Javadoc.json
com\lego\common\jackson\SensitiveJsonSerializer.class
com\lego\common\utils\BeanCopyUtils__Javadoc.json
com\lego\common\annotation\Translation.class
com\lego\common\constant\Constants.class
com\lego\common\core\domain\model\LoginUser.class
com\lego\common\excel\CellMergeStrategy.class
com\lego\common\enums\core\exam\CertificateTypeEnum__Javadoc.json
com\lego\common\enums\core\order\OrderTeamStatusEnum.class
com\lego\common\enums\UserType.class
com\lego\common\exception\DemoModeException__Javadoc.json
com\lego\common\filter\RepeatableFilter.class
com\lego\common\enums\core\exam\CheckStatusEnum.class
com\lego\common\core\domain\entity\SysDept.class
com\lego\common\filter\RepeatedlyRequestWrapper$1.class
com\lego\common\enums\CaptchaType.class
com\lego\common\core\validate\AddGroup.class
com\lego\common\enums\UserType__Javadoc.json
com\lego\common\utils\BeanCopyUtils$BeanCopierCache.class
com\lego\common\convert\ExcelEnumConvert$1.class
com\lego\common\excel\DropDownOptions__Javadoc.json
com\lego\common\utils\StreamUtils.class
com\lego\common\utils\ip\RegionUtils.class
com\lego\common\config\LegoConfig.class
com\lego\common\enums\EncodeType__Javadoc.json
com\lego\common\translation\impl\DictTypeTranslationImpl.class
com\lego\common\core\domain\ValidList.class
com\lego\common\core\domain\entity\SysDictType.class
com\lego\common\core\domain\entity\SysUser__Javadoc.json
com\lego\common\enums\BusinessType__Javadoc.json
com\lego\common\enums\core\order\OrderTeamStatusEnum__Javadoc.json
com\lego\common\utils\sql\SqlUtil.class
com\lego\common\captcha\UnsignedMathGenerator__Javadoc.json
com\lego\common\excel\ExcelDownHandler.class
com\lego\common\enums\core\exam\PersonnelTypeEnum__Javadoc.json
com\lego\common\xss\Xss.class
META-INF\spring-configuration-metadata.json
com\lego\common\translation\TranslationInterface__Javadoc.json
com\lego\common\encrypt\encryptor\Sm2Encryptor__Javadoc.json
com\lego\common\core\domain\model\LoginBody.class
com\lego\common\core\validate\EditGroup__Javadoc.json
com\lego\common\utils\personnel\GenerateName__Javadoc.json
com\lego\common\utils\reflect\ReflectUtils.class
com\lego\common\annotation\Sensitive.class
com\lego\common\core\domain\event\LogininforEvent.class
com\lego\common\filter\RepeatableFilter__Javadoc.json
com\lego\common\encrypt\encryptor\Sm4Encryptor.class
com\lego\common\exception\GlobalException__Javadoc.json
com\lego\common\jackson\SensitiveJsonSerializer__Javadoc.json
com\lego\common\filter\RepeatedlyRequestWrapper.class
com\lego\common\core\domain\event\OperLogEvent.class
com\lego\common\utils\email\MailUtils.class
com\lego\common\translation\impl\UserNameTranslationImpl__Javadoc.json
com\lego\common\core\service\ConfigService.class
com\lego\common\encrypt\encryptor\Base64Encryptor.class
com\lego\common\translation\impl\OssUrlTranslationImpl.class
com\lego\common\core\domain\model\SmsLoginBody__Javadoc.json
com\lego\common\convert\ExcelEnumConvert.class
com\lego\common\constant\UserConstants.class
com\lego\common\enums\SerialMethod.class
com\lego\common\enums\DeviceType__Javadoc.json
com\lego\common\utils\Threads.class
com\lego\common\utils\email\MailUtils__Javadoc.json
com\lego\common\utils\ServletUtils__Javadoc.json
com\lego\common\enums\DataScopeType__Javadoc.json
com\lego\common\helper\DataPermissionHelper.class
com\lego\common\exception\file\FileException.class
com\lego\common\utils\JsonUtils__Javadoc.json
com\lego\common\exception\ServiceException.class
com\lego\common\exception\user\UserException.class
com\lego\common\utils\spring\SpringUtils__Javadoc.json
com\lego\common\utils\StreamUtils__Javadoc.json
com\lego\common\core\domain\entity\SysMenu__Javadoc.json
com\lego\common\utils\MessageUtils__Javadoc.json
com\lego\common\encrypt\EncryptContext.class
com\lego\common\exception\user\CaptchaException.class
com\lego\common\utils\redis\RedisUtils.class
com\lego\common\core\domain\BaseEntity.class
com\lego\common\core\service\DictService.class
com\lego\common\core\validate\EditGroup.class
com\lego\common\encrypt\encryptor\RsaEncryptor__Javadoc.json
com\lego\common\enums\AlgorithmType__Javadoc.json
com\lego\common\enums\BusinessStatus.class
com\lego\common\core\domain\dto\RoleDTO.class
com\lego\common\core\domain\entity\SysDictData.class
com\lego\common\core\service\DeptService.class
com\lego\common\excel\DefaultExcelListener.class
com\lego\common\excel\ExcelResult.class
com\lego\common\utils\BeanCopyUtils$BeanCopierCache__Javadoc.json
com\lego\common\constant\UserConstants__Javadoc.json
com\lego\common\core\mapper\BaseMapperPlus.class
com\lego\common\translation\impl\UserNameTranslationImpl.class
com\lego\common\seal\SealCircle.class
com\lego\common\convert\ExcelDictConvert__Javadoc.json
com\lego\common\core\domain\event\LogininforEvent__Javadoc.json
com\lego\common\encrypt\encryptor\RsaEncryptor.class
com\lego\common\exception\UtilException__Javadoc.json
com\lego\common\utils\JsonUtils.class
com\lego\common\exception\file\FileNameLengthLimitExceededException__Javadoc.json
com\lego\common\utils\EncryptUtils__Javadoc.json
com\lego\common\exception\user\UserPasswordRetryLimitExceedException__Javadoc.json
com\lego\common\core\service\SensitiveService__Javadoc.json
com\lego\common\constant\TransConstant.class
com\lego\common\enums\UserStatus__Javadoc.json
com\lego\common\annotation\DictDataMapper.class
com\lego\common\xss\XssValidator.class
com\lego\common\core\validate\QueryGroup.class
com\lego\common\core\controller\BaseController__Javadoc.json
com\lego\common\filter\XssHttpServletRequestWrapper$1.class
com\lego\common\utils\PinyinUtil.class
com\lego\common\enums\CaptchaType__Javadoc.json
com\lego\common\enums\SensitiveStrategy.class
com\lego\common\convert\ExcelDictConvert.class
com\lego\common\core\domain\entity\SysDept__Javadoc.json
com\lego\common\utils\file\MimeTypeUtils.class
com\lego\common\enums\ConclusionConditionEnum__Javadoc.json
com\lego\common\core\domain\entity\SysUser.class
com\lego\common\constant\HttpStatus.class
com\lego\common\enums\UserStatus.class
com\lego\common\constant\GenConstants__Javadoc.json
com\lego\common\core\domain\entity\SysMenu.class
com\lego\common\encrypt\encryptor\Sm2Encryptor.class
com\lego\common\core\domain\TreeEntity__Javadoc.json
com\lego\common\utils\DateUtils__Javadoc.json
com\lego\common\utils\ServletUtils.class
com\lego\common\enums\ConclusionConditionEnum.class
com\lego\common\utils\BeanCopyUtils.class
com\lego\common\filter\XssFilter.class
com\lego\common\helper\DataBaseHelper__Javadoc.json
com\lego\common\utils\reflect\ReflectUtils__Javadoc.json
com\lego\common\core\domain\entity\SysRole.class
com\lego\common\exception\base\BaseException__Javadoc.json
com\lego\common\jackson\DictDataJsonSerializer.class
com\lego\common\constant\Constants__Javadoc.json
com\lego\common\core\domain\R.class
com\lego\common\encrypt\encryptor\AbstractEncryptor.class
com\lego\common\exception\file\FileSizeLimitExceededException.class
com\lego\common\encrypt\encryptor\Sm4Encryptor__Javadoc.json
com\lego\common\enums\CaptchaCategory.class
com\lego\common\encrypt\encryptor\AesEncryptor.class
com\lego\common\helper\LoginHelper.class
com\lego\common\filter\XssHttpServletRequestWrapper.class
com\lego\common\enums\LimitType__Javadoc.json
com\lego\common\core\domain\model\RegisterBody__Javadoc.json
com\lego\common\enums\EncodeType.class
com\lego\common\exception\user\UserPasswordRetryLimitExceedException.class
com\lego\common\enums\ExamTypeEnum__Javadoc.json
com\lego\common\utils\redis\QueueUtils__Javadoc.json
com\lego\common\core\validate\QueryGroup__Javadoc.json
com\lego\common\core\page\TableDataInfo__Javadoc.json
com\lego\common\constant\TransConstant__Javadoc.json
com\lego\common\utils\TreeBuildUtils.class
com\lego\common\annotation\TranslationType.class
com\lego\common\core\domain\model\SmsLoginBody.class
com\lego\common\enums\OperatorType.class
com\lego\common\encrypt\encryptor\AesEncryptor__Javadoc.json
com\lego\common\utils\ip\RegionUtils__Javadoc.json
com\lego\common\constant\SystemConstants__Javadoc.json
com\lego\common\annotation\CellMerge.class
com\lego\common\encrypt\IEncryptor.class
com\lego\common\seal\SealFont$SealFontBuilder.class
com\lego\common\enums\DataScopeType.class
com\lego\common\captcha\UnsignedMathGenerator.class
com\lego\common\enums\LimitType.class
com\lego\common\annotation\DataPermission.class
com\lego\common\core\validate\AddGroup__Javadoc.json
com\lego\common\convert\ExcelEnumConvert__Javadoc.json
com\lego\common\core\service\UserService__Javadoc.json
com\lego\common\utils\personnel\GenerateName.class
com\lego\common\core\domain\BaseEntity__Javadoc.json
com\lego\common\enums\core\exam\PersonnelTypeEnum.class
com\lego\common\excel\ExcelDownHandler__Javadoc.json
com\lego\common\seal\Seal__Javadoc.json
com\lego\common\core\service\SensitiveService.class
com\lego\common\utils\sql\SqlUtil__Javadoc.json
com\lego\common\enums\core\order\OrderConditionFieldEnum.class
com\lego\common\enums\LoginType__Javadoc.json
com\lego\common\translation\handler\TranslationHandler__Javadoc.json
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\annotation\Translation.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\exception\user\UserException.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\constant\TransConstant.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\excel\ExcelResult.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\captcha\UnsignedMathGenerator.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\model\SmsLoginBody.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\helper\DataPermissionHelper.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\service\DeptService.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\validate\EditGroup.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\spring\SpringUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\event\OperLogEvent.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\core\exam\CertificateTypeEnum.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\DataBaseType.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\xss\XssValidator.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\EncryptUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\entity\SysUser.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\constant\CacheConstants.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\convert\ExcelBigNumberConvert.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\translation\impl\DictTypeTranslationImpl.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\poi\ExcelUtil.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\exception\DemoModeException.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\UserType.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\exception\file\FileException.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\exception\UtilException.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\core\order\OrderConditionFieldEnum.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\TreeBuildUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\model\LoginUser.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\controller\BaseController.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\helper\LoginHelper.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\redis\CacheUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\file\MimeTypeUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\constant\UserConstants.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\constant\CacheNames.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\PageQuery.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\DeviceType.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\config\LegoConfig.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\DateUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\encrypt\encryptor\Base64Encryptor.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\personnel\GenerateName.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\dto\UserOnlineDTO.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\translation\impl\DeptNameTranslationImpl.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\dto\RoleDTO.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\service\DictService.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\seal\SealFont.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\redis\RedisUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\LoginType.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\BaseEntity.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\HttpMethod.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\entity\SysMenu.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\core\exam\CheckStatusEnum.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\excel\DefaultExcelListener.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\encrypt\encryptor\AesEncryptor.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\encrypt\IEncryptor.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\BusinessStatus.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\TreeEntity.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\mapper\BaseMapperPlus.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\excel\CellMergeStrategy.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\translation\impl\UserNameTranslationImpl.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\exception\user\UserPasswordRetryLimitExceedException.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\exception\base\BaseException.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\constant\Constants.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\exception\file\FileNameLengthLimitExceededException.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\core\order\OrderTypeEnum.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\constant\HttpStatus.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\ip\RegionUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\MimeTypeEnum.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\StreamUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\annotation\CellMerge.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\encrypt\encryptor\AbstractEncryptor.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\LimitType.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\StringUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\annotation\RateLimiter.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\service\OssService.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\annotation\ExcelEnumFormat.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\EncodeType.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\translation\impl\OssUrlTranslationImpl.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\reflect\ReflectUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\ExamTypeEnum.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\file\FileUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\core\exam\PersonnelTypeEnum.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\PinyinUtil.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\validate\QueryGroup.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\convert\ExcelDictConvert.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\BeanCopyUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\model\XcxLoginUser.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\encrypt\encryptor\RsaEncryptor.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\helper\DataBaseHelper.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\jackson\DictDataJsonSerializer.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\seal\Seal.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\exception\GlobalException.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\ValidList.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\BarcodeGenerator.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\exception\ServiceException.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\page\TableDataInfo.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\entity\SysRole.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\OperatorType.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\constant\GenConstants.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\Threads.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\annotation\Log.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\entity\SysDept.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\email\MailUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\annotation\TranslationType.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\CaptchaCategory.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\convert\ExcelEnumConvert.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\annotation\DictDataMapper.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\validate\AddGroup.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\excel\ExcelDownHandler.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\UserStatus.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\annotation\DataPermission.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\translation\handler\TranslationBeanSerializerModifier.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\ip\AddressUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\annotation\DataColumn.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\ConclusionRelationEnum.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\exception\file\FileSizeLimitExceededException.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\encrypt\encryptor\Sm2Encryptor.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\BusinessType.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\translation\TranslationInterface.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\filter\RepeatableFilter.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\exception\user\CaptchaException.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\excel\ExcelListener.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\translation\handler\TranslationHandler.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\ConclusionConditionEnum.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\encrypt\encryptor\Sm4Encryptor.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\service\SensitiveService.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\AlgorithmType.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\core\exam\SurrenderDetailStatusEnum.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\constant\SystemConstants.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\ValidatorUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\core\order\OrderTeamStatusEnum.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\model\LoginBody.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\encrypt\EncryptContext.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\filter\XssHttpServletRequestWrapper.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\SerialMethod.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\MessageUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\service\ConfigService.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\model\RegisterBody.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\annotation\ExcelDictFormat.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\DataScopeType.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\annotation\RepeatSubmit.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\event\LogininforEvent.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\annotation\Sensitive.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\SensitiveStrategy.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\filter\RepeatedlyRequestWrapper.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\service\UserService.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\xss\Xss.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\entity\SysDictType.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\exception\user\CaptchaExpireException.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\exception\user\UserPasswordNotMatchException.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\annotation\EncryptField.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\excel\DefaultExcelResult.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\enums\CaptchaType.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\model\EmailLoginBody.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\excel\DropDownOptions.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\jackson\SensitiveJsonSerializer.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\filter\XssFilter.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\JsonUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\entity\SysDictData.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\core\domain\R.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\ServletUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\sql\SqlUtil.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\utils\redis\QueueUtils.java
F:\workspace\lego-manage\lego-common\src\main\java\com\lego\common\seal\SealCircle.java
{"doc":" @author GYongYi\n @date 2024/9/15 23:31\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 广告对象 core_advert\n\n @author GYongYi\n @date 2024/9/8 15:12\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"name","doc":" 广告名称\n"},{"name":"sort","doc":" 排序\n"},{"name":"status","doc":" 广告状态(0未发布 1已发布 2已下架)\n"},{"name":"ossId","doc":" 文件ID\n"},{"name":"language","doc":" 前端APP数据国际化(zh_CN、en_US、ru_RU)\n"},{"name":"delFlag","doc":" 删除标志(0代表存在 2代表删除)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 积木对象 core_building_block\n\n @author GYongYi\n @date 2024/9/8 16:27\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"entiretyId","doc":" 套件ID\n"},{"name":"name","doc":" 广告名称\n"},{"name":"ossId","doc":" 文件ID\n"},{"name":"language","doc":" 前端APP数据国际化(zh_CN、en_US、ru_RU)\n"},{"name":"delFlag","doc":" 删除标志(0代表存在 2代表删除)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 课程对象 core_course\n\n @author GYongYi\n @date 2024/9/8 16:29\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"buildingBlockId","doc":" 积木ID\n"},{"name":"name","doc":" 课程名称\n"},{"name":"type","doc":" 搭建类型(2D 3D)\n"},{"name":"twoDimensionalType","doc":" 2D上传类型(0图片上传 1连接上传)\n"},{"name":"twoDimensionalUrl","doc":" 2D url\n"},{"name":"twoDimensionalOssId","doc":" 2D oss_id\n"},{"name":"threeDimensionalType","doc":" 3D上传类型(0图片上传 1连接上传)\n"},{"name":"threeDimensionalUrl","doc":" 3D url\n"},{"name":"threeDimensionalOssId","doc":" 3D oss_id\n"},{"name":"caseOssId","doc":" 案例OSS_id\n"},{"name":"caseName","doc":" 案例名称\n"},{"name":"ossId","doc":" 课程图片\n"},{"name":"language","doc":" 前端APP数据国际化(zh_CN、en_US、ru_RU)\n"},{"name":"delFlag","doc":" 删除标志(0代表存在 2代表删除)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 套件对象 core_entirety\n\n @author GYongYi\n @date 2024/9/8 16:30\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"name","doc":" 广告名称\n"},{"name":"sort","doc":" 排序\n"},{"name":"type","doc":" 类型(0词语 1图标 )\n"},{"name":"ossId","doc":" 文件ID\n"},{"name":"language","doc":" 前端APP数据国际化(zh_CN、en_US、ru_RU)\n"},{"name":"delFlag","doc":" 删除标志(0代表存在 2代表删除)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 问题对象 core_question\n\n @author GYongYi\n @date 2024/9/8 16:31\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"title","doc":" 问题标题\n"},{"name":"coverOssId","doc":" 封面 ossId\n"},{"name":"videoOssId","doc":" 视频 ossId\n"},{"name":"showAndroid","doc":" Android展示状态 0 不展示 1展示\n"},{"name":"showIos","doc":" Ios展示状态 0 不展示 1展示\n"},{"name":"showWindows","doc":" Windows展示状态 0 不展示 1展示\n"},{"name":"status","doc":" 帐号状态(0未发布 1已发布 2已下架)\n"},{"name":"sort","doc":" 排序\n"},{"name":"language","doc":" 前端APP数据国际化(zh_CN、en_US、ru_RU)\n"},{"name":"delFlag","doc":" 删除标志(0代表存在 2代表删除)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" APP升级对象 core_upgrade\n\n @author GYongYi\n @date 2024/9/8 16:32\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"fileOssId","doc":" 程序包文件ossId\n"},{"name":"platformType","doc":" 升级包类型 Android IOS windows\n"},{"name":"fileType","doc":" 文件分类 0固件 1程序\n"},{"name":"version","doc":" 版本号\n"},{"name":"remark","doc":" 描述\n"},{"name":"releaseTime","doc":" 发布时间\n"},{"name":"status","doc":" 发布状态(0未发布 1已发布 2已下架)\n"},{"name":"language","doc":" 前端APP数据国际化(zh_CN、en_US、ru_RU)\n"},{"name":"delFlag","doc":" 删除标志(0代表存在 2代表删除)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 广告请求对象 core_advert\n\n @author GYongYi\n @date 2024/9/8 15:20\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"name","doc":" 广告名称\n"},{"name":"sort","doc":" 排序\n"},{"name":"status","doc":" 帐号状态(0未发布 1已发布 2已下架)\n"},{"name":"ossId","doc":" 文件ID\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" @author GYongYi\n @date 2024/9/15 23:28\n","fields":[{"name":"language","doc":" 前端APP数据国际化(zh_CN、en_US、ru_RU)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 积木视图对象\n\n @author GYongYi\n @date 2024/9/8 16:27\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"entiretyId","doc":" 套件ID\n"},{"name":"name","doc":" 广告名称\n"},{"name":"ossId","doc":" 文件ID\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 积木搜索请求对象\n\n @author GYongYi\n @date 2024/9/8 16:27\n","fields":[{"name":"searchKey","doc":" 搜索字符串\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 课程请求对象 core_course\n\n @author GYongYi\n @date 2024/9/8 16:29\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"buildingBlockId","doc":" 积木ID\n"},{"name":"name","doc":" 课程名称\n"},{"name":"type","doc":" 搭建类型(2D 3D)\n"},{"name":"twoDimensionalType","doc":" 2D上传类型(0图片上传 1连接上传)\n"},{"name":"twoDimensionalUrl","doc":" 2D url\n"},{"name":"twoDimensionalOssId","doc":" 2D oss_id\n"},{"name":"threeDimensionalType","doc":" 3D上传类型(0图片上传 1连接上传)\n"},{"name":"threeDimensionalUrl","doc":" 3D url\n"},{"name":"threeDimensionalOssId","doc":" 3D oss_id\n"},{"name":"caseOssId","doc":" 案例OSS_id\n"},{"name":"ossId","doc":" 课程图片\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 课程视图对象\n\n @author GYongYi\n @date 2024/9/8 16:27\n","fields":[{"name":"searchKey","doc":" 搜索字符串\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 套件请求对象\n\n @author GYongYi\n @date 2024/9/8 15:20\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"name","doc":" 套件名称\n"},{"name":"sort","doc":" 排序\n"},{"name":"type","doc":" 类型(0词语 1图标 )\n"},{"name":"ossId","doc":" 文件ID\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 问题请求对象 core_question\n\n @author GYongYi\n @date 2024/9/8 16:31\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"title","doc":" 问题标题\n"},{"name":"coverOssId","doc":" 封面 ossId\n"},{"name":"videoOssId","doc":" 视频 ossId\n"},{"name":"showAndroid","doc":" Android展示状态 0 不展示 1展示\n"},{"name":"showIos","doc":" Ios展示状态 0 不展示 1展示\n"},{"name":"showWindows","doc":" Windows展示状态 0 不展示 1展示\n"},{"name":"status","doc":" 帐号状态(0未发布 1已发布 2已下架)\n"},{"name":"sort","doc":" 排序\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 问题搜索请求对象\n\n @author GYongYi\n @date 2024/9/8 16:27\n","fields":[{"name":"status","doc":" 发布状态(0未发布 1已发布 2已下架)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" APP升级请求对象\n\n @author GYongYi\n @date 2024/9/8 16:32\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"fileOssId","doc":" 程序包文件ossId\n"},{"name":"platformType","doc":" 升级包类型 Android IOS windows\n"},{"name":"fileType","doc":" 文件分类 0固件 1程序\n"},{"name":"version","doc":" 版本号\n"},{"name":"remark","doc":" 描述\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" APP升级请求对象\n\n @author GYongYi\n @date 2024/9/8 16:32\n","fields":[{"name":"fileType","doc":" 文件分类 0固件 1程序\n"},{"name":"platformType","doc":" 升级包类型 Android IOS windows\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 广告视图对象 core_advert\n\n @author GYongYi\n @date 2024/9/8 15:20\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"name","doc":" 广告名称\n"},{"name":"sort","doc":" 排序\n"},{"name":"status","doc":" 广告状态(0未发布 1已发布 2已下架)\n"},{"name":"ossId","doc":" 文件ID\n"},{"name":"language","doc":" 前端APP数据国际化(zh_CN、en_US、ru_RU)\n"},{"name":"ossUrl","doc":" 文件全地址\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 积木视图对象 core_building_block\n\n @author GYongYi\n @date 2024/9/8 16:27\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"entiretyId","doc":" 套件ID\n"},{"name":"entiretyName","doc":" 套件名称\n"},{"name":"name","doc":" 广告名称\n"},{"name":"ossId","doc":" 文件ID\n"},{"name":"language","doc":" 前端APP数据国际化(zh_CN、en_US、ru_RU)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 课程视图对象 core_course\n\n @author GYongYi\n @date 2024/9/8 16:29\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"buildingBlockId","doc":" 积木ID\n"},{"name":"buildingBlockName","doc":" 积木名称\n"},{"name":"name","doc":" 课程名称\n"},{"name":"type","doc":" 搭建类型(2D 3D)\n"},{"name":"twoDimensionalType","doc":" 2D上传类型(0图片上传 1连接上传)\n"},{"name":"twoDimensionalUrl","doc":" 2D url\n"},{"name":"twoDimensionalOssId","doc":" 2D oss_id\n"},{"name":"threeDimensionalType","doc":" 3D上传类型(0图片上传 1连接上传)\n"},{"name":"threeDimensionalUrl","doc":" 3D url\n"},{"name":"threeDimensionalOssId","doc":" 3D oss_id\n"},{"name":"caseOssId","doc":" 案例OSS_id\n"},{"name":"caseName","doc":" 案例名称\n"},{"name":"ossId","doc":" 课程图片\n"},{"name":"language","doc":" 前端APP数据国际化(zh_CN、en_US、ru_RU)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 套件视图对象 core_entirety\n\n @author GYongYi\n @date 2024/9/8 16:30\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"name","doc":" 广告名称\n"},{"name":"sort","doc":" 排序\n"},{"name":"type","doc":" 类型(0词语 1图标 )\n"},{"name":"ossId","doc":" 文件ID\n"},{"name":"language","doc":" 前端APP数据国际化(zh_CN、en_US、ru_RU)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 问题视图对象 core_question\n\n @author GYongYi\n @date 2024/9/8 16:31\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"title","doc":" 问题标题\n"},{"name":"coverOssId","doc":" 封面 ossId\n"},{"name":"videoOssId","doc":" 视频 ossId\n"},{"name":"showAndroid","doc":" Android展示状态 0 不展示 1展示\n"},{"name":"showIos","doc":" Ios展示状态 0 不展示 1展示\n"},{"name":"showWindows","doc":" Windows展示状态 0 不展示 1展示\n"},{"name":"showStr","doc":" 显示平台连接字符\n"},{"name":"sort","doc":" 排序\n"},{"name":"status","doc":" 帐号状态(0未发布 1已发布 2已下架)\n"},{"name":"language","doc":" 前端APP数据国际化(zh_CN、en_US、ru_RU)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" APP升级视图对象 core_upgrade\n\n @author GYongYi\n @date 2024/9/8 16:32\n","fields":[{"name":"id","doc":" 主键\n"},{"name":"fileOssId","doc":" 程序包文件ossId\n"},{"name":"platformType","doc":" 升级包类型 Android IOS windows\n"},{"name":"fileType","doc":" 文件分类 0固件 1程序\n"},{"name":"version","doc":" 版本号\n"},{"name":"remark","doc":" 描述\n"},{"name":"releaseTime","doc":" 发布时间\n"},{"name":"status","doc":" 发布状态(0未发布 1已发布 2已下架)\n"},{"name":"language","doc":" 前端APP数据国际化(zh_CN、en_US、ru_RU)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 广告状态枚举类\n\n @author GYongYi\n @date 2024/9/9 19:53\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 广告Mapper接口\n\n @author GYongYi\n @date 2024/9/8 15:22\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 积木Mapper接口\n\n @author GYongYi\n @date 2024/9/8 15:22\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 课程Mapper接口\n\n @author GYongYi\n @date 2024/9/8 15:22\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 套件Mapper接口\n\n @author GYongYi\n @date 2024/9/8 15:22\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 问题Mapper接口\n\n @author GYongYi\n @date 2024/9/8 15:22\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" APP升级Mapper接口\n\n @author GYongYi\n @date 2024/9/8 15:22\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 广告Service接口\n\n @author GYongYi\n @date 2024/9/8 15:24\n","fields":[],"enumConstants":[],"methods":[{"name":"addAdvert","paramTypes":["com.lego.core.domin.bo.AdvertBo"],"doc":" 新增\n\n @param advertBo\n @return\n"},{"name":"updateAdvert","paramTypes":["com.lego.core.domin.bo.AdvertBo"],"doc":" 修改\n\n @param advertBo\n @return\n"},{"name":"updateStatus","paramTypes":["com.lego.core.domin.bo.AdvertBo"],"doc":" 修改状态\n @param advertBo\n @return\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n @param id\n @return\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 积木Service接口\n\n @author GYongYi\n @date 2024/9/8 15:24\n","fields":[],"enumConstants":[],"methods":[{"name":"listPage","paramTypes":["com.lego.core.domin.bo.BuildingBlockQueryBo","java.lang.String"],"doc":" 查询所有列表(带分页)\n\n @param queryBo\n @return\n"},{"name":"list","paramTypes":["java.lang.String"],"doc":" 不带分页查询\n\n @return\n"},{"name":"addBlock","paramTypes":["com.lego.core.domin.bo.BuildingBlockBo"],"doc":" 新增\n\n @param blockBo\n @return\n"},{"name":"updateBlock","paramTypes":["com.lego.core.domin.bo.BuildingBlockBo"],"doc":" 修改\n\n @param blockBo\n @return\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"},{"name":"getListByIds","paramTypes":["java.util.Collection"],"doc":" 根据ID集合获取积木\n @param ids\n @return\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 课程Service接口\n\n @author GYongYi\n @date 2024/9/8 15:24\n","fields":[],"enumConstants":[],"methods":[{"name":"listPage","paramTypes":["com.lego.core.domin.bo.CourseQueryBo","java.lang.String"],"doc":" 查询所有列表(带分页)\n\n @param query\n @return\n"},{"name":"addCourse","paramTypes":["com.lego.core.domin.bo.CourseBo"],"doc":" 新增\n\n @param courseBo\n @return\n"},{"name":"updateCourse","paramTypes":["com.lego.core.domin.bo.CourseBo"],"doc":" 修改\n\n @param courseBo\n @return\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 套件Service接口\n\n @author GYongYi\n @date 2024/9/8 15:24\n","fields":[],"enumConstants":[],"methods":[{"name":"listPage","paramTypes":["com.lego.common.core.domain.PageQuery","java.lang.String"],"doc":" 查询所有列表(带分页)\n\n @param query\n @return\n"},{"name":"list","paramTypes":["java.lang.String"],"doc":" 不带分页查询\n\n @return\n"},{"name":"addEntirety","paramTypes":["com.lego.core.domin.bo.EntiretyBo"],"doc":" 新增\n\n @param entiretyBo\n @return\n"},{"name":"updateEntirety","paramTypes":["com.lego.core.domin.bo.EntiretyBo"],"doc":" 修改\n\n @param entiretyBo\n @return\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"},{"name":"getListByIds","paramTypes":["java.util.Collection"],"doc":" 根据ID集合获取套件\n @param ids\n @return\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 问题MService接口\n\n @author GYongYi\n @date 2024/9/8 15:24\n","fields":[],"enumConstants":[],"methods":[{"name":"addQuestion","paramTypes":["com.lego.core.domin.bo.QuestionBo"],"doc":" 新增\n\n @param questionBo\n @return\n"},{"name":"updateQuestion","paramTypes":["com.lego.core.domin.bo.QuestionBo"],"doc":" 修改\n\n @param questionBo\n @return\n"},{"name":"updateStatus","paramTypes":["com.lego.core.domin.bo.QuestionBo"],"doc":" 修改状态\n\n @param questionBo\n @return\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" APP升级Service接口\n\n @author GYongYi\n @date 2024/9/8 15:24\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.core.domin.bo.UpgradeQueryBo","java.lang.String"],"doc":" 根据条件搜索\n @param query\n @return\n"},{"name":"addUpgrade","paramTypes":["com.lego.core.domin.bo.UpgradeBo"],"doc":" 新增\n\n @param UpgradeBo\n @return\n"},{"name":"updateUpgrade","paramTypes":["com.lego.core.domin.bo.UpgradeBo"],"doc":" 修改\n\n @param UpgradeBo\n @return\n"},{"name":"release","paramTypes":["java.lang.String"],"doc":" 发布\n\n @param id\n @return\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 广告Service业务层处理\n\n @author GYongYi\n @date 2024/9/8 15:30\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.common.core.domain.PageQuery","java.lang.String"],"doc":" 查询列表\n\n @param query\n @return\n"},{"name":"addAdvert","paramTypes":["com.lego.core.domin.bo.AdvertBo"],"doc":" 新增\n\n @param advertBo\n @return\n"},{"name":"updateAdvert","paramTypes":["com.lego.core.domin.bo.AdvertBo"],"doc":" 修改\n\n @param advertBo\n @return\n"},{"name":"updateStatus","paramTypes":["com.lego.core.domin.bo.AdvertBo"],"doc":" 更改状态\n\n @param advertBo\n @return\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"},{"name":"checkStatus","paramTypes":["com.lego.core.domin.bo.AdvertBo"],"doc":" 校验状态是否存在\n\n @param advertBo\n @throws ServerException\n"},{"name":"checkExists","paramTypes":["java.lang.String"],"doc":" 校验数据是否存在\n\n @param id\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 积木Service业务层处理\n\n @author GYongYi\n @date 2024/9/8 15:30\n","fields":[],"enumConstants":[],"methods":[{"name":"listPage","paramTypes":["com.lego.core.domin.bo.BuildingBlockQueryBo","java.lang.String"],"doc":" 查询所有列表(带分页)\n\n @param queryBo\n @return\n"},{"name":"list","paramTypes":["java.lang.String"],"doc":" 不带分页查询\n\n @return\n"},{"name":"addBlock","paramTypes":["com.lego.core.domin.bo.BuildingBlockBo"],"doc":" 新增\n\n @param blockBo\n @return\n"},{"name":"updateBlock","paramTypes":["com.lego.core.domin.bo.BuildingBlockBo"],"doc":" 修改\n\n @param blockBo\n @return\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"},{"name":"getListByIds","paramTypes":["java.util.Collection"],"doc":" 根据ID集合获取积木\n\n @param ids\n @return\n"},{"name":"checkExists","paramTypes":["java.lang.String"],"doc":" 校验数据是否存在\n\n @param id\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 课程Service业务层处理\n\n @author GYongYi\n @date 2024/9/8 15:30\n","fields":[],"enumConstants":[],"methods":[{"name":"listPage","paramTypes":["com.lego.core.domin.bo.CourseQueryBo","java.lang.String"],"doc":" 查询所有列表\n\n @param query\n @return\n"},{"name":"addCourse","paramTypes":["com.lego.core.domin.bo.CourseBo"],"doc":" 新增\n\n @param courseBo\n @return\n"},{"name":"updateCourse","paramTypes":["com.lego.core.domin.bo.CourseBo"],"doc":" 修改\n\n @param courseBo\n @return\n @throws ServerException\n"},{"name":"setCaseName","paramTypes":["com.lego.core.domin.Course"],"doc":" 从上传文件中获取案例名称\n @param course\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"},{"name":"checkExists","paramTypes":["java.lang.String"],"doc":" 校验数据是否存在\n\n @param id\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 套件Service业务层处理\n\n @author GYongYi\n @date 2024/9/8 15:30\n","fields":[],"enumConstants":[],"methods":[{"name":"listPage","paramTypes":["com.lego.common.core.domain.PageQuery","java.lang.String"],"doc":" 查询所有列表\n\n @param query\n @return\n"},{"name":"list","paramTypes":["java.lang.String"],"doc":" 不带分页查询\n\n @return\n"},{"name":"addEntirety","paramTypes":["com.lego.core.domin.bo.EntiretyBo"],"doc":" 新增\n\n @param entiretyBo\n @return\n"},{"name":"updateEntirety","paramTypes":["com.lego.core.domin.bo.EntiretyBo"],"doc":" 修改\n\n @param entiretyBo\n @return\n @throws ServerException\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"},{"name":"checkExists","paramTypes":["java.lang.String"],"doc":" 校验数据是否存在\n\n @param id\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 问题MService业务层处理\n\n @author GYongYi\n @date 2024/9/8 15:30\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.core.domin.bo.QuestionQueryBo","java.lang.String"],"doc":" 查询列表\n\n @param query\n @return\n"},{"name":"addQuestion","paramTypes":["com.lego.core.domin.bo.QuestionBo"],"doc":" 新增\n\n @param questionBo\n @return\n"},{"name":"updateQuestion","paramTypes":["com.lego.core.domin.bo.QuestionBo"],"doc":" 修改\n\n @param questionBo\n @return\n"},{"name":"updateStatus","paramTypes":["com.lego.core.domin.bo.QuestionBo"],"doc":" 更改状态\n\n @param questionBo\n @return\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"},{"name":"checkStatus","paramTypes":["com.lego.core.domin.bo.QuestionBo"],"doc":" 校验状态是否存在\n\n @param questionBo\n @throws ServerException\n"},{"name":"checkExists","paramTypes":["java.lang.String"],"doc":" 校验数据是否存在\n\n @param id\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" APP升级Service业务层处理\n\n @author GYongYi\n @date 2024/9/8 15:30\n","fields":[],"enumConstants":[],"methods":[{"name":"list","paramTypes":["com.lego.core.domin.bo.UpgradeQueryBo","java.lang.String"],"doc":" 查询列表\n\n @param query\n @return\n"},{"name":"addUpgrade","paramTypes":["com.lego.core.domin.bo.UpgradeBo"],"doc":" 新增\n\n @param UpgradeBo\n @return\n"},{"name":"updateUpgrade","paramTypes":["com.lego.core.domin.bo.UpgradeBo"],"doc":" 修改\n\n @param upgradeBo\n @return\n @throws ServerException\n"},{"name":"release","paramTypes":["java.lang.String"],"doc":" 发布\n\n @param id\n @return\n @throws ServerException\n"},{"name":"remove","paramTypes":["java.lang.String"],"doc":" 删除\n\n @param id\n @return\n @throws ServerException\n"},{"name":"checkExists","paramTypes":["java.lang.String"],"doc":" 校验数据是否存在\n\n @param id\n @throws ServerException\n"}],"constructors":[]}
\ No newline at end of file
com\lego\core\domin\bo\CourseQueryBo__Javadoc.json
com\lego\core\enums\StatusEnums__Javadoc.json
com\lego\core\domin\Advert.class
com\lego\core\mapper\BuildingBlockMapper__Javadoc.json
com\lego\core\mapper\AdvertMapper__Javadoc.json
com\lego\core\service\impl\QuestionServiceImpl__Javadoc.json
com\lego\core\enums\StatusEnums.class
com\lego\core\domin\Upgrade.class
com\lego\core\domin\vo\AdvertVo__Javadoc.json
com\lego\core\mapper\UpgradeMapper__Javadoc.json
com\lego\core\service\IAdvertService__Javadoc.json
com\lego\core\service\impl\BuildingBlockServiceImpl.class
com\lego\core\domin\vo\EntiretyVo__Javadoc.json
com\lego\core\service\impl\AdvertServiceImpl.class
com\lego\core\domin\bo\BuildingBlockBo__Javadoc.json
com\lego\core\mapper\AdvertMapper.class
com\lego\core\domin\Entirety.class
com\lego\core\domin\Course__Javadoc.json
com\lego\core\domin\Entirety__Javadoc.json
com\lego\core\service\IEntiretyService__Javadoc.json
com\lego\core\domin\bo\CourseBo.class
com\lego\core\domin\bo\UpgradeQueryBo.class
com\lego\core\mapper\EntiretyMapper__Javadoc.json
com\lego\core\service\impl\UpgradeServiceImpl.class
com\lego\core\service\IUpgradeService__Javadoc.json
com\lego\core\service\IAdvertService.class
com\lego\core\aspect\LanguageAspect.class
com\lego\core\domin\bo\EntiretyBo.class
com\lego\core\service\IQuestionService.class
com\lego\core\domin\bo\UpgradeQueryBo__Javadoc.json
com\lego\core\domin\vo\BuildingBlockVo.class
com\lego\core\mapper\CourseMapper.class
com\lego\core\domin\bo\QuestionQueryBo.class
com\lego\core\domin\bo\QuestionBo.class
com\lego\core\domin\bo\UpgradeBo.class
com\lego\core\domin\vo\QuestionVo__Javadoc.json
com\lego\core\mapper\CourseMapper__Javadoc.json
com\lego\core\domin\BuildingBlock.class
com\lego\core\domin\bo\QuestionQueryBo__Javadoc.json
com\lego\core\domin\bo\BuildingBlockQueryBo__Javadoc.json
com\lego\core\domin\vo\CourseVo.class
com\lego\core\mapper\QuestionMapper.class
com\lego\core\mapper\EntiretyMapper.class
com\lego\core\service\impl\QuestionServiceImpl.class
com\lego\core\service\IEntiretyService.class
com\lego\core\domin\vo\CourseVo__Javadoc.json
com\lego\core\annotation\LanguageAnnotation.class
com\lego\core\service\impl\UpgradeServiceImpl__Javadoc.json
com\lego\core\service\IBuildingBlockService.class
com\lego\core\service\impl\AdvertServiceImpl__Javadoc.json
com\lego\core\domin\Question.class
com\lego\core\domin\bo\BaseBO__Javadoc.json
com\lego\core\domin\bo\BuildingBlockQueryBo.class
com\lego\core\domin\Upgrade__Javadoc.json
com\lego\core\domin\vo\QuestionVo.class
com\lego\core\service\impl\CourseServiceImpl__Javadoc.json
com\lego\core\domin\Course.class
com\lego\core\domin\bo\CourseBo__Javadoc.json
com\lego\core\domin\bo\BuildingBlockBo.class
com\lego\core\domin\bo\AdvertBo.class
com\lego\core\service\ICourseService.class
com\lego\core\domin\bo\EntiretyBo__Javadoc.json
com\lego\core\mapper\BuildingBlockMapper.class
com\lego\core\mapper\UpgradeMapper.class
com\lego\core\aspect\LanguageAspect__Javadoc.json
com\lego\core\domin\bo\CourseQueryBo.class
com\lego\core\domin\vo\UpgradeVo__Javadoc.json
com\lego\core\domin\vo\UpgradeVo.class
com\lego\core\domin\Question__Javadoc.json
com\lego\core\domin\vo\EntiretyVo.class
com\lego\core\service\impl\CourseServiceImpl.class
com\lego\core\domin\bo\UpgradeBo__Javadoc.json
com\lego\core\domin\vo\BuildingBlockVo__Javadoc.json
com\lego\core\domin\vo\AdvertVo.class
com\lego\core\service\impl\EntiretyServiceImpl.class
com\lego\core\domin\bo\AdvertBo__Javadoc.json
com\lego\core\domin\BuildingBlock__Javadoc.json
com\lego\core\service\impl\BuildingBlockServiceImpl__Javadoc.json
com\lego\core\service\impl\EntiretyServiceImpl__Javadoc.json
com\lego\core\mapper\QuestionMapper__Javadoc.json
com\lego\core\service\ICourseService__Javadoc.json
com\lego\core\domin\Advert__Javadoc.json
com\lego\core\domin\bo\BaseBO.class
com\lego\core\domin\bo\QuestionBo__Javadoc.json
com\lego\core\service\IBuildingBlockService__Javadoc.json
com\lego\core\service\IQuestionService__Javadoc.json
com\lego\core\service\IUpgradeService.class
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\bo\CourseBo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\mapper\QuestionMapper.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\service\IAdvertService.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\bo\EntiretyBo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\service\IEntiretyService.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\enums\StatusEnums.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\bo\BuildingBlockBo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\bo\CourseQueryBo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\mapper\CourseMapper.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\service\IUpgradeService.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\bo\UpgradeBo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\vo\QuestionVo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\mapper\EntiretyMapper.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\service\impl\EntiretyServiceImpl.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\bo\UpgradeQueryBo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\Question.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\Upgrade.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\bo\AdvertBo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\vo\CourseVo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\service\IBuildingBlockService.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\service\impl\AdvertServiceImpl.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\mapper\UpgradeMapper.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\service\ICourseService.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\Course.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\mapper\BuildingBlockMapper.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\BuildingBlock.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\Entirety.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\service\impl\BuildingBlockServiceImpl.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\vo\BuildingBlockVo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\service\IQuestionService.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\aspect\LanguageAspect.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\vo\EntiretyVo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\vo\UpgradeVo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\service\impl\UpgradeServiceImpl.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\bo\QuestionBo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\service\impl\QuestionServiceImpl.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\bo\QuestionQueryBo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\mapper\AdvertMapper.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\Advert.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\service\impl\CourseServiceImpl.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\bo\BaseBO.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\bo\BuildingBlockQueryBo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\domin\vo\AdvertVo.java
F:\workspace\lego-manage\lego-core\src\main\java\com\lego\core\annotation\LanguageAnnotation.java
{
"groups": [
{
"name": "captcha",
"type": "com.lego.framework.config.properties.CaptchaProperties",
"sourceType": "com.lego.framework.config.properties.CaptchaProperties"
},
{
"name": "mail",
"type": "com.lego.framework.config.properties.MailProperties",
"sourceType": "com.lego.framework.config.properties.MailProperties"
},
{
"name": "mybatis-encryptor",
"type": "com.lego.framework.config.properties.EncryptorProperties",
"sourceType": "com.lego.framework.config.properties.EncryptorProperties"
},
{
"name": "redisson",
"type": "com.lego.framework.config.properties.RedissonProperties",
"sourceType": "com.lego.framework.config.properties.RedissonProperties"
},
{
"name": "redisson.cluster-servers-config",
"type": "com.lego.framework.config.properties.RedissonProperties$ClusterServersConfig",
"sourceType": "com.lego.framework.config.properties.RedissonProperties",
"sourceMethod": "getClusterServersConfig()"
},
{
"name": "redisson.single-server-config",
"type": "com.lego.framework.config.properties.RedissonProperties$SingleServerConfig",
"sourceType": "com.lego.framework.config.properties.RedissonProperties",
"sourceMethod": "getSingleServerConfig()"
},
{
"name": "security",
"type": "com.lego.framework.config.properties.SecurityProperties",
"sourceType": "com.lego.framework.config.properties.SecurityProperties"
},
{
"name": "springdoc",
"type": "com.lego.framework.config.properties.SpringDocProperties",
"sourceType": "com.lego.framework.config.properties.SpringDocProperties"
},
{
"name": "springdoc.components",
"type": "io.swagger.v3.oas.models.Components",
"sourceType": "com.lego.framework.config.properties.SpringDocProperties",
"sourceMethod": "getComponents()"
},
{
"name": "springdoc.external-docs",
"type": "io.swagger.v3.oas.models.ExternalDocumentation",
"sourceType": "com.lego.framework.config.properties.SpringDocProperties",
"sourceMethod": "getExternalDocs()"
},
{
"name": "springdoc.info",
"type": "com.lego.framework.config.properties.SpringDocProperties$InfoProperties",
"sourceType": "com.lego.framework.config.properties.SpringDocProperties",
"sourceMethod": "getInfo()"
},
{
"name": "springdoc.info.contact",
"type": "io.swagger.v3.oas.models.info.Contact",
"sourceType": "com.lego.framework.config.properties.SpringDocProperties$InfoProperties",
"sourceMethod": "getContact()"
},
{
"name": "springdoc.info.license",
"type": "io.swagger.v3.oas.models.info.License",
"sourceType": "com.lego.framework.config.properties.SpringDocProperties$InfoProperties",
"sourceMethod": "getLicense()"
},
{
"name": "springdoc.paths",
"type": "io.swagger.v3.oas.models.Paths",
"sourceType": "com.lego.framework.config.properties.SpringDocProperties",
"sourceMethod": "getPaths()"
},
{
"name": "thread-pool",
"type": "com.lego.framework.config.properties.ThreadPoolProperties",
"sourceType": "com.lego.framework.config.properties.ThreadPoolProperties"
},
{
"name": "xss",
"type": "com.lego.framework.config.properties.XssProperties",
"sourceType": "com.lego.framework.config.properties.XssProperties"
}
],
"properties": [
{
"name": "captcha.category",
"type": "com.lego.common.enums.CaptchaCategory",
"description": "验证码类别",
"sourceType": "com.lego.framework.config.properties.CaptchaProperties"
},
{
"name": "captcha.char-length",
"type": "java.lang.Integer",
"description": "字符验证码长度",
"sourceType": "com.lego.framework.config.properties.CaptchaProperties"
},
{
"name": "captcha.number-length",
"type": "java.lang.Integer",
"description": "数字验证码位数",
"sourceType": "com.lego.framework.config.properties.CaptchaProperties"
},
{
"name": "captcha.type",
"type": "com.lego.common.enums.CaptchaType",
"description": "验证码类型",
"sourceType": "com.lego.framework.config.properties.CaptchaProperties"
},
{
"name": "mail.auth",
"type": "java.lang.Boolean",
"description": "是否需要用户名密码验证",
"sourceType": "com.lego.framework.config.properties.MailProperties"
},
{
"name": "mail.connection-timeout",
"type": "java.lang.Long",
"description": "Socket连接超时值,单位毫秒,缺省值不超时",
"sourceType": "com.lego.framework.config.properties.MailProperties"
},
{
"name": "mail.enabled",
"type": "java.lang.Boolean",
"description": "过滤开关",
"sourceType": "com.lego.framework.config.properties.MailProperties"
},
{
"name": "mail.from",
"type": "java.lang.String",
"description": "发送方,遵循RFC-822标准",
"sourceType": "com.lego.framework.config.properties.MailProperties"
},
{
"name": "mail.host",
"type": "java.lang.String",
"description": "SMTP服务器域名",
"sourceType": "com.lego.framework.config.properties.MailProperties"
},
{
"name": "mail.pass",
"type": "java.lang.String",
"description": "密码",
"sourceType": "com.lego.framework.config.properties.MailProperties"
},
{
"name": "mail.port",
"type": "java.lang.Integer",
"description": "SMTP服务端口",
"sourceType": "com.lego.framework.config.properties.MailProperties"
},
{
"name": "mail.ssl-enable",
"type": "java.lang.Boolean",
"description": "使用 SSL安全连接",
"sourceType": "com.lego.framework.config.properties.MailProperties"
},
{
"name": "mail.starttls-enable",
"type": "java.lang.Boolean",
"description": "使用 STARTTLS安全连接,STARTTLS是对纯文本通信协议的扩展。它将纯文本连接升级为加密连接(TLS或SSL), 而不是使用一个单独的加密通信端口。",
"sourceType": "com.lego.framework.config.properties.MailProperties"
},
{
"name": "mail.timeout",
"type": "java.lang.Long",
"description": "SMTP超时时长,单位毫秒,缺省值不超时",
"sourceType": "com.lego.framework.config.properties.MailProperties"
},
{
"name": "mail.user",
"type": "java.lang.String",
"description": "用户名",
"sourceType": "com.lego.framework.config.properties.MailProperties"
},
{
"name": "mybatis-encryptor.algorithm",
"type": "com.lego.common.enums.AlgorithmType",
"description": "默认算法",
"sourceType": "com.lego.framework.config.properties.EncryptorProperties"
},
{
"name": "mybatis-encryptor.enable",
"type": "java.lang.Boolean",
"description": "过滤开关",
"sourceType": "com.lego.framework.config.properties.EncryptorProperties"
},
{
"name": "mybatis-encryptor.encode",
"type": "com.lego.common.enums.EncodeType",
"description": "编码方式,base64\/hex",
"sourceType": "com.lego.framework.config.properties.EncryptorProperties"
},
{
"name": "mybatis-encryptor.password",
"type": "java.lang.String",
"description": "安全秘钥",
"sourceType": "com.lego.framework.config.properties.EncryptorProperties"
},
{
"name": "mybatis-encryptor.private-key",
"type": "java.lang.String",
"description": "私钥",
"sourceType": "com.lego.framework.config.properties.EncryptorProperties"
},
{
"name": "mybatis-encryptor.public-key",
"type": "java.lang.String",
"description": "公钥",
"sourceType": "com.lego.framework.config.properties.EncryptorProperties"
},
{
"name": "redisson.cluster-servers-config.client-name",
"type": "java.lang.String",
"description": "客户端名称",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$ClusterServersConfig"
},
{
"name": "redisson.cluster-servers-config.idle-connection-timeout",
"type": "java.lang.Integer",
"description": "连接空闲超时,单位:毫秒",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$ClusterServersConfig",
"defaultValue": 0
},
{
"name": "redisson.cluster-servers-config.master-connection-minimum-idle-size",
"type": "java.lang.Integer",
"description": "master最小空闲连接数",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$ClusterServersConfig",
"defaultValue": 0
},
{
"name": "redisson.cluster-servers-config.master-connection-pool-size",
"type": "java.lang.Integer",
"description": "master连接池大小",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$ClusterServersConfig",
"defaultValue": 0
},
{
"name": "redisson.cluster-servers-config.read-mode",
"type": "org.redisson.config.ReadMode",
"description": "读取模式",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$ClusterServersConfig"
},
{
"name": "redisson.cluster-servers-config.slave-connection-minimum-idle-size",
"type": "java.lang.Integer",
"description": "slave最小空闲连接数",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$ClusterServersConfig",
"defaultValue": 0
},
{
"name": "redisson.cluster-servers-config.slave-connection-pool-size",
"type": "java.lang.Integer",
"description": "slave连接池大小",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$ClusterServersConfig",
"defaultValue": 0
},
{
"name": "redisson.cluster-servers-config.subscription-connection-pool-size",
"type": "java.lang.Integer",
"description": "发布和订阅连接池大小",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$ClusterServersConfig",
"defaultValue": 0
},
{
"name": "redisson.cluster-servers-config.subscription-mode",
"type": "org.redisson.config.SubscriptionMode",
"description": "订阅模式",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$ClusterServersConfig"
},
{
"name": "redisson.cluster-servers-config.timeout",
"type": "java.lang.Integer",
"description": "命令等待超时,单位:毫秒",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$ClusterServersConfig",
"defaultValue": 0
},
{
"name": "redisson.key-prefix",
"type": "java.lang.String",
"description": "redis缓存key前缀",
"sourceType": "com.lego.framework.config.properties.RedissonProperties"
},
{
"name": "redisson.netty-threads",
"type": "java.lang.Integer",
"description": "Netty线程池数量,默认值 = 当前处理核数量 * 2",
"sourceType": "com.lego.framework.config.properties.RedissonProperties",
"defaultValue": 0
},
{
"name": "redisson.single-server-config.client-name",
"type": "java.lang.String",
"description": "客户端名称",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$SingleServerConfig"
},
{
"name": "redisson.single-server-config.connection-minimum-idle-size",
"type": "java.lang.Integer",
"description": "最小空闲连接数",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$SingleServerConfig",
"defaultValue": 0
},
{
"name": "redisson.single-server-config.connection-pool-size",
"type": "java.lang.Integer",
"description": "连接池大小",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$SingleServerConfig",
"defaultValue": 0
},
{
"name": "redisson.single-server-config.idle-connection-timeout",
"type": "java.lang.Integer",
"description": "连接空闲超时,单位:毫秒",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$SingleServerConfig",
"defaultValue": 0
},
{
"name": "redisson.single-server-config.subscription-connection-pool-size",
"type": "java.lang.Integer",
"description": "发布和订阅连接池大小",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$SingleServerConfig",
"defaultValue": 0
},
{
"name": "redisson.single-server-config.timeout",
"type": "java.lang.Integer",
"description": "命令等待超时,单位:毫秒",
"sourceType": "com.lego.framework.config.properties.RedissonProperties$SingleServerConfig",
"defaultValue": 0
},
{
"name": "redisson.threads",
"type": "java.lang.Integer",
"description": "线程池数量,默认值 = 当前处理核数量 * 2",
"sourceType": "com.lego.framework.config.properties.RedissonProperties",
"defaultValue": 0
},
{
"name": "security.excludes",
"type": "java.lang.String[]",
"description": "排除路径",
"sourceType": "com.lego.framework.config.properties.SecurityProperties"
},
{
"name": "springdoc.components.callbacks",
"type": "java.util.Map<java.lang.String,io.swagger.v3.oas.models.callbacks.Callback>",
"sourceType": "io.swagger.v3.oas.models.Components"
},
{
"name": "springdoc.components.examples",
"type": "java.util.Map<java.lang.String,io.swagger.v3.oas.models.examples.Example>",
"sourceType": "io.swagger.v3.oas.models.Components"
},
{
"name": "springdoc.components.extensions",
"type": "java.util.Map<java.lang.String,java.lang.Object>",
"sourceType": "io.swagger.v3.oas.models.Components"
},
{
"name": "springdoc.components.headers",
"type": "java.util.Map<java.lang.String,io.swagger.v3.oas.models.headers.Header>",
"sourceType": "io.swagger.v3.oas.models.Components"
},
{
"name": "springdoc.components.links",
"type": "java.util.Map<java.lang.String,io.swagger.v3.oas.models.links.Link>",
"sourceType": "io.swagger.v3.oas.models.Components"
},
{
"name": "springdoc.components.parameters",
"type": "java.util.Map<java.lang.String,io.swagger.v3.oas.models.parameters.Parameter>",
"sourceType": "io.swagger.v3.oas.models.Components"
},
{
"name": "springdoc.components.path-items",
"type": "java.util.Map<java.lang.String,io.swagger.v3.oas.models.PathItem>",
"sourceType": "io.swagger.v3.oas.models.Components"
},
{
"name": "springdoc.components.request-bodies",
"type": "java.util.Map<java.lang.String,io.swagger.v3.oas.models.parameters.RequestBody>",
"sourceType": "io.swagger.v3.oas.models.Components"
},
{
"name": "springdoc.components.responses",
"type": "java.util.Map<java.lang.String,io.swagger.v3.oas.models.responses.ApiResponse>",
"sourceType": "io.swagger.v3.oas.models.Components"
},
{
"name": "springdoc.components.schemas",
"type": "java.util.Map<java.lang.String,io.swagger.v3.oas.models.media.Schema>",
"sourceType": "io.swagger.v3.oas.models.Components"
},
{
"name": "springdoc.components.security-schemes",
"type": "java.util.Map<java.lang.String,io.swagger.v3.oas.models.security.SecurityScheme>",
"sourceType": "io.swagger.v3.oas.models.Components"
},
{
"name": "springdoc.external-docs.description",
"type": "java.lang.String",
"sourceType": "io.swagger.v3.oas.models.ExternalDocumentation"
},
{
"name": "springdoc.external-docs.extensions",
"type": "java.util.Map<java.lang.String,java.lang.Object>",
"sourceType": "io.swagger.v3.oas.models.ExternalDocumentation"
},
{
"name": "springdoc.external-docs.url",
"type": "java.lang.String",
"sourceType": "io.swagger.v3.oas.models.ExternalDocumentation"
},
{
"name": "springdoc.info.contact.email",
"type": "java.lang.String",
"sourceType": "io.swagger.v3.oas.models.info.Contact"
},
{
"name": "springdoc.info.contact.extensions",
"type": "java.util.Map<java.lang.String,java.lang.Object>",
"sourceType": "io.swagger.v3.oas.models.info.Contact"
},
{
"name": "springdoc.info.contact.name",
"type": "java.lang.String",
"sourceType": "io.swagger.v3.oas.models.info.Contact"
},
{
"name": "springdoc.info.contact.url",
"type": "java.lang.String",
"sourceType": "io.swagger.v3.oas.models.info.Contact"
},
{
"name": "springdoc.info.description",
"type": "java.lang.String",
"description": "描述",
"sourceType": "com.lego.framework.config.properties.SpringDocProperties$InfoProperties"
},
{
"name": "springdoc.info.license.extensions",
"type": "java.util.Map<java.lang.String,java.lang.Object>",
"sourceType": "io.swagger.v3.oas.models.info.License"
},
{
"name": "springdoc.info.license.identifier",
"type": "java.lang.String",
"sourceType": "io.swagger.v3.oas.models.info.License"
},
{
"name": "springdoc.info.license.name",
"type": "java.lang.String",
"sourceType": "io.swagger.v3.oas.models.info.License"
},
{
"name": "springdoc.info.license.url",
"type": "java.lang.String",
"sourceType": "io.swagger.v3.oas.models.info.License"
},
{
"name": "springdoc.info.title",
"type": "java.lang.String",
"description": "标题",
"sourceType": "com.lego.framework.config.properties.SpringDocProperties$InfoProperties"
},
{
"name": "springdoc.info.version",
"type": "java.lang.String",
"description": "版本",
"sourceType": "com.lego.framework.config.properties.SpringDocProperties$InfoProperties"
},
{
"name": "springdoc.paths.extensions",
"type": "java.util.Map<java.lang.String,java.lang.Object>",
"sourceType": "io.swagger.v3.oas.models.Paths"
},
{
"name": "springdoc.tags",
"type": "java.util.List<io.swagger.v3.oas.models.tags.Tag>",
"description": "标签",
"sourceType": "com.lego.framework.config.properties.SpringDocProperties"
},
{
"name": "thread-pool.enabled",
"type": "java.lang.Boolean",
"description": "是否开启线程池",
"sourceType": "com.lego.framework.config.properties.ThreadPoolProperties",
"defaultValue": false
},
{
"name": "thread-pool.keep-alive-seconds",
"type": "java.lang.Integer",
"description": "线程池维护线程所允许的空闲时间",
"sourceType": "com.lego.framework.config.properties.ThreadPoolProperties",
"defaultValue": 0
},
{
"name": "thread-pool.queue-capacity",
"type": "java.lang.Integer",
"description": "队列最大长度",
"sourceType": "com.lego.framework.config.properties.ThreadPoolProperties",
"defaultValue": 0
},
{
"name": "xss.enabled",
"type": "java.lang.String",
"description": "过滤开关",
"sourceType": "com.lego.framework.config.properties.XssProperties"
},
{
"name": "xss.excludes",
"type": "java.lang.String",
"description": "排除链接(多个用逗号分隔)",
"sourceType": "com.lego.framework.config.properties.XssProperties"
},
{
"name": "xss.url-patterns",
"type": "java.lang.String",
"description": "匹配链接",
"sourceType": "com.lego.framework.config.properties.XssProperties"
}
],
"hints": []
}
\ No newline at end of file
{"doc":" 操作日志记录处理\n\n @author Lion Li\n","fields":[{"name":"EXCLUDE_PROPERTIES","doc":" 排除敏感属性字段\n"}],"enumConstants":[],"methods":[{"name":"doAfterReturning","paramTypes":["org.aspectj.lang.JoinPoint","com.lego.common.annotation.Log","java.lang.Object"],"doc":" 处理完请求后执行\n\n @param joinPoint 切点\n"},{"name":"doAfterThrowing","paramTypes":["org.aspectj.lang.JoinPoint","com.lego.common.annotation.Log","java.lang.Exception"],"doc":" 拦截异常操作\n\n @param joinPoint 切点\n @param e 异常\n"},{"name":"getControllerMethodDescription","paramTypes":["org.aspectj.lang.JoinPoint","com.lego.common.annotation.Log","com.lego.common.core.domain.event.OperLogEvent","java.lang.Object"],"doc":" 获取注解中对方法的描述信息 用于Controller层注解\n\n @param log 日志\n @param operLog 操作日志\n @throws Exception\n"},{"name":"setRequestValue","paramTypes":["org.aspectj.lang.JoinPoint","com.lego.common.core.domain.event.OperLogEvent","java.lang.String[]"],"doc":" 获取请求的参数,放到log中\n\n @param operLog 操作日志\n @throws Exception 异常\n"},{"name":"argsArrayToString","paramTypes":["java.lang.Object[]","java.lang.String[]"],"doc":" 参数拼装\n"},{"name":"isFilterObject","paramTypes":["java.lang.Object"],"doc":" 判断是否需要过滤的对象。\n\n @param o 对象信息。\n @return 如果是需要过滤的对象,则返回true;否则返回false。\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 限流处理\n\n @author Lion Li\n","fields":[{"name":"parser","doc":" 定义spel表达式解析器\n"},{"name":"parserContext","doc":" 定义spel解析模版\n"},{"name":"context","doc":" 定义spel上下文对象进行解析\n"},{"name":"pnd","doc":" 方法参数解析器\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 防止重复提交(参考美团GTIS防重系统)\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"doAfterReturning","paramTypes":["org.aspectj.lang.JoinPoint","com.lego.common.annotation.RepeatSubmit","java.lang.Object"],"doc":" 处理完请求后执行\n\n @param joinPoint 切点\n"},{"name":"doAfterThrowing","paramTypes":["org.aspectj.lang.JoinPoint","com.lego.common.annotation.RepeatSubmit","java.lang.Exception"],"doc":" 拦截异常操作\n\n @param joinPoint 切点\n @param e 异常\n"},{"name":"argsArrayToString","paramTypes":["java.lang.Object[]"],"doc":" 参数拼装\n"},{"name":"isFilterObject","paramTypes":["java.lang.Object"],"doc":" 判断是否需要过滤的对象。\n\n @param o 对象信息。\n @return 如果是需要过滤的对象,则返回true;否则返回false。\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 程序注解配置\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 异步配置\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"getAsyncExecutor","paramTypes":[],"doc":" 自定义 @Async 注解使用系统线程池\n"},{"name":"getAsyncUncaughtExceptionHandler","paramTypes":[],"doc":" 异步执行异常处理\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 验证码配置\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"circleCaptcha","paramTypes":[],"doc":" 圆圈干扰验证码\n"},{"name":"lineCaptcha","paramTypes":[],"doc":" 线段干扰的验证码\n"},{"name":"shearCaptcha","paramTypes":[],"doc":" 扭曲干扰验证码\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 加解密配置\n\n @author 老马\n @version 4.6.0\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" Filter配置\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 获取请求头国际化信息\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 国际化配置\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" jackson 配置\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" JavaMail 配置\n\n @author Michelle.Chung\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" mybatis-plus配置类(下方注释有插件介绍)\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"dataPermissionInterceptor","paramTypes":[],"doc":" 数据权限拦截器\n"},{"name":"paginationInnerInterceptor","paramTypes":[],"doc":" 分页插件,自动识别数据库类型\n"},{"name":"optimisticLockerInnerInterceptor","paramTypes":[],"doc":" 乐观锁插件\n"},{"name":"metaObjectHandler","paramTypes":[],"doc":" 元对象字段填充控制器\n"},{"name":"idGenerator","paramTypes":[],"doc":" 使用网卡信息绑定雪花生成器\n 防止集群雪花ID重复\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" redis配置\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"cacheManager","paramTypes":[],"doc":" 自定义缓存管理器 整合spring-cache\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 通用配置\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"corsFilter","paramTypes":[],"doc":" 跨域配置\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" sa-token 配置\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"addInterceptors","paramTypes":["org.springframework.web.servlet.config.annotation.InterceptorRegistry"],"doc":" 注册sa-token的拦截器\n"},{"name":"stpInterface","paramTypes":[],"doc":" 权限接口实现(使用bean注入方便用户替换)\n"},{"name":"saTokenDao","paramTypes":[],"doc":" 自定义dao层存储\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 单独使用一个类便于判断 解决springdoc路径拼接重复问题\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" Swagger 文档配置\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"openApiBuilder","paramTypes":["java.util.Optional","org.springdoc.core.SecurityService","org.springdoc.core.SpringDocConfigProperties","org.springdoc.core.PropertyResolverUtils","java.util.Optional","java.util.Optional","java.util.Optional"],"doc":" 自定义 openapi 处理器\n"},{"name":"openApiCustomiser","paramTypes":[],"doc":" 对已经生成好的 OpenApi 进行自定义操作\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 线程池配置\n\n @author Lion Li\n","fields":[{"name":"core","doc":" 核心线程数 = cpu 核心数 + 1\n"}],"enumConstants":[],"methods":[{"name":"scheduledExecutorService","paramTypes":[],"doc":" 执行周期性或定时任务\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 翻译模块配置类\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" Undertow 自定义配置\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"customize","paramTypes":["org.springframework.boot.web.embedded.undertow.UndertowServletWebServerFactory"],"doc":" 设置 Undertow 的 websocket 缓冲池\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 校验框架配置类\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"validator","paramTypes":[],"doc":" 配置校验框架 快速返回模式\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" @author GaoYongYi\n @date 2023/8/15 15:43\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 验证码 配置属性\n\n @author Lion Li\n","fields":[{"name":"type","doc":" 验证码类型\n"},{"name":"category","doc":" 验证码类别\n"},{"name":"numberLength","doc":" 数字验证码位数\n"},{"name":"charLength","doc":" 字符验证码长度\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 加解密属性配置类\n\n @author 老马\n @version 4.6.0\n","fields":[{"name":"enable","doc":" 过滤开关\n"},{"name":"algorithm","doc":" 默认算法\n"},{"name":"password","doc":" 安全秘钥\n"},{"name":"publicKey","doc":" 公钥\n"},{"name":"privateKey","doc":" 私钥\n"},{"name":"encode","doc":" 编码方式,base64/hex\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" JavaMail 配置属性\n\n @author Michelle.Chung\n","fields":[{"name":"enabled","doc":" 过滤开关\n"},{"name":"host","doc":" SMTP服务器域名\n"},{"name":"port","doc":" SMTP服务端口\n"},{"name":"auth","doc":" 是否需要用户名密码验证\n"},{"name":"user","doc":" 用户名\n"},{"name":"pass","doc":" 密码\n"},{"name":"from","doc":" 发送方,遵循RFC-822标准\n"},{"name":"starttlsEnable","doc":" 使用 STARTTLS安全连接,STARTTLS是对纯文本通信协议的扩展。它将纯文本连接升级为加密连接(TLS或SSL), 而不是使用一个单独的加密通信端口。\n"},{"name":"sslEnable","doc":" 使用 SSL安全连接\n"},{"name":"timeout","doc":" SMTP超时时长,单位毫秒,缺省值不超时\n"},{"name":"connectionTimeout","doc":" Socket连接超时值,单位毫秒,缺省值不超时\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":"","fields":[{"name":"clientName","doc":" 客户端名称\n"},{"name":"masterConnectionMinimumIdleSize","doc":" master最小空闲连接数\n"},{"name":"masterConnectionPoolSize","doc":" master连接池大小\n"},{"name":"slaveConnectionMinimumIdleSize","doc":" slave最小空闲连接数\n"},{"name":"slaveConnectionPoolSize","doc":" slave连接池大小\n"},{"name":"idleConnectionTimeout","doc":" 连接空闲超时,单位:毫秒\n"},{"name":"timeout","doc":" 命令等待超时,单位:毫秒\n"},{"name":"subscriptionConnectionPoolSize","doc":" 发布和订阅连接池大小\n"},{"name":"readMode","doc":" 读取模式\n"},{"name":"subscriptionMode","doc":" 订阅模式\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":"","fields":[{"name":"clientName","doc":" 客户端名称\n"},{"name":"connectionMinimumIdleSize","doc":" 最小空闲连接数\n"},{"name":"connectionPoolSize","doc":" 连接池大小\n"},{"name":"idleConnectionTimeout","doc":" 连接空闲超时,单位:毫秒\n"},{"name":"timeout","doc":" 命令等待超时,单位:毫秒\n"},{"name":"subscriptionConnectionPoolSize","doc":" 发布和订阅连接池大小\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" Redisson 配置属性\n\n @author Lion Li\n","fields":[{"name":"keyPrefix","doc":" redis缓存key前缀\n"},{"name":"threads","doc":" 线程池数量,默认值 = 当前处理核数量 * 2\n"},{"name":"nettyThreads","doc":" Netty线程池数量,默认值 = 当前处理核数量 * 2\n"},{"name":"singleServerConfig","doc":" 单机服务配置\n"},{"name":"clusterServersConfig","doc":" 集群服务配置\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" Security 配置属性\n\n @author Lion Li\n","fields":[{"name":"excludes","doc":" 排除路径\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" <p>\n 文档的基础属性信息\n </p>\n\n @see io.swagger.v3.oas.models.info.Info\n\n 为了 springboot 自动生产配置提示信息,所以这里复制一个类出来\n","fields":[{"name":"title","doc":" 标题\n"},{"name":"description","doc":" 描述\n"},{"name":"contact","doc":" 联系人信息\n"},{"name":"license","doc":" 许可证\n"},{"name":"version","doc":" 版本\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" swagger 配置属性\n\n @author Lion Li\n","fields":[{"name":"info","doc":" 文档基本信息\n"},{"name":"externalDocs","doc":" 扩展文档地址\n"},{"name":"tags","doc":" 标签\n"},{"name":"paths","doc":" 路径\n"},{"name":"components","doc":" 组件\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 线程池 配置属性\n\n @author Lion Li\n","fields":[{"name":"enabled","doc":" 是否开启线程池\n"},{"name":"queueCapacity","doc":" 队列最大长度\n"},{"name":"keepAliveSeconds","doc":" 线程池维护线程所允许的空闲时间\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" xss过滤 配置属性\n\n @author Lion Li\n","fields":[{"name":"enabled","doc":" 过滤开关\n"},{"name":"excludes","doc":" 排除链接(多个用逗号分隔)\n"},{"name":"urlPatterns","doc":" 匹配链接\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 出参解密拦截器\n\n @author 老马\n @version 4.6.0\n","fields":[],"enumConstants":[],"methods":[{"name":"decryptHandler","paramTypes":["java.lang.Object"],"doc":" 解密对象\n\n @param sourceObject 待加密对象\n"},{"name":"decryptField","paramTypes":["java.lang.String","java.lang.reflect.Field"],"doc":" 字段值进行加密。通过字段的批注注册新的加密算法\n\n @param value 待加密的值\n @param field 待加密字段\n @return 加密后结果\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 入参加密拦截器\n\n @author 老马\n @version 4.6.0\n","fields":[],"enumConstants":[],"methods":[{"name":"encryptHandler","paramTypes":["java.lang.Object"],"doc":" 加密对象\n\n @param sourceObject 待加密对象\n"},{"name":"encryptField","paramTypes":["java.lang.String","java.lang.reflect.Field"],"doc":" 字段值进行加密。通过字段的批注注册新的加密算法\n\n @param value 待加密的值\n @param field 待加密字段\n @return 加密后结果\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 全局异常处理器\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"handleNotPermissionException","paramTypes":["cn.dev33.satoken.exception.NotPermissionException","javax.servlet.http.HttpServletRequest"],"doc":" 权限码异常\n"},{"name":"handleNotRoleException","paramTypes":["cn.dev33.satoken.exception.NotRoleException","javax.servlet.http.HttpServletRequest"],"doc":" 角色权限异常\n"},{"name":"handleNotLoginException","paramTypes":["cn.dev33.satoken.exception.NotLoginException","javax.servlet.http.HttpServletRequest"],"doc":" 认证失败\n"},{"name":"handleHttpRequestMethodNotSupported","paramTypes":["org.springframework.web.HttpRequestMethodNotSupportedException","javax.servlet.http.HttpServletRequest"],"doc":" 请求方式不支持\n"},{"name":"handleDuplicateKeyException","paramTypes":["org.springframework.dao.DuplicateKeyException","javax.servlet.http.HttpServletRequest"],"doc":" 主键或UNIQUE索引,数据重复异常\n"},{"name":"handleCannotFindDataSourceException","paramTypes":["org.mybatis.spring.MyBatisSystemException","javax.servlet.http.HttpServletRequest"],"doc":" Mybatis系统异常 通用处理\n"},{"name":"handleServiceException","paramTypes":["com.lego.common.exception.ServiceException","javax.servlet.http.HttpServletRequest"],"doc":" 业务异常\n"},{"name":"handleBaseException","paramTypes":["com.lego.common.exception.base.BaseException","javax.servlet.http.HttpServletRequest"],"doc":" 业务异常\n"},{"name":"handleMissingPathVariableException","paramTypes":["org.springframework.web.bind.MissingPathVariableException","javax.servlet.http.HttpServletRequest"],"doc":" 请求路径中缺少必需的路径变量\n"},{"name":"handleMethodArgumentTypeMismatchException","paramTypes":["org.springframework.web.method.annotation.MethodArgumentTypeMismatchException","javax.servlet.http.HttpServletRequest"],"doc":" 请求参数类型不匹配\n"},{"name":"handleRuntimeException","paramTypes":["java.lang.RuntimeException","javax.servlet.http.HttpServletRequest"],"doc":" 拦截未知的运行时异常\n"},{"name":"handleException","paramTypes":["java.lang.Exception","javax.servlet.http.HttpServletRequest"],"doc":" 系统异常\n"},{"name":"handleBindException","paramTypes":["org.springframework.validation.BindException"],"doc":" 自定义验证异常\n"},{"name":"constraintViolationException","paramTypes":["javax.validation.ConstraintViolationException"],"doc":" 自定义验证异常\n"},{"name":"handleMethodArgumentNotValidException","paramTypes":["org.springframework.web.bind.MethodArgumentNotValidException"],"doc":" 自定义验证异常\n"},{"name":"handleDemoModeException","paramTypes":["com.lego.common.exception.DemoModeException"],"doc":" 演示模式异常\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 获取所有Url配置\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" MP注入处理器\n\n @author Lion Li\n @date 2021/4/25\n","fields":[],"enumConstants":[],"methods":[{"name":"getLoginUsername","paramTypes":[],"doc":" 获取登录用户名\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" redis缓存key前缀处理\n\n @author ye\n @date 2022/7/14 17:44\n @since 4.3.0\n","fields":[],"enumConstants":[],"methods":[{"name":"map","paramTypes":["java.lang.String"],"doc":" 增加前缀\n"},{"name":"unmap","paramTypes":["java.lang.String"],"doc":" 去除前缀\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 自定义 openapi 处理器\n 对源码功能进行修改 增强使用\n","fields":[{"name":"LOGGER","doc":" The constant LOGGER.\n"},{"name":"context","doc":" The Context.\n"},{"name":"securityParser","doc":" The Security parser.\n"},{"name":"mappingsMap","doc":" The Mappings map.\n"},{"name":"springdocTags","doc":" The Springdoc tags.\n"},{"name":"openApiBuilderCustomisers","doc":" The Open api builder customisers.\n"},{"name":"serverBaseUrlCustomizers","doc":" The server base URL customisers.\n"},{"name":"springDocConfigProperties","doc":" The Spring doc config properties.\n"},{"name":"openAPI","doc":" The Open api.\n"},{"name":"cachedOpenAPI","doc":" The Cached open api map.\n"},{"name":"isServersPresent","doc":" The Is servers present.\n"},{"name":"serverBaseUrl","doc":" The Server base url.\n"},{"name":"propertyResolverUtils","doc":" The Property resolver utils.\n"},{"name":"javadocProvider","doc":" The javadoc provider.\n"},{"name":"basicErrorController","doc":" The Basic error controller.\n"}],"enumConstants":[],"methods":[],"constructors":[{"name":"<init>","paramTypes":["java.util.Optional","org.springdoc.core.SecurityService","org.springdoc.core.SpringDocConfigProperties","org.springdoc.core.PropertyResolverUtils","java.util.Optional","java.util.Optional","java.util.Optional"],"doc":" Instantiates a new Open api builder.\n\n @param openAPI the open api\n @param securityParser the security parser\n @param springDocConfigProperties the spring doc config properties\n @param propertyResolverUtils the property resolver utils\n @param openApiBuilderCustomizers the open api builder customisers\n @param serverBaseUrlCustomizers the server base url customizers\n @param javadocProvider the javadoc provider\n"}]}
\ No newline at end of file
{"doc":" 数据权限过滤\n\n @author Lion Li\n @version 3.5.0\n","fields":[{"name":"dataPermissionCacheMap","doc":" 方法或类(名称) 与 注解的映射关系缓存\n"},{"name":"parser","doc":" spel 解析器\n"},{"name":"beanResolver","doc":" bean解析器 用于处理 spel 表达式中对 bean 的调用\n"}],"enumConstants":[],"methods":[{"name":"buildDataFilter","paramTypes":["com.lego.common.annotation.DataColumn[]"],"doc":" 构造数据过滤sql\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 数据权限拦截器\n\n @author Lion Li\n @version 3.5.0\n","fields":[{"name":"invalidCacheSet","doc":" 无效注解方法缓存用于快速返回\n"}],"enumConstants":[],"methods":[{"name":"setWhere","paramTypes":["net.sf.jsqlparser.statement.select.PlainSelect","java.lang.String"],"doc":" 设置 where 条件\n\n @param plainSelect 查询对象\n @param mappedStatementId 执行方法id\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" web的调用时间统计拦截器\n dev环境有效\n\n @author Lion Li\n @since 3.3.0\n","fields":[],"enumConstants":[],"methods":[{"name":"isJsonRequest","paramTypes":["javax.servlet.http.HttpServletRequest"],"doc":" 判断本次请求的数据类型是否为json\n\n @param request request\n @return boolean\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 超出 JS 最大最小值 处理\n\n @author Lion Li\n","fields":[{"name":"MAX_SAFE_INTEGER","doc":" 根据 JS Number.MAX_SAFE_INTEGER 与 Number.MIN_SAFE_INTEGER 得来\n"},{"name":"INSTANCE","doc":" 提供实例\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户行为 侦听器的实现\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"doLogin","paramTypes":["java.lang.String","java.lang.Object","java.lang.String","cn.dev33.satoken.stp.SaLoginModel"],"doc":" 每次登录时触发\n"},{"name":"doLogout","paramTypes":["java.lang.String","java.lang.Object","java.lang.String"],"doc":" 每次注销时触发\n"},{"name":"doKickout","paramTypes":["java.lang.String","java.lang.Object","java.lang.String"],"doc":" 每次被踢下线时触发\n"},{"name":"doReplaced","paramTypes":["java.lang.String","java.lang.Object","java.lang.String"],"doc":" 每次被顶下线时触发\n"},{"name":"doDisable","paramTypes":["java.lang.String","java.lang.Object","java.lang.String","int","long"],"doc":" 每次被封禁时触发\n"},{"name":"doUntieDisable","paramTypes":["java.lang.String","java.lang.Object","java.lang.String"],"doc":" 每次被解封时触发\n"},{"name":"doOpenSafe","paramTypes":["java.lang.String","java.lang.String","java.lang.String","long"],"doc":" 每次打开二级认证时触发\n"},{"name":"doCloseSafe","paramTypes":["java.lang.String","java.lang.String","java.lang.String"],"doc":" 每次创建Session时触发\n"},{"name":"doCreateSession","paramTypes":["java.lang.String"],"doc":" 每次创建Session时触发\n"},{"name":"doLogoutSession","paramTypes":["java.lang.String"],"doc":" 每次注销Session时触发\n"},{"name":"doRenewTimeout","paramTypes":["java.lang.String","java.lang.Object","long"],"doc":" 每次Token续期时触发\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 加密管理类\n\n @author 老马\n @version 4.6.0\n","fields":[{"name":"encryptorMap","doc":" 缓存加密器\n"},{"name":"fieldCache","doc":" 类加密字段缓存\n"}],"enumConstants":[],"methods":[{"name":"getFieldCache","paramTypes":["java.lang.Class"],"doc":" 获取类加密字段缓存\n"},{"name":"registAndGetEncryptor","paramTypes":["com.lego.common.encrypt.EncryptContext"],"doc":" 注册加密执行者到缓存\n\n @param encryptContext 加密执行者需要的相关配置参数\n"},{"name":"removeEncryptor","paramTypes":["com.lego.common.encrypt.EncryptContext"],"doc":" 移除缓存中的加密执行者\n\n @param encryptContext 加密执行者需要的相关配置参数\n"},{"name":"encrypt","paramTypes":["java.lang.String","com.lego.common.encrypt.EncryptContext"],"doc":" 根据配置进行加密。会进行本地缓存对应的算法和对应的秘钥信息。\n\n @param value 待加密的值\n @param encryptContext 加密相关的配置信息\n"},{"name":"decrypt","paramTypes":["java.lang.String","com.lego.common.encrypt.EncryptContext"],"doc":" 根据配置进行解密\n\n @param value 待解密的值\n @param encryptContext 加密相关的配置信息\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" A {@link org.springframework.cache.CacheManager} implementation\n backed by Redisson instance.\n <p>\n 修改 RedissonSpringCacheManager 源码\n 重写 cacheName 处理方法 支持多参数\n\n @author Nikita Koksharov\n\n","fields":[],"enumConstants":[],"methods":[{"name":"setAllowNullValues","paramTypes":["boolean"],"doc":" Defines possibility of storing {@code null} values.\n <p>\n Default is <code>true</code>\n\n @param allowNullValues stores if <code>true</code>\n"},{"name":"setTransactionAware","paramTypes":["boolean"],"doc":" Defines if cache aware of Spring-managed transactions.\n If {@code true} put/evict operations are executed only for successful transaction in after-commit phase.\n <p>\n Default is <code>false</code>\n\n @param transactionAware cache is transaction aware if <code>true</code>\n"},{"name":"setCacheNames","paramTypes":["java.util.Collection"],"doc":" Defines 'fixed' cache names.\n A new cache instance will not be created in dynamic for non-defined names.\n <p>\n `null` parameter setups dynamic mode\n\n @param names of caches\n"},{"name":"setConfig","paramTypes":["java.util.Map"],"doc":" Set cache config mapped by cache name\n\n @param config object\n"}],"constructors":[{"name":"<init>","paramTypes":[],"doc":" Creates CacheManager supplied by Redisson instance\n"}]}
\ No newline at end of file
{"doc":" 确保应用退出时能关闭后台线程\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"shutdownAsyncManager","paramTypes":[],"doc":" 停止异步执行任务\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" Sa-Token持久层接口(使用框架自带RedisUtils实现 协议统一)\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"get","paramTypes":["java.lang.String"],"doc":" 获取Value,如无返空\n"},{"name":"set","paramTypes":["java.lang.String","java.lang.String","long"],"doc":" 写入Value,并设定存活时间 (单位: 秒)\n"},{"name":"update","paramTypes":["java.lang.String","java.lang.String"],"doc":" 修修改指定key-value键值对 (过期时间不变)\n"},{"name":"delete","paramTypes":["java.lang.String"],"doc":" 删除Value\n"},{"name":"getTimeout","paramTypes":["java.lang.String"],"doc":" 获取Value的剩余存活时间 (单位: 秒)\n"},{"name":"updateTimeout","paramTypes":["java.lang.String","long"],"doc":" 修改Value的剩余存活时间 (单位: 秒)\n"},{"name":"getObject","paramTypes":["java.lang.String"],"doc":" 获取Object,如无返空\n"},{"name":"setObject","paramTypes":["java.lang.String","java.lang.Object","long"],"doc":" 写入Object,并设定存活时间 (单位: 秒)\n"},{"name":"updateObject","paramTypes":["java.lang.String","java.lang.Object"],"doc":" 更新Object (过期时间不变)\n"},{"name":"deleteObject","paramTypes":["java.lang.String"],"doc":" 删除Object\n"},{"name":"getObjectTimeout","paramTypes":["java.lang.String"],"doc":" 获取Object的剩余存活时间 (单位: 秒)\n"},{"name":"updateObjectTimeout","paramTypes":["java.lang.String","long"],"doc":" 修改Object的剩余存活时间 (单位: 秒)\n"},{"name":"searchData","paramTypes":["java.lang.String","java.lang.String","int","int","boolean"],"doc":" 搜索数据\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" sa-token 权限管理实现类\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"getPermissionList","paramTypes":["java.lang.Object","java.lang.String"],"doc":" 获取菜单权限列表\n"},{"name":"getRoleList","paramTypes":["java.lang.Object","java.lang.String"],"doc":" 获取角色权限列表\n"}],"constructors":[]}
\ No newline at end of file
com\lego\framework\config\properties\RedissonProperties$SingleServerConfig.class
com\lego\framework\config\UndertowConfig.class
com\lego\framework\config\properties\XssProperties__Javadoc.json
com\lego\framework\handler\OpenApiHandler.class
com\lego\framework\config\TranslationConfig__Javadoc.json
com\lego\framework\handler\KeyPrefixHandler.class
META-INF\spring-configuration-metadata.json
com\lego\framework\config\FilterConfig.class
com\lego\framework\config\properties\SpringDocProperties__Javadoc.json
com\lego\framework\handler\KeyPrefixHandler__Javadoc.json
com\lego\framework\config\properties\RedissonProperties.class
com\lego\framework\satoken\dao\PlusSaTokenDao__Javadoc.json
com\lego\framework\config\properties\SpringDocProperties$InfoProperties.class
com\lego\framework\config\properties\RedissonProperties$ClusterServersConfig.class
com\lego\framework\interceptor\PlusWebInvokeTimeInterceptor.class
com\lego\framework\config\JacksonConfig__Javadoc.json
com\lego\framework\config\WebSocketConfig__Javadoc.json
com\lego\framework\config\properties\SecurityProperties__Javadoc.json
com\lego\framework\config\ThreadPoolConfig.class
com\lego\framework\config\I18nConfig__Javadoc.json
com\lego\framework\config\CaptchaConfig__Javadoc.json
com\lego\framework\manager\ShutdownManager__Javadoc.json
com\lego\framework\handler\CreateAndUpdateMetaObjectHandler.class
com\lego\framework\config\UndertowConfig__Javadoc.json
com\lego\framework\config\RedisConfig.class
com\lego\framework\handler\PlusDataPermissionHandler.class
com\lego\framework\config\ApplicationConfig.class
com\lego\framework\config\SpringDocConfig$PlusPaths.class
com\lego\framework\manager\EncryptorManager__Javadoc.json
com\lego\framework\config\ResourcesConfig__Javadoc.json
com\lego\framework\config\MailConfig__Javadoc.json
com\lego\framework\config\ValidatorConfig__Javadoc.json
com\lego\framework\config\AsyncConfig__Javadoc.json
com\lego\framework\config\EncryptorConfig.class
com\lego\framework\config\SpringDocConfig__Javadoc.json
com\lego\framework\handler\AllUrlHandler.class
com\lego\framework\config\EncryptorConfig__Javadoc.json
com\lego\framework\encrypt\MybatisDecryptInterceptor__Javadoc.json
com\lego\framework\config\properties\CaptchaProperties__Javadoc.json
com\lego\framework\config\I18nConfig.class
com\lego\framework\config\I18nConfig$I18nLocaleResolver.class
com\lego\framework\handler\AllUrlHandler__Javadoc.json
com\lego\framework\config\properties\EncryptorProperties__Javadoc.json
com\lego\framework\config\FilterConfig__Javadoc.json
com\lego\framework\config\MybatisPlusConfig__Javadoc.json
com\lego\framework\config\properties\MailProperties.class
com\lego\framework\config\properties\CaptchaProperties.class
com\lego\framework\config\ThreadPoolConfig__Javadoc.json
com\lego\framework\config\properties\MailProperties__Javadoc.json
com\lego\framework\config\JacksonConfig.class
com\lego\framework\config\MailConfig.class
com\lego\framework\config\SpringDocConfig$PlusPaths__Javadoc.json
com\lego\framework\config\ApplicationConfig__Javadoc.json
com\lego\framework\config\AsyncConfig.class
com\lego\framework\jackson\BigNumberSerializer__Javadoc.json
com\lego\framework\config\CaptchaConfig.class
com\lego\framework\aspectj\RateLimiterAspect.class
com\lego\framework\interceptor\PlusDataPermissionInterceptor.class
com\lego\framework\config\properties\SpringDocProperties.class
com\lego\framework\interceptor\PlusDataPermissionInterceptor__Javadoc.json
com\lego\framework\config\ThreadPoolConfig$1.class
com\lego\framework\config\WebSocketConfig.class
com\lego\framework\config\properties\ThreadPoolProperties__Javadoc.json
com\lego\framework\aspectj\RepeatSubmitAspect.class
com\lego\framework\config\properties\EncryptorProperties.class
com\lego\framework\config\properties\RedissonProperties$SingleServerConfig__Javadoc.json
com\lego\framework\config\properties\SecurityProperties.class
com\lego\framework\exception\GlobalExceptionHandler__Javadoc.json
com\lego\framework\interceptor\PlusWebInvokeTimeInterceptor__Javadoc.json
com\lego\framework\config\properties\XssProperties.class
com\lego\framework\jackson\BigNumberSerializer.class
com\lego\framework\satoken\dao\PlusSaTokenDao.class
com\lego\framework\config\properties\SpringDocProperties$InfoProperties__Javadoc.json
com\lego\framework\config\ValidatorConfig.class
com\lego\framework\satoken\service\SaPermissionImpl__Javadoc.json
com\lego\framework\aspectj\LogAspect.class
com\lego\framework\config\I18nConfig$I18nLocaleResolver__Javadoc.json
com\lego\framework\config\TranslationConfig.class
com\lego\framework\aspectj\RepeatSubmitAspect__Javadoc.json
com\lego\framework\config\properties\RedissonProperties$ClusterServersConfig__Javadoc.json
com\lego\framework\exception\GlobalExceptionHandler.class
com\lego\framework\handler\CreateAndUpdateMetaObjectHandler__Javadoc.json
com\lego\framework\config\SpringDocConfig.class
com\lego\framework\listener\UserActionListener.class
com\lego\framework\manager\EncryptorManager.class
com\lego\framework\aspectj\RateLimiterAspect__Javadoc.json
com\lego\framework\manager\PlusSpringCacheManager.class
com\lego\framework\encrypt\MybatisEncryptInterceptor.class
com\lego\framework\aspectj\LogAspect__Javadoc.json
com\lego\framework\config\properties\ThreadPoolProperties.class
com\lego\framework\config\properties\RedissonProperties__Javadoc.json
com\lego\framework\config\RedisConfig__Javadoc.json
com\lego\framework\manager\PlusSpringCacheManager__Javadoc.json
com\lego\framework\encrypt\MybatisEncryptInterceptor__Javadoc.json
com\lego\framework\config\SaTokenConfig__Javadoc.json
com\lego\framework\encrypt\MybatisDecryptInterceptor.class
com\lego\framework\config\SaTokenConfig.class
com\lego\framework\manager\ShutdownManager.class
com\lego\framework\config\ResourcesConfig.class
com\lego\framework\handler\OpenApiHandler__Javadoc.json
com\lego\framework\handler\PlusDataPermissionHandler__Javadoc.json
com\lego\framework\listener\UserActionListener__Javadoc.json
com\lego\framework\satoken\service\SaPermissionImpl.class
com\lego\framework\config\MybatisPlusConfig.class
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\properties\SecurityProperties.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\handler\OpenApiHandler.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\handler\PlusDataPermissionHandler.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\properties\ThreadPoolProperties.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\encrypt\MybatisEncryptInterceptor.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\SaTokenConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\UndertowConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\encrypt\MybatisDecryptInterceptor.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\exception\GlobalExceptionHandler.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\ResourcesConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\properties\SpringDocProperties.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\interceptor\PlusWebInvokeTimeInterceptor.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\JacksonConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\jackson\BigNumberSerializer.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\ValidatorConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\FilterConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\properties\MailProperties.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\properties\EncryptorProperties.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\ApplicationConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\handler\KeyPrefixHandler.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\aspectj\LogAspect.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\CaptchaConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\aspectj\RateLimiterAspect.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\aspectj\RepeatSubmitAspect.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\satoken\dao\PlusSaTokenDao.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\properties\RedissonProperties.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\SpringDocConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\manager\EncryptorManager.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\MybatisPlusConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\handler\CreateAndUpdateMetaObjectHandler.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\manager\ShutdownManager.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\satoken\service\SaPermissionImpl.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\RedisConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\WebSocketConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\TranslationConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\EncryptorConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\AsyncConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\manager\PlusSpringCacheManager.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\properties\CaptchaProperties.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\ThreadPoolConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\handler\AllUrlHandler.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\interceptor\PlusDataPermissionInterceptor.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\listener\UserActionListener.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\I18nConfig.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\properties\XssProperties.java
F:\workspace\lego-manage\lego-framework\src\main\java\com\lego\framework\config\MailConfig.java
{
"groups": [
{
"name": "gen",
"type": "com.lego.generator.config.GenConfig",
"sourceType": "com.lego.generator.config.GenConfig"
}
],
"properties": [],
"hints": []
}
\ No newline at end of file
{"doc":" 读取代码生成相关配置\n\n @author gyongyi\n","fields":[{"name":"author","doc":" 作者\n"},{"name":"packageName","doc":" 生成包路径\n"},{"name":"autoRemovePre","doc":" 自动去除表前缀,默认是false\n"},{"name":"tablePrefix","doc":" 表前缀(类名不会包含表前缀)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 代码生成 操作处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"genList","paramTypes":["com.lego.generator.domain.GenTable","com.lego.common.core.domain.PageQuery"],"doc":" 查询代码生成列表\n"},{"name":"getInfo","paramTypes":["java.lang.Long"],"doc":" 修改代码生成业务\n\n @param tableId 表ID\n"},{"name":"dataList","paramTypes":["com.lego.generator.domain.GenTable","com.lego.common.core.domain.PageQuery"],"doc":" 查询数据库列表\n"},{"name":"columnList","paramTypes":["java.lang.Long"],"doc":" 查询数据表字段列表\n\n @param tableId 表ID\n"},{"name":"importTableSave","paramTypes":["java.lang.String"],"doc":" 导入表结构(保存)\n\n @param tables 表名串\n"},{"name":"editSave","paramTypes":["com.lego.generator.domain.GenTable"],"doc":" 修改保存代码生成业务\n"},{"name":"remove","paramTypes":["java.lang.Long[]"],"doc":" 删除代码生成\n\n @param tableIds 表ID串\n"},{"name":"preview","paramTypes":["java.lang.Long"],"doc":" 预览代码\n\n @param tableId 表ID\n"},{"name":"download","paramTypes":["javax.servlet.http.HttpServletResponse","java.lang.String"],"doc":" 生成代码(下载方式)\n\n @param tableName 表名\n"},{"name":"genCode","paramTypes":["java.lang.String"],"doc":" 生成代码(自定义路径)\n\n @param tableName 表名\n"},{"name":"synchDb","paramTypes":["java.lang.String"],"doc":" 同步数据库\n\n @param tableName 表名\n"},{"name":"batchGenCode","paramTypes":["javax.servlet.http.HttpServletResponse","java.lang.String"],"doc":" 批量生成代码\n\n @param tables 表名串\n"},{"name":"genCode","paramTypes":["javax.servlet.http.HttpServletResponse","byte[]"],"doc":" 生成zip文件\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 代码生成业务字段表 gen_table_column\n\n @author Lion Li\n","fields":[{"name":"columnId","doc":" 编号\n"},{"name":"tableId","doc":" 归属表编号\n"},{"name":"columnName","doc":" 列名称\n"},{"name":"columnComment","doc":" 列描述\n"},{"name":"columnType","doc":" 列类型\n"},{"name":"javaType","doc":" JAVA类型\n"},{"name":"javaField","doc":" JAVA字段名\n"},{"name":"isPk","doc":" 是否主键(1是)\n"},{"name":"isIncrement","doc":" 是否自增(1是)\n"},{"name":"isRequired","doc":" 是否必填(1是)\n"},{"name":"isInsert","doc":" 是否为插入字段(1是)\n"},{"name":"isEdit","doc":" 是否编辑字段(1是)\n"},{"name":"isList","doc":" 是否列表字段(1是)\n"},{"name":"isQuery","doc":" 是否查询字段(1是)\n"},{"name":"queryType","doc":" 查询方式(EQ等于、NE不等于、GT大于、LT小于、LIKE模糊、BETWEEN范围)\n"},{"name":"htmlType","doc":" 显示类型(input文本框、textarea文本域、select下拉框、checkbox复选框、radio单选框、datetime日期控件、image图片上传控件、upload文件上传控件、editor富文本控件)\n"},{"name":"dictType","doc":" 字典类型\n"},{"name":"sort","doc":" 排序\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 业务表 gen_table\n\n @author Lion Li\n","fields":[{"name":"tableId","doc":" 编号\n"},{"name":"tableName","doc":" 表名称\n"},{"name":"tableComment","doc":" 表描述\n"},{"name":"subTableName","doc":" 关联父表的表名\n"},{"name":"subTableFkName","doc":" 本表关联父表的外键名\n"},{"name":"className","doc":" 实体类名称(首字母大写)\n"},{"name":"tplCategory","doc":" 使用的模板(crud单表操作 tree树表操作 sub主子表操作)\n"},{"name":"packageName","doc":" 生成包路径\n"},{"name":"moduleName","doc":" 生成模块名\n"},{"name":"businessName","doc":" 生成业务名\n"},{"name":"functionName","doc":" 生成功能名\n"},{"name":"functionAuthor","doc":" 生成作者\n"},{"name":"genType","doc":" 生成代码方式(0zip压缩包 1自定义路径)\n"},{"name":"genPath","doc":" 生成路径(不填默认项目路径)\n"},{"name":"pkColumn","doc":" 主键信息\n"},{"name":"subTable","doc":" 子表信息\n"},{"name":"columns","doc":" 表列信息\n"},{"name":"options","doc":" 其它生成选项\n"},{"name":"remark","doc":" 备注\n"},{"name":"treeCode","doc":" 树编码字段\n"},{"name":"treeParentCode","doc":" 树父编码字段\n"},{"name":"treeName","doc":" 树名称字段\n"},{"name":"parentMenuId","doc":" 上级菜单ID字段\n"},{"name":"parentMenuName","doc":" 上级菜单名称字段\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 业务字段 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectDbTableColumnsByName","paramTypes":["java.lang.String"],"doc":" 根据表名称查询列信息\n\n @param tableName 表名称\n @return 列信息\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 业务 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectPageDbTableList","paramTypes":["com.baomidou.mybatisplus.extension.plugins.pagination.Page","com.lego.generator.domain.GenTable"],"doc":" 查询据库列表\n\n @param genTable 查询条件\n @return 数据库表集合\n"},{"name":"selectDbTableListByNames","paramTypes":["java.lang.String[]"],"doc":" 查询据库列表\n\n @param tableNames 表名称组\n @return 数据库表集合\n"},{"name":"selectGenTableAll","paramTypes":[],"doc":" 查询所有表信息\n\n @return 表信息集合\n"},{"name":"selectGenTableById","paramTypes":["java.lang.Long"],"doc":" 查询表ID业务信息\n\n @param id 业务ID\n @return 业务信息\n"},{"name":"selectGenTableByName","paramTypes":["java.lang.String"],"doc":" 查询表名称业务信息\n\n @param tableName 表名称\n @return 业务信息\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 业务 服务层实现\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectGenTableColumnListByTableId","paramTypes":["java.lang.Long"],"doc":" 查询业务字段列表\n\n @param tableId 业务字段编号\n @return 业务字段集合\n"},{"name":"selectGenTableById","paramTypes":["java.lang.Long"],"doc":" 查询业务信息\n\n @param id 业务ID\n @return 业务信息\n"},{"name":"selectDbTableListByNames","paramTypes":["java.lang.String[]"],"doc":" 查询据库列表\n\n @param tableNames 表名称组\n @return 数据库表集合\n"},{"name":"selectGenTableAll","paramTypes":[],"doc":" 查询所有表信息\n\n @return 表信息集合\n"},{"name":"updateGenTable","paramTypes":["com.lego.generator.domain.GenTable"],"doc":" 修改业务\n\n @param genTable 业务信息\n @return 结果\n"},{"name":"deleteGenTableByIds","paramTypes":["java.lang.Long[]"],"doc":" 删除业务对象\n\n @param tableIds 需要删除的数据ID\n @return 结果\n"},{"name":"importGenTable","paramTypes":["java.util.List"],"doc":" 导入表结构\n\n @param tableList 导入表列表\n"},{"name":"previewCode","paramTypes":["java.lang.Long"],"doc":" 预览代码\n\n @param tableId 表编号\n @return 预览数据列表\n"},{"name":"downloadCode","paramTypes":["java.lang.String"],"doc":" 生成代码(下载方式)\n\n @param tableName 表名称\n @return 数据\n"},{"name":"generatorCode","paramTypes":["java.lang.String"],"doc":" 生成代码(自定义路径)\n\n @param tableName 表名称\n"},{"name":"synchDb","paramTypes":["java.lang.String"],"doc":" 同步数据库\n\n @param tableName 表名称\n"},{"name":"downloadCode","paramTypes":["java.lang.String[]"],"doc":" 批量生成代码(下载方式)\n\n @param tableNames 表数组\n @return 数据\n"},{"name":"generatorCode","paramTypes":["java.lang.String","java.util.zip.ZipOutputStream"],"doc":" 查询表信息并生成代码\n"},{"name":"validateEdit","paramTypes":["com.lego.generator.domain.GenTable"],"doc":" 修改保存参数校验\n\n @param genTable 业务信息\n"},{"name":"setPkColumn","paramTypes":["com.lego.generator.domain.GenTable"],"doc":" 设置主键列信息\n\n @param table 业务表信息\n"},{"name":"setSubTable","paramTypes":["com.lego.generator.domain.GenTable"],"doc":" 设置主子表信息\n\n @param table 业务表信息\n"},{"name":"setTableFromOptions","paramTypes":["com.lego.generator.domain.GenTable"],"doc":" 设置代码生成其他选项值\n\n @param genTable 设置后的生成对象\n"},{"name":"getGenPath","paramTypes":["com.lego.generator.domain.GenTable","java.lang.String"],"doc":" 获取代码生成地址\n\n @param table 业务表信息\n @param template 模板文件路径\n @return 生成地址\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 业务 服务层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectGenTableColumnListByTableId","paramTypes":["java.lang.Long"],"doc":" 查询业务字段列表\n\n @param tableId 业务字段编号\n @return 业务字段集合\n"},{"name":"selectPageGenTableList","paramTypes":["com.lego.generator.domain.GenTable","com.lego.common.core.domain.PageQuery"],"doc":" 查询业务列表\n\n @param genTable 业务信息\n @return 业务集合\n"},{"name":"selectPageDbTableList","paramTypes":["com.lego.generator.domain.GenTable","com.lego.common.core.domain.PageQuery"],"doc":" 查询据库列表\n\n @param genTable 业务信息\n @return 数据库表集合\n"},{"name":"selectDbTableListByNames","paramTypes":["java.lang.String[]"],"doc":" 查询据库列表\n\n @param tableNames 表名称组\n @return 数据库表集合\n"},{"name":"selectGenTableAll","paramTypes":[],"doc":" 查询所有表信息\n\n @return 表信息集合\n"},{"name":"selectGenTableById","paramTypes":["java.lang.Long"],"doc":" 查询业务信息\n\n @param id 业务ID\n @return 业务信息\n"},{"name":"updateGenTable","paramTypes":["com.lego.generator.domain.GenTable"],"doc":" 修改业务\n\n @param genTable 业务信息\n @return 结果\n"},{"name":"deleteGenTableByIds","paramTypes":["java.lang.Long[]"],"doc":" 删除业务信息\n\n @param tableIds 需要删除的表数据ID\n @return 结果\n"},{"name":"importGenTable","paramTypes":["java.util.List"],"doc":" 导入表结构\n\n @param tableList 导入表列表\n"},{"name":"previewCode","paramTypes":["java.lang.Long"],"doc":" 预览代码\n\n @param tableId 表编号\n @return 预览数据列表\n"},{"name":"downloadCode","paramTypes":["java.lang.String"],"doc":" 生成代码(下载方式)\n\n @param tableName 表名称\n @return 数据\n"},{"name":"generatorCode","paramTypes":["java.lang.String"],"doc":" 生成代码(自定义路径)\n\n @param tableName 表名称\n @return 数据\n"},{"name":"synchDb","paramTypes":["java.lang.String"],"doc":" 同步数据库\n\n @param tableName 表名称\n"},{"name":"downloadCode","paramTypes":["java.lang.String[]"],"doc":" 批量生成代码(下载方式)\n\n @param tableNames 表数组\n @return 数据\n"},{"name":"validateEdit","paramTypes":["com.lego.generator.domain.GenTable"],"doc":" 修改保存参数校验\n\n @param genTable 业务信息\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 代码生成器 工具类\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[{"name":"initTable","paramTypes":["com.lego.generator.domain.GenTable","java.lang.String"],"doc":" 初始化表信息\n"},{"name":"initColumnField","paramTypes":["com.lego.generator.domain.GenTableColumn","com.lego.generator.domain.GenTable"],"doc":" 初始化列属性字段\n"},{"name":"arraysContains","paramTypes":["java.lang.String[]","java.lang.String"],"doc":" 校验数组是否包含指定值\n\n @param arr 数组\n @param targetValue 值\n @return 是否包含\n"},{"name":"getModuleName","paramTypes":["java.lang.String"],"doc":" 获取模块名\n\n @param packageName 包名\n @return 模块名\n"},{"name":"getBusinessName","paramTypes":["java.lang.String"],"doc":" 获取业务名\n\n @param tableName 表名\n @return 业务名\n"},{"name":"convertClassName","paramTypes":["java.lang.String"],"doc":" 表名转换成Java类名\n\n @param tableName 表名称\n @return 类名\n"},{"name":"replaceFirst","paramTypes":["java.lang.String","java.lang.String[]"],"doc":" 批量替换前缀\n\n @param replacementm 替换值\n @param searchList 替换列表\n @return\n"},{"name":"replaceText","paramTypes":["java.lang.String"],"doc":" 关键字替换\n\n @param text 需要被替换的名字\n @return 替换后的名字\n"},{"name":"getDbType","paramTypes":["java.lang.String"],"doc":" 获取数据库类型字段\n\n @param columnType 列类型\n @return 截取后的列类型\n"},{"name":"getColumnLength","paramTypes":["java.lang.String"],"doc":" 获取字段长度\n\n @param columnType 列类型\n @return 截取后的列类型\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" VelocityEngine工厂\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[{"name":"initVelocity","paramTypes":[],"doc":" 初始化vm方法\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 模板处理工具类\n\n @author gyongyi\n","fields":[{"name":"PROJECT_PATH","doc":" 项目空间路径\n"},{"name":"MYBATIS_PATH","doc":" mybatis空间路径\n"},{"name":"DEFAULT_PARENT_MENU_ID","doc":" 默认上级菜单,系统工具\n"}],"enumConstants":[],"methods":[{"name":"prepareContext","paramTypes":["com.lego.generator.domain.GenTable"],"doc":" 设置模板变量信息\n\n @return 模板列表\n"},{"name":"getTemplateList","paramTypes":["java.lang.String"],"doc":" 获取模板信息\n\n @return 模板列表\n"},{"name":"getFileName","paramTypes":["java.lang.String","com.lego.generator.domain.GenTable"],"doc":" 获取文件名\n"},{"name":"getPackagePrefix","paramTypes":["java.lang.String"],"doc":" 获取包前缀\n\n @param packageName 包名称\n @return 包前缀名称\n"},{"name":"getImportList","paramTypes":["com.lego.generator.domain.GenTable"],"doc":" 根据列类型获取导入包\n\n @param genTable 业务表对象\n @return 返回需要导入的包列表\n"},{"name":"getDicts","paramTypes":["com.lego.generator.domain.GenTable"],"doc":" 根据列类型获取字典组\n\n @param genTable 业务表对象\n @return 返回字典组\n"},{"name":"addDicts","paramTypes":["java.util.Set","java.util.List"],"doc":" 添加字典列表\n\n @param dicts 字典列表\n @param columns 列集合\n"},{"name":"getPermissionPrefix","paramTypes":["java.lang.String","java.lang.String"],"doc":" 获取权限前缀\n\n @param moduleName 模块名称\n @param businessName 业务名称\n @return 返回权限前缀\n"},{"name":"getParentMenuId","paramTypes":["cn.hutool.core.lang.Dict"],"doc":" 获取上级菜单ID字段\n\n @param paramsObj 生成其他选项\n @return 上级菜单ID字段\n"},{"name":"getTreecode","paramTypes":["java.util.Map"],"doc":" 获取树编码\n\n @param paramsObj 生成其他选项\n @return 树编码\n"},{"name":"getTreeParentCode","paramTypes":["cn.hutool.core.lang.Dict"],"doc":" 获取树父编码\n\n @param paramsObj 生成其他选项\n @return 树父编码\n"},{"name":"getTreeName","paramTypes":["cn.hutool.core.lang.Dict"],"doc":" 获取树名称\n\n @param paramsObj 生成其他选项\n @return 树名称\n"},{"name":"getExpandColumn","paramTypes":["com.lego.generator.domain.GenTable"],"doc":" 获取需要在哪一列上面显示展开按钮\n\n @param genTable 业务表对象\n @return 展开按钮列序号\n"}],"constructors":[]}
\ No newline at end of file
# 代码生成
gen:
# 作者
author: ruoyi
# 默认生成包路径 system 需改成自己的模块名称 如 system monitor tool
packageName: com.ruoyi.system
# 自动去除表前缀,默认是false
autoRemovePre: true
# 表前缀(生成类名不会包含表前缀,多个用逗号分隔)
tablePrefix: basic_,core_
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.generator.mapper.GenTableColumnMapper">
<resultMap type="GenTableColumn" id="GenTableColumnResult">
<id property="columnId" column="column_id" />
<result property="tableId" column="table_id" />
<result property="columnName" column="column_name" />
<result property="columnComment" column="column_comment" />
<result property="columnType" column="column_type" />
<result property="javaType" column="java_type" />
<result property="javaField" column="java_field" />
<result property="isPk" column="is_pk" />
<result property="isIncrement" column="is_increment" />
<result property="isRequired" column="is_required" />
<result property="isInsert" column="is_insert" />
<result property="isEdit" column="is_edit" />
<result property="isList" column="is_list" />
<result property="isQuery" column="is_query" />
<result property="queryType" column="query_type" />
<result property="htmlType" column="html_type" />
<result property="dictType" column="dict_type" />
<result property="sort" column="sort" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
</resultMap>
<select id="selectDbTableColumnsByName" parameterType="String" resultMap="GenTableColumnResult">
<if test="@com.lego.common.helper.DataBaseHelper@isMySql()">
select column_name,
(case when (is_nullable = 'no' <![CDATA[ && ]]> column_key != 'PRI') then '1' else '0' end) as is_required,
(case when column_key = 'PRI' then '1' else '0' end) as is_pk,
ordinal_position as sort,
column_comment,
(case when extra = 'auto_increment' then '1' else '0' end) as is_increment,
column_type
from information_schema.columns where table_schema = (select database()) and table_name = (#{tableName})
order by ordinal_position
</if>
<if test="@com.lego.common.helper.DataBaseHelper@isOracle()">
select lower(temp.column_name) as column_name,
(case when (temp.nullable = 'N' and temp.constraint_type != 'P') then '1' else '0' end) as is_required,
(case when temp.constraint_type = 'P' then '1' else '0' end) as is_pk,
temp.column_id as sort,
temp.comments as column_comment,
(case when temp.constraint_type = 'P' then '1' else '0' end) as is_increment,
lower(temp.data_type) as column_type
from (
select col.column_id, col.column_name,col.nullable, col.data_type, colc.comments, uc.constraint_type, row_number()
over (partition by col.column_name order by uc.constraint_type desc) as row_flg
from user_tab_columns col
left join user_col_comments colc on colc.table_name = col.table_name and colc.column_name = col.column_name
left join user_cons_columns ucc on ucc.table_name = col.table_name and ucc.column_name = col.column_name
left join user_constraints uc on uc.constraint_name = ucc.constraint_name
where col.table_name = upper(#{tableName})
) temp
WHERE temp.row_flg = 1
ORDER BY temp.column_id
</if>
<if test="@com.lego.common.helper.DataBaseHelper@isPostgerSql()">
SELECT column_name, is_required, is_pk, sort, column_comment, is_increment, column_type
FROM (
SELECT c.relname AS table_name,
a.attname AS column_name,
d.description AS column_comment,
CASE WHEN a.attnotnull AND con.conname IS NULL THEN 1 ELSE 0
END AS is_required,
CASE WHEN con.conname IS NOT NULL THEN 1 ELSE 0
END AS is_pk,
a.attnum AS sort,
CASE WHEN "position"(pg_get_expr(ad.adbin, ad.adrelid),
((c.relname::text || '_'::text) || a.attname::text) || '_seq'::text) > 0 THEN 1 ELSE 0
END AS is_increment,
btrim(
CASE WHEN t.typelem <![CDATA[ <> ]]> 0::oid AND t.typlen = '-1'::integer THEN 'ARRAY'::text ELSE
CASE WHEN t.typtype = 'd'::"char" THEN format_type(t.typbasetype, NULL::integer)
ELSE format_type(a.atttypid, NULL::integer) END
END, '"'::text
) AS column_type
FROM pg_attribute a
JOIN (pg_class c JOIN pg_namespace n ON c.relnamespace = n.oid) ON a.attrelid = c.oid
LEFT JOIN pg_description d ON d.objoid = c.oid AND a.attnum = d.objsubid
LEFT JOIN pg_constraint con ON con.conrelid = c.oid AND (a.attnum = ANY (con.conkey))
LEFT JOIN pg_attrdef ad ON a.attrelid = ad.adrelid AND a.attnum = ad.adnum
LEFT JOIN pg_type t ON a.atttypid = t.oid
WHERE (c.relkind = ANY (ARRAY ['r'::"char", 'p'::"char"]))
AND a.attnum > 0
AND n.nspname = 'public'::name
ORDER BY c.relname, a.attnum
) temp
WHERE table_name = (#{tableName})
AND column_type <![CDATA[ <> ]]> '-'
</if>
<if test="@com.lego.common.helper.DataBaseHelper@isSqlServer()">
SELECT
cast(A.NAME as nvarchar) as column_name,
cast(B.NAME as nvarchar) + (case when B.NAME = 'numeric' then '(' + cast(A.prec as nvarchar) + ',' + cast(A.scale as nvarchar) + ')' else '' end) as column_type,
cast(G.[VALUE] as nvarchar) as column_comment,
(SELECT 1 FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE Z WHERE TABLE_NAME = D.NAME and A.NAME = Z.column_name ) as is_pk,
colorder as sort
FROM SYSCOLUMNS A
LEFT JOIN SYSTYPES B ON A.XTYPE = B.XUSERTYPE
INNER JOIN SYSOBJECTS D ON A.ID = D.ID AND D.XTYPE='U' AND D.NAME != 'DTPROPERTIES'
LEFT JOIN SYS.EXTENDED_PROPERTIES G ON A.ID = G.MAJOR_ID AND A.COLID = G.MINOR_ID
LEFT JOIN SYS.EXTENDED_PROPERTIES F ON D.ID = F.MAJOR_ID AND F.MINOR_ID = 0
WHERE D.NAME = #{tableName}
ORDER BY A.COLORDER
</if>
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.generator.mapper.GenTableMapper">
<resultMap type="GenTable" id="GenTableResult">
<id property="tableId" column="table_id" />
<result property="tableName" column="table_name" />
<result property="tableComment" column="table_comment" />
<result property="subTableName" column="sub_table_name" />
<result property="subTableFkName" column="sub_table_fk_name" />
<result property="className" column="class_name" />
<result property="tplCategory" column="tpl_category" />
<result property="packageName" column="package_name" />
<result property="moduleName" column="module_name" />
<result property="businessName" column="business_name" />
<result property="functionName" column="function_name" />
<result property="functionAuthor" column="function_author" />
<result property="genType" column="gen_type" />
<result property="genPath" column="gen_path" />
<result property="options" column="options" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="remark" column="remark" />
<collection property="columns" javaType="java.util.List" resultMap="GenTableColumnResult" />
</resultMap>
<resultMap type="GenTableColumn" id="GenTableColumnResult">
<id property="columnId" column="column_id" />
<result property="tableId" column="table_id" />
<result property="columnName" column="column_name" />
<result property="columnComment" column="column_comment" />
<result property="columnType" column="column_type" />
<result property="javaType" column="java_type" />
<result property="javaField" column="java_field" />
<result property="isPk" column="is_pk" />
<result property="isIncrement" column="is_increment" />
<result property="isRequired" column="is_required" />
<result property="isInsert" column="is_insert" />
<result property="isEdit" column="is_edit" />
<result property="isList" column="is_list" />
<result property="isQuery" column="is_query" />
<result property="queryType" column="query_type" />
<result property="htmlType" column="html_type" />
<result property="dictType" column="dict_type" />
<result property="sort" column="sort" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
</resultMap>
<select id="selectPageDbTableList" resultMap="GenTableResult">
<if test="@com.lego.common.helper.DataBaseHelper@isMySql()">
select table_name, table_comment, create_time, update_time
from information_schema.tables
where table_schema = (select database())
AND table_name NOT LIKE 'xxl_job_%' AND table_name NOT LIKE 'gen_%'
AND table_name NOT IN (select table_name from gen_table)
<if test="genTable.tableName != null and genTable.tableName != ''">
AND lower(table_name) like lower(concat('%', #{genTable.tableName}, '%'))
</if>
<if test="genTable.tableComment != null and genTable.tableComment != ''">
AND lower(table_comment) like lower(concat('%', #{genTable.tableComment}, '%'))
</if>
order by create_time desc
</if>
<if test="@com.lego.common.helper.DataBaseHelper@isOracle()">
select lower(dt.table_name) as table_name, dtc.comments as table_comment, uo.created as create_time, uo.last_ddl_time as update_time
from user_tables dt, user_tab_comments dtc, user_objects uo
where dt.table_name = dtc.table_name
and dt.table_name = uo.object_name
and uo.object_type = 'TABLE'
AND dt.table_name NOT LIKE 'XXL_JOB_%' AND dt.table_name NOT LIKE 'GEN_%'
AND lower(dt.table_name) NOT IN (select table_name from gen_table)
<if test="genTable.tableName != null and genTable.tableName != ''">
AND lower(dt.table_name) like lower(concat(concat('%', #{genTable.tableName}), '%'))
</if>
<if test="genTable.tableComment != null and genTable.tableComment != ''">
AND lower(dtc.comments) like lower(concat(concat('%', #{genTable.tableComment}), '%'))
</if>
order by create_time desc
</if>
<if test="@com.lego.common.helper.DataBaseHelper@isPostgerSql()">
select table_name, table_comment, create_time, update_time
from (
SELECT c.relname AS table_name,
obj_description(c.oid) AS table_comment,
CURRENT_TIMESTAMP AS create_time,
CURRENT_TIMESTAMP AS update_time
FROM pg_class c
LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
WHERE (c.relkind = ANY (ARRAY ['r'::"char", 'p'::"char"]))
AND c.relname != 'spatial_%'::text
AND n.nspname = 'public'::name
AND n.nspname <![CDATA[ <> ]]> ''::name
) list_table
where table_name NOT LIKE 'xxl_job_%' AND table_name NOT LIKE 'gen_%'
AND table_name NOT IN (select table_name from gen_table)
<if test="genTable.tableName != null and genTable.tableName != ''">
AND lower(table_name) like lower(concat('%', #{genTable.tableName}, '%'))
</if>
<if test="genTable.tableComment != null and genTable.tableComment != ''">
AND lower(table_comment) like lower(concat('%', #{genTable.tableComment}, '%'))
</if>
order by create_time desc
</if>
<if test="@com.lego.common.helper.DataBaseHelper@isSqlServer()">
SELECT cast(D.NAME as nvarchar) as table_name,
cast(F.VALUE as nvarchar) as table_comment,
crdate as create_time,
refdate as update_time
FROM SYSOBJECTS D
INNER JOIN SYS.EXTENDED_PROPERTIES F ON D.ID = F.MAJOR_ID
AND F.MINOR_ID = 0 AND D.XTYPE = 'U' AND D.NAME != 'DTPROPERTIES'
AND D.NAME NOT LIKE 'xxl_job_%' AND D.NAME NOT LIKE 'gen_%'
AND D.NAME NOT IN (select table_name from gen_table)
<if test="genTable.tableName != null and genTable.tableName != ''">
AND lower(D.NAME) like lower(concat(N'%', N'${genTable.tableName}', N'%'))
</if>
<if test="genTable.tableComment != null and genTable.tableComment != ''">
AND lower(CAST(F.VALUE AS nvarchar)) like lower(concat(N'%', N'${genTable.tableComment}', N'%'))
</if>
order by crdate desc
</if>
</select>
<select id="selectDbTableListByNames" resultMap="GenTableResult">
<if test="@com.lego.common.helper.DataBaseHelper@isMySql()">
select table_name, table_comment, create_time, update_time from information_schema.tables
where table_name NOT LIKE 'xxl_job_%' and table_name NOT LIKE 'gen_%' and table_schema = (select database())
and table_name in
<foreach collection="array" item="name" open="(" separator="," close=")">
#{name}
</foreach>
</if>
<if test="@com.lego.common.helper.DataBaseHelper@isOracle()">
select lower(dt.table_name) as table_name, dtc.comments as table_comment, uo.created as create_time, uo.last_ddl_time as update_time
from user_tables dt, user_tab_comments dtc, user_objects uo
where dt.table_name = dtc.table_name
and dt.table_name = uo.object_name
and uo.object_type = 'TABLE'
AND dt.table_name NOT LIKE 'XXL_JOB_%' AND dt.table_name NOT LIKE 'GEN_%'
AND dt.table_name NOT IN (select table_name from gen_table)
and lower(dt.table_name) in
<foreach collection="array" item="name" open="(" separator="," close=")">
#{name}
</foreach>
</if>
<if test="@com.lego.common.helper.DataBaseHelper@isPostgerSql()">
select table_name, table_comment, create_time, update_time
from (
SELECT c.relname AS table_name,
obj_description(c.oid) AS table_comment,
CURRENT_TIMESTAMP AS create_time,
CURRENT_TIMESTAMP AS update_time
FROM pg_class c
LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
WHERE (c.relkind = ANY (ARRAY ['r'::"char", 'p'::"char"]))
AND c.relname != 'spatial_%'::text
AND n.nspname = 'public'::name
AND n.nspname <![CDATA[ <> ]]> ''::name
) list_table
where table_name NOT LIKE 'xxl_job_%' and table_name NOT LIKE 'gen_%'
and table_name in
<foreach collection="array" item="name" open="(" separator="," close=")">
#{name}
</foreach>
</if>
<if test="@com.lego.common.helper.DataBaseHelper@isSqlServer()">
SELECT cast(D.NAME as nvarchar) as table_name,
cast(F.VALUE as nvarchar) as table_comment,
crdate as create_time,
refdate as update_time
FROM SYSOBJECTS D
INNER JOIN SYS.EXTENDED_PROPERTIES F ON D.ID = F.MAJOR_ID
AND F.MINOR_ID = 0 AND D.XTYPE = 'U' AND D.NAME != 'DTPROPERTIES'
AND D.NAME NOT LIKE 'xxl_job_%' AND D.NAME NOT LIKE 'gen_%'
AND D.NAME in
<foreach collection="array" item="name" open="(" separator="," close=")">
#{name}
</foreach>
</if>
</select>
<select id="selectTableByName" parameterType="String" resultMap="GenTableResult">
<if test="@com.lego.common.helper.DataBaseHelper@isMySql()">
select table_name, table_comment, create_time, update_time from information_schema.tables
where table_name NOT LIKE 'xxl_job_%' and table_name NOT LIKE 'gen_%' and table_schema = (select database())
and table_name = #{tableName}
</if>
<if test="@com.lego.common.helper.DataBaseHelper@isOracle()">
select lower(dt.table_name) as table_name, dtc.comments as table_comment, uo.created as create_time, uo.last_ddl_time as update_time
from user_tables dt, user_tab_comments dtc, user_objects uo
where dt.table_name = dtc.table_name
and dt.table_name = uo.object_name
and uo.object_type = 'TABLE'
AND dt.table_name NOT LIKE 'XXL_JOB_%' AND dt.table_name NOT LIKE 'GEN_%'
AND dt.table_name NOT IN (select table_name from gen_table)
and lower(dt.table_name) = #{tableName}
</if>
<if test="@com.lego.common.helper.DataBaseHelper@isPostgerSql()">
select table_name, table_comment, create_time, update_time
from (
SELECT c.relname AS table_name,
obj_description(c.oid) AS table_comment,
CURRENT_TIMESTAMP AS create_time,
CURRENT_TIMESTAMP AS update_time
FROM pg_class c
LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
WHERE (c.relkind = ANY (ARRAY ['r'::"char", 'p'::"char"]))
AND c.relname != 'spatial_%'::text
AND n.nspname = 'public'::name
AND n.nspname <![CDATA[ <> ]]> ''::name
) list_table
where table_name NOT LIKE 'xxl_job_%' and table_name NOT LIKE 'gen_%'
and table_name = #{tableName}
</if>
<if test="@com.lego.common.helper.DataBaseHelper@isSqlServer()">
SELECT cast(D.NAME as nvarchar) as table_name,
cast(F.VALUE as nvarchar) as table_comment,
crdate as create_time,
refdate as update_time
FROM SYSOBJECTS D
INNER JOIN SYS.EXTENDED_PROPERTIES F ON D.ID = F.MAJOR_ID
AND F.MINOR_ID = 0 AND D.XTYPE = 'U' AND D.NAME != 'DTPROPERTIES'
AND D.NAME NOT LIKE 'xxl_job_%' AND D.NAME NOT LIKE 'gen_%'
AND D.NAME = #{tableName}
</if>
</select>
<select id="selectGenTableById" parameterType="Long" resultMap="GenTableResult">
SELECT t.table_id, t.table_name, t.table_comment, t.sub_table_name, t.sub_table_fk_name, t.class_name, t.tpl_category, t.package_name, t.module_name, t.business_name, t.function_name, t.function_author, t.gen_type, t.gen_path, t.options, t.remark,
c.column_id, c.column_name, c.column_comment, c.column_type, c.java_type, c.java_field, c.is_pk, c.is_increment, c.is_required, c.is_insert, c.is_edit, c.is_list, c.is_query, c.query_type, c.html_type, c.dict_type, c.sort
FROM gen_table t
LEFT JOIN gen_table_column c ON t.table_id = c.table_id
where t.table_id = #{tableId} order by c.sort
</select>
<select id="selectGenTableByName" parameterType="String" resultMap="GenTableResult">
SELECT t.table_id, t.table_name, t.table_comment, t.sub_table_name, t.sub_table_fk_name, t.class_name, t.tpl_category, t.package_name, t.module_name, t.business_name, t.function_name, t.function_author, t.gen_type, t.gen_path, t.options, t.remark,
c.column_id, c.column_name, c.column_comment, c.column_type, c.java_type, c.java_field, c.is_pk, c.is_increment, c.is_required, c.is_insert, c.is_edit, c.is_list, c.is_query, c.query_type, c.html_type, c.dict_type, c.sort
FROM gen_table t
LEFT JOIN gen_table_column c ON t.table_id = c.table_id
where t.table_name = #{tableName} order by c.sort
</select>
<select id="selectGenTableAll" parameterType="String" resultMap="GenTableResult">
SELECT t.table_id, t.table_name, t.table_comment, t.sub_table_name, t.sub_table_fk_name, t.class_name, t.tpl_category, t.package_name, t.module_name, t.business_name, t.function_name, t.function_author, t.options, t.remark,
c.column_id, c.column_name, c.column_comment, c.column_type, c.java_type, c.java_field, c.is_pk, c.is_increment, c.is_required, c.is_insert, c.is_edit, c.is_list, c.is_query, c.query_type, c.html_type, c.dict_type, c.sort
FROM gen_table t
LEFT JOIN gen_table_column c ON t.table_id = c.table_id
order by c.sort
</select>
</mapper>
java包使用 `.` 分割 resource 目录使用 `/` 分割
<br>
此文件目的 防止文件夹粘连找不到 `xml` 文件
\ No newline at end of file
package ${packageName}.domain.bo;
import com.lego.common.core.validate.AddGroup;
import com.lego.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;
import java.io.Serializable;
import java.util.Date;
#foreach ($import in $importList)
import ${import};
#end
#if($table.crud || $table.sub)
import com.lego.common.core.domain.BaseEntity;
#elseif($table.tree)
import com.lego.common.core.domain.TreeEntity;
#end
/**
* ${functionName}业务对象 ${tableName}
*
* @author ${author}
* @date ${datetime}
*/
@Data
@EqualsAndHashCode
public class ${ClassName}Bo implements Serializable {
private static final long serialVersionUID=1L;
#foreach ($column in $columns)
#if(!$table.isSuperColumn($column.javaField) && ($column.query || $column.insert || $column.edit))
/** $column.columnComment */
private $column.javaType $column.javaField;
#end
#end
}
package ${packageName}.controller;
import java.util.List;
import java.util.Arrays;
import java.util.concurrent.TimeUnit;
import lombok.RequiredArgsConstructor;
import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import com.lego.common.annotation.RepeatSubmit;
import com.lego.common.annotation.Log;
import com.lego.common.core.controller.BaseController;
import com.lego.common.core.domain.PageQuery;
import com.lego.common.core.domain.R;
import com.lego.common.core.validate.AddGroup;
import com.lego.common.core.validate.EditGroup;
import com.lego.common.core.validate.QueryGroup;
import com.lego.common.enums.BusinessType;
import com.lego.common.utils.poi.ExcelUtil;
import ${packageName}.domain.vo.${ClassName}Vo;
import ${packageName}.domain.bo.${ClassName}Bo;
import ${packageName}.domain.form.${ClassName}Form;
import ${packageName}.domain.query.${ClassName}Query;
import ${packageName}.service.I${ClassName}Service;
#if($table.crud || $table.sub)
import com.lego.common.core.page.TableDataInfo;
#elseif($table.tree)
#end
/**
* ${functionName}
*
* @author ${author}
* @date ${datetime}
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/${moduleName}/${businessName}")
public class ${ClassName}Controller extends BaseController {
private final I${ClassName}Service i${ClassName}Service;
/**
* 查询${functionName}列表
*/
@SaCheckPermission("${permissionPrefix}:list")
@GetMapping("/list")
#if($table.crud || $table.sub)
public TableDataInfo<${ClassName}Vo> list(${ClassName}Query query, PageQuery pageQuery) {
return i${ClassName}Service.queryPageList(query, pageQuery);
}
#elseif($table.tree)
public R<List<${ClassName}Vo>> list(${ClassName}Query query) {
List<${ClassName}Vo> list = i${ClassName}Service.queryList(query);
return R.ok(list);
}
#end
/**
* 导出${functionName}列表
*/
@SaCheckPermission("${permissionPrefix}:export")
@Log(title = "${functionName}", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(${ClassName}Query query, HttpServletResponse response) {
List<${ClassName}Vo> list = i${ClassName}Service.queryList(query);
ExcelUtil.exportExcel(list, "${functionName}", ${ClassName}Vo.class, response);
}
/**
* 获取${functionName}详细信息
*
* @param ${pkColumn.javaField} 主键
*/
@SaCheckPermission("${permissionPrefix}:query")
@GetMapping("/{${pkColumn.javaField}}")
public R<${ClassName}Form> getInfo(@NotNull(message = "主键不能为空")
@PathVariable ${pkColumn.javaType} ${pkColumn.javaField}) {
return R.ok(i${ClassName}Service.queryById(${pkColumn.javaField}));
}
/**
* 新增${functionName}
*/
@SaCheckPermission("${permissionPrefix}:add")
@Log(title = "${functionName}", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody ${ClassName}Form form) {
return toAjax(i${ClassName}Service.insertByForm(form));
}
/**
* 修改${functionName}
*/
@SaCheckPermission("${permissionPrefix}:edit")
@Log(title = "${functionName}", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody ${ClassName}Form form) {
return toAjax(i${ClassName}Service.updateByForm(form));
}
/**
* 删除${functionName}
*
* @param ${pkColumn.javaField}s 主键串
*/
@SaCheckPermission("${permissionPrefix}:remove")
@Log(title = "${functionName}", businessType = BusinessType.DELETE)
@DeleteMapping("/{${pkColumn.javaField}s}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@RequestBody ${pkColumn.javaType}[] ${pkColumn.javaField}s) {
return toAjax(i${ClassName}Service.deleteWithValidByIds(Arrays.asList(${pkColumn.javaField}s), true));
}
}
package ${packageName}.entity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.util.Date;
import java.math.BigDecimal;
#foreach ($import in $importList)
import ${import};
#end
#if($table.crud || $table.sub)
import com.lego.common.core.domain.BaseEntity;
#elseif($table.tree)
import com.lego.common.core.domain.TreeEntity;
#end
/**
* ${functionName}对象 ${tableName}
*
* @author ${author}
* @date ${datetime}
*/
#if($table.crud || $table.sub)
#set($Entity="BaseEntity")
#elseif($table.tree)
#set($Entity="TreeEntity<${ClassName}>")
#end
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("${tableName}")
public class ${ClassName}Entity extends ${Entity} {
private static final long serialVersionUID=1L;
#foreach ($column in $columns)
#if(!$table.isSuperColumn($column.javaField))
#if($column.javaField=='delFlag')
@TableLogic
#end
#if($column.javaField=='version')
@Version
#end
#if($column.pk)
@TableId(value = "$column.columnName")
#end
/** $column.columnComment */
private $column.javaType $column.javaField;
#end
#end
}
package ${packageName}.domain.form;
import com.lego.common.core.validate.AddGroup;
import com.lego.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;
import java.io.Serializable;
import java.util.Date;
#foreach ($import in $importList)
import ${import};
#end
#if($table.crud || $table.sub)
import com.lego.common.core.domain.BaseEntity;
#elseif($table.tree)
import com.lego.common.core.domain.TreeEntity;
#end
import ${packageName}.domain.entity.${ClassName}Entity;
/**
* ${functionName}业务对象 ${tableName}
*
* @author ${author}
* @date ${datetime}
*/
#if($table.crud || $table.sub)
#set($Entity="BaseEntity")
#elseif($table.tree)
#set($Entity="TreeEntity<${ClassName}Bo>")
#end
@Data
@EqualsAndHashCode
public class ${ClassName}Form implements Serializable {
private static final long serialVersionUID=1L;
#foreach ($column in $columns)
#if(!$table.isSuperColumn($column.javaField) && ($column.query || $column.insert || $column.edit))
#if($column.insert && $column.edit)
#set($Group="AddGroup.class, EditGroup.class")
#elseif($column.insert)
#set($Group="AddGroup.class")
#elseif($column.edit)
#set($Group="EditGroup.class")
#end
#if($column.required)
#if($column.javaType == 'String')
@NotBlank(message = "$column.columnComment不能为空", groups = { $Group })
#else
@NotNull(message = "$column.columnComment不能为空", groups = { $Group })
#end
#end
/** $column.columnComment */
private $column.javaType $column.javaField;
#end
#end
/**
* 转换entity
*/
public ${ClassName}Entity convertToEntity() {
return BeanUtil.toBean(this, ${ClassName}Entity.class);
}
/**
* entity构建form
*/
public static ${ClassName}Form buildForm(${ClassName}Entity entity) {
return BeanUtil.toBean(entity, ${ClassName}Form.class);
}
}
package ${packageName}.mapper;
import ${packageName}.domain.entity.${ClassName}Entity;
import ${packageName}.domain.vo.${ClassName}Vo;
import com.lego.common.core.mapper.BaseMapperPlus;
/**
* ${functionName}Mapper接口
*
* @author ${author}
* @date ${datetime}
*/
public interface ${ClassName}Mapper extends BaseMapperPlus<${ClassName}Mapper, ${ClassName}Entity, ${ClassName}Vo> {
}
package ${packageName}.domain.query;
import com.lego.common.core.validate.AddGroup;
import com.lego.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;
import java.util.Date;
#foreach ($import in $importList)
import ${import};
#end
#if($table.crud || $table.sub)
import com.lego.common.core.domain.BaseEntity;
#elseif($table.tree)
import com.lego.common.core.domain.TreeEntity;
#end
/**
* ${functionName}业务对象 ${tableName}
*
* @author ${author}
* @date ${datetime}
*/
#if($table.crud || $table.sub)
#set($Entity="BaseEntity")
#elseif($table.tree)
#set($Entity="TreeEntity<${ClassName}Bo>")
#end
@Data
@EqualsAndHashCode
public class ${ClassName}Query {
private static final long serialVersionUID=1L;
#foreach ($column in $columns)
#if(!$table.isSuperColumn($column.javaField) && ($column.query || $column.insert || $column.edit))
/** $column.columnComment */
private $column.javaType $column.javaField;
#end
#end
}
package ${packageName}.service;
import ${packageName}.domain.entity.${ClassName}Entity;
import ${packageName}.domain.vo.${ClassName}Vo;
import ${packageName}.domain.bo.${ClassName}Bo;
import ${packageName}.domain.form.${ClassName}Form;
import ${packageName}.domain.query.${ClassName}Query;
#if($table.crud || $table.sub)
import com.lego.common.core.page.TableDataInfo;
import com.lego.common.core.domain.PageQuery;
#end
import java.util.Collection;
import java.util.List;
/**
* ${functionName}Service接口
*
* @author ${author}
* @date ${datetime}
*/
public interface I${ClassName}Service {
/**
* 查询${functionName}
*/
${ClassName}Form queryById(${pkColumn.javaType} ${pkColumn.javaField});
#if($table.crud || $table.sub)
/**
* 查询${functionName}列表
*/
TableDataInfo<${ClassName}Vo> queryPageList(${ClassName}Query query, PageQuery pageQuery);
#end
/**
* 查询${functionName}列表
*/
List<${ClassName}Vo> queryList(${ClassName}Query query);
/**
* 新增${functionName}
*/
Boolean insertByForm(${ClassName}Form form);
/**
* 修改${functionName}
*/
Boolean updateByForm(${ClassName}Form form);
/**
* 校验并批量删除${functionName}信息
*/
Boolean deleteWithValidByIds(Collection<${pkColumn.javaType}> ids, Boolean isValid);
}
package ${packageName}.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.lego.common.utils.StringUtils;
#if($table.crud || $table.sub)
import com.lego.common.core.page.TableDataInfo;
import com.lego.common.core.domain.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
#end
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import ${packageName}.domain.entity.${ClassName}Entity;
import ${packageName}.domain.vo.${ClassName}Vo;
import ${packageName}.domain.bo.${ClassName}Bo;
import ${packageName}.domain.form.${ClassName}Form;
import ${packageName}.domain.query.${ClassName}Query;
import ${packageName}.mapper.${ClassName}Mapper;
import ${packageName}.service.I${ClassName}Service;
import ${packageName}.service.validator.${ClassName}Validator;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* ${functionName}Service业务层处理
*
* @author ${author}
* @date ${datetime}
*/
@RequiredArgsConstructor
@Service
public class ${ClassName}ServiceImpl implements I${ClassName}Service {
private final ${ClassName}Mapper baseMapper;
private final ${ClassName}Validator validator;
@Override
public ${ClassName}Form queryById(${pkColumn.javaType} ${pkColumn.javaField}){
return ${ClassName}Form.buildForm(baseMapper.selectById(${pkColumn.javaField}));
}
#if($table.crud || $table.sub)
@Override
public TableDataInfo<${ClassName}Vo> queryPageList(${ClassName}Query query, PageQuery pageQuery) {
LambdaQueryWrapper<${ClassName}Entity> lqw = buildQueryWrapper(query);
Page<${ClassName}Vo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
#end
@Override
public List<${ClassName}Vo> queryList(${ClassName}Query query) {
LambdaQueryWrapper<${ClassName}Entity> lqw = buildQueryWrapper(query);
return baseMapper.selectVoList(lqw);
}
private LambdaQueryWrapper<${ClassName}Entity> buildQueryWrapper(${ClassName}Query query) {
//Map<String, Object> params = query.getParams();
LambdaQueryWrapper<${ClassName}Entity> lqw = Wrappers.lambdaQuery();
#foreach($column in $columns)
#if($column.query)
#set($queryType=$column.queryType)
#set($javaField=$column.javaField)
#set($javaType=$column.javaType)
#set($columnName=$column.columnName)
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
#set($mpMethod=$column.queryType.toLowerCase())
#if($queryType != 'BETWEEN')
#if($javaType == 'String')
#set($condition='StringUtils.isNotBlank(query.get'+$AttrName+'())')
#else
#set($condition='query.get'+$AttrName+'() != null')
#end
lqw.$mpMethod($condition, ${ClassName}Entity::get$AttrName, query.get$AttrName());
#else
lqw.between(params.get("begin$AttrName") != null && params.get("end$AttrName") != null,
${ClassName}Entity::get$AttrName ,params.get("begin$AttrName"), params.get("end$AttrName"));
#end
#end
#end
return lqw;
}
@Override
public Boolean insertByForm(${ClassName}Form form) {
${ClassName}Entity add = form.convertToEntity();
validator.validEntityBeforeSave(add);
boolean flag = baseMapper.insert(add) > 0;
#set($pk=$pkColumn.javaField.substring(0,1).toUpperCase() + ${pkColumn.javaField.substring(1)})
if (flag) {
form.set$pk(add.get$pk());
}
return flag;
}
@Override
public Boolean updateByForm(${ClassName}Form form) {
${ClassName}Entity update = form.convertToEntity();
validator.validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
}
@Override
public Boolean deleteWithValidByIds(Collection<${pkColumn.javaType}> ids, Boolean isValid) {
if(isValid){
//TODO 做一些业务上的校验,判断是否需要校验
}
return baseMapper.deleteBatchIds(ids) > 0;
}
}
package ${packageName}.domain;
#foreach ($import in $subImportList)
import ${import};
#end
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.lego.common.annotation.Excel;
import com.lego.common.core.domain.BaseEntity;
/**
* ${subTable.functionName}对象 ${subTableName}
*
* @author ${author}
* @date ${datetime}
*/
public class ${subClassName} extends BaseEntity
{
private static final long serialVersionUID = 1L;
#foreach ($column in $subTable.columns)
#if(!$table.isSuperColumn($column.javaField))
/** $column.columnComment */
#if($column.list)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#if($parentheseIndex != -1)
@Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
#elseif($column.javaType == 'Date')
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "${comment}", width = 30, dateFormat = "yyyy-MM-dd")
#else
@Excel(name = "${comment}")
#end
#end
private $column.javaType $column.javaField;
#end
#end
#foreach ($column in $subTable.columns)
#if(!$table.isSuperColumn($column.javaField))
#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]"))
#set($AttrName=$column.javaField)
#else
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
#end
public void set${AttrName}($column.javaType $column.javaField)
{
this.$column.javaField = $column.javaField;
}
public $column.javaType get${AttrName}()
{
return $column.javaField;
}
#end
#end
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
#foreach ($column in $subTable.columns)
#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]"))
#set($AttrName=$column.javaField)
#else
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
#end
.append("${column.javaField}", get${AttrName}())
#end
.toString();
}
}
package ${packageName}.validator;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Component;
import ${packageName}.domain.entity.${ClassName}Entity;
import ${packageName}.mapper.${ClassName}Mapper;
/**
* ${functionName}Service接口
*
* @author ${author}
* @date ${datetime}
*/
@Component
@RequiredArgsConstructor
public class ${ClassName}Validator {
private final ${ClassName}Mapper baseMapper;
/**
* 保存前的数据校验
*/
public void validEntityBeforeSave(${ClassName}Entity entity){
//TODO 做一些数据校验,如唯一约束
}
}
package ${packageName}.domain.vo;
#foreach ($import in $importList)
import ${import};
#end
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.lego.common.annotation.ExcelDictFormat;
import com.lego.common.convert.ExcelDictConvert;
import lombok.Data;
import java.util.Date;
import java.io.Serializable;
/**
* ${functionName}视图对象 ${tableName}
*
* @author ${author}
* @date ${datetime}
*/
@Data
@ExcelIgnoreUnannotated
public class ${ClassName}Vo implements Serializable {
private static final long serialVersionUID = 1L;
#foreach ($column in $columns)
#if($column.list)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
/** $column.columnComment */
#if(${column.dictType} && ${column.dictType} != '')
@ExcelProperty(value = "${comment}", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "${column.dictType}")
#elseif($parentheseIndex != -1)
@ExcelProperty(value = "${comment}", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "$column.readConverterExp()")
#else
@ExcelProperty(value = "${comment}")
#end
private $column.javaType $column.javaField;
#end
#end
}
import request from '@/utils/request'
// 查询${functionName}列表
export function list${BusinessName}(query) {
return request({
url: '/${moduleName}/${businessName}/list',
method: 'get',
params: query
})
}
// 查询${functionName}详细
export function get${BusinessName}(${pkColumn.javaField}) {
return request({
url: '/${moduleName}/${businessName}/' + ${pkColumn.javaField},
method: 'get'
})
}
// 新增${functionName}
export function add${BusinessName}(data) {
return request({
url: '/${moduleName}/${businessName}',
method: 'post',
data: data
})
}
// 修改${functionName}
export function update${BusinessName}(data) {
return request({
url: '/${moduleName}/${businessName}',
method: 'put',
data: data
})
}
// 删除${functionName}
export function del${BusinessName}(${pkColumn.javaField}) {
return request({
url: '/${moduleName}/${businessName}/' + ${pkColumn.javaField},
method: 'delete'
})
}
-- 菜单 SQL
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[0]}, '${functionName}', '${parentMenuId}', '1', '${businessName}', '${moduleName}/${businessName}/index', 1, 0, 'C', '0', '0', '${permissionPrefix}:list', '#', 'admin', sysdate, '', null, '${functionName}菜单');
-- 按钮 SQL
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[1]}, '${functionName}查询', ${table.menuIds[0]}, '1', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:query', '#', 'admin', sysdate, '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[2]}, '${functionName}新增', ${table.menuIds[0]}, '2', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:add', '#', 'admin', sysdate, '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[3]}, '${functionName}修改', ${table.menuIds[0]}, '3', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:edit', '#', 'admin', sysdate, '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[4]}, '${functionName}删除', ${table.menuIds[0]}, '4', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:remove', '#', 'admin', sysdate, '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[5]}, '${functionName}导出', ${table.menuIds[0]}, '5', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:export', '#', 'admin', sysdate, '', null, '');
-- 菜单 SQL
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[0]}, '${functionName}', '${parentMenuId}', '1', '${businessName}', '${moduleName}/${businessName}/index', 1, 0, 'C', '0', '0', '${permissionPrefix}:list', '#', 'admin', now(), '', null, '${functionName}菜单');
-- 按钮 SQL
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[1]}, '${functionName}查询', ${table.menuIds[0]}, '1', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:query', '#', 'admin', now(), '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[2]}, '${functionName}新增', ${table.menuIds[0]}, '2', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:add', '#', 'admin', now(), '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[3]}, '${functionName}修改', ${table.menuIds[0]}, '3', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:edit', '#', 'admin', now(), '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[4]}, '${functionName}删除', ${table.menuIds[0]}, '4', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:remove', '#', 'admin', now(), '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[5]}, '${functionName}导出', ${table.menuIds[0]}, '5', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:export', '#', 'admin', now(), '', null, '');
-- 菜单 SQL
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[0]}, '${functionName}', '${parentMenuId}', '1', '${businessName}', '${moduleName}/${businessName}/index', 1, 0, 'C', '0', '0', '${permissionPrefix}:list', '#', 'admin', sysdate(), '', null, '${functionName}菜单');
-- 按钮 SQL
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[1]}, '${functionName}查询', ${table.menuIds[0]}, '1', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:query', '#', 'admin', sysdate(), '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[2]}, '${functionName}新增', ${table.menuIds[0]}, '2', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:add', '#', 'admin', sysdate(), '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[3]}, '${functionName}修改', ${table.menuIds[0]}, '3', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:edit', '#', 'admin', sysdate(), '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[4]}, '${functionName}删除', ${table.menuIds[0]}, '4', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:remove', '#', 'admin', sysdate(), '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[5]}, '${functionName}导出', ${table.menuIds[0]}, '5', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:export', '#', 'admin', sysdate(), '', null, '');
-- 菜单 SQL
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[0]}, '${functionName}', '${parentMenuId}', '1', '${businessName}', '${moduleName}/${businessName}/index', 1, 0, 'C', '0', '0', '${permissionPrefix}:list', '#', 'admin', getdate(), '', null, '${functionName}菜单');
-- 按钮 SQL
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[1]}, '${functionName}查询', ${table.menuIds[0]}, '1', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:query', '#', 'admin', getdate(), '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[2]}, '${functionName}新增', ${table.menuIds[0]}, '2', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:add', '#', 'admin', getdate(), '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[3]}, '${functionName}修改', ${table.menuIds[0]}, '3', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:edit', '#', 'admin', getdate(), '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[4]}, '${functionName}删除', ${table.menuIds[0]}, '4', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:remove', '#', 'admin', getdate(), '', null, '');
insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
values(${table.menuIds[5]}, '${functionName}导出', ${table.menuIds[0]}, '5', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:export', '#', 'admin', getdate(), '', null, '');
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
#foreach($column in $columns)
#if($column.query)
#set($dictType=$column.dictType)
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#if($column.htmlType == "input" || $column.htmlType == "textarea")
<el-form-item label="${comment}" prop="${column.javaField}">
<el-input
v-model="queryParams.${column.javaField}"
placeholder="请输入${comment}"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && "" != $dictType)
<el-form-item label="${comment}" prop="${column.javaField}">
<el-select v-model="queryParams.${column.javaField}" placeholder="请选择${comment}" clearable>
<el-option
v-for="dict in dict.type.${dictType}"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && $dictType)
<el-form-item label="${comment}" prop="${column.javaField}">
<el-select v-model="queryParams.${column.javaField}" placeholder="请选择${comment}" clearable>
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
#elseif($column.htmlType == "datetime" && $column.queryType != "BETWEEN")
<el-form-item label="${comment}" prop="${column.javaField}">
<el-date-picker clearable
v-model="queryParams.${column.javaField}"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择${comment}">
</el-date-picker>
</el-form-item>
#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
<el-form-item label="${comment}">
<el-date-picker
v-model="daterange${AttrName}"
style="width: 240px"
value-format="yyyy-MM-dd HH:mm:ss"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
></el-date-picker>
</el-form-item>
#end
#end
#end
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['${moduleName}:${businessName}:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="info"
plain
icon="el-icon-sort"
size="mini"
@click="toggleExpandAll"
>展开/折叠</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table
v-if="refreshTable"
v-loading="loading"
:data="${businessName}List"
row-key="${treeCode}"
:default-expand-all="isExpandAll"
:tree-props="{children: 'children', hasChildren: 'hasChildren'}"
>
#foreach($column in $columns)
#set($javaField=$column.javaField)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#if($column.pk)
#elseif($column.list && $column.htmlType == "datetime")
<el-table-column label="${comment}" align="center" prop="${javaField}" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.${javaField}, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
#elseif($column.list && $column.htmlType == "imageUpload")
<el-table-column label="${comment}" align="center" prop="${javaField}" width="100">
<template #default="scope">
<image-preview :src="scope.row.${javaField}" :width="50" :height="50"/>
</template>
</el-table-column>
#elseif($column.list && $column.dictType && "" != $column.dictType)
<el-table-column label="${comment}" align="center" prop="${javaField}">
<template slot-scope="scope">
#if($column.htmlType == "checkbox")
<dict-tag :options="dict.type.${column.dictType}" :value="scope.row.${javaField} ? scope.row.${javaField}.split(',') : []"/>
#else
<dict-tag :options="dict.type.${column.dictType}" :value="scope.row.${javaField}"/>
#end
</template>
</el-table-column>
#elseif($column.list && "" != $javaField)
#if(${foreach.index} == 1)
<el-table-column label="${comment}" prop="${javaField}" />
#else
<el-table-column label="${comment}" align="center" prop="${javaField}" />
#end
#end
#end
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['${moduleName}:${businessName}:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-plus"
@click="handleAdd(scope.row)"
v-hasPermi="['${moduleName}:${businessName}:add']"
>新增</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['${moduleName}:${businessName}:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<!-- 添加或修改${functionName}对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
#foreach($column in $columns)
#set($field=$column.javaField)
#if($column.insert && !$column.pk)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#set($dictType=$column.dictType)
#if("" != $treeParentCode && $column.javaField == $treeParentCode)
<el-form-item label="${comment}" prop="${treeParentCode}">
<treeselect v-model="form.${treeParentCode}" :options="${businessName}Options" :normalizer="normalizer" placeholder="请选择${comment}" />
</el-form-item>
#elseif($column.htmlType == "input")
<el-form-item label="${comment}" prop="${field}">
<el-input v-model="form.${field}" placeholder="请输入${comment}" />
</el-form-item>
#elseif($column.htmlType == "imageUpload")
<el-form-item label="${comment}" prop="${field}">
<image-upload v-model="form.${field}"/>
</el-form-item>
#elseif($column.htmlType == "fileUpload")
<el-form-item label="${comment}" prop="${field}">
<file-upload v-model="form.${field}"/>
</el-form-item>
#elseif($column.htmlType == "editor")
<el-form-item label="${comment}">
<editor v-model="form.${field}" :min-height="192"/>
</el-form-item>
#elseif($column.htmlType == "select" && "" != $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-select v-model="form.${field}" placeholder="请选择${comment}">
<el-option
v-for="dict in dict.type.${dictType}"
:key="dict.value"
:label="dict.label"
#if($column.javaType == "Integer" || $column.javaType == "Long")
:value="parseInt(dict.value)"
#else
:value="dict.value"
#end
></el-option>
</el-select>
</el-form-item>
#elseif($column.htmlType == "select" && $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-select v-model="form.${field}" placeholder="请选择${comment}">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
#elseif($column.htmlType == "checkbox" && "" != $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-checkbox-group v-model="form.${field}">
<el-checkbox
v-for="dict in dict.type.${dictType}"
:key="dict.value"
:label="dict.value">
{{dict.label}}
</el-checkbox>
</el-checkbox-group>
</el-form-item>
#elseif($column.htmlType == "checkbox" && $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-checkbox-group v-model="form.${field}">
<el-checkbox>请选择字典生成</el-checkbox>
</el-checkbox-group>
</el-form-item>
#elseif($column.htmlType == "radio" && "" != $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-radio-group v-model="form.${field}">
<el-radio
v-for="dict in dict.type.${dictType}"
:key="dict.value"
#if($column.javaType == "Integer" || $column.javaType == "Long")
:label="parseInt(dict.value)"
#else
:label="dict.value"
#end
>{{dict.label}}</el-radio>
</el-radio-group>
</el-form-item>
#elseif($column.htmlType == "radio" && $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-radio-group v-model="form.${field}">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
#elseif($column.htmlType == "datetime")
<el-form-item label="${comment}" prop="${field}">
<el-date-picker clearable
v-model="form.${field}"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="选择${comment}">
</el-date-picker>
</el-form-item>
#elseif($column.htmlType == "textarea")
<el-form-item label="${comment}" prop="${field}">
<el-input v-model="form.${field}" type="textarea" placeholder="请输入内容" />
</el-form-item>
#end
#end
#end
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName} } from "@/api/${moduleName}/${businessName}";
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
export default {
name: "${BusinessName}",
#if(${dicts} != '')
dicts: [${dicts}],
#end
components: {
Treeselect
},
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 显示搜索条件
showSearch: true,
// ${functionName}表格数据
${businessName}List: [],
// ${functionName}树选项
${businessName}Options: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 是否展开,默认全部展开
isExpandAll: true,
// 重新渲染表格状态
refreshTable: true,
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
// $comment时间范围
daterange${AttrName}: [],
#end
#end
// 查询参数
queryParams: {
#foreach ($column in $columns)
#if($column.query)
$column.javaField: undefined#if($foreach.count != $columns.size()),#end
#end
#end
},
// 表单参数
form: {},
// 表单校验
rules: {
#foreach ($column in $columns)
#if($column.required)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
$column.javaField: [
{ required: true, message: "$comment不能为空", trigger: #if($column.htmlType == "select" || $column.htmlType == "radio")"change"#else"blur"#end }
]#if($foreach.count != $columns.size()),#end
#end
#end
}
};
},
created() {
this.getList();
},
methods: {
/** 查询${functionName}列表 */
getList() {
this.loading = true;
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
this.queryParams.params = {};
#break
#end
#end
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
if (null != this.daterange${AttrName} && '' != this.daterange${AttrName}) {
this.queryParams.params["begin${AttrName}"] = this.daterange${AttrName}[0];
this.queryParams.params["end${AttrName}"] = this.daterange${AttrName}[1];
}
#end
#end
list${BusinessName}(this.queryParams).then(response => {
this.${businessName}List = this.handleTree(response.data, "${treeCode}", "${treeParentCode}");
this.loading = false;
});
},
/** 转换${functionName}数据结构 */
normalizer(node) {
if (node.children && !node.children.length) {
delete node.children;
}
return {
id: node.${treeCode},
label: node.${treeName},
children: node.children
};
},
/** 查询${functionName}下拉树结构 */
getTreeselect() {
list${BusinessName}().then(response => {
this.${businessName}Options = [];
const data = { ${treeCode}: 0, ${treeName}: '顶级节点', children: [] };
data.children = this.handleTree(response.data, "${treeCode}", "${treeParentCode}");
this.${businessName}Options.push(data);
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
#foreach ($column in $columns)
#if($column.htmlType == "checkbox")
$column.javaField: []#if($foreach.count != $columns.size()),#end
#else
$column.javaField: null#if($foreach.count != $columns.size()),#end
#end
#end
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
this.daterange${AttrName} = [];
#end
#end
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd(row) {
this.reset();
this.getTreeselect();
if (row != null && row.${treeCode}) {
this.form.${treeParentCode} = row.${treeCode};
} else {
this.form.${treeParentCode} = 0;
}
this.open = true;
this.title = "添加${functionName}";
},
/** 展开/折叠操作 */
toggleExpandAll() {
this.refreshTable = false;
this.isExpandAll = !this.isExpandAll;
this.$nextTick(() => {
this.refreshTable = true;
});
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
this.getTreeselect();
if (row != null) {
this.form.${treeParentCode} = row.${treeParentCode};
}
get${BusinessName}(row.${pkColumn.javaField}).then(response => {
this.loading = false;
this.form = response.data;
#foreach ($column in $columns)
#if($column.htmlType == "checkbox")
this.form.$column.javaField = this.form.${column.javaField}.split(",");
#end
#end
this.open = true;
this.title = "修改${functionName}";
});
},
/** 提交按钮 */
submitForm() {
this.#[[$]]#refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
#foreach ($column in $columns)
#if($column.htmlType == "checkbox")
this.form.$column.javaField = this.form.${column.javaField}.join(",");
#end
#end
if (this.form.${pkColumn.javaField} != null) {
update${BusinessName}(this.form).then(response => {
this.#[[$modal]]#.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
add${BusinessName}(this.form).then(response => {
this.#[[$modal]]#.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
this.#[[$modal]]#.confirm('是否确认删除${functionName}编号为"' + row.${pkColumn.javaField} + '"的数据项?').then(() => {
this.loading = true;
return del${BusinessName}(row.${pkColumn.javaField});
}).then(() => {
this.loading = false;
this.getList();
this.#[[$modal]]#.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
}
}
};
</script>
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
#foreach($column in $columns)
#if($column.query)
#set($dictType=$column.dictType)
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#if($column.htmlType == "input" || $column.htmlType == "textarea")
<el-form-item label="${comment}" prop="${column.javaField}">
<el-input
v-model="queryParams.${column.javaField}"
placeholder="请输入${comment}"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && "" != $dictType)
<el-form-item label="${comment}" prop="${column.javaField}">
<el-select v-model="queryParams.${column.javaField}" placeholder="请选择${comment}" clearable>
<el-option
v-for="dict in dict.type.${dictType}"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && $dictType)
<el-form-item label="${comment}" prop="${column.javaField}">
<el-select v-model="queryParams.${column.javaField}" placeholder="请选择${comment}" clearable>
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
#elseif($column.htmlType == "datetime" && $column.queryType != "BETWEEN")
<el-form-item label="${comment}" prop="${column.javaField}">
<el-date-picker clearable
v-model="queryParams.${column.javaField}"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择${comment}">
</el-date-picker>
</el-form-item>
#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
<el-form-item label="${comment}">
<el-date-picker
v-model="daterange${AttrName}"
style="width: 240px"
value-format="yyyy-MM-dd HH:mm:ss"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
></el-date-picker>
</el-form-item>
#end
#end
#end
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['${moduleName}:${businessName}:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['${moduleName}:${businessName}:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['${moduleName}:${businessName}:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['${moduleName}:${businessName}:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="${businessName}List" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
#foreach($column in $columns)
#set($javaField=$column.javaField)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#if($column.pk)
<el-table-column label="${comment}" align="center" prop="${javaField}" v-if="${column.list}"/>
#elseif($column.list && $column.htmlType == "datetime")
<el-table-column label="${comment}" align="center" prop="${javaField}" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.${javaField}, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
#elseif($column.list && $column.htmlType == "imageUpload")
<el-table-column label="${comment}" align="center" prop="${javaField}" width="100">
<template slot-scope="scope">
<image-preview :src="scope.row.${javaField}" :width="50" :height="50"/>
</template>
</el-table-column>
#elseif($column.list && $column.dictType && "" != $column.dictType)
<el-table-column label="${comment}" align="center" prop="${javaField}">
<template slot-scope="scope">
#if($column.htmlType == "checkbox")
<dict-tag :options="dict.type.${column.dictType}" :value="scope.row.${javaField} ? scope.row.${javaField}.split(',') : []"/>
#else
<dict-tag :options="dict.type.${column.dictType}" :value="scope.row.${javaField}"/>
#end
</template>
</el-table-column>
#elseif($column.list && "" != $javaField)
<el-table-column label="${comment}" align="center" prop="${javaField}" />
#end
#end
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['${moduleName}:${businessName}:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['${moduleName}:${businessName}:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改${functionName}对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
#foreach($column in $columns)
#set($field=$column.javaField)
#if($column.insert && !$column.pk)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#set($dictType=$column.dictType)
#if($column.htmlType == "input")
<el-form-item label="${comment}" prop="${field}">
<el-input v-model="form.${field}" placeholder="请输入${comment}" />
</el-form-item>
#elseif($column.htmlType == "imageUpload")
<el-form-item label="${comment}" prop="${field}">
<image-upload v-model="form.${field}"/>
</el-form-item>
#elseif($column.htmlType == "fileUpload")
<el-form-item label="${comment}" prop="${field}">
<file-upload v-model="form.${field}"/>
</el-form-item>
#elseif($column.htmlType == "editor")
<el-form-item label="${comment}">
<editor v-model="form.${field}" :min-height="192"/>
</el-form-item>
#elseif($column.htmlType == "select" && "" != $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-select v-model="form.${field}" placeholder="请选择${comment}">
<el-option
v-for="dict in dict.type.${dictType}"
:key="dict.value"
:label="dict.label"
#if($column.javaType == "Integer" || $column.javaType == "Long")
:value="parseInt(dict.value)"
#else
:value="dict.value"
#end
></el-option>
</el-select>
</el-form-item>
#elseif($column.htmlType == "select" && $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-select v-model="form.${field}" placeholder="请选择${comment}">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
#elseif($column.htmlType == "checkbox" && "" != $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-checkbox-group v-model="form.${field}">
<el-checkbox
v-for="dict in dict.type.${dictType}"
:key="dict.value"
:label="dict.value">
{{dict.label}}
</el-checkbox>
</el-checkbox-group>
</el-form-item>
#elseif($column.htmlType == "checkbox" && $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-checkbox-group v-model="form.${field}">
<el-checkbox>请选择字典生成</el-checkbox>
</el-checkbox-group>
</el-form-item>
#elseif($column.htmlType == "radio" && "" != $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-radio-group v-model="form.${field}">
<el-radio
v-for="dict in dict.type.${dictType}"
:key="dict.value"
#if($column.javaType == "Integer" || $column.javaType == "Long")
:label="parseInt(dict.value)"
#else
:label="dict.value"
#end
>{{dict.label}}</el-radio>
</el-radio-group>
</el-form-item>
#elseif($column.htmlType == "radio" && $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-radio-group v-model="form.${field}">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
#elseif($column.htmlType == "datetime")
<el-form-item label="${comment}" prop="${field}">
<el-date-picker clearable
v-model="form.${field}"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择${comment}">
</el-date-picker>
</el-form-item>
#elseif($column.htmlType == "textarea")
<el-form-item label="${comment}" prop="${field}">
<el-input v-model="form.${field}" type="textarea" placeholder="请输入内容" />
</el-form-item>
#end
#end
#end
#if($table.sub)
<el-divider content-position="center">${subTable.functionName}信息</el-divider>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAdd${subClassName}">添加</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="danger" icon="el-icon-delete" size="mini" @click="handleDelete${subClassName}">删除</el-button>
</el-col>
</el-row>
<el-table :data="${subclassName}List" :row-class-name="row${subClassName}Index" @selection-change="handle${subClassName}SelectionChange" ref="${subclassName}">
<el-table-column type="selection" width="50" align="center" />
<el-table-column label="序号" align="center" prop="index" width="50"/>
#foreach($column in $subTable.columns)
#set($javaField=$column.javaField)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#if($column.pk || $javaField == ${subTableFkclassName})
#elseif($column.list && $column.htmlType == "input")
<el-table-column label="$comment" prop="${javaField}" width="150">
<template slot-scope="scope">
<el-input v-model="scope.row.$javaField" placeholder="请输入$comment" />
</template>
</el-table-column>
#elseif($column.list && $column.htmlType == "datetime")
<el-table-column label="$comment" prop="${javaField}" width="240">
<template slot-scope="scope">
<el-date-picker clearable v-model="scope.row.$javaField" type="date" value-format="yyyy-MM-dd" placeholder="请选择$comment" />
</template>
</el-table-column>
#elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" != $column.dictType)
<el-table-column label="$comment" prop="${javaField}" width="150">
<template slot-scope="scope">
<el-select v-model="scope.row.$javaField" placeholder="请选择$comment">
<el-option
v-for="dict in dict.type.$column.dictType"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</template>
</el-table-column>
#elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" == $column.dictType)
<el-table-column label="$comment" prop="${javaField}" width="150">
<template slot-scope="scope">
<el-select v-model="scope.row.$javaField" placeholder="请选择$comment">
<el-option label="请选择字典生成" value="" />
</el-select>
</template>
</el-table-column>
#end
#end
</el-table>
#end
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName} } from "@/api/${moduleName}/${businessName}";
export default {
name: "${BusinessName}",
#if(${dicts} != '')
dicts: [${dicts}],
#end
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
#if($table.sub)
// 子表选中数据
checked${subClassName}: [],
#end
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// ${functionName}表格数据
${businessName}List: [],
#if($table.sub)
// ${subTable.functionName}表格数据
${subclassName}List: [],
#end
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
// $comment时间范围
daterange${AttrName}: [],
#end
#end
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
#foreach ($column in $columns)
#if($column.query)
$column.javaField: undefined#if($foreach.count != $columns.size()),#end
#end
#end
},
// 表单参数
form: {},
// 表单校验
rules: {
#foreach ($column in $columns)
#if($column.required)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
$column.javaField: [
{ required: true, message: "$comment不能为空", trigger: #if($column.htmlType == "select" || $column.htmlType == "radio")"change"#else"blur"#end }
]#if($foreach.count != $columns.size()),#end
#end
#end
}
};
},
created() {
this.getList();
},
methods: {
/** 查询${functionName}列表 */
getList() {
this.loading = true;
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
this.queryParams.params = {};
#break
#end
#end
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
if (null != this.daterange${AttrName} && '' != this.daterange${AttrName}) {
this.queryParams.params["begin${AttrName}"] = this.daterange${AttrName}[0];
this.queryParams.params["end${AttrName}"] = this.daterange${AttrName}[1];
}
#end
#end
list${BusinessName}(this.queryParams).then(response => {
this.${businessName}List = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
#foreach ($column in $columns)
#if($column.htmlType == "checkbox")
$column.javaField: []#if($foreach.count != $columns.size()),#end
#else
$column.javaField: undefined#if($foreach.count != $columns.size()),#end
#end
#end
};
#if($table.sub)
this.${subclassName}List = [];
#end
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
this.daterange${AttrName} = [];
#end
#end
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.${pkColumn.javaField})
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加${functionName}";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const ${pkColumn.javaField} = row.${pkColumn.javaField} || this.ids
get${BusinessName}(${pkColumn.javaField}).then(response => {
this.loading = false;
this.form = response.data;
#foreach ($column in $columns)
#if($column.htmlType == "checkbox")
this.form.$column.javaField = this.form.${column.javaField}.split(",");
#end
#end
#if($table.sub)
this.${subclassName}List = response.data.${subclassName}List;
#end
this.open = true;
this.title = "修改${functionName}";
});
},
/** 提交按钮 */
submitForm() {
this.#[[$]]#refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
#foreach ($column in $columns)
#if($column.htmlType == "checkbox")
this.form.$column.javaField = this.form.${column.javaField}.join(",");
#end
#end
#if($table.sub)
this.form.${subclassName}List = this.${subclassName}List;
#end
if (this.form.${pkColumn.javaField} != null) {
update${BusinessName}(this.form).then(response => {
this.#[[$modal]]#.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
add${BusinessName}(this.form).then(response => {
this.#[[$modal]]#.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ${pkColumn.javaField}s = row.${pkColumn.javaField} || this.ids;
this.#[[$modal]]#.confirm('是否确认删除${functionName}编号为"' + ${pkColumn.javaField}s + '"的数据项?').then(() => {
this.loading = true;
return del${BusinessName}(${pkColumn.javaField}s);
}).then(() => {
this.loading = false;
this.getList();
this.#[[$modal]]#.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
#if($table.sub)
/** ${subTable.functionName}序号 */
row${subClassName}Index({ row, rowIndex }) {
row.index = rowIndex + 1;
},
/** ${subTable.functionName}添加按钮操作 */
handleAdd${subClassName}() {
let obj = {};
#foreach($column in $subTable.columns)
#if($column.pk || $column.javaField == ${subTableFkclassName})
#elseif($column.list && "" != $javaField)
obj.$column.javaField = "";
#end
#end
this.${subclassName}List.push(obj);
},
/** ${subTable.functionName}删除按钮操作 */
handleDelete${subClassName}() {
if (this.checked${subClassName}.length == 0) {
this.#[[$modal]]#.msgError("请先选择要删除的${subTable.functionName}数据");
} else {
const ${subclassName}List = this.${subclassName}List;
const checked${subClassName} = this.checked${subClassName};
this.${subclassName}List = ${subclassName}List.filter(function(item) {
return checked${subClassName}.indexOf(item.index) == -1
});
}
},
/** 复选框选中数据 */
handle${subClassName}SelectionChange(selection) {
this.checked${subClassName} = selection.map(item => item.index)
},
#end
/** 导出按钮操作 */
handleExport() {
this.download('${moduleName}/${businessName}/export', {
...this.queryParams
}, `${businessName}_#[[${new Date().getTime()}]]#.xlsx`)
}
}
};
</script>
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
#foreach($column in $columns)
#if($column.query)
#set($dictType=$column.dictType)
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#if($column.htmlType == "input" || $column.htmlType == "textarea")
<el-form-item label="${comment}" prop="${column.javaField}">
<el-input
v-model="queryParams.${column.javaField}"
placeholder="请输入${comment}"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && "" != $dictType)
<el-form-item label="${comment}" prop="${column.javaField}">
<el-select v-model="queryParams.${column.javaField}" placeholder="请选择${comment}" clearable>
<el-option
v-for="dict in ${dictType}"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && $dictType)
<el-form-item label="${comment}" prop="${column.javaField}">
<el-select v-model="queryParams.${column.javaField}" placeholder="请选择${comment}" clearable>
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
#elseif($column.htmlType == "datetime" && $column.queryType != "BETWEEN")
<el-form-item label="${comment}" prop="${column.javaField}">
<el-date-picker clearable
v-model="queryParams.${column.javaField}"
type="date"
value-format="YYYY-MM-DD"
placeholder="选择${comment}">
</el-date-picker>
</el-form-item>
#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
<el-form-item label="${comment}" style="width: 308px">
<el-date-picker
v-model="daterange${AttrName}"
value-format="YYYY-MM-DD HH:mm:ss"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="[new Date(2000, 1, 1, 0, 0, 0), new Date(2000, 1, 1, 23, 59, 59)]"
></el-date-picker>
</el-form-item>
#end
#end
#end
<el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="Plus"
@click="handleAdd"
v-hasPermi="['${moduleName}:${businessName}:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="info"
plain
icon="Sort"
@click="toggleExpandAll"
>展开/折叠</el-button>
</el-col>
<right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table
v-if="refreshTable"
v-loading="loading"
:data="${businessName}List"
row-key="${treeCode}"
:default-expand-all="isExpandAll"
:tree-props="{children: 'children', hasChildren: 'hasChildren'}"
>
#foreach($column in $columns)
#set($javaField=$column.javaField)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#if($column.pk)
#elseif($column.list && $column.htmlType == "datetime")
<el-table-column label="${comment}" align="center" prop="${javaField}" width="180">
<template #default="scope">
<span>{{ parseTime(scope.row.${javaField}, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
#elseif($column.list && $column.htmlType == "imageUpload")
<el-table-column label="${comment}" align="center" prop="${javaField}" width="100">
<template #default="scope">
<image-preview :src="scope.row.${javaField}" :width="50" :height="50"/>
</template>
</el-table-column>
#elseif($column.list && $column.dictType && "" != $column.dictType)
<el-table-column label="${comment}" align="center" prop="${javaField}">
<template #default="scope">
#if($column.htmlType == "checkbox")
<dict-tag :options="${column.dictType}" :value="scope.row.${javaField} ? scope.row.${javaField}.split(',') : []"/>
#else
<dict-tag :options="${column.dictType}" :value="scope.row.${javaField}"/>
#end
</template>
</el-table-column>
#elseif($column.list && "" != $javaField)
#if(${foreach.index} == 1)
<el-table-column label="${comment}" prop="${javaField}" />
#else
<el-table-column label="${comment}" align="center" prop="${javaField}" />
#end
#end
#end
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template #default="scope">
<el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)" v-hasPermi="['${moduleName}:${businessName}:edit']">修改</el-button>
<el-button link type="primary" icon="Plus" @click="handleAdd(scope.row)" v-hasPermi="['${moduleName}:${businessName}:add']">新增</el-button>
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)" v-hasPermi="['${moduleName}:${businessName}:remove']">删除</el-button>
</template>
</el-table-column>
</el-table>
<!-- 添加或修改${functionName}对话框 -->
<el-dialog :title="title" v-model="open" width="500px" append-to-body>
<el-form ref="${businessName}Ref" :model="form" :rules="rules" label-width="80px">
#foreach($column in $columns)
#set($field=$column.javaField)
#if($column.insert && !$column.pk)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#set($dictType=$column.dictType)
#if("" != $treeParentCode && $column.javaField == $treeParentCode)
<el-form-item label="${comment}" prop="${treeParentCode}">
<el-tree-select
v-model="form.${treeParentCode}"
:data="${businessName}Options"
:props="{ value: '${treeCode}', label: '${treeName}', children: 'children' }"
value-key="${treeCode}"
placeholder="请选择${comment}"
check-strictly
/>
</el-form-item>
#elseif($column.htmlType == "input")
<el-form-item label="${comment}" prop="${field}">
<el-input v-model="form.${field}" placeholder="请输入${comment}" />
</el-form-item>
#elseif($column.htmlType == "imageUpload")
<el-form-item label="${comment}" prop="${field}">
<image-upload v-model="form.${field}"/>
</el-form-item>
#elseif($column.htmlType == "fileUpload")
<el-form-item label="${comment}" prop="${field}">
<file-upload v-model="form.${field}"/>
</el-form-item>
#elseif($column.htmlType == "editor")
<el-form-item label="${comment}">
<editor v-model="form.${field}" :min-height="192"/>
</el-form-item>
#elseif($column.htmlType == "select" && "" != $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-select v-model="form.${field}" placeholder="请选择${comment}">
<el-option
v-for="dict in ${dictType}"
:key="dict.value"
:label="dict.label"
#if($column.javaType == "Integer" || $column.javaType == "Long")
:value="parseInt(dict.value)"
#else
:value="dict.value"
#end
></el-option>
</el-select>
</el-form-item>
#elseif($column.htmlType == "select" && $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-select v-model="form.${field}" placeholder="请选择${comment}">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
#elseif($column.htmlType == "checkbox" && "" != $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-checkbox-group v-model="form.${field}">
<el-checkbox
v-for="dict in ${dictType}"
:key="dict.value"
:label="dict.value">
{{dict.label}}
</el-checkbox>
</el-checkbox-group>
</el-form-item>
#elseif($column.htmlType == "checkbox" && $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-checkbox-group v-model="form.${field}">
<el-checkbox>请选择字典生成</el-checkbox>
</el-checkbox-group>
</el-form-item>
#elseif($column.htmlType == "radio" && "" != $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-radio-group v-model="form.${field}">
<el-radio
v-for="dict in ${dictType}"
:key="dict.value"
#if($column.javaType == "Integer" || $column.javaType == "Long")
:label="parseInt(dict.value)"
#else
:label="dict.value"
#end
>{{dict.label}}</el-radio>
</el-radio-group>
</el-form-item>
#elseif($column.htmlType == "radio" && $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-radio-group v-model="form.${field}">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
#elseif($column.htmlType == "datetime")
<el-form-item label="${comment}" prop="${field}">
<el-date-picker clearable
v-model="form.${field}"
type="datetime"
value-format="YYYY-MM-DD HH:mm:ss"
placeholder="选择${comment}">
</el-date-picker>
</el-form-item>
#elseif($column.htmlType == "textarea")
<el-form-item label="${comment}" prop="${field}">
<el-input v-model="form.${field}" type="textarea" placeholder="请输入内容" />
</el-form-item>
#end
#end
#end
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</template>
</el-dialog>
</div>
</template>
<script setup name="${BusinessName}">
import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName} } from "@/api/${moduleName}/${businessName}";
const { proxy } = getCurrentInstance();
#if(${dicts} != '')
#set($dictsNoSymbol=$dicts.replace("'", ""))
const { ${dictsNoSymbol} } = proxy.useDict(${dicts});
#end
const ${businessName}List = ref([]);
const ${businessName}Options = ref([]);
const open = ref(false);
const buttonLoading = ref(false);
const loading = ref(true);
const showSearch = ref(true);
const title = ref("");
const isExpandAll = ref(true);
const refreshTable = ref(true);
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
const daterange${AttrName} = ref([]);
#end
#end
const data = reactive({
form: {},
queryParams: {
#foreach ($column in $columns)
#if($column.query)
$column.javaField: undefined#if($foreach.count != $columns.size()),#end
#end
#end
},
rules: {
#foreach ($column in $columns)
#if($column.required)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
$column.javaField: [
{ required: true, message: "$comment不能为空", trigger: #if($column.htmlType == "select" || $column.htmlType == "radio")"change"#else"blur"#end }
]#if($foreach.count != $columns.size()),#end
#end
#end
}
});
const { queryParams, form, rules } = toRefs(data);
/** 查询${functionName}列表 */
function getList() {
loading.value = true;
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
queryParams.value.params = {};
#break
#end
#end
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
if (null != daterange${AttrName} && '' != daterange${AttrName}) {
queryParams.value.params["begin${AttrName}"] = daterange${AttrName}.value[0];
queryParams.value.params["end${AttrName}"] = daterange${AttrName}.value[1];
}
#end
#end
list${BusinessName}(queryParams.value).then(response => {
${businessName}List.value = proxy.handleTree(response.data, "${treeCode}", "${treeParentCode}");
loading.value = false;
});
}
/** 查询${functionName}下拉树结构 */
function getTreeselect() {
list${BusinessName}().then(response => {
${businessName}Options.value = [];
const data = { ${treeCode}: 0, ${treeName}: '顶级节点', children: [] };
data.children = proxy.handleTree(response.data, "${treeCode}", "${treeParentCode}");
${businessName}Options.value.push(data);
});
}
// 取消按钮
function cancel() {
open.value = false;
reset();
}
// 表单重置
function reset() {
form.value = {
#foreach ($column in $columns)
#if($column.htmlType == "checkbox")
$column.javaField: []#if($foreach.count != $columns.size()),#end
#else
$column.javaField: null#if($foreach.count != $columns.size()),#end
#end
#end
};
proxy.resetForm("${businessName}Ref");
}
/** 搜索按钮操作 */
function handleQuery() {
getList();
}
/** 重置按钮操作 */
function resetQuery() {
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
daterange${AttrName}.value = [];
#end
#end
proxy.resetForm("queryRef");
handleQuery();
}
/** 新增按钮操作 */
function handleAdd(row) {
reset();
getTreeselect();
if (row != null && row.${treeCode}) {
form.value.${treeParentCode} = row.${treeCode};
} else {
form.value.${treeParentCode} = 0;
}
open.value = true;
title.value = "添加${functionName}";
}
/** 展开/折叠操作 */
function toggleExpandAll() {
refreshTable.value = false;
isExpandAll.value = !isExpandAll.value;
nextTick(() => {
refreshTable.value = true;
});
}
/** 修改按钮操作 */
async function handleUpdate(row) {
loading.value = true;
reset();
await getTreeselect();
if (row != null) {
form.value.${treeParentCode} = row.${treeParentCode};
}
get${BusinessName}(row.${pkColumn.javaField}).then(response => {
loading.value = false;
form.value = response.data;
#foreach ($column in $columns)
#if($column.htmlType == "checkbox")
form.value.$column.javaField = form.value.${column.javaField}.split(",");
#end
#end
open.value = true;
title.value = "修改${functionName}";
});
}
/** 提交按钮 */
function submitForm() {
proxy.#[[$]]#refs["${businessName}Ref"].validate(valid => {
if (valid) {
buttonLoading.value = true;
#foreach ($column in $columns)
#if($column.htmlType == "checkbox")
form.value.$column.javaField = form.value.${column.javaField}.join(",");
#end
#end
if (form.value.${pkColumn.javaField} != null) {
update${BusinessName}(form.value).then(response => {
proxy.#[[$modal]]#.msgSuccess("修改成功");
open.value = false;
getList();
}).finally(() => {
buttonLoading.value = false;
});
} else {
add${BusinessName}(form.value).then(response => {
proxy.#[[$modal]]#.msgSuccess("新增成功");
open.value = false;
getList();
}).finally(() => {
buttonLoading.value = false;
});
}
}
});
}
/** 删除按钮操作 */
function handleDelete(row) {
proxy.#[[$modal]]#.confirm('是否确认删除${functionName}编号为"' + row.${pkColumn.javaField} + '"的数据项?').then(function() {
loading.value = true;
return del${BusinessName}(row.${pkColumn.javaField});
}).then(() => {
loading.value = false;
getList();
proxy.#[[$modal]]#.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
loading.value = false;
});
}
getList();
</script>
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
#foreach($column in $columns)
#if($column.query)
#set($dictType=$column.dictType)
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#if($column.htmlType == "input" || $column.htmlType == "textarea")
<el-form-item label="${comment}" prop="${column.javaField}">
<el-input
v-model="queryParams.${column.javaField}"
placeholder="请输入${comment}"
clearable
@keyup.enter="handleQuery"
/>
</el-form-item>
#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && "" != $dictType)
<el-form-item label="${comment}" prop="${column.javaField}">
<el-select v-model="queryParams.${column.javaField}" placeholder="请选择${comment}" clearable>
<el-option
v-for="dict in ${dictType}"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && $dictType)
<el-form-item label="${comment}" prop="${column.javaField}">
<el-select v-model="queryParams.${column.javaField}" placeholder="请选择${comment}" clearable>
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
#elseif($column.htmlType == "datetime" && $column.queryType != "BETWEEN")
<el-form-item label="${comment}" prop="${column.javaField}">
<el-date-picker clearable
v-model="queryParams.${column.javaField}"
type="date"
value-format="YYYY-MM-DD"
placeholder="请选择${comment}">
</el-date-picker>
</el-form-item>
#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
<el-form-item label="${comment}" style="width: 308px">
<el-date-picker
v-model="daterange${AttrName}"
value-format="YYYY-MM-DD HH:mm:ss"
type="daterange"
range-separator="-"
start-placeholder="开始日期"
:default-time="[new Date(2000, 1, 1, 0, 0, 0), new Date(2000, 1, 1, 23, 59, 59)]"
></el-date-picker>
</el-form-item>
#end
#end
#end
<el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="Plus"
@click="handleAdd"
v-hasPermi="['${moduleName}:${businessName}:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="Edit"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['${moduleName}:${businessName}:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="Delete"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['${moduleName}:${businessName}:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="Download"
@click="handleExport"
v-hasPermi="['${moduleName}:${businessName}:export']"
>导出</el-button>
</el-col>
<right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="${businessName}List" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
#foreach($column in $columns)
#set($javaField=$column.javaField)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#if($column.pk)
<el-table-column label="${comment}" align="center" prop="${javaField}" v-if="${column.list}"/>
#elseif($column.list && $column.htmlType == "datetime")
<el-table-column label="${comment}" align="center" prop="${javaField}" width="180">
<template #default="scope">
<span>{{ parseTime(scope.row.${javaField}, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
#elseif($column.list && $column.htmlType == "imageUpload")
<el-table-column label="${comment}" align="center" prop="${javaField}" width="100">
<template #default="scope">
<image-preview :src="scope.row.${javaField}" :width="50" :height="50"/>
</template>
</el-table-column>
#elseif($column.list && $column.dictType && "" != $column.dictType)
<el-table-column label="${comment}" align="center" prop="${javaField}">
<template #default="scope">
#if($column.htmlType == "checkbox")
<dict-tag :options="${column.dictType}" :value="scope.row.${javaField} ? scope.row.${javaField}.split(',') : []"/>
#else
<dict-tag :options="${column.dictType}" :value="scope.row.${javaField}"/>
#end
</template>
</el-table-column>
#elseif($column.list && "" != $javaField)
<el-table-column label="${comment}" align="center" prop="${javaField}" />
#end
#end
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template #default="scope">
<el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)" v-hasPermi="['${moduleName}:${businessName}:edit']">修改</el-button>
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)" v-hasPermi="['${moduleName}:${businessName}:remove']">删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
v-model:page="queryParams.pageNum"
v-model:limit="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改${functionName}对话框 -->
<el-dialog :title="title" v-model="open" width="500px" append-to-body>
<el-form ref="${businessName}Ref" :model="form" :rules="rules" label-width="80px">
#foreach($column in $columns)
#set($field=$column.javaField)
#if($column.insert && !$column.pk)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#set($dictType=$column.dictType)
#if($column.htmlType == "input")
<el-form-item label="${comment}" prop="${field}">
<el-input v-model="form.${field}" placeholder="请输入${comment}" />
</el-form-item>
#elseif($column.htmlType == "imageUpload")
<el-form-item label="${comment}" prop="${field}">
<image-upload v-model="form.${field}"/>
</el-form-item>
#elseif($column.htmlType == "fileUpload")
<el-form-item label="${comment}" prop="${field}">
<file-upload v-model="form.${field}"/>
</el-form-item>
#elseif($column.htmlType == "editor")
<el-form-item label="${comment}">
<editor v-model="form.${field}" :min-height="192"/>
</el-form-item>
#elseif($column.htmlType == "select" && "" != $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-select v-model="form.${field}" placeholder="请选择${comment}">
<el-option
v-for="dict in ${dictType}"
:key="dict.value"
:label="dict.label"
#if($column.javaType == "Integer" || $column.javaType == "Long")
:value="parseInt(dict.value)"
#else
:value="dict.value"
#end
></el-option>
</el-select>
</el-form-item>
#elseif($column.htmlType == "select" && $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-select v-model="form.${field}" placeholder="请选择${comment}">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
#elseif($column.htmlType == "checkbox" && "" != $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-checkbox-group v-model="form.${field}">
<el-checkbox
v-for="dict in ${dictType}"
:key="dict.value"
:label="dict.value">
{{dict.label}}
</el-checkbox>
</el-checkbox-group>
</el-form-item>
#elseif($column.htmlType == "checkbox" && $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-checkbox-group v-model="form.${field}">
<el-checkbox>请选择字典生成</el-checkbox>
</el-checkbox-group>
</el-form-item>
#elseif($column.htmlType == "radio" && "" != $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-radio-group v-model="form.${field}">
<el-radio
v-for="dict in ${dictType}"
:key="dict.value"
#if($column.javaType == "Integer" || $column.javaType == "Long")
:label="parseInt(dict.value)"
#else
:label="dict.value"
#end
>{{dict.label}}</el-radio>
</el-radio-group>
</el-form-item>
#elseif($column.htmlType == "radio" && $dictType)
<el-form-item label="${comment}" prop="${field}">
<el-radio-group v-model="form.${field}">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
#elseif($column.htmlType == "datetime")
<el-form-item label="${comment}" prop="${field}">
<el-date-picker clearable
v-model="form.${field}"
type="datetime"
value-format="YYYY-MM-DD HH:mm:ss"
placeholder="请选择${comment}">
</el-date-picker>
</el-form-item>
#elseif($column.htmlType == "textarea")
<el-form-item label="${comment}" prop="${field}">
<el-input v-model="form.${field}" type="textarea" placeholder="请输入内容" />
</el-form-item>
#end
#end
#end
#if($table.sub)
<el-divider content-position="center">${subTable.functionName}信息</el-divider>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" icon="Plus" @click="handleAdd${subClassName}">添加</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="danger" icon="Delete" @click="handleDelete${subClassName}">删除</el-button>
</el-col>
</el-row>
<el-table :data="${subclassName}List" :row-class-name="row${subClassName}Index" @selection-change="handle${subClassName}SelectionChange" ref="${subclassName}">
<el-table-column type="selection" width="50" align="center" />
<el-table-column label="序号" align="center" prop="index" width="50"/>
#foreach($column in $subTable.columns)
#set($javaField=$column.javaField)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
#if($column.pk || $javaField == ${subTableFkclassName})
#elseif($column.list && $column.htmlType == "input")
<el-table-column label="$comment" prop="${javaField}" width="150">
<template #default="scope">
<el-input v-model="scope.row.$javaField" placeholder="请输入$comment" />
</template>
</el-table-column>
#elseif($column.list && $column.htmlType == "datetime")
<el-table-column label="$comment" prop="${javaField}" width="240">
<template #default="scope">
<el-date-picker clearable
v-model="scope.row.$javaField"
type="date"
value-format="YYYY-MM-DD"
placeholder="请选择$comment">
</el-date-picker>
</template>
</el-table-column>
#elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" != $column.dictType)
<el-table-column label="$comment" prop="${javaField}" width="150">
<template #default="scope">
<el-select v-model="scope.row.$javaField" placeholder="请选择$comment">
<el-option
v-for="dict in $column.dictType"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</template>
</el-table-column>
#elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" == $column.dictType)
<el-table-column label="$comment" prop="${javaField}" width="150">
<template #default="scope">
<el-select v-model="scope.row.$javaField" placeholder="请选择$comment">
<el-option label="请选择字典生成" value="" />
</el-select>
</template>
</el-table-column>
#end
#end
</el-table>
#end
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</template>
</el-dialog>
</div>
</template>
<script setup name="${BusinessName}">
import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName} } from "@/api/${moduleName}/${businessName}";
const { proxy } = getCurrentInstance();
#if(${dicts} != '')
#set($dictsNoSymbol=$dicts.replace("'", ""))
const { ${dictsNoSymbol} } = proxy.useDict(${dicts});
#end
const ${businessName}List = ref([]);
#if($table.sub)
const ${subclassName}List = ref([]);
#end
const open = ref(false);
const buttonLoading = ref(false);
const loading = ref(true);
const showSearch = ref(true);
const ids = ref([]);
#if($table.sub)
const checked${subClassName} = ref([]);
#end
const single = ref(true);
const multiple = ref(true);
const total = ref(0);
const title = ref("");
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
const daterange${AttrName} = ref([]);
#end
#end
const data = reactive({
form: {},
queryParams: {
pageNum: 1,
pageSize: 10,
#foreach ($column in $columns)
#if($column.query)
$column.javaField: undefined#if($foreach.count != $columns.size()),#end
#end
#end
},
rules: {
#foreach ($column in $columns)
#if($column.required)
#set($parentheseIndex=$column.columnComment.indexOf("("))
#if($parentheseIndex != -1)
#set($comment=$column.columnComment.substring(0, $parentheseIndex))
#else
#set($comment=$column.columnComment)
#end
$column.javaField: [
{ required: true, message: "$comment不能为空", trigger: #if($column.htmlType == "select" || $column.htmlType == "radio")"change"#else"blur"#end }
]#if($foreach.count != $columns.size()),#end
#end
#end
}
});
const { queryParams, form, rules } = toRefs(data);
/** 查询${functionName}列表 */
function getList() {
loading.value = true;
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
queryParams.value.params = {};
#break
#end
#end
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
if (null != daterange${AttrName} && '' != daterange${AttrName}) {
queryParams.value.params["begin${AttrName}"] = daterange${AttrName}.value[0];
queryParams.value.params["end${AttrName}"] = daterange${AttrName}.value[1];
}
#end
#end
list${BusinessName}(queryParams.value).then(response => {
${businessName}List.value = response.rows;
total.value = response.total;
loading.value = false;
});
}
// 取消按钮
function cancel() {
open.value = false;
reset();
}
// 表单重置
function reset() {
form.value = {
#foreach ($column in $columns)
#if($column.htmlType == "checkbox")
$column.javaField: []#if($foreach.count != $columns.size()),#end
#else
$column.javaField: null#if($foreach.count != $columns.size()),#end
#end
#end
};
#if($table.sub)
${subclassName}List.value = [];
#end
proxy.resetForm("${businessName}Ref");
}
/** 搜索按钮操作 */
function handleQuery() {
queryParams.value.pageNum = 1;
getList();
}
/** 重置按钮操作 */
function resetQuery() {
#foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
daterange${AttrName}.value = [];
#end
#end
proxy.resetForm("queryRef");
handleQuery();
}
// 多选框选中数据
function handleSelectionChange(selection) {
ids.value = selection.map(item => item.${pkColumn.javaField});
single.value = selection.length != 1;
multiple.value = !selection.length;
}
/** 新增按钮操作 */
function handleAdd() {
reset();
open.value = true;
title.value = "添加${functionName}";
}
/** 修改按钮操作 */
function handleUpdate(row) {
loading.value = true
reset();
const _${pkColumn.javaField} = row.${pkColumn.javaField} || ids.value
get${BusinessName}(_${pkColumn.javaField}).then(response => {
loading.value = false;
form.value = response.data;
#foreach ($column in $columns)
#if($column.htmlType == "checkbox")
form.value.$column.javaField = form.value.${column.javaField}.split(",");
#end
#end
#if($table.sub)
${subclassName}List.value = response.data.${subclassName}List;
#end
open.value = true;
title.value = "修改${functionName}";
});
}
/** 提交按钮 */
function submitForm() {
proxy.#[[$]]#refs["${businessName}Ref"].validate(valid => {
if (valid) {
buttonLoading.value = true;
#foreach ($column in $columns)
#if($column.htmlType == "checkbox")
form.value.$column.javaField = form.value.${column.javaField}.join(",");
#end
#end
#if($table.sub)
form.value.${subclassName}List = ${subclassName}List.value;
#end
if (form.value.${pkColumn.javaField} != null) {
update${BusinessName}(form.value).then(response => {
proxy.#[[$modal]]#.msgSuccess("修改成功");
open.value = false;
getList();
}).finally(() => {
buttonLoading.value = false;
});
} else {
add${BusinessName}(form.value).then(response => {
proxy.#[[$modal]]#.msgSuccess("新增成功");
open.value = false;
getList();
}).finally(() => {
buttonLoading.value = false;
});
}
}
});
}
/** 删除按钮操作 */
function handleDelete(row) {
const _${pkColumn.javaField}s = row.${pkColumn.javaField} || ids.value;
proxy.#[[$modal]]#.confirm('是否确认删除${functionName}编号为"' + _${pkColumn.javaField}s + '"的数据项?').then(function() {
loading.value = true;
return del${BusinessName}(_${pkColumn.javaField}s);
}).then(() => {
loading.value = true;
getList();
proxy.#[[$modal]]#.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
loading.value = false;
});
}
#if($table.sub)
/** ${subTable.functionName}序号 */
function row${subClassName}Index({ row, rowIndex }) {
row.index = rowIndex + 1;
}
/** ${subTable.functionName}添加按钮操作 */
function handleAdd${subClassName}() {
let obj = {};
#foreach($column in $subTable.columns)
#if($column.pk || $column.javaField == ${subTableFkclassName})
#elseif($column.list && "" != $javaField)
obj.$column.javaField = "";
#end
#end
${subclassName}List.value.push(obj);
}
/** ${subTable.functionName}删除按钮操作 */
function handleDelete${subClassName}() {
if (checked${subClassName}.value.length == 0) {
proxy.#[[$modal]]#.msgError("请先选择要删除的${subTable.functionName}数据");
} else {
const ${subclassName}s = ${subclassName}List.value;
const checked${subClassName}s = checked${subClassName}.value;
${subclassName}List.value = ${subclassName}s.filter(function(item) {
return checked${subClassName}s.indexOf(item.index) == -1
});
}
}
/** 复选框选中数据 */
function handle${subClassName}SelectionChange(selection) {
checked${subClassName}.value = selection.map(item => item.index)
}
#end
/** 导出按钮操作 */
function handleExport() {
proxy.download('${moduleName}/${businessName}/export', {
...queryParams.value
}, `${businessName}_#[[${new Date().getTime()}]]#.xlsx`)
}
getList();
</script>
如果使用的是Vue3前端,那么需要覆盖一下此目录的模板index.vue.vm、index-tree.vue.vm文件到上级vue目录。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="${packageName}.mapper.${ClassName}Mapper">
<resultMap type="${packageName}.domain.${ClassName}" id="${ClassName}Result">
#foreach ($column in $columns)
<result property="${column.javaField}" column="${column.columnName}"/>
#end
</resultMap>
</mapper>
com\lego\generator\controller\GenController.class
com\lego\generator\domain\GenTable.class
com\lego\generator\mapper\GenTableMapper__Javadoc.json
com\lego\generator\util\VelocityUtils.class
com\lego\generator\service\IGenTableService__Javadoc.json
META-INF\spring-configuration-metadata.json
com\lego\generator\mapper\GenTableColumnMapper.class
com\lego\generator\util\GenUtils.class
com\lego\generator\util\VelocityInitializer.class
com\lego\generator\domain\GenTableColumn.class
com\lego\generator\config\GenConfig.class
com\lego\generator\service\GenTableServiceImpl__Javadoc.json
com\lego\generator\util\VelocityUtils__Javadoc.json
com\lego\generator\domain\GenTableColumn__Javadoc.json
com\lego\generator\mapper\GenTableMapper.class
com\lego\generator\mapper\GenTableColumnMapper__Javadoc.json
com\lego\generator\service\GenTableServiceImpl.class
com\lego\generator\service\IGenTableService.class
com\lego\generator\config\GenConfig__Javadoc.json
com\lego\generator\util\VelocityInitializer__Javadoc.json
com\lego\generator\controller\GenController__Javadoc.json
com\lego\generator\domain\GenTable__Javadoc.json
com\lego\generator\util\GenUtils__Javadoc.json
F:\workspace\lego-manage\lego-generator\src\main\java\com\lego\generator\controller\GenController.java
F:\workspace\lego-manage\lego-generator\src\main\java\com\lego\generator\mapper\GenTableMapper.java
F:\workspace\lego-manage\lego-generator\src\main\java\com\lego\generator\domain\GenTable.java
F:\workspace\lego-manage\lego-generator\src\main\java\com\lego\generator\domain\GenTableColumn.java
F:\workspace\lego-manage\lego-generator\src\main\java\com\lego\generator\config\GenConfig.java
F:\workspace\lego-manage\lego-generator\src\main\java\com\lego\generator\service\GenTableServiceImpl.java
F:\workspace\lego-manage\lego-generator\src\main\java\com\lego\generator\service\IGenTableService.java
F:\workspace\lego-manage\lego-generator\src\main\java\com\lego\generator\util\VelocityInitializer.java
F:\workspace\lego-manage\lego-generator\src\main\java\com\lego\generator\util\GenUtils.java
F:\workspace\lego-manage\lego-generator\src\main\java\com\lego\generator\util\VelocityUtils.java
F:\workspace\lego-manage\lego-generator\src\main\java\com\lego\generator\mapper\GenTableColumnMapper.java
{"doc":" 对象存储常量\n\n @author Lion Li\n","fields":[{"name":"DEFAULT_CONFIG_KEY","doc":" 默认配置KEY\n"},{"name":"PEREVIEW_LIST_RESOURCE_KEY","doc":" 预览列表资源开关Key\n"},{"name":"SYSTEM_DATA_IDS","doc":" 系统数据ids\n"},{"name":"CLOUD_SERVICE","doc":" 云服务商\n"},{"name":"IS_HTTPS","doc":" https 状态\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" S3 存储协议 所有兼容S3协议的云厂商均支持\n 阿里云 腾讯云 七牛云 minio\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"getObjectMetadata","paramTypes":["java.lang.String"],"doc":" 获取文件元数据\n\n @param path 完整文件路径\n"},{"name":"getPrivateUrl","paramTypes":["java.lang.String","java.lang.Integer"],"doc":" 获取私有URL链接\n\n @param objectKey 对象KEY\n @param second 授权时间\n"},{"name":"checkPropertiesSame","paramTypes":["com.lego.oss.properties.OssProperties"],"doc":" 检查配置是否相同\n"},{"name":"getAccessPolicy","paramTypes":[],"doc":" 获取当前桶权限类型\n\n @return 当前桶权限类型code\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 上传返回体\n\n @author Lion Li\n","fields":[{"name":"url","doc":" 文件路径\n"},{"name":"filename","doc":" 文件名\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 桶访问策略配置\n\n @author 陈賝\n","fields":[{"name":"type","doc":" 桶 权限类型\n"},{"name":"acl","doc":" 文件对象 权限类型\n"},{"name":"policyType","doc":" 桶策略类型\n"}],"enumConstants":[{"name":"PRIVATE","doc":" private\n"},{"name":"PUBLIC","doc":" public\n"},{"name":"CUSTOM","doc":" custom\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" minio策略配置\n\n @author Lion Li\n","fields":[{"name":"type","doc":" 类型\n"}],"enumConstants":[{"name":"READ","doc":" 只读\n"},{"name":"WRITE","doc":" 只写\n"},{"name":"READ_WRITE","doc":" 读写\n"}],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" OSS异常类\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 文件上传Factory\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"instance","paramTypes":[],"doc":" 获取默认实例\n"},{"name":"instance","paramTypes":["java.lang.String"],"doc":" 根据类型获取实例\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" OSS对象存储 配置属性\n\n @author Lion Li\n","fields":[{"name":"endpoint","doc":" 访问站点\n"},{"name":"domain","doc":" 自定义域名\n"},{"name":"prefix","doc":" 前缀\n"},{"name":"accessKey","doc":" ACCESS_KEY\n"},{"name":"secretKey","doc":" SECRET_KEY\n"},{"name":"bucketName","doc":" 存储空间名\n"},{"name":"region","doc":" 存储区域\n"},{"name":"isHttps","doc":" 是否https(Y=是,N=否)\n"},{"name":"accessPolicy","doc":" 桶权限类型(0private 1public 2custom)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
com\lego\oss\entity\UploadResult.class
com\lego\oss\exception\OssException.class
com\lego\oss\enumd\PolicyType__Javadoc.json
com\lego\oss\factory\OssFactory.class
com\lego\oss\entity\UploadResult$UploadResultBuilder.class
com\lego\oss\exception\OssException__Javadoc.json
com\lego\oss\enumd\AccessPolicyType.class
com\lego\oss\constant\OssConstant__Javadoc.json
com\lego\oss\core\OssClient.class
com\lego\oss\properties\OssProperties__Javadoc.json
com\lego\oss\core\OssClient__Javadoc.json
com\lego\oss\factory\OssFactory__Javadoc.json
com\lego\oss\entity\UploadResult__Javadoc.json
com\lego\oss\properties\OssProperties.class
com\lego\oss\enumd\PolicyType.class
com\lego\oss\enumd\AccessPolicyType__Javadoc.json
com\lego\oss\constant\OssConstant.class
com\lego\oss\core\OssClient$1.class
F:\workspace\lego-manage\lego-oss\src\main\java\com\lego\oss\exception\OssException.java
F:\workspace\lego-manage\lego-oss\src\main\java\com\lego\oss\core\OssClient.java
F:\workspace\lego-manage\lego-oss\src\main\java\com\lego\oss\entity\UploadResult.java
F:\workspace\lego-manage\lego-oss\src\main\java\com\lego\oss\enumd\AccessPolicyType.java
F:\workspace\lego-manage\lego-oss\src\main\java\com\lego\oss\enumd\PolicyType.java
F:\workspace\lego-manage\lego-oss\src\main\java\com\lego\oss\constant\OssConstant.java
F:\workspace\lego-manage\lego-oss\src\main\java\com\lego\oss\factory\OssFactory.java
F:\workspace\lego-manage\lego-oss\src\main\java\com\lego\oss\properties\OssProperties.java
{"doc":" 缓存信息\n\n @author Lion Li\n","fields":[{"name":"cacheName","doc":" 缓存名称\n"},{"name":"cacheKey","doc":" 缓存键名\n"},{"name":"cacheValue","doc":" 缓存内容\n"},{"name":"remark","doc":" 备注\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 参数配置表 sys_config\n\n @author Lion Li\n","fields":[{"name":"configId","doc":" 参数主键\n"},{"name":"configName","doc":" 参数名称\n"},{"name":"configKey","doc":" 参数键名\n"},{"name":"configValue","doc":" 参数键值\n"},{"name":"configType","doc":" 系统内置(Y是 N否)\n"},{"name":"remark","doc":" 备注\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 枚举对象 sys_enumeration\n\n @author gyongyi\n @date 2024-07-19\n","fields":[{"name":"enumerationId","doc":" 枚举数据\n"},{"name":"type","doc":" 枚举类型\n"},{"name":"label","doc":" 类型名称\n"},{"name":"value","doc":" 类型值\n"},{"name":"parentId","doc":" 父枚举id\n"},{"name":"delFlag","doc":" 删除标志 0存在 1删除\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 系统访问记录表 sys_logininfor\n\n @author Lion Li\n","fields":[{"name":"infoId","doc":" ID\n"},{"name":"userName","doc":" 用户账号\n"},{"name":"status","doc":" 登录状态 0成功 1失败\n"},{"name":"ipaddr","doc":" 登录IP地址\n"},{"name":"loginLocation","doc":" 登录地点\n"},{"name":"browser","doc":" 浏览器类型\n"},{"name":"os","doc":" 操作系统\n"},{"name":"msg","doc":" 提示消息\n"},{"name":"loginTime","doc":" 访问时间\n"},{"name":"params","doc":" 请求参数\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 通知公告表 sys_notice\n\n @author Lion Li\n","fields":[{"name":"noticeId","doc":" 公告ID\n"},{"name":"noticeTitle","doc":" 公告标题\n"},{"name":"noticeType","doc":" 公告类型(1通知 2公告)\n"},{"name":"noticeContent","doc":" 公告内容\n"},{"name":"status","doc":" 公告状态(0正常 1关闭)\n"},{"name":"remark","doc":" 备注\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 操作日志记录表 oper_log\n\n @author Lion Li\n","fields":[{"name":"operId","doc":" 日志主键\n"},{"name":"title","doc":" 操作模块\n"},{"name":"businessType","doc":" 业务类型(0其它 1新增 2修改 3删除)\n"},{"name":"businessTypes","doc":" 业务类型数组\n"},{"name":"method","doc":" 请求方法\n"},{"name":"requestMethod","doc":" 请求方式\n"},{"name":"operatorType","doc":" 操作类别(0其它 1后台用户 2手机端用户)\n"},{"name":"operName","doc":" 操作人员\n"},{"name":"deptName","doc":" 部门名称\n"},{"name":"operUrl","doc":" 请求url\n"},{"name":"operIp","doc":" 操作地址\n"},{"name":"operLocation","doc":" 操作地点\n"},{"name":"operParam","doc":" 请求参数\n"},{"name":"jsonResult","doc":" 返回参数\n"},{"name":"status","doc":" 操作状态(0正常 1异常)\n"},{"name":"errorMsg","doc":" 错误消息\n"},{"name":"operTime","doc":" 操作时间\n"},{"name":"params","doc":" 请求参数\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 对象存储配置对象 sys_oss_config\n\n @author Lion Li\n","fields":[{"name":"ossConfigId","doc":" 主建\n"},{"name":"configKey","doc":" 配置key\n"},{"name":"accessKey","doc":" accessKey\n"},{"name":"secretKey","doc":" 秘钥\n"},{"name":"bucketName","doc":" 桶名称\n"},{"name":"prefix","doc":" 前缀\n"},{"name":"endpoint","doc":" 访问站点\n"},{"name":"domain","doc":" 自定义域名\n"},{"name":"isHttps","doc":" 是否https(0否 1是)\n"},{"name":"region","doc":" 域\n"},{"name":"status","doc":" 是否默认(0=是,1=否)\n"},{"name":"ext1","doc":" 扩展字段\n"},{"name":"remark","doc":" 备注\n"},{"name":"accessPolicy","doc":" 桶权限类型(0private 1public 2custom)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" OSS对象存储对象\n\n @author Lion Li\n","fields":[{"name":"ossId","doc":" 对象存储主键\n"},{"name":"fileName","doc":" 文件名\n"},{"name":"originalName","doc":" 原名\n"},{"name":"fileSuffix","doc":" 文件后缀名\n"},{"name":"url","doc":" URL地址\n"},{"name":"service","doc":" 服务商\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 岗位表 sys_post\n\n @author Lion Li\n","fields":[{"name":"postId","doc":" 岗位序号\n"},{"name":"postCode","doc":" 岗位编码\n"},{"name":"postName","doc":" 岗位名称\n"},{"name":"postSort","doc":" 岗位排序\n"},{"name":"status","doc":" 状态(0正常 1停用)\n"},{"name":"remark","doc":" 备注\n"},{"name":"flag","doc":" 用户是否存在此岗位标识 默认不存在\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 角色和部门关联 sys_role_dept\n\n @author Lion Li\n","fields":[{"name":"roleId","doc":" 角色ID\n"},{"name":"deptId","doc":" 部门ID\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 角色和菜单关联 sys_role_menu\n\n @author Lion Li\n","fields":[{"name":"roleId","doc":" 角色ID\n"},{"name":"menuId","doc":" 菜单ID\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":"","fields":[{"name":"userId","doc":"用户id "},{"name":"deptId","doc":"部门id "}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 当前在线会话\n\n @author Lion Li\n","fields":[{"name":"tokenId","doc":" 会话编号\n"},{"name":"deptName","doc":" 部门名称\n"},{"name":"userName","doc":" 用户名称\n"},{"name":"ipaddr","doc":" 登录IP地址\n"},{"name":"loginLocation","doc":" 登录地址\n"},{"name":"browser","doc":" 浏览器类型\n"},{"name":"os","doc":" 操作系统\n"},{"name":"loginTime","doc":" 登录时间\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户和岗位关联 sys_user_post\n\n @author Lion Li\n","fields":[{"name":"userId","doc":" 用户ID\n"},{"name":"postId","doc":" 岗位ID\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户和角色关联 sys_user_role\n\n @author Lion Li\n","fields":[{"name":"userId","doc":" 用户ID\n"},{"name":"roleId","doc":" 角色ID\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 枚举业务对象 sys_enumeration\n\n @author gyongyi\n @date 2024-07-19\n","fields":[{"name":"parentId","doc":" 父枚举id\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" OSS对象存储分页查询对象 sys_oss\n\n @author Lion Li\n","fields":[{"name":"ossId","doc":" ossId\n"},{"name":"fileName","doc":" 文件名\n"},{"name":"originalName","doc":" 原名\n"},{"name":"fileSuffix","doc":" 文件后缀名\n"},{"name":"url","doc":" URL地址\n"},{"name":"service","doc":" 服务商\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 对象存储配置业务对象 sys_oss_config\n\n @author Lion Li\n @author 孤舟烟雨\n @date 2021-08-13\n","fields":[{"name":"ossConfigId","doc":" 主建\n"},{"name":"configKey","doc":" 配置key\n"},{"name":"accessKey","doc":" accessKey\n"},{"name":"secretKey","doc":" 秘钥\n"},{"name":"bucketName","doc":" 桶名称\n"},{"name":"prefix","doc":" 前缀\n"},{"name":"endpoint","doc":" 访问站点\n"},{"name":"domain","doc":" 自定义域名\n"},{"name":"isHttps","doc":" 是否https(Y=是,N=否)\n"},{"name":"status","doc":" 是否默认(0=是,1=否)\n"},{"name":"region","doc":" 域\n"},{"name":"ext1","doc":" 扩展字段\n"},{"name":"remark","doc":" 备注\n"},{"name":"accessPolicy","doc":" 桶权限类型(0private 1public 2custom)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 路由显示信息\n\n @author gyongyi\n","fields":[{"name":"title","doc":" 设置该路由在侧边栏和面包屑中展示的名字\n"},{"name":"icon","doc":" 设置该路由的图标,对应路径src/assets/icons/svg\n"},{"name":"noCache","doc":" 设置为true,则不会被 <keep-alive>缓存\n"},{"name":"link","doc":" 内链地址(http(s)://开头)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 路由配置信息\n\n @author Lion Li\n","fields":[{"name":"name","doc":" 路由名字\n"},{"name":"path","doc":" 路由地址\n"},{"name":"hidden","doc":" 是否隐藏路由,当设置 true 的时候该路由不会再侧边栏出现\n"},{"name":"redirect","doc":" 重定向地址,当设置 noRedirect 的时候该路由在面包屑导航中不可被点击\n"},{"name":"component","doc":" 组件地址\n"},{"name":"query","doc":" 路由参数:如 {\"id\": 1, \"name\": \"ry\"}\n"},{"name":"alwaysShow","doc":" 当你一个路由下面的 children 声明的路由大于1个时,自动会变成嵌套的模式--如组件页面\n"},{"name":"meta","doc":" 其他元素\n"},{"name":"children","doc":" 子路由\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 对象存储配置视图对象 sys_oss_config\n\n @author Lion Li\n @author 孤舟烟雨\n @date 2021-08-13\n","fields":[{"name":"ossConfigId","doc":" 主建\n"},{"name":"configKey","doc":" 配置key\n"},{"name":"accessKey","doc":" accessKey\n"},{"name":"secretKey","doc":" 秘钥\n"},{"name":"bucketName","doc":" 桶名称\n"},{"name":"prefix","doc":" 前缀\n"},{"name":"endpoint","doc":" 访问站点\n"},{"name":"domain","doc":" 自定义域名\n"},{"name":"isHttps","doc":" 是否https(Y=是,N=否)\n"},{"name":"region","doc":" 域\n"},{"name":"status","doc":" 是否默认(0=是,1=否)\n"},{"name":"ext1","doc":" 扩展字段\n"},{"name":"remark","doc":" 备注\n"},{"name":"accessPolicy","doc":" 桶权限类型(0private 1public 2custom)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" OSS对象存储视图对象 sys_oss\n\n @author Lion Li\n","fields":[{"name":"ossId","doc":" 对象存储主键\n"},{"name":"fileName","doc":" 文件名\n"},{"name":"originalName","doc":" 原名\n"},{"name":"fileSuffix","doc":" 文件后缀名\n"},{"name":"url","doc":" URL地址\n"},{"name":"createTime","doc":" 创建时间\n"},{"name":"createBy","doc":" 上传人\n"},{"name":"service","doc":" 服务商\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户对象导出VO\n\n @author Lion Li\n","fields":[{"name":"userId","doc":" 用户ID\n"},{"name":"userName","doc":" 用户账号\n"},{"name":"nickName","doc":" 用户昵称\n"},{"name":"email","doc":" 用户邮箱\n"},{"name":"phonenumber","doc":" 手机号码\n"},{"name":"sex","doc":" 用户性别\n"},{"name":"status","doc":" 帐号状态(0正常 1停用)\n"},{"name":"loginIp","doc":" 最后登录IP\n"},{"name":"loginDate","doc":" 最后登录时间\n"},{"name":"deptName","doc":" 部门名称\n"},{"name":"leader","doc":" 负责人\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户对象导入VO\n\n @author Lion Li\n","fields":[{"name":"userId","doc":" 用户ID\n"},{"name":"deptId","doc":" 部门ID\n"},{"name":"userName","doc":" 用户账号\n"},{"name":"nickName","doc":" 用户昵称\n"},{"name":"email","doc":" 用户邮箱\n"},{"name":"phonenumber","doc":" 手机号码\n"},{"name":"sex","doc":" 用户性别\n"},{"name":"status","doc":" 帐号状态(0正常 1停用)\n"}],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 系统用户自定义导入\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 参数配置 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 部门管理 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectDeptList","paramTypes":["com.baomidou.mybatisplus.core.conditions.Wrapper"],"doc":" 查询部门管理数据\n\n @param queryWrapper 查询条件\n @return 部门信息集合\n"},{"name":"selectDeptListByRoleId","paramTypes":["java.lang.Long","boolean"],"doc":" 根据角色ID查询部门树信息\n\n @param roleId 角色ID\n @param deptCheckStrictly 部门树选择项是否关联显示\n @return 选中部门列表\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 字典表 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 字典表 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 枚举Mapper接口\n\n @author gyongyi\n @date 2024-07-19\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 系统访问日志情况信息 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 菜单表 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectMenuPerms","paramTypes":[],"doc":" 根据用户所有权限\n\n @return 权限列表\n"},{"name":"selectMenuListByUserId","paramTypes":["com.baomidou.mybatisplus.core.conditions.Wrapper"],"doc":" 根据用户查询系统菜单列表\n\n @param queryWrapper 查询条件\n @return 菜单列表\n"},{"name":"selectMenuPermsByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID查询权限\n\n @param userId 用户ID\n @return 权限列表\n"},{"name":"selectMenuPermsByRoleId","paramTypes":["java.lang.Long"],"doc":" 根据角色ID查询权限\n\n @param roleId 角色ID\n @return 权限列表\n"},{"name":"selectMenuTreeAll","paramTypes":[],"doc":" 根据用户ID查询菜单\n\n @return 菜单列表\n"},{"name":"selectMenuTreeByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID查询菜单\n\n @param userId 用户ID\n @return 菜单列表\n"},{"name":"selectMenuListByRoleId","paramTypes":["java.lang.Long","boolean"],"doc":" 根据角色ID查询菜单树信息\n\n @param roleId 角色ID\n @param menuCheckStrictly 菜单树选择项是否关联显示\n @return 选中菜单列表\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 通知公告表 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 操作日志 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 对象存储配置Mapper接口\n\n @author Lion Li\n @author 孤舟烟雨\n @date 2021-08-13\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 文件上传 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 岗位信息 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectPostListByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID获取岗位选择框列表\n\n @param userId 用户ID\n @return 选中岗位ID列表\n"},{"name":"selectPostsByUserName","paramTypes":["java.lang.String"],"doc":" 查询用户所属岗位组\n\n @param userName 用户名\n @return 结果\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 角色与部门关联表 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 角色表 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectRoleList","paramTypes":["com.baomidou.mybatisplus.core.conditions.Wrapper"],"doc":" 根据条件分页查询角色数据\n\n @param queryWrapper 查询条件\n @return 角色数据集合信息\n"},{"name":"selectRolePermissionByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID查询角色\n\n @param userId 用户ID\n @return 角色列表\n"},{"name":"selectRoleListByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID获取角色选择框列表\n\n @param userId 用户ID\n @return 选中角色ID列表\n"},{"name":"selectRolesByUserName","paramTypes":["java.lang.String"],"doc":" 根据用户ID查询角色\n\n @param userName 用户名\n @return 角色列表\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 角色与菜单关联表 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户表 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectUserList","paramTypes":["com.baomidou.mybatisplus.core.conditions.Wrapper"],"doc":" 根据条件分页查询用户列表\n\n @param queryWrapper 查询条件\n @return 用户信息集合信息\n"},{"name":"selectAllocatedList","paramTypes":["com.baomidou.mybatisplus.extension.plugins.pagination.Page","com.baomidou.mybatisplus.core.conditions.Wrapper"],"doc":" 根据条件分页查询已配用户角色列表\n\n @param queryWrapper 查询条件\n @return 用户信息集合信息\n"},{"name":"selectUnallocatedList","paramTypes":["com.baomidou.mybatisplus.extension.plugins.pagination.Page","com.baomidou.mybatisplus.core.conditions.Wrapper"],"doc":" 根据条件分页查询未分配用户角色列表\n\n @param queryWrapper 查询条件\n @return 用户信息集合信息\n"},{"name":"selectUserByUserName","paramTypes":["java.lang.String"],"doc":" 通过用户名查询用户\n\n @param userName 用户名\n @return 用户对象信息\n"},{"name":"selectUserByPhonenumber","paramTypes":["java.lang.String"],"doc":" 通过手机号查询用户\n\n @param phonenumber 手机号\n @return 用户对象信息\n"},{"name":"selectUserByEmail","paramTypes":["java.lang.String"],"doc":" 通过邮箱查询用户\n\n @param email 邮箱\n @return 用户对象信息\n"},{"name":"selectUserById","paramTypes":["java.lang.Long"],"doc":" 通过用户ID查询用户\n\n @param userId 用户ID\n @return 用户对象信息\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 用户与岗位关联表 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 用户与角色关联表 数据层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 初始化 system 模块对应业务数据\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 参数配置 服务层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectConfigById","paramTypes":["java.lang.Long"],"doc":" 查询参数配置信息\n\n @param configId 参数配置ID\n @return 参数配置信息\n"},{"name":"selectConfigByKey","paramTypes":["java.lang.String"],"doc":" 根据键名查询参数配置信息\n\n @param configKey 参数键名\n @return 参数键值\n"},{"name":"selectCaptchaEnabled","paramTypes":[],"doc":" 获取验证码开关\n\n @return true开启,false关闭\n"},{"name":"selectConfigList","paramTypes":["com.lego.system.domain.SysConfig"],"doc":" 查询参数配置列表\n\n @param config 参数配置信息\n @return 参数配置集合\n"},{"name":"insertConfig","paramTypes":["com.lego.system.domain.SysConfig"],"doc":" 新增参数配置\n\n @param config 参数配置信息\n @return 结果\n"},{"name":"updateConfig","paramTypes":["com.lego.system.domain.SysConfig"],"doc":" 修改参数配置\n\n @param config 参数配置信息\n @return 结果\n"},{"name":"deleteConfigByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除参数信息\n\n @param configIds 需要删除的参数ID\n"},{"name":"loadingConfigCache","paramTypes":[],"doc":" 加载参数缓存数据\n"},{"name":"clearConfigCache","paramTypes":[],"doc":" 清空参数缓存数据\n"},{"name":"resetConfigCache","paramTypes":[],"doc":" 重置参数缓存数据\n"},{"name":"checkConfigKeyUnique","paramTypes":["com.lego.system.domain.SysConfig"],"doc":" 校验参数键名是否唯一\n\n @param config 参数信息\n @return 结果\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 通用 数据权限 服务\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"getRoleCustom","paramTypes":["java.lang.Long"],"doc":" 获取角色自定义权限\n\n @param roleId 角色id\n @return 部门id组\n"},{"name":"getDeptAndChild","paramTypes":["java.util.List"],"doc":" 获取部门及以下权限\n\n @param deptId 部门id\n @return 部门id组\n"},{"name":"getDeptJoin","paramTypes":["java.util.List"],"doc":" 获取部门id拼接\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 部门管理 服务层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectDeptList","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 查询部门管理数据\n\n @param dept 部门信息\n @return 部门信息集合\n"},{"name":"selectDeptTreeList","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 查询部门树结构信息\n\n @param dept 部门信息\n @return 部门树信息集合\n"},{"name":"buildDeptTreeSelect","paramTypes":["java.util.List"],"doc":" 构建前端所需要下拉树结构\n\n @param depts 部门列表\n @return 下拉树结构列表\n"},{"name":"selectDeptListByRoleId","paramTypes":["java.lang.Long"],"doc":" 根据角色ID查询部门树信息\n\n @param roleId 角色ID\n @return 选中部门列表\n"},{"name":"selectDeptById","paramTypes":["java.lang.Long"],"doc":" 根据部门ID查询信息\n\n @param deptId 部门ID\n @return 部门信息\n"},{"name":"selectNormalChildrenDeptById","paramTypes":["java.lang.Long"],"doc":" 根据ID查询所有子部门数(正常状态)\n\n @param deptId 部门ID\n @return 子部门数\n"},{"name":"hasChildByDeptId","paramTypes":["java.lang.Long"],"doc":" 是否存在部门子节点\n\n @param deptId 部门ID\n @return 结果\n"},{"name":"checkDeptExistUser","paramTypes":["java.lang.Long"],"doc":" 查询部门是否存在用户\n\n @param deptId 部门ID\n @return 结果 true 存在 false 不存在\n"},{"name":"checkDeptNameUnique","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 校验部门名称是否唯一\n\n @param dept 部门信息\n @return 结果\n"},{"name":"checkDeptDataScope","paramTypes":["java.util.List"],"doc":" 校验部门是否有数据权限\n\n @param deptId 部门id\n"},{"name":"insertDept","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 新增保存部门信息\n\n @param dept 部门信息\n @return 结果\n"},{"name":"updateDept","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 修改保存部门信息\n\n @param dept 部门信息\n @return 结果\n"},{"name":"deleteDeptById","paramTypes":["java.lang.Long"],"doc":" 删除部门管理信息\n\n @param deptId 部门ID\n @return 结果\n"},{"name":"selectNormalChildrenDeptListById","paramTypes":["java.lang.Long"],"doc":" 根据ID查询所有子部门\n @param deptId\n @return\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 字典 业务层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectDictDataList","paramTypes":["com.lego.common.core.domain.entity.SysDictData"],"doc":" 根据条件分页查询字典数据\n\n @param dictData 字典数据信息\n @return 字典数据集合信息\n"},{"name":"selectDictLabel","paramTypes":["java.lang.String","java.lang.String"],"doc":" 根据字典类型和字典键值查询字典数据信息\n\n @param dictType 字典类型\n @param dictValue 字典键值\n @return 字典标签\n"},{"name":"selectDictDataById","paramTypes":["java.lang.Long"],"doc":" 根据字典数据ID查询信息\n\n @param dictCode 字典数据ID\n @return 字典数据\n"},{"name":"deleteDictDataByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除字典数据信息\n\n @param dictCodes 需要删除的字典数据ID\n"},{"name":"insertDictData","paramTypes":["com.lego.common.core.domain.entity.SysDictData"],"doc":" 新增保存字典数据信息\n\n @param dictData 字典数据信息\n @return 结果\n"},{"name":"updateDictData","paramTypes":["com.lego.common.core.domain.entity.SysDictData"],"doc":" 修改保存字典数据信息\n\n @param dictData 字典数据信息\n @return 结果\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 字典 业务层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectDictTypeList","paramTypes":["com.lego.common.core.domain.entity.SysDictType"],"doc":" 根据条件分页查询字典类型\n\n @param dictType 字典类型信息\n @return 字典类型集合信息\n"},{"name":"selectDictTypeAll","paramTypes":[],"doc":" 根据所有字典类型\n\n @return 字典类型集合信息\n"},{"name":"selectDictDataByType","paramTypes":["java.lang.String"],"doc":" 根据字典类型查询字典数据\n\n @param dictType 字典类型\n @return 字典数据集合信息\n"},{"name":"selectDictTypeById","paramTypes":["java.lang.Long"],"doc":" 根据字典类型ID查询信息\n\n @param dictId 字典类型ID\n @return 字典类型\n"},{"name":"selectDictTypeByType","paramTypes":["java.lang.String"],"doc":" 根据字典类型查询信息\n\n @param dictType 字典类型\n @return 字典类型\n"},{"name":"deleteDictTypeByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除字典信息\n\n @param dictIds 需要删除的字典ID\n"},{"name":"loadingDictCache","paramTypes":[],"doc":" 加载字典缓存数据\n"},{"name":"clearDictCache","paramTypes":[],"doc":" 清空字典缓存数据\n"},{"name":"resetDictCache","paramTypes":[],"doc":" 重置字典缓存数据\n"},{"name":"insertDictType","paramTypes":["com.lego.common.core.domain.entity.SysDictType"],"doc":" 新增保存字典类型信息\n\n @param dictType 字典类型信息\n @return 结果\n"},{"name":"updateDictType","paramTypes":["com.lego.common.core.domain.entity.SysDictType"],"doc":" 修改保存字典类型信息\n\n @param dictType 字典类型信息\n @return 结果\n"},{"name":"checkDictTypeUnique","paramTypes":["com.lego.common.core.domain.entity.SysDictType"],"doc":" 校验字典类型称是否唯一\n\n @param dictType 字典类型\n @return 结果\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 枚举Service接口\n\n @author gyongyi\n @date 2024-07-19\n","fields":[],"enumConstants":[],"methods":[{"name":"queryEnumerationTreeList","paramTypes":["java.lang.String"],"doc":" 查询枚举树列表\n"},{"name":"queryById","paramTypes":["java.lang.String"],"doc":" 根据id,查询枚举对象\n"},{"name":"queryList","paramTypes":["com.lego.system.domain.bo.SysEnumerationQueryBo"],"doc":" 根据查询条件,查询枚举列表\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 系统访问日志情况信息 服务层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"insertLogininfor","paramTypes":["com.lego.system.domain.SysLogininfor"],"doc":" 新增系统登录日志\n\n @param logininfor 访问日志对象\n"},{"name":"selectLogininforList","paramTypes":["com.lego.system.domain.SysLogininfor"],"doc":" 查询系统登录日志集合\n\n @param logininfor 访问日志对象\n @return 登录记录集合\n"},{"name":"deleteLogininforByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除系统登录日志\n\n @param infoIds 需要删除的登录日志ID\n @return 结果\n"},{"name":"cleanLogininfor","paramTypes":[],"doc":" 清空系统登录日志\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 菜单 业务层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectMenuList","paramTypes":["java.lang.Long"],"doc":" 根据用户查询系统菜单列表\n\n @param userId 用户ID\n @return 菜单列表\n"},{"name":"selectMenuList","paramTypes":["com.lego.common.core.domain.entity.SysMenu","java.lang.Long"],"doc":" 根据用户查询系统菜单列表\n\n @param menu 菜单信息\n @param userId 用户ID\n @return 菜单列表\n"},{"name":"selectMenuPermsByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID查询权限\n\n @param userId 用户ID\n @return 权限列表\n"},{"name":"selectMenuPermsByRoleId","paramTypes":["java.lang.Long"],"doc":" 根据角色ID查询权限\n\n @param roleId 角色ID\n @return 权限列表\n"},{"name":"selectMenuTreeByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID查询菜单树信息\n\n @param userId 用户ID\n @return 菜单列表\n"},{"name":"selectMenuListByRoleId","paramTypes":["java.lang.Long"],"doc":" 根据角色ID查询菜单树信息\n\n @param roleId 角色ID\n @return 选中菜单列表\n"},{"name":"buildMenus","paramTypes":["java.util.List"],"doc":" 构建前端路由所需要的菜单\n\n @param menus 菜单列表\n @return 路由列表\n"},{"name":"buildMenuTreeSelect","paramTypes":["java.util.List"],"doc":" 构建前端所需要下拉树结构\n\n @param menus 菜单列表\n @return 下拉树结构列表\n"},{"name":"selectMenuById","paramTypes":["java.lang.Long"],"doc":" 根据菜单ID查询信息\n\n @param menuId 菜单ID\n @return 菜单信息\n"},{"name":"hasChildByMenuId","paramTypes":["java.lang.Long"],"doc":" 是否存在菜单子节点\n\n @param menuId 菜单ID\n @return 结果 true 存在 false 不存在\n"},{"name":"checkMenuExistRole","paramTypes":["java.lang.Long"],"doc":" 查询菜单是否存在角色\n\n @param menuId 菜单ID\n @return 结果 true 存在 false 不存在\n"},{"name":"insertMenu","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 新增保存菜单信息\n\n @param menu 菜单信息\n @return 结果\n"},{"name":"updateMenu","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 修改保存菜单信息\n\n @param menu 菜单信息\n @return 结果\n"},{"name":"deleteMenuById","paramTypes":["java.lang.Long"],"doc":" 删除菜单管理信息\n\n @param menuId 菜单ID\n @return 结果\n"},{"name":"checkMenuNameUnique","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 校验菜单名称是否唯一\n\n @param menu 菜单信息\n @return 结果\n"},{"name":"existById","paramTypes":["java.lang.Long"],"doc":" 根据菜单查询是否存在\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 公告 服务层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectNoticeById","paramTypes":["java.lang.Long"],"doc":" 查询公告信息\n\n @param noticeId 公告ID\n @return 公告信息\n"},{"name":"selectNoticeList","paramTypes":["com.lego.system.domain.SysNotice"],"doc":" 查询公告列表\n\n @param notice 公告信息\n @return 公告集合\n"},{"name":"insertNotice","paramTypes":["com.lego.system.domain.SysNotice"],"doc":" 新增公告\n\n @param notice 公告信息\n @return 结果\n"},{"name":"updateNotice","paramTypes":["com.lego.system.domain.SysNotice"],"doc":" 修改公告\n\n @param notice 公告信息\n @return 结果\n"},{"name":"deleteNoticeById","paramTypes":["java.lang.Long"],"doc":" 删除公告信息\n\n @param noticeId 公告ID\n @return 结果\n"},{"name":"deleteNoticeByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除公告信息\n\n @param noticeIds 需要删除的公告ID\n @return 结果\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 操作日志 服务层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"insertOperlog","paramTypes":["com.lego.system.domain.SysOperLog"],"doc":" 新增操作日志\n\n @param operLog 操作日志对象\n"},{"name":"selectOperLogList","paramTypes":["com.lego.system.domain.SysOperLog"],"doc":" 查询系统操作日志集合\n\n @param operLog 操作日志对象\n @return 操作日志集合\n"},{"name":"deleteOperLogByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除系统操作日志\n\n @param operIds 需要删除的操作日志ID\n @return 结果\n"},{"name":"selectOperLogById","paramTypes":["java.lang.Long"],"doc":" 查询操作日志详细\n\n @param operId 操作ID\n @return 操作日志对象\n"},{"name":"cleanOperLog","paramTypes":[],"doc":" 清空操作日志\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 对象存储配置Service接口\n\n @author Lion Li\n @author 孤舟烟雨\n @date 2021-08-13\n","fields":[],"enumConstants":[],"methods":[{"name":"init","paramTypes":[],"doc":" 初始化OSS配置\n"},{"name":"queryById","paramTypes":["java.lang.Long"],"doc":" 查询单个\n"},{"name":"queryPageList","paramTypes":["com.lego.system.domain.bo.SysOssConfigBo","com.lego.common.core.domain.PageQuery"],"doc":" 查询列表\n"},{"name":"insertByBo","paramTypes":["com.lego.system.domain.bo.SysOssConfigBo"],"doc":" 根据新增业务对象插入对象存储配置\n\n @param bo 对象存储配置新增业务对象\n @return\n"},{"name":"updateByBo","paramTypes":["com.lego.system.domain.bo.SysOssConfigBo"],"doc":" 根据编辑业务对象修改对象存储配置\n\n @param bo 对象存储配置编辑业务对象\n @return\n"},{"name":"deleteWithValidByIds","paramTypes":["java.util.Collection","java.lang.Boolean"],"doc":" 校验并删除数据\n\n @param ids 主键集合\n @param isValid 是否校验,true-删除前校验,false-不校验\n @return\n"},{"name":"updateOssConfigStatus","paramTypes":["com.lego.system.domain.bo.SysOssConfigBo"],"doc":" 启用停用状态\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 文件上传 服务层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 岗位信息 服务层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectPostList","paramTypes":["com.lego.system.domain.SysPost"],"doc":" 查询岗位信息集合\n\n @param post 岗位信息\n @return 岗位列表\n"},{"name":"selectPostAll","paramTypes":[],"doc":" 查询所有岗位\n\n @return 岗位列表\n"},{"name":"selectPostById","paramTypes":["java.lang.Long"],"doc":" 通过岗位ID查询岗位信息\n\n @param postId 岗位ID\n @return 角色对象信息\n"},{"name":"selectPostListByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID获取岗位选择框列表\n\n @param userId 用户ID\n @return 选中岗位ID列表\n"},{"name":"checkPostNameUnique","paramTypes":["com.lego.system.domain.SysPost"],"doc":" 校验岗位名称\n\n @param post 岗位信息\n @return 结果\n"},{"name":"checkPostCodeUnique","paramTypes":["com.lego.system.domain.SysPost"],"doc":" 校验岗位编码\n\n @param post 岗位信息\n @return 结果\n"},{"name":"countUserPostById","paramTypes":["java.lang.Long"],"doc":" 通过岗位ID查询岗位使用数量\n\n @param postId 岗位ID\n @return 结果\n"},{"name":"deletePostById","paramTypes":["java.lang.Long"],"doc":" 删除岗位信息\n\n @param postId 岗位ID\n @return 结果\n"},{"name":"deletePostByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除岗位信息\n\n @param postIds 需要删除的岗位ID\n @return 结果\n"},{"name":"insertPost","paramTypes":["com.lego.system.domain.SysPost"],"doc":" 新增保存岗位信息\n\n @param post 岗位信息\n @return 结果\n"},{"name":"updatePost","paramTypes":["com.lego.system.domain.SysPost"],"doc":" 修改保存岗位信息\n\n @param post 岗位信息\n @return 结果\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 角色业务层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectRoleList","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 根据条件分页查询角色数据\n\n @param role 角色信息\n @return 角色数据集合信息\n"},{"name":"selectRolesByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID查询角色列表\n\n @param userId 用户ID\n @return 角色列表\n"},{"name":"selectRolePermissionByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID查询角色权限\n\n @param userId 用户ID\n @return 权限列表\n"},{"name":"selectRoleAll","paramTypes":[],"doc":" 查询所有角色\n\n @return 角色列表\n"},{"name":"selectRoleListByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID获取角色选择框列表\n\n @param userId 用户ID\n @return 选中角色ID列表\n"},{"name":"selectRoleById","paramTypes":["java.lang.Long"],"doc":" 通过角色ID查询角色\n\n @param roleId 角色ID\n @return 角色对象信息\n"},{"name":"checkRoleNameUnique","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 校验角色名称是否唯一\n\n @param role 角色信息\n @return 结果\n"},{"name":"checkRoleKeyUnique","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 校验角色权限是否唯一\n\n @param role 角色信息\n @return 结果\n"},{"name":"checkRoleAllowed","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 校验角色是否允许操作\n\n @param role 角色信息\n"},{"name":"checkRoleDataScope","paramTypes":["java.lang.Long"],"doc":" 校验角色是否有数据权限\n\n @param roleId 角色id\n"},{"name":"countUserRoleByRoleId","paramTypes":["java.lang.Long"],"doc":" 通过角色ID查询角色使用数量\n\n @param roleId 角色ID\n @return 结果\n"},{"name":"insertRole","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 新增保存角色信息\n\n @param role 角色信息\n @return 结果\n"},{"name":"updateRole","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 修改保存角色信息\n\n @param role 角色信息\n @return 结果\n"},{"name":"updateRoleStatus","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 修改角色状态\n\n @param role 角色信息\n @return 结果\n"},{"name":"authDataScope","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 修改数据权限信息\n\n @param role 角色信息\n @return 结果\n"},{"name":"deleteRoleById","paramTypes":["java.lang.Long"],"doc":" 通过角色ID删除角色\n\n @param roleId 角色ID\n @return 结果\n"},{"name":"deleteRoleByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除角色信息\n\n @param roleIds 需要删除的角色ID\n @return 结果\n"},{"name":"deleteAuthUser","paramTypes":["com.lego.system.domain.SysUserRole"],"doc":" 取消授权用户角色\n\n @param userRole 用户和角色关联信息\n @return 结果\n"},{"name":"deleteAuthUsers","paramTypes":["java.lang.Long","java.lang.Long[]"],"doc":" 批量取消授权用户角色\n\n @param roleId 角色ID\n @param userIds 需要取消授权的用户数据ID\n @return 结果\n"},{"name":"insertAuthUsers","paramTypes":["java.lang.Long","java.lang.Long[]"],"doc":" 批量选择授权用户角色\n\n @param roleId 角色ID\n @param userIds 需要删除的用户数据ID\n @return 结果\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 用户 业务层\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectUserList","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 根据条件分页查询用户列表\n\n @param user 用户信息\n @return 用户信息集合信息\n"},{"name":"selectAllocatedList","paramTypes":["com.lego.common.core.domain.entity.SysUser","com.lego.common.core.domain.PageQuery"],"doc":" 根据条件分页查询已分配用户角色列表\n\n @param user 用户信息\n @return 用户信息集合信息\n"},{"name":"selectUnallocatedList","paramTypes":["com.lego.common.core.domain.entity.SysUser","com.lego.common.core.domain.PageQuery"],"doc":" 根据条件分页查询未分配用户角色列表\n\n @param user 用户信息\n @return 用户信息集合信息\n"},{"name":"selectUserByUserName","paramTypes":["java.lang.String"],"doc":" 通过用户名查询用户\n\n @param userName 用户名\n @return 用户对象信息\n"},{"name":"selectUserByPhonenumber","paramTypes":["java.lang.String"],"doc":" 通过手机号查询用户\n\n @param phonenumber 手机号\n @return 用户对象信息\n"},{"name":"selectUserById","paramTypes":["java.lang.Long"],"doc":" 通过用户ID查询用户\n\n @param userId 用户ID\n @return 用户对象信息\n"},{"name":"selectUserRoleGroup","paramTypes":["java.lang.String"],"doc":" 根据用户ID查询用户所属角色组\n\n @param userName 用户名\n @return 结果\n"},{"name":"selectUserPostGroup","paramTypes":["java.lang.String"],"doc":" 根据用户ID查询用户所属岗位组\n\n @param userName 用户名\n @return 结果\n"},{"name":"checkUserNameUnique","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 校验用户名称是否唯一\n\n @param user 用户信息\n @return 结果\n"},{"name":"checkPhoneUnique","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 校验手机号码是否唯一\n\n @param user 用户信息\n @return 结果\n"},{"name":"checkEmailUnique","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 校验email是否唯一\n\n @param user 用户信息\n @return 结果\n"},{"name":"checkUserAllowed","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 校验用户是否允许操作\n\n @param user 用户信息\n"},{"name":"checkUserDataScope","paramTypes":["java.lang.Long"],"doc":" 校验用户是否有数据权限\n\n @param userId 用户id\n"},{"name":"insertUser","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 新增用户信息\n\n @param user 用户信息\n @return 结果\n"},{"name":"registerUser","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 注册用户信息\n\n @param user 用户信息\n @return 结果\n"},{"name":"updateUser","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 修改用户信息\n\n @param user 用户信息\n @return 结果\n"},{"name":"insertUserAuth","paramTypes":["java.lang.Long","java.lang.Long[]"],"doc":" 用户授权角色\n\n @param userId 用户ID\n @param roleIds 角色组\n"},{"name":"updateUserStatus","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 修改用户状态\n\n @param user 用户信息\n @return 结果\n"},{"name":"updateUserProfile","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 修改用户基本信息\n\n @param user 用户信息\n @return 结果\n"},{"name":"updateUserAvatar","paramTypes":["java.lang.String","java.lang.String"],"doc":" 修改用户头像\n\n @param userName 用户名\n @param avatar 头像地址\n @return 结果\n"},{"name":"resetPwd","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 重置用户密码\n\n @param user 用户信息\n @return 结果\n"},{"name":"resetUserPwd","paramTypes":["java.lang.String","java.lang.String"],"doc":" 重置用户密码\n\n @param userName 用户名\n @param password 密码\n @return 结果\n"},{"name":"deleteUserById","paramTypes":["java.lang.Long"],"doc":" 通过用户ID删除用户\n\n @param userId 用户ID\n @return 结果\n"},{"name":"deleteUserByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除用户信息\n\n @param userIds 需要删除的用户ID\n @return 结果\n"},{"name":"selectUserByIds","paramTypes":["java.util.List"],"doc":" 通过用户ID查询用户\n\n @param userId 用户ID\n @return 用户对象信息\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 登录校验方法\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"login","paramTypes":["java.lang.String","java.lang.String","java.lang.String","java.lang.String"],"doc":" 登录验证\n\n @param username 用户名\n @param password 密码\n @param code 验证码\n @param uuid 唯一标识\n @return 结果\n"},{"name":"logout","paramTypes":[],"doc":" 退出登录\n"},{"name":"recordLogininfor","paramTypes":["java.lang.String","java.lang.String","java.lang.String"],"doc":" 记录登录信息\n\n @param username 用户名\n @param status 状态\n @param message 消息内容\n"},{"name":"validateSmsCode","paramTypes":["java.lang.String","java.lang.String"],"doc":" 校验短信验证码\n"},{"name":"validateEmailCode","paramTypes":["java.lang.String","java.lang.String"],"doc":" 校验邮箱验证码\n"},{"name":"validateCaptcha","paramTypes":["java.lang.String","java.lang.String","java.lang.String"],"doc":" 校验验证码\n\n @param username 用户名\n @param code 验证码\n @param uuid 唯一标识\n"},{"name":"buildLoginUser","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 构建登录用户\n"},{"name":"recordLoginInfo","paramTypes":["java.lang.Long","java.lang.String"],"doc":" 记录登录信息\n\n @param userId 用户ID\n"},{"name":"checkLogin","paramTypes":["com.lego.common.enums.LoginType","java.lang.String","java.util.function.Supplier"],"doc":" 登录校验\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 用户权限处理\n\n @author gyongyi\n","fields":[],"enumConstants":[],"methods":[{"name":"getRolePermission","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 获取角色数据权限\n\n @param user 用户信息\n @return 角色权限信息\n"},{"name":"getMenuPermission","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 获取菜单数据权限\n\n @param user 用户信息\n @return 菜单权限信息\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 注册校验方法\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"register","paramTypes":["com.lego.common.core.domain.model.RegisterBody"],"doc":" 注册\n"},{"name":"validateCaptcha","paramTypes":["java.lang.String","java.lang.String","java.lang.String"],"doc":" 校验验证码\n\n @param username 用户名\n @param code 验证码\n @param uuid 唯一标识\n"},{"name":"recordLogininfor","paramTypes":["java.lang.String","java.lang.String","java.lang.String"],"doc":" 记录登录信息\n\n @param username 用户名\n @param status 状态\n @param message 消息内容\n @return\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 参数配置 服务层实现\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectConfigById","paramTypes":["java.lang.Long"],"doc":" 查询参数配置信息\n\n @param configId 参数配置ID\n @return 参数配置信息\n"},{"name":"selectConfigByKey","paramTypes":["java.lang.String"],"doc":" 根据键名查询参数配置信息\n\n @param configKey 参数key\n @return 参数键值\n"},{"name":"selectCaptchaEnabled","paramTypes":[],"doc":" 获取验证码开关\n\n @return true开启,false关闭\n"},{"name":"selectConfigList","paramTypes":["com.lego.system.domain.SysConfig"],"doc":" 查询参数配置列表\n\n @param config 参数配置信息\n @return 参数配置集合\n"},{"name":"insertConfig","paramTypes":["com.lego.system.domain.SysConfig"],"doc":" 新增参数配置\n\n @param config 参数配置信息\n @return 结果\n"},{"name":"updateConfig","paramTypes":["com.lego.system.domain.SysConfig"],"doc":" 修改参数配置\n\n @param config 参数配置信息\n @return 结果\n"},{"name":"deleteConfigByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除参数信息\n\n @param configIds 需要删除的参数ID\n"},{"name":"loadingConfigCache","paramTypes":[],"doc":" 加载参数缓存数据\n"},{"name":"clearConfigCache","paramTypes":[],"doc":" 清空参数缓存数据\n"},{"name":"resetConfigCache","paramTypes":[],"doc":" 重置参数缓存数据\n"},{"name":"checkConfigKeyUnique","paramTypes":["com.lego.system.domain.SysConfig"],"doc":" 校验参数键名是否唯一\n\n @param config 参数配置信息\n @return 结果\n"},{"name":"getConfigValue","paramTypes":["java.lang.String"],"doc":" 根据参数 key 获取参数值\n\n @param configKey 参数 key\n @return 参数值\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 数据权限 实现\n <p>\n 注意: 此Service内不允许调用标注`数据权限`注解的方法\n 例如: deptMapper.selectList 此 selectList 方法标注了`数据权限`注解 会出现循环解析的问题\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[],"constructors":[]}
\ No newline at end of file
{"doc":" 部门管理 服务实现\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectDeptList","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 查询部门管理数据\n\n @param dept 部门信息\n @return 部门信息集合\n"},{"name":"selectDeptTreeList","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 查询部门树结构信息\n\n @param dept 部门信息\n @return 部门树信息集合\n"},{"name":"buildDeptTreeSelect","paramTypes":["java.util.List"],"doc":" 构建前端所需要下拉树结构\n\n @param depts 部门列表\n @return 下拉树结构列表\n"},{"name":"selectDeptListByRoleId","paramTypes":["java.lang.Long"],"doc":" 根据角色ID查询部门树信息\n\n @param roleId 角色ID\n @return 选中部门列表\n"},{"name":"selectDeptById","paramTypes":["java.lang.Long"],"doc":" 根据部门ID查询信息\n\n @param deptId 部门ID\n @return 部门信息\n"},{"name":"selectDeptNameByIds","paramTypes":["java.lang.String"],"doc":" 通过部门ID查询部门名称\n\n @param deptIds 部门ID串逗号分隔\n @return 部门名称串逗号分隔\n"},{"name":"selectNormalChildrenDeptById","paramTypes":["java.lang.Long"],"doc":" 根据ID查询所有子部门数(正常状态)\n\n @param deptId 部门ID\n @return 子部门数\n"},{"name":"hasChildByDeptId","paramTypes":["java.lang.Long"],"doc":" 是否存在子节点\n\n @param deptId 部门ID\n @return 结果\n"},{"name":"checkDeptExistUser","paramTypes":["java.lang.Long"],"doc":" 查询部门是否存在用户\n\n @param deptId 部门ID\n @return 结果 true 存在 false 不存在\n"},{"name":"checkDeptNameUnique","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 校验部门名称是否唯一\n\n @param dept 部门信息\n @return 结果\n"},{"name":"checkDeptDataScope","paramTypes":["java.util.List"],"doc":" 校验部门是否有数据权限\n\n @param deptId 部门id\n"},{"name":"insertDept","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 新增保存部门信息\n\n @param dept 部门信息\n @return 结果\n"},{"name":"updateDept","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 修改保存部门信息\n\n @param dept 部门信息\n @return 结果\n"},{"name":"updateParentDeptStatusNormal","paramTypes":["com.lego.common.core.domain.entity.SysDept"],"doc":" 修改该部门的父级部门状态\n\n @param dept 当前部门\n"},{"name":"updateDeptChildren","paramTypes":["java.lang.Long","java.lang.String","java.lang.String"],"doc":" 修改子元素关系\n\n @param deptId 被修改的部门ID\n @param newAncestors 新的父ID集合\n @param oldAncestors 旧的父ID集合\n"},{"name":"deleteDeptById","paramTypes":["java.lang.Long"],"doc":" 删除部门管理信息\n\n @param deptId 部门ID\n @return 结果\n"},{"name":"selectNormalChildrenDeptListById","paramTypes":["java.lang.Long"],"doc":" 根据ID查询所有子部门数(正常状态)\n\n @param deptId 部门ID\n @return 子部门数\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 字典 业务层处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectDictDataList","paramTypes":["com.lego.common.core.domain.entity.SysDictData"],"doc":" 根据条件分页查询字典数据\n\n @param dictData 字典数据信息\n @return 字典数据集合信息\n"},{"name":"selectDictLabel","paramTypes":["java.lang.String","java.lang.String"],"doc":" 根据字典类型和字典键值查询字典数据信息\n\n @param dictType 字典类型\n @param dictValue 字典键值\n @return 字典标签\n"},{"name":"selectDictDataById","paramTypes":["java.lang.Long"],"doc":" 根据字典数据ID查询信息\n\n @param dictCode 字典数据ID\n @return 字典数据\n"},{"name":"deleteDictDataByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除字典数据信息\n\n @param dictCodes 需要删除的字典数据ID\n"},{"name":"insertDictData","paramTypes":["com.lego.common.core.domain.entity.SysDictData"],"doc":" 新增保存字典数据信息\n\n @param data 字典数据信息\n @return 结果\n"},{"name":"updateDictData","paramTypes":["com.lego.common.core.domain.entity.SysDictData"],"doc":" 修改保存字典数据信息\n\n @param data 字典数据信息\n @return 结果\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 字典 业务层处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectDictTypeList","paramTypes":["com.lego.common.core.domain.entity.SysDictType"],"doc":" 根据条件分页查询字典类型\n\n @param dictType 字典类型信息\n @return 字典类型集合信息\n"},{"name":"selectDictTypeAll","paramTypes":[],"doc":" 根据所有字典类型\n\n @return 字典类型集合信息\n"},{"name":"selectDictDataByType","paramTypes":["java.lang.String"],"doc":" 根据字典类型查询字典数据\n\n @param dictType 字典类型\n @return 字典数据集合信息\n"},{"name":"selectDictTypeById","paramTypes":["java.lang.Long"],"doc":" 根据字典类型ID查询信息\n\n @param dictId 字典类型ID\n @return 字典类型\n"},{"name":"selectDictTypeByType","paramTypes":["java.lang.String"],"doc":" 根据字典类型查询信息\n\n @param dictType 字典类型\n @return 字典类型\n"},{"name":"deleteDictTypeByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除字典类型信息\n\n @param dictIds 需要删除的字典ID\n"},{"name":"loadingDictCache","paramTypes":[],"doc":" 加载字典缓存数据\n"},{"name":"clearDictCache","paramTypes":[],"doc":" 清空字典缓存数据\n"},{"name":"resetDictCache","paramTypes":[],"doc":" 重置字典缓存数据\n"},{"name":"insertDictType","paramTypes":["com.lego.common.core.domain.entity.SysDictType"],"doc":" 新增保存字典类型信息\n\n @param dict 字典类型信息\n @return 结果\n"},{"name":"updateDictType","paramTypes":["com.lego.common.core.domain.entity.SysDictType"],"doc":" 修改保存字典类型信息\n\n @param dict 字典类型信息\n @return 结果\n"},{"name":"checkDictTypeUnique","paramTypes":["com.lego.common.core.domain.entity.SysDictType"],"doc":" 校验字典类型称是否唯一\n\n @param dict 字典类型\n @return 结果\n"},{"name":"getDictLabel","paramTypes":["java.lang.String","java.lang.String","java.lang.String"],"doc":" 根据字典类型和字典值获取字典标签\n\n @param dictType 字典类型\n @param dictValue 字典值\n @param separator 分隔符\n @return 字典标签\n"},{"name":"getDictValue","paramTypes":["java.lang.String","java.lang.String","java.lang.String"],"doc":" 根据字典类型和字典标签获取字典值\n\n @param dictType 字典类型\n @param dictLabel 字典标签\n @param separator 分隔符\n @return 字典值\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 枚举Service业务层处理\n\n @author gyongyi\n @date 2024-07-19\n","fields":[],"enumConstants":[],"methods":[{"name":"buildDeptTreeSelect","paramTypes":["java.util.List"],"doc":" 构建前端所需要下拉树结构\n\n @param enumerationList\n @return 下拉树结构列表\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 系统访问日志情况信息 服务层处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"recordLogininfor","paramTypes":["com.lego.common.core.domain.event.LogininforEvent"],"doc":" 记录登录信息\n\n @param logininforEvent 登录事件\n"},{"name":"insertLogininfor","paramTypes":["com.lego.system.domain.SysLogininfor"],"doc":" 新增系统登录日志\n\n @param logininfor 访问日志对象\n"},{"name":"selectLogininforList","paramTypes":["com.lego.system.domain.SysLogininfor"],"doc":" 查询系统登录日志集合\n\n @param logininfor 访问日志对象\n @return 登录记录集合\n"},{"name":"deleteLogininforByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除系统登录日志\n\n @param infoIds 需要删除的登录日志ID\n @return 结果\n"},{"name":"cleanLogininfor","paramTypes":[],"doc":" 清空系统登录日志\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 菜单 业务层处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectMenuList","paramTypes":["java.lang.Long"],"doc":" 根据用户查询系统菜单列表\n\n @param userId 用户ID\n @return 菜单列表\n"},{"name":"selectMenuList","paramTypes":["com.lego.common.core.domain.entity.SysMenu","java.lang.Long"],"doc":" 查询系统菜单列表\n\n @param menu 菜单信息\n @return 菜单列表\n"},{"name":"selectMenuPermsByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID查询权限\n\n @param userId 用户ID\n @return 权限列表\n"},{"name":"selectMenuPermsByRoleId","paramTypes":["java.lang.Long"],"doc":" 根据角色ID查询权限\n\n @param roleId 角色ID\n @return 权限列表\n"},{"name":"selectMenuTreeByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID查询菜单\n\n @param userId 用户名称\n @return 菜单列表\n"},{"name":"selectMenuListByRoleId","paramTypes":["java.lang.Long"],"doc":" 根据角色ID查询菜单树信息\n\n @param roleId 角色ID\n @return 选中菜单列表\n"},{"name":"buildMenus","paramTypes":["java.util.List"],"doc":" 构建前端路由所需要的菜单\n\n @param menus 菜单列表\n @return 路由列表\n"},{"name":"buildMenuTreeSelect","paramTypes":["java.util.List"],"doc":" 构建前端所需要下拉树结构\n\n @param menus 菜单列表\n @return 下拉树结构列表\n"},{"name":"selectMenuById","paramTypes":["java.lang.Long"],"doc":" 根据菜单ID查询信息\n\n @param menuId 菜单ID\n @return 菜单信息\n"},{"name":"hasChildByMenuId","paramTypes":["java.lang.Long"],"doc":" 是否存在菜单子节点\n\n @param menuId 菜单ID\n @return 结果\n"},{"name":"checkMenuExistRole","paramTypes":["java.lang.Long"],"doc":" 查询菜单使用数量\n\n @param menuId 菜单ID\n @return 结果\n"},{"name":"insertMenu","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 新增保存菜单信息\n\n @param menu 菜单信息\n @return 结果\n"},{"name":"updateMenu","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 修改保存菜单信息\n\n @param menu 菜单信息\n @return 结果\n"},{"name":"deleteMenuById","paramTypes":["java.lang.Long"],"doc":" 删除菜单管理信息\n\n @param menuId 菜单ID\n @return 结果\n"},{"name":"checkMenuNameUnique","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 校验菜单名称是否唯一\n\n @param menu 菜单信息\n @return 结果\n"},{"name":"getRouteName","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 获取路由名称\n\n @param menu 菜单信息\n @return 路由名称\n"},{"name":"getRouterPath","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 获取路由地址\n\n @param menu 菜单信息\n @return 路由地址\n"},{"name":"getComponent","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 获取组件信息\n\n @param menu 菜单信息\n @return 组件信息\n"},{"name":"isMenuFrame","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 是否为菜单内部跳转\n\n @param menu 菜单信息\n @return 结果\n"},{"name":"isInnerLink","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 是否为内链组件\n\n @param menu 菜单信息\n @return 结果\n"},{"name":"isParentView","paramTypes":["com.lego.common.core.domain.entity.SysMenu"],"doc":" 是否为parent_view组件\n\n @param menu 菜单信息\n @return 结果\n"},{"name":"getChildPerms","paramTypes":["java.util.List","int"],"doc":" 根据父节点的ID获取所有子节点\n\n @param list 分类表\n @param parentId 传入的父节点ID\n @return String\n"},{"name":"recursionFn","paramTypes":["java.util.List","com.lego.common.core.domain.entity.SysMenu"],"doc":" 递归列表\n\n @param list\n @param t\n"},{"name":"getChildList","paramTypes":["java.util.List","com.lego.common.core.domain.entity.SysMenu"],"doc":" 得到子节点列表\n"},{"name":"hasChild","paramTypes":["java.util.List","com.lego.common.core.domain.entity.SysMenu"],"doc":" 判断是否有子节点\n"},{"name":"innerLinkReplaceEach","paramTypes":["java.lang.String"],"doc":" 内链域名特殊字符替换\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 公告 服务层实现\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectNoticeById","paramTypes":["java.lang.Long"],"doc":" 查询公告信息\n\n @param noticeId 公告ID\n @return 公告信息\n"},{"name":"selectNoticeList","paramTypes":["com.lego.system.domain.SysNotice"],"doc":" 查询公告列表\n\n @param notice 公告信息\n @return 公告集合\n"},{"name":"insertNotice","paramTypes":["com.lego.system.domain.SysNotice"],"doc":" 新增公告\n\n @param notice 公告信息\n @return 结果\n"},{"name":"updateNotice","paramTypes":["com.lego.system.domain.SysNotice"],"doc":" 修改公告\n\n @param notice 公告信息\n @return 结果\n"},{"name":"deleteNoticeById","paramTypes":["java.lang.Long"],"doc":" 删除公告对象\n\n @param noticeId 公告ID\n @return 结果\n"},{"name":"deleteNoticeByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除公告信息\n\n @param noticeIds 需要删除的公告ID\n @return 结果\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 操作日志 服务层处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"recordOper","paramTypes":["com.lego.common.core.domain.event.OperLogEvent"],"doc":" 操作日志记录\n\n @param operLogEvent 操作日志事件\n"},{"name":"insertOperlog","paramTypes":["com.lego.system.domain.SysOperLog"],"doc":" 新增操作日志\n\n @param operLog 操作日志对象\n"},{"name":"selectOperLogList","paramTypes":["com.lego.system.domain.SysOperLog"],"doc":" 查询系统操作日志集合\n\n @param operLog 操作日志对象\n @return 操作日志集合\n"},{"name":"deleteOperLogByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除系统操作日志\n\n @param operIds 需要删除的操作日志ID\n @return 结果\n"},{"name":"selectOperLogById","paramTypes":["java.lang.Long"],"doc":" 查询操作日志详细\n\n @param operId 操作ID\n @return 操作日志对象\n"},{"name":"cleanOperLog","paramTypes":[],"doc":" 清空操作日志\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 对象存储配置Service业务层处理\n\n @author Lion Li\n @author 孤舟烟雨\n @date 2021-08-13\n","fields":[],"enumConstants":[],"methods":[{"name":"init","paramTypes":[],"doc":" 项目启动时,初始化参数到缓存,加载配置类\n"},{"name":"validEntityBeforeSave","paramTypes":["com.lego.system.domain.SysOssConfig"],"doc":" 保存前的数据校验\n"},{"name":"checkConfigKeyUnique","paramTypes":["com.lego.system.domain.SysOssConfig"],"doc":" 判断configKey是否唯一\n"},{"name":"updateOssConfigStatus","paramTypes":["com.lego.system.domain.bo.SysOssConfigBo"],"doc":" 启用禁用状态\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 文件上传 服务层实现\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"matchingUrl","paramTypes":["com.lego.system.domain.vo.SysOssVo"],"doc":" 匹配Url\n\n @param oss OSS对象\n @return oss 匹配Url的OSS对象\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 岗位信息 服务层处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectPostList","paramTypes":["com.lego.system.domain.SysPost"],"doc":" 查询岗位信息集合\n\n @param post 岗位信息\n @return 岗位信息集合\n"},{"name":"selectPostAll","paramTypes":[],"doc":" 查询所有岗位\n\n @return 岗位列表\n"},{"name":"selectPostById","paramTypes":["java.lang.Long"],"doc":" 通过岗位ID查询岗位信息\n\n @param postId 岗位ID\n @return 角色对象信息\n"},{"name":"selectPostListByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID获取岗位选择框列表\n\n @param userId 用户ID\n @return 选中岗位ID列表\n"},{"name":"checkPostNameUnique","paramTypes":["com.lego.system.domain.SysPost"],"doc":" 校验岗位名称是否唯一\n\n @param post 岗位信息\n @return 结果\n"},{"name":"checkPostCodeUnique","paramTypes":["com.lego.system.domain.SysPost"],"doc":" 校验岗位编码是否唯一\n\n @param post 岗位信息\n @return 结果\n"},{"name":"countUserPostById","paramTypes":["java.lang.Long"],"doc":" 通过岗位ID查询岗位使用数量\n\n @param postId 岗位ID\n @return 结果\n"},{"name":"deletePostById","paramTypes":["java.lang.Long"],"doc":" 删除岗位信息\n\n @param postId 岗位ID\n @return 结果\n"},{"name":"deletePostByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除岗位信息\n\n @param postIds 需要删除的岗位ID\n @return 结果\n"},{"name":"insertPost","paramTypes":["com.lego.system.domain.SysPost"],"doc":" 新增保存岗位信息\n\n @param post 岗位信息\n @return 结果\n"},{"name":"updatePost","paramTypes":["com.lego.system.domain.SysPost"],"doc":" 修改保存岗位信息\n\n @param post 岗位信息\n @return 结果\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 角色 业务层处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectRoleList","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 根据条件分页查询角色数据\n\n @param role 角色信息\n @return 角色数据集合信息\n"},{"name":"selectRolesByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID查询角色\n\n @param userId 用户ID\n @return 角色列表\n"},{"name":"selectRolePermissionByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID查询权限\n\n @param userId 用户ID\n @return 权限列表\n"},{"name":"selectRoleAll","paramTypes":[],"doc":" 查询所有角色\n\n @return 角色列表\n"},{"name":"selectRoleListByUserId","paramTypes":["java.lang.Long"],"doc":" 根据用户ID获取角色选择框列表\n\n @param userId 用户ID\n @return 选中角色ID列表\n"},{"name":"selectRoleById","paramTypes":["java.lang.Long"],"doc":" 通过角色ID查询角色\n\n @param roleId 角色ID\n @return 角色对象信息\n"},{"name":"checkRoleNameUnique","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 校验角色名称是否唯一\n\n @param role 角色信息\n @return 结果\n"},{"name":"checkRoleKeyUnique","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 校验角色权限是否唯一\n\n @param role 角色信息\n @return 结果\n"},{"name":"checkRoleAllowed","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 校验角色是否允许操作\n\n @param role 角色信息\n"},{"name":"checkRoleDataScope","paramTypes":["java.lang.Long"],"doc":" 校验角色是否有数据权限\n\n @param roleId 角色id\n"},{"name":"countUserRoleByRoleId","paramTypes":["java.lang.Long"],"doc":" 通过角色ID查询角色使用数量\n\n @param roleId 角色ID\n @return 结果\n"},{"name":"insertRole","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 新增保存角色信息\n\n @param role 角色信息\n @return 结果\n"},{"name":"updateRole","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 修改保存角色信息\n\n @param role 角色信息\n @return 结果\n"},{"name":"updateRoleStatus","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 修改角色状态\n\n @param role 角色信息\n @return 结果\n"},{"name":"authDataScope","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 修改数据权限信息\n\n @param role 角色信息\n @return 结果\n"},{"name":"insertRoleMenu","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 新增角色菜单信息\n\n @param role 角色对象\n"},{"name":"insertRoleDept","paramTypes":["com.lego.common.core.domain.entity.SysRole"],"doc":" 新增角色部门信息(数据权限)\n\n @param role 角色对象\n"},{"name":"deleteRoleById","paramTypes":["java.lang.Long"],"doc":" 通过角色ID删除角色\n\n @param roleId 角色ID\n @return 结果\n"},{"name":"deleteRoleByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除角色信息\n\n @param roleIds 需要删除的角色ID\n @return 结果\n"},{"name":"deleteAuthUser","paramTypes":["com.lego.system.domain.SysUserRole"],"doc":" 取消授权用户角色\n\n @param userRole 用户和角色关联信息\n @return 结果\n"},{"name":"deleteAuthUsers","paramTypes":["java.lang.Long","java.lang.Long[]"],"doc":" 批量取消授权用户角色\n\n @param roleId 角色ID\n @param userIds 需要取消授权的用户数据ID\n @return 结果\n"},{"name":"insertAuthUsers","paramTypes":["java.lang.Long","java.lang.Long[]"],"doc":" 批量选择授权用户角色\n\n @param roleId 角色ID\n @param userIds 需要授权的用户数据ID\n @return 结果\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 脱敏服务\n 默认管理员不过滤\n 需自行根据业务重写实现\n\n @author Lion Li\n @version 3.6.0\n","fields":[],"enumConstants":[],"methods":[{"name":"isSensitive","paramTypes":[],"doc":" 是否脱敏\n"}],"constructors":[]}
\ No newline at end of file
{"doc":" 用户 业务层处理\n\n @author Lion Li\n","fields":[],"enumConstants":[],"methods":[{"name":"selectUserList","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 根据条件分页查询用户列表\n\n @param user 用户信息\n @return 用户信息集合信息\n"},{"name":"selectAllocatedList","paramTypes":["com.lego.common.core.domain.entity.SysUser","com.lego.common.core.domain.PageQuery"],"doc":" 根据条件分页查询已分配用户角色列表\n\n @param user 用户信息\n @return 用户信息集合信息\n"},{"name":"selectUnallocatedList","paramTypes":["com.lego.common.core.domain.entity.SysUser","com.lego.common.core.domain.PageQuery"],"doc":" 根据条件分页查询未分配用户角色列表\n\n @param user 用户信息\n @return 用户信息集合信息\n"},{"name":"selectUserByUserName","paramTypes":["java.lang.String"],"doc":" 通过用户名查询用户\n\n @param userName 用户名\n @return 用户对象信息\n"},{"name":"selectUserByPhonenumber","paramTypes":["java.lang.String"],"doc":" 通过手机号查询用户\n\n @param phonenumber 手机号\n @return 用户对象信息\n"},{"name":"selectUserById","paramTypes":["java.lang.Long"],"doc":" 通过用户ID查询用户\n\n @param userId 用户ID\n @return 用户对象信息\n"},{"name":"selectUserRoleGroup","paramTypes":["java.lang.String"],"doc":" 查询用户所属角色组\n\n @param userName 用户名\n @return 结果\n"},{"name":"selectUserPostGroup","paramTypes":["java.lang.String"],"doc":" 查询用户所属岗位组\n\n @param userName 用户名\n @return 结果\n"},{"name":"checkUserNameUnique","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 校验用户名称是否唯一\n\n @param user 用户信息\n @return 结果\n"},{"name":"checkPhoneUnique","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 校验手机号码是否唯一\n\n @param user 用户信息\n"},{"name":"checkEmailUnique","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 校验email是否唯一\n\n @param user 用户信息\n"},{"name":"checkUserAllowed","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 校验用户是否允许操作\n\n @param user 用户信息\n"},{"name":"checkUserDataScope","paramTypes":["java.lang.Long"],"doc":" 校验用户是否有数据权限\n\n @param userId 用户id\n"},{"name":"insertUser","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 新增保存用户信息\n\n @param user 用户信息\n @return 结果\n"},{"name":"registerUser","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 注册用户信息\n\n @param user 用户信息\n @return 结果\n"},{"name":"updateUser","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 修改保存用户信息\n\n @param user 用户信息\n @return 结果\n"},{"name":"insertUserAuth","paramTypes":["java.lang.Long","java.lang.Long[]"],"doc":" 用户授权角色\n\n @param userId 用户ID\n @param roleIds 角色组\n"},{"name":"updateUserStatus","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 修改用户状态\n\n @param user 用户信息\n @return 结果\n"},{"name":"updateUserProfile","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 修改用户基本信息\n\n @param user 用户信息\n @return 结果\n"},{"name":"updateUserAvatar","paramTypes":["java.lang.String","java.lang.String"],"doc":" 修改用户头像\n\n @param userName 用户名\n @param avatar 头像地址\n @return 结果\n"},{"name":"resetPwd","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 重置用户密码\n\n @param user 用户信息\n @return 结果\n"},{"name":"resetUserPwd","paramTypes":["java.lang.String","java.lang.String"],"doc":" 重置用户密码\n\n @param userName 用户名\n @param password 密码\n @return 结果\n"},{"name":"insertUserRole","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 新增用户角色信息\n\n @param user 用户对象\n"},{"name":"insertUserPost","paramTypes":["com.lego.common.core.domain.entity.SysUser"],"doc":" 新增用户岗位信息\n\n @param user 用户对象\n"},{"name":"insertUserRole","paramTypes":["java.lang.Long","java.lang.Long[]"],"doc":" 新增用户角色信息\n\n @param userId 用户ID\n @param roleIds 角色组\n"},{"name":"deleteUserById","paramTypes":["java.lang.Long"],"doc":" 通过用户ID删除用户\n\n @param userId 用户ID\n @return 结果\n"},{"name":"deleteUserByIds","paramTypes":["java.lang.Long[]"],"doc":" 批量删除用户信息\n\n @param userIds 需要删除的用户ID\n @return 结果\n"}],"constructors":[]}
\ No newline at end of file
java包使用 `.` 分割 resource 目录使用 `/` 分割
<br>
此文件目的 防止文件夹粘连找不到 `xml` 文件
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysConfigMapper">
<resultMap type="SysConfig" id="SysConfigResult">
<id property="configId" column="config_id"/>
<result property="configName" column="config_name"/>
<result property="configKey" column="config_key"/>
<result property="configValue" column="config_value"/>
<result property="configType" column="config_type"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
</resultMap>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysDeptMapper">
<resultMap type="SysDept" id="SysDeptResult">
<id property="deptId" column="dept_id"/>
<result property="parentId" column="parent_id"/>
<result property="ancestors" column="ancestors"/>
<result property="deptName" column="dept_name"/>
<result property="orderNum" column="order_num"/>
<result property="leader" column="leader"/>
<result property="phone" column="phone"/>
<result property="email" column="email"/>
<result property="status" column="status"/>
<result property="delFlag" column="del_flag"/>
<result property="parentName" column="parent_name"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
</resultMap>
<select id="selectDeptList" resultMap="SysDeptResult">
select * from sys_dept ${ew.getCustomSqlSegment}
</select>
<select id="selectDeptListByRoleId" resultType="Long">
select d.dept_id
from sys_dept d
left join sys_role_dept rd on d.dept_id = rd.dept_id
where rd.role_id = #{roleId}
<if test="deptCheckStrictly">
and d.dept_id not in (select d.parent_id from sys_dept d inner join sys_role_dept rd on d.dept_id = rd.dept_id and rd.role_id = #{roleId})
</if>
order by d.parent_id, d.order_num
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysDictDataMapper">
<resultMap type="SysDictData" id="SysDictDataResult">
<id property="dictCode" column="dict_code"/>
<result property="dictSort" column="dict_sort"/>
<result property="dictLabel" column="dict_label"/>
<result property="dictValue" column="dict_value"/>
<result property="dictType" column="dict_type"/>
<result property="cssClass" column="css_class"/>
<result property="listClass" column="list_class"/>
<result property="isDefault" column="is_default"/>
<result property="status" column="status"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
</resultMap>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysDictTypeMapper">
<resultMap type="SysDictType" id="SysDictTypeResult">
<id property="dictId" column="dict_id"/>
<result property="dictName" column="dict_name"/>
<result property="dictType" column="dict_type"/>
<result property="status" column="status"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
</resultMap>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysLogininforMapper">
<resultMap type="SysLogininfor" id="SysLogininforResult">
<id property="infoId" column="info_id"/>
<result property="userName" column="user_name"/>
<result property="status" column="status"/>
<result property="ipaddr" column="ipaddr"/>
<result property="loginLocation" column="login_location"/>
<result property="browser" column="browser"/>
<result property="os" column="os"/>
<result property="msg" column="msg"/>
<result property="loginTime" column="login_time"/>
</resultMap>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysMenuMapper">
<resultMap type="SysMenu" id="SysMenuResult">
<id property="menuId" column="menu_id"/>
<result property="menuName" column="menu_name"/>
<result property="parentName" column="parent_name"/>
<result property="parentId" column="parent_id"/>
<result property="orderNum" column="order_num"/>
<result property="path" column="path"/>
<result property="component" column="component"/>
<result property="queryParam" column="query_param"/>
<result property="isFrame" column="is_frame"/>
<result property="isCache" column="is_cache"/>
<result property="menuType" column="menu_type"/>
<result property="visible" column="visible"/>
<result property="status" column="status"/>
<result property="perms" column="perms"/>
<result property="icon" column="icon"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateTime" column="update_time"/>
<result property="updateBy" column="update_by"/>
<result property="remark" column="remark"/>
</resultMap>
<select id="selectMenuListByUserId" parameterType="SysMenu" resultMap="SysMenuResult">
select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.query_param, m.visible, m.status,
m.perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
from sys_menu m
left join sys_role_menu rm on m.menu_id = rm.menu_id
left join sys_user_role sur on rm.role_id = sur.role_id
left join sys_role ro on sur.role_id = ro.role_id
${ew.getCustomSqlSegment}
</select>
<select id="selectMenuTreeByUserId" parameterType="Long" resultMap="SysMenuResult">
select distinct m.menu_id,
m.parent_id,
m.menu_name,
m.path,
m.component,
m.query_param,
m.visible,
m.status,
m.perms,
m.is_frame,
m.is_cache,
m.menu_type,
m.icon,
m.order_num,
m.create_time
from sys_menu m
left join sys_role_menu rm on m.menu_id = rm.menu_id
left join sys_user_role sur on rm.role_id = sur.role_id
left join sys_role ro on sur.role_id = ro.role_id
left join sys_user u on sur.user_id = u.user_id
where u.user_id = #{userId}
and m.menu_type in ('M', 'C')
and m.status = '0'
and ro.status = '0'
order by m.parent_id, m.order_num
</select>
<select id="selectMenuListByRoleId" resultType="Long">
select m.menu_id
from sys_menu m
left join sys_role_menu rm on m.menu_id = rm.menu_id
where rm.role_id = #{roleId}
<if test="menuCheckStrictly">
and m.menu_id not in (select m.parent_id from sys_menu m inner join sys_role_menu rm on m.menu_id =
rm.menu_id and rm.role_id = #{roleId})
</if>
order by m.parent_id, m.order_num
</select>
<select id="selectMenuPerms" resultType="String">
select distinct m.perms
from sys_menu m
left join sys_role_menu rm on m.menu_id = rm.menu_id
left join sys_user_role sur on rm.role_id = sur.role_id
</select>
<select id="selectMenuPermsByUserId" parameterType="Long" resultType="String">
select distinct m.perms
from sys_menu m
left join sys_role_menu rm on m.menu_id = rm.menu_id
left join sys_user_role sur on rm.role_id = sur.role_id
left join sys_role r on r.role_id = sur.role_id
where m.status = '0'
and r.status = '0'
and sur.user_id = #{userId}
</select>
<select id="selectMenuPermsByRoleId" parameterType="Long" resultType="String">
select distinct m.perms
from sys_menu m
left join sys_role_menu rm on m.menu_id = rm.menu_id
where m.status = '0' and rm.role_id = #{roleId}
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysNoticeMapper">
<resultMap type="SysNotice" id="SysNoticeResult">
<result property="noticeId" column="notice_id"/>
<result property="noticeTitle" column="notice_title"/>
<result property="noticeType" column="notice_type"/>
<result property="noticeContent" column="notice_content"/>
<result property="status" column="status"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
<result property="remark" column="remark"/>
</resultMap>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysOperLogMapper">
<resultMap type="SysOperLog" id="SysOperLogResult">
<id property="operId" column="oper_id"/>
<result property="title" column="title"/>
<result property="businessType" column="business_type"/>
<result property="method" column="method"/>
<result property="requestMethod" column="request_method"/>
<result property="operatorType" column="operator_type"/>
<result property="operName" column="oper_name"/>
<result property="deptName" column="dept_name"/>
<result property="operUrl" column="oper_url"/>
<result property="operIp" column="oper_ip"/>
<result property="operLocation" column="oper_location"/>
<result property="operParam" column="oper_param"/>
<result property="jsonResult" column="json_result"/>
<result property="status" column="status"/>
<result property="errorMsg" column="error_msg"/>
<result property="operTime" column="oper_time"/>
</resultMap>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysOssConfigMapper">
<resultMap type="com.lego.system.domain.SysOssConfig" id="SysOssConfigResult">
<result property="ossConfigId" column="oss_config_id"/>
<result property="configKey" column="config_key"/>
<result property="accessKey" column="access_key"/>
<result property="secretKey" column="secret_key"/>
<result property="bucketName" column="bucket_name"/>
<result property="prefix" column="prefix"/>
<result property="endpoint" column="endpoint"/>
<result property="isHttps" column="is_https"/>
<result property="region" column="region"/>
<result property="status" column="status"/>
<result property="ext1" column="ext1"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
<result property="remark" column="remark"/>
</resultMap>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysOssMapper">
<resultMap type="com.lego.system.domain.SysOss" id="SysOssResult">
<result property="ossId" column="oss_id"/>
<result property="fileName" column="file_name"/>
<result property="fileSuffix" column="file_suffix"/>
<result property="url" column="url"/>
<result property="createTime" column="create_time"/>
<result property="createBy" column="create_by"/>
<result property="updateTime" column="update_time"/>
<result property="updateBy" column="update_by"/>
<result property="service" column="service"/>
</resultMap>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysPostMapper">
<resultMap type="SysPost" id="SysPostResult">
<id property="postId" column="post_id"/>
<result property="postCode" column="post_code"/>
<result property="postName" column="post_name"/>
<result property="postSort" column="post_sort"/>
<result property="status" column="status"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
<result property="remark" column="remark"/>
</resultMap>
<select id="selectPostListByUserId" parameterType="Long" resultType="Long">
select p.post_id
from sys_post p
left join sys_user_post up on up.post_id = p.post_id
left join sys_user u on u.user_id = up.user_id
where u.user_id = #{userId}
</select>
<select id="selectPostsByUserName" parameterType="String" resultMap="SysPostResult">
select p.post_id, p.post_name, p.post_code
from sys_post p
left join sys_user_post up on up.post_id = p.post_id
left join sys_user u on u.user_id = up.user_id
where u.user_name = #{userName}
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysRoleDeptMapper">
<resultMap type="SysRoleDept" id="SysRoleDeptResult">
<result property="roleId" column="role_id"/>
<result property="deptId" column="dept_id"/>
</resultMap>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysRoleMapper">
<resultMap type="SysRole" id="SysRoleResult">
<id property="roleId" column="role_id"/>
<result property="roleName" column="role_name"/>
<result property="roleKey" column="role_key"/>
<result property="roleSort" column="role_sort"/>
<result property="dataScope" column="data_scope"/>
<result property="menuCheckStrictly" column="menu_check_strictly"/>
<result property="deptCheckStrictly" column="dept_check_strictly"/>
<result property="status" column="status"/>
<result property="delFlag" column="del_flag"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
<result property="remark" column="remark"/>
</resultMap>
<sql id="selectRoleVo">
select distinct r.role_id,
r.role_name,
r.role_key,
r.role_sort,
r.data_scope,
r.menu_check_strictly,
r.dept_check_strictly,
r.status,
r.del_flag,
r.create_time,
r.remark
from sys_role r
left join sys_user_role sur on sur.role_id = r.role_id
left join sys_user u on u.user_id = sur.user_id
left join sys_user us on us.user_name = r.create_by
left join sys_user_dept sud ON u.user_id = sud.user_id
left join sys_dept d on sud.dept_id = d.dept_id
</sql>
<select id="selectPageRoleList" resultMap="SysRoleResult">
<include refid="selectRoleVo"/>
${ew.getCustomSqlSegment}
</select>
<select id="selectRoleList" resultMap="SysRoleResult">
<include refid="selectRoleVo"/>
${ew.getCustomSqlSegment}
</select>
<select id="selectRolePermissionByUserId" parameterType="Long" resultMap="SysRoleResult">
<include refid="selectRoleVo"/>
WHERE r.del_flag = '0' and sur.user_id = #{userId}
</select>
<select id="selectRoleListByUserId" parameterType="Long" resultType="Long">
select r.role_id
from sys_role r
left join sys_user_role sur on sur.role_id = r.role_id
left join sys_user u on u.user_id = sur.user_id
where u.user_id = #{userId}
</select>
<select id="selectRolesByUserName" parameterType="String" resultMap="SysRoleResult">
<include refid="selectRoleVo"/>
WHERE r.del_flag = '0' and u.user_name = #{userName}
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysRoleMenuMapper">
<resultMap type="SysRoleMenu" id="SysRoleMenuResult">
<result property="roleId" column="role_id"/>
<result property="menuId" column="menu_id"/>
</resultMap>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysUserMapper">
<resultMap type="SysUser" id="SysUserResult">
<id property="userId" column="user_id"/>
<result property="userName" column="user_name"/>
<result property="nickName" column="nick_name"/>
<result property="userType" column="user_type"/>
<result property="email" column="email"/>
<result property="phonenumber" column="phonenumber"/>
<result property="sex" column="sex"/>
<result property="avatar" column="avatar"/>
<result property="password" column="password"/>
<result property="status" column="status"/>
<result property="delFlag" column="del_flag"/>
<result property="loginIp" column="login_ip"/>
<result property="loginDate" column="login_date"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
<result property="remark" column="remark"/>
<collection property="deptId" javaType="java.util.List" resultMap="deptIdResult"/>
<collection property="dept" javaType="java.util.List" resultMap="deptResult"/>
<collection property="roles" javaType="java.util.List" resultMap="RoleResult"/>
</resultMap>
<resultMap id="deptIdResult" type="long">
<id property="deptId" column="dept_id"/>
</resultMap>
<resultMap id="deptResult" type="SysDept">
<id property="deptId" column="dept_id"/>
<result property="parentId" column="parent_id"/>
<result property="deptName" column="dept_name"/>
<result property="ancestors" column="ancestors"/>
<result property="orderNum" column="order_num"/>
<result property="leader" column="leader"/>
<result property="status" column="dept_status"/>
</resultMap>
<resultMap id="RoleResult" type="SysRole">
<id property="roleId" column="role_id"/>
<result property="roleName" column="role_name"/>
<result property="roleKey" column="role_key"/>
<result property="roleSort" column="role_sort"/>
<result property="dataScope" column="data_scope"/>
<result property="status" column="role_status"/>
</resultMap>
<sql id="selectUserVo">
select u.user_id,
u.user_name,
u.nick_name,
u.user_type,
u.email,
u.avatar,
u.phonenumber,
u.password,
u.sex,
u.status,
u.del_flag,
u.login_ip,
u.login_date,
u.create_by,
u.create_time,
u.remark,
d.dept_id,
d.parent_id,
d.ancestors,
d.dept_name,
d.order_num,
d.leader,
d.status as dept_status,
r.role_id,
r.role_name,
r.role_key,
r.role_sort,
r.data_scope,
r.status as role_status
from sys_user u
left join sys_user_dept sud ON u.user_id = sud.user_id
left join sys_dept d on sud.dept_id = d.dept_id
left join sys_user_role sur on u.user_id = sur.user_id
left join sys_role r on r.role_id = sur.role_id
</sql>
<select id="selectPageUserList" resultMap="SysUserResult">
select u.user_id, d.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.sex,
u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader
from sys_user u
left join sys_user_dept sud ON u.user_id = sud.user_id
left join sys_dept d on sud.dept_id = d.dept_id
${ew.getCustomSqlSegment}
</select>
<select id="selectUserList" resultMap="SysUserResult">
select u.user_id, d.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.sex,
u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader
from sys_user u
left join sys_user_dept sud ON u.user_id = sud.user_id
left join sys_dept d on sud.dept_id = d.dept_id
${ew.getCustomSqlSegment}
</select>
<select id="selectAllocatedList" resultMap="SysUserResult">
select distinct u.user_id, d.dept_id, u.user_name, u.nick_name, u.email, u.phonenumber, u.status, u.create_time
from sys_user u
left join sys_user_dept sud ON u.user_id = sud.user_id
left join sys_dept d on sud.dept_id = d.dept_id
left join sys_user_role sur on u.user_id = sur.user_id
left join sys_role r on r.role_id = sur.role_id
${ew.getCustomSqlSegment}
</select>
<select id="selectUnallocatedList" resultMap="SysUserResult">
select distinct u.user_id, d.dept_id, u.user_name, u.nick_name, u.email, u.phonenumber, u.status, u.create_time
from sys_user u
left join sys_user_dept sud ON u.user_id = sud.user_id
left join sys_dept d on sud.dept_id = d.dept_id
left join sys_user_role sur on u.user_id = sur.user_id
left join sys_role r on r.role_id = sur.role_id
${ew.getCustomSqlSegment}
</select>
<select id="selectUserByUserName" parameterType="String" resultMap="SysUserResult">
<include refid="selectUserVo"/>
where u.del_flag = '0' and u.user_name = #{userName}
</select>
<select id="selectUserByPhonenumber" parameterType="String" resultMap="SysUserResult">
<include refid="selectUserVo"/>
where u.del_flag = '0' and u.phonenumber = #{phonenumber}
</select>
<select id="selectUserByEmail" parameterType="String" resultMap="SysUserResult">
<include refid="selectUserVo"/>
where u.del_flag = '0' and u.email = #{email}
</select>
<select id="selectUserById" parameterType="Long" resultMap="SysUserResult">
<include refid="selectUserVo"/>
where u.del_flag = '0' and u.user_id = #{userId}
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysUserPostMapper">
<resultMap type="SysUserPost" id="SysUserPostResult">
<result property="userId" column="user_id"/>
<result property="postId" column="post_id"/>
</resultMap>
</mapper>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lego.system.mapper.SysUserRoleMapper">
<resultMap type="SysUserRole" id="SysUserRoleResult">
<result property="userId" column="user_id"/>
<result property="roleId" column="role_id"/>
</resultMap>
<select id="selectUserIdsByRoleId" resultType="Long">
select u.user_id from sys_user u
inner join sys_user_role sur
on u.user_id = sur.user_id and sur.role_id = #{roleId}
</select>
</mapper>
com\lego\system\listener\SysUserImportListener.class
com\lego\system\service\impl\SysEnumerationServiceImpl.class
com\lego\system\mapper\SysRoleDeptMapper__Javadoc.json
com\lego\system\service\ISysOperLogService__Javadoc.json
com\lego\system\domain\vo\SysUserExportVo__Javadoc.json
com\lego\system\mapper\SysMenuMapper.class
com\lego\system\service\impl\SysSensitiveServiceImpl__Javadoc.json
com\lego\system\service\ISysDictTypeService.class
com\lego\system\service\ISysOssService.class
com\lego\system\service\impl\SysOssConfigServiceImpl.class
com\lego\system\domain\SysUserDept__Javadoc.json
com\lego\system\service\impl\SysPostServiceImpl__Javadoc.json
com\lego\system\mapper\SysNoticeMapper.class
com\lego\system\service\impl\SysUserServiceImpl.class
com\lego\system\service\ISysEnumerationService.class
com\lego\system\domain\SysRoleDept__Javadoc.json
com\lego\system\mapper\SysDictDataMapper.class
com\lego\system\mapper\SysUserPostMapper.class
com\lego\system\mapper\SysConfigMapper__Javadoc.json
com\lego\system\service\ISysUserService__Javadoc.json
com\lego\system\domain\SysUserRole__Javadoc.json
com\lego\system\mapper\SysEnumerationMapper.class
com\lego\system\mapper\SysOssConfigMapper.class
com\lego\system\domain\SysUserPost__Javadoc.json
com\lego\system\service\ISysDataScopeService__Javadoc.json
com\lego\system\runner\SystemApplicationRunner.class
com\lego\system\domain\bo\SysEnumerationQueryBo.class
com\lego\system\service\impl\SysDictDataServiceImpl__Javadoc.json
com\lego\system\mapper\SysLogininforMapper.class
com\lego\system\mapper\SysUserRoleMapper__Javadoc.json
com\lego\system\mapper\SysRoleMapper.class
com\lego\system\mapper\SysRoleMapper__Javadoc.json
com\lego\system\domain\SysLogininfor.class
com\lego\system\domain\vo\SysUserExportVo.class
com\lego\system\mapper\SysUserMapper.class
com\lego\system\service\SysRegisterService__Javadoc.json
com\lego\system\domain\vo\MetaVo.class
com\lego\system\service\impl\SysMenuServiceImpl__Javadoc.json
com\lego\system\service\ISysPostService.class
com\lego\system\listener\SysUserImportListener__Javadoc.json
com\lego\system\service\ISysMenuService__Javadoc.json
com\lego\system\service\ISysNoticeService.class
com\lego\system\service\impl\SysDeptServiceImpl.class
com\lego\system\mapper\SysDictTypeMapper.class
com\lego\system\domain\SysConfig.class
com\lego\system\domain\vo\MetaVo__Javadoc.json
com\lego\system\mapper\SysRoleMenuMapper.class
com\lego\system\service\impl\SysMenuServiceImpl.class
com\lego\system\service\ISysLogininforService.class
com\lego\system\mapper\SysDeptMapper.class
com\lego\system\domain\SysCache__Javadoc.json
com\lego\system\service\impl\SysOssServiceImpl.class
com\lego\system\service\impl\SysDictTypeServiceImpl.class
com\lego\system\service\impl\SysLogininforServiceImpl.class
com\lego\system\service\impl\SysEnumerationServiceImpl$1.class
com\lego\system\mapper\SysOssConfigMapper__Javadoc.json
com\lego\system\service\impl\SysConfigServiceImpl__Javadoc.json
com\lego\system\service\SysPermissionService.class
com\lego\system\domain\SysOssConfig.class
com\lego\system\domain\bo\SysOssConfigBo.class
com\lego\system\domain\SysEnumeration__Javadoc.json
com\lego\system\service\ISysOssService__Javadoc.json
com\lego\system\domain\bo\SysEnumerationQueryBo__Javadoc.json
com\lego\system\domain\SysOss__Javadoc.json
com\lego\system\domain\SysPost__Javadoc.json
com\lego\system\mapper\SysRoleDeptMapper.class
com\lego\system\service\impl\SysDataScopeServiceImpl.class
com\lego\system\domain\vo\SysOssConfigVo.class
com\lego\system\mapper\SysDictDataMapper__Javadoc.json
com\lego\system\mapper\SysPostMapper.class
com\lego\system\mapper\SysUserPostMapper__Javadoc.json
com\lego\system\mapper\SysConfigMapper.class
com\lego\system\service\impl\SysDictTypeServiceImpl__Javadoc.json
com\lego\system\service\ISysDeptService__Javadoc.json
com\lego\system\domain\vo\SysUserImportVo.class
com\lego\system\service\impl\SysRoleServiceImpl__Javadoc.json
com\lego\system\mapper\SysUserMapper__Javadoc.json
com\lego\system\service\impl\SysLogininforServiceImpl__Javadoc.json
com\lego\system\service\impl\SysOperLogServiceImpl.class
com\lego\system\domain\SysRoleDept.class
com\lego\system\domain\SysOperLog__Javadoc.json
com\lego\system\service\ISysEnumerationService__Javadoc.json
com\lego\system\domain\SysNotice.class
com\lego\system\listener\SysUserImportListener$1.class
com\lego\system\service\ISysDeptService.class
com\lego\system\mapper\SysRoleMenuMapper__Javadoc.json
com\lego\system\domain\SysLogininfor__Javadoc.json
com\lego\system\service\ISysDataScopeService.class
com\lego\system\domain\vo\SysOssVo.class
com\lego\system\domain\SysUserOnline__Javadoc.json
com\lego\system\mapper\SysOperLogMapper.class
com\lego\system\domain\bo\SysOssBo__Javadoc.json
com\lego\system\domain\SysCache.class
com\lego\system\service\ISysMenuService.class
com\lego\system\service\impl\SysUserServiceImpl__Javadoc.json
com\lego\system\mapper\SysUserRoleMapper.class
com\lego\system\service\ISysPostService__Javadoc.json
com\lego\system\service\SysLoginService.class
com\lego\system\mapper\SysOperLogMapper__Javadoc.json
com\lego\system\service\impl\SysOperLogServiceImpl__Javadoc.json
com\lego\system\mapper\SysPostMapper__Javadoc.json
com\lego\system\service\SysLoginService__Javadoc.json
com\lego\system\service\impl\SysDictDataServiceImpl.class
com\lego\system\domain\SysEnumeration.class
com\lego\system\mapper\SysMenuMapper__Javadoc.json
com\lego\system\domain\SysConfig__Javadoc.json
com\lego\system\service\ISysUserService.class
com\lego\system\service\impl\SysNoticeServiceImpl__Javadoc.json
com\lego\system\service\ISysOssConfigService__Javadoc.json
com\lego\system\service\impl\SysNoticeServiceImpl.class
com\lego\system\service\ISysConfigService__Javadoc.json
com\lego\system\domain\vo\SysOssConfigVo__Javadoc.json
com\lego\system\service\ISysOperLogService.class
com\lego\system\service\impl\SysOssServiceImpl__Javadoc.json
com\lego\system\domain\bo\SysOssConfigBo__Javadoc.json
com\lego\system\mapper\SysEnumerationMapper__Javadoc.json
com\lego\system\service\SysPermissionService__Javadoc.json
com\lego\system\mapper\SysUserDeptMapper.class
com\lego\system\domain\SysNotice__Javadoc.json
com\lego\system\service\ISysRoleService__Javadoc.json
com\lego\system\service\ISysDictTypeService__Javadoc.json
com\lego\system\domain\SysUserOnline.class
com\lego\system\service\impl\SysRoleServiceImpl.class
com\lego\system\mapper\SysOssMapper.class
com\lego\system\service\impl\SysPostServiceImpl.class
com\lego\system\service\ISysOssConfigService.class
com\lego\system\service\impl\SysDeptServiceImpl__Javadoc.json
com\lego\system\runner\SystemApplicationRunner__Javadoc.json
com\lego\system\service\ISysConfigService.class
com\lego\system\domain\SysPost.class
com\lego\system\domain\SysUserPost.class
com\lego\system\service\ISysDictDataService__Javadoc.json
com\lego\system\domain\SysOss.class
com\lego\system\mapper\SysOssMapper__Javadoc.json
com\lego\system\domain\vo\SysOssVo__Javadoc.json
com\lego\system\domain\SysRoleMenu.class
com\lego\system\service\ISysNoticeService__Javadoc.json
com\lego\system\service\SysRegisterService.class
com\lego\system\domain\SysUserRole.class
com\lego\system\mapper\SysDeptMapper__Javadoc.json
com\lego\system\domain\vo\RouterVo__Javadoc.json
com\lego\system\domain\SysRoleMenu__Javadoc.json
com\lego\system\mapper\SysLogininforMapper__Javadoc.json
com\lego\system\domain\bo\SysOssBo.class
com\lego\system\domain\vo\RouterVo.class
com\lego\system\service\ISysRoleService.class
com\lego\system\mapper\SysDictTypeMapper__Javadoc.json
com\lego\system\domain\SysOssConfig__Javadoc.json
com\lego\system\service\impl\SysEnumerationServiceImpl__Javadoc.json
com\lego\system\service\ISysLogininforService__Javadoc.json
com\lego\system\service\ISysDictDataService.class
com\lego\system\mapper\SysNoticeMapper__Javadoc.json
com\lego\system\domain\vo\SysUserImportVo__Javadoc.json
com\lego\system\service\impl\SysSensitiveServiceImpl.class
com\lego\system\service\impl\SysConfigServiceImpl.class
com\lego\system\domain\SysOperLog.class
com\lego\system\domain\SysUserDept.class
com\lego\system\service\impl\SysOssConfigServiceImpl__Javadoc.json
com\lego\system\service\impl\SysDataScopeServiceImpl__Javadoc.json
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysUserRole.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysOperLogService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysOssConfigService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysDictTypeMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysUserOnline.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\bo\SysOssBo.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysLogininfor.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\vo\SysOssConfigVo.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysMenuMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysEnumerationServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysPostMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\vo\MetaVo.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\vo\SysUserExportVo.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysNotice.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysLogininforMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\bo\SysEnumerationQueryBo.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysDeptService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\listener\SysUserImportListener.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysSensitiveServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysDictDataService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\vo\SysUserImportVo.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysLogininforService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysUserPostMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysLogininforServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysNoticeMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\SysLoginService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysEnumerationMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysDataScopeServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysDictTypeService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysMenuService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysDeptServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysConfigMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysNoticeServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\SysRegisterService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysPost.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysRoleServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\vo\RouterVo.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysOssService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\SysPermissionService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysConfigServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysUserServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysOperLog.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysOperLogMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\bo\SysOssConfigBo.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysUserMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysOssConfigServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysUserPost.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\runner\SystemApplicationRunner.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysOperLogServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysOssServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysOss.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysPostService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysRoleService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysDeptMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysUserDeptMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysCache.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysNoticeService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysRoleMenu.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysEnumerationService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysOssConfig.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysDataScopeService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysOssConfigMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\vo\SysOssVo.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysRoleDept.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysRoleMenuMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysDictDataMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysRoleMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysPostServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysRoleDeptMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysDictTypeServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysMenuServiceImpl.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysConfigService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysConfig.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysEnumeration.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysUserRoleMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\domain\SysUserDept.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\mapper\SysOssMapper.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\ISysUserService.java
F:\workspace\lego-manage\lego-system\src\main\java\com\lego\system\service\impl\SysDictDataServiceImpl.java
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!