Changeset 20660
- Timestamp:
- 2011/03/16 10:10:33 (13 years ago)
- bzr:base-revision:
- ohkouchi@loop-az.jp-20110316002352-0wwpjqf6mp3zqe21
- bzr:committer:
- Kentaro Ohkouchi <ohkouchi@loop-az.jp>
- bzr:file-ids:
data/class/helper/SC_Helper_Purchase.php sc_helper_purchase.p-20101020100530-jyaoa7ch9pdfjqzp-1
data/class/util/SC_Utils.php 15078@1e3b908f-19a9-db11-a64c-001125224ba8:branches%2Ffeature-module-update%2Fdata%2Fclass%2Futil%2FSC_Utils.php- bzr:mapping-version:
- v4
- bzr:merge:
ohkouchi@loop-az.jp-20110316010725-it8vhxhcceh2y7vk- bzr:repository-uuid:
- 1e3b908f-19a9-db11-a64c-001125224ba8
- bzr:revision-id:
- ohkouchi@loop-az.jp-20110316010955-v503h2qhtunovfpq
- bzr:revno:
- 3380
- bzr:revprop:branch-nick:
- branches/version-2_5-dev
- bzr:root:
- branches/version-2_5-dev
- bzr:text-revisions:
data/class/helper/SC_Helper_Purchase.php ohkouchi@loop-az.jp-20110316010725-it8vhxhcceh2y7vk
data/class/util/SC_Utils.php ohkouchi@loop-az.jp-20110316010725-it8vhxhcceh2y7vk- bzr:timestamp:
- 2011-03-16 10:09:55.529000044 +0900
- bzr:user-agent:
- bzr2.2.1+bzr-svn1.0.4
- svn:original-date:
- 2011-03-16T01:09:55.529000Z
- Location:
- branches/version-2_5-dev/data/class
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_5-dev/data/class/helper/SC_Helper_Purchase.php
r20655 r20660 714 714 $order_id = $objQuery->nextVal('dtb_order_order_id'); 715 715 } 716 /* 717 * 新規受付の場合は受注ステータス null で insert し, 718 * sfUpdateOrderStatus で ORDER_NEW に変更する. 719 */ 720 $status = $arrValues['status']; 721 $arrValues['status'] = null; 716 722 $arrValues['order_id'] = $order_id; 717 723 $arrValues['customer_id'] = … … 722 728 $objQuery->insert($table, $arrValues); 723 729 724 $this->sfUpdateOrderStatus($order_id, $ arrValues['status'],730 $this->sfUpdateOrderStatus($order_id, $status, 725 731 $arrValues['add_point'], 726 732 $arrValues['use_point'], … … 900 906 * 受注.対応状況の更新 901 907 * 902 * ・必ず呼び出し元でトランザクションブロックを開いておくこと。908 * 必ず呼び出し元でトランザクションブロックを開いておくこと。 903 909 * 904 910 * @param integer $orderId 注文番号 … … 935 941 // ▼使用ポイント 936 942 // 変更前の対応状況が利用対象の場合、変更前の使用ポイント分を戻す 937 if ( SC_Utils_Ex::sfIsUsePoint($arrOrderOld['status'])) {943 if ($this->isUsePoint($arrOrderOld['status'])) { 938 944 $addCustomerPoint += $arrOrderOld['use_point']; 939 945 } 940 946 941 947 // 変更後の対応状況が利用対象の場合、変更後の使用ポイント分を引く 942 if ( SC_Utils_Ex::sfIsUsePoint($newStatus)) {948 if ($this->isUsePoint($newStatus)) { 943 949 $addCustomerPoint -= $newUsePoint; 944 950 } 951 945 952 // ▲使用ポイント 946 953 947 954 // ▼加算ポイント 948 955 // 変更前の対応状況が加算対象の場合、変更前の加算ポイント分を戻す 949 if ( SC_Utils_Ex::sfIsAddPoint($arrOrderOld['status'])) {956 if ($this->isAddPoint($arrOrderOld['status'])) { 950 957 $addCustomerPoint -= $arrOrderOld['add_point']; 951 958 } 952 959 953 960 // 変更後の対応状況が加算対象の場合、変更後の加算ポイント分を足す 954 if ( SC_Utils_Ex::sfIsAddPoint($newStatus)) {961 if ($this->isAddPoint($newStatus)) { 955 962 $addCustomerPoint += $newAddPoint; 956 963 } … … 1010 1017 $sqlval['update_date'] = 'Now()'; 1011 1018 1012 $cols = $objQuery->listTableFields('dtb_order'); 1013 $dest = array(); 1014 foreach ($sqlval as $key => $val) { 1015 if (in_array($key, $cols)) { 1016 $dest[$key] = $val; 1017 } 1018 } 1019 1019 $dest = $objQuery->extractOnlyColsOf('dtb_order', $sqlval); 1020 1020 $objQuery->update('dtb_order', $dest, 'order_id = ?', array($orderId)); 1021 1021 // ▲受注テーブルの更新 … … 1053 1053 "(SELECT payment_method FROM dtb_payment WHERE payment_id = " . $tgt_table . ".payment_id)")); 1054 1054 } 1055 1056 /** 1057 * ポイント使用するかの判定 1058 * 1059 * $status が null の場合は false を返す. 1060 * 1061 * @param integer $status 対応状況 1062 * @return boolean 使用するか(顧客テーブルから減算するか) 1063 */ 1064 function isUsePoint($status) { 1065 if ($status == null) { 1066 return false; 1067 } 1068 switch ($status) { 1069 case ORDER_CANCEL: // キャンセル 1070 return false; 1071 default: 1072 break; 1073 } 1074 1075 return true; 1076 } 1077 1078 /** 1079 * ポイント加算するかの判定 1080 * 1081 * @param integer $status 対応状況 1082 * @return boolean 加算するか 1083 */ 1084 function isAddPoint($status) { 1085 switch ($status) { 1086 case ORDER_NEW: // 新規注文 1087 case ORDER_PAY_WAIT: // 入金待ち 1088 case ORDER_PRE_END: // 入金済み 1089 case ORDER_CANCEL: // キャンセル 1090 case ORDER_BACK_ORDER: // 取り寄せ中 1091 return false; 1092 1093 case ORDER_DELIV: // 発送済み 1094 return true; 1095 1096 default: 1097 break; 1098 } 1099 1100 return false; 1101 } 1055 1102 } -
branches/version-2_5-dev/data/class/util/SC_Utils.php
r20647 r20660 1863 1863 1864 1864 /** 1865 * ポイント使用するかの判定1866 *1867 * @param integer $status 対応状況1868 * @return boolean 使用するか(顧客テーブルから減算するか)1869 */1870 function sfIsUsePoint($status) {1871 switch ($status) {1872 case ORDER_CANCEL: // キャンセル1873 return false;1874 default:1875 break;1876 }1877 1878 return true;1879 }1880 1881 /**1882 * ポイント加算するかの判定1883 *1884 * @param integer $status 対応状況1885 * @return boolean 加算するか1886 */1887 function sfIsAddPoint($status) {1888 switch ($status) {1889 case ORDER_NEW: // 新規注文1890 case ORDER_PAY_WAIT: // 入金待ち1891 case ORDER_PRE_END: // 入金済み1892 case ORDER_CANCEL: // キャンセル1893 case ORDER_BACK_ORDER: // 取り寄せ中1894 return false;1895 1896 case ORDER_DELIV: // 発送済み1897 return true;1898 1899 default:1900 break;1901 }1902 1903 return false;1904 }1905 1906 /**1907 1865 * ランダムな文字列を取得する 1908 1866 *
Note: See TracChangeset
for help on using the changeset viewer.