// 1 => LOADING // 2 => DONE // 3 => ERROR import * as api from "../api/test.js" export default { namespaced: true, state: { last_id: -1, last_saved_id: -1, x_addr_id: 0, act: 'edit', act_addr: 'new', get_data_status: 0, search_test: 0, search_status: 0, statuses: [{ label: 'Bukan Kurir', value: 'N' }, { label: 'Sebagai Kurir', value: 'Y' }], selected_status: { label: 'Bukan Kurir', value: 'N' }, search_error_message: '', dobs: [], selected_dob: {}, dob: '', test_name: '', tests: [], total_tests: 0, subgroups: [], selected_subgroup: {}, address: '', cities: [], city_address: {}, samples: [], sample: {}, sampletypees: [], sampletype_address: {}, code: '', shortname: '', unit: '', groups: [], selected_group: {}, types: [], selected_type: {}, nonlabs: [], selected_nonlab: {}, religions: [], selected_religion: {}, startdate: '', enddate: '', positions: [], selected_position: {}, namebarcode: '', worklistname: '', fontsize: '', fontcolor: '', maxdiscount: '', flagbold: 'N', flagitalic: 'N', flagquantitative: 'N', deltacheck: 'N', trendanalysis: 'N', isresult: 'N', isprice: 'N', printresult: 'N', printnote: 'N', isworklist: 'N', flaglow: '', flaghigh: '', total_test: 0, selected_test: {}, 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_delete_addr: false, msg_confirmation_delete_addr: "", autocomplete_status: 0, dialog_form_address: false, errors: [], current_page:1, name:'', scode:'' }, mutations: { update_name(state, val) { state.name = val }, update_scode(state, val) { state.scode = val }, update_current_page(state, val) { state.current_page = val }, update_x_addr_id(state, val) { state.x_addr_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_addr(state, val) { state.act_addr = 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_test(state, test) { state.search_test = test }, update_test_name(state, val) { state.test_name = val }, update_tests(state, data) { state.tests = data }, update_selected_test(state, val) { state.selected_test = val }, update_dob(state, val) { state.dob = val }, update_subgroups(state, val) { state.subgroups = val }, update_selected_subgroup(state, val) { state.selected_subgroup = val }, update_address(state, val) { state.address = val }, update_cities(state, val) { state.cities = val }, update_city_address(state, val) { state.city_address = val }, update_sampletypees(state, val) { state.sampletypees = val }, update_sampletype_address(state, val) { state.sampletype_address = val }, update_samples(state, val) { state.samples = val }, update_sample(state, val) { state.sample = val }, update_code(state, val) { state.code = val }, update_shortname(state, val) { state.shortname = val }, update_unit(state, val) { state.unit = val }, update_religions(state, val) { state.religions = val }, update_selected_religion(state, val) { state.selected_religion = val }, update_groups(state, val) { state.groups = val }, update_selected_group(state, val) { state.selected_group = val }, update_types(state, val) { state.types = val }, update_selected_type(state, val) { state.selected_type = val }, update_nonlabs(state, val) { state.nonlabs = val }, update_selected_nonlab(state, val) { state.selected_nonlab = val }, update_startdate(state, val) { state.startdate = val }, update_enddate(state, val) { state.enddate = val }, update_positions(state, val) { state.positions = val }, update_selected_position(state, val) { state.selected_position = val }, update_namebarcode(state, val) { state.namebarcode = val }, update_worklistname(state, val) { state.worklistname = val }, update_fontsize(state, val) { state.fontsize = val }, update_fontcolor(state, val) { state.fontcolor = val }, update_maxdiscount(state, val) { state.maxdiscount = val }, update_flagbold(state, val) { state.flagbold = val }, update_flagitalic(state, val) { state.flagitalic = val }, update_flagquantitative(state, val) { state.flagquantitative = val }, update_deltacheck(state, val) { state.deltacheck = val }, update_trendanalysis(state, val) { state.trendanalysis = val }, update_isresult(state, val) { state.isresult = val }, update_isprice(state, val) { state.isprice = val }, update_printresult(state, val) { state.printresult = val }, update_printnote(state, val) { state.printnote = val }, update_isworklist(state, val) { state.isworklist = val }, update_flaglow(state, val) { state.flaglow = val }, update_flaghigh(state, val) { state.flaghigh = 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_delete_addr(state, val) { state.dialog_confirmation_delete_addr = val }, update_msg_confirmation_delete_addr(state, val) { state.msg_confirmation_delete_addr = val }, update_addresses(state, val) { state.addresses = val }, update_autocomplete_status(state, val) { state.autocomplete_status = val }, update_dialog_form_address(state, val) { state.dialog_form_address = val }, update_label_address(state, val) { state.label_address = val }, update_search_status(state, val) { state.search_status = val }, update_errors(state, val) { state.errors = val }, update_total_tests(state, val) { state.total_tests = val }, update_selected_status(state, val) { state.selected_status = val } }, actions: { async search(context, prm) { context.commit("update_search_test", 1) try { prm.token = one_token() let resp = await api.search(prm) if (resp.status != "OK") { context.commit("update_search_test", 3) context.commit("update_search_error_message", resp.message) } else { context.commit("update_search_test", 2) context.commit("update_search_error_message", "") let data = { records: resp.data.records, total: resp.data.total } context.commit("update_tests", data.records) context.commit("update_total_tests", data.total) context.commit("update_no_save", 0) if (prm.lastid === -1) { context.commit("update_selected_test", data.records[0]) var sta = data.records[0] context.commit("update_selected_group", { Nat_GroupID: sta.T_TestNat_GroupID, Nat_GroupName: sta.Nat_GroupName }) context.commit("update_selected_type", { Nat_TestTypeID: sta.Nat_TestNat_TestTypeID, Nat_TestTypeName: sta.Nat_TestTypeName }) context.commit("update_selected_nonlab", { T_TestIsNonLabID: sta.T_TestIsNonLabID, T_TestIsNonLab: sta.T_TestIsNonLabs }) context.commit("update_test_name", sta.T_TestName) context.commit("update_selected_subgroup", { Nat_SubGroupID: sta.T_TestNat_SubgroupID, Nat_SubGroupName: sta.Nat_SubGroupName }) context.commit("update_sampletypees", [{ T_SampleTypeID: sta.T_TestT_SampleTypeID, T_SampleTypeName: sta.T_SampleTypeName }]) context.commit("update_sampletype_address", { T_SampleTypeID: sta.T_TestT_SampleTypeID, T_SampleTypeName: sta.T_SampleTypeName }) context.commit("update_code", sta.T_TestSasCode) context.commit("update_shortname", sta.T_TestShortName) context.commit("update_unit", sta.Nat_UnitName) context.commit("update_flaglow", sta.Nat_TestFlagLow) context.commit("update_flaghigh", sta.Nat_TestFlagHigh) context.commit("update_namebarcode", sta.T_TestShortNameBarcode) context.commit("update_worklistname", sta.T_TestWorklistName) context.commit("update_fontsize", sta.T_TestFontSize) context.commit("update_fontcolor", sta.T_TestFontColor) context.commit("update_maxdiscount", sta.T_TestMaxDiscount) context.commit("update_flagbold", sta.T_TestIsBold) context.commit("update_flagitalic", sta.T_TestIsItalic) context.commit("update_flagquantitative", sta.T_TestIsQuantitative) context.commit("update_deltacheck", sta.T_TestIsDeltaCheck) context.commit("update_trendanalysis", sta.T_TestIsTrendAnalysis) context.commit("update_isresult", sta.T_TestIsResult) context.commit("update_isprice", sta.T_TestIsPrice) context.commit("update_printresult", sta.T_TestIsPrintResult) context.commit("update_printnote", sta.T_TestIsPrintNota) context.commit("update_isworklist", sta.T_TestIsWorklist) } else { context.commit("update_selected_test", data.records[prm.lastid]) var sta = data.records[prm.lastid] context.commit("update_selected_group", { Nat_GroupID: sta.T_TestNat_GroupID, Nat_GroupName: sta.Nat_GroupName }) context.commit("update_selected_type", { Nat_TestTypeID: sta.Nat_TestNat_TestTypeID, Nat_TestTypeName: sta.Nat_TestTypeName }) context.commit("update_selected_nonlab", { T_TestIsNonLabID: sta.T_TestIsNonLabID, T_TestIsNonLab: sta.T_TestIsNonLabs }) context.commit("update_test_name", sta.T_TestName) context.commit("update_dob", sta.T_TestDOBx) context.commit("update_selected_subgroup", { Nat_SubGroupID: sta.T_TestNat_SubgroupID, Nat_SubGroupName: sta.Nat_SubGroupName }) context.commit("update_sampletypees", [{ T_SampleTypeID: sta.T_TestT_SampleTypeID, T_SampleTypeName: sta.T_SampleTypeName }]) context.commit("update_sampletype_address", { T_SampleTypeID: sta.T_TestT_SampleTypeID, T_SampleTypeName: sta.T_SampleTypeName }) context.commit("update_code", sta.T_TestCode) context.commit("update_shortname", sta.T_TestShortName) context.commit("update_flaglow", sta.Nat_TestFlagLow) context.commit("update_flaghigh", sta.Nat_TestFlagHigh) context.commit("update_unit", sta.Nat_UnitName) context.commit("update_selected_religion", { M_ReligionID: sta.T_TestM_ReligionID, M_ReligionName: sta.M_ReligionName }) context.commit("update_startdate", sta.T_TestStartDate) context.commit("update_enddate", sta.T_TestEndDate) context.commit("update_selected_position", { M_PositionID: sta.T_TestM_PositionID, M_PositionName: sta.M_PositionName }) context.commit("update_namebarcode", sta.T_TestShortNameBarcode) context.commit("update_worklistname", sta.T_TestWorklistName) context.commit("update_fontsize", sta.T_TestFontSize) context.commit("update_fontcolor", sta.T_TestFontColor) context.commit("update_maxdiscount", sta.T_TestMaxDiscount) context.commit("update_flagbold", sta.T_TestIsBold) context.commit("update_flagitalic", sta.T_TestIsItalic) context.commit("update_flagquantitative", sta.T_TestIsQuantitative) context.commit("update_deltacheck", sta.T_TestIsDeltaCheck) context.commit("update_trendanalysis", sta.T_TestIsTrendAnalysis) context.commit("update_isresult", sta.T_TestIsResult) context.commit("update_isprice", sta.T_TestIsPrice) context.commit("update_printresult", sta.T_TestIsPrintResult) context.commit("update_printnote", sta.T_TestIsPrintNota) context.commit("update_isworklist", sta.T_TestIsWorklist) } } } catch (e) { context.commit("update_search_test", 3) context.commit("update_search_error_message", e.message) console.log(e) } }, async checkedhs(context,prm) { context.commit("update_get_data_status", 1) try { prm.token = one_token() let resp = await api.checkedhs(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.dispatch("search", { current_page:context.state.current_page, name: context.state.name, scode: context.state.scode, lastid: -1 }) //context.commit("update_nonlabs", data.records.nonlabs) } } catch (e) { context.commit("update_get_data_status", 3) } }, async checkedfavorite(context,prm) { context.commit("update_get_data_status", 1) try { prm.token = one_token() let resp = await api.checkedfavorite(prm) if (resp.status != "OK") { context.commit("update_get_data_status", 3) alert('Jumlah pemeriksaan favorit sudah melebihi 6') context.dispatch("search", { current_page:context.state.current_page, name: context.state.name, scode: context.state.scode, lastid: -1 }) } else { context.commit("update_get_data_status", 2) let data = { records: resp.data.records, total: resp.data.total } context.dispatch("search", { current_page:context.state.current_page, name: context.state.name, scode: context.state.scode, lastid: -1 }) //context.commit("update_nonlabs", data.records.nonlabs) } } catch (e) { context.commit("update_get_data_status", 3) } }, 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_subgroups", data.records.subgroupes) context.commit("update_groups", data.records.groups) context.commit("update_types", data.records.types) context.commit("update_nonlabs", data.records.nonlabs) } } 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_TestID) context.commit("update_dialog_success", true) var msg = "Data pemeriksaan " + prm.T_TestName + " sudah terupdate dong ..." context.commit("update_msg_success", msg) } } catch (e) { context.commit("update_save_status", 3) } }, async check_exist_code(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.check_exist_code(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 } if(parseInt(data.records.x_count) > 0){ context.commit("update_code", prm.trx.T_TestSasCode) } } } catch (e) { context.commit("update_save_status", 3) } }, async newtest(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.newtest(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 karyawan " + prm.T_TestName + " sudah tersimpan dong ..." context.commit("update_msg_success", msg) } } 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 karyawan " + prm.T_TestName + " sudah dihapus dong ..." context.commit("update_msg_success", msg) context.commit("update_selected_group", {}) context.commit("update_test_name", '') context.commit("update_dob", '') context.commit("update_selected_subgroup", {}) context.commit("update_address", '') context.commit("update_city_address", {}) context.commit("update_sample", {}) context.commit("update_code", '') context.commit("update_shortname", '') context.commit("update_flaglow", '') context.commit("update_flaghigh", '') context.commit("update_unit", '') context.commit("update_selected_religion", {}) context.commit("update_startdate", '') context.commit("update_enddate", '') context.commit("update_selected_position", {}) context.commit("update_namebarcode", '') context.commit("update_worklistname", '') context.commit("update_fontsize", '') context.commit("update_fontcolor", '') context.commit("update_maxdiscount", '') context.commit("update_isbold", 'N') } } catch (e) { context.commit("update_save_status", 3) } }, async getaddress(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.getaddress(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_addresses", data.records) } } catch (e) { context.commit("update_save_status", 3) } }, async searchsample(context, prm) { context.commit("update_autocomplete_status", 1) try { let resp = await api.searchsample(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_sampletypees", resp.data.records) } } catch (e) { context.commit("update_autocomplete_status", 3) } }, async getsampletype(context, prm) { context.commit("update_get_data_status", 1) try { let resp = await api.getsampletype(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_samples", resp.data.records) } } catch (e) { context.commit("update_get_data_status", 3) } }, async savenewaddress(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.savenewaddress(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) context.commit("update_dialog_form_address", false) context.commit("update_last_id", prm.T_TestAddressT_TestID) context.commit("update_dialog_success", true) var msg = "Penambahan data alamat karyawan " + prm.T_TestName + " sudah berhasil dong ..." context.commit("update_msg_success", msg) } } catch (e) { context.commit("update_save_status", 3) } }, async saveeditaddress(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.saveeditaddress(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) context.commit("update_dialog_form_address", false) context.commit("update_last_id", prm.T_TestAddressT_TestID) context.commit("update_dialog_success", true) var msg = "Perubahan data alamat karyawan " + prm.T_TestName + " sudah berhasil dong ..." context.commit("update_msg_success", msg) } } catch (e) { context.commit("update_save_status", 3) } }, async deleteaddress(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.deleteaddress(prm) if (resp.status != "OK") { context.commit("update_save_status", 3) } else { context.commit("update_save_status", 2) context.commit("update_dialog_confirmation_delete_addr", false) context.commit("update_last_id", prm.T_TestAddressT_TestID) context.commit("update_dialog_success", true) var msg = "Penghapusan data alamat " + prm.T_TestAddressNote + " dari karyawan " + prm.T_TestName + " sudah berhasil dong ..." context.commit("update_msg_success", msg) } } catch (e) { context.commit("update_save_status", 3) } } } }