テーマ仕様書 更新履歴
2022年
2022/04/07更新

2022/04/07更新

+ 追加した行
- 削除した行

ポイント予約(ポイント全額支払い)対応

mypage > 定期注文詳細画面 基本情報の編集

テーマ管理のファイルパス
ec_force/shop/customer/subs_orders/edit.html.liquid
ec_force/shop/customer/subs_orders/edit.html+smartphone.liquid

         <!-- ポイント有効期限確認 -->
         {% if subs_order.active_point_for_next_auth_order? %}
-          <input class="validate[required,custom[integer],min[0],maxPoint[{{ base_info.point_event_redeem.point_upper_limit }}]" type="text" value="{{ subs_order.point_redeem }}" name="subs_order[point_redeem]" id="subs_order_point_redeem" />
+          <label>
+            <input name="subs_order[all_point_redeem]" type="hidden" value="0" /><input type="checkbox" value="1" name="subs_order[all_point_redeem]" id="subs_order_all_point_redeem" {% if subs_order.all_point_redeem == true %}checked{% endif %}/>
+            ポイントを全額消費する
+          </label>
+          <input class="validate[required,custom[integer],min[0],maxPoint[{{ base_info.point_event_redeem.point_upper_limit }}]" type="text" value="{{ subs_order.point_redeem }}" name="subs_order[point_redeem]" id="subs_order_point_redeem" {% if subs_order.all_point_redeem == true %}disabled{% endif %} />
 
           <!-- 次回のみポイント利用フラグ -->
           <!-- 次回のみポイントを利用する -->

小計の消費税額のみ出力するliquidの実装

cart > カート画面

テーマ管理のファイルパス
ec_force/shop/customer/subs_orders/edit.html.liquid
ec_force/shop/customer/subs_orders/edit.html+smartphone.liquid

-    <!-- カート時点の消費税(任意) ※注文情報入力画面以降で変動する場合があります -->
-    {{ order.tax | number_to_currency: format: '%n %u' }}
+    <!-- カート時点の消費税(任意) ※カート内商品に対する消費税額 -->
+    {{ order.subtotal_tax | number_to_currency: format: '%n %u' }}
+
+    <!-- カート時点の8%消費税(任意) ※カート内商品(税率8%)に対する消費税額 -->
+    {{ order.subtotal8_tax | number_to_currency: format: '%n %u' }}
+  
+    <!-- カート時点の10%消費税(任意) ※カート内商品(税率10%)に対する消費税額 -->
+    {{ order.subtotal10_tax | number_to_currency: format: '%n %u' }}
 
-    <!-- カート時点の合計(任意) ※注文情報入力画面以降で変動する場合があります -->
-    {{ order.total | number_to_currency: format: '%n %u' }}
+    <!-- カート時点の合計(任意) ※ order.subtotal + order.subtotal_tax -->
+    {{ order.subtotal_include_subtotal_tax | number_to_currency: format: '%n %u' }}

頒布会商品をマイページで変更できるようにする

mypage > 定期注文詳細画面 頒布会商品の編集

テーマ管理のファイルパス
ec_force/shop/customer/subs_orders/distribution_clubs/edit.html.liquid
ec_force/shop/customer/subs_orders/distribution_clubs/edit.html+smartphone.liquid

※JSタグの追加: {{ 'shop/customer/subs_orders/distribution_clubs' | javascript_include_tag }}

<!-- フラッシュメッセージ -->
{{ 'notice' | flash: 'alert alert-success', 'text' }}
{{ 'alert' | flash: 'alert alert-danger', 'text' }}
{{ 'error' | flash: 'alert alert-danger', 'text' }}
 
+<div id='distribution-club-edit-view'>
  <!-- 頒布会選択商品変更フォーム -->
  <form action="/shop/customer/subs_orders/{{ subs_order.number }}/distribution_clubs/{{ distribution_club.id }}" accept-charset="UTF-8" method="post">
    <input type="hidden" name="_method" value="put">
+    <input type="hidden" name="changeable_distribution_club_id" value="{{ changeable_distribution_club_id }}">
+
+    {% if distribution_changed %}
+      <!-- 商品切替変更 -->
+      <!-- 商品名 -->
+      {% for variant in distribution_club_variants %}
+        {% assign changeable_variants = changeable_variants_hash[variant.id] %}
+        {% if changeable_variants.size == 0 %}
+          <!-- 頒布会選択商品名 -->
+          {{ variant.name }}
+          <input name="select_items[item][][selected_variant_id]" type="hidden" value="{{ variant.id }}">
+        {% else %}
+          <!-- 変更可能頒布会選択商品名(規格) -->
+          <select name="select_items[item][][selected_variant_id]">
+            {% for variant in changeable_variants %}
+              {% if variant.option_values_presentation == blank %}
+                {% capture product_options %}
+                  {{ variant.product.name }}
+                {% endcapture %}
+              {% else %}
+                {% capture product_options %}
+                  {{ variant.product.name }}({{ variant.option_values_presentation }})
+                {% endcapture %}
+              {% endif %}
+              <option value="{{ variant.id }}" {% if order_item.variant.id == variant.id %}selected{% endif %}>{{ product_options }}</option>
+            {% endfor %}
+          </select>
+        {% endif %}
+        <!-- 個数 -->
+        1個
+        <!-- 価格(税抜) -->
+        {% if distribution_club.fixed_price? %}
+          0円
+        {% else %}
+          {% assign options = "" %}
+          {% assign options = options | append: variant.product_id | append: "," | append: subs_order.times %}
+          {% assign options_array = options | split: "," %}
+          {{ options_array | liquid_recurring_time_price | number_to_currency: format: '%n %u' }}
+        {% endif %}
+      {% endfor %}
+    {% else %}
      {% for order_item in distribution_order_items %}
        {% for i in (1..order_item.distribution_item_quantity) %}
          <!-- 価格(税抜) -->
          {% if distribution_club.fixed_price? %}
            0円
          {% else %}
            {{ order_item.recurring_next_current_price | number_to_currency: format: '%n %u' }}
          {% endif %}
        {% endfor %}
      {% endfor %}
+    {% endif %}
  <!-- 送信ボタン -->
  <input id='submit' type="submit" value="保存">
 
  <!-- 戻るボタン -->
  <a href="/shop/customer/subs_orders/{{ subs_order.number }}/order_items">戻る</a>
</form>
+ 
+  <!-- 商品切替変更フォーム -->
+  <form id="form-change-distribution-club" action="/shop/customer/subs_orders/{{ subs_order.number }}/distribution_clubs/{{ distribution_club.id }}/edit" accept-charset="UTF-8" method="get">
+    {% if changeable_distribution_club_id == distribution_club.id %}
+      <!-- 変更なしラジオボタン -->
+      <input type="radio" name="changeable_distribution_club_id" id="changeable_distribution_club_id_{{ distribution_club.id }}" value="{{ distribution_club.id }}" checked="checked">
+    {% else %}
+      <!-- 変更なしラジオボタン -->
+      <input type="radio" name="changeable_distribution_club_id" id="changeable_distribution_club_id_{{ distribution_club.id }}" value="{{ distribution_club.id }}">
+    {% endif %}
+    <label class="form-change-distribution-club-tag" for="changeable_distribution_club_id_{{ distribution_club.id }}">変更なし</label>
+    {% for product in changeable_distribution_club_products %}
+      {% if product.distribution_club_id != distribution_club.id %}
+        {% if changeable_distribution_club_id == product.distribution_club.id %}
+          <!-- 商品切替ラジオボタン -->
+          <input type="radio" name="changeable_distribution_club_id" id="changeable_distribution_club_id_{{ product.distribution_club.id }}" value="{{ product.distribution_club.id }}" checked="checked">
+        {% else %}
+          <!-- 商品切替ラジオボタン -->
+          <input type="radio" name="changeable_distribution_club_id" id="changeable_distribution_club_id_{{ product.distribution_club.id }}" value="{{ product.distribution_club.id }}">
+        {% endif %}
+        <!-- 商品名 -->
+        <label class="form-change-distribution-club-tag" for="changeable_distribution_club_id_{{ product.distribution_club.id }}">{{ product.name }}</label>
+      {% endif %}
+    {% endfor %}
+  </form>
+</div>

軽微な修正

mypage > 定期注文詳細画面 商品の追加

テーマ管理のファイルパス
ec_force/shop/customer/subs_orders/variants/show.html.liquid
ec_force/shop/customer/subs_orders/variants/show.html+smartphone.liquid

 <div id="product-show-view">
-  <input id="subs-order-number" type="hidden" value="{{ params[:id] }}">
+  <input id="subs-order-number" type="hidden" value="{{ params['id'] }}">
   <input id="variant-sku" type="hidden" value="{{ product.master.sku }}">