From a5a10fa53ca52b9b3cafefb34200154cc022ee63 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, 15 May 2020 17:29:12 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=AC=E4=B8=9C=E5=95=86=E5=9F=8E=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E9=97=A8=E5=BA=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/partner/purchase/jdshop/store.go | 39 +++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/business/partner/purchase/jdshop/store.go b/business/partner/purchase/jdshop/store.go index a962b6dfa..d0182a89b 100644 --- a/business/partner/purchase/jdshop/store.go +++ b/business/partner/purchase/jdshop/store.go @@ -20,6 +20,34 @@ func (p *PurchaseHandler) ReadStore(ctx *jxcontext.Context, vendorOrgCode, vendo // stoerIDs为nil表示所有 func (p *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName string) (err error) { + store, err := dao.GetStoreDetail(db, storeID, model.VendorIDJDShop) + if err != nil { + return err + } + data, _, err := jxutils.DownloadFileByURL(jdshopapi.JdsStoreImg) + timeMap := map[string]string{ + "businessBeginTime": int2TimeStr(int(store.OpenTime1)), + "businessEndTime": int2TimeStr(int(store.CloseTime1)), + } + timeJSON, _ := json.Marshal(timeMap) + updateEntityStoreParam := &jdshopapi.UpdateEntityStoreParam{ + StoreID: utils.Str2Int(store.VendorStoreID), + Name: store.Name, + AddCode: store.JdsCode, + AddCodeName: store.DistrictName, + AddName: store.ProvinceName + store.CityName + store.DistrictName + "@!" + store.Address, + Coordinate: utils.Float64ToStr(jxutils.IntCoordinate2Standard(store.Lat)) + "," + utils.Float64ToStr(jxutils.IntCoordinate2Standard(store.Lng)), + Phone: store.Tel1, + ExtendJSON: string(timeJSON), + ImageFile: base64.StdEncoding.EncodeToString(data), + } + err = api.JdShopAPI.UpdateEntityStore(updateEntityStoreParam) + if err == nil { + if store.SyncStatus&(model.SyncFlagNewMask|model.SyncFlagStoreStatus) != 0 { + mergeStatus := jxutils.MergeStoreStatus(store.Status, store.VendorStatus) + err = api.JdShopAPI.UpdateStoreStatus(utils.Str2Int(store.VendorStoreID), jxStatus2JdsStatus(mergeStatus)) + } + } return err } @@ -90,3 +118,14 @@ func int2TimeStr(time int) (str string) { str += utils.Int2Str(time % 10) return str } + +func jxStatus2JdsStatus(status int) (result int) { + if status == model.StoreStatusOpened { + result = jdshopapi.JdsStoreStatusOnline + } else if status == model.StoreStatusHaveRest || status == model.StoreStatusClosed { + result = jdshopapi.JdsStoreStatusRest + } else { + result = jdshopapi.JdsStoreStatusDisable + } + return result +}