// 1 => LOADING // 2 => DONE // 3 => ERROR import * as api from "../api/sample.js" export default { namespaced: true, state: { samples: [], save_status: 0, save_error_message: '', dialog_form_sample: false, dialog_status_order: false, lookup_sample: 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: {}, sampletypes: [], sampletype: {}, agingtypes: [], agingtype: {}, statuss: [], autodeliveryorders:[], autodeliveryorder:{}, autocitys:[], autocity:{}, autodistricts:[], autodistrict:{}, autokelurahans:[], autokelurahan:{}, current_page:1, x_search: '', xcek: 0, total_data: 0, total_semua: 0, total_terima: 0, selected_sample: { name: "" }, selected: [], lookup_selected_sample: 0, lookup_error_message: '', couriers: [], courier: {}, konfirmasi: 'Y', in_saving: false }, mutations: { update_in_saving(state, val) { state.in_saving = val }, update_konfirmasi(state, val) { state.konfirmasi = val }, update_selected_sample(state, val) { state.selected_sample = val }, update_x_search(state, val) { state.x_search = val }, update_xcek(state, val) { state.xcek = val }, update_current_page(state, val) { state.current_page = val }, update_total_data(state, val) { state.total_data = val }, update_total_semua(state, val) { state.total_semua = val }, update_total_terima(state, val) { state.total_terima = val }, update_autodeliveryorders(state,data){ state.autodeliveryorders = data }, update_autodeliveryorder(state,val){ state.autodeliveryorder = val }, update_autocitys(state,data){ state.autocitys = data }, update_autocity(state,val){ state.autocity = val }, update_autodistricts(state,data){ state.autodistricts = data }, update_autodistrict(state,val){ state.autodistrict = val }, update_autokelurahans(state,data){ state.autokelurahans = data }, update_autokelurahan(state,val){ state.autokelurahan = val }, update_errors(state, val) { state.errors = val }, update_samples(state, data) { state.samples = data }, update_save_status(state, val) { state.save_status = val }, update_save_error_message(state, val) { state.save_error_message = val }, update_dialog_form_sample(state, val) { state.dialog_form_sample = val }, update_lookup_sample(state, val) { state.lookup_sample = 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_sampletypes(state, data) { state.sampletypes = data }, update_sampletype(state, val) { state.sampletype = 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 }, update_selected(state,data) { state.selected = data }, update_lookup_selected_sample(state, val) { state.lookup_selected_sample=val }, update_lookup_error_message(state, status) { state.lookup_error_message = status }, update_couriers(state, data) { state.couriers = data }, update_courier(state, val) { state.courier = val } }, actions: { async selected(context,prm) { context.commit("update_lookup_selected_sample", 1) try { prm.token = one_token() let resp = await api.selected(prm) if (resp.status != "OK") { context.commit("update_lookup_selected_sample", 3) context.commit("update_lookup_error_message", resp.message) } else { context.commit("update_lookup_selected_sample", 2) context.commit("update_lookup_error_message", "") context.commit("update_selected", resp.data.records) context.commit("update_samples", resp.data.records) context.commit("update_total_data", resp.data.total) context.commit("update_total_semua", resp.data.semua) context.commit("update_total_terima", resp.data.terima) context.commit("update_konfirmasi", resp.data.konfirmasi) } } catch (e) { context.commit("update_lookup_position", 3) context.commit("update_lookup_error_message", e.message) } }, async searchcourier(context, prm) { context.commit("deliveryorder/update_autocomplete_status", 1,{ root: true }) try { let resp = await api.searchcourier(one_token(), prm) if (resp.status != "OK") { context.commit("deliveryorder/update_autocomplete_status", 3,{ root: true }) } else { context.commit("deliveryorder/update_autocomplete_status", 2,{ root: true }) let data = { records: resp.data.records, total: resp.data.total } context.commit("update_couriers", resp.data.records) } } catch (e) { context.commit("deliveryorder/update_autocomplete_status", 3,{ root: true }) } }, 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) alert(resp.message); context.commit("update_xcek", 0) context.dispatch("selected", {id: prm.id}) context.dispatch("deliveryorderdetail/lookup", {id: prm.id, current_page : 1},{root: true}) context.commit("update_in_saving", false) } else { context.commit("update_save_status", 2) context.commit("update_save_error_message", resp.message) var data = { records: resp.data.records, total: resp.data.total } if (data.total !== -1) { context.commit("deliveryorder/update_alert_success", true,{ root: true }) var msg = "Sampel telah berhasil diterima" context.commit("deliveryorder/update_msg_success", msg,{ root: true }) context.commit("update_xcek", 0) context.dispatch("selected", {id: prm.id}) context.dispatch("deliveryorderdetail/lookup", {id: prm.id, current_page : 1},{root: true}) context.commit("update_in_saving", false) //context.commit("deliveryorder/update_selected_deliveryorder", data.records[0],{ root: true }) } 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 createorder(context, prm) { context.commit("update_save_status", 1) try { prm.token = one_token() let resp = await api.createorder(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) var data = { records: resp.data.records, total: resp.data.total } if (data.total !== -1) { context.commit("deliveryorder/update_alert_success", true,{ root: true }) var msg = "Order lab telah berhasil dibuat" context.commit("deliveryorder/update_msg_success", msg,{ root: true }) context.commit("deliveryorder/uupdate_selected_deliveryorder", data.records[0],{ root: true }) context.dispatch("deliveryorder/lookupbyname", { deliveryorder: prm.sdeliveryorder, search: prm.xsearch, current_page: 1, lastid: -1 },{ root: true }) context.dispatch("selected", { id: prm.id }) } 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) } } } }