request->input('market_id', 0); $banners = $this->bannerService->all(Banner::TYPE_APPLET_INDEX, $marketId); $categories = $this->categoryService->allForAppletIndex(); $activity = $this->activityService->allForAppletIndex(ActivityType::FLASH_SALE, $marketId); return $this->success([ 'banners' => $banners, 'categories' => $categories, 'activity' => ['type' => ActivityType::FLASH_SALE, 'goods' => $activity], 'tabs' => [ ['tab' => Tabs::APPLET_INDEX_RECOMMEND, 'title' => '推荐', 'subtitle' => '猜你喜欢', 'badge' => '', 'bg_color' => '#FF0000', 'font_color' => '#FFFFFF'], ['tab' => Tabs::APPLET_INDEX_NEW, 'title' => '懒族上新', 'subtitle' => '买点不一样', 'badge' => '限时', 'bg_color' => '#FF0000', 'font_color' => '#FFFFFF'], ['tab' => Tabs::APPLET_INDEX_FRESH, 'title' => '实时鲜货', 'subtitle' => '今天辛苦了', 'badge' => '好新鲜', 'bg_color' => '#FF0000', 'font_color' => '#FFFFFF'], ['tab' => Tabs::APPLET_INDEX_OFFICE, 'title' => '上班带餐', 'subtitle' => '轻奢快手菜', 'badge' => '不慌', 'bg_color' => '#FF0000', 'font_color' => '#FFFFFF'], ] ]); } /** * 用户首页,我的页面 * 1、用户信息,id、昵称、名字、头像 * 2、收藏、红包、积分 * 3、badge角标,待付款、待收货、已完成、售后, SSDB维护 * 4、为你推荐的商品列表 * @param UserIndexRequest $request * @return ResponseInterface */ public function userIndex(UserIndexRequest $request) { $params = $request->validated(); $data['user'] = $this->userInfoService->detail($params['user_id']); $data['user']['role'] = '商家'; $data['user']['collection_count'] = $this->collectStoreService->countByUser($params['user_id']); $data['user']['coupon_count'] = $this->couponService->countAvailableByUser($params['user_id']); $ssdb = ApplicationContext::getContainer()->get(SSDBTask::class); $data['badge'] = [ 'unpaid' => 0, 'receiving' => 0, 'completed' => 0, 'refund' => 0, ]; $badge = $ssdb->exec('hgetall', SsdbKeys::USER_ORDER_BADGE.$params['user_id']); if (!empty($badge)) { $data['badge'] = array_merge($data['badge'], $badge); } $data['block'] = $this->userCenterBlockService->all(); return $this->success($data); } }