feat: product number
CI / changes (push) Successful in 36s
CI / docker-bff (push) Successful in 3m8s
CI / docker-product (push) Successful in 3m36s
CI / docker-admin (push) Successful in 3m35s
CI / docker-user (push) Successful in 9s
CI / docker-ad (push) Successful in 29s
CI / docker-chore (push) Failing after 4s

This commit is contained in:
zzw
2026-08-26 16:53:50 +08:00
parent 0ca3f6d84f
commit 72d55d396d
39 changed files with 1284 additions and 363 deletions
+28 -15
View File
@@ -13,13 +13,13 @@ type ProductCreateValidator struct {
SalePrice float64
SharePrice float64
AgentPrice float64
SaleReward string `validate:"max=255"`
Images string `validate:"required,max=512"`
Weight float64 `validate:"required"`
Cubage string `validate:"required,max=255"`
Waybill string `validate:"required,max=255"`
PeriodValidity int32 `validate:"required"`
NormsNumber uint32 `validate:"required,min=1"`
SaleReward string `validate:"max=255"`
Images []string `validate:"required,min=1,dive,required"`
Weight float64 `validate:"required"`
Cubage string `validate:"required,max=255"`
Waybill string `validate:"required,max=255"`
PeriodValidity int32 `validate:"required"`
NormsNumber uint32 `validate:"required,min=1"`
BoxNumber float64
Type uint32 `validate:"required,oneof=1 2 3"`
Number uint32
@@ -42,6 +42,7 @@ func (p ProductCreateValidator) GetMessage() validate.ValidatorMessages {
"ModelCode.required": "请输入机器码",
"Price.required": "价格不能为空",
"Images.required": "图片不能为空",
"Images.min": "图片不能为空",
"Weight.required": "重量不能为空",
"Cubage.required": "体积不能为空",
"Waybill.required": "运货单图片不能为空",
@@ -168,14 +169,14 @@ type ProductEditBaseValidator struct {
Content string `validate:"required"`
Waybill string `validate:"required,max=255"`
Weight float64 `validate:"required"`
Cubage string `validate:"required,max=255"`
Images string `validate:"required,max=512"`
PeriodValidity int32 `validate:"required"`
PublishTime string `validate:"max=32"`
Label string `validate:"max=255"`
IsBuy uint32 `validate:"omitempty,oneof=1 2"`
IsIndex uint32 `validate:"omitempty,oneof=1 2"`
IndexImage string `validate:"max=255"`
Cubage string `validate:"required,max=255"`
Images []string `validate:"required,min=1,dive,required"`
PeriodValidity int32 `validate:"required"`
PublishTime string `validate:"max=32"`
Label string `validate:"max=255"`
IsBuy uint32 `validate:"omitempty,oneof=1 2"`
IsIndex uint32 `validate:"omitempty,oneof=1 2"`
IndexImage string `validate:"max=255"`
}
func (p ProductEditBaseValidator) GetMessage() validate.ValidatorMessages {
@@ -186,6 +187,7 @@ func (p ProductEditBaseValidator) GetMessage() validate.ValidatorMessages {
"Subhead.required": "副标题不能为空",
"Content.required": "内容不能为空",
"Images.required": "图片不能为空",
"Images.min": "图片不能为空",
"PeriodValidity.required": "有效期不能为空",
"Waybill.required": "运货单图片不能为空",
"Weight.required": "重量不能为空",
@@ -249,3 +251,14 @@ func (p ProductNumberAddValidator) GetMessage() validate.ValidatorMessages {
"Number.gt": "数量必须大于0",
}
}
type ProductItemsByIdsValidator struct {
Ids []int64 `validate:"required,min=1"`
}
func (p ProductItemsByIdsValidator) GetMessage() validate.ValidatorMessages {
return validate.ValidatorMessages{
"Ids.required": "ID列表不能为空",
"Ids.min": "ID列表不能为空",
}
}