307 lines
13 KiB
JavaScript
307 lines
13 KiB
JavaScript
import * as api from "../api/nonpersediaan_api.js";
|
|
|
|
export default {
|
|
namespaced: true,
|
|
state: {
|
|
user: one_user(),
|
|
form_transfer_date: new Date().toISOString().substr(0, 10),
|
|
form_cabang: {},
|
|
form_divisi: {},
|
|
form_catatan: "",
|
|
form_detail: [],
|
|
|
|
dialog_detailform: false,
|
|
list_cabangform: [],
|
|
list_divisiform: [],
|
|
list_detailform: {
|
|
total: 0,
|
|
records: []
|
|
},
|
|
list_detailform_page: 1,
|
|
type_act: 'BARU',
|
|
is_verif: 'Draft',
|
|
|
|
buffer_detailitem: {},
|
|
dialog_batchitem: false,
|
|
list_barnote: {},
|
|
form_barnote: [],
|
|
edit_qty: 'Eqty',
|
|
act_verif: ''
|
|
},
|
|
mutations: {
|
|
update_form_transfer_date(state, data) {
|
|
state.form_transfer_date = data
|
|
},
|
|
update_form_cabang(state, data) {
|
|
state.form_cabang = data
|
|
},
|
|
update_form_divisi(state, data) {
|
|
state.form_divisi = data
|
|
},
|
|
update_form_catatan(state, data) {
|
|
state.form_catatan = data
|
|
},
|
|
update_form_detail(state, data) {
|
|
state.form_detail = data
|
|
},
|
|
update_dialog_detailform(state, data) {
|
|
state.dialog_detailform = data
|
|
},
|
|
update_list_cabangform(state, data) {
|
|
state.list_cabangform = data
|
|
},
|
|
update_list_divisiform(state, data) {
|
|
state.list_divisiform = data
|
|
},
|
|
update_list_detailform(state, data) {
|
|
state.list_detailform = data
|
|
},
|
|
update_list_detailform_page(state, data) {
|
|
state.list_detailform_page = data
|
|
},
|
|
update_type_act(state, data) {
|
|
state.type_act = data
|
|
},
|
|
update_is_verif(state, data) {
|
|
state.is_verif = data
|
|
},
|
|
update_buffer_detailitem(state, data) {
|
|
state.buffer_detailitem = data
|
|
},
|
|
update_list_barnote(state, data) {
|
|
state.list_barnote = data
|
|
},
|
|
update_dialog_batchitem(state, data) {
|
|
state.dialog_batchitem = data
|
|
},
|
|
update_form_barnote(state, data) {
|
|
state.form_barnote = data
|
|
},
|
|
update_edit_qty(state, data) {
|
|
state.edit_qty = data
|
|
},
|
|
update_act_verif(state, data) {
|
|
state.act_verif = data
|
|
}
|
|
},
|
|
actions: {
|
|
async newForm(context) {
|
|
try {
|
|
let params = {
|
|
token: one_token(),
|
|
S_RegionalID: context.state.user.S_RegionalID
|
|
}
|
|
let resp = await api.getBranches(params)
|
|
if (resp.status != "OK") {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + resp.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
} else {
|
|
context.commit("update_type_act", "BARU")
|
|
context.commit("update_list_cabangform", resp.data.records)
|
|
context.dispatch("getDivisi", {})
|
|
|
|
context.commit("update_form_transfer_date", new Date().toISOString().substr(0, 10))
|
|
context.commit("update_form_cabang", { })
|
|
context.commit("update_form_divisi", { })
|
|
context.commit("update_form_catatan", "")
|
|
context.commit("update_list_detailform", {total: 0, records: []})
|
|
context.commit("update_is_verif", 'Draft')
|
|
context.commit("update_form_detail", [ ])
|
|
context.commit("np_data/update_selected_tf", { }, { root: true })
|
|
}
|
|
|
|
|
|
} catch (error) {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + error.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
}
|
|
},
|
|
async getDivisi(context) {
|
|
try {
|
|
let params = {token: one_token()}
|
|
|
|
let resp = await api.getDivision(params);
|
|
if (resp.status != 'OK') {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + resp.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
} else {
|
|
context.commit("update_list_divisiform", resp.data)
|
|
}
|
|
} catch (error) {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + error.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
}
|
|
},
|
|
async getListItemDetail(context) {
|
|
try {
|
|
let params = {
|
|
token: one_token(),
|
|
currpage: context.state.list_detailform_page,
|
|
regionalid: context.state.user.S_RegionalID,
|
|
branchcodedestin: context.state.form_cabang.M_BranchCode,
|
|
branchIDorigin: context.state.user.M_BranchID,
|
|
divisionID: context.state.form_divisi.DivisionID
|
|
}
|
|
|
|
let resp = await api.getListDetail(params)
|
|
if (resp.status != 'OK') {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + resp.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
} else {
|
|
const current_detail = context.state.form_detail
|
|
if (current_detail.length == 0) {
|
|
context.commit("update_list_detailform", resp.data)
|
|
} else {
|
|
const inserted = resp.data.records.filter(item => !current_detail.some(obj => obj.PurchaseRequestFlagID == item.PurchaseRequestFlagID))
|
|
let data = {
|
|
records: inserted,
|
|
total: parseInt(resp.data.total)
|
|
}
|
|
context.commit("update_list_detailform", data)
|
|
}
|
|
}
|
|
|
|
} catch (error) {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + error.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
}
|
|
},
|
|
async createTFReq(context) {
|
|
try {
|
|
let params = {
|
|
token: one_token(),
|
|
S_RegionalID: context.state.user.S_RegionalID,
|
|
M_BranchCode: context.state.form_cabang.M_BranchCode,
|
|
DivisionID: context.state.form_divisi.DivisionID,
|
|
GoodsTfNotes: context.state.form_catatan,
|
|
GoodsTfDate: context.state.form_transfer_date,
|
|
GoodsTfStatus: context.state.is_verif,
|
|
detail: context.state.form_detail
|
|
}
|
|
|
|
let resp = await api.createTfRequest(params);
|
|
if (resp.status != 'OK') {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + resp.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
} else {
|
|
// generate surat jalan atau nggak?
|
|
|
|
context.dispatch("newForm")
|
|
context.dispatch("np_data/cariTF", { }, { root: true })
|
|
let snac = { isOpen: true, color: "success", msg: "Success" }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
}
|
|
} catch (error) {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + error.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
}
|
|
},
|
|
async updateTFReq(context) {
|
|
try {
|
|
let params = {
|
|
token: one_token(),
|
|
S_RegionalID: context.state.user.S_RegionalID,
|
|
M_BranchCode: context.state.form_cabang.M_BranchCode,
|
|
DivisionID: context.state.form_divisi.DivisionID,
|
|
GoodsTfID: context.rootState.np_data.selected_tf.T_GoodsTransferID,
|
|
GoodsTfNum: context.rootState.np_data.selected_tf.T_GoodsTransferNum,
|
|
GoodsTfNotes: context.state.form_catatan,
|
|
GoodsTfDate: context.state.form_transfer_date,
|
|
GoodsTfStatus: context.state.is_verif,
|
|
editqty: context.state.edit_qty,
|
|
actverif: context.state.act_verif,
|
|
detail: context.state.form_detail
|
|
}
|
|
|
|
let resp = await api.updateTfRequest(params);
|
|
if (resp.status != 'OK') {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + resp.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
} else {
|
|
// generate surat jalan atau nggak?
|
|
|
|
context.dispatch("newForm")
|
|
context.dispatch("np_data/cariTF", { }, { root: true })
|
|
let snac = { isOpen: true, color: "success", msg: "Success" }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
}
|
|
} catch (error) {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + error.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
}
|
|
},
|
|
async deleteTFReq(context, params) {
|
|
try {
|
|
params.token = one_token()
|
|
let resp = await api.deleteTfRequest(params);
|
|
if (resp.status != 'OK') {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + resp.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
} else {
|
|
context.dispatch("newForm")
|
|
context.dispatch("p_data/cariTF", { }, { root: true })
|
|
|
|
let snac = { isOpen: true, color: "success", msg: resp.data}
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
}
|
|
} catch (error) {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + error.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
}
|
|
},
|
|
async displayDetail(context) {
|
|
try {
|
|
let detail = context.rootState.np_data.selected_tf
|
|
context.commit("update_form_transfer_date", detail.T_GoodsTransferDate)
|
|
context.commit("update_form_catatan", detail.T_GoodsTransferNotes)
|
|
context.commit("update_is_verif", detail.T_GoodsTransferStatus)
|
|
|
|
context.commit("update_form_cabang", {
|
|
M_BranchID: detail.M_BranchID,
|
|
M_BranchCode: detail.M_BranchCode,
|
|
M_BranchName: detail.M_BranchName
|
|
})
|
|
|
|
context.commit("update_form_divisi", {
|
|
DivisionID: detail.T_GoodsTransferDivisionID,
|
|
DivisionCode: detail.DivisionCode,
|
|
DivisionName: detail.DivisionName
|
|
})
|
|
|
|
let params = {
|
|
token: one_token(),
|
|
goodTfID: detail.T_GoodsTransferID
|
|
}
|
|
const resp = await api.getDraftDetail(params)
|
|
if (resp.status !== 'OK') {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + resp.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
} else {
|
|
const draft = resp.data.records
|
|
context.commit("update_form_detail", draft);
|
|
}
|
|
|
|
} catch (error) {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + error.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
}
|
|
},
|
|
async getListStock(context, params) {
|
|
try {
|
|
params.token = one_token()
|
|
params.regionalid = context.state.user.S_RegionalID
|
|
|
|
const resp = await api.getListStock(params)
|
|
if (resp.status !== 'OK') {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + resp.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
} else {
|
|
context.commit("update_list_barnote", resp.data)
|
|
}
|
|
} catch (error) {
|
|
let snac = { isOpen: true, color: "error", msg: "Gagal, " + error.message }
|
|
context.commit("p_data/update_snackbar", snac, { root: true })
|
|
}
|
|
}
|
|
}
|
|
} |