Files
FE_CPONE/test/vuex/one-fo-registration-walk-in/modules/reference.js
2026-04-27 10:13:31 +07:00

101 lines
3.0 KiB
JavaScript

// 1 => LOADING
// 2 => DONE
// 3 => ERROR
import * as api from "../api/reference.js";
export default {
namespaced: true,
state: {
search_status: 0,
search_error_message: "",
references: [],
selected_reference: [],
ordertypes: [],
selected_ordertype: null
},
mutations: {
update_references(state, value) {
state.references = Array.isArray(value) ? value : [];
},
update_selected_reference(state, value) {
if (Array.isArray(value)) state.selected_reference = value;
else if (value && typeof value === "object") state.selected_reference = [value];
else state.selected_reference = [];
},
update_ordertypes(state, value) {
state.ordertypes = Array.isArray(value) ? value : [];
},
update_selected_ordertype(state, value) {
if (value && typeof value === "object") state.selected_ordertype = value;
else state.selected_ordertype = null;
},
update_search_error_message(state, msg) {
state.search_error_message = msg || "";
},
update_search_status(state, status) {
state.search_status = status;
}
},
actions: {
async searchreference({ commit }, search = "") {
commit("update_search_status", 1);
try {
const resp = await api.searchreference(search);
if (!resp || resp.status !== "OK") {
commit("update_search_status", 3);
commit("update_search_error_message", resp ? resp.message : "Unknown error");
commit("update_references", []);
return;
}
const records =
(resp.data && Array.isArray(resp.data.records) && resp.data.records) ||
(Array.isArray(resp.records) && resp.records) ||
[];
commit("update_references", records);
commit("update_search_status", 2);
commit("update_search_error_message", "");
} catch (e) {
commit("update_search_status", 3);
commit("update_search_error_message", e.message);
commit("update_references", []);
}
},
async searchordertype({ commit }, search = "") {
commit("update_search_status", 1);
try {
const resp = await api.searchordertype(search);
if (!resp || resp.status !== "OK") {
commit("update_search_status", 3);
commit("update_search_error_message", resp ? resp.message : "Unknown error");
commit("update_ordertypes", []);
return;
}
const records =
(resp.data && Array.isArray(resp.data.records) && resp.data.records) ||
(Array.isArray(resp.records) && resp.records) ||
[];
commit("update_ordertypes", records);
commit("update_search_status", 2);
commit("update_search_error_message", "");
} catch (e) {
commit("update_search_status", 3);
commit("update_search_error_message", e.message);
commit("update_ordertypes", []);
}
}
}
};