// 1 => LOADING // 2 => DONE // 3 => ERROR import * as api from "../api/detail.js" export default { namespaced: true, state: { search_status: 0, search_error_message: '', query: '', sdate: '', details: [], selected_detail: {}, total_detail: 0, total_detail_page: 0, curr_detail_page: 1, snackbar: false }, mutations: { update_search_error_message(state, patient) { state.search_error_message = patient }, update_search_status(state, v) { state.search_status = v }, update_query(state, q) { state.query = q }, update_sdate(state, q) { state.sdate = q }, update_details(state, d) { state.details = d.records state.total_detail = d.total state.total_detail_page = d.total_page }, update_selected_detail(state, d) { state.selected_detail = d }, update_curr_detail_page(state, d) { state.curr_detail_page = d }, update_snackbar(state, d) { state.snackbar = d } }, actions: { async search(context) { try { let order_id = context.rootState.header.selected_header.T_OrderRefIntID let query = context.state.query let resp = await api.search(one_token(), order_id, query) if (resp.status != "OK") { context.commit("update_search_status", 3) context.commit("update_search_error_message", resp.message) } else { context.commit("update_search_status", 2) context.commit("update_search_error_message", "") let data = { records: resp.data.records, total: resp.data.total, total_page: resp.data.total_page } context.commit("update_details", data) } } catch (e) { context.commit("update_search_status", 3) context.commit("update_search_error_message", e.message) } } } }