mirror of
				https://github.com/crater-invoice/crater.git
				synced 2025-10-30 21:21:09 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			136 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			136 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| import * as types from './mutation-types'
 | |
| 
 | |
| export const fetchExpenses = ({ commit, dispatch, state }, params) => {
 | |
|   return new Promise((resolve, reject) => {
 | |
|     window.axios
 | |
|       .get(`/api/v1/expenses`, { params })
 | |
|       .then((response) => {
 | |
|         commit(types.SET_EXPENSES, response.data.expenses.data)
 | |
|         commit(types.SET_TOTAL_EXPENSES, response.data.expenseTotalCount)
 | |
|         resolve(response)
 | |
|       })
 | |
|       .catch((err) => {
 | |
|         reject(err)
 | |
|       })
 | |
|   })
 | |
| }
 | |
| 
 | |
| export const fetchExpense = ({ commit, dispatch, state }, id) => {
 | |
|   return new Promise((resolve, reject) => {
 | |
|     window.axios
 | |
|       .get(`/api/v1/expenses/${id}`)
 | |
|       .then((response) => {
 | |
|         resolve(response)
 | |
|       })
 | |
|       .catch((err) => {
 | |
|         reject(err)
 | |
|       })
 | |
|   })
 | |
| }
 | |
| 
 | |
| export const getExpenseReceipt = ({ commit, dispatch, state }, id) => {
 | |
|   return new Promise((resolve, reject) => {
 | |
|     window.axios
 | |
|       .get(`/api/v1/expenses/${id}/show/receipt`)
 | |
|       .then((response) => {
 | |
|         resolve(response)
 | |
|       })
 | |
|       .catch((err) => {
 | |
|         reject(err)
 | |
|       })
 | |
|   })
 | |
| }
 | |
| 
 | |
| export const uploadExpenseReceipt = ({ commit, dispatch, state }, data) => {
 | |
|   return new Promise((resolve, reject) => {
 | |
|     window.axios
 | |
|       .post(`/api/v1/expenses/${data.id}/upload/receipts`, data)
 | |
|       .then((response) => {
 | |
|         resolve(response)
 | |
|       })
 | |
|       .catch((err) => {
 | |
|         reject(err)
 | |
|       })
 | |
|   })
 | |
| }
 | |
| 
 | |
| export const addExpense = ({ commit, dispatch, state }, data) => {
 | |
|   return new Promise((resolve, reject) => {
 | |
|     window.axios
 | |
|       .post('/api/v1/expenses', data)
 | |
|       .then((response) => {
 | |
|         commit(types.ADD_EXPENSE, response.data)
 | |
|         resolve(response)
 | |
|       })
 | |
|       .catch((err) => {
 | |
|         reject(err)
 | |
|       })
 | |
|   })
 | |
| }
 | |
| 
 | |
| export const updateExpense = ({ commit, dispatch, state }, data) => {
 | |
|   return new Promise((resolve, reject) => {
 | |
|     window.axios
 | |
|       .post(`/api/v1/expenses/${data.id}`, data.editData)
 | |
|       .then((response) => {
 | |
|         commit(types.UPDATE_EXPENSE, response.data)
 | |
|         resolve(response)
 | |
|       })
 | |
|       .catch((err) => {
 | |
|         reject(err)
 | |
|       })
 | |
|   })
 | |
| }
 | |
| 
 | |
| export const deleteExpense = ({ commit, dispatch, state }, id) => {
 | |
|   return new Promise((resolve, reject) => {
 | |
|     window.axios
 | |
|       .post(`/api/v1/expenses/delete`, id)
 | |
|       .then((response) => {
 | |
|         commit(types.DELETE_EXPENSE, id)
 | |
|         resolve(response)
 | |
|       })
 | |
|       .catch((err) => {
 | |
|         reject(err)
 | |
|       })
 | |
|   })
 | |
| }
 | |
| 
 | |
| export const deleteMultipleExpenses = ({ commit, dispatch, state }, id) => {
 | |
|   return new Promise((resolve, reject) => {
 | |
|     window.axios
 | |
|       .post(`/api/v1/expenses/delete`, { ids: state.selectedExpenses })
 | |
|       .then((response) => {
 | |
|         commit(types.DELETE_MULTIPLE_EXPENSES, state.selectedExpenses)
 | |
|         resolve(response)
 | |
|       })
 | |
|       .catch((err) => {
 | |
|         reject(err)
 | |
|       })
 | |
|   })
 | |
| }
 | |
| 
 | |
| export const setSelectAllState = ({ commit, dispatch, state }, data) => {
 | |
|   commit(types.SET_SELECT_ALL_STATE, data)
 | |
| }
 | |
| 
 | |
| export const selectAllExpenses = ({ commit, dispatch, state }) => {
 | |
|   if (state.selectedExpenses.length === state.expenses.length) {
 | |
|     commit(types.SET_SELECTED_EXPENSES, [])
 | |
|     commit(types.SET_SELECT_ALL_STATE, false)
 | |
|   } else {
 | |
|     let allExpenseIds = state.expenses.map((cust) => cust.id)
 | |
|     commit(types.SET_SELECTED_EXPENSES, allExpenseIds)
 | |
|     commit(types.SET_SELECT_ALL_STATE, true)
 | |
|   }
 | |
| }
 | |
| 
 | |
| export const selectExpense = ({ commit, dispatch, state }, data) => {
 | |
|   commit(types.SET_SELECTED_EXPENSES, data)
 | |
|   if (state.selectedExpenses.length === state.expenses.length) {
 | |
|     commit(types.SET_SELECT_ALL_STATE, true)
 | |
|   } else {
 | |
|     commit(types.SET_SELECT_ALL_STATE, false)
 | |
|   }
 | |
| }
 |