From 35914b5faef74edaa7658c50fd5a0eb1d47862f4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Fri, 31 Jul 2020 13:36:02 +0800
Subject: [PATCH 01/62] tocks
---
business/jxstore/cms/store_sku.go | 26 +++++++++++++++++++++++---
1 file changed, 23 insertions(+), 3 deletions(-)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index a510c1f63..757026e3e 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -54,6 +54,8 @@ const (
CopyStoreSkuModeFresh = "fresh" // 全新复制
CopyStoreSkuModeUpdate = "update" // 增量复制
CopyStoreSkuModeUpdatePrice = "updatePrice" // 增量复制价格
+
+ JxDefaultStock = 99999
)
//通用写入Excel
@@ -65,9 +67,9 @@ type ExcelParam struct {
// UpdateStoreSku用,API调用时
type StoreSkuBindSkuInfo struct {
- SkuID int `json:"skuID"`
- IsSale int `json:"isSale,omitempty"` // -1:不可售,0:忽略,1:可售
- Stock int `json:"stock,omitempty"`
+ SkuID int `json:"skuID"`
+ IsSale int `json:"isSale,omitempty"` // -1:不可售,0:忽略,1:可售
+ Stock *int `json:"stock,omitempty"`
// ElmID int64 `json:"elmID,omitempty"`
// EbaiID int64 `json:"ebaiID,omitempty"`
}
@@ -1161,6 +1163,12 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
skuBind.JxPrice = jxutils.CaculatePriceByPricePack(storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage), skuBind.Price)
if tmpStatus := getSkuSaleStatus(inSkuBind, skuBindInfo); tmpStatus != model.StoreSkuBindStatusNA {
skuBind.Status = tmpStatus
+ //关注设置默认库存
+ if tmpStatus == model.StoreSkuBindStatusNormal {
+ skuBind.Stock = JxDefaultStock
+ } else {
+ skuBind.Stock = 0
+ }
}
if globals.IsAddEvent {
err = AddEventDetail(db, ctx, model.OperateAdd, v.RealSkuID, model.ThingTypeSku, storeID, "", utils.Int2Str(skuBind.UnitPrice))
@@ -1241,7 +1249,19 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
}
skuBind.Status = tmpStatus
setStoreSkuBindStatus(skuBind, model.SyncFlagSaleMask)
+ if inSkuBind.Stock == nil {
+ if tmpStatus == model.StoreSkuBindStatusNormal {
+ skuBind.Stock = JxDefaultStock
+ } else {
+ skuBind.Stock = 0
+ }
+ }
}
+ if inSkuBind.Stock != nil {
+ skuBind.Stock = *inSkuBind.Stock
+ setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
+ }
+
if skuBindInfo.UnitPrice != 0 && isCanChangePrice { // 这里是否需要加此条件限制
price := jxutils.CaculateSkuPrice(unitPrice, v.SpecQuality, v.SpecUnit, v.SkuNameUnit)
jxPrice := jxutils.CaculatePriceByPricePack(storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage), price)
From aace78c4e2b9cb4ca22588b8178e9343868ee412 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Fri, 31 Jul 2020 13:51:59 +0800
Subject: [PATCH 02/62] jdshop
---
business/model/dao/store_sku.go | 3 ++-
business/partner/purchase/jdshop/callback.go | 8 ++++----
2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/business/model/dao/store_sku.go b/business/model/dao/store_sku.go
index ed059cb03..52a689e1d 100644
--- a/business/model/dao/store_sku.go
+++ b/business/model/dao/store_sku.go
@@ -62,6 +62,7 @@ type StoreSkuSyncInfo struct {
Price int64
UnitPrice int64
+ Stock int
// 平台相关的store sku信息
StoreSkuStatus int
@@ -421,7 +422,7 @@ func GetStoreSkus2(db *DaoDB, vendorID, storeID int, skuIDs []int, mustDirty boo
t14.vendor_id, t14.vendor_org_code,
t1.id bind_id, t1.sku_id, t1.price, t1.unit_price, t1.status store_sku_status,
%s vendor_sku_id, t1.%s_sync_status sku_sync_status, t1.%s_price vendor_price, t1.%s_lock_time lock_time,
- t1.store_id, t1.deleted_at bind_deleted_at,t1.status_sale_begin,t1.status_sale_end, t1.jds_ware_id,
+ t1.store_id, t1.deleted_at bind_deleted_at,t1.status_sale_begin,t1.status_sale_end, t1.jds_ware_id, t1.stock,
t2.*,
t3.id name_id, t3.prefix, t3.name, t3.unit, t3.upc, t3.status name_status, t3.category_id name_category_id, t3.yb_name_suffix,
t3.jds_stock_switch, t3.preparation_time, t3.img_watermark, t3.ex_vendor_id, t3.img img_origin,
diff --git a/business/partner/purchase/jdshop/callback.go b/business/partner/purchase/jdshop/callback.go
index e43544522..0ff5b9daa 100644
--- a/business/partner/purchase/jdshop/callback.go
+++ b/business/partner/purchase/jdshop/callback.go
@@ -29,13 +29,13 @@ func OnCallbackMsg(msg *jdshopapi.CallBackResult) (err error) {
msgType := msg.MsgType
switch msgType {
case jcqapi.TopicOrderPay:
- jxutils.CallMsgHandler(func() {
+ utils.CallFuncAsync(func() {
SaveJdsOrders(msg)
- }, jxutils.ComposeUniversalOrderID(msg.OrderID, model.VendorIDJDShop))
+ })
case jcqapi.TopicOrderCancel:
- jxutils.CallMsgHandler(func() {
+ utils.CallFuncAsync(func() {
CurPurchaseHandler.CancelOrder(jxcontext.AdminCtx, getRealOrderID(msg.OrderID), "系统取消")
- }, jxutils.ComposeUniversalOrderID(msg.OrderID, model.VendorIDJDShop))
+ })
default:
return fmt.Errorf("暂不支持的topic类型!topic: %v", msgType)
}
From ddee8dd2f0779082ce79cd28ce2d2a0d28ba7f71 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Mon, 3 Aug 2020 11:53:10 +0800
Subject: [PATCH 03/62] test1
---
business/jxstore/cms/store_sku.go | 1 +
1 file changed, 1 insertion(+)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index 757026e3e..805283309 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -1317,6 +1317,7 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
updateFieldMap["AutoSaleAt"] = 1
skuBind.AutoSaleAt = utils.DefaultTimeValue
}
+ fmt.Println("testupdates", utils.Format4Output(skuBind, false))
if num, err = dao.UpdateEntity(db, skuBind /*, utils.Map2KeySlice(updateFieldMap)...*/); err != nil {
dao.Rollback(db)
return nil, err
From 75993021adf37abec61e690a1596fe90156eb921 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Mon, 3 Aug 2020 15:41:38 +0800
Subject: [PATCH 04/62] store banner
---
business/model/store.go | 1 +
1 file changed, 1 insertion(+)
diff --git a/business/model/store.go b/business/model/store.go
index 059396263..75fa9f946 100644
--- a/business/model/store.go
+++ b/business/model/store.go
@@ -351,6 +351,7 @@ type Store struct {
PromoteInfo string `orm:"size(255)" json:"promoteInfo"` //门店公告(所有平台统一的公告)
IsBoughtMatter int `json:"isBoughtMatter"` //这周是否申请过物料
SoundPercentage int `json:"soundPercentage"` //打印机声音大小比例
+ Banner string `orm:"size(99999)" json:"banner"` //门店商城bannar图
}
func (*Store) TableUnique() [][]string {
From f014e1b1df6576611394a3023f5e90e78674c500 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Mon, 3 Aug 2020 15:52:17 +0800
Subject: [PATCH 05/62] store banner
---
business/model/store.go | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/business/model/store.go b/business/model/store.go
index 75fa9f946..fd89ff1e4 100644
--- a/business/model/store.go
+++ b/business/model/store.go
@@ -351,7 +351,7 @@ type Store struct {
PromoteInfo string `orm:"size(255)" json:"promoteInfo"` //门店公告(所有平台统一的公告)
IsBoughtMatter int `json:"isBoughtMatter"` //这周是否申请过物料
SoundPercentage int `json:"soundPercentage"` //打印机声音大小比例
- Banner string `orm:"size(99999)" json:"banner"` //门店商城bannar图
+ Banner string `orm:"size(9999)" json:"banner"` //门店商城bannar图
}
func (*Store) TableUnique() [][]string {
From 062e54d7a9b138051ce866dcbe37acdcf949ff8e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Mon, 3 Aug 2020 16:20:11 +0800
Subject: [PATCH 06/62] =?UTF-8?q?=E5=BA=93=E5=AD=98=E4=BF=AE=E6=94=B9=20?=
=?UTF-8?q?=E6=B5=8B=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/store_sku.go | 2 ++
1 file changed, 2 insertions(+)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index 805283309..31cc65d5d 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -1257,10 +1257,12 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
}
}
}
+ fmt.Println("test1", utils.Format4Output(inSkuBind, false))
if inSkuBind.Stock != nil {
skuBind.Stock = *inSkuBind.Stock
setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
}
+ fmt.Println("test12", utils.Format4Output(skuBind, false))
if skuBindInfo.UnitPrice != 0 && isCanChangePrice { // 这里是否需要加此条件限制
price := jxutils.CaculateSkuPrice(unitPrice, v.SpecQuality, v.SpecUnit, v.SkuNameUnit)
From e2fe8d6b08a9ddc0510775412838c8f61ab10202 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Mon, 3 Aug 2020 16:25:32 +0800
Subject: [PATCH 07/62] =?UTF-8?q?=E5=BA=93=E5=AD=98=E4=BF=AE=E6=94=B9=20?=
=?UTF-8?q?=E6=B5=8B=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/store_sku.go | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index 31cc65d5d..3b135aae1 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -1257,13 +1257,11 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
}
}
}
- fmt.Println("test1", utils.Format4Output(inSkuBind, false))
if inSkuBind.Stock != nil {
+ updateFieldMap["Stock"] = 1
skuBind.Stock = *inSkuBind.Stock
setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
}
- fmt.Println("test12", utils.Format4Output(skuBind, false))
-
if skuBindInfo.UnitPrice != 0 && isCanChangePrice { // 这里是否需要加此条件限制
price := jxutils.CaculateSkuPrice(unitPrice, v.SpecQuality, v.SpecUnit, v.SkuNameUnit)
jxPrice := jxutils.CaculatePriceByPricePack(storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage), price)
From 6945edecbc8ade01cba8911b9de083481b5ce62b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Mon, 3 Aug 2020 17:02:37 +0800
Subject: [PATCH 08/62] =?UTF-8?q?=E5=BA=93=E5=AD=98=E4=BF=AE=E6=94=B9=20?=
=?UTF-8?q?=E6=B5=8B=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/store_sku.go | 17 ++++++++---------
business/jxstore/cms/sync_store_sku.go | 7 ++++---
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index 3b135aae1..7e0cbe53d 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -54,8 +54,6 @@ const (
CopyStoreSkuModeFresh = "fresh" // 全新复制
CopyStoreSkuModeUpdate = "update" // 增量复制
CopyStoreSkuModeUpdatePrice = "updatePrice" // 增量复制价格
-
- JxDefaultStock = 99999
)
//通用写入Excel
@@ -1165,7 +1163,7 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
skuBind.Status = tmpStatus
//关注设置默认库存
if tmpStatus == model.StoreSkuBindStatusNormal {
- skuBind.Stock = JxDefaultStock
+ skuBind.Stock = model.MaxStoreSkuStockQty
} else {
skuBind.Stock = 0
}
@@ -1243,25 +1241,26 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
// updateFieldMap["UnitPrice"] = 1
// updateFieldMap["Price"] = 1
}
+ if inSkuBind.Stock != nil {
+ updateFieldMap["Stock"] = 1
+ skuBind.Stock = *inSkuBind.Stock
+ setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
+ }
if tmpStatus := getSkuSaleStatus(inSkuBind, skuBindInfo); tmpStatus != model.StoreSkuBindStatusNA {
if tmpStatus != skuBind.Status {
updateFieldMap[model.FieldStatus] = 1
}
skuBind.Status = tmpStatus
setStoreSkuBindStatus(skuBind, model.SyncFlagSaleMask)
+ setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
if inSkuBind.Stock == nil {
if tmpStatus == model.StoreSkuBindStatusNormal {
- skuBind.Stock = JxDefaultStock
+ skuBind.Stock = model.MaxStoreSkuStockQty
} else {
skuBind.Stock = 0
}
}
}
- if inSkuBind.Stock != nil {
- updateFieldMap["Stock"] = 1
- skuBind.Stock = *inSkuBind.Stock
- setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
- }
if skuBindInfo.UnitPrice != 0 && isCanChangePrice { // 这里是否需要加此条件限制
price := jxutils.CaculateSkuPrice(unitPrice, v.SpecQuality, v.SpecUnit, v.SkuNameUnit)
jxPrice := jxutils.CaculatePriceByPricePack(storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage), price)
diff --git a/business/jxstore/cms/sync_store_sku.go b/business/jxstore/cms/sync_store_sku.go
index 4469debb5..fb66c0a57 100644
--- a/business/jxstore/cms/sync_store_sku.go
+++ b/business/jxstore/cms/sync_store_sku.go
@@ -253,10 +253,11 @@ func storeSkuSyncInfo2Bare(inSku *dao.StoreSkuSyncInfo) (outSku *partner.StoreSk
VendorSkuID2: utils.Int64ToStr(inSku.JdsWareID),
JdsStockSwitch: inSku.JdsStockSwitch,
IsDeletedBySku: inSku.IsDeletedBySku,
+ Stock: inSku.Stock,
}
- if !isStoreSkuSyncNeedDelete(inSku) {
- outSku.Stock = model.MaxStoreSkuStockQty
- }
+ // if !isStoreSkuSyncNeedDelete(inSku) {
+ // outSku.Stock = model.MaxStoreSkuStockQty
+ // }
return outSku
}
From df62da5bcbb4c3436ec449eca30d0c9e2ac593fe Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Mon, 3 Aug 2020 17:07:47 +0800
Subject: [PATCH 09/62] =?UTF-8?q?=E5=BA=93=E5=AD=98=E4=BF=AE=E6=94=B9=20?=
=?UTF-8?q?=E6=B5=8B=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/store_sku.go | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index 7e0cbe53d..679b9996d 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -1253,13 +1253,13 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
skuBind.Status = tmpStatus
setStoreSkuBindStatus(skuBind, model.SyncFlagSaleMask)
setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
- if inSkuBind.Stock == nil {
- if tmpStatus == model.StoreSkuBindStatusNormal {
- skuBind.Stock = model.MaxStoreSkuStockQty
- } else {
- skuBind.Stock = 0
- }
+ // if inSkuBind.Stock == nil {
+ if tmpStatus == model.StoreSkuBindStatusNormal {
+ skuBind.Stock = model.MaxStoreSkuStockQty
+ } else {
+ skuBind.Stock = 0
}
+ // }
}
if skuBindInfo.UnitPrice != 0 && isCanChangePrice { // 这里是否需要加此条件限制
price := jxutils.CaculateSkuPrice(unitPrice, v.SpecQuality, v.SpecUnit, v.SkuNameUnit)
From 33108872a6423fc22b36f47c7b2fa2010275de3b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Mon, 3 Aug 2020 17:08:31 +0800
Subject: [PATCH 10/62] =?UTF-8?q?=E5=BA=93=E5=AD=98=E4=BF=AE=E6=94=B9=20?=
=?UTF-8?q?=E6=B5=8B=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/store_sku.go | 1 +
1 file changed, 1 insertion(+)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index 679b9996d..0a4658cab 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -1259,6 +1259,7 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
} else {
skuBind.Stock = 0
}
+
// }
}
if skuBindInfo.UnitPrice != 0 && isCanChangePrice { // 这里是否需要加此条件限制
From ccaa453d5f79d96f35e4092bb4d4883089f51eab Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Mon, 3 Aug 2020 17:12:37 +0800
Subject: [PATCH 11/62] =?UTF-8?q?=E5=BA=93=E5=AD=98=E4=BF=AE=E6=94=B9=20?=
=?UTF-8?q?=E6=B5=8B=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/store_sku.go | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index 0a4658cab..b72e57508 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -67,7 +67,7 @@ type ExcelParam struct {
type StoreSkuBindSkuInfo struct {
SkuID int `json:"skuID"`
IsSale int `json:"isSale,omitempty"` // -1:不可售,0:忽略,1:可售
- Stock *int `json:"stock,omitempty"`
+ Stock *int `json:"stock"`
// ElmID int64 `json:"elmID,omitempty"`
// EbaiID int64 `json:"ebaiID,omitempty"`
}
From 292f9dc7a3b67adbf1d9f236779b3d4d60bd8afd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Mon, 3 Aug 2020 17:16:38 +0800
Subject: [PATCH 12/62] =?UTF-8?q?=E5=BA=93=E5=AD=98=E4=BF=AE=E6=94=B9=20?=
=?UTF-8?q?=E6=B5=8B=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/store_sku.go | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index b72e57508..507a59659 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -1241,10 +1241,12 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
// updateFieldMap["UnitPrice"] = 1
// updateFieldMap["Price"] = 1
}
- if inSkuBind.Stock != nil {
- updateFieldMap["Stock"] = 1
- skuBind.Stock = *inSkuBind.Stock
- setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
+ if inSkuBind != nil {
+ if inSkuBind.Stock != nil {
+ updateFieldMap["Stock"] = 1
+ skuBind.Stock = *inSkuBind.Stock
+ setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
+ }
}
if tmpStatus := getSkuSaleStatus(inSkuBind, skuBindInfo); tmpStatus != model.StoreSkuBindStatusNA {
if tmpStatus != skuBind.Status {
From 6369046add82b2903f09394e0001495bb34abb58 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Mon, 3 Aug 2020 18:24:19 +0800
Subject: [PATCH 13/62] =?UTF-8?q?=E7=BE=8E=E5=9B=A2=E6=B5=8B=E8=AF=95?=
=?UTF-8?q?=E5=BA=93=E5=AD=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/sync_store_sku.go | 15 +++++++++++----
business/model/model.go | 4 ++++
2 files changed, 15 insertions(+), 4 deletions(-)
diff --git a/business/jxstore/cms/sync_store_sku.go b/business/jxstore/cms/sync_store_sku.go
index fb66c0a57..b27914cb2 100644
--- a/business/jxstore/cms/sync_store_sku.go
+++ b/business/jxstore/cms/sync_store_sku.go
@@ -481,6 +481,7 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, causeFlag
if !dao.IsVendorThingIDEmpty(sku.VendorSkuID) {
bareSku = storeSkuSyncInfo2Bare(sku)
if singleStoreHandler == nil {
+ bareSku.Stock = 0
stockList = append(stockList, bareSku)
} else {
deleteList = append(deleteList, bareSku)
@@ -556,15 +557,21 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, causeFlag
}
if sku.MergedStatus == model.SkuStatusNormal {
onlineList = append(onlineList, bareSku)
- stockList = append(stockList, bareSku)
+ // stockList = append(stockList, bareSku)
} else {
offlineList = append(offlineList, bareSku)
// 因为京东平台以是否有库存表示是否关注,所以不论是否可售,都要设置库存
- if singleStoreHandler == nil {
- stockList = append(stockList, bareSku)
- }
+ // if singleStoreHandler == nil {
+ // stockList = append(stockList, bareSku)
+ // }
}
}
+ if model.IsSyncStatusStock(sku.SkuSyncStatus) {
+ if bareSku == nil {
+ bareSku = storeSkuSyncInfo2Bare(sku)
+ }
+ stockList = append(stockList, bareSku)
+ }
}
isNeedReorder = model.IsSyncStatusSeq(sku.SkuSyncStatus)
}
diff --git a/business/model/model.go b/business/model/model.go
index 6986d1e59..ad4108335 100644
--- a/business/model/model.go
+++ b/business/model/model.go
@@ -117,6 +117,10 @@ func IsSyncStatusPrice(syncStatus int8) bool {
return (syncStatus & SyncFlagPriceMask) != 0
}
+func IsSyncStatusStock(syncStatus int8) bool {
+ return (syncStatus & SyncFlagStockMask) != 0
+}
+
func IsSyncStatusSeq(syncStatus int8) bool {
return (syncStatus & SyncFlagSeqMask) != 0
}
From a60f5b6172f2c47f337faa491d19750d500677f6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Tue, 4 Aug 2020 09:23:15 +0800
Subject: [PATCH 14/62] =?UTF-8?q?=E7=BE=8E=E5=9B=A2=E5=BA=93=E5=AD=98?=
=?UTF-8?q?=E6=B5=8B=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/store_sku.go | 1 -
business/jxstore/cms/sync_store_sku.go | 1 +
2 files changed, 1 insertion(+), 1 deletion(-)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index 507a59659..1da32c89d 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -1319,7 +1319,6 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
updateFieldMap["AutoSaleAt"] = 1
skuBind.AutoSaleAt = utils.DefaultTimeValue
}
- fmt.Println("testupdates", utils.Format4Output(skuBind, false))
if num, err = dao.UpdateEntity(db, skuBind /*, utils.Map2KeySlice(updateFieldMap)...*/); err != nil {
dao.Rollback(db)
return nil, err
diff --git a/business/jxstore/cms/sync_store_sku.go b/business/jxstore/cms/sync_store_sku.go
index b27914cb2..4a9cbe74b 100644
--- a/business/jxstore/cms/sync_store_sku.go
+++ b/business/jxstore/cms/sync_store_sku.go
@@ -567,6 +567,7 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, causeFlag
}
}
if model.IsSyncStatusStock(sku.SkuSyncStatus) {
+ fmt.Println("tes1111111111111111111111111111111111111111111")
if bareSku == nil {
bareSku = storeSkuSyncInfo2Bare(sku)
}
From f8904b16ab608147afc2e93bf670da6acd2c95e8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Tue, 4 Aug 2020 10:02:45 +0800
Subject: [PATCH 15/62] =?UTF-8?q?=E7=BE=8E=E5=9B=A2=E5=BA=93=E5=AD=98?=
=?UTF-8?q?=E6=B5=8B=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/sync_store_sku.go | 1 -
business/partner/purchase/mtwm/store_sku2.go | 2 ++
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/business/jxstore/cms/sync_store_sku.go b/business/jxstore/cms/sync_store_sku.go
index 4a9cbe74b..b27914cb2 100644
--- a/business/jxstore/cms/sync_store_sku.go
+++ b/business/jxstore/cms/sync_store_sku.go
@@ -567,7 +567,6 @@ func syncStoreSkuNew(ctx *jxcontext.Context, parentTask tasksch.ITask, causeFlag
}
}
if model.IsSyncStatusStock(sku.SkuSyncStatus) {
- fmt.Println("tes1111111111111111111111111111111111111111111")
if bareSku == nil {
bareSku = storeSkuSyncInfo2Bare(sku)
}
diff --git a/business/partner/purchase/mtwm/store_sku2.go b/business/partner/purchase/mtwm/store_sku2.go
index 346a2de66..ef26f4240 100644
--- a/business/partner/purchase/mtwm/store_sku2.go
+++ b/business/partner/purchase/mtwm/store_sku2.go
@@ -2,6 +2,7 @@ package mtwm
import (
"encoding/json"
+ "fmt"
"regexp"
"strings"
@@ -461,6 +462,7 @@ func (p *PurchaseHandler) UpdateStoreSkusPrice(ctx *jxcontext.Context, vendorOrg
func (p *PurchaseHandler) UpdateStoreSkusStock(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, storeSkuList []*partner.StoreSkuInfo) (failedList []*partner.StoreSkuInfoWithErr, err error) {
stockList := storeSku2Mtwm(storeSkuList, updateTypeStock)
if globals.EnableMtwmStoreWrite {
+ fmt.Println("test22222222222222222222222222222222222222")
failedFoodList, err2 := api.MtwmAPI.RetailSkuStock(ctx.GetTrackInfo(), vendorStoreID, stockList)
if err = err2; err == nil {
if len(failedFoodList) > 0 {
From c15fa3c479c3e084b5a87de5a3b871e1f12cf223 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Tue, 4 Aug 2020 10:09:10 +0800
Subject: [PATCH 16/62] =?UTF-8?q?=E5=BA=93=E5=AD=98=E5=A5=BD=E5=83=8F?=
=?UTF-8?q?=E5=8F=AF=E4=BB=A5=E4=BA=86?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/partner/purchase/mtwm/store_sku2.go | 2 --
1 file changed, 2 deletions(-)
diff --git a/business/partner/purchase/mtwm/store_sku2.go b/business/partner/purchase/mtwm/store_sku2.go
index ef26f4240..346a2de66 100644
--- a/business/partner/purchase/mtwm/store_sku2.go
+++ b/business/partner/purchase/mtwm/store_sku2.go
@@ -2,7 +2,6 @@ package mtwm
import (
"encoding/json"
- "fmt"
"regexp"
"strings"
@@ -462,7 +461,6 @@ func (p *PurchaseHandler) UpdateStoreSkusPrice(ctx *jxcontext.Context, vendorOrg
func (p *PurchaseHandler) UpdateStoreSkusStock(ctx *jxcontext.Context, vendorOrgCode string, storeID int, vendorStoreID string, storeSkuList []*partner.StoreSkuInfo) (failedList []*partner.StoreSkuInfoWithErr, err error) {
stockList := storeSku2Mtwm(storeSkuList, updateTypeStock)
if globals.EnableMtwmStoreWrite {
- fmt.Println("test22222222222222222222222222222222222222")
failedFoodList, err2 := api.MtwmAPI.RetailSkuStock(ctx.GetTrackInfo(), vendorStoreID, stockList)
if err = err2; err == nil {
if len(failedFoodList) > 0 {
From 1b3c1fdd6a8aed78f87b91e752f0b2090753cd63 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Tue, 4 Aug 2020 11:02:52 +0800
Subject: [PATCH 17/62] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=BA=93=E5=AD=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxcallback/orderman/order.go | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go
index 7bb29ce3f..fb4790d23 100644
--- a/business/jxcallback/orderman/order.go
+++ b/business/jxcallback/orderman/order.go
@@ -311,6 +311,10 @@ func (c *OrderManager) SaveOrder(order *model.GoodsOrder, isAdjust bool, db *dao
baseapi.SugarLogger.Infof("saveOrder duplicated orderid:%s msg received", order.VendorOrderID)
}
}
+ //修改商品库存
+ if err == nil {
+ err = modifySkusStock(order, true)
+ }
} else {
globals.SugarLogger.Warnf("saveOrder create order:%v, error:%v", order, err)
}
@@ -320,6 +324,10 @@ func (c *OrderManager) SaveOrder(order *model.GoodsOrder, isAdjust bool, db *dao
return isDuplicated, err
}
+func modifySkusStock(order *model.GoodsOrder, isAdd bool) (err error) {
+ return err
+}
+
func filterOrderInfo(order *model.GoodsOrder) {
order.ConsigneeName = utils.LimitUTF8StringLen2(order.ConsigneeName, 32)
order.ConsigneeAddress = utils.LimitUTF8StringLen2(order.ConsigneeAddress, 255)
From 42b1c9ac17f060f3e2b3aefbc92cbbb2b33e5803 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 5 Aug 2020 10:03:10 +0800
Subject: [PATCH 18/62] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E4=BF=AE=E6=94=B9?=
=?UTF-8?q?=E5=BA=93=E5=AD=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxcallback/orderman/order.go | 21 +++++++++++++++++++--
business/jxstore/cms/store_sku.go | 2 ++
2 files changed, 21 insertions(+), 2 deletions(-)
diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go
index fb4790d23..01573b88e 100644
--- a/business/jxcallback/orderman/order.go
+++ b/business/jxcallback/orderman/order.go
@@ -313,7 +313,7 @@ func (c *OrderManager) SaveOrder(order *model.GoodsOrder, isAdjust bool, db *dao
}
//修改商品库存
if err == nil {
- err = modifySkusStock(order, true)
+ err = modifyOrderSkusStock(db, order, false)
}
} else {
globals.SugarLogger.Warnf("saveOrder create order:%v, error:%v", order, err)
@@ -324,7 +324,24 @@ func (c *OrderManager) SaveOrder(order *model.GoodsOrder, isAdjust bool, db *dao
return isDuplicated, err
}
-func modifySkusStock(order *model.GoodsOrder, isAdd bool) (err error) {
+func modifyOrderSkusStock(db *dao.DaoDB, order *model.GoodsOrder, isAdd bool) (err error) {
+ skus := order.Skus
+ for _, sku := range skus {
+ storeSkus, _ := dao.GetStoresSkusInfo(db, []int{jxutils.GetSaleStoreIDFromOrder(order)}, []int{sku.SkuID})
+ if len(storeSkus) == 0 {
+ globals.SugarLogger.Warnf("此订单商品没得storsku,%v,%v", order.VendorOrderID, sku.SkuID)
+ continue
+ }
+ storeSku, stock := storeSkus[0], 0
+ if isAdd {
+ stock = storeSku.Stock + 1
+ } else {
+ stock = storeSku.Stock - 1
+ }
+ storeSku.Stock = stock
+ dao.UpdateEntity(db, storeSku, "Stock")
+ dao.SetStoreSkuSyncStatus(db, order.VendorID, []int{}, []int{}, model.SyncFlagStockMask)
+ }
return err
}
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index 1da32c89d..623ed0be7 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -4789,3 +4789,5 @@ func StoreSkuPriceAudit(ctx *jxcontext.Context, storeSkuAudits []*model.StoreSku
}
return nil, hint, err
}
+
+
From f03450b1b089b1328c6d1bf585dcfc9aa722c2ed Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 5 Aug 2020 14:47:24 +0800
Subject: [PATCH 19/62] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E4=BF=AE=E6=94=B9?=
=?UTF-8?q?=E5=BA=93=E5=AD=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxcallback/orderman/order.go | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go
index 01573b88e..bd86fc91a 100644
--- a/business/jxcallback/orderman/order.go
+++ b/business/jxcallback/orderman/order.go
@@ -333,6 +333,10 @@ func modifyOrderSkusStock(db *dao.DaoDB, order *model.GoodsOrder, isAdd bool) (e
continue
}
storeSku, stock := storeSkus[0], 0
+ if storeSku.Stock == 0 {
+ globals.SugarLogger.Warnf("此订单商品库存为0,%v,%v", order.VendorOrderID, sku.SkuID)
+ continue
+ }
if isAdd {
stock = storeSku.Stock + 1
} else {
From ae9aa8bef2b75cd48259e13f43a905505ca1cacf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 5 Aug 2020 15:20:46 +0800
Subject: [PATCH 20/62] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E5=8F=96=E6=B6=88?=
=?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=BA=93=E5=AD=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxcallback/orderman/order.go | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go
index bd86fc91a..383e76223 100644
--- a/business/jxcallback/orderman/order.go
+++ b/business/jxcallback/orderman/order.go
@@ -195,6 +195,11 @@ func (c *OrderManager) OnOrderStatusChanged(vendorOrgCode string, orderStatus *m
}
}
}
+ } else if orderStatus.Status == model.OrderStatusCanceled {
+ //如果取消订单则要把库存加回去
+ if order, err2 := c.LoadOrder(orderStatus.VendorOrderID, orderStatus.VendorID); err2 == nil {
+ ModifyOrderSkusStock(db, order, true)
+ }
}
if !isDuplicated {
if order != nil {
@@ -313,7 +318,7 @@ func (c *OrderManager) SaveOrder(order *model.GoodsOrder, isAdjust bool, db *dao
}
//修改商品库存
if err == nil {
- err = modifyOrderSkusStock(db, order, false)
+ err = ModifyOrderSkusStock(db, order, false)
}
} else {
globals.SugarLogger.Warnf("saveOrder create order:%v, error:%v", order, err)
@@ -324,7 +329,7 @@ func (c *OrderManager) SaveOrder(order *model.GoodsOrder, isAdjust bool, db *dao
return isDuplicated, err
}
-func modifyOrderSkusStock(db *dao.DaoDB, order *model.GoodsOrder, isAdd bool) (err error) {
+func ModifyOrderSkusStock(db *dao.DaoDB, order *model.GoodsOrder, isAdd bool) (err error) {
skus := order.Skus
for _, sku := range skus {
storeSkus, _ := dao.GetStoresSkusInfo(db, []int{jxutils.GetSaleStoreIDFromOrder(order)}, []int{sku.SkuID})
From 9316a87911f51e4872df8bcd407e33509108102a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Thu, 6 Aug 2020 09:04:01 +0800
Subject: [PATCH 21/62] =?UTF-8?q?=E8=BF=94stock?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/store_sku.go | 4 +---
business/partner/purchase/jx/localjx/order.go | 12 +++++-------
2 files changed, 6 insertions(+), 10 deletions(-)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index 623ed0be7..cbbd1fdb9 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -583,7 +583,7 @@ func GetStoresSkusNew(ctx *jxcontext.Context, storeIDs, skuIDs []int, isFocus, i
t4.jd_sync_status, t4.ebai_sync_status, t4.mtwm_sync_status, t4.yb_sync_status, t4.jds_sync_status,
t4.jd_price, t4.ebai_price, t4.mtwm_price, t4.jx_price, t4.yb_price, t4.jds_price,
t4.jd_lock_time, t4.ebai_lock_time, t4.mtwm_lock_time, t4.jx_lock_time, t4.yb_lock_time, t4.jds_lock_time,
- t4.status_sale_begin, t4.status_sale_end,
+ t4.status_sale_begin, t4.status_sale_end, t4.stock,
t6.mid_unit_price real_mid_unit_price,
t7.unit_price audit_unit_price
` + sql
@@ -4789,5 +4789,3 @@ func StoreSkuPriceAudit(ctx *jxcontext.Context, storeSkuAudits []*model.StoreSku
}
return nil, hint, err
}
-
-
diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go
index 56315d974..74d531b94 100644
--- a/business/partner/purchase/jx/localjx/order.go
+++ b/business/partner/purchase/jx/localjx/order.go
@@ -31,7 +31,6 @@ import (
"git.rosy.net.cn/jx-callback/business/model"
"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"
)
const (
@@ -711,13 +710,12 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
//物料订单的配送费另算,所以排除了免得多算一次
if fromStoreID == 0 {
sort.Sort(JxSkuInfoList(outJxOrder.Skus))
- outJxOrder.FreightPrice, _, err = delivery.CalculateDeliveryFee(dao.GetDB(), jxOrder.StoreID, "",
- jxutils.StandardCoordinate2Int(deliveryAddress.Lng), jxutils.StandardCoordinate2Int(deliveryAddress.Lat),
- model.CoordinateTypeMars, outJxOrder.Weight, checkTime)
+ // outJxOrder.FreightPrice, _, err = delivery.CalculateDeliveryFee(dao.GetDB(), jxOrder.StoreID, "",
+ // jxutils.StandardCoordinate2Int(deliveryAddress.Lng), jxutils.StandardCoordinate2Int(deliveryAddress.Lat),
+ // model.CoordinateTypeMars, outJxOrder.Weight, checkTime)
+ //TODO 2020-08-06 配送费固定5元
+ outJxOrder.FreightPrice = 500
}
- // if jxOrder.StoreID == specialStoreID {
- // outJxOrder.FreightPrice = 0
- // }
} else {
outJxOrder.FreightPrice = 0
}
From 1f765c11ec5bd87cb320592908f58db459562e88 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Thu, 6 Aug 2020 09:14:53 +0800
Subject: [PATCH 22/62] stock
---
business/model/dao/store_sku.go | 1 +
1 file changed, 1 insertion(+)
diff --git a/business/model/dao/store_sku.go b/business/model/dao/store_sku.go
index 52a689e1d..b7b766b01 100644
--- a/business/model/dao/store_sku.go
+++ b/business/model/dao/store_sku.go
@@ -213,6 +213,7 @@ type StoreSkuExt struct {
SkuSpecUnit string `orm:"size(8)" json:"specUnit"` // 质量或容量
Weight int `json:"weight"` // 重量/质量,单位为克,当相应的SkuName的SpecUnit为g或kg时,必须等于SpecQuality
SkuStatus int `json:"status"`
+ Stock int `json:"stock"`
BindCreatedAt time.Time `orm:"auto_now_add;type(datetime)" json:"createdAt"`
BindUpdatedAt time.Time `orm:"auto_now;type(datetime)" json:"updatedAt"`
From 16b9d5182aa45cab116aa34cf5da5dbdad388459 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Thu, 6 Aug 2020 10:06:49 +0800
Subject: [PATCH 23/62] =?UTF-8?q?=E5=85=B3=E6=B3=A8=E8=AE=BE=E7=BD=AE?=
=?UTF-8?q?=E5=BA=93=E5=AD=98=EF=BC=8C=E5=8F=AF=E5=94=AE=E8=AE=BE=E7=BD=AE?=
=?UTF-8?q?=E5=BA=93=E5=AD=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/store_sku.go | 33 ++++++++++++++++++++-----------
1 file changed, 21 insertions(+), 12 deletions(-)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index cbbd1fdb9..b51631a48 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -1161,11 +1161,23 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
skuBind.JxPrice = jxutils.CaculatePriceByPricePack(storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage), skuBind.Price)
if tmpStatus := getSkuSaleStatus(inSkuBind, skuBindInfo); tmpStatus != model.StoreSkuBindStatusNA {
skuBind.Status = tmpStatus
- //关注设置默认库存
- if tmpStatus == model.StoreSkuBindStatusNormal {
- skuBind.Stock = model.MaxStoreSkuStockQty
+ if inSkuBind != nil {
+ if inSkuBind.Stock != nil {
+ skuBind.Stock = *inSkuBind.Stock
+ } else {
+ goto setStock
+ }
} else {
- skuBind.Stock = 0
+ goto setStock
+ }
+ setStock:
+ {
+ //关注设置默认库存
+ if tmpStatus == model.StoreSkuBindStatusNormal {
+ skuBind.Stock = model.MaxStoreSkuStockQty
+ } else {
+ skuBind.Stock = 0
+ }
}
}
if globals.IsAddEvent {
@@ -1254,14 +1266,11 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
}
skuBind.Status = tmpStatus
setStoreSkuBindStatus(skuBind, model.SyncFlagSaleMask)
- setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
- // if inSkuBind.Stock == nil {
- if tmpStatus == model.StoreSkuBindStatusNormal {
- skuBind.Stock = model.MaxStoreSkuStockQty
- } else {
- skuBind.Stock = 0
- }
-
+ // setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
+ // if tmpStatus == model.StoreSkuBindStatusNormal {
+ // skuBind.Stock = model.MaxStoreSkuStockQty
+ // } else {
+ // skuBind.Stock = 0
// }
}
if skuBindInfo.UnitPrice != 0 && isCanChangePrice { // 这里是否需要加此条件限制
From ed66efa64a80790ca1568fa704a46a741d839b7a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Thu, 6 Aug 2020 10:29:49 +0800
Subject: [PATCH 24/62] =?UTF-8?q?=E5=BA=93=E5=AD=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/model/dao/store_sku.go | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/business/model/dao/store_sku.go b/business/model/dao/store_sku.go
index b7b766b01..ac8bd13e7 100644
--- a/business/model/dao/store_sku.go
+++ b/business/model/dao/store_sku.go
@@ -1098,7 +1098,8 @@ func GetTopSkusByStoreIDs(db *DaoDB, storeIDs []int) (storeSkuNameExt []*StoreSk
t4.sub_store_id, t4.price bind_price, IF(t4.unit_price IS NOT NULL, t4.unit_price, t1.price) unit_price, t4.status store_sku_status, t4.auto_sale_at,
t4.ebai_id, t4.mtwm_id,
t4.ebai_sync_status, t4.mtwm_sync_status,
- t4.jd_price, t4.ebai_price, t4.mtwm_price, t4.jx_price, a.spec_quality sku_spec_quality, a.spec_unit sku_spec_unit
+ t4.jd_price, t4.ebai_price, t4.mtwm_price, t4.jx_price, t4.stock,
+ a.spec_quality sku_spec_quality, a.spec_unit sku_spec_unit
FROM sku a
JOIN sku_name t1 ON a.name_id = t1.id AND t1.deleted_at = ?
JOIN store_sku_bind t4 ON t4.sku_id = a.id AND t4.deleted_at = ?
From 6af070aad58d8d3be2106dd4fefe2978b4975f3f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Thu, 6 Aug 2020 10:53:38 +0800
Subject: [PATCH 25/62] =?UTF-8?q?=E8=B4=A7=E6=BA=90=E9=97=A8=E5=BA=97?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/model/store.go | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/business/model/store.go b/business/model/store.go
index fd89ff1e4..3e72193cd 100644
--- a/business/model/store.go
+++ b/business/model/store.go
@@ -438,13 +438,13 @@ type StoreMap struct {
JdsStreetCode int `orm:"default(0)" json:"jdsStreetCode"` //京东商城直辖市街道code
JdsStreetName string `orm:"size(32)" json:"jdsStreetName"` //京东商城直辖市街道
- IsOrder int `orm:"default(0)" json:"isOrder"` //是否是下预订单门店
+ IsOrder int `orm:"default(0)" json:"isOrder"` //是否是下预订单门店
+ IsSysCat int `orm:"default(0)" json:"isSysCat"` //是否使用京西分类
+ IsSupplyGoods int `orm:"default(0)" json:"isSupplyGoods"` // 是否是货源门店
YbAppID string `orm:"column(yb_app_id);size(255)" json:"ybAppID"`
YbAppKey string `orm:"size(255)" json:"ybAppKey"`
YbStorePrefix string `orm:"size(255)" json:"ybStorePrefix"`
-
- IsSysCat int `orm:"default(0)" json:"isSysCat"` //是否使用京西分类
}
func (*StoreMap) TableUnique() [][]string {
From 66ddae2162b8bb401ba394e8a8682f8a31d5b9ac Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Thu, 6 Aug 2020 11:43:00 +0800
Subject: [PATCH 26/62] =?UTF-8?q?=E6=96=B0=E8=A1=97=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/common/common.go | 42 +++++++++++++++++++++++++++
controllers/cms_store.go | 14 +++++++++
routers/commentsRouter_controllers.go | 9 ++++++
3 files changed, 65 insertions(+)
diff --git a/business/jxstore/common/common.go b/business/jxstore/common/common.go
index 8e236f12b..072f1bf0b 100644
--- a/business/jxstore/common/common.go
+++ b/business/jxstore/common/common.go
@@ -61,6 +61,48 @@ func (x Store4UserList) Swap(i, j int) {
x[i], x[j] = x[j], x[i]
}
+func GetNearSupplyGoodsStoreByStoreID(ctx *jxcontext.Context, storeID int) (store *model.Store, err error) {
+ var (
+ stores []*model.Store
+ db = dao.GetDB()
+ )
+ stores2, _ := dao.GetStoreList(db, []int{storeID}, nil, nil, nil, "")
+ store2 := stores2[0]
+ sql := `
+ SELECT a.*
+ FROM store a
+ JOIN store_map b ON b.store_id = a.id
+ JOIN store c ON c.city_code = a.city_code AND c.id = ?
+ WHERE a.deleted_at = ?
+ AND b.deleted_at = ?
+ AND b.vendor_id = ?
+ AND b.is_supply_goods = ?
+ AND a.status = ?
+ `
+ sqlParams := []interface{}{
+ storeID,
+ utils.DefaultTimeValue, utils.DefaultTimeValue,
+ model.VendorIDJX, model.YES, model.StoreStatusOpened,
+ }
+ err = dao.GetRows(db, &stores, sql, sqlParams)
+ if len(stores) > 0 {
+ realDistance := float64(0)
+ for _, v := range stores {
+ distance := jxutils.EarthDistance(jxutils.IntCoordinate2Standard(v.Lng), jxutils.IntCoordinate2Standard(v.Lat), jxutils.IntCoordinate2Standard(store2.Lng), jxutils.IntCoordinate2Standard(store2.Lat))
+ if realDistance == 0 {
+ realDistance = distance
+ store = v
+ } else {
+ if realDistance > distance {
+ realDistance = distance
+ store = v
+ }
+ }
+ }
+ }
+ return store, err
+}
+
func GetStoreListByLocation(ctx *jxcontext.Context, lng, lat float64, maxRadius int, needWalkDistance, isJds bool) (storeList []*Store4User, err error) {
const (
maxStoreCount4User = 5
diff --git a/controllers/cms_store.go b/controllers/cms_store.go
index d265ac08f..eb65996a1 100644
--- a/controllers/cms_store.go
+++ b/controllers/cms_store.go
@@ -794,3 +794,17 @@ func (c *StoreController) UpdateStorePricePack() {
return retVal, "", err
})
}
+
+// @Title 根据门店获取距离最近的货源店铺
+// @Description 修根据门店获取距离最近的货源店铺
+// @Param token header string true "认证token"
+// @Param storeID query int true "门店ID"
+// @Success 200 {object} controllers.CallResult
+// @Failure 200 {object} controllers.CallResult
+// @router /GetNearSupplyGoodsStoreByStoreID [get]
+func (c *StoreController) GetNearSupplyGoodsStoreByStoreID() {
+ c.callGetNearSupplyGoodsStoreByStoreID(func(params *tStoreGetNearSupplyGoodsStoreByStoreIDParams) (retVal interface{}, errCode string, err error) {
+ retVal, err = common.GetNearSupplyGoodsStoreByStoreID(params.Ctx, params.StoreID)
+ return retVal, "", err
+ })
+}
diff --git a/routers/commentsRouter_controllers.go b/routers/commentsRouter_controllers.go
index d0f89c7bf..940482211 100644
--- a/routers/commentsRouter_controllers.go
+++ b/routers/commentsRouter_controllers.go
@@ -1746,6 +1746,15 @@ func init() {
Filters: nil,
Params: nil})
+ beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"],
+ beego.ControllerComments{
+ Method: "GetNearSupplyGoodsStoreByStoreID",
+ Router: `/GetNearSupplyGoodsStoreByStoreID`,
+ AllowHTTPMethods: []string{"get"},
+ MethodParams: param.Make(),
+ Filters: nil,
+ Params: nil})
+
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:StoreController"],
beego.ControllerComments{
Method: "GetStoreAlertList",
From 2e8db13fab411b26d334365240a952bcffa7a681 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Thu, 6 Aug 2020 13:40:47 +0800
Subject: [PATCH 27/62] =?UTF-8?q?=E6=96=B0=E8=A1=97=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/common/common.go | 10 ++++++++--
business/model/dao/store.go | 5 +++--
2 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/business/jxstore/common/common.go b/business/jxstore/common/common.go
index 072f1bf0b..d55e80483 100644
--- a/business/jxstore/common/common.go
+++ b/business/jxstore/common/common.go
@@ -1,6 +1,7 @@
package common
import (
+ "fmt"
"sort"
"git.rosy.net.cn/baseapi/platformapi/autonavi"
@@ -66,8 +67,13 @@ func GetNearSupplyGoodsStoreByStoreID(ctx *jxcontext.Context, storeID int) (stor
stores []*model.Store
db = dao.GetDB()
)
- stores2, _ := dao.GetStoreList(db, []int{storeID}, nil, nil, nil, "")
- store2 := stores2[0]
+ store2, _ := dao.GetStoreDetail(db, storeID, model.VendorIDJX)
+ if store2 == nil {
+ return nil, fmt.Errorf("该门店未绑定京西平台!storeID: %v", storeID)
+ }
+ if store2.IsSupplyGoods == model.YES {
+ return nil, fmt.Errorf("该门店已经是货源门店,无法从其他货源门店进货!storeID: %v", storeID)
+ }
sql := `
SELECT a.*
FROM store a
diff --git a/business/model/dao/store.go b/business/model/dao/store.go
index c84025405..b8e7cba27 100644
--- a/business/model/dao/store.go
+++ b/business/model/dao/store.go
@@ -49,8 +49,9 @@ type StoreDetail struct {
OperatorName2 string `json:"operatorName2"`
OperatorName3 string `json:"operatorName3"`
- JdStoreLevel string `json:"jdStoreLevel"` //京东门店等级
- IsOrder int `json:"isOrder"` //是否是下预订单门店
+ JdStoreLevel string `json:"jdStoreLevel"` //京东门店等级
+ IsOrder int `json:"isOrder"` //是否是下预订单门店
+ IsSupplyGoods int `json:"isSupplyGoods"`
YbAppID string `orm:"column(yb_app_id)" json:"ybAppID"`
YbAppKey string `json:"ybAppKey"`
From 64bdf638ffff35d48835b49bdf8a4543dfcd23c9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Thu, 6 Aug 2020 13:52:21 +0800
Subject: [PATCH 28/62] =?UTF-8?q?=E5=88=A4=E6=96=AD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/model/dao/store.go | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/business/model/dao/store.go b/business/model/dao/store.go
index b8e7cba27..25cca2baf 100644
--- a/business/model/dao/store.go
+++ b/business/model/dao/store.go
@@ -100,7 +100,7 @@ func getStoreDetail(db *DaoDB, storeID, vendorID int, vendorStoreID string) (sto
SELECT t1.*,
t2.vendor_store_id, t2.status vendor_status, t2.delivery_fee_deduction_sill, t2.delivery_fee_deduction_fee, t2.sync_status, t2.vendor_org_code,
t2.price_percentage, t2.auto_pickup, t2.delivery_type, t2.delivery_competition, t2.is_sync, t2.vendor_store_name, t2.is_order, t2.yb_app_id, t2.yb_app_key, t2.yb_store_prefix,
- t2.jds_street_code, t2.jds_street_name,
+ t2.jds_street_code, t2.jds_street_name, t2.is_supply_goods,
t3.value price_percentage_pack_str,
t4.value freight_deduction_pack_str,
province.name province_name,
From 29050b028b14379607a2d904e45603f7dfda31d3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Thu, 6 Aug 2020 14:51:06 +0800
Subject: [PATCH 29/62] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=95=86=E5=93=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxcallback/orderman/order.go | 4 ++--
business/jxstore/cms/store_sku.go | 26 +++++++++++++-------------
2 files changed, 15 insertions(+), 15 deletions(-)
diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go
index 383e76223..27d1f8d2a 100644
--- a/business/jxcallback/orderman/order.go
+++ b/business/jxcallback/orderman/order.go
@@ -343,9 +343,9 @@ func ModifyOrderSkusStock(db *dao.DaoDB, order *model.GoodsOrder, isAdd bool) (e
continue
}
if isAdd {
- stock = storeSku.Stock + 1
+ stock = storeSku.Stock + sku.Count
} else {
- stock = storeSku.Stock - 1
+ stock = storeSku.Stock - sku.Count
}
storeSku.Stock = stock
dao.UpdateEntity(db, storeSku, "Stock")
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index b51631a48..3494645cb 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -1253,25 +1253,25 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
// updateFieldMap["UnitPrice"] = 1
// updateFieldMap["Price"] = 1
}
- if inSkuBind != nil {
- if inSkuBind.Stock != nil {
- updateFieldMap["Stock"] = 1
- skuBind.Stock = *inSkuBind.Stock
- setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
- }
- }
if tmpStatus := getSkuSaleStatus(inSkuBind, skuBindInfo); tmpStatus != model.StoreSkuBindStatusNA {
if tmpStatus != skuBind.Status {
updateFieldMap[model.FieldStatus] = 1
}
skuBind.Status = tmpStatus
setStoreSkuBindStatus(skuBind, model.SyncFlagSaleMask)
- // setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
- // if tmpStatus == model.StoreSkuBindStatusNormal {
- // skuBind.Stock = model.MaxStoreSkuStockQty
- // } else {
- // skuBind.Stock = 0
- // }
+ setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
+ if tmpStatus == model.StoreSkuBindStatusNormal {
+ skuBind.Stock = model.MaxStoreSkuStockQty
+ } else {
+ skuBind.Stock = 0
+ }
+ }
+ if inSkuBind != nil {
+ if inSkuBind.Stock != nil {
+ updateFieldMap["Stock"] = 1
+ skuBind.Stock = *inSkuBind.Stock
+ setStoreSkuBindStatus(skuBind, model.SyncFlagStockMask)
+ }
}
if skuBindInfo.UnitPrice != 0 && isCanChangePrice { // 这里是否需要加此条件限制
price := jxutils.CaculateSkuPrice(unitPrice, v.SpecQuality, v.SpecUnit, v.SkuNameUnit)
From aefb66bdf215d332abd3afa2e168f262f68cf227 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Thu, 6 Aug 2020 15:50:59 +0800
Subject: [PATCH 30/62] ordertype
---
business/model/order.go | 1 +
1 file changed, 1 insertion(+)
diff --git a/business/model/order.go b/business/model/order.go
index f2176f548..08b0b0fa2 100644
--- a/business/model/order.go
+++ b/business/model/order.go
@@ -111,6 +111,7 @@ type GoodsOrder struct {
EclpOutID string `orm:"column(eclp_out_id)" json:"eclpOutID"` //物料配送的出库单号
AddressID int64 `orm:"column(address_id)" json:"addressID"` //配送地址ID
EarningType int `json:"earningType"` //订单结算方式,2为扣点,1为报价
+ OrderType int `json:"orderType"` //订单类型,0为普通订单,1为物料订单,2为进货订单
// 以下只是用于传递数据
OriginalData string `orm:"-" json:"-"`
From 75662d58f61212f554f77fa2580e5bea4c296711 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Thu, 6 Aug 2020 16:39:50 +0800
Subject: [PATCH 31/62] =?UTF-8?q?=E8=BF=9B=E8=B4=A7=E8=AE=A2=E5=8D=95?=
=?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/model/order.go | 6 ++
business/partner/purchase/jx/localjx/order.go | 82 +++++++++----------
2 files changed, 45 insertions(+), 43 deletions(-)
diff --git a/business/model/order.go b/business/model/order.go
index 08b0b0fa2..c0a4d6b71 100644
--- a/business/model/order.go
+++ b/business/model/order.go
@@ -26,6 +26,12 @@ const (
EarningTypePoints = 2 //扣点模式
)
+const (
+ OrderTypeNormal = 0 //普通订单
+ OrderTypeMatter = 1 //物料订单
+ OrderTypeSupplyGoods = 2 //进货订单
+)
+
var (
PayStatusName = map[int]string{
PayStatusNo: "待支付",
diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go
index 74d531b94..abb7f34fc 100644
--- a/business/partner/purchase/jx/localjx/order.go
+++ b/business/partner/purchase/jx/localjx/order.go
@@ -5,7 +5,6 @@ import (
"fmt"
"math"
"regexp"
- "sort"
"strings"
"time"
@@ -110,6 +109,7 @@ type JxOrderInfo struct {
Weight int `json:"weight"`
FromStoreID int `json:"fromStoreID"`
EarningType int `json:"earningType"`
+ OrderType int `json:"orderType"`
}
type DeliveryTimeItem struct {
@@ -217,7 +217,7 @@ func GetMyOrderCountInfo(ctx *jxcontext.Context, fromDate, toDate time.Time, sta
}
//fromStoreID 为0 表示非物料订单(京西商城订单等)
-//fromStoreID 为 门店ID ,表示是物料订单,fromStoreID表示是哪个门店申请的物料
+//fromStoreID 为 门店ID ,表示是物料订单,fromStoreID表示是哪个门店申请的物料,或者进货方门店
//fromStoreID 为-1 表示也是物料订单,但是不是门店申请,是个人申请的
//fromStoreID 在后面 generateOrder中有用
func CreateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64, createType int, fromStoreID int, IsDeliverySelf bool) (outJxOrder *JxOrderInfo, err error) {
@@ -370,7 +370,7 @@ func OnPayFinished(orderPay *model.OrderPay) (err error) {
order.StatusTime = *orderPay.PayFinishedAt
err = callNewOrder(order)
//如果是物料的订单,直接到拣货完成,配送中的状态
- if order.FromStoreID != 0 {
+ if order.OrderType != model.OrderTypeNormal {
netprinter.PrintOrderByOrder(jxcontext.AdminCtx, order)
PickupGoods(order, false, "jxadmin")
}
@@ -506,10 +506,6 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
return nil, nil, fmt.Errorf("预订单只能预定当天或第二天")
}
}
- // if !isTimeInOpTime(storeDetail.OpenTime1, storeDetail.CloseTime1, storeDetail.OpenTime2, storeDetail.CloseTime2, checkTime) {
- // return nil, nil, fmt.Errorf("门店:%s不在营业时间范围", storeDetail.Name)
- // }
-
outJxOrder2 := *jxOrder
outJxOrder2.Skus = nil
outJxOrder2.OrderPrice = 0
@@ -546,7 +542,7 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
}
skuMap := make(map[int]*model.SkuAndName)
for _, v := range skuList {
- if fromStoreID != 0 {
+ if jxOrder.OrderType == model.OrderTypeMatter {
if v.EclpID == "" {
return nil, nil, fmt.Errorf("此商品物料编码为空,请联系管理员!skuID:[%v]", v.ID)
}
@@ -558,7 +554,7 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
sum int //申请物料的店的最近销量,以下会根据销量计算具体袋子的价格
flag = false //新店袋子拆分当个参数
)
- if fromStoreID != 0 && fromStoreID != -1 {
+ if jxOrder.OrderType == model.OrderTypeMatter && fromStoreID != -1 {
result, _ = orderman.GetMatterStoreOrderCount(nil, fromStoreID)
sum = result.Count
}
@@ -570,7 +566,7 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
}
for _, v := range skus {
if storeSkuBind := storeSkuMap[v.SkuID]; storeSkuBind != nil {
- if fromStoreID != 0 {
+ if jxOrder.OrderType == model.OrderTypeMatter {
result2, _ := api.JdEclpAPI.QueryStock(storeSkuBind.EclpID)
if len(result2) > 0 {
if result2[0].UsableNum < v.Count {
@@ -608,7 +604,7 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
}
}
if jxSku != nil {
- if fromStoreID == 0 || fromStoreID == -1 {
+ if jxOrder.OrderType != model.OrderTypeMatter || (jxOrder.OrderType == model.OrderTypeMatter && fromStoreID == -1) {
outJxOrder.Skus = append(outJxOrder.Skus, jxSku)
outJxOrder.OrderPrice += int64(jxSku.Count) * jxSku.SalePrice
} else { //以下else为物料订单袋子金额和数量处理
@@ -707,15 +703,14 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
}
}
}
- //物料订单的配送费另算,所以排除了免得多算一次
- if fromStoreID == 0 {
- sort.Sort(JxSkuInfoList(outJxOrder.Skus))
- // outJxOrder.FreightPrice, _, err = delivery.CalculateDeliveryFee(dao.GetDB(), jxOrder.StoreID, "",
- // jxutils.StandardCoordinate2Int(deliveryAddress.Lng), jxutils.StandardCoordinate2Int(deliveryAddress.Lat),
- // model.CoordinateTypeMars, outJxOrder.Weight, checkTime)
- //TODO 2020-08-06 配送费固定5元
- outJxOrder.FreightPrice = 500
- }
+ // if fromStoreID == 0 {
+ // sort.Sort(JxSkuInfoList(outJxOrder.Skus))
+ // outJxOrder.FreightPrice, _, err = delivery.CalculateDeliveryFee(dao.GetDB(), jxOrder.StoreID, "",
+ // jxutils.StandardCoordinate2Int(deliveryAddress.Lng), jxutils.StandardCoordinate2Int(deliveryAddress.Lat),
+ // model.CoordinateTypeMars, outJxOrder.Weight, checkTime)
+ //TODO 2020-08-06 配送费固定5元
+ outJxOrder.FreightPrice = 500
+ // }
} else {
outJxOrder.FreightPrice = 0
}
@@ -725,28 +720,24 @@ func generateOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, addressID int64
if err = err2; err != nil {
return nil, nil, fmt.Errorf("fromStoreID有误,[%v]", fromStoreID)
}
+ outJxOrder.FromStoreID = fromStoreID
+ if jxOrder.OrderType == model.OrderTypeMatter {
+ //TODO 修改配送费规则,2020-04-28
+ //3kg 5元,每多1kg加2元
+ //配送费要按分包规则计算
+ if outJxOrder.Weight <= 3000 {
+ outJxOrder.FreightPrice = 500
+ } else if outJxOrder.Weight > 3000 && outJxOrder.Weight <= splitMatterOrderMinWeight {
+ outJxOrder.FreightPrice = utils.Float64TwoInt64(500 + math.Ceil((utils.Int2Float64(outJxOrder.Weight)-3000)/1000)*200)
+ } else {
+ _, freightPrice, _ := tryToSplitMatterOrder(jxOrder)
+ outJxOrder.FreightPrice = freightPrice
+ }
+ }
//要求配送人姓名填门店名
if fromStoreID != -1 {
deliveryAddress.ConsigneeName = storeDetail2.Name
}
- outJxOrder.FromStoreID = fromStoreID
- //TODO 修改配送费规则,2020-04-28
- //3kg 5元,每多1kg加2元
- //配送费要按分包规则计算
- if outJxOrder.Weight <= 3000 {
- outJxOrder.FreightPrice = 500
- } else if outJxOrder.Weight > 3000 && outJxOrder.Weight <= splitMatterOrderMinWeight {
- outJxOrder.FreightPrice = utils.Float64TwoInt64(500 + math.Ceil((utils.Int2Float64(outJxOrder.Weight)-3000)/1000)*200)
- } else {
- _, freightPrice, _ := tryToSplitMatterOrder(jxOrder)
- outJxOrder.FreightPrice = freightPrice
- }
- ///规则为: 配送费用规则。起价5元(含2kg),之后每kg+2元,不足1kg按1kg计算。
- // if outJxOrder.Weight <= 2000 {
- // outJxOrder.FreightPrice = 500
- // } else {
- // outJxOrder.FreightPrice = utils.Float64TwoInt64(500 + math.Ceil((utils.Int2Float64(outJxOrder.Weight)-2000)/1000)*200)
- // }
} else {
if outJxOrder.FreightPrice > specialFreightPrice {
outJxOrder.FreightPrice = specialFreightPrice
@@ -827,6 +818,7 @@ func jxOrder2GoodsOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, deliveryAd
DeliveryType: model.OrderDeliveryTypeStoreSelf,
StatusTime: time.Now(),
EarningType: jxOrder.EarningType,
+ OrderType: jxOrder.OrderType,
}
if userID == "" {
order.UserID = ctx.GetUserID()
@@ -857,10 +849,12 @@ func jxOrder2GoodsOrder(ctx *jxcontext.Context, jxOrder *JxOrderInfo, deliveryAd
order.ActualPayPrice = order.TotalShopMoney
if jxOrder.FromStoreID != 0 {
order.FromStoreID = jxOrder.FromStoreID
- order.WaybillVendorID = model.VendorIDJDWL
order.DeliveryFlag = model.OrderDeliveryFlagMaskScheduleDisabled
- order.ConsigneeAddress = deliveryAddress.Address
order.Flag = 1
+ if jxOrder.OrderType == model.OrderTypeMatter {
+ order.WaybillVendorID = model.VendorIDJDWL
+ order.ConsigneeAddress = deliveryAddress.Address
+ }
}
//如果是自提单就设置
if IsDeliverySelf {
@@ -886,16 +880,17 @@ func AdjustOrder(ctx *jxcontext.Context, order *model.GoodsOrder, removedSkuList
func PickupGoods(order *model.GoodsOrder, isSelfDelivery bool, userName string) (err error) {
err = changeOrderStatus(order.VendorOrderID, model.OrderStatusFinishedPickup, "")
//如果是物料订单则直接进行京东物流的发单,并且状态直接变为配送中
+ //如果是进货的订单,直接变为配送中
err = orderSolutionForWuLiao(order)
return err
}
func orderSolutionForWuLiao(order *model.GoodsOrder) (err error) {
- if order.FromStoreID != 0 {
+ err = changeOrderStatus(order.VendorOrderID, model.OrderStatusDelivering, "")
+ if order.OrderType == model.OrderTypeMatter {
var (
db = dao.GetDB()
)
- err = changeOrderStatus(order.VendorOrderID, model.OrderStatusDelivering, "")
goods, err := dao.QueryOrders(db, order.VendorOrderID, -1, []int{model.VendorIDJX}, -1, utils.ZeroTimeValue, utils.ZeroTimeValue)
if err != nil || len(goods) == 0 {
return err
@@ -1075,7 +1070,7 @@ func CancelOrder(ctx *jxcontext.Context, order *model.GoodsOrder, reason string)
}
func CancelMatterOrder(db *dao.DaoDB, order *model.GoodsOrder, reason string) (err error) {
- if order.FromStoreID != 0 {
+ if order.OrderType == model.OrderTypeMatter {
if order.EclpOutID != "" {
//表示是京西的物料订单的子订单(拆分后的订单)
if len(order.VendorOrderID) == 16 && order.VendorID == model.VendorIDJX {
@@ -1789,5 +1784,6 @@ func buildJxOrderInfo(order *model.GoodsOrder, orderSkus []*model.OrderSku) (jxO
}
jxOrder.Skus = skus
jxOrder.Weight = weight
+ jxOrder.OrderType = model.OrderTypeMatter
return jxOrder
}
From 3e4ef8ecb63a3b78fb2715543fb677ba8c47c09d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Thu, 6 Aug 2020 16:43:42 +0800
Subject: [PATCH 32/62] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E5=BA=93=E5=AD=98?=
=?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxcallback/orderman/order.go | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go
index 27d1f8d2a..fb89eb7bd 100644
--- a/business/jxcallback/orderman/order.go
+++ b/business/jxcallback/orderman/order.go
@@ -346,10 +346,20 @@ func ModifyOrderSkusStock(db *dao.DaoDB, order *model.GoodsOrder, isAdd bool) (e
stock = storeSku.Stock + sku.Count
} else {
stock = storeSku.Stock - sku.Count
+ //如果是进货的订单,进货方门店对应商品要加上这么多库存
+ if order.OrderType == model.OrderTypeSupplyGoods {
+ storeSkus2, _ := dao.GetStoresSkusInfo(db, []int{order.FromStoreID}, []int{sku.SkuID})
+ if len(storeSkus) > 0 {
+ storeSku2 := storeSkus2[0]
+ storeSku2.Stock = storeSku2.Stock + sku.Count
+ dao.UpdateEntity(db, storeSku2, "Stock")
+ dao.SetStoreSkuSyncStatus(db, order.VendorID, []int{order.FromStoreID}, []int{sku.SkuID}, model.SyncFlagStockMask)
+ }
+ }
}
storeSku.Stock = stock
dao.UpdateEntity(db, storeSku, "Stock")
- dao.SetStoreSkuSyncStatus(db, order.VendorID, []int{}, []int{}, model.SyncFlagStockMask)
+ dao.SetStoreSkuSyncStatus(db, order.VendorID, []int{jxutils.GetSaleStoreIDFromOrder(order)}, []int{sku.SkuID}, model.SyncFlagStockMask)
}
return err
}
From b998498ae3421115559debd530e4d684e5caea46 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Thu, 6 Aug 2020 18:20:15 +0800
Subject: [PATCH 33/62] =?UTF-8?q?=E6=96=B0=E6=8E=A5=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/model/dao/dao_order.go | 7 +++++++
business/partner/purchase/jx/localjx/order.go | 8 ++++++++
controllers/jx_order2.go | 17 +++++++++++++++++
routers/commentsRouter_controllers.go | 9 +++++++++
4 files changed, 41 insertions(+)
diff --git a/business/model/dao/dao_order.go b/business/model/dao/dao_order.go
index b85b302af..30921e28e 100644
--- a/business/model/dao/dao_order.go
+++ b/business/model/dao/dao_order.go
@@ -1345,3 +1345,10 @@ func GetAfsOrdersByPage(db *DaoDB, vendorOrderID, afsOrderID, userID string, fro
}
return afsOrderList, totalCount, err
}
+
+func GetSupplySupportStoreSkus(db *DaoDB, fromDate, toDate time.Time, fromStoreID, storeID int) (storeSkuBind []*model.StoreSkuBind, err error) {
+ // sql := `
+
+ // `
+ return storeSkuBind, err
+}
diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go
index abb7f34fc..bf86f98da 100644
--- a/business/partner/purchase/jx/localjx/order.go
+++ b/business/partner/purchase/jx/localjx/order.go
@@ -1787,3 +1787,11 @@ func buildJxOrderInfo(order *model.GoodsOrder, orderSkus []*model.OrderSku) (jxO
jxOrder.OrderType = model.OrderTypeMatter
return jxOrder
}
+
+func GetSupplySupportStoreSkus(ctx *jxcontext.Context, fromDate, toDate string, fromStoreID, storeID int) (storeSkuBinds []*model.StoreSkuBind, err error) {
+ var (
+ db = dao.GetDB()
+ )
+ storeSkuBinds, err = dao.GetSupplySupportStoreSkus(db, utils.Str2Time(fromDate), utils.Str2Time(toDate), fromStoreID, storeID)
+ return storeSkuBinds, err
+}
diff --git a/controllers/jx_order2.go b/controllers/jx_order2.go
index 707c210c9..082b85541 100644
--- a/controllers/jx_order2.go
+++ b/controllers/jx_order2.go
@@ -222,3 +222,20 @@ func (c *JxOrderController) SendFailedMatterOrder() {
return retVal, "", err
})
}
+
+// @Title 根据时间获取进货辅助工具里的商品,用于加入购物车
+// @Description 根据时间获取进货辅助工具里的商品,用于加入购物车
+// @Param token header string true "认证token"
+// @Param fromDate query string false "开始日期(包含),格式(2006-01-02),如果订单号为空此项必须要求"
+// @Param toDate query string false "结束日期(包含),格式(2006-01-02),如果订单号为空此项必须要求"
+// @Param fromStoreID query int false "进货门店ID"
+// @Param storeID query int false "货源门店ID"
+// @Success 200 {object} controllers.CallResult
+// @Failure 200 {object} controllers.CallResult
+// @router /GetSupplySupportStoreSkus [get]
+func (c *JxOrderController) GetSupplySupportStoreSkus() {
+ c.callGetSupplySupportStoreSkus(func(params *tJxorderGetSupplySupportStoreSkusParams) (retVal interface{}, errCode string, err error) {
+ retVal, err = localjx.GetSupplySupportStoreSkus(params.Ctx, params.FromDate, params.ToDate, params.FromStoreID, params.StoreID)
+ return retVal, "", err
+ })
+}
diff --git a/routers/commentsRouter_controllers.go b/routers/commentsRouter_controllers.go
index 940482211..6015b0255 100644
--- a/routers/commentsRouter_controllers.go
+++ b/routers/commentsRouter_controllers.go
@@ -709,6 +709,15 @@ func init() {
Filters: nil,
Params: nil})
+ beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:JxOrderController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:JxOrderController"],
+ beego.ControllerComments{
+ Method: "GetSupplySupportStoreSkus",
+ Router: `/GetSupplySupportStoreSkus`,
+ AllowHTTPMethods: []string{"get"},
+ MethodParams: param.Make(),
+ Filters: nil,
+ Params: nil})
+
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:JxOrderController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:JxOrderController"],
beego.ControllerComments{
Method: "Pay4Order",
From ed8b123e1f540dacfc706178d4b37588b12dfd4b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Fri, 7 Aug 2020 09:39:39 +0800
Subject: [PATCH 34/62] =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E6=97=B6=E9=97=B4?=
=?UTF-8?q?=EF=BC=8C=E6=97=A5=E6=9C=9F=EF=BC=8C=E6=AF=94=E4=BE=8B=E8=BF=94?=
=?UTF-8?q?=E5=9B=9E=E8=A6=81=E5=8A=A0=E5=85=A5=E8=B4=AD=E7=89=A9=E8=BD=A6?=
=?UTF-8?q?=E7=9A=84=E5=95=86=E5=93=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/model/dao/dao_order.go | 33 ++++++++++++++++---
business/partner/purchase/jx/localjx/order.go | 6 ++--
controllers/jx_order2.go | 3 +-
3 files changed, 33 insertions(+), 9 deletions(-)
diff --git a/business/model/dao/dao_order.go b/business/model/dao/dao_order.go
index 30921e28e..0f1c6e031 100644
--- a/business/model/dao/dao_order.go
+++ b/business/model/dao/dao_order.go
@@ -1346,9 +1346,32 @@ func GetAfsOrdersByPage(db *DaoDB, vendorOrderID, afsOrderID, userID string, fro
return afsOrderList, totalCount, err
}
-func GetSupplySupportStoreSkus(db *DaoDB, fromDate, toDate time.Time, fromStoreID, storeID int) (storeSkuBind []*model.StoreSkuBind, err error) {
- // sql := `
-
- // `
- return storeSkuBind, err
+func GetSupplySupportStoreSkus(db *DaoDB, fromDate, toDate time.Time, fromStoreID, storeID int, percentage float64) (orderSkus []*model.OrderSku, err error) {
+ sql := `
+ SELECT c.sku_id,CEIL(c.count) count,CEIL(c.count) * d.jx_price sale_price
+ FROM
+ (
+ SELECT a.sku_id,SUM(a.count * ? ) count FROM order_sku a
+ JOIN goods_order b ON b.vendor_order_id = a.vendor_order_id AND a.vendor_id = b.vendor_id
+ WHERE b.order_created_at > ?
+ AND b.order_created_at < ?
+ AND a.sku_id <> ?
+ AND IF(b.store_id = 0,b.jx_store_id,b.store_id) = ?
+ GROUP BY 1
+ )c
+ JOIN store_sku_bind d ON d.store_id = ? AND d.sku_id = c.sku_id AND d.deleted_at = ?
+ ORDER BY c.count desc
+ `
+ sqlParams := []interface{}{
+ percentage,
+ fromDate,
+ toDate,
+ 6039481, //葱姜蒜
+ fromStoreID,
+ storeID, utils.DefaultTimeValue,
+ }
+ if err = GetRows(db, &orderSkus, sql, sqlParams); err == nil {
+ return orderSkus, err
+ }
+ return orderSkus, err
}
diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go
index bf86f98da..bda3862f5 100644
--- a/business/partner/purchase/jx/localjx/order.go
+++ b/business/partner/purchase/jx/localjx/order.go
@@ -1788,10 +1788,10 @@ func buildJxOrderInfo(order *model.GoodsOrder, orderSkus []*model.OrderSku) (jxO
return jxOrder
}
-func GetSupplySupportStoreSkus(ctx *jxcontext.Context, fromDate, toDate string, fromStoreID, storeID int) (storeSkuBinds []*model.StoreSkuBind, err error) {
+func GetSupplySupportStoreSkus(ctx *jxcontext.Context, fromDate, toDate string, fromStoreID, storeID int, percentage string) (orderSkus []*model.OrderSku, err error) {
var (
db = dao.GetDB()
)
- storeSkuBinds, err = dao.GetSupplySupportStoreSkus(db, utils.Str2Time(fromDate), utils.Str2Time(toDate), fromStoreID, storeID)
- return storeSkuBinds, err
+ orderSkus, err = dao.GetSupplySupportStoreSkus(db, utils.Str2Time(fromDate), utils.Str2Time(toDate), fromStoreID, storeID, utils.Str2Float64(percentage))
+ return orderSkus, err
}
diff --git a/controllers/jx_order2.go b/controllers/jx_order2.go
index 082b85541..2e24eff2a 100644
--- a/controllers/jx_order2.go
+++ b/controllers/jx_order2.go
@@ -230,12 +230,13 @@ func (c *JxOrderController) SendFailedMatterOrder() {
// @Param toDate query string false "结束日期(包含),格式(2006-01-02),如果订单号为空此项必须要求"
// @Param fromStoreID query int false "进货门店ID"
// @Param storeID query int false "货源门店ID"
+// @Param percentage query string false "销量比例,1,1.05,1.1"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /GetSupplySupportStoreSkus [get]
func (c *JxOrderController) GetSupplySupportStoreSkus() {
c.callGetSupplySupportStoreSkus(func(params *tJxorderGetSupplySupportStoreSkusParams) (retVal interface{}, errCode string, err error) {
- retVal, err = localjx.GetSupplySupportStoreSkus(params.Ctx, params.FromDate, params.ToDate, params.FromStoreID, params.StoreID)
+ retVal, err = localjx.GetSupplySupportStoreSkus(params.Ctx, params.FromDate, params.ToDate, params.FromStoreID, params.StoreID, params.Percentage)
return retVal, "", err
})
}
From 7a06235b8bd5f754c953953d87946364ea3dfc9a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Fri, 7 Aug 2020 11:01:29 +0800
Subject: [PATCH 35/62] =?UTF-8?q?=E8=B0=83=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/store_sku.go | 1 +
1 file changed, 1 insertion(+)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index 3494645cb..6b04761a2 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -1161,6 +1161,7 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
skuBind.JxPrice = jxutils.CaculatePriceByPricePack(storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage), skuBind.Price)
if tmpStatus := getSkuSaleStatus(inSkuBind, skuBindInfo); tmpStatus != model.StoreSkuBindStatusNA {
skuBind.Status = tmpStatus
+ fmt.Println("inSkuBind", utils.Format4Output(inSkuBind, false))
if inSkuBind != nil {
if inSkuBind.Stock != nil {
skuBind.Stock = *inSkuBind.Stock
From f2b8f29b9cd3a2267e30e4eb9ed2863aebe4715a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Fri, 7 Aug 2020 11:17:31 +0800
Subject: [PATCH 36/62] =?UTF-8?q?=E8=B0=83=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/store_sku.go | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index 6b04761a2..8b2658b7f 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -1161,10 +1161,11 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
skuBind.JxPrice = jxutils.CaculatePriceByPricePack(storeDetail.PricePercentagePackObj, int(storeDetail.PricePercentage), skuBind.Price)
if tmpStatus := getSkuSaleStatus(inSkuBind, skuBindInfo); tmpStatus != model.StoreSkuBindStatusNA {
skuBind.Status = tmpStatus
- fmt.Println("inSkuBind", utils.Format4Output(inSkuBind, false))
if inSkuBind != nil {
+ fmt.Println("inSkuBind1")
if inSkuBind.Stock != nil {
skuBind.Stock = *inSkuBind.Stock
+ fmt.Println("inSkuBind2")
} else {
goto setStock
}
@@ -1186,6 +1187,7 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
}
setStoreSkuBindStatus(skuBind, model.SyncFlagNewMask)
dao.WrapAddIDCULDEntity(skuBind, userName)
+ fmt.Println("skuBind", utils.Format4Output(skuBind, false))
// globals.SugarLogger.Debug(utils.Format4Output(skuBind, false))
if deletedSku := dao.GetDeletedStoreSkuBind(db, skuBind.StoreID, skuBind.SkuID); deletedSku == nil {
if err = dao.CreateEntity(db, skuBind); err != nil {
From d2c48dda9b50a3db3b8441173f6248cacf369bc5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Fri, 7 Aug 2020 11:22:35 +0800
Subject: [PATCH 37/62] =?UTF-8?q?=E8=B0=83=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/store_sku.go | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index 8b2658b7f..71d52f92f 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -1162,18 +1162,20 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
if tmpStatus := getSkuSaleStatus(inSkuBind, skuBindInfo); tmpStatus != model.StoreSkuBindStatusNA {
skuBind.Status = tmpStatus
if inSkuBind != nil {
- fmt.Println("inSkuBind1")
if inSkuBind.Stock != nil {
skuBind.Stock = *inSkuBind.Stock
- fmt.Println("inSkuBind2")
+ fmt.Println("skuBind.Stock", *inSkuBind.Stock)
} else {
+ fmt.Println("test1")
goto setStock
}
} else {
+ fmt.Println("test2")
goto setStock
}
setStock:
{
+ fmt.Println("test3")
//关注设置默认库存
if tmpStatus == model.StoreSkuBindStatusNormal {
skuBind.Stock = model.MaxStoreSkuStockQty
@@ -1187,7 +1189,6 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
}
setStoreSkuBindStatus(skuBind, model.SyncFlagNewMask)
dao.WrapAddIDCULDEntity(skuBind, userName)
- fmt.Println("skuBind", utils.Format4Output(skuBind, false))
// globals.SugarLogger.Debug(utils.Format4Output(skuBind, false))
if deletedSku := dao.GetDeletedStoreSkuBind(db, skuBind.StoreID, skuBind.SkuID); deletedSku == nil {
if err = dao.CreateEntity(db, skuBind); err != nil {
From eed9923b1f2d2fe2674416f4946413b3cd4541a8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Fri, 7 Aug 2020 11:42:50 +0800
Subject: [PATCH 38/62] =?UTF-8?q?=E8=B0=83=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/cms/store_sku.go | 15 +++++----------
1 file changed, 5 insertions(+), 10 deletions(-)
diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go
index 71d52f92f..900496529 100644
--- a/business/jxstore/cms/store_sku.go
+++ b/business/jxstore/cms/store_sku.go
@@ -1164,19 +1164,14 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
if inSkuBind != nil {
if inSkuBind.Stock != nil {
skuBind.Stock = *inSkuBind.Stock
- fmt.Println("skuBind.Stock", *inSkuBind.Stock)
} else {
- fmt.Println("test1")
- goto setStock
+ if tmpStatus == model.StoreSkuBindStatusNormal {
+ skuBind.Stock = model.MaxStoreSkuStockQty
+ } else {
+ skuBind.Stock = 0
+ }
}
} else {
- fmt.Println("test2")
- goto setStock
- }
- setStock:
- {
- fmt.Println("test3")
- //关注设置默认库存
if tmpStatus == model.StoreSkuBindStatusNormal {
skuBind.Stock = model.MaxStoreSkuStockQty
} else {
From 60a850eccaacab25ee47b20463e5f785b7a37213 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Mon, 10 Aug 2020 17:39:58 +0800
Subject: [PATCH 39/62] getskuname
---
business/jxstore/cms/sku.go | 1 +
1 file changed, 1 insertion(+)
diff --git a/business/jxstore/cms/sku.go b/business/jxstore/cms/sku.go
index 14563243f..9e4039c4d 100644
--- a/business/jxstore/cms/sku.go
+++ b/business/jxstore/cms/sku.go
@@ -670,6 +670,7 @@ func GetSkuNames(ctx *jxcontext.Context, keyword string, isBySku, isQueryMidPric
'","lastOperator":"', t2.last_operator, '","specQuality":', t2.spec_quality, ',"specUnit":"', t2.spec_unit,
'","exdSkuID":"', t2.exd_sku_id,
'","eclpID":"', t2.eclp_id,
+ '","minOrderCount":"', t2.min_order_count,
'","weight":', t2.weight, ',"categoryID":', t2.category_id, ',"nameID":', t2.name_id,
', "seq":', t2.seq,
"}")), "]") skus_str,
From dbc87bd0d78493405d5764bc4e8535f27b940217 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Mon, 10 Aug 2020 18:01:52 +0800
Subject: [PATCH 40/62] =?UTF-8?q?=E4=BA=AC=E4=B8=9C=E5=95=86=E5=9F=8E?=
=?UTF-8?q?=E5=92=8C=E4=BA=AC=E8=A5=BF=E7=9A=84=E8=AE=A2=E5=8D=95=E7=BB=93?=
=?UTF-8?q?=E7=AE=97=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxcallback/orderman/order.go | 32 +++++++++++++--------------
business/jxutils/jxutils.go | 20 ++++++++---------
2 files changed, 26 insertions(+), 26 deletions(-)
diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go
index 841c2e7ad..865209fc4 100644
--- a/business/jxcallback/orderman/order.go
+++ b/business/jxcallback/orderman/order.go
@@ -199,25 +199,25 @@ func (c *OrderManager) OnOrderStatusChanged(vendorOrgCode string, orderStatus *m
waybill, _ := c.LoadWaybill(order.VendorWaybillID, order.WaybillVendorID)
store, _ := c.LoadStoreDetail(jxutils.GetSaleStoreIDFromOrder(order), order.VendorID)
if waybill == nil {
- if order.VendorID == model.VendorIDJDShop || order.VendorID == model.VendorIDJX {
- if order.NewEarningPrice == 0 || order.NewEarningPrice != order.TotalShopMoney*int64(100-store.PayPercentage)/int64(100) {
- order.NewEarningPrice = order.TotalShopMoney * int64(100-store.PayPercentage) / int64(100)
- }
- } else {
- if order.NewEarningPrice == 0 || order.NewEarningPrice != order.TotalShopMoney*int64(100-store.PayPercentage/2)/int64(100) {
- order.NewEarningPrice = order.TotalShopMoney * int64(100-store.PayPercentage/2) / int64(100)
- }
+ // if order.VendorID == model.VendorIDJDShop || order.VendorID == model.VendorIDJX {
+ // if order.NewEarningPrice == 0 || order.NewEarningPrice != order.TotalShopMoney*int64(100-store.PayPercentage)/int64(100) {
+ // order.NewEarningPrice = order.TotalShopMoney * int64(100-store.PayPercentage) / int64(100)
+ // }
+ // } else {
+ if order.NewEarningPrice == 0 || order.NewEarningPrice != order.TotalShopMoney*int64(100-store.PayPercentage/2)/int64(100) {
+ order.NewEarningPrice = order.TotalShopMoney * int64(100-store.PayPercentage/2) / int64(100)
}
+ // }
} else {
- if order.VendorID == model.VendorIDJDShop || order.VendorID == model.VendorIDJX {
- if order.NewEarningPrice == 0 || order.NewEarningPrice != (order.TotalShopMoney-waybill.DesiredFee)*int64(100-store.PayPercentage)/int64(100) {
- order.NewEarningPrice = (order.TotalShopMoney - waybill.DesiredFee) * int64(100-store.PayPercentage) / int64(100)
- }
- } else {
- if order.NewEarningPrice == 0 || order.NewEarningPrice != (order.TotalShopMoney-waybill.DesiredFee)*int64(100-store.PayPercentage/2)/int64(100) {
- order.NewEarningPrice = (order.TotalShopMoney - waybill.DesiredFee) * int64(100-store.PayPercentage/2) / int64(100)
- }
+ // if order.VendorID == model.VendorIDJDShop || order.VendorID == model.VendorIDJX {
+ // if order.NewEarningPrice == 0 || order.NewEarningPrice != (order.TotalShopMoney-waybill.DesiredFee)*int64(100-store.PayPercentage)/int64(100) {
+ // order.NewEarningPrice = (order.TotalShopMoney - waybill.DesiredFee) * int64(100-store.PayPercentage) / int64(100)
+ // }
+ // } else {
+ if order.NewEarningPrice == 0 || order.NewEarningPrice != (order.TotalShopMoney-waybill.DesiredFee)*int64(100-store.PayPercentage/2)/int64(100) {
+ order.NewEarningPrice = (order.TotalShopMoney - waybill.DesiredFee) * int64(100-store.PayPercentage/2) / int64(100)
}
+ // }
}
dao.UpdateEntity(db, order, "NewEarningPrice")
}
diff --git a/business/jxutils/jxutils.go b/business/jxutils/jxutils.go
index 30064d05e..c7288df87 100644
--- a/business/jxutils/jxutils.go
+++ b/business/jxutils/jxutils.go
@@ -590,11 +590,11 @@ func RefreshOrderSkuRelated(order *model.GoodsOrder) *model.GoodsOrder {
func RefreshOrderEarningPrice2(order *model.GoodsOrder, payPercentage int) *model.GoodsOrder {
if order.EarningType == model.EarningTypePoints {
- if order.VendorID == model.VendorIDJDShop || order.VendorID == model.VendorIDJX {
- order.NewEarningPrice = order.TotalShopMoney * int64((100 - payPercentage)) / 100
- } else {
- order.NewEarningPrice = order.TotalShopMoney * int64((100 - payPercentage/2)) / 100
- }
+ // if order.VendorID == model.VendorIDJDShop || order.VendorID == model.VendorIDJX {
+ // order.NewEarningPrice = order.TotalShopMoney * int64((100 - payPercentage)) / 100
+ // } else {
+ order.NewEarningPrice = order.TotalShopMoney * int64((100 - payPercentage/2)) / 100
+ // }
} else {
order.NewEarningPrice = order.EarningPrice
}
@@ -603,11 +603,11 @@ func RefreshOrderEarningPrice2(order *model.GoodsOrder, payPercentage int) *mode
func RefreshOrderEarningPrice3(order *model.GoodsOrder, payPercentage int, bill *model.Waybill) *model.GoodsOrder {
if order.EarningType == model.EarningTypePoints {
- if order.VendorID == model.VendorIDJDShop || order.VendorID == model.VendorIDJX {
- order.NewEarningPrice = (order.TotalShopMoney - bill.DesiredFee) * int64((100 - payPercentage)) / 100
- } else {
- order.NewEarningPrice = (order.TotalShopMoney - bill.DesiredFee) * int64((100 - payPercentage/2)) / 100
- }
+ // if order.VendorID == model.VendorIDJDShop || order.VendorID == model.VendorIDJX {
+ // order.NewEarningPrice = (order.TotalShopMoney - bill.DesiredFee) * int64((100 - payPercentage)) / 100
+ // } else {
+ order.NewEarningPrice = (order.TotalShopMoney - bill.DesiredFee) * int64((100 - payPercentage/2)) / 100
+ // }
} else {
order.NewEarningPrice = order.EarningPrice
}
From 68cf04d034d7259234af8a7121d46fe4bc6d78b3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Mon, 10 Aug 2020 18:07:06 +0800
Subject: [PATCH 41/62] getskunames
---
business/jxstore/cms/sku.go | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/business/jxstore/cms/sku.go b/business/jxstore/cms/sku.go
index 9e4039c4d..b2a92a7e2 100644
--- a/business/jxstore/cms/sku.go
+++ b/business/jxstore/cms/sku.go
@@ -670,9 +670,9 @@ func GetSkuNames(ctx *jxcontext.Context, keyword string, isBySku, isQueryMidPric
'","lastOperator":"', t2.last_operator, '","specQuality":', t2.spec_quality, ',"specUnit":"', t2.spec_unit,
'","exdSkuID":"', t2.exd_sku_id,
'","eclpID":"', t2.eclp_id,
- '","minOrderCount":"', t2.min_order_count,
'","weight":', t2.weight, ',"categoryID":', t2.category_id, ',"nameID":', t2.name_id,
', "seq":', t2.seq,
+ ', "minOrderCount":', t2.min_order_count,
"}")), "]") skus_str,
CONCAT("[", GROUP_CONCAT(DISTINCT t3.place_code), "]") places_str
` + sql + `
From d2ff7cde17e34e3e487a1e2c32c1a4e5d4659fa0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Tue, 11 Aug 2020 09:17:13 +0800
Subject: [PATCH 42/62] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=AE=A2=E5=8D=95?=
=?UTF-8?q?=E9=85=8D=E9=80=81=E8=B4=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxcallback/orderman/order.go | 20 ++++++++++++++++++++
controllers/jx_order.go | 15 +++++++++++++++
controllers/jx_order2.go | 2 ++
routers/commentsRouter_controllers.go | 9 +++++++++
4 files changed, 46 insertions(+)
diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go
index 865209fc4..ebc45ba75 100644
--- a/business/jxcallback/orderman/order.go
+++ b/business/jxcallback/orderman/order.go
@@ -1490,3 +1490,23 @@ func AdjustJdsOrderSimple(ctx *jxcontext.Context, vendorOrderID string, skuID in
}
return err
}
+
+func UpdateWaybillDesiredFee(ctx *jxcontext.Context, vendorOrderID string, desiredFee int) (err error) {
+ var (
+ db = dao.GetDB()
+ )
+ order, _ := dao.GetSimpleOrder(db, vendorOrderID)
+ if order == nil {
+ return fmt.Errorf("未找到该订单!orderID: %v", vendorOrderID)
+ }
+ bill, err := partner.CurOrderManager.LoadWaybill(order.VendorWaybillID, order.WaybillVendorID)
+ if err != nil {
+ return err
+ }
+ if bill == nil {
+ return fmt.Errorf("未找到此订单对应的运单!orderID: %v", vendorOrderID)
+ }
+ bill.DesiredFee = int64(desiredFee)
+ _, err = dao.UpdateEntity(db, bill, "DesiredFee")
+ return err
+}
diff --git a/controllers/jx_order.go b/controllers/jx_order.go
index 0839dcc9a..63b872ad7 100644
--- a/controllers/jx_order.go
+++ b/controllers/jx_order.go
@@ -1119,3 +1119,18 @@ func (c *OrderController) AdjustJdsOrderSimple() {
return retVal, "", err
})
}
+
+// @Title 修改订单运费
+// @Description 修改订单运费
+// @Param token header string true "认证token"
+// @Param vendorOrderID formData string true "订单号"
+// @Param desiredFee formData int true "运费"
+// @Success 200 {object} controllers.CallResult
+// @Failure 200 {object} controllers.CallResult
+// @router /UpdateWaybillDesiredFee [put]
+func (c *OrderController) UpdateWaybillDesiredFee() {
+ c.callUpdateWaybillDesiredFee(func(params *tOrderUpdateWaybillDesiredFeeParams) (retVal interface{}, errCode string, err error) {
+ err = orderman.UpdateWaybillDesiredFee(params.Ctx, params.VendorOrderID, params.DesiredFee)
+ return retVal, "", err
+ })
+}
diff --git a/controllers/jx_order2.go b/controllers/jx_order2.go
index 707c210c9..b355610cb 100644
--- a/controllers/jx_order2.go
+++ b/controllers/jx_order2.go
@@ -222,3 +222,5 @@ func (c *JxOrderController) SendFailedMatterOrder() {
return retVal, "", err
})
}
+
+
diff --git a/routers/commentsRouter_controllers.go b/routers/commentsRouter_controllers.go
index 7a51db86e..22f502d75 100644
--- a/routers/commentsRouter_controllers.go
+++ b/routers/commentsRouter_controllers.go
@@ -1314,6 +1314,15 @@ func init() {
Filters: nil,
Params: nil})
+ beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:OrderController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:OrderController"],
+ beego.ControllerComments{
+ Method: "UpdateWaybillDesiredFee",
+ Router: `/UpdateWaybillDesiredFee`,
+ AllowHTTPMethods: []string{"put"},
+ MethodParams: param.Make(),
+ Filters: nil,
+ Params: nil})
+
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:ReportController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:ReportController"],
beego.ControllerComments{
Method: "AutoFocusStoreSkus",
From 5fdad8096b14d4ca350a396517b5a476b49fb8c3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Tue, 11 Aug 2020 17:38:16 +0800
Subject: [PATCH 43/62] =?UTF-8?q?=E7=89=A9=E6=96=99=E5=85=88=E9=80=80?=
=?UTF-8?q?=E5=9B=9E?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/model/order.go | 2 +-
business/partner/purchase/jx/localjx/order.go | 4 +++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/business/model/order.go b/business/model/order.go
index c0a4d6b71..51ac0779d 100644
--- a/business/model/order.go
+++ b/business/model/order.go
@@ -28,7 +28,7 @@ const (
const (
OrderTypeNormal = 0 //普通订单
- OrderTypeMatter = 1 //物料订单
+ OrderTypeMatter = 0 //物料订单
OrderTypeSupplyGoods = 2 //进货订单
)
diff --git a/business/partner/purchase/jx/localjx/order.go b/business/partner/purchase/jx/localjx/order.go
index b9260beeb..7dbb93ca8 100644
--- a/business/partner/purchase/jx/localjx/order.go
+++ b/business/partner/purchase/jx/localjx/order.go
@@ -372,10 +372,12 @@ func OnPayFinished(orderPay *model.OrderPay) (err error) {
order.StatusTime = *orderPay.PayFinishedAt
err = callNewOrder(order)
//如果是物料的订单,直接到拣货完成,配送中的状态
- if order.OrderType != model.OrderTypeNormal {
+ // if order.OrderType != model.OrderTypeNormal {
+ if order.FromStoreID != 0 {
netprinter.PrintOrderByOrder(jxcontext.AdminCtx, order)
PickupGoods(order, false, "jxadmin")
}
+ // }
}
return err
}
From fb325a64604d019ce68f24842f082f82c4a3fd46 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 09:07:26 +0800
Subject: [PATCH 44/62] =?UTF-8?q?=E6=89=93=E5=8D=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/partner/printer/yilianyun/yilianyun.go | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/business/partner/printer/yilianyun/yilianyun.go b/business/partner/printer/yilianyun/yilianyun.go
index 45fd1e948..47a8a9b23 100644
--- a/business/partner/printer/yilianyun/yilianyun.go
+++ b/business/partner/printer/yilianyun/yilianyun.go
@@ -58,7 +58,7 @@ func (c *PrinterHandler) getOrderContent(order *model.GoodsOrder, storeTel strin
\n
\n
商品明细: \n
-品名 数量 \n
+品名 数量 单价 小计\n
--------------------------------\n`
// 实际支付:%s\n
orderParams := []interface{}{
@@ -78,9 +78,8 @@ func (c *PrinterHandler) getOrderContent(order *model.GoodsOrder, storeTel strin
for _, sku := range order.Skus {
orderFmt += `%s\n`
- orderFmt += `%8s\n`
- orderParams = append(orderParams, sku.SkuName, "x"+utils.Int2Str(sku.Count))
- //jxutils.IntPrice2StandardCurrencyString(sku.SalePrice), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice*int64(sku.Count))
+ orderFmt += `%8s%10s%10s\n`
+ orderParams = append(orderParams, sku.SkuName, "x"+utils.Int2Str(sku.Count), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice*int64(sku.Count)))
}
orderFmt += `\n
共%d种%d件商品
From 1fe6c7bea8b3c06c0fa42410d4d69c4863e592f2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 09:07:53 +0800
Subject: [PATCH 45/62] =?UTF-8?q?=E6=89=93=E5=8D=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/partner/printer/yilianyun/yilianyun.go | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/business/partner/printer/yilianyun/yilianyun.go b/business/partner/printer/yilianyun/yilianyun.go
index 47a8a9b23..c6fa09a19 100644
--- a/business/partner/printer/yilianyun/yilianyun.go
+++ b/business/partner/printer/yilianyun/yilianyun.go
@@ -126,7 +126,7 @@ func (c *PrinterHandler) getOrderContentBig(order *model.GoodsOrder, storeTel st
\n
\n
商品明细: \n
-品名 数量\n
+品名数量单价小计\n
--------------------------------\n`
// 实际支付:%s\n
orderParams := []interface{}{
@@ -146,9 +146,8 @@ func (c *PrinterHandler) getOrderContentBig(order *model.GoodsOrder, storeTel st
for _, sku := range order.Skus {
orderFmt += `%s\n`
- orderFmt += `%s\n\n`
- orderParams = append(orderParams, sku.SkuName, "x"+utils.Int2Str(sku.Count))
- //jxutils.IntPrice2StandardCurrencyString(sku.SalePrice), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice*int64(sku.Count))
+ orderFmt += `%s %s %s\n\n`
+ orderParams = append(orderParams, sku.SkuName, "x"+utils.Int2Str(sku.Count), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice*int64(sku.Count)))
}
orderFmt += `\n
共%d种%d件商品
From 98f3a67bb12e8c593d6bb48a9cce5e69fd97e3f8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 09:08:28 +0800
Subject: [PATCH 46/62] =?UTF-8?q?=E6=89=93=E5=8D=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/partner/printer/feie/feie.go | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/business/partner/printer/feie/feie.go b/business/partner/printer/feie/feie.go
index d9819d284..6b1eddf38 100644
--- a/business/partner/printer/feie/feie.go
+++ b/business/partner/printer/feie/feie.go
@@ -59,7 +59,7 @@ func (c *PrinterHandler) getOrderContent(order *model.GoodsOrder, storeTel strin
商品明细:
-品名 数量
+品名 数量 单价 小计
--------------------------------
`
// 实际支付:%s
orderParams := []interface{}{
@@ -79,9 +79,8 @@ func (c *PrinterHandler) getOrderContent(order *model.GoodsOrder, storeTel strin
for _, sku := range order.Skus {
orderFmt += `%s
`
- orderFmt += `%8s
`
- orderParams = append(orderParams, sku.SkuName, "x"+utils.Int2Str(sku.Count))
- //jxutils.IntPrice2StandardCurrencyString(sku.SalePrice), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice*int64(sku.Count))
+ orderFmt += `%8s%10s%10s
`
+ orderParams = append(orderParams, sku.SkuName, "x"+utils.Int2Str(sku.Count), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice*int64(sku.Count)))
}
orderFmt += `
共%d种%d件商品
From 21a4f769034c5a1948b7def70317cca0701a0c94 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 09:08:51 +0800
Subject: [PATCH 47/62] =?UTF-8?q?=E6=89=93=E5=8D=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/partner/printer/feie/feie.go | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/business/partner/printer/feie/feie.go b/business/partner/printer/feie/feie.go
index 6b1eddf38..95df6cd28 100644
--- a/business/partner/printer/feie/feie.go
+++ b/business/partner/printer/feie/feie.go
@@ -133,7 +133,7 @@ func (c *PrinterHandler) getOrderContentBig(order *model.GoodsOrder, storeTel st
商品明细:
-品名 数量
+品名数量单价小计
--------------------------------
`
// 实际支付:%s
orderParams := []interface{}{
@@ -153,9 +153,8 @@ func (c *PrinterHandler) getOrderContentBig(order *model.GoodsOrder, storeTel st
for _, sku := range order.Skus {
orderFmt += `%s
`
- orderFmt += `%s
`
- orderParams = append(orderParams, sku.SkuName, "x"+utils.Int2Str(sku.Count))
- //jxutils.IntPrice2StandardCurrencyString(sku.SalePrice), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice*int64(sku.Count))
+ orderFmt += `%s %s %s
`
+ orderParams = append(orderParams, sku.SkuName, "x"+utils.Int2Str(sku.Count), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice*int64(sku.Count)))
}
orderFmt += `
共%d种%d件商品
From fd6bfee315a4a430fe0269f1d8ce0b02ccd72da3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 09:09:17 +0800
Subject: [PATCH 48/62] =?UTF-8?q?=E6=89=93=E5=8D=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/partner/printer/xiaowm/xiaowm.go | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/business/partner/printer/xiaowm/xiaowm.go b/business/partner/printer/xiaowm/xiaowm.go
index 74b47098c..80cfb5b7d 100644
--- a/business/partner/printer/xiaowm/xiaowm.go
+++ b/business/partner/printer/xiaowm/xiaowm.go
@@ -60,7 +60,7 @@ func (c *PrinterHandler) getOrderContent(order *model.GoodsOrder, storeTel strin
客户备注: *
%s*
商品明细: *
-品名 数量
+品名 数量 单价 小计
--------------------------------*
`
// 实际支付: %s*
@@ -81,8 +81,7 @@ func (c *PrinterHandler) getOrderContent(order *model.GoodsOrder, storeTel strin
for _, sku := range order.Skus {
orderFmt += `%s*`
orderFmt += `%8s%10s%10s*`
- orderParams = append(orderParams, sku.SkuName, "x"+utils.Int2Str(sku.Count))
- // jxutils.IntPrice2StandardCurrencyString(sku.SalePrice), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice*int64(sku.Count))
+ orderParams = append(orderParams, sku.SkuName, "x"+utils.Int2Str(sku.Count), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice*int64(sku.Count)))
}
orderFmt += `
*
From 602a5c14447e0859f13b0b269f9ef14c5f744a4f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 09:09:39 +0800
Subject: [PATCH 49/62] =?UTF-8?q?=E6=89=93=E5=8D=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/partner/printer/xiaowm/xiaowm.go | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/business/partner/printer/xiaowm/xiaowm.go b/business/partner/printer/xiaowm/xiaowm.go
index 80cfb5b7d..bad1498fd 100644
--- a/business/partner/printer/xiaowm/xiaowm.go
+++ b/business/partner/printer/xiaowm/xiaowm.go
@@ -135,7 +135,7 @@ func (c *PrinterHandler) getOrderContentBig(order *model.GoodsOrder, storeTel st
客户备注: *
%s*
商品明细: *
-品名 数量*
+品名数量单价小计*
--------------------------------*
`
// 实际支付: %s*
@@ -155,9 +155,8 @@ func (c *PrinterHandler) getOrderContentBig(order *model.GoodsOrder, storeTel st
}
for _, sku := range order.Skus {
orderFmt += `%s*`
- orderFmt += `%s*`
- orderParams = append(orderParams, sku.SkuName, "x"+utils.Int2Str(sku.Count))
- // jxutils.IntPrice2StandardCurrencyString(sku.SalePrice), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice*int64(sku.Count))
+ orderFmt += `%s %s %s*`
+ orderParams = append(orderParams, sku.SkuName, "x"+utils.Int2Str(sku.Count), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice), jxutils.IntPrice2StandardCurrencyString(sku.SalePrice*int64(sku.Count)))
}
orderFmt += `
共%d种%d件商品*
From 44ba05502920b496689c0bafccb9d2e5c21a6cb3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 10:50:07 +0800
Subject: [PATCH 50/62] =?UTF-8?q?=E6=97=A0=E8=BF=90=E5=8D=95=E9=85=8D?=
=?UTF-8?q?=E9=80=81=E8=B4=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxcallback/orderman/order.go | 19 ++++++++++++++++---
1 file changed, 16 insertions(+), 3 deletions(-)
diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go
index 8ce14f16e..993655a8a 100644
--- a/business/jxcallback/orderman/order.go
+++ b/business/jxcallback/orderman/order.go
@@ -1548,9 +1548,22 @@ func UpdateWaybillDesiredFee(ctx *jxcontext.Context, vendorOrderID string, desir
return err
}
if bill == nil {
- return fmt.Errorf("未找到此订单对应的运单!orderID: %v", vendorOrderID)
+ waybill := &model.Waybill{
+ VendorOrderID: order.VendorOrderID,
+ OrderVendorID: order.VendorID,
+ VendorWaybillID: "-1",
+ WaybillVendorID: -1,
+ Status: model.WaybillStatusDelivered,
+ WaybillCreatedAt: time.Now(),
+ StatusTime: time.Now(),
+ WaybillFinishedAt: utils.DefaultTimeValue,
+ DeliveryFlag: model.OrderDeliveryFlagMaskScheduleDisabled,
+ DesiredFee: int64(desiredFee),
+ }
+ dao.CreateEntity(db, waybill)
+ } else {
+ bill.DesiredFee = int64(desiredFee)
+ _, err = dao.UpdateEntity(db, bill, "DesiredFee")
}
- bill.DesiredFee = int64(desiredFee)
- _, err = dao.UpdateEntity(db, bill, "DesiredFee")
return err
}
From 3c9d25c080ff4fb5269f3285940f16f909f5cfc7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 11:00:11 +0800
Subject: [PATCH 51/62] =?UTF-8?q?=E6=97=A0=E8=BF=90=E5=8D=95=E9=85=8D?=
=?UTF-8?q?=E9=80=81=E8=B4=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxcallback/orderman/order.go | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go
index 993655a8a..2c033fbb8 100644
--- a/business/jxcallback/orderman/order.go
+++ b/business/jxcallback/orderman/order.go
@@ -1543,10 +1543,7 @@ func UpdateWaybillDesiredFee(ctx *jxcontext.Context, vendorOrderID string, desir
if order == nil {
return fmt.Errorf("未找到该订单!orderID: %v", vendorOrderID)
}
- bill, err := partner.CurOrderManager.LoadWaybill(order.VendorWaybillID, order.WaybillVendorID)
- if err != nil {
- return err
- }
+ bill, _ := partner.CurOrderManager.LoadWaybill(order.VendorWaybillID, order.WaybillVendorID)
if bill == nil {
waybill := &model.Waybill{
VendorOrderID: order.VendorOrderID,
From c823b47c48d8e42a9f8ba7ab08168075a1184ea5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 11:20:59 +0800
Subject: [PATCH 52/62] =?UTF-8?q?=E6=97=A0=E8=BF=90=E5=8D=95=E9=85=8D?=
=?UTF-8?q?=E9=80=81=E8=B4=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxcallback/orderman/order.go | 2 ++
1 file changed, 2 insertions(+)
diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go
index 2c033fbb8..bdc96a1e8 100644
--- a/business/jxcallback/orderman/order.go
+++ b/business/jxcallback/orderman/order.go
@@ -1558,6 +1558,8 @@ func UpdateWaybillDesiredFee(ctx *jxcontext.Context, vendorOrderID string, desir
DesiredFee: int64(desiredFee),
}
dao.CreateEntity(db, waybill)
+ order.VendorWaybillID = "-1"
+ dao.UpdateEntity(db, order, "VendorWaybillID")
} else {
bill.DesiredFee = int64(desiredFee)
_, err = dao.UpdateEntity(db, bill, "DesiredFee")
From b6a1746d6a25aec8d65c779fa6977996b93eea15 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 11:31:33 +0800
Subject: [PATCH 53/62] =?UTF-8?q?=E4=BA=AC=E8=A5=BF=E8=AE=A2=E5=8D=95?=
=?UTF-8?q?=E4=B8=8D=E6=94=B9=E5=BA=93=E5=AD=98=E5=90=8C=E6=AD=A5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxcallback/orderman/order.go | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/business/jxcallback/orderman/order.go b/business/jxcallback/orderman/order.go
index bdc96a1e8..6df00277d 100644
--- a/business/jxcallback/orderman/order.go
+++ b/business/jxcallback/orderman/order.go
@@ -386,7 +386,9 @@ func ModifyOrderSkusStock(db *dao.DaoDB, order *model.GoodsOrder, isAdd bool) (e
}
storeSku.Stock = stock
dao.UpdateEntity(db, storeSku, "Stock")
- dao.SetStoreSkuSyncStatus(db, order.VendorID, []int{jxutils.GetSaleStoreIDFromOrder(order)}, []int{sku.SkuID}, model.SyncFlagStockMask)
+ if order.VendorID != model.VendorIDJX {
+ dao.SetStoreSkuSyncStatus(db, order.VendorID, []int{jxutils.GetSaleStoreIDFromOrder(order)}, []int{sku.SkuID}, model.SyncFlagStockMask)
+ }
}
return err
}
From 5a65f04e158489e9d0753f777e852c91cfa86adb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 12:02:54 +0800
Subject: [PATCH 54/62] =?UTF-8?q?dada=E9=97=A8=E5=BA=97=E5=90=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../scheduler/basesch/basesch_ext.go | 2 +-
.../jxcallback/scheduler/defsch/defsch_ext.go | 2 +-
business/jxstore/cms/store.go | 2 +-
business/jxstore/cms/sync.go | 2 +-
business/jxstore/tempop/tempop.go | 84 +++----------------
business/model/dao/store.go | 6 +-
business/model/dao/store_test.go | 2 +-
business/partner/delivery/dada/waybill.go | 2 +-
8 files changed, 24 insertions(+), 78 deletions(-)
diff --git a/business/jxcallback/scheduler/basesch/basesch_ext.go b/business/jxcallback/scheduler/basesch/basesch_ext.go
index facb99a89..c6668a142 100644
--- a/business/jxcallback/scheduler/basesch/basesch_ext.go
+++ b/business/jxcallback/scheduler/basesch/basesch_ext.go
@@ -27,7 +27,7 @@ const (
func (c *BaseScheduler) CreateWaybillOnProviders(ctx *jxcontext.Context, order *model.GoodsOrder, courierVendorIDs, excludeCourierVendorIDs []int, maxDeliveryFee int64, createOnlyOne bool) (bills []*model.Waybill, err error) {
userName := ctx.GetUserName()
globals.SugarLogger.Infof("CreateWaybillOnProviders orderID:%s userName:%s, courierVendorIDs:%v, excludeCourierVendorIDs:%v", order.VendorOrderID, userName, courierVendorIDs, excludeCourierVendorIDs)
- storeCourierList, err := dao.GetStoreCourierList(dao.GetDB(), []int{jxutils.GetSaleStoreIDFromOrder(order)}, model.StoreStatusOpened, model.StoreAuditStatusOnline)
+ storeCourierList, err := dao.GetStoreCourierList(dao.GetDB(), []int{jxutils.GetSaleStoreIDFromOrder(order)}, nil, model.StoreStatusOpened, model.StoreAuditStatusOnline)
if err != nil {
return nil, err
}
diff --git a/business/jxcallback/scheduler/defsch/defsch_ext.go b/business/jxcallback/scheduler/defsch/defsch_ext.go
index 9ad7f3e83..3159be54c 100644
--- a/business/jxcallback/scheduler/defsch/defsch_ext.go
+++ b/business/jxcallback/scheduler/defsch/defsch_ext.go
@@ -232,7 +232,7 @@ func (s *DefScheduler) QueryOrderWaybillFeeInfoEx(ctx *jxcontext.Context, vendor
if order.DeliveryType == model.OrderDeliveryTypeSelfTake {
return nil, fmt.Errorf("订单:%s是自提单", vendorOrderID)
}
- storeCourierList, err := dao.GetStoreCourierList(db, []int{jxutils.GetSaleStoreIDFromOrder(order)}, model.StoreStatusAll, model.StoreAuditStatusOnline)
+ storeCourierList, err := dao.GetStoreCourierList(db, []int{jxutils.GetSaleStoreIDFromOrder(order)}, nil, model.StoreStatusAll, model.StoreAuditStatusOnline)
if err != nil {
return nil, err
}
diff --git a/business/jxstore/cms/store.go b/business/jxstore/cms/store.go
index 17d1e171a..6d40dcffa 100644
--- a/business/jxstore/cms/store.go
+++ b/business/jxstore/cms/store.go
@@ -412,7 +412,7 @@ func setStoreMapInfo(ctx *jxcontext.Context, db *dao.DaoDB, storesInfo *StoresIn
if err != nil {
return err
}
- storeCourierList, err := dao.GetStoreCourierList(db, storeIDs, model.StoreStatusAll, model.StoreAuditStatusAll)
+ storeCourierList, err := dao.GetStoreCourierList(db, storeIDs, nil, model.StoreStatusAll, model.StoreAuditStatusAll)
if err != nil {
return err
}
diff --git a/business/jxstore/cms/sync.go b/business/jxstore/cms/sync.go
index 019a079a0..4a89efbd7 100644
--- a/business/jxstore/cms/sync.go
+++ b/business/jxstore/cms/sync.go
@@ -1379,7 +1379,7 @@ func SetMTPSStatus(ctx *jxcontext.Context, storeId, courierStatus int) {
db := dao.GetDB()
/*比较营业状态*/
/*把获取的京西状态和名称存一下*/
- StoreCourierList, _ := dao.GetStoreCourierList(db, []int{}, model.StoreStatusAll, model.StoreStatusAll)
+ StoreCourierList, _ := dao.GetStoreCourierList(db, []int{}, nil, model.StoreStatusAll, model.StoreStatusAll)
/*循环美团*/
for _, StoreInfoList1 := range StoreInfoList {
for _, StoreInfoList11 := range StoreInfoList1.DataList {
diff --git a/business/jxstore/tempop/tempop.go b/business/jxstore/tempop/tempop.go
index 9de9f2c17..5326f3594 100644
--- a/business/jxstore/tempop/tempop.go
+++ b/business/jxstore/tempop/tempop.go
@@ -8,13 +8,12 @@ import (
"strings"
"time"
- "git.rosy.net.cn/jx-callback/business/jxstore/act"
-
"git.rosy.net.cn/jx-callback/business/auth2/authprovider/weixin"
"git.rosy.net.cn/jx-callback/business/partner/delivery"
"github.com/360EntSecGroup-Skylar/excelize"
"github.com/qiniu/api.v7/storage"
+ "git.rosy.net.cn/baseapi/platformapi/dadaapi"
"git.rosy.net.cn/baseapi/platformapi/jdapi"
"git.rosy.net.cn/baseapi/platformapi/mtwmapi"
"git.rosy.net.cn/baseapi/utils"
@@ -1585,76 +1584,19 @@ func UploadJdsImage(ctx *jxcontext.Context) (err error) {
// fmt.Println("addList2", addList)
// fmt.Println("updateList2", utils.Format4Output(updateList, false))
// fmt.Println("deleteList2", deleteList)
- db := dao.GetDB()
- storeIDs := []int{
- 667335,
- 667321,
- 667319,
- 667260,
- 667227,
- 667167,
- 667109,
- 667094,
- 667050,
- 666898,
- 666852,
- 666815,
- 666763,
- 666761,
- 666760,
- 666759,
- 666714,
- 666708,
- 666705,
- 666669,
- 103437,
- 103425,
- 103349,
- 103123,
- 103116,
- 103107,
- 103069,
- 103019,
- 102940,
- 102890,
- 102831,
- 102772,
- 102751,
- 101870,
- 101755,
- 101176,
- 100767,
- 100754,
- 100726,
- 100699,
- 100476,
- 100369,
- 100366,
- 100361,
- 100351,
- 100350,
- }
- for _, storeID := range storeIDs {
- acts, _ := dao.QueryActs(db, 0, 0, 50, 0, "", -1, []int{1}, []int{0, 3, 4}, nil, storeID, nil, 0, utils.ZeroTimeValue, utils.ZeroTimeValue, utils.Str2Time("2020-05-30 00:00:00"), utils.Str2Time("2020-07-30 00:00:00"))
- for _, v := range acts.Data {
- var actStoreSkuParam []*act.ActStoreSkuParam
- _, actStoreSkus, _ := dao.GetActStoreSkuVendorList(db, v.ID, []int{0}, nil, nil, "", 0, 99999)
- for _, actStoreSku := range actStoreSkus {
- if actStoreSku.StoreID == storeID {
- aa := &act.ActStoreSkuParam{
- ActStoreSku: model.ActStoreSku{
- StoreID: storeID,
- SkuID: actStoreSku.SkuID,
- ActID: v.ID,
- },
- }
- actStoreSkuParam = append(actStoreSkuParam, aa)
- }
- }
- _, err = act.DeleteActStoreSkuBind(ctx, db, v.ID, actStoreSkuParam)
- if err == nil {
- _, err = act.SyncAct(ctx, nil, v.ID, nil, true)
+ var (
+ db = dao.GetDB()
+ )
+ list, err := dao.GetStoreCourierList(db, nil, []int{model.VendorIDDada}, model.StoreStatusAll, model.StoreAuditStatusAll)
+ for _, v := range list {
+ stores, _ := dao.GetStoreList(db, []int{v.StoreID}, nil, nil, nil, "")
+ sd, _ := api.DadaAPI.ShopDetail(v.VendorStoreID)
+ if !strings.Contains(sd.StationName, globals.StoreName) {
+ shopInfo := &dadaapi.ShopInfo{
+ OriginShopID: v.VendorStoreID,
+ StationName: globals.StoreName + "-" + stores[0].Name,
}
+ api.DadaAPI.ShopUpdate(shopInfo)
}
}
return err
diff --git a/business/model/dao/store.go b/business/model/dao/store.go
index 25cca2baf..b14feb9dd 100644
--- a/business/model/dao/store.go
+++ b/business/model/dao/store.go
@@ -205,7 +205,7 @@ func GetStoreDetail2(db *DaoDB, storeID int, vendorStoreID string, vendorID int)
return storeDetail, err
}
-func GetStoreCourierList(db *DaoDB, storeIDs []int, status, auditStatus int) (courierStoreList []*model.StoreCourierMap, err error) {
+func GetStoreCourierList(db *DaoDB, storeIDs, vendorIDs []int, status, auditStatus int) (courierStoreList []*model.StoreCourierMap, err error) {
sql := `
SELECT t1.*
FROM store_courier_map t1
@@ -218,6 +218,10 @@ func GetStoreCourierList(db *DaoDB, storeIDs []int, status, auditStatus int) (co
sql += " AND t1.store_id IN (" + GenQuestionMarks(len(storeIDs)) + ")"
sqlParams = append(sqlParams, storeIDs)
}
+ if len(vendorIDs) > 0 {
+ sql += " AND t1.vendor_id IN (" + GenQuestionMarks(len(vendorIDs)) + ")"
+ sqlParams = append(sqlParams, vendorIDs)
+ }
if status != model.StoreStatusAll {
sql += " AND t1.status = ?"
sqlParams = append(sqlParams, status)
diff --git a/business/model/dao/store_test.go b/business/model/dao/store_test.go
index b77ffffba..049f82bd8 100644
--- a/business/model/dao/store_test.go
+++ b/business/model/dao/store_test.go
@@ -17,7 +17,7 @@ func TestGetStoreDetail(t *testing.T) {
}
func TestGetStoreCourierList(t *testing.T) {
- storeCourierList, err := GetStoreCourierList(GetDB(), []int{100119}, model.StoreStatusOpened, model.StoreAuditStatusOnline)
+ storeCourierList, err := GetStoreCourierList(GetDB(), []int{100119}, nil, model.StoreStatusOpened, model.StoreAuditStatusOnline)
if err != nil {
t.Fatal(err)
}
diff --git a/business/partner/delivery/dada/waybill.go b/business/partner/delivery/dada/waybill.go
index c376f591d..f74e1dd9a 100644
--- a/business/partner/delivery/dada/waybill.go
+++ b/business/partner/delivery/dada/waybill.go
@@ -126,7 +126,7 @@ func StoreDetail2ShopInfo(storeDetail *dao.StoreDetail2) (shopInfo *dadaapi.Shop
}
shopInfo = &dadaapi.ShopInfo{
OriginShopID: storeDetail.VendorStoreID,
- StationName: storeDetail.Name,
+ StationName: globals.StoreName + "-" + storeDetail.Name,
Business: dadaapi.BusinessTypeConvStore, // 故意设置成这个的
CityName: cityName,
AreaName: districtName,
From 9c4e228dd21e37af23c2b94929b4ec1b4ba3ec39 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 13:40:26 +0800
Subject: [PATCH 55/62] =?UTF-8?q?dada=E9=97=A8=E5=BA=97=E5=90=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/tempop/tempop.go | 2 ++
1 file changed, 2 insertions(+)
diff --git a/business/jxstore/tempop/tempop.go b/business/jxstore/tempop/tempop.go
index 5326f3594..d16862345 100644
--- a/business/jxstore/tempop/tempop.go
+++ b/business/jxstore/tempop/tempop.go
@@ -1598,6 +1598,8 @@ func UploadJdsImage(ctx *jxcontext.Context) (err error) {
}
api.DadaAPI.ShopUpdate(shopInfo)
}
+ fmt.Println("testcccc", v.StoreID)
+ break
}
return err
}
From 644092916ccf3d965ef44bb68eb5806064170a2b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 14:00:11 +0800
Subject: [PATCH 56/62] =?UTF-8?q?=E6=96=B0=E5=B0=8F=E7=A8=8B=E5=BA=8Fappid?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/auth2/authprovider/weixin/weixin_mini.go | 3 +++
conf/app.conf | 2 ++
globals/api/api.go | 5 +++++
3 files changed, 10 insertions(+)
diff --git a/business/auth2/authprovider/weixin/weixin_mini.go b/business/auth2/authprovider/weixin/weixin_mini.go
index 072ea9573..56643e410 100644
--- a/business/auth2/authprovider/weixin/weixin_mini.go
+++ b/business/auth2/authprovider/weixin/weixin_mini.go
@@ -92,6 +92,9 @@ func getWxApp(appID string) (miniApi *weixinapi.API) {
if len(appID) > 0 && appID == api.WeixinMiniAppID2 {
miniApi = api.WeixinMiniAPI2
}
+ if len(appID) > 0 && appID == api.WeixinMiniAppID3 {
+ miniApi = api.WeixinMiniAPI3
+ }
return miniApi
}
diff --git a/conf/app.conf b/conf/app.conf
index af6c64a6d..4729834d5 100644
--- a/conf/app.conf
+++ b/conf/app.conf
@@ -209,6 +209,8 @@ weixinAppID = "wx2bb99eb5d2c9b82c"
weixinSecret = "6bbbed1443cc062c20a015a64c07a531"
weixinMiniAppID2 = "wx4b5930c13f8b1170"
weixinMiniSecret2 = "2a57228a716ce991a52739f0ff41111d"
+weixinMiniAppID3 = "wx18111a41fd17f24f"
+weixinMiniSecret3 = "c79ac6e1b2d6d7968e72a9658a8b6715"
yinbaoAppKey = "682628966212343269"
yinbaoAppID = "18C0E0867E467DBC26EFF5E957B02EC4"
diff --git a/globals/api/api.go b/globals/api/api.go
index 1cc86b19f..98d089a49 100644
--- a/globals/api/api.go
+++ b/globals/api/api.go
@@ -60,7 +60,9 @@ var (
WeixinAPI *weixinapi.API // 微信公众号
WeixinMiniAPI *weixinapi.API // 小程序
WeixinMiniAPI2 *weixinapi.API // 小程序2
+ WeixinMiniAPI3 *weixinapi.API // 小程序3
WeixinMiniAppID2 string
+ WeixinMiniAppID3 string
WxpayAPI *wxpayapi.API // 微信支付API
TLpayAPI *tonglianpayapi.API //通联收银宝api
@@ -210,6 +212,9 @@ func Init() {
WeixinMiniAPI2 = weixinapi.New(WeixinMiniAppID2, beego.AppConfig.String("weixinMiniSecret2"))
}
WeixinPageAPI = weixinapi.New(beego.AppConfig.String("weixinPageAppID"), beego.AppConfig.String("weixinPageSecret"))
+ if WeixinMiniAppID3 = beego.AppConfig.String("weixinMiniAppID3"); WeixinMiniAppID3 != "" {
+ WeixinMiniAPI3 = weixinapi.New(WeixinMiniAppID2, beego.AppConfig.String("weixinMiniSecret3"))
+ }
if globals.WxpayNotifyURL != "" {
// WxpayAPI = wxpayapi.New(beego.AppConfig.String("wxpayAppID"), beego.AppConfig.String("wxpayAppKey"), beego.AppConfig.String("wxpayAppMchID"))
WxpayAPI = wxpayapi.NewWithCertificate(beego.AppConfig.String("wxpayAppID"), beego.AppConfig.String("wxpayAppKey"), beego.AppConfig.String("wxpayAppMchID"),
From 24a30adca79c8884910dfbcea695cdc58ba4923b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 14:09:07 +0800
Subject: [PATCH 57/62] =?UTF-8?q?dada=E9=97=A8=E5=BA=97=E5=90=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/jxstore/tempop/tempop.go | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/business/jxstore/tempop/tempop.go b/business/jxstore/tempop/tempop.go
index d16862345..6d9cf1108 100644
--- a/business/jxstore/tempop/tempop.go
+++ b/business/jxstore/tempop/tempop.go
@@ -1589,17 +1589,14 @@ func UploadJdsImage(ctx *jxcontext.Context) (err error) {
)
list, err := dao.GetStoreCourierList(db, nil, []int{model.VendorIDDada}, model.StoreStatusAll, model.StoreAuditStatusAll)
for _, v := range list {
- stores, _ := dao.GetStoreList(db, []int{v.StoreID}, nil, nil, nil, "")
sd, _ := api.DadaAPI.ShopDetail(v.VendorStoreID)
if !strings.Contains(sd.StationName, globals.StoreName) {
shopInfo := &dadaapi.ShopInfo{
OriginShopID: v.VendorStoreID,
- StationName: globals.StoreName + "-" + stores[0].Name,
+ StationName: globals.StoreName + "-" + sd.StationName,
}
api.DadaAPI.ShopUpdate(shopInfo)
}
- fmt.Println("testcccc", v.StoreID)
- break
}
return err
}
From 8294f82ed5ddf80883e69e988d066631b096187b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 14:27:23 +0800
Subject: [PATCH 58/62] =?UTF-8?q?=E6=96=B0=E7=9A=84wexintoken?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../eventhub/syseventhub/syseventhub.go | 8 +++++
business/jxutils/tasks/configrefresh.go | 36 +++++++++++++++++++
main.go | 4 +++
3 files changed, 48 insertions(+)
diff --git a/business/jxutils/eventhub/syseventhub/syseventhub.go b/business/jxutils/eventhub/syseventhub/syseventhub.go
index a99d35e02..373d62240 100644
--- a/business/jxutils/eventhub/syseventhub/syseventhub.go
+++ b/business/jxutils/eventhub/syseventhub/syseventhub.go
@@ -15,6 +15,7 @@ const (
EventTypeWXToken = "wxToken"
EventTypeWX2Token = "wx2Token"
+ EventTypeWX3Token = "wx3Token"
EventTypeYLYToken = "ylyToken"
EventTypeWeimobToken = "weimobToken"
@@ -66,6 +67,13 @@ func (h *Hub) OnNewWX2Token(token string) {
})
}
+func (h *Hub) OnNewWX3Token(token string) {
+ h.eventHub.PostNewEvent(EventCategory, &eventhub.EventInfo{
+ Type: EventTypeWX3Token,
+ Data: token,
+ })
+}
+
func (h *Hub) OnNewYLYToken(token string) {
h.eventHub.PostNewEvent(EventCategory, &eventhub.EventInfo{
Type: EventTypeYLYToken,
diff --git a/business/jxutils/tasks/configrefresh.go b/business/jxutils/tasks/configrefresh.go
index abbff08c0..dc77418fa 100644
--- a/business/jxutils/tasks/configrefresh.go
+++ b/business/jxutils/tasks/configrefresh.go
@@ -165,6 +165,33 @@ func RefreshWeixin2Token() (err error) {
return err
}
+func RefreshWeixin3Token() (err error) {
+ if api.WeixinMiniAPI3 != nil {
+ err = RefreshConfig("wechat3", weixinTokenExpires, func() (token string, expireTimeStr string) {
+ globals.SugarLogger.Debugf("RefreshWeixin3Token RunMode:%s", beego.BConfig.RunMode)
+ if globals.IsMainProductEnv() {
+ if tokenInfo, err := api.WeixinMiniAPI3.CBRetrieveToken(); err == nil {
+ globals.SugarLogger.Debugf("RefreshWeixin3Token tokenInfo:%s", utils.Format4Output(tokenInfo, true))
+ token = tokenInfo.AccessToken
+ } else {
+ globals.SugarLogger.Errorf("RefreshWeixin3Token RefreshToken failed with error:%v", err)
+ }
+ } else {
+ if tokenInfo := getWX3TokenFromRemote(api.WeixinMiniAPI3.CBGetToken()); tokenInfo != nil {
+ expireTimeStr = utils.Time2Str(time.Now().Add(-weixinTokenExpires))
+ token = tokenInfo.Token
+ }
+ }
+ return token, expireTimeStr
+ }, func(value string) {
+ globals.SugarLogger.Debugf("RefreshWeixinToken setter value:%s", value)
+ syseventhub.SysEventHub.OnNewWX3Token(value)
+ api.WeixinMiniAPI3.CBSetToken(value)
+ })
+ }
+ return err
+}
+
func RefreshWeimobToken() (err error) {
if api.WeimobAPI != nil {
err = RefreshConfig("weimob", weimobTokenExpires, func() (token string, expireTimeStr string) {
@@ -315,6 +342,15 @@ func getWX2TokenFromRemote(oldToken string) (tokenInfo *syseventhub.TokenInfo) {
return tokenInfo
}
+func getWX3TokenFromRemote(oldToken string) (tokenInfo *syseventhub.TokenInfo) {
+ if !globals.IsMainProductEnv() && globals.GetWeixinTokenKey != "" && globals.GetWeixinTokenURL != "" {
+ tokenInfo = PollingRemotEvent(globals.GetWeixinTokenURL, 0, map[string]interface{}{
+ "oldToken": oldToken,
+ })
+ }
+ return tokenInfo
+}
+
func getYLYTokenFromRemote(oldToken string) (tokenInfo *syseventhub.TokenInfo) {
if !globals.IsMainProductEnv() && globals.GetWeixinTokenKey != "" && globals.GetYLYTokenURL != "" {
tokenInfo = PollingRemotEvent(globals.GetYLYTokenURL, 0, map[string]interface{}{
diff --git a/main.go b/main.go
index 6d77b0f82..e0d208afd 100644
--- a/main.go
+++ b/main.go
@@ -136,6 +136,10 @@ func main() {
globals.SugarLogger.Errorf("RefreshWeixin2Token failed with error:%s", err)
return
}
+ if err := tasks.RefreshWeixin3Token(); err != nil {
+ globals.SugarLogger.Errorf("RefreshWeixin2Token failed with error:%s", err)
+ return
+ }
// if err := tasks.RefreshWeimobToken(); err != nil {
// globals.SugarLogger.Errorf("RefreshWeimobToken failed with error:%s", err)
// return
From f124ba3b37dbd91659ea2796bea042c12cff9f98 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 14:29:52 +0800
Subject: [PATCH 59/62] =?UTF-8?q?=E6=96=B0=E7=9A=84wexintoken?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
main.go | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/main.go b/main.go
index e0d208afd..0ed0b892e 100644
--- a/main.go
+++ b/main.go
@@ -136,10 +136,10 @@ func main() {
globals.SugarLogger.Errorf("RefreshWeixin2Token failed with error:%s", err)
return
}
- if err := tasks.RefreshWeixin3Token(); err != nil {
- globals.SugarLogger.Errorf("RefreshWeixin2Token failed with error:%s", err)
- return
- }
+ // if err := tasks.RefreshWeixin3Token(); err != nil {
+ // globals.SugarLogger.Errorf("RefreshWeixin3Token failed with error:%s", err)
+ // return
+ // }
// if err := tasks.RefreshWeimobToken(); err != nil {
// globals.SugarLogger.Errorf("RefreshWeimobToken failed with error:%s", err)
// return
From 690057f46418f69117b8f35f4279f0d2d7aeaa7e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 14:32:58 +0800
Subject: [PATCH 60/62] ohuo
---
globals/api/api.go | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/globals/api/api.go b/globals/api/api.go
index 98d089a49..ff5420c37 100644
--- a/globals/api/api.go
+++ b/globals/api/api.go
@@ -213,7 +213,7 @@ func Init() {
}
WeixinPageAPI = weixinapi.New(beego.AppConfig.String("weixinPageAppID"), beego.AppConfig.String("weixinPageSecret"))
if WeixinMiniAppID3 = beego.AppConfig.String("weixinMiniAppID3"); WeixinMiniAppID3 != "" {
- WeixinMiniAPI3 = weixinapi.New(WeixinMiniAppID2, beego.AppConfig.String("weixinMiniSecret3"))
+ WeixinMiniAPI3 = weixinapi.New(WeixinMiniAppID3, beego.AppConfig.String("weixinMiniSecret3"))
}
if globals.WxpayNotifyURL != "" {
// WxpayAPI = wxpayapi.New(beego.AppConfig.String("wxpayAppID"), beego.AppConfig.String("wxpayAppKey"), beego.AppConfig.String("wxpayAppMchID"))
From 88abf3ec950ff207c1dca99a5fd00ac28edbc38b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 14:33:23 +0800
Subject: [PATCH 61/62] ohuo
---
main.go | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/main.go b/main.go
index 0ed0b892e..f11b45595 100644
--- a/main.go
+++ b/main.go
@@ -136,10 +136,10 @@ func main() {
globals.SugarLogger.Errorf("RefreshWeixin2Token failed with error:%s", err)
return
}
- // if err := tasks.RefreshWeixin3Token(); err != nil {
- // globals.SugarLogger.Errorf("RefreshWeixin3Token failed with error:%s", err)
- // return
- // }
+ if err := tasks.RefreshWeixin3Token(); err != nil {
+ globals.SugarLogger.Errorf("RefreshWeixin3Token failed with error:%s", err)
+ return
+ }
// if err := tasks.RefreshWeimobToken(); err != nil {
// globals.SugarLogger.Errorf("RefreshWeimobToken failed with error:%s", err)
// return
From 168e8a7feae08cc5df16ba26ba3a0eaada855075 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=8B=8F=E5=B0=B9=E5=B2=9A?= <770236076@qq.com>
Date: Wed, 12 Aug 2020 14:52:02 +0800
Subject: [PATCH 62/62] =?UTF-8?q?=E4=BA=AC=E4=B8=9C=E5=95=86=E5=9F=8E?=
=?UTF-8?q?=E4=B8=8D=E6=8A=A5=E9=94=99?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
business/partner/purchase/jdshop/callback.go | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/business/partner/purchase/jdshop/callback.go b/business/partner/purchase/jdshop/callback.go
index 804df7589..7b5e022ff 100644
--- a/business/partner/purchase/jdshop/callback.go
+++ b/business/partner/purchase/jdshop/callback.go
@@ -123,7 +123,7 @@ func result2Orders(msg *jdshopapi.CallBackResult) (order *model.GoodsOrder, err
order.ExpectedDeliveredTime = order.OrderCreatedAt.Add(time.Hour)
order.BusinessType = model.BusinessTypeImmediate
} else {
- globals.SugarLogger.Warnf("暂不支持的京东商城订单类型!type: %v", msg.OrderState)
+ globals.SugarLogger.Debugf("暂不支持的京东商城订单类型!type: %v", msg.OrderState)
return nil, err
}