// 1 => LOADING // 2 => DONE // 3 => ERROR import * as api from "../api/sample.js" export default { namespaced: true, state: { last_id:-1, last_saved_id:-1, x_addr_id:0, act:'new', act_addr:'new', get_data_status:0, search_trx: 0, search_status: 0, search_error_message: '', start_date:moment(new Date()).format('YYYY-MM-DD'), end_date:moment(new Date()).format('YYYY-MM-DD'), total_transaction: 0, transactions:[], details:[], supplies:[], buffers:[], list_supplies:[], selected_detai:{}, stations:[{id:"NEW",name:"BARU"},{id:"RCV",name:"DITERIMA PETUGAS"}], selected_station:{id:"NEW",name:"BARU"}, selected_transaction: {}, save_status: 0, name_lab:'', 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: "", autocomplete_status:0, dialog_form_address: false, errors:[], open_dialog_info:false, msg_info:'', dialog_action:false, msg_action:'', current_status:null, uploaded_files:[], uploaded_error:null, photos:[], selected_photo:{}, dialog_image:false, image:'', staffs:[], selected_staff:{}, doctor_address:[], selected_doctor_address:{}, trx_date:moment(new Date()).format('YYYY-MM-DD'), couriers:[], selected_courier:{}, trx_note:'', dialog_supplies:false, dialog_supplies_act:'supplies', trx_date_edit:'', trx_staff_edit:'' }, mutations: { 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_start_date(state, val) { state.start_date = val }, update_end_date(state, val) { state.end_date = val }, update_name_lab(state, val) { state.name_lab = val }, update_stations(state, val) { state.stations = val }, update_selected_station(state, val) { state.selected_station = 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_transaction(state, val) { state.search_transaction = val }, update_transactions(state, data) { state.transactions = data }, update_selected_transaction(state, val) { state.selected_transaction = val }, update_details(state, data) { state.details = data }, update_supplies(state, data) { state.supplies = data }, update_list_supplies(state, data) { state.list_supplies = data }, update_buffers(state, data) { state.buffers = data }, update_selected_detail(state, val) { state.selected_detail = 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_search_status(state, val) { state.search_status = val }, update_errors(state, val) { state.errors = val }, update_total_transactions(state, val) { state.total_transactions = val }, update_open_dialog_info(state, val) { state.open_dialog_info = val }, update_msg_info(state, val) { state.msg_info = val }, update_dialog_action(state, val) { state.dialog_action = val }, update_msg_action(state, val) { state.msg_action = val }, update_current_status(state, val) { state.current_status = val }, update_uploaded_files(state, val) { state.uploaded_files = val }, update_uploaded_error(state, val) { state.uploaded_error = val }, update_photos(state, val) { state.photos = val }, update_selected_photo(state, val) { state.selected_photo = val }, update_dialog_image(state, val) { state.dialog_image = val }, update_image(state, val) { state.image = val }, update_staffs(state, val) { state.staffs = val }, update_selected_staff(state, val) { state.selected_staff = val }, update_doctor_address(state, val) { state.doctor_address = val }, update_selected_doctor_address(state, val) { state.selected_doctor_address = val }, update_trx_date(state, val) { state.trx_date = val }, update_couriers(state, val) { state.couriers = val }, update_selected_courier(state, val) { state.selected_courier = val }, update_trx_note(state, val) { state.trx_note = val }, update_dialog_supplies(state, val) { state.dialog_supplies = val }, update_dialog_supplies_act(state, val) { state.dialog_supplies_act = val }, update_trx_date_edit(state, val) { state.trx_date_edit = val }, update_trx_staff_edit(state, val) { state.trx_staff_edit = val }, }, actions: { async search(context, prm) { context.commit("update_search_transaction", 1) try { prm.token = one_token() let resp = await api.search(prm) if (resp.status != "OK") { context.commit("update_search_transaction", 3) context.commit("update_search_error_message", resp.message) } else { context.commit("update_search_transaction", 2) context.commit("update_search_error_message", "") let data = { records: resp.data.records, total: resp.data.total } var trx = [] if(data.records.length > 0){ context.commit("update_transactions", resp.data.records) if(prm.lastid === -1){ trx = resp.data.records[0] } else{ trx = resp.data.records[prm.lastid] } context.commit("update_selected_transaction", trx) context.commit("update_trx_note",trx.trx_note) context.commit("update_trx_date",trx.trx_date) context.commit("update_staffs",trx.staffs) context.commit("update_selected_staff",{id:trx.Preorder_SuppliesTrxM_StaffID,name:trx.penyampling_name}) context.commit("update_details", trx.details) context.commit("update_supplies", trx.supplies) context.commit("update_buffers", trx.buffers) } else{ context.commit("update_transactions", []) context.commit("update_selected_transaction", {status:'NONE',numbering:'-'}) context.commit("update_trx_note",'') context.commit("update_trx_date",moment(new Date()).format('YYYY-MM-DD')) context.commit("update_staffs",[]) context.commit("update_selected_staff",{}) context.commit("update_details", []) context.commit("update_supplies", []) context.commit("update_buffers", []) } context.commit("update_total_transactions", data.total) context.commit("update_no_save", 0) context.commit("update_act",'edit') } } catch (e) { context.commit("update_search_transaction", 3) context.commit("update_search_error_message", e.message) console.log(e) } }, async getdoctorcouriers(context,prm) { context.commit("update_get_data_status",1) try { prm.token = one_token() let resp= await api.getdoctorcouriers(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_doctors",data.records['doctors']) context.commit("update_couriers",data.records['couriers']) context.dispatch("search",prm) } } catch(e) { context.commit("update_get_data_status",3) } }, async upload(context,prm) { context.commit("update_get_data_status",1) try { let resp= await api.upload(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, error:resp.data.errors.error } context.commit("update_uploaded_files",data.records) var msg = "Photo telah berhasil diupload" if(data.error){ msg = data.error context.commit("update_current_status",'STATUS_FAILED') } else{ context.commit("update_current_status",'STATUS_SUCCESS') } context.commit("update_msg_info",msg) context.commit("update_open_dialog_info",true) } } catch(e) { context.commit("update_get_data_status",3) } }, async doaction(context,prm) { context.commit("update_save_status",1) try { prm.token = one_token() let resp= await api.doaction(prm) if (resp.status != "OK") { context.commit("update_save_status",3) } else { context.commit("update_save_status",2) context.commit("update_dialog_action",false) context.dispatch("search",prm) } } catch(e) { context.commit("update_save_status",3) } }, async deletephoto(context,prm) { context.commit("update_save_status",1) try { prm.token = one_token() let resp= await api.deletephoto(prm) if (resp.status != "OK") { context.commit("update_save_status",3) } else { context.commit("update_save_status",2) context.commit("update_act",'-') context.commit("update_dialog_confirmation_delete",false) context.commit("update_selected_photo",{}) context.dispatch("search",prm) } } catch(e) { context.commit("update_save_status",3) } }, async getdoctoraddress(context,prm) { context.commit("update_get_data_status",1) try { prm.token = one_token() let resp= await api.getdoctoraddress(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_doctor_address",data.records) context.commit("update_selected_doctor_address",{}) } } catch(e) { context.commit("update_save_status",3) } }, async getordersamples(context,prm) { context.commit("update_get_data_status",1) try { prm.token = one_token() let resp= await api.getordersamples(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_details",data.records) context.commit("update_selected_detail",{}) } } 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_selected_transaction",{}) context.commit("update_selected_staff",{}) context.commit("update_details",[]) context.commit("update_supplies",[]) context.commit("update_buffers",[]) context.commit("update_trx_date",moment(new Date()).format('YYYY-MM-DD')) context.commit("update_trx_note",'') context.commit("update_act",'new') context.commit("update_dialog_success", true) context.commit("update_last_id", resp.data.id) var msg = "Transaksi penyimpanan " + resp.data.numbering + " berhasil dong ..." context.commit("update_msg_success", msg) context.commit("update_staffs",data.records) } } catch(e) { context.commit("update_save_status",3) } }, async deletetrx(context,prm) { context.commit("update_save_status",1) try { prm.token = one_token() let resp= await api.deletetrx(prm) if (resp.status != "OK") { context.commit("update_save_status",3) } else { context.commit("update_save_status",2) context.commit("update_selected_transaction",{}) context.commit("update_details",[]) context.commit("update_selected_detail",{}) context.commit("update_selected_doctor",{}) context.commit("update_selected_doctor_address",{}) context.commit("update_selected_courier",{}) context.commit("update_trx_date",moment(new Date()).format('YYYY-MM-DD')) context.commit("update_trx_note",'') context.commit("update_act",'new') context.commit("update_dialog_confirmation_delete",false) context.commit("update_dialog_success", true) var msg = "Transaksi hapus " + prm.trx_numbering + " berhasil dong ..." context.commit("update_msg_success", msg) } } catch(e) { context.commit("update_save_status",3) } }, async initgetstaffbydate(context,prm) { context.commit("update_get_data_status",1) try { prm.token = one_token() let resp= await api.getstaffbydate(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_staffs",data.records) context.commit("update_selected_staff",{}) context.dispatch("search",prm) context.dispatch("getallsupplies") } } catch(e) { context.commit("update_get_data_status",3) } }, async getallsupplies(context,prm) { context.commit("update_get_data_status",1) try { var prm = {token:one_token()} let resp= await api.getallsupplies(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_list_supplies",data.records) } } catch(e) { context.commit("update_get_data_status",3) } }, async getstaffbydate(context,prm) { context.commit("update_get_data_status",1) try { prm.token = one_token() let resp= await api.getstaffbydate(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_staffs",data.records) context.commit("update_selected_staff",{}) } } catch(e) { context.commit("update_get_data_status",3) } }, async getorderbydatestaff(context,prm) { context.commit("update_get_data_status",1) try { prm.token = one_token() let resp= await api.getorderbydatestaff(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_details",data.records) } } catch(e) { context.commit("update_get_data_status",3) } }, } }