Commit Graph

52 Commits

Author SHA1 Message Date
6588c85f27 feat(marketing): add new customer gift backend module 2026-03-02 15:58:06 +08:00
dda3f96d28 feat: 完成营销中心优惠券后端模块
All checks were successful
Build and Deploy TenantApi + SkuWorker / build-and-deploy (push) Successful in 1m54s
2026-02-28 11:14:55 +08:00
77caac3af9 feat: SKU保存链路切换到RabbitMQ Outbox并新增独立Worker
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 51s
2026-02-25 11:20:38 +08:00
5fcc1e1484 feat: 商品SKU支持异步保存与软禁用替换策略
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 56s
2026-02-25 09:23:15 +08:00
d66879f5cf feat(product): complete combo and detail editing data model
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 47s
2026-02-22 09:35:57 +08:00
f7c2ae4bac feat(product): add product list/detail/save/soldout/batch api support
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 47s
2026-02-21 17:23:48 +08:00
d41f69045f feat(product): add product schedule management api
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 46s
2026-02-21 11:46:55 +08:00
ad65ef3bf6 feat(product): add product label management backend
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 43s
2026-02-21 10:18:48 +08:00
93bc072b8d feat: 新增加料管理接口与模板能力
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 43s
2026-02-21 08:44:26 +08:00
392d9f03a1 feat: 新增规格做法模板管理接口与数据模型
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 45s
2026-02-20 20:08:34 +08:00
1b3525862a feat: implement tenant product category management APIs
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 44s
2026-02-20 18:45:48 +08:00
7ecf069efd fix(pickup): prevent null rowversion on settings and slots save
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 43s
2026-02-19 17:57:52 +08:00
53f7c54c82 feat(geo): add tenant/merchant/store geocode fallback and retry workflow
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 43s
2026-02-19 17:13:00 +08:00
ad245078a2 feat: 提交配送中心点与门店地址映射全量变更
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 42s
2026-02-19 16:12:36 +08:00
1b185af718 feat: 完成门店管理剩余接口并补齐文档注释
All checks were successful
Build and Deploy TenantApi / build-and-deploy (push) Successful in 46s
2026-02-17 14:54:35 +08:00
c032608a57 Revert "refactor: 清理租户API旧模块代码"
This reverts commit 992930a821.
2026-02-17 12:12:01 +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
root
c7307c1942 refactor: 移除租户审核领取模型 2026-01-29 12:15:19 +00:00
root
86ef0d6033 feat: 新增租户管理端 TenantApi 并移除旧 API 2026-01-29 11:39:57 +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
32f5bbbd43 feat(store): 扩展临时时段配置 2026-01-20 18:41:34 +08:00
3385674490 fix: 门店资质日期字段改为date 2026-01-20 13:09:06 +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
fc55003d3d 完成门店管理后端接口与任务 2026-01-01 07:26:14 +08:00
dd91c1010a feat:商户管理 2025-12-29 16:40:27 +08:00
04444c6554 fix: 修复公告过时警告并补齐用户权限 2025-12-27 12:32:52 +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
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
9c28790f5e feat: 套餐增加推荐标识与标签 2025-12-15 22:32:02 +08:00
e39a42b74c fix: 修复套餐草稿默认值哨兵问题 2025-12-15 21:09:28 +08:00
fd377624d8 fix: 修复套餐新增草稿默认值与开关落库 2025-12-15 21:06:23 +08:00
2778a4ebdf feat: 套餐发布状态与可见/可购开关 2025-12-15 17:29:41 +08:00
fca8bd989c fix: 租户LogoUrl支持长链接 2025-12-15 12:53:38 +08:00
2339775fcb feat: 租户审核领单与强制接管 2025-12-15 10:40:50 +08:00
624a7bc04d fix: tenants 联系电话唯一索引 2025-12-12 22:06:24 +08:00
715cbb3d36 docs: add xml comments and update ignore rules 2025-12-12 10:39:51 +08:00
c7df64f2e1 feat: add public tenant packages listing and sort order 2025-12-11 23:57:04 +08:00
7d6b7d8760 docs: 标记自提档期完成 2025-12-04 11:51:09 +08:00
7e6125c687 feat: 完善库存锁定幂等与批次扣减策略 2025-12-04 11:31:26 +08:00
9fe7d9606d feat: 租户账单公告通知接口 2025-12-03 21:08:28 +08:00
0c329669a9 feat: 商户类目数据库化并增加权限种子 2025-12-03 19:01:53 +08:00
a536a554c2 feat: 实现租户管理及套餐流程 2025-12-03 16:37:50 +08:00
148475fa43 feat: migrate snowflake ids and refresh migrations 2025-12-02 09:04:37 +08:00