diff --git a/business/partner/purchase/mtwm/store.go b/business/partner/purchase/mtwm/store.go index 675d2b242..987931332 100644 --- a/business/partner/purchase/mtwm/store.go +++ b/business/partner/purchase/mtwm/store.go @@ -103,57 +103,58 @@ func (p *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin if err != nil { return err } - remoteStoreInfo, err := api.MtwmAPI.PoiGet(storeDetail.VendorStoreID) - if err != nil { - return err - } openTime := [][2]int16{[2]int16{storeDetail.OpenTime1, storeDetail.CloseTime1}} if storeDetail.OpenTime2 > 0 { openTime = append(openTime, [2]int16{storeDetail.OpenTime2, storeDetail.CloseTime2}) } - params := map[string]interface{}{ - "name": utils.Interface2String(remoteStoreInfo["name"]), //jxutils.ComposeStoreName(storeDetail.Store.Name, model.VendorIDMTWM), - "phone": storeDetail.Tel1, - "shipping_fee": jxutils.IntPrice2Standard(int64(storeDetail.DeliveryFee)), - "shipping_time": openTimeJX2Mtwm(openTime), - "third_tag_name": "蔬菜", - } - if true { //storeDetail.SyncStatus&(model.SyncFlagNewMask|model.SyncFlagStoreAddress) != 0 { - params["address"] = storeDetail.Address - params["longitude"] = jxutils.IntCoordinate2Standard(storeDetail.Lng) - params["latitude"] = jxutils.IntCoordinate2Standard(storeDetail.Lat) - } - params["open_level"], params["is_online"] = bizStatusJX2Mtwm(jxutils.MergeStoreStatus(storeDetail.Status, storeDetail.VendorStatus)) - globals.SugarLogger.Debug(utils.Format4Output(params, false)) - if globals.EnableMtwmStoreWrite { - err = api.MtwmAPI.PoiSave(storeDetail.VendorStoreID, params) - } - // openLevel, isOnline := bizStatusJX2Mtwm(jxutils.MergeStoreStatus(storeDetail.Status, storeDetail.VendorStatus)) - // if globals.EnableMtwmStoreWrite { - // if isOnline != mtwmapi.PoiStatusOnline { - // err = api.MtwmAPI.PoiOffline(storeDetail.VendorStoreID) - // } else { - // if err = api.MtwmAPI.PoiOnline(storeDetail.VendorStoreID); err == nil { - // // 这个函数成功返回也并不表示上线成功。。。 - // remoteStoreInfo, err2 := api.MtwmAPI.PoiGet(storeDetail.VendorStoreID) - // if err = err2; err != nil { - // return err - // } - // if int(utils.MustInterface2Int64(remoteStoreInfo["is_online"])) == mtwmapi.PoiStatusOnline { - // if openLevel == mtwmapi.PoiOpenLevelHaveRest { - // err = api.MtwmAPI.PoiClose(storeDetail.VendorStoreID) - // } else { - // err = api.MtwmAPI.PoiOpen(storeDetail.VendorStoreID) - // } - // if err == nil { - // err = api.MtwmAPI.PoiShipTimeUpdate(storeDetail.VendorStoreID, openTimeJX2Mtwm(openTime)) - // } - // } else { - // err = errors.New("门店还未上线,不能修改营业状态") - // } - // } - // } + openLevel, isOnline := bizStatusJX2Mtwm(jxutils.MergeStoreStatus(storeDetail.Status, storeDetail.VendorStatus)) + // remoteStoreInfo, err := api.MtwmAPI.PoiGet(storeDetail.VendorStoreID) + // if err != nil { + // return err // } + // params := map[string]interface{}{ + // "name": utils.Interface2String(remoteStoreInfo["name"]), //jxutils.ComposeStoreName(storeDetail.Store.Name, model.VendorIDMTWM), + // "phone": storeDetail.Tel1, + // "shipping_fee": jxutils.IntPrice2Standard(int64(storeDetail.DeliveryFee)), + // "shipping_time": openTimeJX2Mtwm(openTime), + // "third_tag_name": "蔬菜", + // } + // if true { //storeDetail.SyncStatus&(model.SyncFlagNewMask|model.SyncFlagStoreAddress) != 0 { + // params["address"] = storeDetail.Address + // params["longitude"] = jxutils.IntCoordinate2Standard(storeDetail.Lng) + // params["latitude"] = jxutils.IntCoordinate2Standard(storeDetail.Lat) + // } + // params["open_level"] = openLevel + // params["is_online"] = isOnline + // globals.SugarLogger.Debug(utils.Format4Output(params, false)) + // if globals.EnableMtwmStoreWrite { + // err = api.MtwmAPI.PoiSave(storeDetail.VendorStoreID, params) + // } + if globals.EnableMtwmStoreWrite { + if isOnline != mtwmapi.PoiStatusOnline { + err = api.MtwmAPI.PoiOffline(storeDetail.VendorStoreID) + } else { + if err = api.MtwmAPI.PoiOnline(storeDetail.VendorStoreID); err == nil { + // 这个函数成功返回也并不表示上线成功。。。 + remoteStoreInfo, err2 := api.MtwmAPI.PoiGet(storeDetail.VendorStoreID) + if err = err2; err != nil { + return err + } + if int(utils.MustInterface2Int64(remoteStoreInfo["is_online"])) == mtwmapi.PoiStatusOnline { + if openLevel == mtwmapi.PoiOpenLevelHaveRest { + err = api.MtwmAPI.PoiClose(storeDetail.VendorStoreID) + } else { + err = api.MtwmAPI.PoiOpen(storeDetail.VendorStoreID) + } + if err == nil { + err = api.MtwmAPI.PoiShipTimeUpdate(storeDetail.VendorStoreID, openTimeJX2Mtwm(openTime)) + } + } else { + err = errors.New("门店还未上线,不能修改营业状态") + } + } + } + } return err }