280 lines
8.9 KiB
JavaScript
280 lines
8.9 KiB
JavaScript
// 1 => LOADING
|
|
// 2 => DONE
|
|
// 3 => ERROR
|
|
|
|
import * as api from "../api/api.js";
|
|
|
|
export default {
|
|
namespaced: true,
|
|
state: {
|
|
errMessage: "",
|
|
alertError: false,
|
|
snackbar: {
|
|
state: false,
|
|
type: 'success',
|
|
message: '',
|
|
},
|
|
user: one_user(),
|
|
currentPage: 1,
|
|
loadingStatus: 1, // 1 => LOADING, 2 => DONE, 3 => ERROR
|
|
itemUsedList: [],
|
|
selectedItemUsed: {},
|
|
totalPageUsed: 0,
|
|
selectedUsedQty: 0,
|
|
dialogUsed: false,
|
|
errors: [],
|
|
dialogDelete: false,
|
|
dialogConfirmation: false,
|
|
search: "",
|
|
statusConfirmOptions: [
|
|
{ value: "X", text: "Semua" },
|
|
{ value: "N", text: "Belum Dikonfirmasi" },
|
|
{ value: "Y", text: "Sudah Dikonfirmasi" },
|
|
|
|
],
|
|
statusConfirm: "X",
|
|
menuStartDate: false,
|
|
menuEndDate: false,
|
|
fStartDate: moment(new Date()).format("YYYY-MM-DD"),
|
|
fEndDate: moment(new Date()).format("YYYY-MM-DD"),
|
|
dStartDate: new Date().toISOString().substring(0, 10),
|
|
dEndDate: new Date().toISOString().substring(0, 10)
|
|
},
|
|
mutations: {
|
|
updateErrMessage(state, val) {
|
|
state.errMessage = val;
|
|
},
|
|
updateAlertError(state, val) {
|
|
state.alertError = val;
|
|
},
|
|
updateSnackbar(state, val) {
|
|
state.snackbar = val;
|
|
},
|
|
updateLoadingAutocomplete(state, val) {
|
|
state.loadingAutocomplete = val;
|
|
},
|
|
updateDivisionOptions(state, val) {
|
|
state.divisionOptions = val;
|
|
},
|
|
updateSelectedDivision(state, val) {
|
|
state.selectedDivision = val;
|
|
},
|
|
updateUser(state, val) {
|
|
state.user = val;
|
|
},
|
|
updateCurrentPage(state, val) {
|
|
state.currentPage = val;
|
|
},
|
|
updateLoadingStatus(state, val) {
|
|
state.loadingStatus = val;
|
|
},
|
|
updateItemUsedList(state, val) {
|
|
state.itemUsedList = val;
|
|
},
|
|
updateSelectedItemUsed(state, val) {
|
|
state.selectedItemUsed = val;
|
|
},
|
|
updateTotalPageUsed(state, val) {
|
|
state.totalPageUsed = val;
|
|
},
|
|
updateSelectedUsedQty(state, val) {
|
|
state.selectedUsedQty = val;
|
|
},
|
|
updateDialogUsed(state, val) {
|
|
state.dialogUsed = val;
|
|
},
|
|
updateErrors(state, val) {
|
|
state.errors = val;
|
|
},
|
|
updateDialogDelete(state, val) {
|
|
state.dialogDelete = val;
|
|
},
|
|
updateDialogConfirmation(state, val) {
|
|
state.dialogConfirmation = val;
|
|
},
|
|
updateSearch(state, val) {
|
|
state.search = val;
|
|
state.currentPage = 1; // Reset to first page on new search
|
|
},
|
|
updateStatusConfirm(state, val) {
|
|
state.statusConfirm = val;
|
|
},
|
|
updateStatusConfirmOptions(state, val) {
|
|
state.statusConfirmOptions = val;
|
|
},
|
|
updateMenuStartDate(state, val) {
|
|
state.menuStartDate = val;
|
|
},
|
|
updateMenuEndDate(state, val) {
|
|
state.menuEndDate = val;
|
|
},
|
|
updateFStartDate(state, val) {
|
|
state.fStartDate = val;
|
|
},
|
|
updateFEndDate(state, val) {
|
|
state.fEndDate = val;
|
|
},
|
|
updateDStartDate(state, val) {
|
|
state.dStartDate = val;
|
|
},
|
|
updateDEndDate(state, val) {
|
|
state.dEndDate = val;
|
|
}
|
|
},
|
|
actions: {
|
|
async getItemUsed(context, payload) {
|
|
context.commit("updateLoadingStatus", 1);
|
|
try {
|
|
payload.token = one_token();
|
|
// var payload = {
|
|
// itemUsageID: context.state.usage.selectedItemUsage.ItemUsageID,
|
|
// currentPage: context.state.currentPage,
|
|
// search: context.state.search,
|
|
// statusConfirm: context.state.statusConfirm,
|
|
// token: one_token()
|
|
// };
|
|
|
|
let response = await api.getItemUsed(payload);
|
|
if (response.status != "OK") {
|
|
context.commit("updateLoadingStatus", 3);
|
|
context.commit("updateErrMessage", response.message);
|
|
context.commit("updateAlertError", true);
|
|
} else {
|
|
context.commit("updateLoadingStatus", 2);
|
|
context.commit("updateErrMessage", "");
|
|
let data = {
|
|
records: response.data.records,
|
|
total_page: response.data.total_page,
|
|
};
|
|
|
|
context.commit("updateItemUsedList", data.records);
|
|
context.commit("updateTotalPageUsed", data.total_page);
|
|
}
|
|
} catch (e) {
|
|
context.commit("updateLoadingStatus", 3);
|
|
context.commit("updateErrMessage", e.message);
|
|
context.commit("updateAlertError", true);
|
|
}
|
|
},
|
|
async updateItemUsed(context, payload) {
|
|
context.commit("updateLoadingStatus", 1);
|
|
try {
|
|
payload.token = one_token();
|
|
|
|
let response = await api.updateItemUsed(payload);
|
|
if (response.status != "OK") {
|
|
context.commit("updateLoadingStatus", 3);
|
|
context.commit("updateErrMessage", response.message);
|
|
context.commit("updateAlertError", true);
|
|
} else {
|
|
context.commit("updateLoadingStatus", 2);
|
|
context.commit("updateErrMessage", "");
|
|
|
|
|
|
context.commit("updateDialogUsed", false);
|
|
context.commit("updateSelectedItemUsed", {});
|
|
context.commit("updateSelectedUsedQty", 0);
|
|
context.commit("usage/update_last_id", payload.itemUsageID, { root: true });
|
|
|
|
context.commit("updateSnackbar", {
|
|
state: true,
|
|
type: 'success',
|
|
message: 'Item used berhasil diupdate.'
|
|
});
|
|
context.dispatch("usage/search",{}, { root: true });
|
|
context.dispatch("getItemUsed", {
|
|
itemUsageID: payload.itemUsageID,
|
|
currentPage: payload.currentPage,
|
|
search: payload.search,
|
|
statusConfirm: payload.statusConfirm,
|
|
startdate: payload.startdate,
|
|
enddate: payload.enddate
|
|
});
|
|
}
|
|
} catch (e) {
|
|
context.commit("updateLoadingStatus", 3);
|
|
context.commit("updateErrMessage", e.message);
|
|
context.commit("updateAlertError", true);
|
|
}
|
|
},
|
|
async deleteItemUsed(context, payload) {
|
|
context.commit("updateLoadingStatus", 1);
|
|
try {
|
|
payload.token = one_token();
|
|
|
|
let response = await api.deleteItemUsed(payload);
|
|
if (response.status != "OK") {
|
|
context.commit("updateLoadingStatus", 3);
|
|
context.commit("updateErrMessage", response.message);
|
|
context.commit("updateAlertError", true);
|
|
} else {
|
|
context.commit("updateLoadingStatus", 2);
|
|
context.commit("updateErrMessage", "");
|
|
|
|
|
|
context.commit("updateDialogDelete", false);
|
|
context.commit("updateSelectedItemUsed", {});
|
|
context.commit("usage/update_last_id", payload.itemUsageID, { root: true });
|
|
|
|
context.commit("updateSnackbar", {
|
|
state: true,
|
|
type: 'success',
|
|
message: 'Item used berhasil dihapus.'
|
|
});
|
|
context.dispatch("usage/search",{}, { root: true });
|
|
context.dispatch("getItemUsed", {
|
|
itemUsageID: payload.itemUsageID,
|
|
currentPage: payload.currentPage,
|
|
search: payload.search,
|
|
statusConfirm: payload.statusConfirm,
|
|
startdate: payload.startdate,
|
|
enddate: payload.enddate
|
|
});
|
|
}
|
|
} catch (e) {
|
|
context.commit("updateLoadingStatus", 3);
|
|
context.commit("updateErrMessage", e.message);
|
|
context.commit("updateAlertError", true);
|
|
}
|
|
},
|
|
async confirmItemUsed(context, payload) {
|
|
context.commit("updateLoadingStatus", 1);
|
|
try {
|
|
payload.token = one_token();
|
|
|
|
let response = await api.confirmItemUsed(payload);
|
|
if (response.status != "OK") {
|
|
context.commit("updateLoadingStatus", 3);
|
|
context.commit("updateErrMessage", response.message);
|
|
context.commit("updateAlertError", true);
|
|
} else {
|
|
context.commit("updateLoadingStatus", 2);
|
|
context.commit("updateErrMessage", "");
|
|
|
|
|
|
context.commit("updateSelectedItemUsed", {});
|
|
context.commit("updateDialogConfirmation", false);
|
|
context.commit("usage/update_last_id", payload.itemUsageID, { root: true });
|
|
|
|
context.commit("updateSnackbar", {
|
|
state: true,
|
|
type: 'success',
|
|
message: 'Item used berhasil dikonfirmasi.'
|
|
});
|
|
context.dispatch("getItemUsed", {
|
|
itemUsageID: payload.itemUsageID,
|
|
currentPage: payload.currentPage,
|
|
search: payload.search,
|
|
statusConfirm: payload.statusConfirm,
|
|
startdate: payload.startdate,
|
|
enddate: payload.enddate
|
|
});
|
|
}
|
|
} catch (e) {
|
|
context.commit("updateLoadingStatus", 3);
|
|
context.commit("updateErrMessage", e.message);
|
|
context.commit("updateAlertError", true);
|
|
}
|
|
}
|
|
}
|
|
}; |