• プラグイン一覧
    - WCEX Item Combo Set
    - WCEX Amazon Pay
    - WCEX Wishlist お気に入りリスト
  • リリース情報
  • お役立ちコラム
  • お問い合わせ
  • サポート
    • よくある質問
      • WCEX Amazon Pay
      • WCEX Wishlist お気に入りリスト
      • wcex-item-combo-set
    • リファレンス
      • WCEX Amazon Pay
      • WCEX Wishlist お気に入りリスト
      • wcex-item-combo-set
新規会員登録
ログイン
新規会員登録
ログイン
カート
  • プラグイン一覧
    • - WCEX Item Combo Set
    • - WCEX Amazon Pay
    • - WCEX Wishlist お気に入りリスト
  • リリース情報
  • お役立ちコラム
  • サポート
    • - よくある質問
      • - WCEX Amazon Pay
      • - WCEX Wishlist お気に入りリスト
      • - wcex-item-combo-set
    • - リファレンス
      • - WCEX Amazon Pay
      • - WCEX Wishlist お気に入りリスト
      • - wcex-item-combo-set
  • お問い合わせ
Aivec APPs > WCEX Amazon Pay > クラス > OrderEdit
レファレンス
バージョン
2.6.4
絞り込み:

目次

  • ソース
  • 関数

フック

  • アクション
  • フィルター

ファンクション

    クラス

    OrderEdit

    Amazon Pay V1 order edit page operations

    ソース #ソース

    ファイル: src/V1/OrderEdit.php

    class OrderEdit
    {
        /**
         * AmazonPay module object
         *
         * @var AmazonPay
         */
        protected $module;
    
        /**
         * Sets `$module` member var with dependency injection.
         *
         * @author Evan D Shaw <evandanielshaw@gmail.com>
         * @param AmazonPay $module
         * @return void
         */
        public function __construct(AmazonPay $module) {
            $this->module = $module;
        }
    
        /**
         * Updates ORO (Amazon Order Reference Object) based on selected order status.
         * => 発送済み = calls capture
         *
         * @author Evan D Shaw <evandanielshaw@gmail.com>
         * @global \use_e_shop $usces
         * @param \stdClass $new_orderdata
         * @param string    $old_status
         * @param \stdClass $old_orderdata
         * @return void
         */
        public function updateOrderDataCompletion($new_orderdata, $old_status, $old_orderdata) {
            global $usces;
    
            $amazon_order_state = $usces->get_order_meta_value('amazon_order_state', $old_orderdata->ID);
            if (!empty($amazon_order_state)) {
                $amazon_authid = $usces->get_order_meta_value('amazon_authid', $old_orderdata->ID);
                $amazon_orderid = $usces->get_order_meta_value('amazon_orderid', $old_orderdata->ID);
                $res = [];
                if ($amazon_order_state === 'captured') {
                    $res['message'] = __('I completed collective operation.', 'usces');
                    $res['method'] = 'capture';
                    $res['status'] = 'success';
                } elseif ($amazon_order_state === 'canceled') {
                    $res = Utils::adminErrorResponse('capture', $amazon_order_state);
                    $res['message'] = Utils::adminMessageString(
                        $old_orderdata->ID,
                        $res['status'],
                        $res['message'],
                        true
                    );
                } else {
                    $api = new API($this->module);
                    $res = $api->capturePayments($amazon_authid, $amazon_orderid);
                    $res['message'] = Utils::adminMessageString(
                        $old_orderdata->ID,
                        $res['status'],
                        $res['message'],
                        true
                    );
                }
                $_SESSION['amazon_admin_msg'] = $res;
            }
        }
    
        /**
         * Updates ORO (Amazon Order Reference Object) based on selected order status.
         *
         * => キャンセル = calls cancel
         *
         * @author Evan D Shaw <evandanielshaw@gmail.com>
         * @global \use_e_shop $usces
         * @param \stdClass $new_orderdata
         * @param string    $old_status
         * @param \stdClass $old_orderdata
         * @return void
         */
        public function updateOrderDataCancel($new_orderdata, $old_status, $old_orderdata) {
            global $usces;
    
            $amazon_order_state = $usces->get_order_meta_value('amazon_order_state', $old_orderdata->ID);
            if (!empty($amazon_order_state)) {
                $amazon_orderid = $usces->get_order_meta_value('amazon_orderid', $old_orderdata->ID);
                $res = [];
                if ($amazon_order_state === 'canceled') {
                    $res['message'] = __('I completed collective operation.', 'usces');
                    $res['method'] = 'cancel';
                    $res['status'] = 'success';
                } elseif ($amazon_order_state === 'captured') {
                    $res = Utils::adminErrorResponse('cancel', $amazon_order_state);
                    $res['message'] = Utils::adminMessageString(
                        $old_orderdata->ID,
                        $res['status'],
                        $res['message'],
                        true
                    );
                } else {
                    $api = new API($this->module);
                    $res = $api->cancelOrder($amazon_orderid);
                    $res['message'] = Utils::adminMessageString(
                        $old_orderdata->ID,
                        $res['status'],
                        $res['message'],
                        true
                    );
                }
                $_SESSION['amazon_admin_msg'] = $res;
            }
        }
    
        /**
         * Sets action status and updates amazon_order_state meta value which is checked against
         * to avoid unnecessary Amazon API calls.
         *
         * @author Evan D Shaw <evandanielshaw@gmail.com>
         * @global \usc_e_shop $usces
         * @param int   $order_id
         * @param array $res
         * @return void
         */
        public function setActionStatusAndMessage($order_id, $res) {
            global $usces;
    
            if (isset($_SESSION['amazon_admin_msg'])) {
                $res = $_SESSION['amazon_admin_msg'];
                unset($_SESSION['amazon_admin_msg']);
                switch ($res['method']) {
                    case 'capture':
                        $usces->set_action_status($res['status'], $res['message']);
                        if (!($res['status'] === 'error')) {
                            ModuleUtils::updateOrderReceipt($order_id, 'receipted');
                            usces_action_acting_getpoint($order_id);
                            $usces->set_order_meta_value('amazon_order_state', 'captured', $order_id);
                        }
                        break;
                    case 'cancel':
                        $usces->set_action_status($res['status'], $res['message']);
                        if (!($res['status'] === 'error')) {
                            ModuleUtils::updateOrderReceipt($order_id, 'noreceipt');
                            $usces->set_order_meta_value('amazon_order_state', 'canceled', $order_id);
                        }
                        break;
                }
            }
        }
    }
    

    ソースを伸ばす ソースを縮める


    関数 #関数

    Top ↑

    • __construct — Sets `$module` member var with dependency injection.
    • setActionStatusAndMessage — Sets action status and updates amazon_order_state meta value which is checked against to avoid unnecessary Amazon API calls.
    • updateOrderDataCancel — Updates ORO (Amazon Order Reference Object) based on selected order status.
    • updateOrderDataCompletion — Updates ORO (Amazon Order Reference Object) based on selected order status.

    • 新規会員登録
    • ログイン
      • プラグイン一覧
      • 会社概要
      • リリース情報
      • よくある質問
      • お役立ちコラム
      • お問い合わせ
      • 個人情報保護方針
      • 特定商取引法に基づく表記
      • 情報セキュリティ基本方針
      • 利用規約

    アイベック合同会社は「Welcart」「Amazon Pay」の公式パートナーです。

    ※Amazon、Amazon.co.jp、Amazon Payおよびそれらのロゴは、Amazon.com,inc.またはその関連会社の商標です。

    © 2025 Aivec llc All Rights Reserved.