Changeset 20069 for branches/version-2_5-dev/data/class
- Timestamp:
- 2011/02/02 16:56:53 (15 years ago)
- bzr:base-revision:
- [email protected]
- bzr:committer:
- Kentaro Ohkouchi <[email protected]>
- bzr:file-ids:
data/Smarty/templates/admin/basis/delivery_input.tpl 15732@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Fadmin%2Fbasis%2Fdelivery_input.tpl
data/Smarty/templates/admin/products/confirm.tpl 15732@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Fadmin%2Fproducts%2Fconfirm.tpl
data/Smarty/templates/admin/products/product.tpl 15732@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Fadmin%2Fproducts%2Fproduct.tpl
data/Smarty/templates/admin/products/product_class.tpl 15732@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Fadmin%2Fproducts%2Fproduct_class.tpl
data/Smarty/templates/admin/products/product_class_confirm.tpl 15732@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2FSmarty%2Ftemplates%2Fdefault%2Fadmin%2Fproducts%2Fproduct_class_confirm.tpl
data/class/SC_Product.php 18277@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Fcomu-ver2%2Fdata%2Fclass%2FSC_Product.php
data/class/SC_View.php 15078@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2FSC_View.php
data/class/helper/SC_Helper_Purchase.php sc_helper_purchase.p-20101020100530-jyaoa7ch9pdfjqzp-1
data/class/pages/LC_Page_Index.php 15078@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2FLC_Page_Index.php
data/class/pages/admin/basis/LC_Page_Admin_Basis_Delivery_Input.php 15297@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fadmin%2Fbasis%2FLC_Page_Admin_Basis_Delivery_Input.php
data/class/pages/admin/products/LC_Page_Admin_Products_Product.php 15342@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fadmin%2Fproducts%2FLC_Page_Admin_Products_Product.php
data/class/pages/admin/products/LC_Page_Admin_Products_ProductClass.php 15559@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fadmin%2Fproducts%2FLC_Page_Admin_Products_ProductClass.php
data/class/pages/shopping/LC_Page_Shopping.php 15223@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fshopping%2FLC_Page_Shopping.php
data/class/pages/shopping/LC_Page_Shopping_Deliv.php 15223@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fshopping%2FLC_Page_Shopping_Deliv.php
data/class/pages/shopping/LC_Page_Shopping_Payment.php 15223@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Fpages%2Fshopping%2FLC_Page_Shopping_Payment.php
html/install/sql/insert_data.sql 15078@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fhtml%2Finstall%2Fsql%2Finsert_data.sql- bzr:mapping-version:
- v4
- bzr:merge:
[email protected]- bzr:repository-uuid:
- 1e3b908f-19a9-db11-a64c-001125224ba8
- bzr:revision-id:
- [email protected]
- bzr:revno:
- 2797
- bzr:revprop:branch-nick:
- branches/version-2_5-dev
- bzr:root:
- branches/version-2_5-dev
- bzr:text-revisions:
data/Smarty/templates/admin/basis/delivery_input.tpl [email protected]
data/Smarty/templates/admin/products/confirm.tpl [email protected]
data/Smarty/templates/admin/products/product.tpl [email protected]
data/Smarty/templates/admin/products/product_class.tpl [email protected]
data/Smarty/templates/admin/products/product_class_confirm.tpl [email protected]
data/class/SC_Product.php [email protected]
data/class/SC_View.php [email protected]
data/class/helper/SC_Helper_Purchase.php [email protected]
data/class/pages/LC_Page_Index.php [email protected]
data/class/pages/admin/basis/LC_Page_Admin_Basis_Delivery_Input.php [email protected]
data/class/pages/admin/products/LC_Page_Admin_Products_Product.php [email protected]
data/class/pages/admin/products/LC_Page_Admin_Products_ProductClass.php [email protected]
data/class/pages/shopping/LC_Page_Shopping.php [email protected]
data/class/pages/shopping/LC_Page_Shopping_Deliv.php [email protected]
data/class/pages/shopping/LC_Page_Shopping_Payment.php [email protected]- bzr:timestamp:
- 2011-02-02 16:56:47.275000095 +0900
- bzr:user-agent:
- bzr2.2.1+bzr-svn1.0.4
- svn:original-date:
- 2011-02-02T07:56:47.275000Z
- Location:
- branches/version-2_5-dev/data/class
- Files:
-
- 9 edited
-
SC_Product.php (modified) (1 diff)
-
SC_View.php (modified) (1 diff)
-
helper/SC_Helper_Purchase.php (modified) (2 diffs)
-
pages/admin/basis/LC_Page_Admin_Basis_Delivery_Input.php (modified) (4 diffs)
-
pages/admin/products/LC_Page_Admin_Products_Product.php (modified) (4 diffs)
-
pages/admin/products/LC_Page_Admin_Products_ProductClass.php (modified) (5 diffs)
-
pages/shopping/LC_Page_Shopping.php (modified) (1 diff)
-
pages/shopping/LC_Page_Shopping_Deliv.php (modified) (2 diffs)
-
pages/shopping/LC_Page_Shopping_Payment.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_5-dev/data/class/SC_Product.php
r20048 r20069 584 584 // TODO エラーハンドリング 585 585 return true; 586 }587 588 /**589 * 引数の商品規格IDで有効な支払方法IDの配列を取得する.590 *591 * @param array $productClassIds 商品規格IDの配列592 * @return array 支払方法IDの配列593 */594 function getEnablePaymentIds($productClassIds) {595 $size = count($productClassIds);596 $objQuery =& SC_Query::getSingletonInstance();597 $objQuery->groupby = 'GROUP BY payment_id HAVING COUNT(payment_id) = ?';598 $paymentIds = $objQuery->getCol('payment_id', 'dtb_payment_options',599 'product_class_id IN (' . implode(', ', array_pad(array(), $size, '?')) . ')',600 array_merge($productClassIds, array($size)),601 MDB2_FETCHMODE_ORDERED);602 return $paymentIds;603 }604 605 /**606 * 商品規格に支払方法を設定する.607 *608 * TODO 現在は DELETE/INSERT だが, UPDATE を検討する.609 *610 * @param integer $productClassId 商品規格ID611 * @param array 設定する支払方法IDの配列612 * @return void613 */614 function setPaymentOptions($productClassId, $paymentIds) {615 $val['product_class_id'] = $productClassId;616 617 $objQuery =& SC_Query::getSingletonInstance();618 $objQuery->delete('dtb_payment_options', 'product_class_id = ?', array($productClassId));619 $rank = 1;620 foreach ($paymentIds as $paymentId) {621 $val['payment_id'] = $paymentId;622 $val['rank'] = $rank;623 $objQuery->insert('dtb_payment_options', $val);624 $rank++;625 }626 586 } 627 587 -
branches/version-2_5-dev/data/class/SC_View.php
r20032 r20069 66 66 67 67 // サイト情報を取得する 68 // XXX 要動作確認. 不要の可能性有り68 // XXX LC_Page 配下で取得した方が良い 69 69 if($siteinfo) { 70 70 if(!defined('LOAD_SITEINFO')) { -
branches/version-2_5-dev/data/class/helper/SC_Helper_Purchase.php
r19993 r20069 341 341 * 342 342 * @param integer $total 購入金額 343 * @param array $productClassIds 購入する商品規格IDの配列343 * @param integer $deliv_id 配送業者ID 344 344 * @return array 購入金額に応じた支払方法の配列 345 345 */ 346 function getPayment($total, $productClassIds) { 347 // 有効な支払方法を取得 348 $objProduct = new SC_Product(); 349 $paymentIds = $objProduct->getEnablePaymentIds($productClassIds); 350 346 function getPaymentsByPrice($total, $deliv_id) { 347 348 $arrPaymentIds = $this->getPayments($deliv_id); 351 349 $objQuery =& SC_Query::getSingletonInstance(); 352 350 353 351 // 削除されていない支払方法を取得 354 $where = 'del_flg = 0 AND payment_id IN (' . implode(', ', array_pad(array(), count($ paymentIds), '?')) . ')';352 $where = 'del_flg = 0 AND payment_id IN (' . implode(', ', array_pad(array(), count($arrPaymentIds), '?')) . ')'; 355 353 $objQuery->setOrder("rank DESC"); 356 $payments = $objQuery->select("payment_id, payment_method, rule, upper_rule, note, payment_image", "dtb_payment", $where, $ paymentIds);354 $payments = $objQuery->select("payment_id, payment_method, rule, upper_rule, note, payment_image", "dtb_payment", $where, $arrPaymentIds); 357 355 358 356 foreach ($payments as $data) { … … 485 483 486 484 /** 487 * 商品種別ID から配送業者 IDを取得する.485 * 商品種別ID から配送業者を取得する. 488 486 */ 489 487 function getDeliv($productTypeId) { 490 488 $objQuery =& SC_Query::getSingletonInstance(); 491 $result = $objQuery->get("deliv_id", "dtb_deliv", "product_type_id = ?",489 return $objQuery->select("*", "dtb_deliv", "product_type_id = ?", 492 490 array($productTypeId)); 493 // XXX ダウンロード商品の場合の dtb_shipping の扱い 494 return is_null($result) ? 0 : $result; 491 } 492 493 /** 494 * 配送業者ID から, 有効な支払方法を取得する. 495 * 496 * @param integer $deliv_id 配送業者ID 497 * @return array 有効な支払方法IDの配列 498 */ 499 function getPayments($deliv_id) { 500 $objQuery =& SC_Query::getSingletonInstance(); 501 $from = <<< __EOS__ 502 dtb_deliv T1 503 LEFT JOIN dtb_payment_options T2 504 ON T1.deliv_id = T2.deliv_id 505 __EOS__; 506 $objQuery->setOrder('T2.rank'); 507 return $objQuery->getCol('payment_id', $from, 'T1.deliv_id = ?', 508 array($deliv_id), MDB2_FETCHMODE_ORDERED); 495 509 } 496 510 -
branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Delivery_Input.php
r20041 r20069 56 56 $this->arrPref = $masterData->getMasterData('mtb_pref'); 57 57 $this->arrProductType = $masterData->getMasterData("mtb_product_type"); 58 $this->arrPayments = SC_Helper_DB_Ex::sfGetIDValueList("dtb_payment", "payment_id", "payment_method"); 58 59 $this->tpl_subtitle = '配送業者設定'; 59 60 $this->mode = $this->getMode(); … … 134 135 $this->objFormParam->addParam("伝票No.確認URL", "confirm_url", STEXT_LEN, "n", array("URL_CHECK", "MAX_LENGTH_CHECK"), "http://"); 135 136 $this->objFormParam->addParam("取扱商品種別", "product_type_id", INT_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "MAX_LENGTH_CHECK")); 137 $this->objFormParam->addParam("取扱支払方法", "payment_ids", INT_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "MAX_LENGTH_CHECK")); 136 138 137 139 for($cnt = 1; $cnt <= DELIVTIME_MAX; $cnt++) { … … 258 260 } 259 261 } 262 } 263 264 // TODO 支払方法登録 265 $objQuery->delete('dtb_payment_options', 'deliv_id = ?', array($_POST['deliv_id'])); 266 $sqlval = array(); 267 $i = 1; 268 foreach ($arrRet['payment_ids'] as $val) { 269 $sqlval['deliv_id'] = $deliv_id; 270 $sqlval['payment_id'] = $val; 271 $sqlval['rank'] = $i; 272 $objQuery->insert('dtb_payment_options', $sqlval); 273 $i++; 260 274 } 261 275 $objQuery->commit(); … … 288 302 $arrRet = $objQuery->select($col, $table, $where, array($deliv_id)); 289 303 $this->objFormParam->setParamList($arrRet, 'fee'); 304 // 支払方法 305 $col = 'payment_id'; 306 $where = 'deliv_id = ? ORDER BY rank'; 307 $table = 'dtb_payment_options'; 308 $arrRet = $objQuery->select($col, $table, $where, array($deliv_id)); 309 $arrPaymentIds = array(); 310 foreach ($arrRet as $val) { 311 $arrPaymentIds[] = $val['payment_id']; 312 } 313 $this->objFormParam->setValue('payment_ids', $arrPaymentIds); 290 314 } 291 315 -
branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Product.php
r20044 r20069 74 74 $this->arrProductType = $masterData->getMasterData("mtb_product_type"); 75 75 $this->arrMaker = SC_Helper_DB_Ex::sfGetIDValueList("dtb_maker", "maker_id", "name"); 76 $this->arrPayments = SC_Helper_DB_Ex::sfGetIDValueList("dtb_payment", "payment_id", "payment_method");77 76 $this->tpl_nonclass = true; 78 77 } … … 143 142 $productStatus= $objProduct->getProductStatus(array($_POST['product_id'])); 144 143 $this->arrForm['product_status'] = $productStatus[$_POST['product_id']]; 145 $this->arrForm['payment_ids'] = $objProduct->getEnablePaymentIds(array($this->arrForm['product_class_id']));146 144 147 145 // DBデータから画像ファイル名の読込 … … 684 682 } 685 683 686 // 支払方法チェック687 if (empty($array['payment_ids'])) {688 $objErr->arrErr['payment_ids'] = "※ 支払方法は、いずれかを選択してください。<br />";689 }690 691 684 //ダウンロード商品チェック 692 685 if($array['product_type_id'] == PRODUCT_TYPE_DOWNLOAD) { … … 932 925 933 926 } 934 935 $objProduct = new SC_Product();936 $objProduct->setPaymentOptions($sqlval['product_class_id'], $arrList['payment_ids']);937 927 } 938 928 -
branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_ProductClass.php
r20041 r20069 56 56 $masterData = new SC_DB_MasterData_Ex(); 57 57 $this->arrProductType = $masterData->getMasterData("mtb_product_type"); 58 $this->arrPayments = SC_Helper_DB_Ex::sfGetIDValueList("dtb_payment", "payment_id", "payment_method");59 58 } 60 59 … … 298 297 } 299 298 300 // 支払方法登録301 $objProduct = new SC_Product();302 $objProduct->setPaymentOptions($pVal['product_class_id'], $arrList['payment_ids:'.$i]);303 299 $i++; 304 300 } … … 373 369 } 374 370 375 // 支払方法チェック376 if (empty($array['payment_ids:' . $no])) {377 $objErr->arrErr['payment_ids:' . $no] = "※ 支払方法は、いずれかを選択してください。<br />";378 }379 380 371 //ダウンロード商品チェック 381 372 if($array["product_type_id:".$no] == PRODUCT_TYPE_DOWNLOAD) { … … 397 388 if(count($objErr->arrErr) > 0) { 398 389 $objErr->arrErr["error:".$no] = $objErr->arrErr["product_type_id:".$no]; 399 $objErr->arrErr["error:".$no] .= $objErr->arrErr["payment_ids:".$no];400 390 $objErr->arrErr["error:".$no] .= $objErr->arrErr["product_code:".$no]; 401 391 $objErr->arrErr["error:".$no] .= $objErr->arrErr["price01:".$no]; … … 490 480 break; 491 481 492 case 'product_class_id':493 $this->arrForm["payment_ids:" . ($i+1)] = $objProduct->getEnablePaymentIds(array($val));494 break;495 482 default: 496 483 } -
branches/version-2_5-dev/data/class/pages/shopping/LC_Page_Shopping.php
r20041 r20069 290 290 } 291 291 292 $ deliv_id= $objPurchase->getDeliv($productTypeId);293 $order_val = array('deliv_id' => $ deliv_id);294 $shipping_val = array('deliv_id' => $ deliv_id);292 $arrDeliv = $objPurchase->getDeliv($productTypeId); 293 $order_val = array('deliv_id' => $arrDeliv[0]['deliv_id']); 294 $shipping_val = array('deliv_id' => $arrDeliv[0]['deliv_id']); 295 295 296 296 /* -
branches/version-2_5-dev/data/class/pages/shopping/LC_Page_Shopping_Deliv.php
r20044 r20069 172 172 $objPurchase->copyFromCustomer($sqlval, $objCustomer, 'shipping'); 173 173 // FIXME ダウンロード商品の場合は配送無し 174 $sqlval['deliv_id'] = $objPurchase->getDeliv($this->cartKey); 174 $arrDeliv = $objPurchase->getDeliv($this->cartKey); 175 $sqlval['deliv_id'] = $arrDeliv[0]['deliv_id']; 175 176 $objPurchase->saveShippingTemp($sqlval); 176 177 $objPurchase->saveOrderTemp($uniqid, $sqlval, $objCustomer); … … 193 194 case 'customer_addr': 194 195 $sqlval = array(); 195 $sqlval['deliv_id'] = $objPurchase->getDeliv($this->cartKey); 196 $arrDeliv = $objPurchase->getDeliv($this->cartKey); 197 $sqlval['deliv_id'] = $arrDeliv[0]['deliv_id']; 196 198 // 会員登録住所がチェックされている場合 197 199 if ($_POST['deliv_check'] == '-1') { -
branches/version-2_5-dev/data/class/pages/shopping/LC_Page_Shopping_Payment.php
r20041 r20069 137 137 $total_inctax = $objCartSess->getAllProductsTotal($this->cartKey); 138 138 139 // 支払い方法の取得 140 $this->arrPayment = $objPurchase->getPayment($total_inctax, $objCartSess->getAllProductClassID($this->cartKey)); 139 // FIXME 支払い方法の取得 140 $arrDeliv = $objPurchase->getDeliv($this->cartKey); 141 $this->arrPayment = $objPurchase->getPaymentsByPrice($total_inctax, $arrDeliv[0]['deliv_id']); 141 142 142 143 switch($this->getMode()) {
Note: See TracChangeset
for help on using the changeset viewer.
