// 1 => LOADING // 2 => DONE // 3 => ERROR import * as api from "../api/multirule.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_multirule: 0, search_status: 0, search_error_message: '', dialog_form_multirule: false, dialog_edit_form_multirule: false, dialog_form_quantitative: false, dialog_edit_form_quantitative: false, dialog_form_qualitative: false, dialog_edit_form_qualitative: false, dialog_status_order: false, norm: '', multirule_name: '', multirules: [], total_multirules: 0, multirule_natmultirule: [], date: '', note: '', sdate: moment(new Date()).format('YYYY-MM-DD'), companies: [], company: {}, mous: [], mou: {}, total_multirule: 0, selected_multirule: {}, 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_natmultirule: false, errors: [], natmultirules: [], minage: '', maxage: '', minvalue: '', maxvalue: '', note: '', description: '', sexes: [], selected_sex: {}, valuetypexes: [], selected_valuetypex: {}, valuetypees: [], selected_valuetype: {}, valuequalitativees: [], selected_valuequalitative: {}, tests: [], test: {}, testqualitatives: [], testqualitative: {}, statuss: [], open_print_note: false, methodes: [], methode: {}, multiruletypees: [], selected_multiruletype: {}, flages: [], selected_flag: {}, ageunites: [], selected_ageunit: {}, validdate: moment(new Date()).format('YYYY-MM-DD'), extremelow: '', extremehigh: '', linieritas: '', limitdetection: '', isnotapplicable: 'N', nilai: '', orderautotests: [], orderautotest: {}, ordertests: [], deleted_ordertests: [], error_name:false }, mutations: { 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_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, multirule) { state.search_error_message = multirule }, update_search_multirule(state, multirule) { state.search_multirule = multirule }, update_dialog_form_multirule(state, val) { state.dialog_form_multirule = val }, update_dialog_edit_form_multirule(state, val) { state.dialog_edit_form_multirule = val }, update_dialog_form_quantitative(state, val) { state.dialog_form_quantitative = val }, update_dialog_edit_form_quantitative(state, val) { state.dialog_edit_form_quantitative = val }, update_dialog_form_qualitative(state, val) { state.dialog_form_qualitative = val }, update_dialog_edit_form_qualitative(state, val) { state.dialog_edit_form_qualitative = val }, update_dialog_status_order(state, val) { state.dialog_status_order = val }, update_multirule_name(state, val) { state.multirule_name = val }, update_date(state, val) { state.date = val }, update_sdate(state, val) { state.sdate = val }, update_note(state, val) { state.note = val }, update_multirules(state, data) { state.multirules = data }, update_selected_multirule(state, val) { state.selected_multirule = 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_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_natmultirules(state, val) { state.natmultirules = val }, update_autocomplete_status(state, val) { state.autocomplete_status = val }, update_dialog_form_natmultirule(state, val) { state.dialog_form_natmultirule = val }, update_label_natmultirule(state, val) { state.label_natmultirule = 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_multirules(state, val) { state.total_multirules = val }, update_minage(state, val) { state.minage = val }, update_maxage(state, val) { state.maxage = val }, update_minvalue(state, val) { state.minvalue = val }, update_maxvalue(state, val) { state.maxvalue = val }, update_note(state, val) { state.note = val }, update_description(state, val) { state.description = 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_valuetypexes(state, val) { state.valuetypexes = val }, update_selected_valuetypex(state, val) { state.selected_valuetypex = val }, update_valuetypees(state, val) { state.valuetypees = val }, update_selected_valuetype(state, val) { state.selected_valuetype = val }, update_valuequalitativees(state, val) { state.valuequalitativees = val }, update_selected_valuequalitative(state, val) { state.selected_valuequalitative = val }, update_tests(state, data) { state.tests = data }, update_test(state, val) { state.test = val }, update_testqualitatives(state, data) { state.testqualitatives = data }, update_testqualitative(state, val) { state.testqualitative = 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_open_print_note(state, val) { state.open_print_note = val }, update_methodes(state, data) { state.methodes = data }, update_methode(state, val) { state.methode = val }, update_multiruletypees(state, val) { state.multiruletypees = val }, update_selected_multiruletype(state, val) { state.selected_multiruletype = val }, update_flages(state, val) { state.flages = val }, update_selected_flag(state, val) { state.selected_flag = val }, update_ageunites(state, val) { state.ageunites = val }, update_selected_ageunit(state, val) { state.selected_ageunit = val }, update_validdate(state, val) { state.validdate = val }, update_extremelow(state, val) { state.extremelow = val }, update_extremehigh(state, val) { state.extremehigh = val }, update_linieritas(state, val) { state.linieritas = val }, update_limitdetection(state, val) { state.limitdetection = val }, update_isnotapplicable(state, val) { state.isnotapplicable = val }, update_nilai(state, val) { state.nilai = val }, update_orderautotests(state, data) { state.orderautotests = data }, update_orderautotest(state, val) { state.orderautotest = val }, update_error_name(state, val) { state.error_name = val } }, actions: { async search(context, prm) { context.commit("update_search_multirule", 1) try { let resp = await api.search(one_token(), prm.code, prm.name) if (resp.status != "OK") { context.commit("update_search_multirule", 3) context.commit("update_search_error_message", resp.message) } else { context.commit("update_search_multirule", 2) context.commit("update_search_error_message", "") let data = { records: resp.data.records, total: resp.data.total } context.commit("update_multirules", data.records) context.commit("update_total_multirules", data.total) context.commit("update_no_save", 0) context.commit("update_selected_multirule", data.records[0]) var pat = data.records[0] context.commit("update_multirule_name", pat.Nat_TestName) context.commit("update_extremelow", pat.Nat_MultiRuleExtremeLow) context.commit("update_extremehigh", pat.Nat_MultiRuleExtremeHigh) context.commit("update_linieritas", pat.Nat_MultiRuleLinieritas) context.commit("update_limitdetection", pat.Nat_MultiRuleLimitDetection) context.dispatch("getnatmultirule", { id: pat.Nat_TestID, isquantitative: pat.Nat_TestIsQuantitative }) context.dispatch("getvaluetypex", pat.Nat_TestIsQuantitative) } } catch (e) { context.commit("update_search_multirule", 3) context.commit("update_search_error_message", e.message) console.log(e) } }, 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_valuetypees", data.records.valuetypees) context.commit("update_valuequalitativees", data.records.valuequalitativees) } } catch (e) { context.commit("update_get_data_status", 3) } }, async getvaluetypex(context, prm) { context.commit("update_get_data_status", 1) try { let resp = await api.getvaluetypex(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_valuetypexes", data.records.valuetypexes) } } 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.Nat_TestID) context.commit("update_dialog_success", true) var msg = "Data sudah tersimpan dong ..." context.commit("update_msg_success", msg) } } catch (e) { context.commit("update_save_status", 3) } }, async newmultirule(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.newmultirule(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_multirule", 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 sudah dihapus dong ..." context.commit("update_msg_success", msg) context.commit("update_extremelow", '') context.commit("update_extremehigh", '') context.commit("update_linieritas", '') context.commit("update_limitdetection", '') context.dispatch("getnatmultirule", { id: prm.testid, isquantitative: prm.isquantitative }) } } 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.Nat_TestID) context.commit("update_dialog_success", true) var msg = "Permintaan nomor " + prm.Nat_TestNumber + " sudah berhasil dikirim ..." context.commit("update_msg_success", msg) } } catch (e) { context.commit("update_save_status", 3) } }, async getnatmultirule(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.getnatmultirule(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_natmultirules", data.records) } } catch (e) { context.commit("update_save_status", 3) } }, async searchmethode(context, prm) { context.commit("update_autocomplete_status", 1) try { let resp = await api.searchmethode(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_methodes", resp.data.records) } } catch (e) { context.commit("update_autocomplete_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) 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 } var pat = data.records[0] context.commit("update_orderautotests", resp.data.records) context.dispatch("getvaluetypex", pat.Nat_TestIsQuantitative) } } catch (e) { context.commit("update_autocomplete_status", 3) } }, async searchtestqualitative(context, prm) { context.commit("update_autocomplete_status", 1) try { let resp = await api.searchtestqualitative(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_testqualitatives", resp.data.records) } } catch (e) { context.commit("update_autocomplete_status", 3) } }, async savenewnatmultirule(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.savenewnatmultirule(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) context.commit("update_dialog_form_natmultirule", false) context.commit("update_last_id", prm.Nat_MultiRuleNat_TestID) context.commit("update_dialog_success", true) var msg = "Penambahan data normal value pemeriksaan " + prm.Nat_TestName + " sudah berhasil dong ..." context.commit("update_msg_success", msg) } } catch (e) { context.commit("update_save_status", 3) } }, async saveeditnatmultirule(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.saveeditnatmultirule(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) context.commit("update_dialog_form_natmultirule", false) context.commit("update_last_id", prm.Nat_MultiRuleNat_TestID) context.commit("update_dialog_success", true) var msg = "Penambahan data nilai normal pemeriksaan " + prm.Nat_TestName + " sudah berhasil dong ..." context.commit("update_msg_success", msg) } } catch (e) { context.commit("update_save_status", 3) } }, async savemultirulelang(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.savemultirulelang(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) context.commit("update_dialog_form_natmultirule", false) context.commit("update_last_id", prm.Nat_MultiRuleNat_TestID) context.commit("update_dialog_success", true) var msg = "Penambahan bahasa nilai normal sudah berhasil dong ..." context.commit("update_msg_success", msg) } } catch (e) { context.commit("update_save_status", 3) } }, async deletenatmultirule(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.deletenatmultirule(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.Nat_MultiRuleNat_TestID) context.commit("update_dialog_success", true) var msg = "Penghapusan data nilai normal " + prm.Nat_MultiRuleName + " dari pemeriksaan " + prm.Nat_TestName + " sudah berhasil dong ..." context.commit("update_msg_success", msg) } } catch (e) { context.commit("update_save_status", 3) } }, async savereflextest(context, prm) { context.commit("update_save_status", 1) try { let resp = await api.savereflextest(one_token(),prm.Nat_MultiRuleRuleNat_MultiRuleID,prm.Nat_MultiRuleNilai,prm.testid,prm.isquantitative,prm.extremelow,prm.extremehigh,prm.linieritas,prm.limitdetection, prm.isnotapplicable, prm.ordertests) if (resp.status != "OK") { context.commit("update_save_status", 3) context.commit("update_save_error_message", resp.message) } else { context.commit("update_save_status", 2) context.commit("update_save_error_message", resp.message) context.commit("update_save_error_message", resp.message) let data = { records: resp.data.records, total: resp.data.total } if (data.total !== -1) { context.commit("update_error_name", false) context.commit("update_alert_success", true) context.commit("update_dialog_form_quantitative", false) var msg = "Data sudah tersimpan dong ..." context.commit("update_msg_success", msg) context.commit("update_extremelow", prm.extremelow) context.commit("update_extremehigh", prm.extremehigh) context.commit("update_linieritas", prm.linieritas) context.commit("update_limitdetection", prm.limitdetection) context.dispatch("getnatmultirule", { id: prm.testid, isquantitative: prm.isquantitative }) } else { context.commit("update_error_name", true) } } } catch (e) { context.commit("update_save_status", 3) context.commit("update_save_error_message", e.message) console.log(e) } }, async updatereflextest(context, prm) { context.commit("update_save_status", 1) try { let resp = await api.updatereflextest(one_token(),prm) if (resp.status != "OK") { context.commit("update_save_status", 3) context.commit("update_save_error_message", resp.message) } else { context.commit("update_save_status", 2) context.commit("update_save_error_message", resp.message) context.commit("update_save_error_message", resp.message) let data = { records: resp.data.records, total: resp.data.total } if(data.total !== -1){ context.commit("update_error_name", false) context.commit("update_alert_success", true) context.commit("update_dialog_form_quantitative", false) var msg = "Data sudah terupdate dong ..." context.commit("update_msg_success", msg) context.commit("update_extremelow", prm.extremelow) context.commit("update_extremehigh", prm.extremehigh) context.commit("update_linieritas", prm.linieritas) context.commit("update_limitdetection", prm.limitdetection) context.dispatch("getnatmultirule", { id: prm.testid, isquantitative: prm.isquantitative }) }else{ context.commit("update_error_name", true) } } } catch (e) { context.commit("update_save_status", 3) context.commit("update_save_error_message", e.message) console.log(e) } } } }