// 1 => LOADING // 2 => DONE // 3 => ERROR import * as api from "../api/receivereference.js" export default { namespaced: true, state: { last_id: -1, last_saved_id: -1, x_pat_id: 0, act: 'edit', act_comp: 'new', act_pat: 'new', act_send: 'N', get_data_status: 0, search_receivereference: 0, search_status: 0, search_error_message: '', dialog_form_order: false, dialog_history: false, dialog_edit_form_order: false, dialog_status_order: false, norm: '', selected_patient: {}, indeterminatex: false, receivereference_name: '', receivereferences: [], total_receivereferences: 0, histories: [], total_histories: 0, receivereference_patient: [], date: '', note: '', extendnote: '', dueday: 0, extenddueday: 0, duedate: moment(new Date()).format('YYYY-MM-DD'), picname: '', pichp: '', sdate: moment(new Date()).format('YYYY-MM-DD'), companies: [], company: {}, mous: [], mou: {}, total_receivereference: 0, selected_receivereference: {}, save_status: 0, btn_save_seen: true, pgrs_save: false, save_error_message: '', no_save: 0, open_alert_confirmation: false, alert_success: false, msg_success: "", dialog_success: false, dialog_confirmation_delete: false, msg_confirmation_delete: "", dialog_confirmation_send: false, msg_confirmation_send: "", dialog_confirmation_delete_pat: false, msg_confirmation_delete_pat: "", autocomplete_status: 0, dialog_form_patient: false, errors: [], patients: [], noref: '', namapasien: '', dob: '', sexes: [], selected_sex: {}, orderautotests: [], orderautotest: {}, ordertests: [], deleted_ordertests: [], statuss: [], bar_chx_all: false, indeterminatex: false, statuses: [{ name: 'Belum Lunas', value: 'N' }, { name: 'Lunas', value: 'Y' }], selected_status: { name: 'Belum Lunas', value: 'N' }, open_print_note: false, init_sdate: moment(new Date()).format('YYYY-MM-DD'), init_edate: moment(new Date()).format('YYYY-MM-DD'), in_saving: false }, mutations: { update_duedate(state, val) { state.duedate = val }, update_picname(state, val) { state.picname = val }, update_pichp(state, val) { state.pichp = val }, update_in_saving(state, val) { state.in_saving = val }, update_init_sdate(state, val) { state.init_sdate = val }, update_init_edate(state, val) { state.init_edate = val }, update_indeterminatex(state, val) { state.indeterminatex = val }, update_bar_chx_all(state, val) { state.bar_chx_all = val }, update_x_pat_id(state, val) { state.x_pat_id = val }, update_last_id(state, val) { state.last_id = val }, update_last_saved_id(state, val) { state.last_saved_id = val }, update_selected_patient(state, val) { state.selected_patient = val }, update_act(state, val) { state.act = val }, update_act_comp(state, val) { state.act_comp = val }, update_act_pat(state, val) { state.act_pat = val }, update_act_send(state, val) { state.act_send = val }, update_get_data_status(state, val) { state.get_data_status = val }, update_search_error_message(state, receivereference) { state.search_error_message = receivereference }, update_search_receivereference(state, receivereference) { state.search_receivereference = receivereference }, update_dialog_form_order(state, val) { state.dialog_form_order = val }, update_dialog_edit_form_order(state, val) { state.dialog_edit_form_order = val }, update_dialog_status_order(state, val) { state.dialog_status_order = val }, update_receivereference_name(state, val) { state.receivereference_name = val }, update_date(state, val) { state.date = val }, update_note(state, val) { state.note = val }, update_dueday(state, val) { state.dueday = val }, update_extendnote(state, val) { state.extendnote = val }, update_extenddueday(state, val) { state.extenddueday = val }, update_sdate(state, val) { state.sdate = val }, update_receivereferences(state, data) { state.receivereferences = data }, update_histories(state, data) { state.histories = data }, update_selected_receivereference(state, val) { state.selected_receivereference = val }, update_save_status(state, val) { state.save_status = val }, update_btn_save_seen(state, val) { state.btn_save_seen = val }, update_pgrs_save(state, val) { state.pgrs_save = val }, update_save_error_message(state, msg) { state.save_error_message = '' }, update_no_save(state, val) { state.no_save = val }, update_open_alert_confirmation(state, val) { state.open_alert_confirmation = val }, update_alert_success(state, val) { state.alert_success = val }, update_msg_success(state, val) { state.msg_success = val }, update_dialog_success(state, val) { state.dialog_success = val }, update_dialog_history(state, val) { state.dialog_history = val }, update_dialog_confirmation_delete(state, val) { state.dialog_confirmation_delete = val }, update_msg_confirmation_delete(state, val) { state.msg_confirmation_delete = val }, update_dialog_confirmation_send(state, val) { state.dialog_confirmation_send = val }, update_msg_confirmation_send(state, val) { state.msg_confirmation_send = val }, update_dialog_confirmation_delete_pat(state, val) { state.dialog_confirmation_delete_pat = val }, update_msg_confirmation_delete_pat(state, val) { state.msg_confirmation_delete_pat = val }, update_patients(state, val) { state.patients = val }, update_autocomplete_status(state, val) { state.autocomplete_status = val }, update_dialog_form_patient(state, val) { state.dialog_form_patient = val }, update_label_patient(state, val) { state.label_patient = val }, update_companies(state, val) { state.companies = val }, update_company(state, val) { state.company = val }, update_mous(state, val) { state.mous = val }, update_mou(state, val) { state.mou = val }, update_search_status(state, val) { state.search_status = val }, update_errors(state, val) { state.errors = val }, update_total_receivereferences(state, val) { state.total_receivereferences = val }, update_total_histories(state, val) { state.total_histories = val }, update_dob(state, val) { state.dob = val }, update_noref(state, val) { state.noref = val }, update_nama_pasien(state, val) { state.namapasien = val }, update_sexes(state, val) { state.sexes = val }, update_selected_sex(state, val) { state.selected_sex = val }, update_orderautotests(state, data) { state.orderautotests = data }, update_orderautotest(state, val) { state.orderautotest = val }, update_ordertests(state, data) { state.ordertests = data }, update_deleted_ordertests(state, data) { state.deleted_ordertests = data }, update_statuss(state, data) { state.statuss = data }, update_selected_status(state, val) { state.selected_status = val }, update_open_print_note(state, val) { state.open_print_note = val } }, actions: { async save_patient(context, prm) { context.commit("update_search_receivereference", 1) try { let resp = await api.save_patient(prm) if (resp.status != "OK") { context.commit("update_search_receivereference", 3) context.commit("update_search_error_message", resp.message) } else { context.commit("update_search_receivereference", 2) context.commit("update_search_error_message", "") } } catch (e) { context.commit("update_search_receivereference", 3) context.commit("update_search_error_message", e.message) } }, async search(context, prm) { context.commit("update_search_receivereference", 1) try { let resp = await api.search(one_token(), prm.name, prm.snorm, prm.status) if (resp.status != "OK") { context.commit("update_search_receivereference", 3) context.commit("update_search_error_message", resp.message) } else { context.commit("update_search_receivereference", 2) context.commit("update_search_error_message", "") let data = { records: resp.data.records, total: resp.data.total } context.commit("update_receivereferences", data.records) context.commit("update_total_receivereferences", data.total) context.commit("update_no_save", 0) if (prm.lastid === -1 && data.total > 0) { context.commit("update_selected_receivereference", data.records[0]) var pat = data.records[0] context.commit("update_init_sdate", pat.startdate) context.commit("update_receivereference_name", pat.M_CompanyName) context.dispatch("getpatient", { id: pat.F_BillID, mouid: pat.F_BillM_MouID, startdate: pat.startdate, enddate: moment().format("YYYY-MM-DD") }) }else if (prm.lastid !== -1 && data.total > 0) { context.commit("update_selected_receivereference", data.records[prm.lastid]) var pat = data.records[prm.lastid] context.commit("update_receivereference_name", pat.M_CompanyName) context.commit("update_init_sdate", pat.startdate) context.dispatch("getpatient", { id: pat.F_BillID, mouid: pat.F_BillM_MouID, startdate: pat.startdate, enddate: moment().format("YYYY-MM-DD") }) } else { context.commit("update_selected_receivereference", '') var pat = '' context.commit("update_receivereference_name", '') context.dispatch("getpatient", { id: 0, mouid: 0, startdate: moment().format("YYYY-MM-DD"), enddate: moment().format("YYYY-MM-DD") }) } } } catch (e) { context.commit("update_search_receivereference", 3) context.commit("update_search_error_message", e.message) } }, async history(context, prm) { context.commit("update_search_receivereference", 1) try { let resp = await api.history(one_token(), prm.id) if (resp.status != "OK") { context.commit("update_search_receivereference", 3) context.commit("update_search_error_message", resp.message) } else { context.commit("update_search_receivereference", 2) context.commit("update_search_error_message", "") let data = { records: resp.data.records, total: resp.data.total } context.commit("update_histories", data.records) context.commit("update_total_histories", data.total) context.commit("update_no_save", 0) } } catch (e) { context.commit("update_search_receivereference", 3) context.commit("update_search_error_message", e.message) } }, async getsexreg(context) { context.commit("update_get_data_status", 1) try { let resp = await api.getsexreg(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_sexes", data.records.sexes) } } catch (e) { context.commit("update_get_data_status", 3) } }, 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) } else { context.commit("update_save_status", 2) context.commit("update_last_id", prm.T_ReceiveReferenceHeaderID) context.commit("update_dialog_success", true) var msg = "Data pasien " + prm.M_PatientName + " sudah terupdate dong ..." context.commit("update_msg_success", msg) } } catch (e) { context.commit("update_save_status", 3) } }, async newreceivereference(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.newreceivereference(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) console.log(resp.data.id) context.commit("update_last_id", resp.data.id) context.commit("update_dialog_success", true) var msg = "Data berhasil disimpan" context.commit("update_msg_success", msg) context.commit("update_dialog_form_order", false) context.commit("update_in_saving", false) } } catch (e) { context.commit("update_save_status", 3) } }, async editbill(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.editbill(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) console.log(resp.data.id) context.commit("update_last_id", resp.data.id) context.commit("update_dialog_success", true) var msg = "Extend Agreement Sudah Berhasil Diproses" context.commit("update_msg_success", msg) context.commit("update_dialog_form_order", false) } } catch (e) { context.commit("update_save_status", 3) } }, async deletebill(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.deletebill(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) console.log(resp.data.id) context.commit("update_last_id", resp.data.id) context.commit("update_dialog_success", true) var msg = "Data berhasil dihapus" context.commit("update_msg_success", msg) context.commit("update_dialog_form_order", false) } } catch (e) { context.commit("update_save_status", 3) } }, async notifbill(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.notifbill(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) console.log(resp.data.id) context.commit("update_last_id", resp.data.id) context.commit("update_dialog_success", true) var msg = "Permintaan notifikasi ke PIC sedang di proses" context.commit("update_msg_success", msg) context.commit("update_dialog_form_order", false) } } catch (e) { context.commit("update_save_status", 3) } }, async delete(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.xdelete(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) context.commit("update_last_id", 0) context.commit("update_dialog_confirmation_delete", false) context.commit("update_dialog_success", true) var msg = "Data pasien " + prm.M_PatientName + " sudah dihapus dong ..." context.commit("update_msg_success", msg) context.commit("update_receivereference_name", '') context.commit("update_selected_title", {}) context.commit("update_selected_sex", {}) context.commit("update_selected_religion", {}) context.commit("update_dob", '') context.commit("update_hp", '') context.commit("update_phone", '') context.commit("update_email", '') context.commit("update_selected_kartuidentitas", {}) context.commit("update_noidentitas", '') context.commit("update_note", '') } } catch (e) { context.commit("update_save_status", 3) } }, async sendorder(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.sendorder(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) context.commit("update_dialog_confirmation_send", false) context.commit("update_last_id", prm.T_ReceiveReferenceHeaderID) context.commit("update_dialog_success", true) var msg = "Permintaan nomor " + prm.T_ReceiveReferenceHeaderNumber + " sudah berhasil dikirim ..." context.commit("update_msg_success", msg) } } catch (e) { context.commit("update_save_status", 3) } }, async getpatient(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.getpatient(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_patients", data.records) } } catch (e) { context.commit("update_save_status", 3) } }, async searchcompany(context, prm) { context.commit("update_autocomplete_status", 1) try { let resp = await api.searchcompany(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_companies", resp.data.records) } } catch (e) { context.commit("update_autocomplete_status", 3) } }, async getmou(context, prm) { context.commit("update_get_data_status", 1) try { let resp = await api.getmou(one_token(), prm) 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_mous", resp.data.records) } } catch (e) { context.commit("update_get_data_status", 3) } }, async searchtest(context, prm) { context.commit("update_autocomplete_status", 1) try { let resp = await api.searchtest(one_token(), prm.tes, prm.mouid) 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_orderautotests", resp.data.records) } } catch (e) { context.commit("update_autocomplete_status", 3) } }, async savenewpatient(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.savenewpatient(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) context.commit("update_dialog_form_patient", false) context.commit("update_last_id", prm.F_BillDetailF_BillID) context.commit("update_dialog_success", true) var msg = "Penambahan data tagihan perusahaan " + prm.M_CompanyName + " sudah berhasil dong ..." context.commit("update_msg_success", msg) context.commit("update_in_saving", false) } } catch (e) { context.commit("update_save_status", 3) } }, async saveeditpatient(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.saveeditpatient(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) context.commit("update_dialog_form_patient", false) context.commit("update_last_id", prm.T_ReceiveReferencePatientT_ReceiveReferenceHeaderID) context.commit("update_dialog_success", true) var msg = "Penambahan data pasien perusahaan " + prm.M_CompanyName + " sudah berhasil dong ..." context.commit("update_msg_success", msg) } } catch (e) { context.commit("update_save_status", 3) } }, async deletepatient(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.deletepatient(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) context.commit("update_dialog_confirmation_delete_pat", false) context.commit("update_last_id", prm.F_BillDetailID) context.commit("update_dialog_success", true) var msg = "Penghapusan data pasien sudah berhasil dong ..." context.commit("update_msg_success", msg) } } catch (e) { context.commit("update_save_status", 3) } } } }