添加包装费
This commit is contained in:
@@ -909,6 +909,10 @@ func UpdateStore(ctx *jxcontext.Context, storeID int, payload map[string]interfa
|
||||
}
|
||||
}
|
||||
|
||||
if payload["packageSetting"] != nil {
|
||||
valid["packageSetting"] = payload["packageSetting"].(int64)
|
||||
}
|
||||
|
||||
if valid["originalName"] != nil {
|
||||
delete(valid, "originalName")
|
||||
}
|
||||
|
||||
@@ -147,22 +147,22 @@ type GoodsOrder struct {
|
||||
OrderFinishedAt time.Time `orm:"type(datetime)" json:"orderFinishedAt"`
|
||||
StatusTime time.Time `orm:"type(datetime)" json:"statusTime"` // last status time
|
||||
PickDeadline time.Time `orm:"type(datetime);null" json:"pickDeadline"`
|
||||
DeliveryFeeFrom *time.Time `orm:"type(datetime);null" json:"deliveryFeeFrom,omitempty"` // 三方配置费计算的开始基准时间
|
||||
Flag int `json:"flag"` // 非运单调整相关的其它状态
|
||||
InvoiceTitle string `orm:"size(64)" json:"invoiceTitle"` // 发票抬头
|
||||
InvoiceTaxerID string `orm:"size(32);column(invoice_taxer_id)" json:"invoiceTaxerID"` // 发票纳税人识别码
|
||||
InvoiceEmail string `orm:"size(64)" json:"invoiceEmail"` // 发票邮箱
|
||||
VendorOrgCode string `orm:"size(64)" json:"vendorOrgCode"` // 同一平台下不同的商户代码,如果只有一个,可以为空
|
||||
FromStoreID int `orm:"column(from_store_id)" json:"fromStoreID"` // 物料配送门店
|
||||
EclpOutID string `orm:"column(eclp_out_id)" json:"eclpOutID"` // 物料配送的出库单号
|
||||
AddressID int64 `orm:"column(address_id)" json:"addressID"` // 配送地址ID
|
||||
EarningType int `json:"earningType"` // 订单结算方式,2为扣点,1为报价
|
||||
OrderType int `json:"orderType"` // 订单类型,0为普通订单,1为物料订单,2为进货订单
|
||||
OrderPayPercentage int `json:"orderPayPercentage"` // 调价包?
|
||||
CouponIDs string `orm:"column(coupon_ids)" json:"couponIDs"` // 优惠券IDs(京西商城)
|
||||
NotifyType int `json:"notifyType"` // 0表示没有通知,1表示发的短信,2表示发的语音
|
||||
PhoneAscription string `orm:"column(phone_ascription)" json:"phoneAscription"` // 电话号码归属地,{代表抖音号码归宿地[yes-四川成都]}
|
||||
PackagePrice int64 `orm:"size(8);column(package_price)" json:"packagePrice"` // 门店包装袋金额
|
||||
DeliveryFeeFrom *time.Time `orm:"type(datetime);null" json:"deliveryFeeFrom,omitempty"` // 三方配置费计算的开始基准时间
|
||||
Flag int `json:"flag"` // 非运单调整相关的其它状态
|
||||
InvoiceTitle string `orm:"size(64)" json:"invoiceTitle"` // 发票抬头
|
||||
InvoiceTaxerID string `orm:"size(32);column(invoice_taxer_id)" json:"invoiceTaxerID"` // 发票纳税人识别码
|
||||
InvoiceEmail string `orm:"size(64)" json:"invoiceEmail"` // 发票邮箱
|
||||
VendorOrgCode string `orm:"size(64)" json:"vendorOrgCode"` // 同一平台下不同的商户代码,如果只有一个,可以为空
|
||||
FromStoreID int `orm:"column(from_store_id)" json:"fromStoreID"` // 物料配送门店
|
||||
EclpOutID string `orm:"column(eclp_out_id)" json:"eclpOutID"` // 物料配送的出库单号
|
||||
AddressID int64 `orm:"column(address_id)" json:"addressID"` // 配送地址ID
|
||||
EarningType int `json:"earningType"` // 订单结算方式,2为扣点,1为报价
|
||||
OrderType int `json:"orderType"` // 订单类型,0为普通订单,1为物料订单,2为进货订单
|
||||
OrderPayPercentage int `json:"orderPayPercentage"` // 调价包?
|
||||
CouponIDs string `orm:"column(coupon_ids)" json:"couponIDs"` // 优惠券IDs(京西商城)
|
||||
NotifyType int `json:"notifyType"` // 0表示没有通知,1表示发的短信,2表示发的语音
|
||||
PhoneAscription string `orm:"column(phone_ascription)" json:"phoneAscription"` // 电话号码归属地,{代表抖音号码归宿地[yes-四川成都]}
|
||||
PackagePrice int64 `orm:"size(8);column(package_price);default(0)" json:"packagePrice"` // 门店包装袋金额
|
||||
// 以下只是用于传递数据
|
||||
OriginalData string `orm:"-" json:"-"`
|
||||
Skus []*OrderSku `orm:"-" json:"-"`
|
||||
|
||||
@@ -393,14 +393,15 @@ type Store struct {
|
||||
OperatorPhone3 string `orm:"size(16)" json:"operatorPhone3"` // 饿百运营人电话
|
||||
OperatorRole3 string `orm:"size(32)" json:"operatorRole3"` // 饿百运营人组(角色)
|
||||
|
||||
PromoteInfo string `orm:"size(255)" json:"promoteInfo"` //门店公告(所有平台统一的公告)
|
||||
IsBoughtMatter int `json:"isBoughtMatter"` //这周是否申请过物料
|
||||
SoundPercentage int `json:"soundPercentage"` //打印机声音大小比例
|
||||
Banner string `orm:"size(9999)" json:"banner"` //门店商城bannar图
|
||||
BrandID int `orm:"column(brand_id)" json:"brandID"` //品牌ID
|
||||
IsPrintCancelOrder int `orm:"column(is_print_cancel_order)" json:"isPrintCancelOrder"` //是否打印取消订单1是/-1否
|
||||
IsPrintRefundOrder int `orm:"column(is_print_refund_order)" json:"isPrintRefundOrder"` //是否打印退款订单1是/-1否
|
||||
IDCardHandBack string `orm:"size(255);column(id_card_hand_back)" json:"idCardHandBack"` // 手持身份证背面
|
||||
PromoteInfo string `orm:"size(255)" json:"promoteInfo"` //门店公告(所有平台统一的公告)
|
||||
IsBoughtMatter int `json:"isBoughtMatter"` //这周是否申请过物料
|
||||
SoundPercentage int `json:"soundPercentage"` //打印机声音大小比例
|
||||
Banner string `orm:"size(9999)" json:"banner"` //门店商城bannar图
|
||||
BrandID int `orm:"column(brand_id)" json:"brandID"` //品牌ID
|
||||
IsPrintCancelOrder int `orm:"column(is_print_cancel_order)" json:"isPrintCancelOrder"` //是否打印取消订单1是/-1否
|
||||
IsPrintRefundOrder int `orm:"column(is_print_refund_order)" json:"isPrintRefundOrder"` //是否打印退款订单1是/-1否
|
||||
IDCardHandBack string `orm:"size(255);column(id_card_hand_back)" json:"idCardHandBack"` // 手持身份证背面
|
||||
PackageSetting int64 `orm:"size(8);column(package_setting);default(0)" json:"packageSetting"` // 门店包装袋扣费设置
|
||||
}
|
||||
|
||||
func (*Store) TableUnique() [][]string {
|
||||
|
||||
@@ -310,6 +310,10 @@ func (p *PurchaseHandler) Map2Order(orderData map[string]interface{}) (order *mo
|
||||
giftSkus, discountMoney := getZengSkus(vendorOrderID, orderData)
|
||||
order.DiscountMoney = discountMoney
|
||||
order.Skus = append(order.Skus, giftSkus...)
|
||||
|
||||
// 包装袋金额设置
|
||||
store, _ := dao.GetStoreDetail(dao.GetDB(), order.JxStoreID, order.VendorID, order.VendorOrgCode)
|
||||
order.PackagePrice = store.PackageSetting
|
||||
jxutils.RefreshOrderSkuRelated(order)
|
||||
return order
|
||||
}
|
||||
|
||||
@@ -350,6 +350,9 @@ func Map2Order(orderData map[string]interface{}) (order *model.GoodsOrder) {
|
||||
}
|
||||
order.Skus = append(order.Skus, sku)
|
||||
}
|
||||
// 包装袋金额设置
|
||||
store, _ := dao.GetStoreDetail(dao.GetDB(), order.JxStoreID, order.VendorID, order.VendorOrgCode)
|
||||
order.PackagePrice = store.PackageSetting
|
||||
jxutils.RefreshOrderSkuRelated(order)
|
||||
return order
|
||||
}
|
||||
|
||||
@@ -323,7 +323,7 @@ func result2Orders(msg *jdshopapi.CallBackResult) (order *model.GoodsOrder, err
|
||||
if order.ExpectedDeliveredTime.Sub(order.OrderCreatedAt) <= time.Hour+time.Minute {
|
||||
order.BusinessType = model.BusinessTypeImmediate
|
||||
}
|
||||
// buildOrderTo102919(order)
|
||||
order.PackagePrice = store.PackageSetting
|
||||
return order, err
|
||||
}
|
||||
|
||||
|
||||
@@ -1228,6 +1228,9 @@ func jxOrder2GoodsOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, deliveryAd
|
||||
if IsDeliverySelf {
|
||||
order.DeliveryType = model.OrderDeliveryTypeSelfTake
|
||||
}
|
||||
|
||||
store, _ := dao.GetStoreDetail(dao.GetDB(), order.JxStoreID, order.VendorID, order.VendorOrgCode)
|
||||
order.PackagePrice = store.PackageSetting
|
||||
return order, err
|
||||
}
|
||||
|
||||
|
||||
@@ -245,10 +245,8 @@ func (p *PurchaseHandler) Map2Order(orderData map[string]interface{}) (order *mo
|
||||
}
|
||||
}
|
||||
ignoreSkuMap := make(map[int]int)
|
||||
// detail := result["detail"].([]interface{})
|
||||
multiSkuMap := make(map[int]int)
|
||||
for _, product := range detail {
|
||||
// product := product2.(map[string]interface{})
|
||||
skuName := product["food_name"].(string)
|
||||
skuID := utils.Interface2String(product["sku_id"])
|
||||
sku := &model.OrderSku{
|
||||
@@ -296,9 +294,6 @@ func (p *PurchaseHandler) Map2Order(orderData map[string]interface{}) (order *mo
|
||||
if sku.SalePrice < 0 {
|
||||
sku.SalePrice = jxutils.StandardPrice2Int(utils.MustInterface2Float64(product["price"]))
|
||||
}
|
||||
// if product["isGift"].(bool) {
|
||||
// sku.SkuType = 1
|
||||
// }
|
||||
order.Skus = append(order.Skus, sku)
|
||||
multiSkuMap[sku.SkuID]++
|
||||
}
|
||||
@@ -308,6 +303,9 @@ func (p *PurchaseHandler) Map2Order(orderData map[string]interface{}) (order *mo
|
||||
}
|
||||
}
|
||||
|
||||
// 包装袋金额设置
|
||||
store, _ := dao.GetStoreDetail(dao.GetDB(), order.JxStoreID, order.VendorID, order.VendorOrgCode)
|
||||
order.PackagePrice = store.PackageSetting
|
||||
jxutils.RefreshOrderSkuRelated(order)
|
||||
return order
|
||||
}
|
||||
|
||||
@@ -174,9 +174,7 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode, vendorOrderID, vendorStoreID s
|
||||
salePrice += sku.SalePrice
|
||||
}
|
||||
}
|
||||
//order.TotalShopMoney = utils.Float64TwoInt64(float64(salePrice) * 0.95) // 抖音平台扣点金额0.05
|
||||
|
||||
//order.DeliveryType = model.OrderDeliveryTypeStoreSelf
|
||||
autoTransport, err := GetStoreAutoCallRiderInfo(vendorOrgCode, []int64{utils.Str2Int64(vendorStoreIdRelly)})
|
||||
if err != nil || len(autoTransport) == 0 {
|
||||
order.DeliveryType = model.OrderDeliveryTypePlatform
|
||||
@@ -195,20 +193,6 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode, vendorOrderID, vendorStoreID s
|
||||
return nil, nil, err
|
||||
}
|
||||
|
||||
// 订单不在门店营业时间来的订单,
|
||||
//openTime := localStore.OpenTime1 // 门店开始营业时间
|
||||
//closeTime := localStore.CloseTime1 // 门店结束营业时间
|
||||
//if localStore.CloseTime2 != 0 {
|
||||
// closeTime = localStore.CloseTime2
|
||||
//}
|
||||
//
|
||||
//h, m, _ := order.ExpectedDeliveredTime.Clock()
|
||||
//if order.ExpectedDeliveredTime.Day() == time.Now().Day() && utils.Str2Int16(fmt.Sprintf("%d%d", h, m)) >= openTime && utils.Str2Int16(fmt.Sprintf("%d%d", h, m)) < closeTime && localStore.Status == model.StoreStatusOpened {
|
||||
// order.BusinessType = model.BusinessTypeImmediate
|
||||
//} else {
|
||||
// order.BusinessType = model.BusinessTypeDingshida
|
||||
//}
|
||||
|
||||
if result.EarlyArrival { // 立即达
|
||||
order.BusinessType = model.BusinessTypeImmediate
|
||||
order.ExpectedDeliveredTime = getTimeFromTimestamp(result.TargetArrivalTime + 30*60) // 预计最晚送达时间
|
||||
@@ -239,7 +223,6 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode, vendorOrderID, vendorStoreID s
|
||||
|
||||
// 抖音订单手机号和收货地址是否同城
|
||||
order.PhoneAscription = ""
|
||||
//ascription, err := phonedata.Find(order.ConsigneeMobile)
|
||||
ascription, err := ascription_place.Find(order.ConsigneeMobile)
|
||||
if err != nil {
|
||||
order.PhoneAscription = model.PhoneAscriptionAddressNo + "-" + err.Error()
|
||||
@@ -250,7 +233,8 @@ func (p *PurchaseHandler) getOrder(vendorOrgCode, vendorOrderID, vendorStoreID s
|
||||
order.PhoneAscription = model.PhoneAscriptionAddressNo + "-" + "归属信息不匹配:" + ascription.Province + ascription.City
|
||||
}
|
||||
}
|
||||
|
||||
store, _ := dao.GetStoreDetail(dao.GetDB(), order.JxStoreID, order.VendorID, order.VendorOrgCode)
|
||||
order.PackagePrice = store.PackageSetting
|
||||
jxutils.RefreshOrderSkuRelated(order)
|
||||
return order, orderMap, nil
|
||||
}
|
||||
@@ -310,15 +294,6 @@ func (c *PurchaseHandler) onOrderMsg(msgId, orderId string, msg interface{}) (re
|
||||
return tiktokShop.Err2CallbackResponse(nil, "")
|
||||
}
|
||||
|
||||
// 取消订单:可能未支付取消订单,不做处理
|
||||
//if msgId == tiktokShop.CallbackCancelOrderMsgTagId {
|
||||
// if _, err := partner.CurOrderManager.LoadOrder(orderId, model.VendorIDDD); err != nil && strings.Contains(err.Error(), "找不到相应订单") {
|
||||
// return tiktokShop.Err2CallbackResponse(nil, "")
|
||||
// } else {
|
||||
// return tiktokShop.Err2CallbackResponse(err, "")
|
||||
// }
|
||||
//}
|
||||
|
||||
// 组装订单状态变化
|
||||
status, appOrgCode := c.callbackMsg2Status(msgId, orderId, msg)
|
||||
// 校验重复消息
|
||||
|
||||
Reference in New Issue
Block a user