From 71bc871bdbbb5f432be5921ce458c46560c19324 Mon Sep 17 00:00:00 2001 From: gazebo Date: Mon, 2 Dec 2019 11:08:57 +0800 Subject: [PATCH 1/7] =?UTF-8?q?StoreSkuNameExt.Skus2=E6=94=B9=E4=B8=BASkus?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxstore/cms/store_sku.go | 21 ++++++++++----------- business/jxstore/cms/store_sku_check.go | 14 +++++++------- business/jxstore/misc/store_score.go | 2 +- business/jxstore/misc/store_sku_sales.go | 8 ++++---- 4 files changed, 22 insertions(+), 23 deletions(-) diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go index 128be1aec..6ecebf125 100644 --- a/business/jxstore/cms/store_sku.go +++ b/business/jxstore/cms/store_sku.go @@ -92,11 +92,10 @@ type StoreSkuNameExt struct { StoreName string `json:"storeName"` model.SkuName - PayPercentage int `json:"-"` - UnitPrice int `json:"unitPrice"` - Skus []map[string]interface{} `orm:"-" json:"skus2,omitempty"` - Skus2 []*StoreSkuExt `orm:"-" json:"skus,omitempty"` - SkusStr string `json:"-"` + PayPercentage int `json:"-"` + UnitPrice int `json:"unitPrice"` + Skus []*StoreSkuExt `orm:"-" json:"skus,omitempty"` + SkusStr string `json:"-"` PendingOpType int8 `json:"pendingOpType"` // 取值同 StoreOpRequest.Type PendingUnitPrice int `json:"pendingUnitPrice"` // 这个是待审核的价格申请 @@ -495,7 +494,7 @@ func GetStoresSkusNew(ctx *jxcontext.Context, storeIDs, skuIDs []int, isFocus bo } else { storeName = storeNameMap[index] } - storeName.Skus2 = append(storeName.Skus2, &v.StoreSkuExt) + storeName.Skus = append(storeName.Skus, &v.StoreSkuExt) } if err == nil { if isSaleInfo { @@ -524,7 +523,7 @@ func GetStoreAndSkuIDsFromInfo(skuNamesInfo *StoreSkuNamesInfo) (storeIDs, skuID skuIDMap := make(map[int]int) for _, skuName := range skuNamesInfo.SkuNames { storeIDMap[skuName.StoreID] = 1 - for _, sku := range skuName.Skus2 { + for _, sku := range skuName.Skus { skuIDMap[sku.SkuID] = 1 } } @@ -572,8 +571,8 @@ func updateActPrice4StoreSkuNameNew(db *dao.DaoDB, storeIDs, skuIDs []int, skuNa actStoreSkuMap4EarningPrice := jxutils.NewActStoreSkuMap(actStoreSkuList, false) for _, skuName := range skuNamesInfo.SkuNames { - if len(skuName.Skus2) > 0 { - for _, v := range skuName.Skus2 { + if len(skuName.Skus) > 0 { + for _, v := range skuName.Skus { if actStoreSku := actStoreSkuMap4Act.GetActStoreSku(skuName.StoreID, v.SkuID, -1); actStoreSku != nil { v.ActPrice = int(actStoreSku.ActualActPrice) v.ActID = actStoreSku.ActID @@ -628,7 +627,7 @@ func updateSaleInfo4StoreSkuName(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs var newSkuNames []*StoreSkuNameExt for _, skuName := range skuNamesInfo.SkuNames { var newSkus []*StoreSkuExt - for _, sku := range skuName.Skus2 { + for _, sku := range skuName.Skus { saleInfo := saleInfoMap[jxutils.Combine2Int(skuName.StoreID, sku.SkuID)] if saleInfo == nil && fromCount == 0 { saleInfo = &SkuSaleInfo{} @@ -640,7 +639,7 @@ func updateSaleInfo4StoreSkuName(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs } } if len(newSkus) > 0 { - skuName.Skus2 = newSkus + skuName.Skus = newSkus newSkuNames = append(newSkuNames, skuName) } } diff --git a/business/jxstore/cms/store_sku_check.go b/business/jxstore/cms/store_sku_check.go index 9ef91776c..5e0aa1eda 100644 --- a/business/jxstore/cms/store_sku_check.go +++ b/business/jxstore/cms/store_sku_check.go @@ -227,7 +227,7 @@ func GetMultiStoreAllSkuInfo(ctx *jxcontext.Context, vendorMap map[int]bool) { func GetFilterJxSkuInfoMap(jxSkuInfoList []*StoreSkuNameExt) map[int]*StoreSkuNameExt { filterJxSkuInfoMap := make(map[int]*StoreSkuNameExt) for _, value := range jxSkuInfoList { - for _, skuInfo := range value.Skus2 { + for _, skuInfo := range value.Skus { filterJxSkuInfoMap[skuInfo.SkuID] = value } } @@ -329,24 +329,24 @@ func CompareJxAndVendor(vendorID int, storeIDStr, vendorStoreID, storeName strin //多规格商品不用比较数量单位 if jxSkuInfo.IsSpu == 0 { //jxSkuDetailName : 前缀 ([荐]) + 分类名(xxx水饺) + 数量单位(约..g/份) + 注释 (补充..) - jxSkuDetailName = jxutils.ComposeSkuName(jxSkuInfo.SkuName.Prefix, jxSkuInfo.SkuName.Name, jxSkuInfo.Skus2[0].Comment, jxSkuInfo.SkuName.Unit, jxSkuInfo.Skus2[0].SkuSpecQuality, jxSkuInfo.Skus2[0].SkuSpecUnit, 0) + jxSkuDetailName = jxutils.ComposeSkuName(jxSkuInfo.SkuName.Prefix, jxSkuInfo.SkuName.Name, jxSkuInfo.Skus[0].Comment, jxSkuInfo.SkuName.Unit, jxSkuInfo.Skus[0].SkuSpecQuality, jxSkuInfo.Skus[0].SkuSpecUnit, 0) } else { //jxSkuDetailName : 前缀 ([荐]) + 分类名(xxx水饺) + 数量单位(约..g/份) + 注释 (补充..) - jxSkuDetailName = jxutils.ComposeSkuName(jxSkuInfo.SkuName.Prefix, jxSkuInfo.SkuName.Name, jxSkuInfo.Skus2[0].Comment, "", jxSkuInfo.Skus2[0].SkuSpecQuality, "", 0) + jxSkuDetailName = jxutils.ComposeSkuName(jxSkuInfo.SkuName.Prefix, jxSkuInfo.SkuName.Name, jxSkuInfo.Skus[0].Comment, "", jxSkuInfo.Skus[0].SkuSpecQuality, "", 0) } //jxSkuSaleStatus : 商品状态 ,skustatus 优先级高于 StoreSkuStatus - jxSkuSaleStatus := jxutils.MergeSkuStatus(jxSkuInfo.Skus2[0].SkuStatus, jxSkuInfo.Skus2[0].StoreSkuStatus) + jxSkuSaleStatus := jxutils.MergeSkuStatus(jxSkuInfo.Skus[0].SkuStatus, jxSkuInfo.Skus[0].StoreSkuStatus) jxSkuSaleStatusName := GetSkuSaleStatusName(jxSkuSaleStatus) vendorSkuInfo := filterVendorSkuInfoMap[skuID] var status int8 if vendorID == model.VendorIDMTWM { - status = jxSkuInfo.Skus2[0].MtwmSyncStatus + status = jxSkuInfo.Skus[0].MtwmSyncStatus } else if vendorID == model.VendorIDEBAI { - status = jxSkuInfo.Skus2[0].EbaiSyncStatus + status = jxSkuInfo.Skus[0].EbaiSyncStatus } else if vendorID == model.VendorIDJD { - status = jxSkuInfo.Skus2[0].JdSyncStatus + status = jxSkuInfo.Skus[0].JdSyncStatus } syncStatus := utils.Int2Str(int(status)) toBeCreate := GetBoolName(model.IsSyncStatusNeedCreate(status)) diff --git a/business/jxstore/misc/store_score.go b/business/jxstore/misc/store_score.go index aaa9c7f7d..edb6b4ea2 100644 --- a/business/jxstore/misc/store_score.go +++ b/business/jxstore/misc/store_score.go @@ -223,7 +223,7 @@ func GetAllStoreSkus(ctx *jxcontext.Context, parentTask tasksch.ITask, storeList if jxSkuInfoData, err2 := cms.GetStoreSkus(ctx, storeID, []int{}, true, "", true, false, map[string]interface{}{}, 0, -1); jxSkuInfoData != nil { jxSkuPriceMapData := make(map[int]int) for _, value := range jxSkuInfoData.SkuNames { - for _, skuInfo := range value.Skus2 { + for _, skuInfo := range value.Skus { saleStatus := jxutils.MergeSkuStatus(skuInfo.SkuStatus, skuInfo.StoreSkuStatus) if saleStatus == model.SkuStatusNormal { jxSkuPriceMapData[skuInfo.SkuID] = skuInfo.BindPrice diff --git a/business/jxstore/misc/store_sku_sales.go b/business/jxstore/misc/store_sku_sales.go index b001f5145..e4de9b4ac 100644 --- a/business/jxstore/misc/store_sku_sales.go +++ b/business/jxstore/misc/store_sku_sales.go @@ -78,7 +78,7 @@ func GetStoreSkuSalesInfo(ctx *jxcontext.Context, storeID int) (outStoreSkuSales storeSkuData, err := cms.GetStoreSkus(ctx, storeID, citySkuIDs, true, "", true, false, map[string]interface{}{}, 0, -1) if err == nil { for _, value := range storeSkuData.SkuNames { - for _, skuInfo := range value.Skus2 { + for _, skuInfo := range value.Skus { storeSkuMapData[skuInfo.SkuID] = value } } @@ -98,7 +98,7 @@ func GetStoreSkuSalesInfo(ctx *jxcontext.Context, storeID int) (outStoreSkuSales jxSkuInfoData, err := cms.GetStoreSkus(ctx, storeID, citySkuIDs, true, "", true, false, map[string]interface{}{}, 0, -1) jxSkuPriceMapData := make(map[int]int) for _, value := range jxSkuInfoData.SkuNames { - for _, skuInfo := range value.Skus2 { + for _, skuInfo := range value.Skus { jxSkuPriceMapData[skuInfo.SkuID] = skuInfo.BindPrice } } @@ -148,10 +148,10 @@ func GetStoreSkuSalesInfo(ctx *jxcontext.Context, storeID int) (outStoreSkuSales skuAndNameInfo := skuAndNameMapData[skuID] if storeSkuInfo != nil { skuName := storeSkuInfo.SkuName - skuInfo := storeSkuInfo.Skus2[0] + skuInfo := storeSkuInfo.Skus[0] storeSkuSales.SkuName = jxutils.ComposeSkuName(skuName.Prefix, skuName.Name, skuInfo.Comment, skuName.Unit, skuInfo.SkuSpecQuality, skuInfo.SkuSpecUnit, 0) storeSkuSales.SkuImage = storeSkuInfo.Img - storeSkuSales.SkuPrice = jxutils.IntPrice2StandardCurrencyString(int64(storeSkuInfo.Skus2[0].BindPrice)) + storeSkuSales.SkuPrice = jxutils.IntPrice2StandardCurrencyString(int64(storeSkuInfo.Skus[0].BindPrice)) } else if skuAndNameInfo != nil { skuNameList, err := dao.GetSkuNames(db, []int{skuAndNameInfo.NameID}) prefix := "" From 1454d08119f0e0021e21f6aaf3bea2972cf84585 Mon Sep 17 00:00:00 2001 From: gazebo Date: Mon, 2 Dec 2019 11:30:09 +0800 Subject: [PATCH 2/7] =?UTF-8?q?generateOrder=E4=B8=AD=E5=A4=84=E7=90=86?= =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E7=9A=84=E6=83=85=E5=86=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/partner/purchase/jx/localjx/order.go | 47 ++++++++++++++++--- 1 file changed, 40 insertions(+), 7 deletions(-) diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go index 7d8527017..374fa86a7 100644 --- a/business/partner/purchase/jx/localjx/order.go +++ b/business/partner/purchase/jx/localjx/order.go @@ -9,6 +9,7 @@ import ( "git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/baseapi/utils/errlist" + "git.rosy.net.cn/jx-callback/business/jxstore/cms" "git.rosy.net.cn/jx-callback/business/jxutils" "git.rosy.net.cn/jx-callback/business/jxutils/jxcontext" "git.rosy.net.cn/jx-callback/business/model" @@ -346,13 +347,26 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 for _, v := range skus { skuIDs = append(skuIDs, v.SkuID) } - storeSkuList, err := dao.GetStoresSkusInfo(db, []int{jxOrder.StoreID}, skuIDs) + + // storeSkuList, err := dao.GetStoresSkusInfo(db, []int{jxOrder.StoreID}, skuIDs) + // if err != nil { + // return nil, nil, err + // } + // storeSkuMap := make(map[int]*model.StoreSkuBind) + // for _, v := range storeSkuList { + // storeSkuMap[v.SkuID] = v + // } + storeSkuInfo, err := cms.GetStoreSkus(ctx, jxOrder.StoreID, skuIDs, true, "", true, false, map[string]interface{}{ + "actVendorID": model.VendorIDJX, + }, 0, model.UnlimitedPageSize) if err != nil { return nil, nil, err } - storeSkuMap := make(map[int]*model.StoreSkuBind) - for _, v := range storeSkuList { - storeSkuMap[v.SkuID] = v + storeSkuMap := make(map[int]*cms.StoreSkuExt) + for _, v1 := range storeSkuInfo.SkuNames { + for _, v2 := range v1.Skus { + storeSkuMap[v2.SkuID] = v2 + } } skuList, err := dao.GetSkus(db, skuIDs, nil, nil, nil) @@ -380,9 +394,28 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 Weight: sku.Weight, Name: jxutils.ComposeSkuName(sku.Prefix, sku.Name, sku.Comment, sku.Unit, sku.SpecQuality, sku.SpecUnit, 0), } - outJxOrder.Skus = append(outJxOrder.Skus, jxSku) - outJxOrder.OrderPrice += int64(v.Count) * jxSku.SalePrice - outJxOrder.Weight = v.Count * jxSku.Weight + if storeSkuBind.ActPrice != 0 && storeSkuBind.ActPrice < storeSkuBind.JxPrice { + jxSku.SalePrice = int64(storeSkuBind.ActPrice) + jxSku.Count = 1 + + outJxOrder.Skus = append(outJxOrder.Skus, jxSku) + outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice + outJxOrder.Weight = jxSku.Count * jxSku.Weight + if v.Count-1 > 0 { + jxSku2 := *jxSku + jxSku.SalePrice = jxSku.Price + jxSku.Count = v.Count - 1 + + jxSku = &jxSku2 + } else { + jxSku = nil + } + } + if jxSku != nil { + outJxOrder.Skus = append(outJxOrder.Skus, jxSku) + outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice + outJxOrder.Weight = jxSku.Count * jxSku.Weight + } } } } From d033383eef0d0b45d36ff634951254dc666731ff Mon Sep 17 00:00:00 2001 From: gazebo Date: Mon, 2 Dec 2019 12:04:11 +0800 Subject: [PATCH 3/7] =?UTF-8?q?OrderPrice=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/partner/purchase/jx/localjx/order.go | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go index 374fa86a7..db5c4c9db 100644 --- a/business/partner/purchase/jx/localjx/order.go +++ b/business/partner/purchase/jx/localjx/order.go @@ -16,6 +16,7 @@ import ( "git.rosy.net.cn/jx-callback/business/model/dao" "git.rosy.net.cn/jx-callback/business/partner" "git.rosy.net.cn/jx-callback/business/partner/delivery" + "git.rosy.net.cn/jx-callback/globals" ) const ( @@ -381,6 +382,7 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 outJxOrder2 := *jxOrder outJxOrder2.Skus = nil outJxOrder2.OrderPrice = 0 + outJxOrder2.Weight = 0 outJxOrder = &outJxOrder2 outJxOrder.StoreName = storeDetail.Name for _, v := range skus { @@ -388,8 +390,8 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 if sku := skuMap[v.SkuID]; sku != nil { jxSku := &JxSkuInfo{ SkuID: v.SkuID, - Count: v.Count, Price: int64(storeSkuBind.JxPrice), + Count: v.Count, SalePrice: int64(storeSkuBind.JxPrice), // todo 考虑活动价 Weight: sku.Weight, Name: jxutils.ComposeSkuName(sku.Prefix, sku.Name, sku.Comment, sku.Unit, sku.SpecQuality, sku.SpecUnit, 0), @@ -400,7 +402,7 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 outJxOrder.Skus = append(outJxOrder.Skus, jxSku) outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice - outJxOrder.Weight = jxSku.Count * jxSku.Weight + outJxOrder.Weight += jxSku.Count * jxSku.Weight if v.Count-1 > 0 { jxSku2 := *jxSku jxSku.SalePrice = jxSku.Price @@ -414,13 +416,13 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 if jxSku != nil { outJxOrder.Skus = append(outJxOrder.Skus, jxSku) outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice - outJxOrder.Weight = jxSku.Count * jxSku.Weight + outJxOrder.Weight += jxSku.Count * jxSku.Weight } } } } sort.Sort(JxSkuInfoList(outJxOrder.Skus)) - + globals.SugarLogger.Debugf("kk:%s", utils.Format4Output(outJxOrder, false)) if outJxOrder.FreightPrice, _, err = delivery.CalculateDeliveryFee(dao.GetDB(), jxOrder.StoreID, "", jxutils.StandardCoordinate2Int(deliveryAddress.Lng), jxutils.StandardCoordinate2Int(deliveryAddress.Lat), model.CoordinateTypeMars, outJxOrder.Weight, checkTime); err == nil { From ab4251e5b9dde448d2a81ce11ce2a9bc130bff17 Mon Sep 17 00:00:00 2001 From: gazebo Date: Mon, 2 Dec 2019 12:04:11 +0800 Subject: [PATCH 4/7] =?UTF-8?q?OrderPrice=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/partner/purchase/jx/localjx/order.go | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go index 374fa86a7..4010ca9d7 100644 --- a/business/partner/purchase/jx/localjx/order.go +++ b/business/partner/purchase/jx/localjx/order.go @@ -16,6 +16,7 @@ import ( "git.rosy.net.cn/jx-callback/business/model/dao" "git.rosy.net.cn/jx-callback/business/partner" "git.rosy.net.cn/jx-callback/business/partner/delivery" + "git.rosy.net.cn/jx-callback/globals" ) const ( @@ -381,6 +382,7 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 outJxOrder2 := *jxOrder outJxOrder2.Skus = nil outJxOrder2.OrderPrice = 0 + outJxOrder2.Weight = 0 outJxOrder = &outJxOrder2 outJxOrder.StoreName = storeDetail.Name for _, v := range skus { @@ -388,8 +390,8 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 if sku := skuMap[v.SkuID]; sku != nil { jxSku := &JxSkuInfo{ SkuID: v.SkuID, - Count: v.Count, Price: int64(storeSkuBind.JxPrice), + Count: v.Count, SalePrice: int64(storeSkuBind.JxPrice), // todo 考虑活动价 Weight: sku.Weight, Name: jxutils.ComposeSkuName(sku.Prefix, sku.Name, sku.Comment, sku.Unit, sku.SpecQuality, sku.SpecUnit, 0), @@ -400,7 +402,8 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 outJxOrder.Skus = append(outJxOrder.Skus, jxSku) outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice - outJxOrder.Weight = jxSku.Count * jxSku.Weight + outJxOrder.Weight += jxSku.Count * jxSku.Weight + globals.SugarLogger.Debugf("kk:%d", int64(jxSku.Count)*jxSku.SalePrice) if v.Count-1 > 0 { jxSku2 := *jxSku jxSku.SalePrice = jxSku.Price @@ -414,13 +417,13 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 if jxSku != nil { outJxOrder.Skus = append(outJxOrder.Skus, jxSku) outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice - outJxOrder.Weight = jxSku.Count * jxSku.Weight + outJxOrder.Weight += jxSku.Count * jxSku.Weight + globals.SugarLogger.Debugf("kk:%d", int64(jxSku.Count)*jxSku.SalePrice) } } } } sort.Sort(JxSkuInfoList(outJxOrder.Skus)) - if outJxOrder.FreightPrice, _, err = delivery.CalculateDeliveryFee(dao.GetDB(), jxOrder.StoreID, "", jxutils.StandardCoordinate2Int(deliveryAddress.Lng), jxutils.StandardCoordinate2Int(deliveryAddress.Lat), model.CoordinateTypeMars, outJxOrder.Weight, checkTime); err == nil { From dc881a2acc22a5e161bb037b3d210b8b2578f915 Mon Sep 17 00:00:00 2001 From: gazebo Date: Mon, 2 Dec 2019 12:16:50 +0800 Subject: [PATCH 5/7] fk --- business/partner/purchase/jx/localjx/order.go | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go index 4010ca9d7..c79014b79 100644 --- a/business/partner/purchase/jx/localjx/order.go +++ b/business/partner/purchase/jx/localjx/order.go @@ -16,7 +16,6 @@ import ( "git.rosy.net.cn/jx-callback/business/model/dao" "git.rosy.net.cn/jx-callback/business/partner" "git.rosy.net.cn/jx-callback/business/partner/delivery" - "git.rosy.net.cn/jx-callback/globals" ) const ( @@ -403,11 +402,10 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 outJxOrder.Skus = append(outJxOrder.Skus, jxSku) outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice outJxOrder.Weight += jxSku.Count * jxSku.Weight - globals.SugarLogger.Debugf("kk:%d", int64(jxSku.Count)*jxSku.SalePrice) if v.Count-1 > 0 { jxSku2 := *jxSku - jxSku.SalePrice = jxSku.Price - jxSku.Count = v.Count - 1 + jxSku2.SalePrice = jxSku.Price + jxSku2.Count = v.Count - 1 jxSku = &jxSku2 } else { @@ -418,7 +416,6 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64 outJxOrder.Skus = append(outJxOrder.Skus, jxSku) outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice outJxOrder.Weight += jxSku.Count * jxSku.Weight - globals.SugarLogger.Debugf("kk:%d", int64(jxSku.Count)*jxSku.SalePrice) } } } From 351551bfe103a0d0be13341c97e5b1457793be41 Mon Sep 17 00:00:00 2001 From: gazebo Date: Mon, 2 Dec 2019 14:23:14 +0800 Subject: [PATCH 6/7] up --- business/model/dao/dao_order.go | 13 ++++++++++--- business/partner/purchase/mtwm/order_afs.go | 4 ++-- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/business/model/dao/dao_order.go b/business/model/dao/dao_order.go index 300156bdc..f42ce044f 100644 --- a/business/model/dao/dao_order.go +++ b/business/model/dao/dao_order.go @@ -923,15 +923,22 @@ func GetMyOrderCountInfo(db *DaoDB, userID string, fromDate, toDate time.Time, s if utils.IsTimeZero(fromDate) { return nil, fmt.Errorf("必须指定开始日期") } - if utils.IsTimeZero(toDate) { - toDate = fromDate + if !utils.IsTimeZero(fromDate) { + fromDate = utils.Time2Date(fromDate) + if utils.IsTimeZero(toDate) { + toDate = fromDate + } + } + if !utils.IsTimeZero(toDate) { + toDate = utils.Time2Date(toDate) + toDate = toDate.Add(24 * time.Hour) } sql := ` SELECT t1.lock_status, t1.status, COUNT(*) count FROM goods_order t1 WHERE t1.user_id = ? AND t1.vendor_id = ? - AND t1.order_created_at >= ? AND t1.order_created_at <= ? + AND t1.order_created_at >= ? AND t1.order_created_at < ? ` sqlParams := []interface{}{ userID, diff --git a/business/partner/purchase/mtwm/order_afs.go b/business/partner/purchase/mtwm/order_afs.go index 78e66fcf9..be41a9301 100644 --- a/business/partner/purchase/mtwm/order_afs.go +++ b/business/partner/purchase/mtwm/order_afs.go @@ -42,9 +42,9 @@ func (c *PurchaseHandler) isAfsMsg(msg *mtwmapi.CallbackMsg) bool { if msg.Cmd == mtwmapi.MsgTypeOrderRefund || msg.Cmd == mtwmapi.MsgTypeOrderPartialRefund { // refundData := msg.Data.(*mtwmapi.CallbackRefundInfo) orderID := utils.Str2Int64(GetOrderIDFromMsg(msg)) - orderInfo, err := api.MtwmAPI.OrderGetOrderDetail2(orderID, false) + status, err := api.MtwmAPI.OrderViewStatus(orderID) if err == nil { - return orderInfo.Status == int(utils.Str2Int64(mtwmapi.OrderStatusFinished)) + return utils.Int2Str(status) == mtwmapi.OrderStatusFinished } globals.SugarLogger.Warnf("mtwm isAfsMsg OrderGetOrderDetail2 orderID:%d failed with error:%v", orderID, err) } From 244c653398593cbb9fd3d3732ae7303f795f0d2b Mon Sep 17 00:00:00 2001 From: gazebo Date: Mon, 2 Dec 2019 15:07:16 +0800 Subject: [PATCH 7/7] =?UTF-8?q?mtwm.AcceptOrRefuseOrder=E4=B8=AD=E5=AE=B9?= =?UTF-8?q?=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/partner/purchase/mtwm/order.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/business/partner/purchase/mtwm/order.go b/business/partner/purchase/mtwm/order.go index 29ca7481b..f55f8be1b 100644 --- a/business/partner/purchase/mtwm/order.go +++ b/business/partner/purchase/mtwm/order.go @@ -428,7 +428,13 @@ func (c *PurchaseHandler) AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptI // err = api.MtwmAPI.OrderReceived(utils.Str2Int64(order.VendorOrderID)) err = api.MtwmAPI.OrderConfirm(utils.Str2Int64(order.VendorOrderID)) if err != nil { - globals.SugarLogger.Warnf("mtwm AcceptOrRefuseOrder orderID:%s failed with err:%v", order.VendorOrderID, err) + if utils.IsErrMatch(err, utils.Int2Str(mtwmapi.ErrCodeOpFailed), []string{ + "订单已经确认过了", + }) { + err = nil + } else { + globals.SugarLogger.Warnf("mtwm AcceptOrRefuseOrder orderID:%s failed with err:%v", order.VendorOrderID, err) + } } } // if err == nil {