Gogs преди 7 години
родител
ревизия
055b5bc4e8
променени са 4 файла, в които са добавени 29 реда и са изтрити 5 реда
  1. 3 2
      src/components/steps/Product.vue
  2. 3 1
      src/constants/actionTypes.js
  3. 3 1
      src/constants/mutationTypes.js
  4. 20 1
      src/store/modules/cart.js

+ 3 - 2
src/components/steps/Product.vue

@@ -6,7 +6,7 @@
             product-modal(:show='showingProductForm' @onAccept='submitProduct' @onCancel='hideProductForm')
             variant-modal
             discount-modal(:item='itemToDiscount' :options='selectedCurrency' :show='!!itemToDiscount' @onAccept='applyPrice' @onCancel='applyPrice')
-        cart(:items='cartItems' @onTotalComputed='changeCartTotal' @onIncrementQty='addToCart' @onChangePrice='changePrice' @onDecrementQty='decreaseFromCart' @onDeleteItem='removeFromCart' :options='selectedCurrency')
+        cart(:items='cartItems' @onTotalComputed='changeCartTotal' @onIncrementQty='addToCart' @onUndoPrice='undoPrice' @onChangePrice='changePrice' @onDecrementQty='decreaseFromCart' @onDeleteItem='removeFromCart' :options='selectedCurrency')
 </template>
 
 <script>
@@ -16,7 +16,7 @@
     import VariantModal from '@@/modals/VariantModal'
     import DiscountModal from '@@/modals/DiscountModal'
 
-    import { FILTER_PRODUCTS, SELECT_PRODUCT, SHOW_PRODUCT_FORM, HIDE_PRODUCT_FORM, SUBMIT_PRODUCT, CHANGE_CART_TOTAL, ADD_TO_CART, DECREASE_FROM_CART, CHANGE_PRICE, APPLY_PRICE, REMOVE_FROM_CART } from '@/constants/actionTypes'
+    import { FILTER_PRODUCTS, SELECT_PRODUCT, SHOW_PRODUCT_FORM, HIDE_PRODUCT_FORM, SUBMIT_PRODUCT, CHANGE_CART_TOTAL, ADD_TO_CART, DECREASE_FROM_CART, UNDO_PRICE, CHANGE_PRICE, APPLY_PRICE, REMOVE_FROM_CART } from '@/constants/actionTypes'
 
     export default {
         components: {
@@ -47,6 +47,7 @@
             CHANGE_CART_TOTAL,
             ADD_TO_CART,
             DECREASE_FROM_CART,
+            UNDO_PRICE,
             CHANGE_PRICE,
             APPLY_PRICE,
             REMOVE_FROM_CART

+ 3 - 1
src/constants/actionTypes.js

@@ -76,6 +76,8 @@ const ADD_TO_CART = 'addToCart'
 
 const DECREASE_FROM_CART = 'decreaseFromCart'
 
+const UNDO_PRICE = 'undoPrice'
+
 const CHANGE_PRICE = 'changePrice'
 
 const APPLY_PRICE = 'applyPrice'
@@ -110,5 +112,5 @@ export {
     INIT_DATE, RESET_DATE, // Date
     INIT_CUSTOMERS, FILTER_CUSTOMERS, SHOW_CUSTOMER_FORM, HIDE_CUSTOMER_FORM, SUBMIT_CUSTOMER, CREATE_CUSTOMER, RECEIVE_CUSTOMER, SELECT_CUSTOMER, RESET_CUSTOMER, // Customer
     INIT_CURRENCIES, RESET_CURRENCY, // Currencies
-    CHANGE_CART_TOTAL, ADD_TO_CART, DECREASE_FROM_CART, CHANGE_PRICE, APPLY_PRICE, REMOVE_FROM_CART, RESET_CART // Cart
+    CHANGE_CART_TOTAL, ADD_TO_CART, DECREASE_FROM_CART, UNDO_PRICE, CHANGE_PRICE, APPLY_PRICE, REMOVE_FROM_CART, RESET_CART // Cart
 }

+ 3 - 1
src/constants/mutationTypes.js

@@ -80,6 +80,8 @@ const SET_ITEM_TO_DISCOUNT = 'setItemToDiscount'
 
 const SET_ITEM_PRICE = 'setItemPrice'
 
+const RESET_PRICE = 'resetPrice'
+
 export {
     SET_MODE, SET_PROCESSING, SET_COMPLETED, SET_ERROR, // App
     SET_USER, SET_LOADING_USER, // User
@@ -89,5 +91,5 @@ export {
     SET_DATE, SET_LOADING_DATE, // Date
     SET_CUSTOMERS, SET_FILTERED_CUSTOMERS, SET_LOADING_CUSTOMERS, SET_SHOW_CUSTOMER_FORM, SET_SELECTED_CUSTOMER, ADD_CUSTOMER, // Customer
     SET_CURRENCIES, SET_LOADING_CURRENCIES, AUTOSELECT_CURRENCY, // Currency
-    PUSH_TO_CART, PULL_FROM_CART, SET_CART_TOTAL, SET_CART, SET_ITEM_TO_DISCOUNT, SET_ITEM_PRICE // Cart
+    PUSH_TO_CART, PULL_FROM_CART, SET_CART_TOTAL, SET_CART, SET_ITEM_TO_DISCOUNT, SET_ITEM_PRICE, RESET_PRICE // Cart
 }

+ 20 - 1
src/store/modules/cart.js

@@ -4,12 +4,14 @@ import {
     PULL_FROM_CART, 
     SET_CART_TOTAL,
     SET_ITEM_TO_DISCOUNT,
-    SET_ITEM_PRICE
+    SET_ITEM_PRICE,
+    RESET_PRICE
 } from '@/constants/mutationTypes'
 
 import { 
     ADD_TO_CART, 
     DECREASE_FROM_CART,
+    UNDO_PRICE,
     CHANGE_PRICE,
     APPLY_PRICE,
     REMOVE_FROM_CART, 
@@ -132,6 +134,15 @@ const mutations = {
         let foundProduct = state.cartItems.find(item => item.id === state.itemToDiscount.id)
 
         foundProduct.price = payload
+    },
+    /**
+     * 
+     * @param {*} state 
+     * @param {*} payload 
+     */
+    [RESET_PRICE] (state, payload) {
+        let foundProduct = state.cartItems.find(item => item.id === payload.id)
+        foundProduct.price = foundProduct.listPrice
     }
 }
 
@@ -155,6 +166,14 @@ const actions = {
             mode: 'partial'
         })
     },
+    /**
+     * 
+     * @param {*} param0 
+     * @param {*} payload 
+     */
+    [UNDO_PRICE] ({ commit }, payload) {
+        commit(RESET_PRICE, payload)
+    },
     /**
      * 
      * @param {*} param0