feat: product test com

This commit is contained in:
zzw
2026-08-12 17:53:26 +08:00
parent 92e86c8881
commit bc53f557c7
5 changed files with 48 additions and 48 deletions
+33 -32
View File
@@ -141,11 +141,12 @@ type ProductEditBase struct {
Label string `gorm:"column:label" json:"label"`
IsIndex uint8 `gorm:"column:is_index" json:"is_index"`
IndexImage string `gorm:"column:index_image" json:"index_image"`
PeriodValidity int16 `gorm:"column:period_validity" json:"period_validity"`
IsBuy uint8 `gorm:"column:is_buy" json:"is_buy"`
PublishTime time.Time `gorm:"column:publish_time" json:"publish_time"`
AdminName string `gorm:"column:admin_name" json:"admin_name"`
AdminId int `gorm:"column:admin_id" json:"admin_id"`
PeriodValidity int16 `gorm:"column:period_validity" json:"period_validity"`
IsBuy uint8 `gorm:"column:is_buy" json:"is_buy"`
// Edit 经 json 序列化,time.Time 会变成 RFC3339MySQL datetime 不认,故用字符串
PublishTime string `gorm:"column:publish_time" json:"publish_time"`
AdminName string `gorm:"column:admin_name" json:"admin_name"`
AdminId int `gorm:"column:admin_id" json:"admin_id"`
}
// ProductEditSusceptible 敏感字段(查询旧值 / 写入 verify 快照)
@@ -165,9 +166,9 @@ type ProductEditSusceptible struct {
AdminId int `gorm:"column:admin_id" json:"admin_id"`
}
// ProductVerifyFirstEditStatus 敏感编辑提交后置为一审中
// ProductVerifyFirstEditStatus 敏感编辑提交后置为一审中Edit 走 json→map,必须带 json tag
type ProductVerifyFirstEditStatus struct {
VerifyStatus uint8 `gorm:"column:verify_status"`
VerifyStatus uint8 `gorm:"column:verify_status" json:"verify_status"`
}
// ProductInfo 列表/详情查询投影
@@ -246,36 +247,36 @@ type ProductVerifyListRow struct {
BoxNumber float64 `gorm:"column:box_number"`
}
// ProductVerifyFirstStatus 一审后回写产品审核状态
// ProductVerifyFirstStatus 一审后回写产品审核状态Edit 走 json→map,必须带 json tag
type ProductVerifyFirstStatus struct {
VerifyStatus uint8 `gorm:"column:verify_status"`
VerifyId int `gorm:"column:verify_id"`
VerifyName string `gorm:"column:verify_name"`
Reason string `gorm:"column:reason"`
VerifyStatus uint8 `gorm:"column:verify_status" json:"verify_status"`
VerifyId int `gorm:"column:verify_id" json:"verify_id"`
VerifyName string `gorm:"column:verify_name" json:"verify_name"`
Reason string `gorm:"column:reason" json:"reason"`
}
// ProductVerifySecondStatus 二审驳回回写
// ProductVerifySecondStatus 二审驳回回写Edit 走 json→map,必须带 json tag
type ProductVerifySecondStatus struct {
VerifyStatus uint8 `gorm:"column:verify_status"`
VerifySecondId int `gorm:"column:verify_second_id"`
VerifySecondName string `gorm:"column:verify_second_name"`
Reason string `gorm:"column:reason"`
VerifyStatus uint8 `gorm:"column:verify_status" json:"verify_status"`
VerifySecondId int `gorm:"column:verify_second_id" json:"verify_second_id"`
VerifySecondName string `gorm:"column:verify_second_name" json:"verify_second_name"`
Reason string `gorm:"column:reason" json:"reason"`
}
// ProductVerifySecondOkStatus 二审通过:应用快照并回写审核人
// ProductVerifySecondOkStatus 二审通过:应用快照并回写审核人Edit 走 json→map,必须带 json tag
type ProductVerifySecondOkStatus struct {
ModelCode string `gorm:"column:model_code"`
Price float32 `gorm:"column:price"`
StorePrice float32 `gorm:"column:store_price"`
SalePrice float32 `gorm:"column:sale_price"`
SharePrice float32 `gorm:"column:share_price"`
AgentPrice float32 `gorm:"column:agent_price"`
SaleReward string `gorm:"column:sale_reward"`
Type uint8 `gorm:"column:type"`
NormsNumber uint8 `gorm:"column:norms_number"`
BoxNumber float64 `gorm:"column:box_number"`
VerifyStatus uint8 `gorm:"column:verify_status"`
VerifySecondId int `gorm:"column:verify_second_id"`
VerifySecondName string `gorm:"column:verify_second_name"`
Reason string `gorm:"column:reason"`
ModelCode string `gorm:"column:model_code" json:"model_code"`
Price float32 `gorm:"column:price" json:"price"`
StorePrice float32 `gorm:"column:store_price" json:"store_price"`
SalePrice float32 `gorm:"column:sale_price" json:"sale_price"`
SharePrice float32 `gorm:"column:share_price" json:"share_price"`
AgentPrice float32 `gorm:"column:agent_price" json:"agent_price"`
SaleReward string `gorm:"column:sale_reward" json:"sale_reward"`
Type uint8 `gorm:"column:type" json:"type"`
NormsNumber uint8 `gorm:"column:norms_number" json:"norms_number"`
BoxNumber float64 `gorm:"column:box_number" json:"box_number"`
VerifyStatus uint8 `gorm:"column:verify_status" json:"verify_status"`
VerifySecondId int `gorm:"column:verify_second_id" json:"verify_second_id"`
VerifySecondName string `gorm:"column:verify_second_name" json:"verify_second_name"`
Reason string `gorm:"column:reason" json:"reason"`
}
+11 -12
View File
@@ -69,20 +69,19 @@ type VerifyStatusRow struct {
VerifyTime time.Time `gorm:"column:verify_time"`
}
// VerifyFirstUpdate 一审回写审核表
type VerifyFirstUpdate struct {
AdminId int `gorm:"column:admin_id"`
AdminName string `gorm:"column:admin_name"`
VerifyStatus uint8 `gorm:"column:verify_status"`
VerifyReason string `gorm:"column:verify_reason"`
VerifyTime time.Time `gorm:"column:verify_time"`
AdminId int `gorm:"column:admin_id" json:"admin_id"`
AdminName string `gorm:"column:admin_name" json:"admin_name"`
VerifyStatus uint8 `gorm:"column:verify_status" json:"verify_status"`
VerifyReason string `gorm:"column:verify_reason" json:"verify_reason"`
// Edit 经 json 序列化,time.Time 会变成 RFC3339MySQL datetime 不认,故用字符串
VerifyTime string `gorm:"column:verify_time" json:"verify_time"`
}
// VerifySecondUpdate 二审回写审核表
type VerifySecondUpdate struct {
AdminSecondId int `gorm:"column:admin_second_id"`
AdminSecondName string `gorm:"column:admin_second_name"`
VerifyStatus uint8 `gorm:"column:verify_status"`
VerifyReason string `gorm:"column:verify_reason"`
VerifyTime time.Time `gorm:"column:verify_time"`
AdminSecondId int `gorm:"column:admin_second_id" json:"admin_second_id"`
AdminSecondName string `gorm:"column:admin_second_name" json:"admin_second_name"`
VerifyStatus uint8 `gorm:"column:verify_status" json:"verify_status"`
VerifyReason string `gorm:"column:verify_reason" json:"verify_reason"`
VerifyTime string `gorm:"column:verify_time" json:"verify_time"`
}
+1 -1
View File
@@ -96,7 +96,7 @@ func (l *EditBaseLogic) EditBase(in *product.EditBaseReq) (*product.Response, er
IsIndex: uint8(req.IsIndex),
IndexImage: req.IndexImage,
Label: req.Label,
PublishTime: publishTime,
PublishTime: publishTime.Format(time.DateTime),
AdminName: adminName,
AdminId: adminId,
IsBuy: uint8(req.IsBuy),
+1 -1
View File
@@ -99,7 +99,7 @@ func (l *VerifyStatusLogic) verifyStatus(expectStatus uint8, in *product.VerifyS
err = l.svcCtx.DB.WithContext(l.ctx).Transaction(func(tx *gorm.DB) error {
vm := model.VerifyModel{}.Init().WithTX(tx)
pm := model.ProductModel{}.Init().WithTX(tx)
now := time.Now()
now := time.Now().Format(time.DateTime)
if expectStatus == dao.VerifyStatusChecking {
if _, err := vm.Edit(w, &dao.VerifyFirstUpdate{