Changeset 18609 for tmp/version-2_5-test/data/class/pages/admin/products/LC_Page_Admin_Products_UploadCSV.php
- Timestamp:
- 2010/03/11 10:35:11 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
tmp/version-2_5-test/data/class/pages/admin/products/LC_Page_Admin_Products_UploadCSV.php
r18562 r18609 26 26 27 27 /** 28 * CSV アップロードのページクラス.28 * 商品登録CSVのページクラス. 29 29 * 30 30 * @package Page 31 31 * @author LOCKON CO.,LTD. 32 32 * @version $Id:LC_Page_Admin_Products_UploadCSV.php 15532 2007-08-31 14:39:46Z nanasess $ 33 * 34 * FIXME 同一商品IDで商品規格違いを登録できない。(更新は可能) 33 35 */ 34 36 class LC_Page_Admin_Products_UploadCSV extends LC_Page { … … 54 56 $this->tpl_mainno = 'products'; 55 57 $this->tpl_subno = 'upload_csv'; 58 $this->tpl_subtitle = '商品登録CSV'; 56 59 } 57 60 … … 94 97 } 95 98 99 $objView->assignobj($this); 100 $objView->display('admin_popup_header.tpl'); 101 96 102 // 実行時間を制限しない 97 103 set_time_limit(0); 98 104 99 105 // 出力をバッファリングしない(==日本語自動変換もしない) 100 ob_end_ clean();106 ob_end_flush(); 101 107 102 108 // IEのために256バイト空文字出力 … … 185 191 // 商品件数カウント関数の実行 186 192 $objDb->sfCategory_Count($objQuery); 193 $objDb->sfMaker_Count($objQuery); 187 194 } else { 188 195 $objQuery->rollback(); … … 195 202 echo "<br/><a href=\"javascript:window.close()\">→閉じる</a>"; 196 203 flush(); 204 205 $objView->assignobj($this); 206 $objView->display('admin_popup_footer.tpl'); 207 197 208 exit; 198 209 break; … … 231 242 */ 232 243 function lfInitParam() { 244 245 // 商品ステータスの上限文字数の算出 246 $masterData = new SC_DB_MasterData_Ex(); 247 $arrSTATUS = $masterData->getMasterData("mtb_status"); 248 $product_flag_maxlen = max(array_keys($arrSTATUS)); 249 unset($arrSTATUS); 250 unset($masterData); 233 251 234 252 $this->objFormParam->addParam("商品ID", "product_id", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); … … 240 258 $this->objFormParam->addParam("商品名", "name", STEXT_LEN, "KVa", array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 241 259 $this->objFormParam->addParam("公開フラグ(1:公開 2:非公開)", "status", INT_LEN, "n", array("EXIST_CHECK","MAX_LENGTH_CHECK","NUM_CHECK")); 242 $this->objFormParam->addParam("商品ステータス", "product_flag", INT_LEN, "n", array("EXIST_CHECK","MAX_LENGTH_CHECK","NUM_CHECK"));260 $this->objFormParam->addParam("商品ステータス", "product_flag", $product_flag_maxlen, "n", array("EXIST_CHECK","MAX_LENGTH_CHECK","NUM_CHECK")); 243 261 $this->objFormParam->addParam("商品コード", "product_code", STEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 244 262 $this->objFormParam->addParam(NORMAL_PRICE_TITLE, "price01", PRICE_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); … … 251 269 $this->objFormParam->addParam("検索ワード", "comment3", LLTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 252 270 $this->objFormParam->addParam("備考欄(SHOP専用)", "note", LLTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 253 $this->objFormParam->addParam("一覧-メインコメント", "main_list_comment", LTEXT_LEN, "KVa", array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK"));254 $this->objFormParam->addParam("一覧-メイン画像", "main_list_image", LTEXT_LEN, "KVa", array(" EXIST_CHECK","FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK"));255 $this->objFormParam->addParam("メインコメント", "main_comment", L TEXT_LEN, "KVa", array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK"));256 $this->objFormParam->addParam("メイン画像", "main_image", LTEXT_LEN, "KVa", array(" EXIST_CHECK","FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK"));271 $this->objFormParam->addParam("一覧-メインコメント", "main_list_comment", MTEXT_LEN, "KVa", array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 272 $this->objFormParam->addParam("一覧-メイン画像", "main_list_image", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 273 $this->objFormParam->addParam("メインコメント", "main_comment", LLTEXT_LEN, "KVa", array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 274 $this->objFormParam->addParam("メイン画像", "main_image", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 257 275 $this->objFormParam->addParam("メイン拡大画像", "main_large_image", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 258 276 $this->objFormParam->addParam("カラー比較画像", "file1", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 259 277 $this->objFormParam->addParam("商品詳細ファイル", "file2", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 260 $this->objFormParam->addParam("詳細-サブタイトル(1)", "sub_title1", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK"));261 $this->objFormParam->addParam("詳細-サブコメント(1)", "sub_comment1", L TEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK"));278 $this->objFormParam->addParam("詳細-サブタイトル(1)", "sub_title1", STEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 279 $this->objFormParam->addParam("詳細-サブコメント(1)", "sub_comment1", LLTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 262 280 $this->objFormParam->addParam("詳細-サブ画像(1)", "sub_image1", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 263 281 $this->objFormParam->addParam("詳細-サブ拡大画像(1)", "sub_large_image1", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 264 282 265 $this->objFormParam->addParam("詳細-サブタイトル(2)", "sub_title2", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK"));266 $this->objFormParam->addParam("詳細-サブコメント(2)", "sub_comment2", L TEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK"));283 $this->objFormParam->addParam("詳細-サブタイトル(2)", "sub_title2", STEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 284 $this->objFormParam->addParam("詳細-サブコメント(2)", "sub_comment2", LLTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 267 285 $this->objFormParam->addParam("詳細-サブ画像(2)", "sub_image2", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 268 286 $this->objFormParam->addParam("詳細-サブ拡大画像(2)", "sub_large_image2", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 269 287 270 $this->objFormParam->addParam("詳細-サブタイトル(3)", "sub_title3", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK"));271 $this->objFormParam->addParam("詳細-サブコメント(3)", "sub_comment3", L TEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK"));288 $this->objFormParam->addParam("詳細-サブタイトル(3)", "sub_title3", STEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 289 $this->objFormParam->addParam("詳細-サブコメント(3)", "sub_comment3", LLTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 272 290 $this->objFormParam->addParam("詳細-サブ画像(3)", "sub_image3", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 273 291 $this->objFormParam->addParam("詳細-サブ拡大画像(3)", "sub_large_image3", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 274 292 275 $this->objFormParam->addParam("詳細-サブタイトル(4)", "sub_title4", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK"));276 $this->objFormParam->addParam("詳細-サブコメント(4)", "sub_comment4", L TEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK"));293 $this->objFormParam->addParam("詳細-サブタイトル(4)", "sub_title4", STEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 294 $this->objFormParam->addParam("詳細-サブコメント(4)", "sub_comment4", LLTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 277 295 $this->objFormParam->addParam("詳細-サブ画像(4)", "sub_image4", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 278 296 $this->objFormParam->addParam("詳細-サブ拡大画像(4)", "sub_large_image4", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 279 297 280 $this->objFormParam->addParam("詳細-サブタイトル(5)", "sub_title5", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK"));281 $this->objFormParam->addParam("詳細-サブコメント(5)", "sub_comment5", L TEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK"));298 $this->objFormParam->addParam("詳細-サブタイトル(5)", "sub_title5", STEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 299 $this->objFormParam->addParam("詳細-サブコメント(5)", "sub_comment5", LLTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 282 300 $this->objFormParam->addParam("詳細-サブ画像(5)", "sub_image5", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); 283 301 $this->objFormParam->addParam("詳細-サブ拡大画像(5)", "sub_large_image5", LTEXT_LEN, "KVa", array("FILE_EXISTS","SPTAB_CHECK","MAX_LENGTH_CHECK")); … … 286 304 287 305 for ($cnt = 1; $cnt <= RECOMMEND_PRODUCT_MAX; $cnt++) { 288 $this->objFormParam->addParam(" おすすめ商品($cnt)", "recommend_product_id$cnt", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK"));289 $this->objFormParam->addParam(" 詳細-サブコメント($cnt)", "recommend_comment$cnt", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK"));306 $this->objFormParam->addParam("関連商品($cnt)", "recommend_product_id$cnt", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); 307 $this->objFormParam->addParam("関連商品コメント($cnt)", "recommend_comment$cnt", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); 290 308 } 291 309 … … 346 364 $sqlval['creator_id'] = $_SESSION['member_id']; 347 365 348 if($sqlval['sale_limit'] == "") {349 $sqlval['sale_unlimited'] = '1';350 } else {351 $sqlval['sale_unlimited'] = '0';352 }353 354 366 if($sqlval['status'] == "") { 355 367 $sqlval['status'] = 2; 356 368 } 357 369 358 if($ arrRet['product_id'] != "" && $arrRet['product_class_id'] != "") {370 if($sqlval['product_id'] != "") { 359 371 360 372 // UPDATEの実行 361 373 $where = "product_id = ?"; 362 374 $objQuery->update("dtb_products", $sqlval, $where, array($sqlval['product_id'])); 375 376 $product_id = $sqlval['product_id']; 363 377 } else { 364 365 378 // 新規登録 366 // postgresqlとmysqlとで処理を分ける 367 if (DB_TYPE == "pgsql") { 368 $product_id = $objQuery->nextval("dtb_products","product_id"); 369 }elseif (DB_TYPE == "mysql") { 370 $product_id = $objQuery->get_auto_increment("dtb_products"); 371 } 372 $sqlval['product_id'] = $product_id; 379 380 unset($sqlval['product_id']); 373 381 $sqlval['create_date'] = $time; 374 382 375 383 // INSERTの実行 376 384 $objQuery->insert("dtb_products", $sqlval); 385 386 $product_id = $objQuery->currval("dtb_products","product_id"); 377 387 } 378 388 379 389 // カテゴリ登録 380 390 $arrCategory_id = explode("|", $arrRet["category_id"]); 381 $objDb->updateProductCategories($arrCategory_id, $ sqlval['product_id']);391 $objDb->updateProductCategories($arrCategory_id, $product_id); 382 392 383 393 // 規格登録 384 $this->lfRegistProductClass($objQuery, $arrRet, $ sqlval['product_id'], $arrRet['product_class_id']);385 386 // おすすめ商品登録387 $objQuery->delete("dtb_recommend_products", "product_id = ?", array($ sqlval['product_id']));394 $this->lfRegistProductClass($objQuery, $arrRet, $product_id, $arrRet['product_class_id']); 395 396 // 関連商品登録 397 $objQuery->delete("dtb_recommend_products", "product_id = ?", array($product_id)); 388 398 for($i = 1; $i <= RECOMMEND_PRODUCT_MAX; $i++) { 389 399 $keyname = "recommend_product_id" . $i; … … 392 402 $arrProduct = $objQuery->select("product_id", "dtb_products", "product_id = ?", array($arrRet[$keyname])); 393 403 if($arrProduct[0]['product_id'] != "") { 394 $arrval['product_id'] = $ sqlval['product_id'];404 $arrval['product_id'] = $product_id; 395 405 $arrval['recommend_product_id'] = $arrProduct[0]['product_id']; 396 406 $arrval['comment'] = $arrRet[$comment_key];
Note: See TracChangeset
for help on using the changeset viewer.