131 lines
6.7 KiB
Go
131 lines
6.7 KiB
Go
package gmodel
|
||
|
||
import (
|
||
"fusenapi/constants"
|
||
"time"
|
||
)
|
||
|
||
// TODO: 使用model的属性做你想做的
|
||
|
||
type NewFsOrder struct {
|
||
Id int64 `gorm:"primary_key;default:0;auto_increment;" json:"id"` // 订单ID
|
||
UserId *int64 `gorm:"index;default:0;" json:"user_id"` // 用户ID
|
||
DeliveryMethod *int64 `gorm:"index;default:0;" json:"delivery_method"` // 物流类型
|
||
OrderSn *string `gorm:"index;default:'';" json:"order_sn"` //
|
||
OrderSource *string `gorm:"default:'';" json:"order_source"` //
|
||
Status *int64 `gorm:"index;default:0;" json:"status"` // 订单状态
|
||
PayStatus *int64 `gorm:"default:0;" json:"pay_status"` // 支付状态
|
||
Metadata *OrderDetail `gorm:"metadata,type:json" json:"metadata"` //
|
||
Ctime *time.Time `gorm:"default:'0000-00-00 00:00:00';" json:"ctime"` //
|
||
Utime *time.Time `gorm:"default:'0000-00-00 00:00:00';" json:"utime"` //
|
||
IsDel *int64 `gorm:"default:0;" json:"is_del"` // 是否删除:0=否,1=是
|
||
}
|
||
|
||
// 订单详情
|
||
type OrderDetail struct {
|
||
DeliveryAddress *OrderAddress `json:"delivery_address"` // 收货地址
|
||
OrderAmount OrderAmount `json:"order_amount"` // 订单金额
|
||
OrderInfo OrderInfo `json:"order_info"` // 订单信息
|
||
OrderProduct []OrderProduct `json:"order_product"` // 订单商品
|
||
PayStatus constants.OrderPayStatusCode `json:"pay_status"` // 支付状态
|
||
}
|
||
|
||
// 收货地址
|
||
type OrderAddress struct {
|
||
Address string `json:"address"` // 详细地址
|
||
Mobile string `json:"mobile"` // 手机
|
||
Name string `json:"name"` // 姓名
|
||
}
|
||
|
||
// 订单金额
|
||
type OrderAmount struct {
|
||
Deposit PayInfo `json:"deposit"` // 定金
|
||
RemainingBalance PayInfo `json:"remaining_balance"` // 尾款
|
||
Discount AmountInfo `json:"discount"` // 折扣
|
||
ShippingFee AmountInfo `json:"shipping_fee"` // 邮费
|
||
Tax AmountInfo `json:"tax"` // 税费
|
||
Subtotal AmountInfo `json:"subtotal"` // 商品总金额
|
||
Total AmountInfo `json:"total"` // 订单总金额
|
||
}
|
||
|
||
// 支付明细
|
||
type PayInfo struct {
|
||
Metadata map[string]interface{} `json:"metadata"` // 额外参数
|
||
PayAmount AmountInfo `json:"pay_amount"` // 金额明细
|
||
PayMethod string `json:"pay_method"` // 交易方式
|
||
PayTime time.Time `json:"pay_time"` // 支付时间
|
||
Status PayStatus `json:"status"` // 当前状态
|
||
StatusLink []PayStatus `json:"status_link"` // 状态链路
|
||
TradeNo string `json:"trade_no"` // 支付交易号
|
||
}
|
||
|
||
// 金额明细
|
||
type AmountInfo struct {
|
||
Change AmountCurrency `json:"change,omitempty"` // 变动金额
|
||
ChangeRemark string `json:"change_remark,omitempty"` // 变动备注
|
||
Current AmountCurrency `json:"current"` // 当前金额
|
||
Initiate AmountCurrency `json:"initiate"` // 初始金额
|
||
Metadata map[string]interface{} `json:"metadata"` // 额外明细
|
||
}
|
||
|
||
// 金额货币
|
||
type AmountCurrency struct {
|
||
ExchangeRate constants.ExchangeRateUnit `json:"exchange_rate"` // 换算汇率
|
||
CurrentCurrency string `json:"current_currency"` // 当前货币
|
||
CurrentAmount constants.AmountUnit `json:"current_amount"` // 当前金额
|
||
OriginalCurrency string `json:"original_currency"` // 原始货币
|
||
OriginalAmount constants.AmountUnit `json:"original_amount"` // 原始金额
|
||
}
|
||
|
||
// 支付状态
|
||
type PayStatus struct {
|
||
Metadata map[string]interface{} `json:"metadata"` // 额外参数
|
||
StatusCode int64 `json:"status_code"` // 状态编码
|
||
StatusTitle string `json:"status_title"` // 状态名称
|
||
}
|
||
|
||
// 订单信息
|
||
type OrderInfo struct {
|
||
Ctime time.Time `json:"ctime"` // 创建日期
|
||
DeliveryMethod int64 `json:"delivery_method"` // 物流类型
|
||
Metadata map[string]interface{} `json:"metadata"` // 额外参数
|
||
OrderSn string `json:"order_sn"` // 订单编号
|
||
Status OrderStatus `json:"status"` // 当前状态
|
||
StatusLink []OrderStatus `json:"status_link"` // 状态链路
|
||
Utime time.Time `json:"utime"` // 更新时间
|
||
}
|
||
|
||
// 订单状态--用户
|
||
type OrderStatus struct {
|
||
Children []*OrderStatus `json:"children"` // 子状态,管理人员的处理状态, 用户不可见
|
||
Ctime time.Time `json:"ctime"` // 创建时间
|
||
ExpectedTime time.Time `json:"expected_time"` // 预计时间
|
||
Metadata map[string]interface{} `json:"metadata"` // 额外参数
|
||
StatusCode constants.OrderStatusCode `json:"status_code"` // 状态编码
|
||
StatusTitle string `json:"status_title"` // 状态名称
|
||
Utime time.Time `json:"utime"` // 更新时间
|
||
}
|
||
|
||
// 订单商品
|
||
type OrderProduct struct {
|
||
Amount AmountInfo `json:"amount"` // 商品总价
|
||
ExpectedDeliveryTime string `json:"expected_delivery_time"` // 预计到货时间
|
||
Number int64 `json:"number"` // 商品数量
|
||
ProductID int64 `json:"product_id"` // 商品ID
|
||
ProductLogo string `json:"product_logo"` // 商品logo
|
||
ProductLogoResource *Resource `json:"product_logo_resource"` // 商品封面--资源详情
|
||
ProductName string `json:"product_name"` // 商品名称
|
||
ProductPrice AmountInfo `json:"product_price"` // 商品单价
|
||
ProductSnapshot map[string]interface{} `json:"product_snapshot"` // 商品快照
|
||
ShoppingCartSnapshot *FsShoppingCart `json:"shopping_cart_snapshot"` // 购物车快照
|
||
Unit string `json:"unit"` // 商品单位
|
||
}
|
||
|
||
// 资源详情
|
||
type Resource struct {
|
||
Metadata map[string]interface{} `json:"metadata"` // 资源额外
|
||
ResourceID string `json:"resource_id"` // 资源ID
|
||
ResourceType string `json:"resource_type"` // 资源类型
|
||
ResourceURL string `json:"resource_url"` // 资源地址
|
||
}
|