/** * 規格を設定していない商品を商品規格テーブルに登録 * * @param array $arrList * @return void */ public function lfInsertDummyProductClass($arrList) { $objQuery = Application::alias('eccube.query'); /* @var $objDb DbHelper */ $objDb = Application::alias('eccube.helper.db'); // 配列の添字を定義 $checkArray = array('product_class_id', 'product_id', 'product_code', 'stock', 'stock_unlimited', 'price01', 'price02', 'sale_limit', 'deliv_fee', 'point_rate', 'product_type_id', 'down_filename', 'down_realfilename'); $sqlval = Utils::sfArrayIntersectKeys($arrList, $checkArray); $sqlval = Utils::arrayDefineIndexes($sqlval, $checkArray); $sqlval['stock_unlimited'] = $sqlval['stock_unlimited'] ? UNLIMITED_FLG_UNLIMITED : UNLIMITED_FLG_LIMITED; $sqlval['creator_id'] = strlen($_SESSION['member_id']) >= 1 ? $_SESSION['member_id'] : '0'; if (strlen($sqlval['product_class_id']) == 0) { $sqlval['product_class_id'] = $objQuery->nextVal('dtb_products_class_product_class_id'); $sqlval['create_date'] = 'CURRENT_TIMESTAMP'; $sqlval['update_date'] = 'CURRENT_TIMESTAMP'; // INSERTの実行 $objQuery->insert('dtb_products_class', $sqlval); } else { $sqlval['update_date'] = 'CURRENT_TIMESTAMP'; // UPDATEの実行 $objQuery->update('dtb_products_class', $sqlval, 'product_class_id = ?', array($sqlval['product_class_id'])); } return $sqlval['product_class_id']; }