Files
FE_CPONE/test/vuex/one-list-consumable/modules/consumable.js
2026-04-27 10:13:31 +07:00

316 lines
12 KiB
JavaScript

// 1 => LOADING
// 2 => DONE
// 3 => ERROR
import * as api from "../api/consumable.js"
export default {
namespaced: true,
state: {
tests: [],
test_status: 0,
selected_orderheaderid: 0,
consumables: [],
total_consumables: 0,
search_consumable: 0,
search_error_message: "",
last_id: -1,
selected_consumable: {},
dialog_form: false,
satuans: [],
satuan_status: 0,
satuan_error_message: "",
items: [],
item_status: 0,
item_error_message: "",
alert_success: false,
msg_success: "",
alert_error: false,
error_message: "",
addconsumable_status: 0,
reset_status: 0,
dialog_error: false,
act: "",
selected_itemconsum: [],
act_notreset: "",
saveAllConsumable_status: 0
},
mutations: {
update_tests(state, val) {
state.tests = val
},
update_test_status(state, val) {
state.test_status = val
},
update_selected_orderheaderid(state, val) {
state.selected_orderheaderid = val
},
update_consumables(state, val) {
state.consumables = val
},
update_total_consumables(state, val) {
state.total_consumables = val
},
update_search_consumable(state, val) {
state.search_consumable = val
},
update_search_error_message(state, val) {
state.search_error_message = val
},
update_last_id(state, val) {
state.last_id = val
},
update_selected_consumable(state, val) {
state.selected_consumable = val
},
update_dialog_form(state, val) {
state.dialog_form = val
},
update_satuans(state, val) {
state.satuans = val
},
update_satuan_status(state, val) {
state.satuan_status = val
},
update_satuan_error_message(state, val) {
state.satuan_error_message = val
},
update_items(state, val) {
state.items = val
},
update_item_status(state, val) {
state.item_status = val
},
update_item_error_message(state, val) {
state.item_error_message = val
},
update_alert_success(state, val) {
state.alert_success = val
},
update_msg_success(state, val) {
state.msg_success = val
},
update_alert_error(state, val) {
state.alert_error = val;
},
update_error_message(state, val) {
state.error_message = val
},
update_addconsumable_status(state, val) {
state.addconsumable_status = val
},
update_reset_status(state, val) {
state.reset_status = val
},
update_dialog_error(state, val) {
state.dialog_error = val
},
update_act(state, val) {
state.act = val
},
update_act_notreset(state, val) {
state.act_notreset = val
},
update_saveAllConsumable_status(state, val) {
state.saveAllConsumable_status = val
}
},
actions: {
async gettest(context, prm) {
context.commit("update_test_status",1)
try {
var prm = {
token: one_token(),
orderheaderid: context.state.selected_orderheaderid
}
let resp = await api.gettest(prm)
if (resp.status != "OK") {
context.commit("update_test_status",3)
console.log(resp.message)
} else {
context.commit("update_test_status",2)
let data = {
records: resp.data.records
}
context.commit("update_tests", resp.data.records)
}
} catch (e) {
context.commit("update_test_status",3)
console.log(e)
}
},
async searchconsumable(context, prm) {
context.commit("update_search_consumable", 1)
try {
var prm = {
token: one_token(),
orderheaderid: context.state.selected_orderheaderid
}
let resp = await api.searchconsumable(prm)
if (resp.status != "OK") {
context.commit("update_search_consumable", 3)
context.commit("update_search_error_message", resp.message)
} else {
context.commit("update_search_consumable", 2)
context.commit("update_search_error_message", "")
let records = resp.data.records
let total = resp.data.total_filter
context.commit("update_consumables", records)
context.commit("update_total_consumables", total)
if (context.state.last_id == -1) {
if (resp.data && resp.data.records.length > 0) {
context.commit("update_selected_consumable", resp.data.records[0])
}
} else {
let idx = _.findIndex(resp.data.records, function (o) {
return o.M_ConsumableID == context.state.selected_consumable.M_ConsumableID
});
if (idx >= 0) {
context.commit("update_selected_consumable", resp.data.records[idx]);
}
}
}
} catch (e) {
context.commit("update_search_consumable", 3)
context.commit("update_search_error_message", e.message)
console.log(e)
}
},
async get_satuan(context,prm) {
context.commit("update_satuan_status",1)
try {
// prm.token = one_token()
var prm = {
token: one_token()
}
let resp = await api.get_satuan(prm)
if (resp.status != "OK") {
context.commit("update_satuan_status",3)
context.commit("update_satuan_error_message", resp.message)
} else {
context.commit("update_satuan_status",2)
context.commit("update_satuan_error_message", "")
let data = {
records: resp.data.records
}
context.commit("update_satuans", data.records)
}
} catch (e) {
context.commit("update_satuan_status",3)
context.commit("update_satuan_error_message", e.message)
}
},
async get_item(context,prm) {
context.commit("update_item_status",1)
try {
var prm = {
token: one_token(),
orderheaderid: context.state.selected_orderheaderid
}
let resp = await api.get_item(prm)
if (resp.status != "OK") {
context.commit("update_item_status",3)
context.commit("update_item_error_message", resp.message)
} else {
context.commit("update_item_status",2)
context.commit("update_item_error_message", "")
let data = {
records: resp.data.records
}
context.commit("update_items", data.records)
}
} catch (e) {
context.commit("update_item_status",3)
context.commit("update_item_error_message", e.message)
}
},
async addconsumable(context,prm) {
context.commit("update_addconsumable_status",1)
try {
prm.token = one_token()
let resp = await api.addconsumable(prm)
if (resp.status != "OK") {
context.commit("update_addconsumable_status",3)
context.commit("update_error_message", resp.message)
context.commit("update_alert_error", true)
context.commit("update_dialog_error", true)
} else {
context.commit("update_addconsumable_status",2)
context.commit("update_error_message", "")
context.commit("update_dialog_error", false)
context.commit("update_dialog_form", false)
var msg = "Item " + prm.name + " berhasil disimpan"
context.commit("update_msg_success", msg)
context.commit("update_alert_success", true)
context.dispatch("searchconsumable")
}
} catch (e) {
context.commit("update_addconsumable_status",3)
context.commit("update_alert_error", true)
context.commit("update_error_message", e.message)
context.commit("update_dialog_error", true)
}
},
async reset(context,prm) {
context.commit("update_reset_status",1)
try {
prm.token = one_token()
let resp = await api.reset(prm)
if (resp.status != "OK") {
context.commit("update_reset_status",3)
context.commit("update_alert_error", true)
context.commit("update_error_message", resp.message)
context.commit("update_dialog_error", true)
} else {
context.commit("update_reset_status",2)
context.commit("update_error_message", "")
context.commit("update_dialog_error", false)
var msg = "Consumable berhasil di reset semua"
context.commit("update_msg_success", msg)
context.commit("update_alert_success", true)
context.dispatch("searchconsumable")
}
} catch (e) {
context.commit("update_reset_status",3)
context.commit("update_alert_error", true)
context.commit("update_error_message", e.message)
context.commit("update_dialog_error", true)
}
},
async saveAllConsumable(context, prm) {
context.commit("update_saveAllConsumable_status",1)
try {
prm.token = one_token();
let resp = await api.saveAllConsumable(prm)
if (resp.status != "OK") {
context.commit("update_saveAllConsumable_status",3)
context.commit("update_error_message", resp.message)
context.commit("update_alert_error", true)
context.commit("update_dialog_error", true)
} else {
context.commit("update_saveAllConsumable_status",2)
let total = resp.data.total
context.commit("update_error_message", "")
context.commit("update_dialog_error", false)
var msg = "Consumable berhasil di simpan"
context.commit("update_msg_success", msg)
context.commit("update_alert_success", true)
context.dispatch("searchconsumable")
}
} catch (e) {
context.commit("update_saveAllConsumable_status",3)
context.commit("update_alert_error", true)
context.commit("update_error_message", e.message)
context.commit("update_dialog_error", true)
}
}
}
}