Files
woogo/entity/billing.go

30 lines
1022 B
Go
Raw Permalink Normal View History

2025-04-08 19:24:11 +02:00
package entity
import (
validation "github.com/go-ozzo/ozzo-validation/v4"
"github.com/go-ozzo/ozzo-validation/v4/is"
)
// Billing order billing properties
type Billing struct {
FirstName string `json:"first_name,omitempty"`
LastName string `json:"last_name,omitempty"`
Company string `json:"company,omitempty"`
Address1 string `json:"address_1,omitempty"`
Address2 string `json:"address_2,omitempty"`
City string `json:"city,omitempty"`
State string `json:"state,omitempty"`
Postcode string `json:"postcode,omitempty"`
Country string `json:"country,omitempty"`
Email string `json:"email,omitempty"`
Phone string `json:"phone,omitempty"`
}
func (m Billing) Validate() error {
return validation.ValidateStruct(&m,
validation.Field(&m.Email, validation.When(m.Email != "", is.EmailFormat.Error("无效的邮箱"))),
validation.Field(&m.FirstName, validation.Required.Error("姓不能为空")),
validation.Field(&m.LastName, validation.Required.Error("名不能为空")),
)
}