// 1 => LOADING // 2 => DONE // 3 => ERROR import * as api from "../api/new.js" export default { namespaced: true, state: { search_status: 0, search_error_message: '', query: '', branches: [], selected_branch: {}, default_branch: {}, worklists: [], selected_worklist: {}, selected_px: [], patients: [], selected_patients: [], 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_branches(state, d) { state.branches = d.records }, update_selected_branch(state, d) { state.selected_branch = d }, update_default_branch(state, d) { state.default_branch = d }, update_worklists(state, d) { state.worklists = d.records }, update_selected_worklist(state, d) { state.selected_worklist = d }, update_selected_px(state, d) { state.selected_px = d }, update_patients(state, d) { state.patients = d.records }, update_selected_patients(state, d) { state.selected_patients = d }, update_snackbar(state, d) { state.snackbar = d } }, actions: { async search_branch(context) { try { let resp = await api.search_branch(one_token()) 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: [] } for (let i in resp.data.records) { if (resp.data.records[i].default == 0) data.records.push(resp.data.records[i]) else context.commit('update_default_branch', resp.data.records[i]) } context.commit("update_branches", data) } } catch (e) { context.commit("update_search_status", 3) context.commit("update_search_error_message", e.message) } }, async search_worklist(context) { try { let resp = await api.search_worklist(one_token()) 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 } context.commit("update_worklists", data) } } catch (e) { context.commit("update_search_status", 3) context.commit("update_search_error_message", e.message) } }, async search_patient(context) { try { let pxs = context.state.selected_px.join(',') let resp = await api.search_patient(one_token(), pxs) 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 } let x = context.state.selected_patients context.commit("update_selected_patients", []) context.commit("update_patients", data) // console.log(x) // setTimeout(function() { // context.commit("update_selected_patients", x) // }, 2000) // } } catch (e) { context.commit("update_search_status", 3) context.commit("update_search_error_message", e.message) } }, async save(context) { try { let ids = context.state.selected_patients.join(',') let resp = await api.save(one_token(), context.state.selected_branch.M_BranchID, ids) 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.commit("update_dialog_new", false, {root:true}) context.dispatch('header/search', null, {root:true}) } } catch (e) { context.commit("update_search_status", 3) context.commit("update_search_error_message", e.message) } } } }