物竞天择售后单

This commit is contained in:
suyl
2021-09-01 15:24:47 +08:00
parent 5acc9f31f6
commit ed39a2c052
4 changed files with 40 additions and 24 deletions

View File

@@ -2154,12 +2154,15 @@ func RefreshJdAfsOrderTotalShopMoney() {
sqlParams := []interface{}{time.Now().AddDate(0, 0, -3), model.VendorIDJD, model.AfsOrderStatusFinished}
dao.GetRows(db, &afsOrders, sql, sqlParams)
for _, v := range afsOrders {
if handler := partner.GetPurchaseOrderHandlerFromVendorID(v.VendorID); handler != nil {
if orderAfsInfo, err := handler.GetOrderAfsInfo(nil, v.VendorOrderID, v.AfsOrderID); err == nil && orderAfsInfo.AfsTotalShopMoney != 0 {
v.AfsTotalShopMoney = orderAfsInfo.AfsTotalShopMoney
//排除物竞天择的
if order, _ := partner.CurOrderManager.LoadOrder(v.VendorOrderID, v.VendorID); !strings.Contains(order.BuyerComment, "JD") {
if handler := partner.GetPurchaseOrderHandlerFromVendorID(v.VendorID); handler != nil {
if orderAfsInfo, err := handler.GetOrderAfsInfo(nil, v.VendorOrderID, v.AfsOrderID); err == nil && orderAfsInfo.AfsTotalShopMoney != 0 {
v.AfsTotalShopMoney = orderAfsInfo.AfsTotalShopMoney
}
}
dao.UpdateEntity(db, v, "AfsTotalShopMoney")
}
dao.UpdateEntity(db, v, "AfsTotalShopMoney")
}
}

View File

@@ -1563,12 +1563,20 @@ func RefreshJdShopOrdersEarningPrice(ctx *jxcontext.Context, orderStartTime, ord
if err != nil {
return err
}
var afsOrderList []map[*model.AfsOrder]float64
if results != nil {
for _, v := range results.BillList.Result {
if v.DueAmount != 0 {
order, err := partner.CurOrderManager.LoadOrder(utils.Int64ToStr(v.OrderID), model.VendorIDJD)
if order == nil || err != nil {
continue
order, _ := partner.CurOrderManager.LoadOrder(utils.Int64ToStr(v.OrderID), model.VendorIDJD)
//可能是物竞天择的售后单
if order == nil {
if afsOrder, _ := partner.CurOrderManager.LoadAfsOrder(utils.Int64ToStr(v.OrderID), model.VendorIDJD); afsOrder != nil {
var afsOrderMap = make(map[*model.AfsOrder]float64)
afsOrderMap[afsOrder] = v.DueAmount
afsOrderList = append(afsOrderList, afsOrderMap)
} else {
continue
}
}
store, _ := dao.GetStoreDetail(db, jxutils.GetSaleStoreIDFromOrder(order), order.VendorID, order.VendorOrgCode)
// stores, _ := dao.GetStoreList(db, []int{jxutils.GetSaleStoreIDFromOrder(order)}, nil, nil, nil, nil, "")
@@ -1584,6 +1592,19 @@ func RefreshJdShopOrdersEarningPrice(ctx *jxcontext.Context, orderStartTime, ord
}
}
}
if len(afsOrderList) > 0 {
for i := len(afsOrderList) - 1; i < 0; i-- {
afsOrderMap := afsOrderList[i]
for k, v := range afsOrderMap {
if order2, _ := partner.CurOrderManager.LoadOrder(k.VendorOrderID, model.VendorIDJD); order2 != nil {
if k.AfsTotalShopMoney == 0 && order2.TotalShopMoney != 0 {
k.AfsTotalShopMoney = order2.TotalShopMoney - utils.Float64TwoInt64(v*100)
dao.UpdateEntity(db, k, "AfsTotalShopMoney")
}
}
}
}
}
return err
}