2711893474
feat: 完成租户个人中心 API 首版实现
2026-02-09 20:01:11 +08:00
5f2064324d
feat: 新增租户端商户中心聚合接口
...
Build and Deploy TenantApi / build-and-deploy (push) Successful in 40s
提供 /merchant/info 聚合查询,返回商户主体、资质、合同、员工与日志信息,满足租户端商户中心页面一次加载全部相关数据。
2026-02-06 13:45:20 +08:00
a0e0848af7
feat: profile 返回当前套餐名称
...
Build and Deploy TenantApi / build-and-deploy (push) Successful in 38s
在认证档案中增加 packageName 字段,并基于租户当前有效订阅从套餐表读取名称返回给前端,便于头像下拉直接展示真实套餐信息。
2026-02-06 13:03:41 +08:00
msumshk
f10319d96b
feat: 添加 Gitea Actions 自动部署工作流
Build and Deploy TenantApi / build-and-deploy (push) Successful in 40s
2026-02-05 21:31:55 +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
MSuMshk
cfacbf8363
feat: 补全租户端认证接口
...
- 新增 GET /api/tenant/v1/auth/profile 获取当前用户信息
- 新增 GET /api/tenant/v1/auth/permissions 获取当前用户权限码
- 新增 GET /api/tenant/v1/auth/menu 获取当前用户菜单树
- 移除 MeController,功能合并至 AuthController
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-02 12:39:23 +08:00
MSuMshk
286e6e9acb
refactor: 移除租户端简化登录接口及相关依赖
...
- 移除 /api/tenant/v1/auth/login/simple 接口
- 移除 IAdminAuthService.LoginSimpleAsync 方法
- 移除 AdminAuthService.LoginSimpleAsync 实现
- 移除 IsLikelyPhone 辅助方法
- 清理未使用的 ITenantContextAccessor 和 ITenantRepository 依赖
- 添加 CLAUDE.md 开发规范文件
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-02 11:38:32 +08:00
MSuMshk
5338eb5434
chore: 更新开发和生产环境配置文件
...
- 更新 appsettings.Development.json 配置
- 更新 appsettings.Production.json 配置
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-02 09:11:55 +08:00
root
8e315e4f17
fix: 租户端启动补齐字典与消息依赖
2026-01-30 02:42:22 +00:00
root
86ef0d6033
feat: 新增租户管理端 TenantApi 并移除旧 API
2026-01-29 11:39:57 +00:00
root
0ae2589b51
refactor: 移除管理端与网关项目
2026-01-29 03:33:06 +00:00
root
c5e2501e1a
refactor: 抽离 Docs/BuildingBlocks 子模块
2026-01-29 03:07:01 +00:00
41ce8f2ccb
refactor: drop tencent map signature endpoint
2026-01-21 14:18:16 +08:00
054beb4a69
fix: adjust tencent map signature encoding
2026-01-21 13:19:14 +08:00
60f12b3e58
feat: add tencent map signature endpoint
2026-01-21 12:35:39 +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
a427b0f22a
feat:放开商户导出权限
2025-12-29 22:17:45 +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
2d09a629be
feat: 身份操作日志改造为Outbox并修正日志库连接
2025-12-27 12:32:53 +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
907c9938ae
feat(admin-api): 实现 TD-001 和 TD-002 后端接口
...
TD-001 - PUT /api/admin/v1/tenants/{tenantId}:
- 新增 UpdateTenantCommand + UpdateTenantCommandHandler
- Controller 新增 Update 端点(tenant:update 权限)
- 校验:租户存在、name 非空、name/contactPhone 冲突返回 409
- 仓储扩展:ITenantRepository.ExistsByNameAsync
TD-002 - GET /api/admin/v1/tenants/{tenantId}/quota-usage-history:
- 新增 CQRS Query/Handler/DTO/Validator
- 支持分页(Page>=1, PageSize 1~100)
- 支持时间范围和 QuotaType 过滤
- 新增 tenant_quota_usage_histories 表(含迁移)
- 写入点:CheckTenantQuotaCommandHandler + PurchaseQuotaPackageCommandHandler
构建验证:dotnet build 通过
数据库迁移:已应用 20251218121053_AddTenantQuotaUsageHistories
2025-12-18 20:19:33 +08:00
40e914dc92
feat: 新增一键确认收款接口
...
问题: 原recordPayment只创建Pending支付记录,不更新账单状态
用户点击确认收款后需要再次审核才能生效
解决方案:
- 新增POST /api/admin/v1/billings/{id}/payments/confirm接口
- 内部原子化执行: 创建支付+自动审核+更新账单状态
- 保留原recordPayment接口用于需要审核的场景
新增文件:
- ConfirmPaymentCommand.cs
- ConfirmPaymentCommandHandler.cs
- ConfirmPaymentCommandValidator.cs
2025-12-18 15:29:30 +08:00
4b53862ded
✨ feat: 完成账单管理模块后端功能开发及API优化
...
核心功能:
- 账单CRUD操作(创建、查询、详情、更新状态、删除)
- 支付记录管理(创建支付、审核支付)
- 批量操作支持(批量更新账单状态)
- 统计分析功能(账单统计、逾期账单查询)
- 导出功能(Excel/PDF/CSV)
API端点 (16个):
- GET /api/admin/v1/billings - 账单列表(分页、筛选、排序)
- POST /api/admin/v1/billings - 创建账单
- GET /api/admin/v1/billings/{id} - 账单详情
- DELETE /api/admin/v1/billings/{id} - 删除账单
- PUT /api/admin/v1/billings/{id}/status - 更新状态
- POST /api/admin/v1/billings/batch/status - 批量更新
- GET /api/admin/v1/billings/{id}/payments - 支付记录
- POST /api/admin/v1/billings/{id}/payments - 创建支付
- PUT /api/admin/v1/billings/payments/{paymentId}/verify - 审核支付
- GET /api/admin/v1/billings/statistics - 统计数据
- GET /api/admin/v1/billings/overdue - 逾期账单
- POST /api/admin/v1/billings/export - 导出账单
架构优化:
- 采用CQRS模式分离读写(MediatR + Dapper + EF Core)
- 完整的领域模型设计(TenantBillingStatement, TenantPayment等)
- FluentValidation请求验证
- 状态机管理账单和支付状态流转
API设计优化 (三项改进):
1. 导出API响应Content-Type改为application/octet-stream
2. 支付审核API添加Approved和Notes可选参数,支持通过/拒绝
3. 移除TenantBillings API中重复的TenantId参数
数据库变更:
- 新增账单相关表及关系
- 支持Snowflake ID主键
- 完整的审计字段支持
🤖 Generated with Claude Code
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com >
2025-12-18 11:24:44 +08:00
ab59e2e3e2
feat: 新增配额包/支付相关实体与迁移
...
App:新增 operation_logs/quota_packages/tenant_payments/tenant_quota_package_purchases 表
Identity:修正 Avatar 字段类型(varchar(256)->text),保持现有数据不变
2025-12-17 17:27:45 +08:00
2ed814fbe7
feat: 套餐到期分布与到期租户筛选
2025-12-15 21:46:20 +08:00
a201885240
feat: 套餐使用统计与使用租户接口
2025-12-15 16:00:38 +08:00
d2c7e1fb71
fix: 修复伪装登录与重置链接返回
2025-12-15 15:15:42 +08:00
2249588e07
feat: 支持租户伪装登录与管理员重置链接
2025-12-15 14:43:50 +08:00
d64545dd26
feat: 租户冻结解冻与订阅延期接口
2025-12-15 13:44:47 +08:00
13821f2d19
feat: 后台手动新增租户并直接入驻接口
2025-12-15 12:16:17 +08:00
2339775fcb
feat: 租户审核领单与强制接管
2025-12-15 10:40:50 +08:00
8b18d0cb96
feat: admin simple 登录支持 账号@手机号
2025-12-12 22:06:37 +08:00
aa81dddc16
feat: 公域租户订阅自助接口
2025-12-12 20:00:55 +08:00
ddeebc7d80
feat: 新增资质文件上传类型并修正开发 COS 配置
2025-12-12 15:32:22 +08:00
f2267f3e81
fix: 更新管理端开发环境 COS 配置并关闭来源校验
2025-12-12 14:47:51 +08:00
c7df64f2e1
feat: add public tenant packages listing and sort order
2025-12-11 23:57:04 +08:00
37dc23f0c1
feat: add permission hierarchy tree
2025-12-06 11:53:14 +08:00
d34f92ea1d
fix: allow platform root tenant to manage all tenant roles
2025-12-05 23:11:03 +08:00