|
|
4ba69b2ce2
|
fix(system): 修正管理员用户角色设置问题
- 给用户参数添加超级管理员标志
- 确保新创建租户的用户拥有超级管理员权限
- 改善用户权限初始化逻辑
|
2026-07-02 13:36:55 +08:00 |
|
|
|
b119a92d94
|
fix(system): 修正管理员用户角色设置问题
- 给用户参数添加超级管理员标志
- 确保新创建租户的用户拥有超级管理员权限
- 改善用户权限初始化逻辑
|
2026-07-02 00:02:27 +08:00 |
|
|
|
81ac636fb1
|
fix(system): 修复UserMapper分页查询重复记录问题
- 解决分页查询时因sys_company多条记录导致的数据重复问题
- 将LEFT JOIN sys_company改为按tenant_id分组的子查询
- 修改后子查询仅取每个tenant_id的第一条公司记录
- 保证分页查询返回的数据不再重复
- 同步更新了编译后的目标类文件
|
2026-06-29 16:45:15 +08:00 |
|
|
|
0aa65d0195
|
fix(system): 修复UserMapper分页查询重复记录问题
- 解决分页查询时因sys_company多条记录导致的数据重复问题
- 将LEFT JOIN sys_company改为按tenant_id分组的子查询
- 修改后子查询仅取每个tenant_id的第一条公司记录
- 保证分页查询返回的数据不再重复
- 同步更新了编译后的目标类文件
|
2026-06-29 15:30:26 +08:00 |
|
|
|
09ef6558ae
|
去除字典重复校验
|
2026-06-28 21:14:07 +08:00 |
|
|
|
bb34831208
|
Merge remote-tracking branch 'origin/master'
|
2026-06-28 13:07:35 +08:00 |
|
|
|
b8c147c641
|
fix(AliOssController): 根据文件类型修正缩略图和预览图逻辑
- 获取上传文件的 contentType 以判断文件类型
- 图片类型时生成带图片处理参数的缩略图和预览图
- 视频类型时生成视频截帧的缩略图,预览图使用原始 URL
- 其他类型文件直接使用原始文件 URL 作为缩略图和预览图
- 避免非图片文件拼接图片处理参数导致显示异常
|
2026-06-28 13:07:27 +08:00 |
|
|
|
fc98ee0509
|
密码登录新增手机号适配
|
2026-06-23 17:34:48 +08:00 |
|
|
|
a220b505e6
|
密码登录新增手机号适配
|
2026-06-23 17:13:35 +08:00 |
|
|
|
ab85f48a40
|
新增字典字段类型
|
2026-06-22 16:22:09 +08:00 |
|
|
|
13c48df4b3
|
fix(app_config): 修复小程序配置全局查询问题
- 调整 AppConfigMapper.xml,使用 bound_tenant_id 精确匹配绑定租户ID
- 修改 AppConfigService 去除 tenantId 为空直接返回的逻辑,支持全局查询
- 修改 WxLoginController,调用 getByCategory 时传入 null 以支持全局查询
- 新增实体字段 boundTenantId 用于区分绑定租户ID
- application-dev.yml 启用 SQL 日志和服务调试日志,便于问题排查
- 统一日志打印详细查询过程及结果,方便调试检查配置加载情况
|
2026-06-21 11:56:59 +08:00 |
|
|
|
6eb1c67516
|
fix(system): 调整小程序配置读取顺序
- 修改 getMpWxSetting 方法,优先读取 sys_setting(mp-weixin)
- 读取失败时回退到 db_websopy.app_config(category=wechat)
- 更新异常日志内容,明确读取失败顺序
- 适配业务需求调整配置优先级
- 影响所有调用 getMpWxSetting 的相关方法调用流程
|
2026-06-21 11:10:20 +08:00 |
|
|
|
03cefc9048
|
Merge remote-tracking branch 'origin/master'
|
2026-06-21 10:32:58 +08:00 |
|
|
|
f5f9e3a19d
|
fix(system): 调整小程序配置读取顺序
- 修改 getMpWxSetting 方法,优先读取 sys_setting(mp-weixin)
- 读取失败时回退到 db_websopy.app_config(category=wechat)
- 更新异常日志内容,明确读取失败顺序
- 适配业务需求调整配置优先级
- 影响所有调用 getMpWxSetting 的相关方法调用流程
|
2026-06-21 10:32:39 +08:00 |
|
|
|
7f341c2399
|
Merge remote-tracking branch 'origin/master'
|
2026-06-20 22:03:11 +08:00 |
|
|
|
2982818a0c
|
10198添加手机添加下级逻辑
|
2026-06-20 22:03:07 +08:00 |
|
|
|
307c209565
|
fix(appconfig): 修复跨表查询以确保产品有效性
- selectByCategory SQL 增加 INNER JOIN app_product,确保只返回该租户下有效产品配置
- 加入关联条件 ap.product_id = ac.app_id 和 ap.tenant_id = #{tenantId}
- 保证查询结果中 app_config 的 app_id 必须对应有效且属于当前租户的产品
- 维护原有租户过滤和配置类型过滤逻辑,增强数据准确性
- 该改动对 Service 和 Controller 层无影响,无需修改调用逻辑
|
2026-06-18 17:17:45 +08:00 |
|
|
|
bae1f75533
|
Merge remote-tracking branch 'origin/master'
|
2026-06-18 16:32:00 +08:00 |
|
|
|
797a140f11
|
refactor(wxlogin): 改造微信配置读取优先从 app_config 获取
- 新增 AppConfig 实体及跨库 Mapper、XML 实现 db_websopy.app_config 查询
- 增加 AppConfigService 提供带缓存的配置读取接口,缓存两小时
- WxLoginController 注入 AppConfigService,新增私有方法 getMpWxSetting()
- getMpWxSetting() 优先读取 app_config(category=wechat),失败回退 sys_setting.mp-weixin
- 替换微信小程序配置获取调用点,统一通过 getMpWxSetting() 获取配置
- 避免跨库 TenantLineInterceptor 干扰,Mapper 方法加 @InterceptorIgnore 标注
- 修正 StringRedisTemplate 注入避免 Bean 名冲突
- 新增读取失败或无配置时的降级和异常处理逻辑
- 日志补充便于排查配置读取过程及缓存情况
|
2026-06-18 16:31:04 +08:00 |
|
|
|
fb75156a03
|
支付方式新增子商户id、子应用字段
|
2026-06-10 12:39:58 +08:00 |
|
|
|
779f90e813
|
feat(user): 新增开发者筛选条件
- 在UserParam中添加isDeveloper字段及其注解说明
- 在UserMapper.xml中添加isDeveloper的查询条件判断
- 支持根据开发者身份进行用户筛选查询
|
2026-06-05 17:19:31 +08:00 |
|
|
|
2a880df691
|
feat(auth): 新增开发者短信验证码登录功能
- 增加根据手机号查询最近登录开发者账号接口,忽略租户隔离
- 实现开发者登录时手机号无注册时的错误提示
- 在登录流程中支持场景参数,区分开发者登录逻辑
- 新增开发者短信验证码登录API及相关校验逻辑
- 将开发者短信登录接口加入安全配置免验证路径
- 在User实体中添加isDeveloper字段标识开发者账号
- 记录登录操作日志,包含成功与失败原因
- 支持token有效期配置优先取缓存中的注册配置
|
2026-05-31 11:30:07 +08:00 |
|
|
|
ec3bededa4
|
feat(auth): 新增超级管理员手机号短信验证码登录功能
- 在登录接口中增加对superAdminLogin场景的手机号校验
- 提供超级管理员短信验证码登录接口,支持验证码校验和超级管理员身份验证
- 超级管理员登录成功后生成访问token并缓存
- 在UserMapper中添加根据手机号查询最近登录超级管理员账号的方法
- 在UserService及其实现中增加对应的查询接口
- 更新SecurityConfig,放行超级管理员短信登录接口的权限验证
- 增强登录记录保存逻辑,包含错误和成功的登录记录保存
|
2026-05-31 10:52:33 +08:00 |
|
|
|
e2c84b94b9
|
fix(UserBalanceLog): 优化 SQL 参数空值校验
- 在多个 SQL 查询条件中添加参数非空且非空字符串判断
- 防止空字符串导致的错误匹配或异常
- 统一调整语句格式,保持代码规范和可读性
- 优化关联查询时参数过滤逻辑,提升查询准确性
|
2026-05-27 08:22:05 +08:00 |
|
|
|
f7e3cad931
|
feat(system): 支持分页查询租户时根据all参数控制范围
- 新增TenantParam中的all字段用于控制是否查询全部租户
- page接口根据all参数判断是否自动设置当前登录用户userId作为过滤条件
- 保持mask参数逻辑不变,支持脱敏控制
- 改进分页查询功能,增强查询灵活性和权限控制
|
2026-04-27 09:32:36 +08:00 |
|
|
|
6a48299e12
|
fix(system): 修复超级管理员用户名设置错误
- 将超级管理员用户名从随机UUID改为固定的"superAdmin"
- 确保超级管理员账户标识一致性
- 便于后续权限管理和系统维护
|
2026-04-27 09:25:36 +08:00 |
|
|
|
ed9d500e5d
|
fix(system): 修正超级管理员标识及关联查询逻辑
- 将 TenantMapper.xml 中用户表连接更新为使用 gxwebsoft_core.sys_user
- 修改关联查询条件,使用 is_super_admin 替代 is_admin 标识
- 调整 User 实体中 isSuperAdmin 字段,移除@TableField注解以确保正确映射
|
2026-04-27 09:07:16 +08:00 |
|
|
|
64e9674d0e
|
refactor(database): 优化租户相关SQL查询逻辑
- 移除嵌套子查询,改用子查询中取最小user_id方式关联管理员用户
- 简化管理员用户相关字段的查询逻辑,提升SQL可读性
- 直接关联sys_user表替代以前复杂多层嵌套结构
- 保持查询结果字段一致,避免影响现有功能使用
|
2026-04-27 07:26:47 +08:00 |
|
|
|
6804a0a824
|
refactor(database): 优化租户相关SQL查询逻辑
- 移除嵌套子查询,改用子查询中取最小user_id方式关联管理员用户
- 简化管理员用户相关字段的查询逻辑,提升SQL可读性
- 直接关联sys_user表替代以前复杂多层嵌套结构
- 保持查询结果字段一致,避免影响现有功能使用
|
2026-04-27 07:20:52 +08:00 |
|
|
|
a3c4b74d33
|
refactor(tenant): 优化租户管理员用户查询逻辑
- 修改TenantMapper中sys_user的关联查询方式
- 使用ROW_NUMBER窗口函数获取每个租户的第一个管理员用户
- 过滤出is_admin为1且未删除的用户,提高查询准确性
- 避免直接按照user_id关联带来的潜在数据错误
- 保持查询结果结构不变,确保兼容现有业务逻辑
|
2026-04-27 07:17:10 +08:00 |
|
|
|
c3bd90f234
|
fix(tenant): 修复租户初始化和关联查询问题
- tenantService.initialization()返回新增Company对象并使用其tenantId赋值
- userParam及userParam1新增tenantId字段,使用新创建租户ID
- Tenant实体新增username字段,支持用户名信息存储
- TenantMapper查询语句增加c.username字段关联查询
- TenantServiceImpl中超级管理员username设为随机UUID字符串,避免固定用户名冲突
|
2026-04-27 07:04:54 +08:00 |
|
|
|
5579f7494e
|
refactor(system): 移除手机号唯一限制,改由数据库唯一约束处理
- 取消注册管理员时手机号唯一校验,允许同一手机号创建多个租户
- 删除代码中重复注册手机号的业务检查逻辑
- 数据库查询手机号码管理员时,强制必须传入租户ID进行多租户支持
- 修改SQL注释,明确手机管理员查询需提供租户ID
- 保证手机号唯一性通过数据库唯一约束机制实现,提高数据一致性和扩展性
|
2026-04-27 06:52:47 +08:00 |
|
|
|
e9532ae4d7
|
fix(system): 修复用户查询条件中过滤模板ID的问题
- 移除了UserMapper.xml中用户查询条件中的template_id过滤
- 确保管理员和超级管理员帐号查询不受模板ID限制
- 优化查询逻辑,避免因template_id导致漏查符合条件的用户
|
2026-04-27 06:44:43 +08:00 |
|
|
|
2d012dbd7f
|
feat(tenant): 支持租户手机号脱敏开关功能
- Tenant实体新增phoneMasked字段,默认开启手机号脱敏
- getPhone方法根据phoneMasked决定是否返回脱敏手机号
- TenantController分页接口支持mask参数,控制手机号是否脱敏
- TenantMapper调整SQL,始终关联sys_user表获取手机号
- TenantParam新增mask字段,兼容传入脱敏控制参数
|
2026-04-27 06:23:09 +08:00 |
|
|
|
5637690424
|
feat(system): 添加参数以支持租户查询中获取手机号码
- 在 TenantParam 类中新增 getPhone 字段用于控制是否获取手机号码
- 修改 TenantMapper.xml,增加条件性连接 sys_user 表以获取电话号码
- 根据 getPhone 字段动态添加手机号码字段及关联表连接查询
- 实现租户查询时根据需要可选择返回手机号信息
|
2026-04-27 06:12:45 +08:00 |
|
|
|
6cb23a8eee
|
fix(system): 修复超级管理员注册时手机号获取逻辑
- 自动使用当前登录用户的手机号替代传入手机号
- 确保登录用户为空时仍使用请求中的手机号
- 优化超级管理员注册接口的手机号获取方式
|
2026-04-27 06:10:06 +08:00 |
|
|
|
e2520001c9
|
refactor(system): 删除TenantServiceImpl中多余的userId更新逻辑
- 删除了对company和tenant的userId更新代码
- 简化了superAdmin用户保存后的逻辑
- 优化了代码结构,提升可读性和维护性
|
2026-04-26 14:24:59 +08:00 |
|
|
|
f894c53184
|
fix(system): 保存租户时增加当前登录用户ID
- 在保存租户信息时设置当前登录用户的ID
- 确保tenant对象包含userId字段以关联操作人
- 优化租户数据初始化逻辑,增加操作追踪
|
2026-04-26 14:19:16 +08:00 |
|
|
|
5f253695c4
|
fix(system): 修复创建超级管理员时更新company和tenant的userId
- 在保存超级管理员用户后,更新company的userId字段
- 查询对应tenant并同步更新其userId字段
- 确保company和tenant的userId保持一致性
- 防止因userId未更新导致的数据不一致问题
|
2026-04-26 14:17:44 +08:00 |
|
|
|
05c67811ed
|
fix(system): 移除重复权限注解修饰符
- 删除TenantController中get方法上的多余@PreAuthorize注解
- 确保接口权限校验逻辑仅由其他配置统一管理
- 清理代码提高可读性和维护性
|
2026-04-26 03:34:16 +08:00 |
|
|
|
7d562db19c
|
fix(auth): 优化验证码校验逻辑处理
- 提取开发者短信验证码到变量减少重复获取
- 针对租户10519添加硬编码万能验证码"170083"支持
- 保持验证码不正确时的错误提示和日志记录逻辑
- 增强代码可读性和维护性
|
2026-04-21 10:12:21 +08:00 |
|
|
|
5e66c4c65b
|
fix(auth): 优化验证码校验逻辑处理
- 提取开发者短信验证码到变量减少重复获取
- 针对租户10519添加硬编码万能验证码"170083"支持
- 保持验证码不正确时的错误提示和日志记录逻辑
- 增强代码可读性和维护性
|
2026-04-21 10:12:16 +08:00 |
|
|
|
5b3363d1ae
|
feat(wx): 实现小程序码生成自动重试机制
- 在生成小程序码时增加首次失败后清理缓存并重试的逻辑
- 新增强制刷新 access_token 的方法 getAccessTokenForcibly
- 优化了获取 access_token 失败的日志提示,不再在错误时清理缓存
- 移除生成小程序码接口对 token 错误时清理缓存的判断及操作
- 移除异常时清理缓存的代码,避免误删除有效缓存
- 调整二维码请求参数,移除注释的颜色配置代码
|
2026-04-11 09:02:20 +08:00 |
|
|
|
a57eb804eb
|
feat(wx): 实现小程序码生成自动重试机制
- 在生成小程序码时增加首次失败后清理缓存并重试的逻辑
- 新增强制刷新 access_token 的方法 getAccessTokenForcibly
- 优化了获取 access_token 失败的日志提示,不再在错误时清理缓存
- 移除生成小程序码接口对 token 错误时清理缓存的判断及操作
- 移除异常时清理缓存的代码,避免误删除有效缓存
- 调整二维码请求参数,移除注释的颜色配置代码
|
2026-04-11 08:56:11 +08:00 |
|
|
|
789b8ddeca
|
fix(wx): 优化获取手机号失败时的token缓存清理逻辑
- 解析不同类型的错误码以确保正确识别token相关错误
- 增加isTokenRelatedError方法判断特定错误码是否属于token相关错误
- 在获取手机号失败时清理对应的access_token缓存,防止token失效问题
- 输出详细日志便于排查微信获取手机号失败的异常情况
- 修正小程序二维码生成中env_version注释说明提升可读性
- 新增高级开发工程师专家配置数据
|
2026-04-11 08:47:52 +08:00 |
|
|
|
7aaf25c1ac
|
fix(qrLogin): 优化小程序码Token错误处理与缓存清理
- 新增access_token对应Redis键,保持与WxService一致
- 获取access_token失败时添加缓存清理操作
- 生成小程序码API返回token相关错误时清理缓存
- 异常捕获时也进行access_token缓存清理,防止token问题
- 增加判断token相关错误码的方法,明确常见微信API错误码
- 实现清理access_token缓存方法,包含异常日志处理
|
2026-04-11 07:44:34 +08:00 |
|
|
|
1d5b65bcc0
|
fix(qrLogin): 修正小程序二维码环境版本参数
- 将小程序二维码请求中的 env_version 参数从 develop 改为 release
- 更新 expert-history.json 文件中的 lastUpdated 时间戳
|
2026-04-10 13:41:17 +08:00 |
|
|
|
f382df7976
|
fix(mq): 修改RabbitMQ同步交换机名称
- 将同步交换机名称从 sync.exchange 修改为 sync.topic.exchange
- 更新相关配置以反映新的交换机名称
- 维护消息队列配置的一致性和正确性
|
2026-04-09 17:11:03 +08:00 |
|
|
|
9353fb6b85
|
fix(mq): 修改RabbitMQ同步交换机名称
- 将同步交换机名称从 sync.exchange 修改为 sync.topic.exchange
- 更新相关配置以反映新的交换机名称
- 维护消息队列配置的一致性和正确性
|
2026-04-09 16:44:01 +08:00 |
|
|
|
bf12ed397c
|
fix(mq): 修改RabbitMQ同步交换机名称
- 将同步交换机名称从 sync.exchange 修改为 sync.topic.exchange
- 更新相关配置以反映新的交换机名称
- 维护消息队列配置的一致性和正确性
|
2026-04-09 16:42:58 +08:00 |
|