add modules folder based on s_menu
This commit is contained in:
160
test/vuex/acc-one-md-periode/modules/periode.js
Normal file
160
test/vuex/acc-one-md-periode/modules/periode.js
Normal file
@@ -0,0 +1,160 @@
|
||||
// 1 => LOADING
|
||||
// 2 => DONE
|
||||
// 3 => ERROR
|
||||
import * as api from "../api/api-periode.js"
|
||||
|
||||
export default {
|
||||
namespaced: true,
|
||||
state: {
|
||||
periode: [],
|
||||
total_list: 0,
|
||||
status_get: 0,
|
||||
selected: {},
|
||||
snackbar: false,
|
||||
message_snack: ""
|
||||
},
|
||||
mutations: {
|
||||
update_selected(state, data) {
|
||||
state.selected = data
|
||||
},
|
||||
update_total_list(state, data) {
|
||||
state.total_list = data
|
||||
},
|
||||
update_list(state, data) {
|
||||
state.periode = data
|
||||
},
|
||||
update_status_get(state, data) {
|
||||
state.status_get = data
|
||||
},
|
||||
open_snackbar(state, bool) {
|
||||
state.snackbar = bool
|
||||
},
|
||||
update_message_snack(state, data) {
|
||||
state.message_snack = data
|
||||
}
|
||||
},
|
||||
actions: {
|
||||
async getList(context) {
|
||||
context.commit("update_status_get", 1);
|
||||
try {
|
||||
var params = {token: one_token()};
|
||||
let resp = await api.getListing(params);
|
||||
if (resp.status != "OK") {
|
||||
context.commit("update_status_get", 3);
|
||||
context.commit("update_message_snack", resp.message);
|
||||
context.commit("open_snackbar", true);
|
||||
} else {
|
||||
context.commit("update_status_get", 2);
|
||||
let data = {
|
||||
records: resp.data.records,
|
||||
total: resp.data.total
|
||||
}
|
||||
// console.log(data.total);
|
||||
// console.log(data.records);
|
||||
context.commit("update_list", data.records);
|
||||
context.commit("update_total_list", data.total);
|
||||
}
|
||||
} catch (error) {
|
||||
context.commit("update_status_get", 3);
|
||||
context.commit("update_message_snack", error.message);
|
||||
context.commit("open_snackbar", true);
|
||||
}
|
||||
},
|
||||
|
||||
async deletePeriode(context) {
|
||||
try {
|
||||
var params = {
|
||||
token: one_token(),
|
||||
id: context.state.selected.periodeID
|
||||
}
|
||||
console.log(params);
|
||||
let resp = await api.p_delete(params);
|
||||
if (resp.status != "OK") {
|
||||
// console.log(resp.message);
|
||||
context.commit("open_snackbar", true);
|
||||
context.commit("update_message_snack", resp.message);
|
||||
} else {
|
||||
context.commit("open_snackbar", true);
|
||||
var msg = "Berhasil menghapus data periode";
|
||||
context.commit("update_message_snack", msg);
|
||||
context.commit("update_selected", {});
|
||||
context.dispatch("getList");
|
||||
}
|
||||
} catch (error) {
|
||||
context.commit("update_message_snack", error.message);
|
||||
context.commit("open_snackbar", true);
|
||||
}
|
||||
},
|
||||
|
||||
async addPeriode(context) {
|
||||
try {
|
||||
var params = {
|
||||
token: one_token(),
|
||||
...context.state.selected
|
||||
};
|
||||
console.log(params);
|
||||
let resp = await api.p_add(params);
|
||||
if (resp.status != "OK") {
|
||||
context.commit("open_snackbar", true);
|
||||
context.commit("update_message_snack", resp.message);
|
||||
} else {
|
||||
context.commit("open_snackbar", true);
|
||||
var msg = "Berhasil menyimpan data periode";
|
||||
context.commit("update_message_snack", msg);
|
||||
context.commit("update_selected", {});
|
||||
context.dispatch("getList");
|
||||
}
|
||||
} catch (error) {
|
||||
context.commit("update_message_snack", error.message);
|
||||
context.commit("open_snackbar", true);
|
||||
}
|
||||
},
|
||||
|
||||
async editPeriode(context) {
|
||||
try {
|
||||
var params = {
|
||||
token: one_token(),
|
||||
...context.state.selected
|
||||
};
|
||||
console.log(params);
|
||||
let resp = await api.p_edit(params);
|
||||
if (resp.status != "OK") {
|
||||
context.commit("open_snackbar", true);
|
||||
context.commit("update_message_snack", resp.message);
|
||||
} else {
|
||||
context.commit("open_snackbar", true);
|
||||
var msg = "Berhasil menyimpan data periode";
|
||||
context.commit("update_message_snack", msg);
|
||||
context.commit("update_selected", {});
|
||||
context.dispatch("getList");
|
||||
}
|
||||
} catch (error) {
|
||||
context.commit("update_message_snack", error.message);
|
||||
context.commit("open_snackbar", true);
|
||||
}
|
||||
},
|
||||
|
||||
async checkNewOrEdit(context) {
|
||||
if (!checkIsEmpty(context.state.selected)) {
|
||||
var msg = "Form masih ada yang kosong";
|
||||
context.commit("update_message_snack", msg);
|
||||
context.commit("open_snackbar", true);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!context.state.selected.periodeID) {
|
||||
context.dispatch("addPeriode");
|
||||
} else {
|
||||
context.dispatch("editPeriode");
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
function checkIsEmpty(obj) {
|
||||
if (Object.keys(obj).length === 0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return obj.periodeYear && obj.periodeMonth && obj.periodeName && obj.periodeStartDate && obj.periodeEndDate;
|
||||
}
|
||||
Reference in New Issue
Block a user