// 1 => LOADING // 2 => DONE // 3 => ERROR import * as api from "../api/patientlist-api.js" export default { namespaced: true, state: { last_id:-1, get_data_status:0, search_patient: 0, search_status: 0, search_error_message: '', patients: [], selected_patient: {}, corporates:[{id:0,name:'Semua'}], selected_corporate:{id:0,name:'Semua'}, total_patients:0, total_all:0, autocomplete_status:0, filter_search:'', start_date:moment(new Date()).format('YYYY-MM-DD'), current_page:1, dialog_timeline:false, datas:[], header:{}, dialog_sample:false, dialog_result:false, dialog_print:false, data_sample:{resume:[],details:[]}, data_result:{details:[]}, data_print : [] }, mutations: { update_data_result(state, val) { state.data_result = val }, update_data_print(state, val) { state.data_print = val }, update_data_sample(state, val) { state.data_sample = val }, update_dialog_print(state, val) { state.dialog_print = val }, update_dialog_result(state, val) { state.dialog_result = val }, update_dialog_sample(state, val) { state.dialog_sample = val }, update_header(state, val) { state.header = val }, update_datas(state, val) { state.datas = val }, update_dialog_timeline(state, val) { state.dialog_timeline = val }, update_current_page(state, val) { state.current_page = val }, update_start_date(state, val) { state.start_date = val }, update_last_id(state, val) { state.last_id = val }, update_corporates(state, val) { state.corporates = val }, update_selected_corporate(state, val) { state.selected_corporate = val }, update_filter_search(state, val) { state.filter_search = val }, update_get_data_status(state, val) { state.get_data_status = val }, update_search_error_message(state, patient) { state.search_error_message = patient }, update_search_patient(state, patient) { state.search_patient = patient }, update_patients(state, data) { state.patients = data }, update_selected_patient(state, val) { state.selected_patient = val }, update_autocomplete_status(state,val){ state.autocomplete_status = val }, update_search_status(state, val) { state.search_status = val }, update_total_patients(state, val) { state.total_patients = val }, update_total_all(state, val) { state.total_all = val } }, actions: { async search(context, prm) { context.commit("update_search_patient", 1) window.key_enter = '' try { console.log(prm) console.log('search') prm.token = one_token() console.log(prm) let resp = await api.search(prm) if (resp.status != "OK") { context.commit("update_search_patient", 3) context.commit("update_search_error_message", resp.message) } else { context.commit("update_search_patient", 2) context.commit("update_search_error_message", "") let data = { records: resp.data.records, total: resp.data.total } console.log(data.records) context.commit("update_patients", data.records) context.commit("update_total_patients", data.total) context.commit("update_total_all", resp.data.total_all) if(data.records){ context.commit("update_selected_patient", data.records[0]) } } } catch (e) { context.commit("update_search_patient", 3) context.commit("update_search_error_message", e.message) console.log(e) } }, async searchcorporate(context,prm) { context.commit("update_autocomplete_status",1) try { let resp= await api.searchcorporate(one_token(),prm) if (resp.status != "OK") { context.commit("update_autocomplete_status",3) } else { context.commit("update_autocomplete_status",2) let data = { records : resp.data.records, total: resp.data.total } context.commit("update_corporates",resp.data.records) //context.commit("update_selected_corporate",resp.data.records[0]) var xprm = { search:context.state.filter_search, corporateid:context.state.selected_corporate.id, xdate:context.state.start_date, current_page:context.state.current_page } context.dispatch("search", xprm) } } catch(e) { context.commit("update_autocomplete_status",3) } }, async getdata_order(context,prm) { context.commit("update_autocomplete_status",1) try { prm.token = one_token() let resp= await api.getdata_order(prm) if (resp.status != "OK") { context.commit("update_autocomplete_status",3) } else { context.commit("update_autocomplete_status",2) context.commit("update_datas",resp.data.records) context.commit("update_header",resp.data.header) context.commit("update_dialog_timeline",true) } } catch(e) { context.commit("update_autocomplete_status",3) } }, async getdata_sampling(context,prm) { context.commit("update_autocomplete_status",1) try { prm.token = one_token() let resp= await api.getdata_sampling(prm) if (resp.status != "OK") { context.commit("update_autocomplete_status",3) } else { context.commit("update_autocomplete_status",2) context.commit("update_data_sample",{resume:[],details:[]}) context.commit("update_data_sample",{resume:resp.data.resume,details:resp.data.records}) context.commit("update_header",resp.data.header) context.commit("update_dialog_sample",true) } } catch(e) { context.commit("update_autocomplete_status",3) } }, async getdata_result(context,prm) { context.commit("update_autocomplete_status",1) try { prm.token = one_token() let resp= await api.getdata_result(prm) if (resp.status != "OK") { context.commit("update_autocomplete_status",3) } else { context.commit("update_autocomplete_status",2) context.commit("update_data_result",{details:[]}) context.commit("update_data_result",{details:resp.data.records}) context.commit("update_header",resp.data.header) context.commit("update_dialog_result",true) } } catch(e) { context.commit("update_autocomplete_status",3) } }, async getdata_print(context,prm) { context.commit("update_autocomplete_status",1) try { prm.token = one_token() let resp= await api.getdata_print(prm) if (resp.status != "OK") { context.commit("update_autocomplete_status",3) } else { context.commit("update_autocomplete_status",2) context.commit("update_data_print",resp.data) context.commit("update_dialog_print",true) } } catch(e) { context.commit("update_autocomplete_status",3) } } } }