- record order ok.

This commit is contained in:
gazebo
2018-07-10 19:06:51 +08:00
parent a76213e8f0
commit c6a3066daf
14 changed files with 143 additions and 83 deletions

View File

@@ -7,7 +7,7 @@ type ModelTimeInfo struct {
UpdatedAt time.Time `orm:"auto_now;type(datetime)"`
}
type Order struct {
type GoodsOrder struct {
ID int64 `orm:"column(id)"`
VendorOrderID string `orm:"column(vendor_order_id);size(48)"`
VendorID int `orm:"column(vendor_id)"`
@@ -26,14 +26,14 @@ type Order struct {
VendorStatus string `orm:"size(16)"`
LockStatus int
CancelApplyReason string `orm:"size(255);null;default(null)"` // null表示没有申请不为null表示用户正在取消申请
WaybillVendorID int `orm:"column(waybill_vendor_id)"`
WaybillVendorID int `orm:"column(waybill_vendor_id);default(-1)"`
OriginalData string `orm:"type(text)"`
OrderCreatedAt time.Time `orm:"type(datetime);index"`
OrderFinishedAt time.Time `orm:"type(datetime)"`
OrderFinishedAt time.Time `orm:"type(datetime);null;default(null)"`
ModelTimeInfo
}
func (o *Order) TableUnique() [][]string {
func (o *GoodsOrder) TableUnique() [][]string {
return [][]string{
[]string{"VendorOrderID", "VendorID"},
}
@@ -44,7 +44,7 @@ type OrderSku struct {
VendorOrderID string `orm:"column(vendor_order_id);size(48)"`
VendorID int `orm:"column(vendor_id)"`
Count int
VendorSkuID string `orm:"column(vendor_sku_id),size(48)"`
VendorSkuID string `orm:"column(vendor_sku_id);size(48)"`
SkuID int `orm:"column(sku_id)"` // 外部系统里记录的 jxskuid
JxSkuID int `orm:"column(jx_sku_id)"` // 根据VendorSkuID在本地系统里查询出来的 jxskuid
SkuName string `orm:"size(255)"`
@@ -53,7 +53,9 @@ type OrderSku struct {
OrderCreatedAt time.Time `orm:"type(datetime);index"`
}
func (o *OrderSku) TableUnique() [][]string {
// 同样商品在一个定单中可能重复出现(比如搞活动时,相同商品价格不一样,第一个有优惠)
// 所以这里不能用唯一索引
func (o *OrderSku) TableIndex() [][]string {
return [][]string{
[]string{"VendorOrderID", "SkuID", "VendorID"},
}
@@ -72,7 +74,7 @@ type Waybill struct {
VendorStatus string `orm:"size(16)"`
ActualFee int64
WaybillCreatedAt time.Time `orm:"type(datetime);index"`
WaybillFinishedAt time.Time `orm:"type(datetime)"`
WaybillFinishedAt time.Time `orm:"type(datetime);null;default(null)"`
ModelTimeInfo
}