package model import ( "gorm.io/gorm" "hospital-admin-api/global" "time" ) // UserShipAddress 用户收货地址表 type UserShipAddress struct { AddressId int64 `gorm:"column:address_id;type:bigint(19);primary_key;comment:主键id" json:"address_id"` UserId int64 `gorm:"column:user_id;type:bigint(19);comment:用户id;NOT NULL" json:"user_id"` ProvinceId int `gorm:"column:province_id;type:int(11);comment:省份id" json:"province_id"` Province string `gorm:"column:province;type:varchar(40);comment:省份" json:"province"` CityId int `gorm:"column:city_id;type:int(11);comment:城市id" json:"city_id"` City string `gorm:"column:city;type:varchar(40);comment:城市" json:"city"` CountyId int `gorm:"column:county_id;type:int(11);comment:区县id" json:"county_id"` County string `gorm:"column:county;type:varchar(255);comment:区县" json:"county"` ConsigneeTownId int `gorm:"column:consignee_town_id;type:int(11);comment:镇id" json:"consignee_town_id"` ConsigneeTown string `gorm:"column:consignee_town;type:varchar(150);comment:镇" json:"consignee_town"` Address string `gorm:"column:address;type:varchar(255);comment:详细地址" json:"address"` AddressMask string `gorm:"column:address_mask;type:varchar(255);comment:详细地址(掩码)" json:"address_mask"` ConsigneeName string `gorm:"column:consignee_name;type:varchar(150);comment:收货人姓名;NOT NULL" json:"consignee_name"` ConsigneeNameMask string `gorm:"column:consignee_name_mask;type:varchar(150);comment:收货人姓名(掩码)" json:"consignee_name_mask"` ConsigneeTel string `gorm:"column:consignee_tel;type:varchar(100);comment:收货人电话;NOT NULL" json:"consignee_tel"` ConsigneeTelMask string `gorm:"column:consignee_tel_mask;type:varchar(100);comment:收货人电话(掩码)" json:"consignee_tel_mask"` ConsigneeZipCode string `gorm:"column:consignee_zip_code;type:varchar(20);comment:收货邮编" json:"consignee_zip_code"` IsDefault int `gorm:"column:is_default;type:tinyint(1);default:0;comment:默认地址(0:否 1:是)" json:"is_default"` Tag int `gorm:"column:tag;type:tinyint(1);comment:地址标签(1:家 2:公司 3:学校 4:其他)" json:"tag"` Model } func (m *UserShipAddress) TableName() string { return "gdxz_user_ship_address" } func (m *UserShipAddress) BeforeCreate(tx *gorm.DB) error { if m.AddressId == 0 { m.AddressId = global.Snowflake.Generate().Int64() } m.CreatedAt = LocalTime(time.Now()) tx.Statement.SetColumn("CreatedAt", m.CreatedAt) m.UpdatedAt = LocalTime(time.Now()) tx.Statement.SetColumn("UpdatedAt", m.UpdatedAt) return nil }