Files
hfb_sys/backend/internal/model/pickup_shop.go
T
yml2213 f3c5235b81 feat(pickup): 店铺管理支持历史店铺可视化手动映射与一键批量清洗
- 数据库升级:新增 pickup_shop_mappings 映射别名表,并在 admin_pickups 增加 raw_shop_name 永久保留原始店铺录入值
- 后端映射能力:提供历史店铺聚合统计、单条/批量映射至目标标准店铺、映射规则撤销与提号单还原接口;新建提号时若录入已映射别名自动归一化
- 前端管理升级:PickupShopDialog 升级为双 Tab 结构,Tab 2「历史店铺映射与清洗」支持总览统计卡片、状态筛选、单条/批量映射清洗、一键设为标准店铺及撤销还原
- 验证方式:执行并通过全套代码门禁(scripts/check.sh:SQL约束、go vet/build/test、MySQL测试库覆盖率、vue大小、eslint、prettier、vue-tsc及vite构建)
2026-10-09 13:31:11 +08:00

37 lines
1.4 KiB
Go

package model
import "time"
// PickupShop 线下提号店铺配置模型。
type PickupShop struct {
ID uint64 `gorm:"primaryKey" json:"id"`
Name string `gorm:"size:100;not null;uniqueIndex" json:"name"`
Platform string `gorm:"size:32;not null;default:''" json:"platform"`
Status string `gorm:"size:20;not null;default:'active';index" json:"status"`
SortOrder int `gorm:"not null;default:0" json:"sort_order"`
Remark string `gorm:"size:255;not null;default:''" json:"remark"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
func (PickupShop) TableName() string {
return "pickup_shops"
}
// PickupShopMapping 线下提号店铺历史映射/别名模型。
type PickupShopMapping struct {
ID uint64 `gorm:"primaryKey" json:"id"`
SourceName string `gorm:"size:100;not null;uniqueIndex" json:"source_name"`
TargetShopID uint64 `gorm:"not null;default:0" json:"target_shop_id"`
TargetShopName string `gorm:"size:100;not null;index" json:"target_shop_name"`
MappedCount int64 `gorm:"not null;default:0" json:"mapped_count"`
Remark string `gorm:"size:255;not null;default:''" json:"remark"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
func (PickupShopMapping) TableName() string {
return "pickup_shop_mappings"
}