diff --git a/controllers/cms_store.go b/controllers/cms_store.go index 5aa8938e8..e78cc939b 100644 --- a/controllers/cms_store.go +++ b/controllers/cms_store.go @@ -579,55 +579,58 @@ func (c *StoreController) GetStoreListByLocation() { c.callGetStoreListByLocation(func(params *tStoreGetStoreListByLocationParams) (retVal interface{}, errCode string, err error) { locationList, err := common.GetStoreListByLocation(params.Ctx, params.Lng, params.Lat, 20000, params.NeedWalkDistance, false, params.BrandID) - // 获取用户权限,如果是普通用户不展示b2b相关目录,如果是门店老板或者管理则展示全部 - userAuth, err := auth2.GetTokenInfo(params.Token) - if err != nil { - return nil, "", err - } - user, total, err := dao.GetUsers(dao.GetDB(), 1, "", []string{userAuth.UserID}, nil, nil, 0, 1) - if err != nil { - return nil, "", err - } - - // 获取位置附近门店列表 - storeIDs := make([]int, 0, len(locationList)) - for _, v := range locationList { - storeIDs = append(storeIDs, v.ID) - } - // 判断门店是不是b2b门店,如果是,用户必须为系统管理员(门店老板和运营人员) - store, err := dao.GetStoreList(dao.GetDB(), storeIDs, nil, nil, nil, nil, "") - if err != nil { - return nil, "", err - } - - isMatterStore := false - for _, v := range storeIDs { - if v == model.MatterStoreID { - isMatterStore = true + if params.Token != "" { + // 获取用户权限,如果是普通用户不展示b2b相关目录,如果是门店老板或者管理则展示全部 + userAuth, err := auth2.GetTokenInfo(params.Token) + if err != nil { + return nil, "", err + } + user, total, err := dao.GetUsers(dao.GetDB(), 1, "", []string{userAuth.UserID}, nil, nil, 0, 1) + if err != nil { + return nil, "", err } - } - result := make([]*common.Store4User, 0, 0) - for _, v := range store { - for _, s := range locationList { - if v.ID == s.ID { - if (v.BrandID == model.B2BNumberId || isMatterStore) && user[0].Type == model.YES { // 普通用户进入物料店和b2b店 - continue - } else { - result = append(result, s) + // 获取位置附近门店列表 + storeIDs := make([]int, 0, len(locationList)) + for _, v := range locationList { + storeIDs = append(storeIDs, v.ID) + } + // 判断门店是不是b2b门店,如果是,用户必须为系统管理员(门店老板和运营人员) + store, err := dao.GetStoreList(dao.GetDB(), storeIDs, nil, nil, nil, nil, "") + if err != nil { + return nil, "", err + } + + isMatterStore := false + for _, v := range storeIDs { + if v == model.MatterStoreID { + isMatterStore = true + } + } + + result := make([]*common.Store4User, 0, 0) + for _, v := range store { + for _, s := range locationList { + if v.ID == s.ID { + if (v.BrandID == model.B2BNumberId || isMatterStore) && user[0].Type == model.YES { // 普通用户进入物料店和b2b店 + continue + } else { + result = append(result, s) + } } } } - } - if total != model.YES { - return result, "", errors.New("")//errors.New("未注册用户") - } - if user[0].Type != model.YES { - return locationList, "", nil - }else { - return result, "", err + if total != model.YES { + return result, "", errors.New("") + } + if user[0].Type != model.YES { + return locationList, "", nil + } else { + return result, "", err + } } + return locationList, "", err }) }