主要变更: - 新增B端认证系统(后台+H5):登录、登出、Token刷新、密码修改 - 完善商户管理和商户账号管理功能 - 补全单元测试(ShopService: 72.5%, ShopAccountService: 79.8%) - 新增集成测试(商户管理+商户账号管理) - 归档OpenSpec提案(add-shop-account-management, implement-b-end-auth-system) - 完善文档(使用指南、API文档、认证架构说明) 测试统计: - 13个测试套件,37个测试用例,100%通过率 - 平均覆盖率76.2%,达标 OpenSpec验证:通过(strict模式)
56 lines
2.6 KiB
Go
56 lines
2.6 KiB
Go
package model
|
|
|
|
type ShopListRequest struct {
|
|
Page int `json:"page" query:"page" validate:"omitempty,min=1"`
|
|
PageSize int `json:"page_size" query:"page_size" validate:"omitempty,min=1,max=100"`
|
|
ShopName string `json:"shop_name" query:"shop_name" validate:"omitempty,max=100"`
|
|
ShopCode string `json:"shop_code" query:"shop_code" validate:"omitempty,max=50"`
|
|
ParentID *uint `json:"parent_id" query:"parent_id" validate:"omitempty,min=1"`
|
|
Level *int `json:"level" query:"level" validate:"omitempty,min=1,max=7"`
|
|
Status *int `json:"status" query:"status" validate:"omitempty,oneof=0 1"`
|
|
}
|
|
|
|
type CreateShopRequest struct {
|
|
ShopName string `json:"shop_name" validate:"required,min=1,max=100"`
|
|
ShopCode string `json:"shop_code" validate:"required,min=1,max=50"`
|
|
ParentID *uint `json:"parent_id" validate:"omitempty,min=1"`
|
|
ContactName string `json:"contact_name" validate:"omitempty,max=50"`
|
|
ContactPhone string `json:"contact_phone" validate:"omitempty,len=11"`
|
|
Province string `json:"province" validate:"omitempty,max=50"`
|
|
City string `json:"city" validate:"omitempty,max=50"`
|
|
District string `json:"district" validate:"omitempty,max=50"`
|
|
Address string `json:"address" validate:"omitempty,max=255"`
|
|
InitPassword string `json:"init_password" validate:"required,min=8,max=32"`
|
|
InitUsername string `json:"init_username" validate:"required,min=3,max=50"`
|
|
InitPhone string `json:"init_phone" validate:"required,len=11"`
|
|
}
|
|
|
|
type UpdateShopRequest struct {
|
|
ShopName string `json:"shop_name" validate:"required,min=1,max=100"`
|
|
ContactName string `json:"contact_name" validate:"omitempty,max=50"`
|
|
ContactPhone string `json:"contact_phone" validate:"omitempty,len=11"`
|
|
Province string `json:"province" validate:"omitempty,max=50"`
|
|
City string `json:"city" validate:"omitempty,max=50"`
|
|
District string `json:"district" validate:"omitempty,max=50"`
|
|
Address string `json:"address" validate:"omitempty,max=255"`
|
|
Status int `json:"status" validate:"required,oneof=0 1"`
|
|
}
|
|
|
|
// ShopResponse 店铺响应
|
|
type ShopResponse struct {
|
|
ID uint `json:"id"`
|
|
ShopName string `json:"shop_name"`
|
|
ShopCode string `json:"shop_code"`
|
|
ParentID *uint `json:"parent_id,omitempty"`
|
|
Level int `json:"level"`
|
|
ContactName string `json:"contact_name"`
|
|
ContactPhone string `json:"contact_phone"`
|
|
Province string `json:"province"`
|
|
City string `json:"city"`
|
|
District string `json:"district"`
|
|
Address string `json:"address"`
|
|
Status int `json:"status"`
|
|
CreatedAt string `json:"created_at"`
|
|
UpdatedAt string `json:"updated_at"`
|
|
}
|