ebai "delivery_party" 多类型处理

This commit is contained in:
renyutian
2019-04-09 13:58:09 +08:00
parent 2b221d0ea3
commit c5ef17afee

View File

@@ -160,7 +160,8 @@ func (p *PurchaseHandler) OrderDetail2Financial(result map[string]interface{}) (
// orderFinancial.DeliveryConfirmTime = getTimeFromInterface(order1["finished_time"])
orderFinancial.TotalDiscountMoney = utils.MustInterface2Int64(order1["discount_fee"])
orderFinancial.ReceivableFreight = utils.MustInterface2Int64(order1["send_fee"])
if int(utils.MustInterface2Int64(order1["delivery_party"])) == ebaiapi.SendImmediatelySelf {
if int(getInt64FromInterface(order1["delivery_party"])) == ebaiapi.SendImmediatelySelf {
orderFinancial.SelfDeliveryDiscountMoney = orderFinancial.ReceivableFreight
orderFinancial.DistanceFreightMoney = 0
// 通过本地数据库去取是否转美团/达达,并计算运费
@@ -241,3 +242,13 @@ func (p *PurchaseHandler) OrderDetail2Financial(result map[string]interface{}) (
orderFinancial.FreightDiscountMoney = orderFinancial.TotalDiscountMoney - orderFinancial.DiscountMoney
return orderFinancial
}
func getInt64FromInterface(strOrNum interface{}) int64 {
var resultNum int64
if resultStr, ok := strOrNum.(string); ok {
resultNum = utils.Str2Int64WithDefault(resultStr, 0)
} else {
resultNum = utils.Interface2Int64WithDefault(strOrNum, 0)
}
return resultNum
}