Files
jx-callback/business/model/order_financial.go
suyl e32b46635a aa
2021-06-10 14:37:08 +08:00

190 lines
15 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package model
import "time"
type OrderFinancial struct {
ModelIDCUL
VendorID int `orm:"column(vendor_id)" json:"vendorID"` // 平台id
VendorOrderID string `orm:"column(vendor_order_id);size(48)" json:"vendorOrderID"` // 订单ID
VendorOrderID2 string `orm:"column(vendor_order_id2);size(48);index" json:"vendorOrderID2"` // 订单ID2,饿百独有
// DeliveryConfirmTime time.Time `orm:"type(datetime);index" json:"deliveryConfirmTime"` // 订单妥投/完成时间
ShopPriceMoney int64 `json:"shopPriceMoney"` // 门店价-左右商品在京西的价格总和报价模式会用到0
SalePriceMoney int64 `json:"salePriceMoney"` // 商品标价总额(用户下单满减之前的商品售价)+
ActualPayMoney int64 `json:"actualPayMoney"` // 用户实际支付金额0
TotalDiscountMoney int64 `json:"totalDiscountMoney"` // 订单总优惠(订单主体+运费)-
DiscountMoney int64 `json:"discountMoney"` // 订单主体优惠0
PointsDeductionMoney int64 `json:"pointsDeductionMoney"` // 积分抵扣金额0
ReceivableFreight int64 `json:"receivableFreight"` // 订单应收运费0
FreightMoney int64 `json:"freightMoney"` // 用户支付运费0
FreightDiscountMoney int64 `json:"freightDiscountMoney"` // 订单运费优惠(商家设置满减discountType == 8)0
PmFreightDiscountMoney int64 `json:"pmFreightDiscountMoney"` // 订单运费优惠(平台运费优惠discountType == 7/12/15)+
DistanceFreightMoney int64 `json:"distanceFreightMoney"` // 订单远距离费-
FreightTipsMoney int64 `json:"freightTipsMoney"` // 订单小费-
DonationMoney int64 `json:"donationMoney"` // 公益捐款-
SelfDeliveryDiscountMoney int64 `json:"selfDeliveryDiscountMoney"` // 平台承担运费补贴(商家自送)+
PmSkuSubsidyMoney int64 `json:"pmSkuSubsidyMoney"` // 平台对单条sku补贴的金额
PmSubsidyMoney int64 `json:"pmSubsidyMoney"` // 平台活动补贴(订单主体活动补贴+订单单条sku补贴1+
BoxMoney int64 `json:"boxMoney"` // order餐盒费1+
SkuBoxMoney int64 `json:"skuBoxMoney"` // sku餐盒费
PmMoney int64 `json:"pmMoney"` // 平台费1-
ShopMoney int64 `json:"shopMoney"` // 应结金额-第三方平台结算给京西的金额M
ShopMoneyByCal int64 `json:"shopMoneyByCal"` // 应结金额-通过公式计算平台结给京西的金额M
JxPmMoney int64 `json:"jxPmMoney"` // 京西平台费-
JxFreightMoney int64 `json:"jxFreightMoney"` // 转自送-->美团/达达订单产生运费0
JxFreightMoneyByShop int64 `json:"jxFreightMoneyByShop"` // 转自送-->美团/达达订单产生运费,由商家承担的部分-
JxSubsidyMoney int64 `json:"jxSubsidyMoney"` // 京西总补贴
JxSkuSubsidyMoney int64 `json:"jxSkuSubsidyMoney"` // 京西补贴给单条sku的金额
JxShopMoney int64 `json:"jxShopMoney"` // 店铺应结金额-京西结算给店铺的金额M
DownFlag int8 `json:"downFlag"` // 0--正常单, 1--降级单
Skus []*OrderSkuFinancial `orm:"-" json:"skus"` // 正向订单购买商品列表
Discounts []*OrderDiscountFinancial `orm:"-" json:"discounts"` // 正向订单享受优惠列表
}
func (o *OrderFinancial) TableUnique() [][]string {
return [][]string{
[]string{"VendorOrderID", "VendorID"},
}
}
type OrderDiscountFinancial struct {
ModelIDCUL
VendorID int `orm:"column(vendor_id)" json:"vendorID"`
VendorOrderID string `orm:"column(vendor_order_id);size(48)" json:"vendorOrderID"` // 订单ID
VendorOrderID2 string `orm:"column(vendor_order_id2);size(48);index" json:"vendorOrderID2"` // 订单ID2,饿百独有
VendorActivityID string `orm:"column(vendor_activity_id);size(48)" json:"vendorActivityID"` // 活动ID 活动ID的存在使原本的通过城市/下单时间-活动时间/金额……一系列匹配来确认活动归属的费时且准确度低的行为有了改变的可能--通过编码精确定位
Type string `orm:"size(48)" json:"type"` // 活动type 美团订单存在不同的活动活动ID是一样的type不一样 如订单34399553040365354
// ActivityName string `orm:"size(255)" json:"activityName"` // 活动名
// ActivityMoney int64 `json:"activityMoney"` // 优惠金额
// Remark string `orm:"size(255)" json:"remark"` // 备注
}
// 设置主键 "VendorOrderID", "DiscountCode", "VendorID" 一个订单不可能享受同一优惠2次
func (o *OrderDiscountFinancial) TableUnique() [][]string {
return [][]string{
[]string{"VendorOrderID", "VendorActivityID", "Type", "VendorID"},
}
}
type AfsOrder struct {
ModelIDCUL
VendorID int `orm:"column(vendor_id)" json:"vendorID"`
VendorOrderID string `orm:"column(vendor_order_id);size(48)" json:"vendorOrderID"` // 关联原始订单ID
VendorOrderID2 string `orm:"column(vendor_order_id2);size(48);index" json:"vendorOrderID2"` // 关联原始订单ID2,饿百独有
AfsOrderID string `orm:"column(afs_order_id);size(48)" json:"afsOrderID"` // 售后订单ID
AfsCreatedAt time.Time `orm:"type(datetime);null;index" json:"afsCreatedAt"` // 售后单生成时间
AfsFinishedAt time.Time `orm:"type(datetime);null;index" json:"afsFinishedAt"` // 售后单结束时间
VendorStoreID string `orm:"column(vendor_store_id);size(48)" json:"vendorStoreID"` // 外部系统里记录的storeid
StoreID int `orm:"column(store_id)" json:"storeID"` // 接口返回的京西门店ID
JxStoreID int `orm:"column(jx_store_id)" json:"jxStoreID"` // 根据VendorStoreID在本地系统里查询出来的 jxstoreid
// IsNeedApprove int8 `json:"isNeedApprove"` // 售后单是否需要商家审核
Status int `json:"status"`
VendorStatus string `orm:"size(255)" json:"vendorStatus"`
ReasonType int8 `json:"reasonType"` // 售后原因
VendorReasonType string `orm:"size(255)" json:"vendorReasonType"` // 原始售后原因
ReasonDesc string `orm:"size(1024)" json:"reasonDesc"` // 售后原因描述
ReasonImgList string `orm:"size(1024)" json:"reasonImgList"` // 售后描述图片
AppealType int8 `json:"appealType"` // 售后方式
VendorAppealType string `orm:"size(255)" json:"vendorAppealType"` // 原始售后方式
Flag int `json:"flag"`
RefundType int8 `json:"refundType"`
RefuseReason string `orm:"size(1024)" json:"refuseReason"`
AfsTotalShopMoney int64 `json:"afsTotalShopMoney"` //最新的退款后的平台结算
SkuUserMoney int64 `json:"skuUserMoney"` // 用户支付菜品金额
FreightUserMoney int64 `json:"freightUserMoney"` // 用户支付运费金额
AfsFreightMoney int64 `json:"afsFreightMoney"` // 退货取件费
BoxMoney int64 `json:"boxMoney"` // 应退包装费金额
TongchengFreightMoney int64 `json:"tongchengFreightMoney"` // 退货单产生的同城送费用
SkuBoxMoney int64 `json:"skuBoxMoney"` // 应退订单餐盒费
PmSubsidyMoney int64 `json:"pmSubsidyMoney"` // 平台总补贴金额
PmSkuSubsidyMoney int64 `json:"pmSkuSubsidyMoney"` // 平台sku补贴金额
PmRefundMoney int64 `json:"pmRefundMoney"` // 订单取消后可能存在佣金减少,平台退回部分金额的情况
RefundMoney int64 `json:"refundMoney"` // 平台扣款总额 1
RefundMoneyByCal int64 `json:"refundMoneyByCal"` // 平台扣款总额-通过公式计算平台扣除京西的金额M
// JxSkuMoney int64 `json:"jxSkuMoney"` // 京西补贴金额,现阶段是平台扣京西多少钱,京西扣商家多少钱,暂不考虑撤回京西补贴
Skus []*OrderSkuFinancial `orm:"-" json:"skus"`
VendorOrgCode string `orm:"size(64)" json:"vendorOrgCode"` // 同一平台下不同的商户代码,如果只有一个,可以为空
}
func (o *AfsOrder) TableUnique() [][]string {
return [][]string{
[]string{"AfsOrderID", "VendorID"},
}
}
type OrderSkuFinancial struct {
ModelIDCUL
VendorID int `orm:"column(vendor_id)" json:"vendorID"` // 平台id
VendorOrderID string `orm:"column(vendor_order_id);size(48)" json:"vendorOrderID"` // 关联原始订单ID
AfsOrderID string `orm:"column(afs_order_id);size(48)" json:"afsOrderID"` // 售后单ID
IsAfsOrder int8 `json:"isAfsOrder"` // 0--正向单, 1--售后单
// ConfirmTime time.Time `orm:"type(datetime)" json:"confirmTime"` // 订单生成/完成时间
VendorStoreID string `orm:"column(vendor_store_id);size(48)" json:"vendorStoreID"` // 外部系统里记录的storeid
StoreID int `orm:"column(store_id)" json:"storeID"` // 接口返回的京西门店ID
JxStoreID int `orm:"column(jx_store_id)" json:"jxStoreID"` // 根据VendorStoreID在本地系统里查询出来的 jxstoreid
VendorSkuID string `orm:"column(vendor_sku_id);size(48)" json:"vendorSkuID"` // 平台skuid
SkuID int `orm:"column(sku_id)" json:"skuID"` // 平台返回的京西skuid
JxSkuID int `orm:"column(jx_sku_id)" json:"jxSkuID"` // 京西skuid
PromotionType int `json:"promotionType"` // 商品级别促销类型 (1、无优惠;2、秒杀(已经下线);3、单品直降;4、限时抢购;1202、加价购;1203、满赠(标识商品);6、买赠(买A送B标识B);9999、表示一个普通商品参与捆绑促销设置的捆绑类型;9998、表示一个商品参与了捆绑促销并且还参与了其他促销类型;9997、表示一个商品参与了捆绑促销但是金额拆分不尽,9996:组合购,8001:轻松购会员价,8:第二件N折,9:拼团促销)
Name string `orm:"size(255)" json:"name"` // 商品名
ShopPrice int64 `json:"shopPrice"` // 门店标价
SalePrice int64 `json:"salePrice"` // 售卖价
Count int `json:"count"` // 订单下单数量
SkuBoxMoney int64 `json:"skuBoxMoney"` // sku餐盒费(美团/饿百的单条sku存在这个概念)
UserMoney int64 `json:"userMoney"` // 用户支付金额
PmSubsidyMoney int64 `json:"pmSubsidyMoney"` // 平台补贴总金额
PmSkuSubsidyMoney int64 `json:"pmSkuSubsidyMoney"` // 平台补贴sku金额
PmDeductionsMoney int64 `json:"pmDeductionsMoney"` // 单条sku需要承担的平台扣费金额
ShopMoney int64 `json:"shopMoney"` // 应结金额-第三方平台结算给京西的金额M
ShopMoneyByCal int64 `json:"shopMoneyByCal"` // 应结金额-通过公式计算平台结给京西的金额M
JxSubsidyMoney int64 `json:"jxSubsidyMoney"` // 京西总补贴
JxSkuSubsidyMoney int64 `json:"jxSkuSubsidyMoney"` // 京西补贴,针对单品活动补贴
JxDeductionsMoney int64 `json:"jxDeductionsMoney"` // 单条sku需要承担的京西扣费金额
JxShopMoney int64 `json:"jxShopMoney"` // 店铺应结金额-京西结算给店铺的金额M
RefundMoney int64 `json:"refundMoney"` // 平台扣款总额 暂时无用
RefundMoneyByCal int64 `json:"refundMoneyByCal"` // 平台扣款总额-通过公式计算平台扣除京西的金额M
// CreatedAt time.Time `orm:"type(datetime);index" json:"createdAt"` // 订单创建时间
// JxSkuMoney int64 `json:"jxSkuMoney"` // 京西补贴金额,现阶段是平台扣京西多少钱,京西扣商家多少钱,暂不考虑撤回京西补贴
// SkuType int `json:"-"` // 当前如果为gift就为1否则缺省为0
StoreSubID int `orm:"column(store_sub_id)" json:"storeSubID"` // 当前这个字段被当成活动ID用
StoreSubName string `orm:"size(64)" json:"storeSubName"` // 当前这个字段被用作vendorActType
}
// todo
// func (o *OrderSkuFinancial) TableUnique() [][]string {
// return [][]string{
// []string{"AfsOrderID", "VendorSkuID", "VendorID", "IsAfsOrder"},
// }
// }
func (o *OrderSkuFinancial) TableIndex() [][]string {
return [][]string{
[]string{"VendorOrderID", "VendorSkuID"},
[]string{"AfsOrderID", "VendorSkuID"},
[]string{"AfsOrderID", "JxSkuID"},
}
}
// type ActivityForSku struct {
// ModelIDCUL
// CityName string `json:"cityName"` // 活动所在城市
// VendorID int `orm:"column(vendor_id)" json:"vendorID"` // 平台id
// ActivityCreatedAt time.Time `orm:"type(datetime);index" json:"activityCreatedAt"` // 活动开始时间时间
// ActivityEndAt time.Time `orm:"type(datetime);index" json:"activityEndAt"` // 活动结束时间
// VendorSkuID string `orm:"column(vendor_sku_id)" json:"vendorSkuID"` // 平台skuid
// SkuID int `orm:"column(sku_id)" json:"skuID"` // 平台返回的京西skuid
// JxSkuID int `orm:"column(jx_sku_id)" json:"jxSkuID"` // 京西本地系统查询到的skuid
// ActivityPrice int64 `json:"activityPrice"` // 活动价格
// JxSubsidy int64 `json:"jxSubsidy"` // 京西补贴
// ManagerSubsidy int64 `json:"managerSubsidy"` // 城市经理补贴
// Remark string `json:"remark"` // 备注
// }