Commit Graph

123 Commits

Author SHA1 Message Date
3a94348cca fix: 对齐门店仓储接口签名并恢复多租户过滤
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 41s
2026-02-17 12:19:23 +08:00
c032608a57 Revert "refactor: 清理租户API旧模块代码"
This reverts commit 992930a821.
2026-02-17 12:12:01 +08:00
654b1ae3f7 feat: tenant门店管理首批接口落地
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 30s
2026-02-17 11:10:06 +08:00
992930a821 refactor: 清理租户API旧模块代码 2026-02-17 09:57:26 +08:00
2711893474 feat: 完成租户个人中心 API 首版实现 2026-02-09 20:01:11 +08:00
b02950e465 fix: 修复商户中心查询 RowVersion 列不存在问题
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 38s
2026-02-06 13:56:08 +08:00
ec5293d892 fix: identity 登录并发改为 xmin
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 8s
移除 identity_users 对 RowVersion 列的依赖,改用 PostgreSQL xmin 作为并发令牌,修复线上登录因缺失 RowVersion 列导致的 500 错误。
2026-02-06 12:11:52 +08:00
MSuMshk
5a26f82628 refactor: 将 Permission 和 MenuDefinition 改为系统级实体
- Permission 和 MenuDefinition 改为继承 AuditableEntityBase(移除 TenantId)
- 添加 PortalType 枚举区分平台端/租户端
- Repository 使用 IgnoreQueryFilters() 查询系统级数据
- 更新所有相关 Handler 和 DTO,移除 TenantId 引用
- 与 AdminApi 保持一致的设计

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 14:49:27 +08:00
MSuMshk
e88c41c11e feat: 实现动态租户解析与移除菜单回退逻辑
1. 新增 ITenantCodeResolver 接口和 DatabaseTenantCodeResolver 实现
2. 修改 TenantResolutionMiddleware 支持从数据库动态解析租户编码
3. ITenantRepository 新增 FindIdByCodeAsync 方法
4. 移除 EfMenuRepository 中危险的系统菜单回退逻辑
5. 调整服务注册顺序确保依赖正确注入

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 13:05:52 +08:00
root
8e315e4f17 fix: 租户端启动补齐字典与消息依赖 2026-01-30 02:42:22 +00:00
root
cf697b3889 fix: 统一逐租户上下文执行 2026-01-30 01:04:51 +00:00
root
41cfd2e2e8 refactor: 收紧角色与商户跨租户能力 2026-01-29 14:52:25 +00:00
root
a0b77d4847 fix: 禁止账单跨租户查询 2026-01-29 14:51:56 +00:00
root
1622c38043 refactor: 订阅任务按租户上下文执行 2026-01-29 14:51:21 +00:00
root
f9053356c2 refactor: 移除门店跨租户访问入口 2026-01-29 14:50:49 +00:00
root
52fb4fde72 refactor: 清理平台表述并统一为系统 2026-01-29 13:49:03 +00:00
root
b3d611304b refactor: 移除身份跨租户忽略租户过滤 2026-01-29 13:48:31 +00:00
root
8276174526 refactor: 删除超级管理员相关迁移 2026-01-29 13:47:57 +00:00
root
1ee9aa8435 refactor: 移除菜单平台根租户读取 2026-01-29 13:47:32 +00:00
root
bc1c4cc41b refactor: 禁止 TenantId=0 并改为系统租户 2026-01-29 13:16:15 +00:00
root
77836e270f refactor: 移除平台公告与跨租户目标 2026-01-29 13:15:53 +00:00
root
0d9402d204 refactor: 移除平台管理员残留定义 2026-01-29 12:25:54 +00:00
root
c7307c1942 refactor: 移除租户审核领取模型 2026-01-29 12:15:19 +00:00
root
86ef0d6033 feat: 新增租户管理端 TenantApi 并移除旧 API 2026-01-29 11:39:57 +00:00
root
06981838a6 fix: 修复 DeliveryZoneService 可空警告 2026-01-29 03:07:25 +00:00
root
c5e2501e1a refactor: 抽离 Docs/BuildingBlocks 子模块 2026-01-29 03:07:01 +00:00
725f89ae24 feat: Add tiered packaging fee support for stores
Introduces tiered packaging fee configuration for stores by adding OrderPackagingFeeMode and PackagingFeeTiers fields to StoreFee. Updates DTOs, validators, handlers, and mapping logic to support both fixed and tiered packaging fee modes. Adds StoreFeeTierHelper for tier normalization and serialization, and includes a database migration to persist the new fields.
2026-01-26 09:26:49 +08:00
36abd83e83 chore: update store delivery zone handlers 2026-01-21 11:27:13 +08:00
8bde1a6440 fix: 门店时段与临时调整跨租户处理 2026-01-20 20:38:05 +08:00
32f5bbbd43 feat(store): 扩展临时时段配置 2026-01-20 18:41:34 +08:00
3385674490 fix: 门店资质日期字段改为date 2026-01-20 13:09:06 +08:00
30e54e2bea fix: 修复门店租户写入与跨租户查看 2026-01-19 20:43:27 +08:00
a042c7ef82 Merge branch 'dev' of https://github.com/msumshk/TakeoutAPI into dev 2026-01-05 19:11:16 +08:00
398c716734 fix:修复注释错误 2026-01-04 21:22:26 +08:00
aa42a635e4 feat: 提交后端其余改动 2026-01-01 07:41:57 +08:00
fc55003d3d 完成门店管理后端接口与任务 2026-01-01 07:26:14 +08:00
dc9f6136d6 feat: 实现字典管理后端 2025-12-30 19:56:24 +08:00
dd91c1010a feat:商户管理 2025-12-29 16:40:27 +08:00
57f4c2d394 fix: 公告模块第一次修复 2025-12-27 18:22:30 +08:00
bc09d9ca2e fix: 权限固定为全局 2025-12-27 16:47:38 +08:00
dd58cc2ed0 fix: 菜单固定为全局 2025-12-27 16:47:15 +08:00
3d6e2f02b4 fix: 升级依赖并适配消息模块 2025-12-27 12:32:54 +08:00
9df54d620d fix: 修复用户角色替换的软删除冲突 2025-12-27 12:32:53 +08:00
2d09a629be feat: 身份操作日志改造为Outbox并修正日志库连接 2025-12-27 12:32:53 +08:00
04444c6554 fix: 修复公告过时警告并补齐用户权限 2025-12-27 12:32:52 +08:00
b2a90cf8af feat: 用户管理后端与日志库迁移 2025-12-27 06:23:03 +08:00
ca632a7c09 refactor: 日志库拆分与清理用户审计 2025-12-26 17:24:10 +08:00
755b61a044 fix: 修复公告模块核心问题并完善功能
主要修复内容:
1. 修复 RowVersion 并发控制
   - 配置 EF Core RowVersion 映射为 bytea 类型
   - 添加 PostgreSQL 触发器自动生成 RowVersion
   - 在更新/发布/撤销操作中添加 RowVersion 校验
   - 移除 Application 层对 EF Core 的直接依赖

2. 修复 API 路由和校验问题
   - 添加平台公告列表路由的版本化别名
   - 租户公告接口添加 X-Tenant-Id 必填校验,返回 400
   - 生效时间校验返回 422 而非 500
   - 修复 FluentValidation 异常命名冲突

3. 实现关键词搜索功能
   - 在查询参数中添加 keyword 字段
   - 使用 PostgreSQL ILIKE 实现大小写不敏感搜索
   - 支持标题和内容字段的模糊匹配

4. 数据库迁移
   - 新增 RowVersion 触发器迁移文件
   - 回填现有公告记录的 RowVersion
2025-12-26 09:16:07 +08:00
857f776447 feat: 实现完整的多租户公告管理系统
核心功能:
- 公告状态机(草稿/已发布/已撤销)支持发布、撤销和重新发布
- 发布者范围区分平台级和租户级公告
- 目标受众定向推送(全部租户/指定角色/指定用户)
- 平台管理、租户管理和应用端查询API
- 已读/未读管理和未读统计

技术实现:
- CQRS+DDD架构,清晰的领域边界和事件驱动
- 查询性能优化:数据库端排序和限制,估算策略减少内存占用
- 并发控制:修复RowVersion配置(IsRowVersion→IsConcurrencyToken)
- 完整的FluentValidation验证器和输入保护

测试验证:
- 36个测试全部通过(27单元+9集成)
- 性能测试达标(1000条数据<5秒)
- 代码质量评级A(优秀)

文档:
- 完整的ADR、API文档和迁移指南
- 交付报告和技术债务记录
2025-12-20 19:57:09 +08:00
00eb357e6e fix: 平台订阅管理支持跨租户查询 2025-12-18 23:58:24 +08:00