This commit is contained in:
suyl
2021-06-23 09:41:35 +08:00
parent 050da7cc59
commit 0999414560
2 changed files with 41 additions and 25 deletions

View File

@@ -343,35 +343,51 @@ func (c *OrderManager) GetOrders(ctx *jxcontext.Context, isIncludeFake bool, fro
if err == nil {
pagedInfo = &model.PagedInfo{
TotalCount: totalCount,
Data: orders,
//Data: orders,
}
//if len(orders) > 0 {
// task := tasksch.NewParallelTask("RefreshOrderFinancial", tasksch.NewParallelConfig().SetIsContinueWhenError(true), ctx,
// func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
// order := batchItemList[0].(*model.GoodsOrderExt)
// afsOrders, _ := dao.GetAfsOrders(db, order.VendorID, order.VendorOrderID, "")
// //tempTotalShopMoney := order.TotalShopMoney
// for _, v := range afsOrders {
// if v.Status == model.AfsOrderStatusFinished {
// //报价的,平台结算重算后,预计收益要减去那个商品的报价
// //扣点的只用重算平台结算再算预计收益
// if order.EarningType == model.EarningTypeQuote {
// //tempTotalShopMoney
// } else {
//
// }
// }
// }
// return nil, err
// }, orders)
// tasksch.HandleTask(task, nil, true).Run()
// task.GetResult(0)
//}
//pagedInfo.Data = orders
if len(orders) > 0 {
task := tasksch.NewParallelTask("RefreshOrderFinancial", tasksch.NewParallelConfig().SetIsContinueWhenError(true), ctx,
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
order := batchItemList[0].(*model.GoodsOrderExt)
afsOrder := &AfsOrderExt{}
sql := `
SELECT a.*, SUM(c.shop_price) shop_price
FROM afs_order a
LEFT JOIN (
SELECT MAX(created_at), afs_order_id
FROM afs_order
WHERE status = ? AND vendor_order_id = ?
GROUP BY 2
) b ON a.afs_order_id = b.afs_order_id
LEFT JOIN order_sku_financial c ON c.afs_order_id = a.afs_order_id AND c.is_afs_order = ?
`
sqlParams := []interface{}{model.AfsOrderStatusFinished, order.VendorOrderID,
model.YES}
if err = dao.GetRow(db, &afsOrder, sql, sqlParams); err == nil && afsOrder != nil {
if afsOrder.AfsTotalShopMoney != 0 {
//报价,要减去商品的京西价
if order.EarningType == model.EarningTypeQuote {
order.JxIncome = afsOrder.AfsTotalShopMoney - order.EarningPrice - order.DesiredFee + afsOrder.ShopPrice
} else {
order.JxIncome = afsOrder.AfsTotalShopMoney * int64(order.OrderPayPercentage/2/100)
}
}
}
return retVal, err
}, orders)
tasksch.HandleTask(task, nil, true).Run()
task.GetResult(0)
}
pagedInfo.Data = orders
}
return pagedInfo, err
}
type AfsOrderExt struct {
model.AfsOrder
ShopPrice int64 `json:"shopPrice"`
}
func (c *OrderManager) ExportOrders(ctx *jxcontext.Context, fromDateStr, toDateStr string, mapParams map[string]interface{}) (hint string, err error) {
globals.SugarLogger.Debugf("ExportOrders from:%s to:%s", fromDateStr, toDateStr)
var (