From a3ee6328434ff4b168258d5967b34441c4fb8598 Mon Sep 17 00:00:00 2001 From: gazebo Date: Sat, 26 Jan 2019 09:07:23 +0800 Subject: [PATCH] - set correct OrderSeq for wsc order --- business/partner/purchase/weimob/wsc/order.go | 30 ++++++++++++++++--- 1 file changed, 26 insertions(+), 4 deletions(-) diff --git a/business/partner/purchase/weimob/wsc/order.go b/business/partner/purchase/weimob/wsc/order.go index 90dfca09c..811fee989 100644 --- a/business/partner/purchase/weimob/wsc/order.go +++ b/business/partner/purchase/weimob/wsc/order.go @@ -108,6 +108,7 @@ func (p *PurchaseHandler) GetOrder(vendorOrderID string) (order *model.GoodsOrde } deliveryDetail := result["deliveryDetail"].(map[string]interface{}) logisticsDeliveryDetail := deliveryDetail["logisticsDeliveryDetail"].(map[string]interface{}) + paymentInfo := result["paymentInfo"].(map[string]interface{}) order = &model.GoodsOrder{ VendorOrderID: vendorOrderID, VendorID: model.VendorIDWSC, @@ -123,10 +124,9 @@ func (p *PurchaseHandler) GetOrder(vendorOrderID string) (order *model.GoodsOrde BuyerComment: utils.Interface2String(result["buyerRemark"]), ExpectedDeliveredTime: utils.DefaultTimeValue, VendorStatus: utils.Int64ToStr(utils.MustInterface2Int64(result["orderStatus"])), - OrderSeq: 0, - // StatusTime:, - OriginalData: string(utils.MustMarshal(result)), - ActualPayPrice: jxutils.StandardPrice2Int(utils.MustInterface2Float64(result["totalAmount"])), + StatusTime: utils.Timestamp2Time(utils.MustInterface2Int64(paymentInfo["paymentTime"]) / 1000), + OriginalData: string(utils.MustMarshal(result)), + ActualPayPrice: jxutils.StandardPrice2Int(utils.MustInterface2Float64(result["totalAmount"])), } order.Status = p.GetStatusFromVendorStatus(order.VendorStatus) itemList := result["itemList"].([]interface{}) @@ -151,6 +151,7 @@ func (p *PurchaseHandler) GetOrder(vendorOrderID string) (order *model.GoodsOrde order.Weight += sku.Weight * sku.Count } p.arrangeSaleStore(order, utils.Interface2String(logisticsDeliveryDetail["receiverCity"]), utils.Interface2String(logisticsDeliveryDetail["receiverProvince"])) + p.setStoreOrderSeq(order) return order, err } @@ -299,3 +300,24 @@ func (p *PurchaseHandler) arrangeSaleStore(order *model.GoodsOrder, cityName, pr globals.SugarLogger.Errorf("arrangeSaleStore orderID:%s 找不到门店", order.VendorOrderID) } } + +func (p *PurchaseHandler) setStoreOrderSeq(order *model.GoodsOrder) { + if order.StoreID > 0 { + year, month, day := order.StatusTime.Date() + dateBegin := time.Date(year, month, day, 0, 0, 0, 0, nil) + // dateEnd := date1.Add(time.Hour * 24) + sql := ` + SELECT COUNT(*) ct + FROM goods_order t1 + WHERE t1.store_id = ? AND t1.order_created_at >= ? + ` + var count int + db := dao.GetDB() + if err := dao.GetRow(db, &count, sql, order.StoreID, dateBegin); err == nil { + order.OrderSeq = count + 1 + globals.SugarLogger.Errorf("setStoreOrderSeq orderID:%s, orderSeq:%d", order.VendorOrderID, order.OrderSeq) + } else { + globals.SugarLogger.Errorf("setStoreOrderSeq orderID:%s failed with error:%v", order.VendorOrderID, err) + } + } +}