Files
2026-05-25 20:01:37 +07:00

260 lines
10 KiB
JavaScript

// 1 => LOADING
// 2 => DONE
// 3 => ERROR
import * as api from "../api/samplesend.js"
export default {
namespaced: true,
state: {
last_id:-1,
last_saved_id:-1,
x_addr_id:0,
btn_hide:false,
act:'edit',
act_addr:'new',
get_data_status:0,
search_patient: 0,
search_status: 0,
search_error_message: '',
preffix:'',
patient_name:'',
suffix:'',
patients: [],
selected_patient: {},
save_status: 0,
btn_save_seen: true,
pgrs_save: false,
save_error_message: '',
no_save: 0,
new_jpa:'',
value_new_jpa_group:'',
dialog_jpa_group:false,
jpa_groups:[],
msg_snackbar:'',
alert_success:false
},
mutations: {
update_alert_success(state,val){
state.alert_success = val
},
update_msg_snackbar(state, val){
state.msg_snackbar = val
},
update_jpa_groups(state, val){
state.jpa_groups = val
},
update_dialog_jpa_group(state, val){
state.dialog_jpa_group = val
},
update_value_new_jpa_group(state, val){
state.value_new_jpa_group = val
},
update_new_jpa(state, val) {
state.new_jpa = 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_patient(state, patient) {
state.search_patient = patient
},
update_patients(state, data) {
state.patients = data
},
update_selected_patient(state, val) {
state.selected_patient = 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
},
},
actions: {
async search(context, prm) {
context.commit("update_search_patient", 1)
try {
prm.token = one_token()
let resp = await api.search(prm)
if (resp.status != "OK") {
context.commit("update_search_patient", 3)
context.commit("update_search_error_message", resp.message)
} else {
context.commit("update_search_patient", 2)
context.commit("update_search_error_message", "")
let data = {
records: resp.data.records,
total: resp.data.total
}
context.commit("update_patients", data.records)
context.commit("update_no_save", 0)
if(prm.lastid === -1){
var pat = data.records[0]
if(data.records.length === 0){
context.commit("update_selected_patient", {})
}else{
context.commit("update_selected_patient", data.records[0])
context.dispatch("samplestorage/search",{
code:context.rootState.samplestorage.code,
name: context.rootState.samplestorage.name,
status:context.rootState.samplestorage.selected_status.id,
jpagroup:data.records[0].Nat_JPAGroupID,
current_page:1,
lastid:-1
},{root:true})
}
}
else{
context.commit("update_selected_patient", data.records[prm.lastid])
context.dispatch("samplestorage/search",{
code:context.rootState.samplestorage.code,
name: context.rootState.samplestorage.name,
status:context.rootState.samplestorage.selected_status.id,
jpagroup:data.records[prm.lastid].Nat_JPAGroupID,
current_page:1,
lastid:-1
},{root:true})
}
}
} catch (e) {
context.commit("update_search_patient", 3)
context.commit("update_search_error_message", e.message)
console.log(e)
}
},
async search_listing(context, prm) {
//context.commit("update_search_patient", 1)
try {
prm.token = one_token()
let resp = await api.search_listing(prm)
if (resp.status != "OK") {
//context.commit("update_search_patient", 3)
context.commit("update_search_error_message", resp.message)
} else {
//context.commit("update_search_patient", 2)
context.commit("update_search_error_message", "")
let data = {
records: resp.data.records,
total: resp.data.total
}
context.commit("update_jpa_groups", data.records)
}
} catch (e) {
//context.commit("update_search_patient", 3)
context.commit("update_search_error_message", e.message)
console.log(e)
}
},
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_new_jpa",'')
context.commit("update_msg_snackbar","JPA Grup berhasil ditambahkan")
context.commit("update_alert_success",true)
setInterval(function(){ context.commit("update_alert_success",false) }, 5000)
var xselpat = context.rootState.samplecall.selected_patient
xselpat.lastid = -1
context.dispatch("search",xselpat)
}
} catch(e) {
context.commit("update_save_status",3)
}
},
async savejpagroup(context,prm) {
context.commit("update_save_status",1)
try {
prm.token = one_token()
let resp= await api.savejpagroup(prm)
if (resp.status != "OK") {
context.commit("update_save_status",3)
} else {
context.commit("update_save_status",2)
context.commit("update_new_jpa",'')
context.commit("update_msg_snackbar","JPA Grup berhasil ditambahkan")
context.commit("update_alert_success",true)
setInterval(function(){ context.commit("update_alert_success",false) }, 5000)
var xselpat = context.rootState.samplecall.selected_patient
xselpat.lastid = -1
context.dispatch("search",xselpat)
}
} catch(e) {
context.commit("update_save_status",3)
}
},
async saveEditJpaGroup(context,prm) {
context.commit("update_save_status",1)
try {
prm.token = one_token()
let resp= await api.savelistingjpagroup(prm)
if (resp.status != "OK") {
context.commit("update_save_status",3)
} else {
context.commit("update_save_status",2)
context.dispatch("search_listing",{})
if(prm.status === 'Y')
context.commit("update_msg_snackbar","Data telah diubah")
else
context.commit("update_msg_snackbar","Data telah dihapus")
context.commit("update_alert_success",true)
setInterval(function(){ context.commit("update_alert_success",false) }, 5000)
var xselpat = context.rootState.samplecall.selected_patient
xselpat.lastid = -1
context.dispatch("search",xselpat)
}
} catch(e) {
context.commit("update_save_status",3)
}
},
async savealljpadetail(context,prm) {
context.commit("update_save_status",1)
try {
console.log(prm)
prm.token = one_token()
let resp= await api.savealljpadetail(prm)
if (resp.status != "OK") {
context.commit("update_save_status",3)
} else {
context.commit("update_save_status",2)
context.commit("update_msg_snackbar","Data telah tersimpan")
context.commit("update_alert_success",true)
setInterval(function(){ context.commit("update_alert_success",false) }, 5000)
context.dispatch("search_listing",{})
}
} catch(e) {
context.commit("update_save_status",3)
}
},
}
}