// 1 => LOADING // 2 => DONE // 3 => ERROR import * as api from "../api/city.js" export default { namespaced: true, state: { citys: [], save_status: 0, save_error_message: '', dialog_form_city: false, dialog_status_order: false, lookup_city: 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: {}, citytypes: [], citytype: {}, agingtypes: [], agingtype: {}, statuss: [], autoprovinces:[], autoprovince:{}, current_page:1, x_search: '', total_data: 0, selected_city: { name: "" } }, mutations: { update_selected_city(state, val) { state.selected_city = 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_autoprovinces(state,data){ state.autoprovinces = data }, update_autoprovince(state,val){ state.autoprovince = val }, update_errors(state, val) { state.errors = val }, update_citys(state, data) { state.citys = data }, update_save_status(state, val) { state.save_status = val }, update_save_error_message(state, val) { state.save_error_message = val }, update_dialog_form_city(state, val) { state.dialog_form_city = val }, update_lookup_city(state, val) { state.lookup_city = 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_citytypes(state, data) { state.citytypes = data }, update_citytype(state, val) { state.citytype = 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 } }, 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("province/update_alert_success", true, { root: true }) context.commit("update_dialog_form_city", false) var msg = "Kota " + prm.name + " provinsi " + prm.provincename + " sudah disimpan dong" context.commit("province/update_msg_success", msg, { root: true }) context.commit("province/update_alert_success", true, { root: true }) context.dispatch("lookupbyname", { province: prm.sprovince, city: prm.scity, district: prm.sdistrict, kelurahan: prm.skelurahan, 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_city", 1) try { let resp = await api.lookupx(one_token(), prm.id) if (resp.status != "OK") { context.commit("update_lookup_city", 3) } else { context.commit("update_lookup_city", 2) let data = { records: resp.data.records, total: resp.data.total } context.commit("update_citys", data.records) } } catch (e) { context.commit("update_lookup_city", 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_citys", 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 lookupbyprovince(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.lookupbyprovince(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_citys", 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_citys", data.records) console.log('status') console.log(data.records.statuss) context.commit("update_statuss", data.records.statuss) context.commit("update_total_data", data.total) var pat = data.records[0] if(prm.city != ""){ context.commit("district/update_autocitys", [{ M_CityID: pat.M_CityID, M_CityName: pat.M_CityName }], { root: true }) context.commit("district/update_autocity", { M_CityID: pat.M_CityID, M_CityName: pat.M_CityName },{ root: true }) } } } catch (e) { context.commit("update_save_status", 3) } }, async lookupbydistrict(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.lookupbydistrict(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_citys", 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 lookupbykelurahan(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.lookupbykelurahan(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_citys", 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 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("province/update_save_status", 3, { root: true }) context.commit("province/update_save_error_message", resp.message, { root: true }) } else { context.commit("province/update_save_status", 2, { root: true }) context.commit("province/update_save_error_message", resp.message, { root: true }) context.commit("province/update_alert_success", true, { root: true }) //context.commit("update_dialog_form_schedule_promise", false) var msg = "Kota " + prm.name + " dari provinsi " + prm.provincename + " sudah dihapus dong" context.commit("province/update_msg_success", msg, { root: true }) context.commit("province/update_alert_success", true, { root: true }) context.dispatch("lookupbyname", { province: prm.sprovince, city: prm.scity, district: prm.sdistrict, kelurahan: prm.skelurahan, 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 searchprovince(context,prm) { context.commit("province/update_autocomplete_status",1,{root: true}) try { let resp= await api.searchprovince(one_token(), prm.tes) if (resp.status != "OK") { context.commit("province/update_autocomplete_status",3,{root: true}) } else { context.commit("province/update_autocomplete_status",2,{root: true}) let data = { records : resp.data.records, total: resp.data.total } context.commit("update_autoprovinces",resp.data.records) } } catch(e) { context.commit("province/update_autocomplete_status",3,{root: true}) } }, async verify(context, prm) { context.commit("update_save_status", 1) try { let resp = await api.xverify(one_token(), prm.xid) if (resp.status != "OK") { context.commit("province/update_save_status", 3, { root: true }) context.commit("province/update_save_error_message", resp.message, { root: true }) } else { context.commit("province/update_save_status", 2, { root: true }) context.commit("province/update_save_error_message", resp.message, { root: true }) context.commit("province/update_alert_success", true, { root: true }) //context.commit("update_dialog_form_schedule_promise", false) var msg = "Agreement " + prm.name + " dari province " + prm.provincename + " sudah diverifikasi" context.commit("province/update_msg_success", msg, { root: true }) context.commit("province/update_alert_success", true, { root: true }) context.dispatch("lookup", { id: prm.provinceid }) } } catch (e) { context.commit("update_save_status", 3) context.commit("update_save_error_message", e.message) console.log(e) } }, async unverify(context, prm) { context.commit("update_save_status", 1) try { let resp = await api.xunverify(one_token(), prm.xid) if (resp.status != "OK") { context.commit("province/update_save_status", 3, { root: true }) context.commit("province/update_save_error_message", resp.message, { root: true }) } else { context.commit("province/update_save_status", 2, { root: true }) context.commit("province/update_save_error_message", resp.message, { root: true }) context.commit("province/update_alert_success", true, { root: true }) //context.commit("update_dialog_form_schedule_promise", false) var msg = "Verifikasi Agreement " + prm.name + " dari province " + prm.provincename + " sudah dibatalkan" context.commit("province/update_msg_success", msg, { root: true }) context.commit("province/update_alert_success", true, { root: true }) context.dispatch("lookup", { id: prm.provinceid }) } } catch (e) { context.commit("update_save_status", 3) context.commit("update_save_error_message", e.message) console.log(e) } }, async release(context, prm) { context.commit("update_save_status", 1) try { let resp = await api.xrelease(one_token(), prm.xid) if (resp.status != "OK") { context.commit("province/update_save_status", 3, { root: true }) context.commit("province/update_save_error_message", resp.message, { root: true }) } else { context.commit("province/update_save_status", 2, { root: true }) context.commit("province/update_save_error_message", resp.message, { root: true }) context.commit("province/update_alert_success", true, { root: true }) //context.commit("update_dialog_form_schedule_promise", false) var msg = "Agreement " + prm.name + " dari province " + prm.provincename + " sudah dirilis" context.commit("province/update_msg_success", msg, { root: true }) context.commit("province/update_alert_success", true, { root: true }) context.dispatch("lookup", { id: prm.provinceid }) } } catch (e) { context.commit("update_save_status", 3) context.commit("update_save_error_message", e.message) console.log(e) } }, async unrelease(context, prm) { context.commit("update_save_status", 1) try { let resp = await api.xunrelease(one_token(), prm.xid) if (resp.status != "OK") { context.commit("province/update_save_status", 3, { root: true }) context.commit("province/update_save_error_message", resp.message, { root: true }) } else { context.commit("province/update_save_status", 2, { root: true }) context.commit("province/update_save_error_message", resp.message, { root: true }) context.commit("province/update_alert_success", true, { root: true }) //context.commit("update_dialog_form_schedule_promise", false) var msg = "Rilis Agreement " + prm.name + " dari province " + prm.provincename + " sudah dibatalkan" context.commit("province/update_msg_success", msg, { root: true }) context.commit("province/update_alert_success", true, { root: true }) context.dispatch("lookup", { id: prm.provinceid }) } } catch (e) { context.commit("update_save_status", 3) context.commit("update_save_error_message", e.message) console.log(e) } }, async selectbase(context) { context.commit("province/update_get_data_status", 1, { root: true }) try { let resp = await api.selectbase(one_token()) if (resp.status != "OK") { context.commit("province/update_get_data_status", 3, { root: true }) context.commit("province/update_get_data_error_message", resp.message, { root: true }) } else { context.commit("province/update_get_data_status", 2, { root: true }) context.commit("province/update_get_data_error_message", "", { root: true }) context.commit("update_bases", resp.data.records.bases) } } catch (e) { context.commit("province/update_get_data_status", 3, { root: true }) context.commit("province/update_get_data_error_message", e.message, { root: true }) console.log(e) } }, async selectomzettype(context) { context.commit("province/update_get_data_status", 1, { root: true }) try { let resp = await api.selectomzettype(one_token()) if (resp.status != "OK") { context.commit("province/update_get_data_status", 3, { root: true }) context.commit("province/update_get_data_error_message", resp.message, { root: true }) } else { context.commit("province/update_get_data_status", 2, { root: true }) context.commit("province/update_get_data_error_message", "", { root: true }) context.commit("update_omzettypes", resp.data.records.omzettypes) } } catch (e) { context.commit("province/update_get_data_status", 3, { root: true }) context.commit("province/update_get_data_error_message", e.message, { root: true }) console.log(e) } }, async selectcitytype(context) { context.commit("province/update_get_data_status", 1, { root: true }) try { let resp = await api.selectcitytype(one_token()) if (resp.status != "OK") { context.commit("province/update_get_data_status", 3, { root: true }) context.commit("province/update_get_data_error_message", resp.message, { root: true }) } else { context.commit("province/update_get_data_status", 2, { root: true }) context.commit("province/update_get_data_error_message", "", { root: true }) context.commit("update_citytypes", resp.data.records.citytypes) } } catch (e) { context.commit("province/update_get_data_status", 3, { root: true }) context.commit("province/update_get_data_error_message", e.message, { root: true }) console.log(e) } }, async selectagingtype(context) { context.commit("province/update_get_data_status", 1, { root: true }) try { let resp = await api.selectagingtype(one_token()) if (resp.status != "OK") { context.commit("province/update_get_data_status", 3, { root: true }) context.commit("province/update_get_data_error_message", resp.message, { root: true }) } else { context.commit("province/update_get_data_status", 2, { root: true }) context.commit("province/update_get_data_error_message", "", { root: true }) context.commit("update_agingtypes", resp.data.records.agingtypes) } } catch (e) { context.commit("province/update_get_data_status", 3, { root: true }) context.commit("province/update_get_data_error_message", e.message, { root: true }) console.log(e) } } } }