// 1 => LOADING // 2 => DONE // 3 => ERROR import * as api from "../api/header.js" export default { namespaced: true, state: { search_status: 0, search_error_message: '', query: '', sdate: new Date().toISOString().substr(0, 10), headers: [], selected_header: {}, total_header: 0, total_header_page: 0, curr_header_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_headers(state, d) { state.headers = d.records state.total_header = d.total state.total_header_page = d.total_page }, update_selected_header(state, d) { state.selected_header = d }, update_curr_header_page(state, d) { state.curr_header_page = d }, update_snackbar(state, d) { state.snackbar = d } }, actions: { async search(context) { try { let resp = await api.search(one_token(), context.state.sdate, context.state.curr_header_page) 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_headers", data) if (data.records.length > 0) context.commit('update_selected_header', data.records[0]) else context.commit('update_selected_header', null) context.dispatch('detail/search', null, {root:true}) } } catch (e) { context.commit("update_search_status", 3) context.commit("update_search_error_message", e.message) } }, async confirm(context) { try { let resp = await api.confirm(one_token(), context.state.selected_header.T_OrderRefIntID) 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", "") context.dispatch("search") } } catch (e) { context.commit("update_search_status", 3) context.commit("update_search_error_message", e.message) } } } }