// 1 => LOADING // 2 => DONE // 3 => ERROR import * as api from "../api/form.js" export default { namespaced: true, state: { errors:[], save_status: 0, save_error_message: '', get_data_status: 0, get_data_error_message: '', xid:0, kapuspct: '', iscontrol: false, isuse: true, companies: [], company: {}, mous: [], mou: {}, paymenttypes: [], paymenttype: {}, autocomplete_status: 0, alert_success:false, msg_success: "", search_status: 0 }, mutations: { update_errors(state, val) { state.errors = val }, update_save_status(state, val) { state.save_status = val }, update_save_error_message(state, val) { state.save_error_message = 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 }, update_xid(state, val) { state.xid = val }, update_kapuspct(state, val) { state.kapuspct = val }, update_iscontrol(state, val) { state.iscontrol = val }, update_isuse(state, val) { state.isuse = 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_paymenttypes(state, val) { state.paymenttypes = val }, update_paymenttype(state, val) { state.paymenttype = val }, update_autocomplete_status(state, val) { state.autocomplete_status = val }, update_alert_success(state, val) { state.alert_success = val }, update_msg_success(state, val) { state.msg_success = val } }, actions: { async getdata(context) { context.commit("update_get_data_status", 1) try { let resp = await api.getdata(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 } if(data.records.sysKaPusControl === 'Y'){ var iscontrol = true; }else{ var iscontrol = false; } if(data.records.sysKaPusUse === 'Y'){ var isuse = true; }else{ var isuse = false; } context.commit("update_save_status",2) context.commit("update_xid", data.records.sysKaPusID) context.commit("update_kapuspct", data.records.sysKaPusPct) context.commit("update_iscontrol", iscontrol) context.commit("update_isuse", isuse) context.commit("update_companies", [{ M_CompanyID: data.records.M_CompanyID, M_CompanyName: data.records.M_CompanyName }]) context.commit("update_company", { M_CompanyID: data.records.M_CompanyID, M_CompanyName: data.records.M_CompanyName }) context.commit("update_paymenttype", { M_PaymentTypeID: data.records.M_PaymentTypeID, M_PaymentTypeName: data.records.M_PaymentTypeName }) } } 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) var msg = "KaPus sudah tersimpan dong ..." context.commit("update_msg_success", msg) context.commit("update_alert_success", true) context.dispatch("getdata") } } 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 getpaymenttype(context) { context.commit("update_get_data_status", 1) try { let resp = await api.getpaymenttype(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_paymenttypes", resp.data.records) } } catch (e) { context.commit("update_get_data_status", 3) } } } }