chenchuchuan
|
8bf1d4638c
|
feat(tenant): 实现租户自定义字段tenant_前缀隔离机制
- 新增 TenantFieldUtil 工具类,定义 tenant_ 前缀命名约定
- 管理端新增/编辑字段时校验禁止占用 tenant_ 前缀
- 租户端新增字段自动追加 tenant_ 前缀并同步改写 widgetJson 列名
- 拆分 OnlineFormTenantSyncService 为 syncFormUpdate 和 syncFormMetadata
- SysTenantRoleServiceImpl 移除内联同步逻辑,委托统一服务调用
- 新增 SyncLog 模型、Mapper 及 SyncLogService 记录同步操作日志
- 升级 common-online 至 1.0.7、common-generator 至 1.0.6
|
1 day ago |
chenchuchuan
|
3902dc8d53
|
chore(deps): 统一子模块依赖版本并移除根pom属性变量
- 移除根 pom.xml 中 common-core.version 属性定义
- 将根 pom 中版本变量引用替换为硬编码版本号
- 各子模块 pom 中为 common-core 依赖显式声明版本 1.0.1
- 各子模块 pom 中为 common-orm 依赖显式声明版本 1.0.4
- common-botp 版本从 1.0.0 升级至 1.0.1
- common-generator 版本从 1.0.5 升级至 1.0.6
- common-online 版本从 1.0.6 升级至 1.0.7
|
2 days ago |
chenchuchuan
|
937bdddea6
|
fix(tenant): 修复租户同步中tenantId类型错误及健壮性问题
- 将OnlCgreportHead和OnlFormHead的tenantId字段类型从String改为Long
- 修正同步处理中错误使用transId作为tenantId的问题,改为从消息体正确获取
- 新增parseRelativeFormCodes方法安全解析widgetJson,避免非法JSON抛异常
- 对in查询的空集合做防护,避免MyBatis-Plus传入空列表导致SQL异常
- 消息体中显式传递tenantId字段确保同步端可正确识别租户
- 角色查询中过滤null的roleId并使用LinkedHashSet去重
- 组织未配置角色时新增fallback机制回退到用户自身角色
- 表单元数据同步查询条件增加tenantId过滤确保租户隔离
|
2 days ago |
chenchuchuan
|
70860e7f08
|
feat(tenant): 将在线表单合并同步初版移植到 dev-lml
cherry-pick 6023f11(dev-wj):新增表单元数据/查询数据源/表单 JSON 三个同步消费者、
FormWidgetMergeUtils 三方合并、TenantConstant 同步命令、@TenantOnlFormHeadSuffix 切面,
并为 OnlFormHead/OnlCgreportHead 增加 tenantId。
冲突处理:
- OnlineFormServiceImpl:保留 dev-lml 的 commons-lang3 导入,追加 cacheLastUpdateOnlineForm
- SysUserController:取 dev-lml 版本(净变更仅为删除已不存在的 javafx 导入)
- 排除 zzlogs 日志文件
Co-Authored-By: Claude <noreply@anthropic.com>
|
3 days ago |
chenchuchuan
|
dffc4f8f39
|
feat(mcp-auth): 添加 MCP 端点鉴权拦截器与人员密钥管理
- 新增 McpAuthInterceptor,支持 Bearer JWT 与人员密钥两种鉴权方式
- 定义 McpAuthService、McpAccountProvider 等 SPI 契约,由应用侧实现
- 新增 McpWebMvcConfig 自动注册拦截器,未实现 SPI 时 fail-closed 返回 401
- 新增 SysUserSecret 实体及完整 CRUD,支持密钥签发、轮换、启停
- 实现凭证校验逻辑:keyId 定位、状态与有效期检查、SHA-256 摘要比对、手机号绑定校验
- 为 McpStreamableController 和 McpToolConfig 添加 apelet.mcp.enabled 开关控制
- 非管理员只能查看和操作自己的密钥,响应中不返回 secretHash 并脱敏手机号
|
2 weeks ago |
chenchuchuan
|
99694e8d20
|
feat(mcp): 添加MCP端点人员密钥鉴权功能
- 新增McpAuthInterceptor拦截器,支持JWT和人员密钥两种鉴权方式
- 新增SysUserSecret实体及对应的Mapper、Service、Controller完整CRUD
- 实现密钥签发、轮换、启用/停用管理接口
- 密钥口令仅存SHA-256摘要,明文只在签发/轮换响应中出现一次
- 引入会话复用机制,避免密钥分支每次请求重建会话上下文
- 响应中自动脱敏secretHash和手机号字段
|
2 weeks ago |
chenchuchuan
|
c10afd0cbe
|
feat(mcp): 添加MCP工具管理员权限控制与端点鉴权
- 在 McpToolScanner 中增加管理类工具前缀配置,命中前缀的工具仅允许管理员调用
- 调用时优先复用请求上下文中的 TokenData,避免覆盖真实身份导致匿名执行
- 新增 buildDefaultTokenData 方法作为无请求上下文时的兜底
- 实现 isToolAllowed 与 isAdminOnlyTool 方法进行工具级授权判断
- 在 InterceptorConfig 中注册 McpAuthInterceptor,独立处理 MCP 端点鉴权
- 将 MCP 端点路径从主登录态拦截器中排除,避免密钥调用被 401 拦截
- common-botp 模块依赖版本更新,common-core 版本改为引用变量
- 在 common 父模块中注册 common-botp 子模块
|
2 weeks ago |
chenchuchuan
|
4a682c6963
|
feat(openapi): 配置 OpenAPI 路由鉴权拦截器体系
- 在 InterceptorConfig 中注册 OpenApiAuthInterceptor 处理 OpenAPI 路由鉴权
- 将 OpenAPI 路径从 AuthenticationInterceptor 中排除,避免误拦截
- 通过 ObjectProvider 条件注册拦截器,支持 operationEnabled 开关
- 为 pageFormTree、files、download 接口添加 @NoAuthInterface 注解
|
2 weeks ago |
chenchuchuan
|
a65cd3b070
|
feat(openapi): 添加导入导出功能的免认证配置与CORS头暴露
- 为 OpenAPI 认证接口和路由执行接口添加 @NoAuthInterface 免认证注解
- CORS 配置新增 Content-Disposition 暴露头以支持文件下载
- 新增导入导出相关接口路径至在线操作白名单
- 完善导入导出配置项:最大行数、文件大小、批次大小、异步阈值
- 新增异步任务线程池配置:池大小与队列容量
- 规范开发环境配置文件注释与格式
|
3 weeks ago |
chenchuchuan
|
2108134d09
|
chore(deps): 统一父POM管理内部模块依赖版本
- 在根 pom.xml 的 properties 中声明 common-core 和 common-orm 版本
- 在根 pom.xml 的 dependencyManagement 中统一仲裁 common-core 与 common-orm 版本
- 移除各子模块中 common-core 和 common-orm 依赖的硬编码 version 标签
- 将 common-online 版本从 1.0.5 升级至 1.0.6 并同步更新引用方
- 将 common-generator 版本从 1.0.4 升级至 1.0.5
- tenant-admin 新增 common-core 依赖并将 common-demo 替换为 common-openapi
|
3 weeks ago |
chenchuchuan
|
e255868707
|
chore(tenant-admin): 禁用 Nacos 服务发现与配置中心
- 移除数据源自动配置排除项
- 添加 Nacos discovery.enabled 为 false 禁用服务发现
- 添加 Nacos config.enabled 为 false 禁用配置中心
- 移除外部配置文件导入项
|
3 weeks ago |
chenchuchuan
|
cee97cf13e
|
feat(openapi): 接入 OpenAPI 用户查询服务及配置
- 新增 common-openapi 配置块,包含 urlPrefix、operationEnabled、tokenSigningKey、tokenExpiration
- 新增 TenantOpenApiUserServiceImpl 实现类,按登录名查询用户信息
- mybatis-plus mapper-locations 增加 openapi 模块 Mapper 路径
- 新增导入导出异步任务相关配置项(阈值、保留时间等)
|
3 weeks ago |
chenchuchuan
|
71dd428269
|
refactor(controller): 优化控制器代码结构并添加应用启动事件监听
- 简化 OnlCgreportHeadController 中的 getParamsById 方法,移除冗余的数据存在性检查
- 更新 OnlineOperationController 中的 baseFormId 参数校验逻辑
- 在 TenantAdminApplication 中添加 ApplicationReadyEvent 监听器以显示启动成功信息
- 统一导入类声明,提高代码可读性
- 移除不必要的空行和注释,保持代码简洁性
- 增强应用启动时的用户体验,通过控制台输出启动成功提示
|
2 months ago |
chenchuchuan
|
d53982dcda
|
refactor(tenant-admin): 优化应用配置和事件监听器
- 移除 Nacos 配置中心和服务发现的禁用设置
- 删除 DataSourceAutoConfiguration 的排除配置
- 启用 logback 延迟关闭钩子功能
- 移除 ApplicationReadyEvent 监听器中的控制台输出逻辑
- 简化 bootstrap.yml 配置文件结构
|
3 months ago |
chenchuchuan
|
17f06fb86e
|
chore(build): 更新项目依赖版本和仓库配置
- 将 common-flow 模块版本从 1.0.0 升级到 1.0.2
- 将 common-flow-online 模块版本从 1.0.0 升级到 1.0.2
- 将 common-generator 模块版本从 1.0.0 升级到 1.0.4
- 将 common-online 模块版本从 1.0.0 升级到 1.0.4
- 将 common-orm 模块版本从 1.0.0 升级到 1.0.2
- 更新仓库地址从 http://58.48.135.45:8081 到 http://192.168.100.25:8081
|
3 months ago |
chenchuchuan
|
25f7f8f7c7
|
feat(online): 完善数据权限规则与角色绑定功能
- 新增IRolePermissionSchemaService接口及其实现类,管理角色与数据规则方案关联关系
- 添加RolePermissionSchema实体模型,定义角色-数据规则方案关联表结构
- 修改PermissionDataRuleSchema模型,将formId字段更名为formHeadId,新增formIdList字段
- 实现根据当前用户角色查询启用数据规则的功能,支持按表单匹配规则
- 在角色管理控制器中新增数据规则绑定参数,支持角色创建和更新时绑定数据规则方案
- 实现数据规则详情接口回显功能,填充绑定的在线表单列表
- 重构在线表单列表数据ORM服务中的权限规则查询逻辑
- 移除角色删除时的数据规则绑定清理逻辑
- 更新系统角色VO,将部门列表替换为数据规则方案ID列表
|
3 months ago |
chenchuchuan
|
2ebdaf82e6
|
chore(config): 更新项目配置和依赖版本
- 将 common-orm 依赖版本从 1.0.2 降级到 1.0.0
- 移除 bootstrap.yml 中的 nacos 配置禁用选项
- 在 logback-spring.xml 中启用延迟关闭钩子
- 移除应用就绪事件监听器和控制台输出
- 更新 maven 发布仓库地址从内网 IP 到新地址
- 调整仓库配置以适应新的部署环境
|
3 months ago |
chenchuchuan
|
cf41dad6cf
|
feat(flow): 添加在线表单工作流标题模板和多实例会签功能
- 在BaseFlowOnlineService中添加获取主表名和业务数据的默认方法
- 在BaseOnlineBusinessDataExtHelper中实现表名和业务数据获取辅助方法
- 在FlowApiService中添加标题解析方法并在实现类中完善解析逻辑
- 添加FlowConstant常量定义标题模板键值
- 在FlowTaskExt模型和映射文件中添加标题模板字段
- 在FlowEntryController和FlowOperationController中处理标题模板
- 实现MultiInstanceAssigneeListener多实例会签节点审批人监听器
- 在FlowEntryServiceImpl和FlowTaskExtServiceImpl中完善多实例节点处理
- 在FlowOnlineBusinessServiceImpl中实现业务数据获取方法
- 更新相关依赖版本并调整Nacos配置
- 修改日志配置并添加应用启动成功事件监听
|
3 months ago |
chenchuchuan
|
39e1d5ce3d
|
feat(common): 支持移动端表单字段同步功能
- 新增 collectMobileBindColumnNames 方法收集移动端列名
- 新增 mapMobileColumnNameToWidget 方法构建移动端列名到组件映射
- 实现 createNewSubTables 方法统一处理子表创建逻辑
- 添加 syncMobileSubTables 方法同步移动端子表和字段
- 实现 backfillMobileSubTableId 方法回写移动端子表ID
- 完善 syncMobileSubTableNewFields 方法处理移动端子表新增字段
- 重构 SysUserService 接口移除组织ID参数
- 优化 TaskInfoVo 类型添加解析后任务标题字段
|
3 months ago |
chenchuchuan
|
1bae360e2a
|
refactor(permission): 将按钮权限检查器和相关服务迁移至公共模块
- 移除 tenant-admin 模块中的 FormButtonPermissionCheckerImpl 实现类
- 新增 common-online 模块中的 FormButtonPermissionCheckerImpl 实现类
- 将 IRoleFormButtonService 接口从 tenant 模块迁移至 common-online 模块
- 将 RoleFormButton 实体模型从 tenant 模块迁移至 common-online 模块
- 将 RoleFormButtonController 控制器从 tenant 模块迁移至 common-online 模块
- 将 RoleFormButtonDto 数据传输对象从 tenant 模块迁移至 common-online 模块
- 迁移 RoleFormButtonMapper 数据访问层及相关 XML 映射文件
- 更新权限检查逻辑以使用 TokenData 中的角色ID信息
|
3 months ago |
chenchuchuan
|
f9ecb2aaef
|
refactor(permission): 将权限数据规则方案控制器迁移至公共模块
- 移除 application-tenant/tenant-admin 模块中的 PermissionDataRuleSchemaController
- 新增 common/common-online 模块中的 PermissionDataRuleSchemaController
- 修改请求映射路径为动态配置方式 ${common-online.urlPrefix}/permissionDataRuleSchema
- 保持原有所有功能接口不变,包括新增、编辑、删除、分页查询等操作
|
3 months ago |
chenchuchuan
|
bc20c40671
|
refactor(orm): 优化数据权限规则和部门管理功能
- 在ListDataOrmService中引入FilterParser解析条件表达式
- 修改权限数据规则schema中的form_id字段注释说明
- 移除部门模型中不再使用的type字段定义
- 更新OnlFormHeadController支持子表查询参数控制
- 调整部门控制器中默认类型设置逻辑
- 从SysDeptMapper.xml中移除type字段相关查询条件
|
3 months ago |
chenchuchuan
|
7045cdea35
|
fix(controller): 修复权限数据规则模式控制器中的参数绑定和空指针问题
- 为delete方法的id参数添加@MyRequestBody注解以确保正确绑定请求体参数
- 在getListByFilter方法中添加对filter对象的空值检查和初始化
- 防止当filter参数为null时可能出现的空指针异常
- 优化代码格式和方法签名的换行显示
|
3 months ago |
chenchuchuan
|
9ec9758bd5
|
refactor(upms): 重构角色组织关联逻辑并优化用户角色分配
- 移除 SysRoleDept 和 SysUserDept 实体类及对应Mapper
- 修改 SysRoleService 接口移除组织ID相关参数
- 修改 SysUserController 中角色和用户接口的组织参数说明
- 在 SysUserRole 实体中添加 deptId 字段用于存储组织信息
- 添加 RoleDeptItemDto 用于接收角色组织分配参数
- 新增 assignRoleDept 接口实现用户组织角色的重新分配
- 修复登录时角色ID可能为空导致的异常问题
- 优化 listUserDept 接口返回完整的组织-角色树结构
- 更新 SysRoleServiceImpl 移除组织相关的数据库操作逻辑
|
3 months ago |
chenchuchuan
|
88d393d1f7
|
feat(role): 角色模块支持组织多对多关联
- 将角色与组织的关联关系从一对一改为一对多多关联
- 修改SysRoleController中的add和update方法,将deptId参数改为deptIdListString
- 在SysRoleService中更新saveNew、update和verifyRelatedData方法以支持部门Id集合
- 修改getRoleDept方法返回部门列表而不是单个部门
- 在SysRoleVo中添加deptList字段存储关联的组织列表
- 更新SysRoleServiceImpl实现类中的相关业务逻辑
- 在SysDeptController中添加类型默认值处理逻辑
- 优化导入包声明,使用更精确的类引用
|
3 months ago |
chenchuchuan
|
b2dc6af80f
|
refactor(tenant): 重构角色表单按钮权限配置服务
- 修改 IRoleFormButtonService 接口返回类型为 Map<String, Set<String>>
|
3 months ago |
chenchuchuan
|
b6e8b1914e
|
refactor(tenant): 重构按钮权限配置服务以支持多角色合并
- 移除 getButtonConfigVo 方法中的 roleId 参数,改为合并当前用户所有角色的权限
- 添加分页功能到 listAllFormButtons 方法,支持按角色ID过滤已配置的表单
- 新增 getCurrentUserRoleIds 辅助方法从 TokenData 解析用户角色ID集合
- 实现按钮权限的并集计算逻辑,遍历用户所有角色并合并勾选状态
- 更新数据访问层以支持新的查询参数和分页返回类型
- 在删除角色时同步清理相关按钮权限配置数据
|
3 months ago |
chenchuchuan
|
1f96a131a6
|
refactor(permission): 将权限数据规则方案相关代码迁移到common-online模块
- 将PermissionDataRuleSchema实体类从tenant-admin移动到common.online.model包
- 将IPermissionDataRuleSchemaService接口从tenant-admin移动到common.online.service包
- 将PermissionDataRuleSchemaMapper接口及其实现从tenant-admin移动到common.online.dao包
- 将PermissionDataRuleSchemaVo类从tenant-admin移动到common.online.vo包
- 更新OnlineFormController添加根据表单类型查询表单列表的功能
- 在ListDataOrmService中添加过滤器TODO注释
- 修改OnlineFormService和OnlineFormServiceImpl实现表单类型查询功能
|
3 months ago |
sunquan
|
bd572ed054
|
add:新增加common-flow 模块
|
3 months ago |
chenchuchuan
|
b8a4b5727f
|
refactor(permission): 将权限数据规则方案相关代码迁移到common-online模块
- 将PermissionDataRuleSchema实体类从tenant-admin移动到common.online.model包
- 将IPermissionDataRuleSchemaService接口从tenant-admin移动到common.online.service包
- 将PermissionDataRuleSchemaMapper接口及其实现从tenant-admin移动到common.online.dao包
- 将PermissionDataRuleSchemaVo类从tenant-admin移动到common.online.vo包
- 更新OnlineFormController添加根据表单类型查询表单列表的功能
- 在ListDataOrmService中添加过滤器TODO注释
- 修改OnlineFormService和OnlineFormServiceImpl实现表单类型查询功能
|
3 months ago |
chenchuchuan
|
cb1b2dd9c3
|
feat(role): 添加角色按钮权限配置功能
- 在IRoleFormButtonService中新增listAllFormButtons方法用于分页查询所有在线表单下的按钮
- 为OnlineForm实体类添加pageIdSet字段支持页面ID集合查询
- 在OnlineFormMapper.xml中添加pageIdSet过滤条件支持
- 扩展OnlinePageService新增queryByEnableList方法查询启用的在线表单页面
- 在RoleFormButtonController中新增listAllFormButtons接口提供表单按钮列表查询
- 在RoleFormButtonServiceImpl中实现完整的表单按钮权限配置逻辑
- 修改SysRoleController在角色新增和更新时支持按钮权限配置参数
- 添加按钮权限配置的批量保存功能到角色管理流程中
|
3 months ago |
chenchuchuan
|
eadce13994
|
feat(upms): 添加部门组织类型支持及角色用户关联功能
- 在SysDept实体中新增type字段,支持部门(0)和组织(1)类型
- 为SysDeptDto和SysDeptVo添加type字段定义
- 更新SysDeptMapper.xml映射文件,添加type字段映射和过滤条件
- 创建SysRoleDept实体用于角色-组织关联关系
- 创建SysUserDept实体用于用户-组织关联关系
- 在SysRoleService中新增角色与组织的关联、查询功能
- 在SysUserService中新增用户与组织的关联、查询功能
- 扩展SysRoleController,添加角色组织关联相关接口
- 扩展SysUserController,添加用户组织关联相关接口
- 实现角色和用户服务层的组织关联业务逻辑
|
3 months ago |
chenchuchuan
|
35ee89c750
|
feat(tenant): 添加在线表单按钮权限控制功能
- 新增 FormButtonPermissionChecker 接口定义按钮权限检查器
- 实现 FormButtonPermissionCheckerImpl 提供按钮权限校验逻辑
- 创建 RoleFormButton 实体映射角色表单按钮权限配置表
- 定义 IRoleFormButtonService 接口及 RoleFormButtonServiceImpl 实现类
- 添加 RoleFormButtonController 控制器提供按钮权限配置接口
- 创建 RoleFormButtonDto 数据传输对象用于按钮权限配置
- 实现 RoleFormButtonMapper 数据访问层及对应的 XML 映射文件
- 开发 WidgetJsonButtonParser 工具类解析表单中的按钮配置
- 提供 VO 对象 RoleFormButtonVo 用于数据展示
- 实现批量保存和查询按钮权限配置的功能
- 添加按角色 ID 查询和删除相关权限配置的方法
|
3 months ago |
chenchuchuan
|
9f5efe49e3
|
feat(tenant): 添加权限数据规则方案管理功能
- 新增权限数据规则方案实体类 PermissionDataRuleSchema
- 创建权限数据规则方案服务接口和实现类
- 添加权限数据规则方案控制器提供增删改查接口
- 实现分页查询、按formId查询启用规则等功能
- 添加数据校验和业务逻辑验证机制
- 集成按钮权限校验功能
- 优化在线表单相关模型和控制器代码结构
|
3 months ago |
sunquan
|
1d42dfc702
|
fix:去掉nacos配置 app-config、t-admin-dev
|
4 months ago |
sunquan
|
c665cde835
|
fix:去掉nacos配置
|
4 months ago |
sunquan
|
0b7aea7306
|
初始化
|
6 months ago |