public function testGetList_ページングが想定した結果が返る_表示件数1_ページ番号0() { $this->setUpBestProducts(); $this->expected = array(0 => array('best_id' => '1001', 'product_id' => '2', 'category_id' => '0', 'rank' => '1', 'title' => 'タイトルですよ', 'comment' => 'コメントですよ', 'creator_id' => '1', 'create_date' => '2000-01-01 00:00:00', 'update_date' => '2000-01-01 00:00:00', 'del_flg' => '0')); $this->actual = SC_Helper_BestProducts_Ex::getList(1, 0); $this->verify(); }
/** * おすすめ商品検索. * * @return array $arrBestProducts 検索結果配列 */ public function lfGetRanking() { $objRecommend = new SC_Helper_BestProducts_Ex(); // おすすめ商品取得 $arrRecommends = $objRecommend->getList(RECOMMEND_NUM); $response = array(); if (count($arrRecommends) > 0) { // 商品一覧を取得 $objQuery =& SC_Query_Ex::getSingletonInstance(); $objProduct = new SC_Product_Ex(); // where条件生成&セット $arrProductId = array(); foreach ($arrRecommends as $key => $val) { $arrProductId[] = $val['product_id']; } $arrProducts = $objProduct->getListByProductIds($objQuery, $arrProductId); // 税込金額を設定する SC_Product_Ex::setIncTaxToProducts($arrProducts); // おすすめ商品情報にマージ foreach ($arrRecommends as $key => $value) { if (isset($arrProducts[$value['product_id']])) { $product = $arrProducts[$value['product_id']]; if ($product['status'] == 1 && (!NOSTOCK_HIDDEN || ($product['stock_max'] >= 1 || $product['stock_unlimited_max'] == 1))) { $response[] = array_merge($value, $arrProducts[$value['product_id']]); } } else { // 削除済み商品は除外 unset($arrRecommends[$key]); } } } return $response; }
/** * 既に登録されている内容を取得する * @param SC_Helper_BestProducts_Ex $objRecommend * @return Array $arrReturnProducts データベースに登録されているおすすめ商品の配列 */ public function getRecommendProducts(SC_Helper_BestProducts_Ex &$objRecommend) { $arrList = $objRecommend->getList(); // product_id の一覧を作成 $product_ids = array(); foreach ($arrList as $value) { $product_ids[] = $value['product_id']; } $objProduct = new SC_Product_Ex(); $objQuery = $objQuery =& SC_Query_Ex::getSingletonInstance(); $arrProducts = $objProduct->getListByProductIds($objQuery, $product_ids); $arrReturnProducts = array(); foreach ($arrList as $data) { $data['main_list_image'] = $arrProducts[$data['product_id']]['main_list_image']; $data['name'] = $arrProducts[$data['product_id']]['name']; $arrReturnProducts[$data['rank']] = $data; } return $arrReturnProducts; }