add modules folder based on s_menu
This commit is contained in:
244
test/vuex/acc-one-jurnal-verifikasi-edit/modules/journal.js
Normal file
244
test/vuex/acc-one-jurnal-verifikasi-edit/modules/journal.js
Normal file
@@ -0,0 +1,244 @@
|
||||
import * as api from '../api/api.js'
|
||||
|
||||
export default {
|
||||
namespaced: true,
|
||||
state: {
|
||||
snacbar: {
|
||||
message: '',
|
||||
color: 'success',
|
||||
active: false
|
||||
},
|
||||
filter: {
|
||||
startdate: moment(new Date()).format('YYYY-MM-DD'),
|
||||
enddate: moment(new Date()).format('YYYY-MM-DD'),
|
||||
typejournal_id: 0,
|
||||
search: '',
|
||||
periode_id: 0,
|
||||
},
|
||||
list_jurnaltype: [],
|
||||
list_periode: [],
|
||||
selected_periode: {},
|
||||
listjournal: {
|
||||
records: [],
|
||||
total: 0
|
||||
},
|
||||
currpage: 1,
|
||||
selected_jurnal: {},
|
||||
selected_jurnal_detail: {},
|
||||
summary_jurnal_detail: {
|
||||
total_debit: 0,
|
||||
total_kredit: 0,
|
||||
balance: 0
|
||||
},
|
||||
dialog_verifikasi: false,
|
||||
dialog_pick_periode: false,
|
||||
dialog_edit_request: false
|
||||
},
|
||||
mutations: {
|
||||
update_filter(state, val) {
|
||||
state.filter = val
|
||||
},
|
||||
update_list_jurnaltype(state, val) {
|
||||
state.list_jurnaltype = val
|
||||
},
|
||||
update_list_periode(state, val) {
|
||||
state.list_periode = val
|
||||
},
|
||||
update_selected_periode(state, val) {
|
||||
state.selected_periode = val
|
||||
},
|
||||
update_listjournal(state, val) {
|
||||
state.listjournal = val
|
||||
},
|
||||
update_currpage(state, val) {
|
||||
state.currpage = val
|
||||
},
|
||||
update_selected_jurnal(state, val) {
|
||||
state.selected_jurnal = val
|
||||
},
|
||||
update_selected_jurnal_detail(state, val) {
|
||||
state.selected_jurnal_detail = val
|
||||
},
|
||||
update_summary_jurnal_detail(state, val) {
|
||||
state.summary_jurnal_detail = val
|
||||
},
|
||||
update_dialog_verifikasi(state, val) {
|
||||
state.dialog_verifikasi = val
|
||||
},
|
||||
update_snacbar(state, val) {
|
||||
state.snacbar = val
|
||||
},
|
||||
update_dialog_pick_periode(state, val) {
|
||||
state.dialog_pick_periode = val
|
||||
},
|
||||
update_dialog_edit_request(state, val) {
|
||||
state.dialog_edit_request = val
|
||||
}
|
||||
},
|
||||
actions: {
|
||||
async getListPeriode(context) {
|
||||
try {
|
||||
let snac = { color: 'error', message: '', active: false };
|
||||
context.commit("update_snacbar", snac);
|
||||
|
||||
var resp = await api.getListPeriode({token: one_token()});
|
||||
if (resp.status != 'OK') {
|
||||
let snac = { color: 'error', message: resp.message, active: true };
|
||||
context.commit("update_snacbar", snac);
|
||||
} else {
|
||||
context.commit("update_list_periode", resp.data);
|
||||
|
||||
// update to latest periode id in masterdata
|
||||
let filter = context.state.filter
|
||||
filter.periode_id = resp.data[0].periodeID
|
||||
context.commit("update_filter", filter);
|
||||
context.commit("update_selected_periode", resp.data[0]);
|
||||
}
|
||||
} catch (error) {
|
||||
let snac = { color: 'error', message: error.message, active: true };
|
||||
context.commit("update_snacbar", snac);
|
||||
}
|
||||
},
|
||||
async getListTypeJurnal(context) {
|
||||
try {
|
||||
let snac = { color: 'error', message: '', active: false };
|
||||
context.commit("update_snacbar", snac);
|
||||
|
||||
var resp = await api.getListTypeJurnal({token: one_token()});
|
||||
if (resp.status != 'OK') {
|
||||
let snac = { color: 'error', message: resp.message, active: true };
|
||||
context.commit("update_snacbar", snac);
|
||||
} else {
|
||||
context.commit("update_list_jurnaltype", resp.data);
|
||||
}
|
||||
} catch (error) {
|
||||
let snac = { color: 'error', message: error.message, active: true };
|
||||
context.commit("update_snacbar", snac);
|
||||
}
|
||||
},
|
||||
async getListJournalEdit(context) {
|
||||
try {
|
||||
let snac = { color: 'error', message: '', active: false };
|
||||
context.commit("update_snacbar", snac);
|
||||
|
||||
let param = {
|
||||
periodeID: context.state.filter.periode_id,
|
||||
typeJournalID: context.state.filter.typejournal_id,
|
||||
search: context.state.filter.search,
|
||||
startdate: context.state.filter.startdate,
|
||||
enddate: context.state.filter.enddate,
|
||||
page: context.state.currpage,
|
||||
token: one_token()
|
||||
}
|
||||
var resp = await api.getListJournalEdit(param);
|
||||
if (resp.status != "OK") {
|
||||
let snac = { color: 'error', message: resp.message, active: true };
|
||||
context.commit("update_snacbar", snac);
|
||||
} else {
|
||||
context.commit("update_listjournal", resp.data);
|
||||
}
|
||||
} catch (error) {
|
||||
let snac = { color: 'error', message: error.message, active: true };
|
||||
context.commit("update_snacbar", snac);
|
||||
}
|
||||
},
|
||||
async getDetailJournalEdit(context, jurnalid) {
|
||||
try {
|
||||
let snac = { color: 'error', message: '', active: false };
|
||||
context.commit("update_snacbar", snac);
|
||||
|
||||
let param = {
|
||||
jurnalID: jurnalid,
|
||||
token: one_token()
|
||||
}
|
||||
var resp = await api.getDetailJournalEdit(param);
|
||||
if (resp.status != "OK") {
|
||||
let snac = { color: 'error', message: resp.message, active: true };
|
||||
context.commit("update_snacbar", snac);
|
||||
} else {
|
||||
const data = resp.data;
|
||||
context.commit("update_selected_jurnal_detail", data);
|
||||
|
||||
// summary total kredit & debit jurnal
|
||||
// changeAfter & changeBefore harusnya sama
|
||||
const summary = data.changeAfter.reduce((acc, item) => {
|
||||
const debit = Number(item.jurnalTxDebit) || 0;
|
||||
const kredit = Number(item.jurnalTxCredit) || 0;
|
||||
|
||||
acc.total_debit += debit;
|
||||
acc.total_kredit += kredit;
|
||||
return acc;
|
||||
}, {total_debit: 0, total_kredit: 0});
|
||||
summary.balance = summary.total_debit - summary.total_kredit;
|
||||
|
||||
context.commit("update_summary_jurnal_detail", summary);
|
||||
}
|
||||
} catch (error) {
|
||||
let snac = { color: 'error', message: error.message, active: true };
|
||||
context.commit("update_snacbar", snac);
|
||||
}
|
||||
},
|
||||
async updateRequestEditStatus(context, status) {
|
||||
try {
|
||||
let snac = { color: 'error', message: '', active: false };
|
||||
context.commit("update_snacbar", snac);
|
||||
|
||||
let param = {
|
||||
JurnalRequestEditID: context.state.selected_jurnal.JurnalRequestEditID,
|
||||
jurnalID: context.state.selected_jurnal.jurnalID,
|
||||
status: status.status,
|
||||
token: one_token()
|
||||
}
|
||||
var resp = await api.updateRequestEditStatus(param);
|
||||
if (resp.status != "OK") {
|
||||
let snac = { color: 'error', message: resp.message, active: true };
|
||||
context.commit("update_snacbar", snac);
|
||||
} else {
|
||||
context.dispatch("getListJournalEdit");
|
||||
let snac = { color: 'success', message: resp.data, active: true };
|
||||
context.commit("update_snacbar", snac);
|
||||
|
||||
context.commit("update_dialog_edit_request", false)
|
||||
}
|
||||
} catch (error) {
|
||||
let snac = { color: 'error', message: error.message, active: true };
|
||||
context.commit("update_snacbar", snac);
|
||||
}
|
||||
},
|
||||
async verifEditJurnal(context, status) {
|
||||
try {
|
||||
let snac = { color: 'error', message: '', active: false };
|
||||
context.commit("update_snacbar", snac);
|
||||
|
||||
let param = {
|
||||
jurnalID: context.state.selected_jurnal.jurnalID,
|
||||
newtrx: context.state.selected_jurnal_detail.changeAfter,
|
||||
JurnalRequestEditID: context.state.selected_jurnal.JurnalRequestEditID,
|
||||
status: status,
|
||||
token: one_token()
|
||||
}
|
||||
var resp = await api.verifEditJurnal(param);
|
||||
if (resp.status != "OK") {
|
||||
let snac = { color: 'error', message: resp.message, active: true };
|
||||
context.commit("update_snacbar", snac);
|
||||
} else {
|
||||
context.dispatch("getListJournalEdit");
|
||||
let snac = { color: 'success', message: resp.data, active: true };
|
||||
context.commit("update_snacbar", snac);
|
||||
|
||||
context.commit("update_summary_jurnal_detail", {
|
||||
total_debit: 0,
|
||||
total_kredit: 0,
|
||||
balance: 0
|
||||
});
|
||||
context.commit("update_selected_jurnal_detail", {});
|
||||
context.commit("update_selected_jurnal", {})
|
||||
context.commit("update_dialog_verifikasi", false);
|
||||
}
|
||||
} catch (error) {
|
||||
let snac = { color: 'error', message: error.message, active: true };
|
||||
context.commit("update_snacbar", snac);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user