Initial cloud-services repo - gateway service + pkg modules
This commit is contained in:
63
pkg/common/supplier_account.go
Normal file
63
pkg/common/supplier_account.go
Normal file
@@ -0,0 +1,63 @@
|
||||
package common
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"fiskerinc.com/modules/common/dbbasemodel"
|
||||
)
|
||||
|
||||
type SupplierAccount struct {
|
||||
SupplierOrganizationID int64 `json:"supplier_organization_id,string,omitempty" pg:"supplier_organization_id"`
|
||||
Email string `json:"email" pg:",pk" validate:"required,email,max=1000"`
|
||||
Company string `json:"company" validate:"required,max=100"`
|
||||
Address string `json:"address" validate:"required,max=100"`
|
||||
Contact string `json:"contact" validate:"required,max=50"`
|
||||
Telephone string `json:"telephone" validate:"required,max=20"`
|
||||
Program string `json:"program" validate:"required,max=100"`
|
||||
ECUs []string `json:"ecus" pg:"ecus,array" validate:"required,min=1,max=100,dive,min=2,max=10"`
|
||||
IP string `json:"ip,omitempty" validate:"max=50" swaggerignore:"true"`
|
||||
ActivatedAt *time.Time `json:"activated,omitempty" swaggerignore:"true"`
|
||||
SigninAt *time.Time `json:"signin_at,omitempty" swaggerignore:"true"`
|
||||
KeysAt *time.Time `json:"keys_at,omitempty" swaggerignore:"true"`
|
||||
dbbasemodel.DBModelBase
|
||||
}
|
||||
|
||||
func (s *SupplierAccount) SanitizeData() {
|
||||
s.Email = strings.ToLower(strings.TrimSpace(s.Email))
|
||||
s.Company = strings.TrimSpace(s.Company)
|
||||
s.Address = strings.TrimSpace(s.Address)
|
||||
s.Contact = strings.TrimSpace(s.Contact)
|
||||
s.Telephone = strings.TrimSpace(s.Telephone)
|
||||
s.Program = strings.TrimSpace(s.Program)
|
||||
s.CreatedAt = nil
|
||||
s.UpdatedAt = nil
|
||||
s.ActivatedAt = nil
|
||||
s.SigninAt = nil
|
||||
s.KeysAt = nil
|
||||
|
||||
s.SanitizeECUData()
|
||||
}
|
||||
|
||||
func (s *SupplierAccount) SanitizeECUData() {
|
||||
for i, item := range s.ECUs {
|
||||
s.ECUs[i] = strings.TrimSpace(item)
|
||||
}
|
||||
}
|
||||
|
||||
func (s *SupplierAccount) String() string {
|
||||
return fmt.Sprintf("SupplierAccount<%s, %s, %s, %s, %s, %s, %v, %v, %v, %v, %v>",
|
||||
s.Company,
|
||||
s.Address,
|
||||
s.Contact,
|
||||
s.Telephone,
|
||||
s.Email,
|
||||
s.Program,
|
||||
s.CreatedAt,
|
||||
s.UpdatedAt,
|
||||
s.ActivatedAt,
|
||||
s.SigninAt,
|
||||
s.KeysAt,
|
||||
)
|
||||
}
|
||||
Reference in New Issue
Block a user