// 1 => LOADING // 2 => DONE // 3 => ERROR import * as api from "../api/report.js" export default { namespaced: true, state: { reports: [], save_status: 0, save_error_message: '', dialog_form_report: false, dialog_status_order: false, lookup_report: 0, search_status: 0, errors: [], startdate: moment(new Date()).format('YYYY-MM-DD'), enddate: moment(new Date()).format('YYYY-MM-DD'), bases: [], base: {}, omzettypes: [], omzettype: {}, reporttypes: [], reporttype: {}, agingtypes: [], agingtype: {}, statuss: [], autousers:[], autouser:{}, autocitys:[], autocity:{}, autodistricts:[], autodistrict:{}, autokelurahans:[], autokelurahan:{}, autotests:[], autotest:{}, automous:[], automou:{}, autodoctors:[], autodoctor:{}, addressdoctors:[], addressdoctor:{}, current_page:1, x_search: '', total_data: 0, selected_report: { name: "" }, get_data_status: 0, get_data_error_message: '', new_report:'', value_new_report:'', new_reportname:'', value_new_reportname:'', selected_filter_status: {}, f_statuss: [], reportcode:'', reportgroup: '', reportname:'' }, mutations: { update_reportgroup(state, val) { state.reportgroup = val }, update_reportcode(state, val) { state.reportcode = val }, update_reportname(state, val) { state.reportname = val }, update_selected_filter_status(state, val) { state.selected_filter_status = val }, update_f_statuss(state, val) { state.f_statuss = val }, update_value_new_report(state, val){ state.value_new_report = val }, update_new_report(state, val) { state.new_report = val }, update_value_new_reportname(state, val){ state.value_new_reportname = val }, update_new_reportname(state, val) { state.new_reportname = val }, update_selected_report(state, val) { state.selected_report = val }, update_x_search(state, val) { state.x_search = val }, update_current_page(state, val) { state.current_page = val }, update_total_data(state, val) { state.total_data = val }, update_autousers(state,data){ state.autousers = data }, update_autouser(state,val){ state.autouser = val }, update_autocitys(state,data){ state.autocitys = data }, update_autocity(state,val){ state.autocity = val }, update_autotests(state,data){ state.autotests = data }, update_autotest(state,val){ state.autotest = val }, update_automous(state,data){ state.automous = data }, update_automou(state,val){ state.automou = val }, update_autodoctors(state,data){ state.autodoctors = data }, update_autodoctor(state,val){ state.autodoctor = val }, update_addressdoctors(state,data){ state.addressdoctors = data }, update_addressdoctor(state,val){ state.addressdoctor = val }, update_autodistricts(state,data){ state.autodistricts = data }, update_autodistrict(state,val){ state.autodistrict = val }, update_autokelurahans(state,data){ state.autokelurahans = data }, update_autokelurahan(state,val){ state.autokelurahan = val }, update_errors(state, val) { state.errors = val }, update_reports(state, data) { state.reports = data }, update_save_status(state, val) { state.save_status = val }, update_save_error_message(state, val) { state.save_error_message = val }, update_dialog_form_report(state, val) { state.dialog_form_report = val }, update_lookup_report(state, val) { state.lookup_report = val }, update_startdate(state, val) { state.startdate = val }, update_enddate(state, val) { state.enddate = val }, update_bases(state, data) { state.bases = data }, update_base(state, val) { state.base = val }, update_omzettypes(state, data) { state.omzettypes = data }, update_omzettype(state, val) { state.omzettype = val }, update_reporttypes(state, data) { state.reporttypes = data }, update_reporttype(state, val) { state.reporttype = val }, update_agingtypes(state, data) { state.agingtypes = data }, update_agingtype(state, val) { state.agingtype = val }, update_search_status(state, val) { state.search_status = val }, update_statuss(state, data) { state.statuss = data }, update_dialog_status_order(state, val) { state.dialog_status_order = val }, update_get_data_status(state, val) { state.get_data_status = val }, update_get_data_error_message(state, val) { state.get_data_error_message = val } }, actions: { async save(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.save(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) context.commit("update_save_error_message", resp.message) } else { var data = { records: resp.data.records, total: resp.data.total } if (data.total !== -1) { context.commit("update_save_status", 2) context.commit("update_save_error_message", resp.message) context.commit("user/update_alert_success", true, { root: true }) context.commit("update_dialog_form_report", false) var msg = "Saran sudah disimpan dong" context.commit("user/update_msg_success", msg, { root: true }) context.commit("user/update_alert_success", true, { root: true }) context.dispatch("lookup", { id: prm.userid, reportgroup: '', reportcode: '', reportname: '', status: prm.filterstatus, current_page: prm.current_page, lastid: -1 }) } else { context.commit("update_errors", resp.data.errors) } } } catch (e) { context.commit("update_save_status", 3) context.commit("update_save_error_message", e.message) console.log(e) } }, async saveaddeditreport(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.saveaddeditreport(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) context.commit("update_save_error_message", resp.message) } else { var data = { records: resp.data.records, total: resp.data.total } if (data.total !== -1) { context.commit("update_save_status", 2) context.commit("update_save_error_message", resp.message) context.commit("user/update_alert_success", true, { root: true }) context.commit("update_dialog_form_report", false) var msg = '' if(prm.status === 'N'){ msg = "Laporan "+prm.name+" batal dipilih" }else{ msg = "Laporan "+prm.name+" berhasil dipilih" } context.commit("user/update_msg_success", msg, { root: true }) context.commit("user/update_alert_success", true, { root: true }) context.dispatch("lookup", { id: prm.userid, reportgroup: prm.reportgroup, reportcode: prm.reportcode, reportname: prm.reportname, status: prm.filterstatus, current_page: prm.current_page, lastid: -1 }) } else { context.commit("update_errors", resp.data.errors) } } } catch (e) { context.commit("update_save_status", 3) context.commit("update_save_error_message", e.message) console.log(e) } }, async saveallreportdetail(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.saveallreportdetail(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) context.commit("update_save_error_message", resp.message) } else { var data = { records: resp.data.records, total: resp.data.total } if (data.total !== -1) { context.commit("update_save_status", 2) context.commit("update_save_error_message", resp.message) context.commit("user/update_alert_success", true, { root: true }) context.commit("update_dialog_form_report", false) var msg = "Saran sudah disimpan dong" context.commit("user/update_msg_success", msg, { root: true }) context.commit("user/update_alert_success", true, { root: true }) context.dispatch("lookup", { id: prm.userid, current_page: 1, lastid: -1 }) } else { context.commit("update_errors", resp.data.errors) } } } catch (e) { context.commit("update_save_status", 3) context.commit("update_save_error_message", e.message) console.log(e) } }, async lookupx(context, prm) { context.commit("update_lookup_report", 1) try { let resp = await api.lookupx(one_token(), prm.id) if (resp.status != "OK") { context.commit("update_lookup_report", 3) } else { context.commit("update_lookup_report", 2) let data = { records: resp.data.records, total: resp.data.total } context.commit("update_reports", data.records) } } catch (e) { context.commit("update_lookup_report", 3) } }, async lookup(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.lookup(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) let data = { records: resp.data.records, total: resp.data.total } context.commit("update_reports", data.records) console.log('status') console.log(data.records.statuss) context.commit("update_statuss", data.records.statuss) context.commit("update_total_data", data.total) } } catch (e) { context.commit("update_save_status", 3) } }, async lookupbyname(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.lookupbyname(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) let data = { records: resp.data.records, total: resp.data.total } context.commit("update_reports", data.records) console.log(data.records) context.commit("update_total_data", data.total) } } catch (e) { context.commit("update_save_status", 3) } }, async getstatus(context) { context.commit("update_get_data_status", 1) try { let resp = await api.getstatus(one_token()) if (resp.status != "OK") { context.commit("update_get_data_status", 3) } else { context.commit("update_get_data_status", 2) let data = { records: resp.data.records, total: resp.data.total } context.commit("update_f_statuss", data.records.f_statuss) context.commit("update_selected_filter_status", data.records.f_statuss[0]) prm.status = data.records.f_statuss[0].M_StatusID // context.dispatch("lookupbyname", prm) } } catch (e) { context.commit("update_get_data_status", 3) } }, async delete(context, prm) { context.commit("update_save_status", 1) try { let resp = await api.xdelete(one_token(), prm.xid) if (resp.status != "OK") { context.commit("user/update_save_status", 3, { root: true }) context.commit("user/update_save_error_message", resp.message, { root: true }) } else { context.commit("user/update_save_status", 2, { root: true }) context.commit("user/update_save_error_message", resp.message, { root: true }) context.commit("user/update_alert_success", true, { root: true }) //context.commit("update_dialog_form_schedule_promise", false) var msg = "Pemeriksaan sudah dihapus dong" context.commit("user/update_msg_success", msg, { root: true }) context.commit("user/update_alert_success", true, { root: true }) context.dispatch("lookupbyname", { user: prm.suser, report: prm.sreport, current_page: 1, lastid: -1 }) } } catch (e) { context.commit("update_save_status", 3) context.commit("update_save_error_message", e.message) console.log(e) } }, async searchuser(context,prm) { context.commit("user/update_autocomplete_status",1,{root: true}) try { prm.token = one_token() let resp= await api.searchuser(prm) if (resp.status != "OK") { context.commit("user/update_autocomplete_status",3,{root: true}) } else { context.commit("user/update_autocomplete_status",2,{root: true}) let data = { records : resp.data.records, total: resp.data.total } context.commit("update_autousers",resp.data.records) } } catch(e) { context.commit("user/update_autocomplete_status",3,{root: true}) } }, async searchcity(context,prm) { context.commit("user/update_autocomplete_status",1,{root: true}) try { prm.token = one_token() let resp= await api.searchcity(prm) if (resp.status != "OK") { context.commit("user/update_autocomplete_status",3,{root: true}) } else { context.commit("user/update_autocomplete_status",2,{root: true}) let data = { records : resp.data.records, total: resp.data.total } context.commit("update_autocitys",resp.data.records) } } catch(e) { context.commit("user/update_autocomplete_status",3,{root: true}) } }, async searchdistrict(context,prm) { context.commit("user/update_autocomplete_status",1,{root: true}) try { prm.token = one_token() let resp= await api.searchdistrict(prm) if (resp.status != "OK") { context.commit("user/update_autocomplete_status",3,{root: true}) } else { context.commit("user/update_autocomplete_status",2,{root: true}) let data = { records : resp.data.records, total: resp.data.total } context.commit("update_autodistricts",resp.data.records) } } catch(e) { context.commit("user/update_autocomplete_status",3,{root: true}) } }, async searchkelurahan(context,prm) { context.commit("user/update_autocomplete_status",1,{root: true}) try { prm.token = one_token() let resp= await api.searchkelurahan(prm) if (resp.status != "OK") { context.commit("user/update_autocomplete_status",3,{root: true}) } else { context.commit("user/update_autocomplete_status",2,{root: true}) let data = { records : resp.data.records, total: resp.data.total } context.commit("update_autokelurahans",resp.data.records) } } catch(e) { context.commit("user/update_autocomplete_status",3,{root: true}) } }, async searchtest(context,prm) { context.commit("user/update_autocomplete_status",1,{root: true}) try { prm.token = one_token() let resp= await api.searchtest(prm) if (resp.status != "OK") { context.commit("user/update_autocomplete_status",3,{root: true}) } else { context.commit("user/update_autocomplete_status",2,{root: true}) let data = { records : resp.data.records, total: resp.data.total } context.commit("update_autotests",resp.data.records) } } catch(e) { context.commit("user/update_autocomplete_status",3,{root: true}) } }, async searchmou(context,prm) { context.commit("user/update_autocomplete_status",1,{root: true}) try { prm.token = one_token() let resp= await api.searchmou(prm) if (resp.status != "OK") { context.commit("user/update_autocomplete_status",3,{root: true}) } else { context.commit("user/update_autocomplete_status",2,{root: true}) let data = { records : resp.data.records, total: resp.data.total } context.commit("update_automous",resp.data.records) } } catch(e) { context.commit("user/update_autocomplete_status",3,{root: true}) } }, async searchdoctor(context,prm) { context.commit("user/update_autocomplete_status",1,{root: true}) try { prm.token = one_token() let resp= await api.searchdoctor(prm) if (resp.status != "OK") { context.commit("user/update_autocomplete_status",3,{root: true}) } else { context.commit("user/update_autocomplete_status",2,{root: true}) let data = { records : resp.data.records, total: resp.data.total } context.commit("update_autodoctors",resp.data.records) } } catch(e) { context.commit("user/update_autocomplete_status",3,{root: true}) } }, async selectaddressdoctor(context,prm) { context.commit("update_get_data_status", 1) try { prm.token = one_token() let resp = await api.selectaddressdoctor(prm) if (resp.status != "OK") { context.commit("update_get_data_status", 3) context.commit("update_get_data_error_message", resp.message) } else { context.commit("update_get_data_status", 2) context.commit("update_get_data_error_message", "") context.commit("update_addressdoctors", resp.data.records.addressdoctors) } } catch (e) { context.commit("update_get_data_status", 3) context.commit("update_get_data_error_message", e.message) console.log(e) } } } }