From d529c1d68ffc155927b3ce7943009cb9326561f3 Mon Sep 17 00:00:00 2001 From: satyaprakash10 Date: Fri, 15 Nov 2019 19:43:42 +0530 Subject: [PATCH 1/2] fix status action in view estimate --- .../js/store/modules/estimate/actions.js | 3 +- .../js/store/modules/estimate/getters.js | 4 + .../store/modules/estimate/mutation-types.js | 1 + .../js/store/modules/estimate/mutations.js | 6 ++ resources/assets/js/views/estimates/View.vue | 76 ++++++++++++++----- 5 files changed, 71 insertions(+), 19 deletions(-) diff --git a/resources/assets/js/store/modules/estimate/actions.js b/resources/assets/js/store/modules/estimate/actions.js index 0e5f0d8e..d4ec2efd 100644 --- a/resources/assets/js/store/modules/estimate/actions.js +++ b/resources/assets/js/store/modules/estimate/actions.js @@ -56,6 +56,7 @@ export const fetchViewEstimate = ({ commit, dispatch, state }, id) => { export const sendEmail = ({ commit, dispatch, state }, data) => { return new Promise((resolve, reject) => { window.axios.post(`/api/estimates/send`, data).then((response) => { + commit(types.UPDATE_ESTIMATE_STATUS, {id: data.id, status: 'SENT'}) resolve(response) }).catch((err) => { reject(err) @@ -100,7 +101,7 @@ export const deleteMultipleEstimates = ({ commit, dispatch, state }, id) => { export const updateEstimate = ({ commit, dispatch, state }, data) => { return new Promise((resolve, reject) => { window.axios.put(`/api/estimates/${data.id}`, data).then((response) => { - commit(types.UPDATE_ESTIMATE, response.data) + commit(types.UPDATE_ESTIMATE_STATUS, response.data) resolve(response) }).catch((err) => { reject(err) diff --git a/resources/assets/js/store/modules/estimate/getters.js b/resources/assets/js/store/modules/estimate/getters.js index 69336681..ea5f9ab4 100644 --- a/resources/assets/js/store/modules/estimate/getters.js +++ b/resources/assets/js/store/modules/estimate/getters.js @@ -4,3 +4,7 @@ export const getTemplateId = (state) => state.estimateTemplateId export const selectedEstimates = (state) => state.selectedEstimates export const totalEstimates = (state) => state.totalEstimates export const selectedCustomer = (state) => state.selectedCustomer +export const getEstimate = (state) => (id) => { + let invId = parseInt(id) + return state.estimates.find(estimate => estimate.id === invId) +} diff --git a/resources/assets/js/store/modules/estimate/mutation-types.js b/resources/assets/js/store/modules/estimate/mutation-types.js index e7a674d7..9c554467 100644 --- a/resources/assets/js/store/modules/estimate/mutation-types.js +++ b/resources/assets/js/store/modules/estimate/mutation-types.js @@ -14,3 +14,4 @@ export const SELECT_CUSTOMER = 'SELECT_CUSTOMER' export const RESET_SELECTED_CUSTOMER = 'RESET_SELECTED_CUSTOMER' export const SET_SELECT_ALL_STATE = 'SET_SELECT_ALL_STATE' export const RESET_SELECTED_ESTIMATES = 'RESET_SELECTED_ESTIMATES' +export const UPDATE_ESTIMATE_STATUS = 'UPDATE_ESTIMATE_STATUS' diff --git a/resources/assets/js/store/modules/estimate/mutations.js b/resources/assets/js/store/modules/estimate/mutations.js index 4ae5c597..3cd372d8 100644 --- a/resources/assets/js/store/modules/estimate/mutations.js +++ b/resources/assets/js/store/modules/estimate/mutations.js @@ -37,6 +37,12 @@ export default { state.estimates[pos] = data.estimate }, + [types.UPDATE_ESTIMATE_STATUS] (state, data) { + let pos = state.estimates.findIndex(estimate => estimate.id === data.id) + + state.estimates[pos].status = data.status + }, + [types.RESET_SELECTED_ESTIMATES] (state, data) { state.selectedEstimates = [] state.selectAllField = false diff --git a/resources/assets/js/views/estimates/View.vue b/resources/assets/js/views/estimates/View.vue index 1ab60302..f222d3a6 100644 --- a/resources/assets/js/views/estimates/View.vue +++ b/resources/assets/js/views/estimates/View.vue @@ -3,11 +3,11 @@