first commit + add fe component vue accone

This commit is contained in:
2026-05-07 17:10:10 +07:00
parent fd8e4d694b
commit 38a182641a
327 changed files with 263946 additions and 0 deletions

View File

@@ -0,0 +1,355 @@
import * as api from "../api/api.js"
export default {
namespaced: true,
state: {
dialog_form_receive_item: false,
dialog_form_receive_item_edit: false,
dialog_select_item: false,
dialog_batch_item: false,
form_receive: {
receive_date: moment(new Date()).format('YYYY-MM-DD'),
number_do: '',
referensi: '',
supplier: {},
warehouse: {},
lokasi: {},
shipping_cost: 0,
note: ''
},
form_receive_item: [],
select_item_temp: [],
form_receive_item_del: [],
selected_po: {},
list_po: [],
list_item_po: [],
shipping_info: [],
selected_item_forbatch: {},
item_batch_temp: [],
dialog_form_inspeksi: false,
selected_item_received: {},
form_inspeksi: {
qty_po: 0,
qty_ro: 0,
price_po: 0.00,
price_ro: 0.00,
date_po: moment(new Date()).format('YYYY-MM-DD'),
date_ro: moment(new Date()).format('YYYY-MM-DD'),
condt_kemasan: '',
catatan_kemasan: '',
condt_pengiriman: '',
catatan_kirim: '',
summary: '',
catatan: '',
pemeriksa: '',
pengirim: ''
}
},
mutations: {
update_dialog_form_receive_item(state, data) {
state.dialog_form_receive_item = data
},
update_dialog_form_receive_item_edit(state, data) {
state.dialog_form_receive_item_edit = data
},
update_dialog_select_item(state, data) {
state.dialog_select_item = data
},
update_dialog_batch_item(state, data) {
state.dialog_batch_item = data
},
update_form_receive(state, val) {
state.form_receive = val
},
update_form_receive_item(state, val) {
state.form_receive_item = val
},
update_form_receive_item_del(state, val) {
state.form_receive_item_del = val
},
update_select_item_temp(state, val) {
state.select_item_temp = val
},
update_selected_po(state, val) {
state.selected_po = val
},
update_list_po(state, val) {
state.list_po = val
},
update_list_item_po(state, val) {
state.list_item_po = val
},
update_shipping_info(state, val) {
state.shipping_info = val
},
update_selected_item_forbatch(state, val) {
state.selected_item_forbatch = val
},
update_item_batch_temp(state, val) {
state.item_batch_temp = val
},
update_dialog_form_inspeksi(state, val) {
state.dialog_form_inspeksi = val
},
update_form_inspeksi(state, val) {
state.form_inspeksi = val
},
update_selected_item_received(state, val) {
state.selected_item_received = val
}
},
actions: {
resetForm(context) {
const form_receive = {
receive_date: moment(new Date()).format('YYYY-MM-DD'),
number_do: '',
referensi: '',
supplier: {},
warehouse: {},
lokasi: {},
shipping_cost: 0,
note: ''
}
context.state.form_receive = form_receive
context.state.form_receive_item = []
context.state.shipping_info = []
},
async getPurchaseOrder(context) {
try {
let param = {
token: one_token(),
SupplierID: context.state.form_receive.supplier.SupplierID,
search: '',
localPO_deleted: context.state.form_receive_item_del.map(item => item.PoItemReceiveID)
}
const resp = await api.getPurchaseOrder(param);
if (resp.status != 'OK') {
context.commit("ro/update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
}, {root: true});
} else {
context.commit("update_list_po", resp.data);
}
} catch (error) {
context.commit("ro/update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
}, {root: true});
}
},
async getItem(context) {
try {
let param = {
token: one_token(),
POID: context.state.selected_po.PurchaseOrderID,
WarehouseID: context.state.form_receive.warehouse.WarehouseID
}
const resp = await api.getItem(param);
if (resp.status != 'OK') {
context.commit("ro/update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
}, {root: true});
} else {
context.commit("update_list_item_po", resp.data);
}
} catch (error) {
context.commit("ro/update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
}, {root: true});
}
},
async saveRO(context) {
try {
const cekShipping = context.state.shipping_info.some(item => item.isUpfront === 'N');
let param = {
token: one_token(),
date: context.state.form_receive.receive_date,
supplierID: context.state.form_receive.supplier.SupplierID,
warehouseID: context.state.form_receive.warehouse.WarehouseID,
lokasiID: context.state.form_receive.lokasi.M_RuanganID,
shippingCost: context.state.form_receive.shipping_cost,
shippingIsPaid: cekShipping ? 'N' : 'Y',
note: context.state.form_receive.note,
refNumber: context.state.form_receive.referensi,
DONumber: context.state.form_receive.number_do,
detail: context.state.form_receive_item
}
const resp = await api.saveRO(param);
if (resp.status != 'OK') {
context.commit("ro/update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
}, {root: true});
} else {
context.dispatch("ro/search", {}, {root: true});
context.dispatch("resetForm");
context.commit("ro/update_snackbar", {
color: 'success',
msg: resp.data,
isOpen: true
}, {root: true});
context.commit("update_dialog_form_receive_item", false);
}
} catch (error) {
context.commit("ro/update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
}, {root: true});
}
},
async saveDataInspeksi(context) {
try {
let param = {
token: one_token(),
ROdetailID: 0,
form_inspeksi: context.state.form_inspeksi
}
const resp = await api.saveInspeksi(param)
if (resp.status != 'OK') {
context.commit("ro/update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
}, {root: true});
} else {
context.commit("ro/update_snackbar", {
color: 'success',
msg: resp.data,
isOpen: true
}, {root: true});
context.commit("update_dialog_form_receive_item", false);
}
} catch (error) {
context.commit("ro/update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
}, {root: true});
}
},
async getDataItemInspeksi(context) {
try {
let param = {
token: one_token(),
ROdetailID: 0,
}
const resp = await api.getItemDataInspeksi(param)
if (resp.status != 'OK') {
context.commit("ro/update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
}, {root: true});
} else {
}
} catch (error) {
context.commit("ro/update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
}, {root: true});
}
},
async confirmRO(context) {
try {
let param = {
token: one_token(),
ROID: context.rootState.ro.selected_ro.ReceiveOrderPoID
}
const resp = await api.confirmRO(param)
if (resp.status != 'OK') {
context.commit("ro/update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
}, {root: true});
} else {
context.dispatch("ro/search", {}, {root: true});
context.dispatch("resetForm");
context.commit("ro/update_snackbar", {
color: 'success',
msg: resp.data,
isOpen: true
}, {root: true});
context.commit("ro/update_dialog_confirmation", false, {root: true});
}
} catch (error) {
context.commit("ro/update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
}, {root: true});
}
},
async saveEditRO(context) {
try {
const cekShipping = context.state.shipping_info.some(item => item.isUpfront === 'N');
let param = {
token: one_token(),
ReceiveOrderID: context.rootState.ro.selected_ro.ReceiveOrderPoID,
numGR: context.rootState.ro.selected_ro.ReceiveOrderPoNumber,
date: context.state.form_receive.receive_date,
supplierID: context.state.form_receive.supplier.SupplierID,
warehouseID: context.state.form_receive.warehouse.WarehouseID,
lokasiID: context.state.form_receive.lokasi.M_RuanganID,
shippingCost: context.state.form_receive.shipping_cost,
shippingIsPaid: cekShipping ? 'N' : 'Y',
note: context.state.form_receive.note,
refNumber: context.state.form_receive.referensi,
DONumber: context.state.form_receive.number_do,
detail: context.state.form_receive_item
}
const resp = await api.saveEditRO(param)
if (resp.status != 'OK') {
context.commit("ro/update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
}, {root: true});
} else {
context.dispatch("ro/search", {}, {root: true});
context.dispatch("resetForm");
context.commit("ro/update_snackbar", {
color: 'success',
msg: resp.data,
isOpen: true
}, {root: true});
context.commit("update_dialog_form_receive_item_edit", false);
}
} catch (error) {
context.commit("ro/update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
}, {root: true});
}
}
}
}

View File

@@ -0,0 +1,431 @@
import * as api from "../api/api.js"
export default {
namespaced: true,
state: {
dialog_confirmation: false,
dialog_delete: false,
dialog_detail_view: false,
snackbar: {
color: 'success',
msg: '',
isOpen: false
},
filter: {
startdate: moment(new Date()).format('YYYY-MM-DD'),
enddate: moment(new Date()).format('YYYY-MM-DD'),
search: ''
},
curr_page: 1,
list_data_ro: {
records: [],
total: 1
},
list_supplier: [],
list_warehouse: [],
selected_ro: {},
list_staff: [],
list_lokasi: [],
dialog_handover: false,
selected_staff: {},
dialog_document: false,
show_progrees_upload: false,
imageFiles: [],
imagePreviews: [],
cekFile: false,
act_dialog_doc: "",
dialog_barcode: false,
barcodes: [],
urlQrCode: '',
indeterminatex: false,
bar_chx_all: false,
selected_barcode: [],
},
mutations: {
update_dialog_confirmation(state, data) {
state.dialog_confirmation = data
},
update_dialog_delete(state, data) {
state.dialog_delete = data
},
update_dialog_detail_view(state, data) {
state.dialog_detail_view = data
},
update_snackbar(state, data) {
state.snackbar = data
},
update_filter(state, data) {
state.filter = data
},
update_curr_page(state, data) {
state.curr_page = data
},
update_list_data_ro(state, data) {
state.list_data_ro = data
},
update_list_supplier(state, val) {
state.list_supplier = val
},
update_list_warehouse(state, val) {
state.list_warehouse = val
},
update_selected_ro(state, val) {
state.selected_ro = val
},
update_list_staff(state, val) {
state.list_staff = val
},
update_list_lokasi(state, val) {
state.list_lokasi = val
},
update_dialog_handover(state, val) {
state.dialog_handover = val
},
update_selected_staff(state, val) {
state.selected_staff = val
},
update_dialog_document(state, val) {
state.dialog_document = val
},
update_show_progrees_upload(state, val) {
state.show_progrees_upload = val
},
update_imageFiles(state, val) {
state.imageFiles = val
},
update_imagePreviews(state, val) {
state.imagePreviews = val
},
update_cekFile(state, val) {
state.cekFile = val
},
update_act_dialog_doc(state, val) {
state.act_dialog_doc = val
},
update_dialog_barcode(state, val) {
state.dialog_barcode = val
},
update_barcodes(state, val) {
state.barcodes = val
},
update_urlQrCode(state, val) {
state.urlQrCode = val
},
update_indeterminatex(state, val) {
state.indeterminatex = val
},
update_bar_chx_all(state, val) {
state.bar_chx_all = val
},
update_selected_barcode(state, val) {
state.selected_barcode = val
}
},
actions: {
async search(context) {
try {
let param = {
token: one_token(),
page: context.state.curr_page,
...context.state.filter
}
console.log("search OR");
let resp = await api.search(param);
if (resp.status != 'OK') {
context.commit("update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
});
} else {
context.commit("update_list_data_ro", resp.data);
}
} catch (error) {
context.commit("update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
});
}
},
async getSupplier(context) {
try {
let param = {
token: one_token(),
search: ''
}
const resp = await api.getSupplier(param);
if (resp.status != 'OK') {
context.commit("update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
});
} else {
context.commit("update_list_supplier", resp.data);
}
} catch (error) {
context.commit("update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
});
}
},
async getWarehouse(context) {
try {
let param = {
token: one_token()
}
const resp = await api.getWarehouse(param);
if (resp.status != 'OK') {
context.commit("update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
});
} else {
context.commit("update_list_warehouse", resp.data);
}
} catch (error) {
context.commit("update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
});
}
},
async getRuangan(context) {
try {
let param = {
token: one_token(),
search: ''
}
const resp = await api.getRuangan(param);
if (resp.status != 'OK') {
context.commit("update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
});
} else {
context.commit("update_list_lokasi", resp.data);
}
} catch (error) {
context.commit("update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
});
}
},
async getItemUpdate(context) {
try {
let param = {
token: one_token(),
ROID: context.state.selected_ro.ReceiveOrderPoID
}
const resp = await api.getItemUpdate(param);
if (resp.status != 'OK') {
context.commit("update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
});
} else {
let temp_ship = []
resp.data.forEach(element => {
let ship = {
num_po: element.PurchaseOrderNumber,
cost: element.PurchaseOrderShippingCost,
isUpfront: element.PurchaseOrderShippingCostStatus
}
const isExist = context.rootState.form.shipping_info.some(
item => item.num_po == element.PurchaseOrderNumber
);
if (!isExist) {
temp_ship.push(ship);
}
});
let form = {
receive_date: context.state.selected_ro.ReceiveOrderPoIDate,
number_do: context.state.selected_ro.ReceiveOrderPoDONumber,
referensi: context.state.selected_ro.ReceiveOrderPoRefNumber,
supplier: {
SupplierID: context.state.selected_ro.SupplierID,
SupplierName: context.state.selected_ro.SupplierName
},
warehouse: {
WarehouseID: context.state.selected_ro.WarehouseID,
WarehouseName: context.state.selected_ro.WarehouseName,
WarehouseCode: context.state.selected_ro.WarehouseCode
},
lokasi: {
M_RuanganID: context.state.selected_ro.M_RuanganID,
M_RuanganName: context.state.selected_ro.M_RuanganName,
M_RuanganCode: context.state.selected_ro.M_RuanganCode
},
shipping_cost: context.state.selected_ro.ReceiveOrderShippingCostAmount,
note: context.state.selected_ro.ReceiveOrderPoNote
}
context.commit("form/update_form_receive", form, {root: true});
context.commit("form/update_shipping_info", temp_ship, {root: true});
context.commit("form/update_form_receive_item", resp.data, {root: true});
}
} catch (error) {
context.commit("update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
});
}
},
async deleteRO(context) {
try {
let param = {
token: one_token(),
ROID: context.state.selected_ro.ReceiveOrderPoID
}
const resp = await api.deleteRO(param);
if (resp.status != 'OK') {
context.commit("update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
});
} else {
context.commit("update_selected_ro", {});
context.dispatch("search", {});
context.commit("update_snackbar", {
color: 'success',
msg: resp.data,
isOpen: true
});
context.commit("update_dialog_delete", false);
}
} catch (error) {
context.commit("update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
});
}
},
async getListStaff(context, isHandover) {
try {
let param = {
token: one_token(),
ROID: context.state.selected_ro.ReceiveOrderPoID,
isSerahTerima: isHandover ?? "N"
}
let resp = await api.getListStaff(param)
if (resp.status != 'OK') {
context.commit("update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
});
} else {
context.commit("update_list_staff", resp.data)
}
} catch (error) {
context.commit("update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
});
}
},
async saveHandover(context, param) {
try {
param.token = one_token()
const resp = await api.saveHandover(param);
if (resp.status != 'OK') {
context.commit("update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
});
} else {
context.commit("update_selected_ro", {});
context.commit("update_selected_staff", {});
context.dispatch("search", {});
context.commit("update_snackbar", {
color: 'success',
msg: resp.data,
isOpen: true
});
context.commit("update_dialog_handover", false);
}
} catch (error) {
context.commit("update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
});
}
},
async saveFiles(context, param) {
try {
const resp = await api.saveFiles(param);
if (resp.status != 'OK') {
context.commit("update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
});
} else {
context.commit("update_selected_ro", {});
context.commit("update_imageFiles", []);
context.commit("update_imagePreviews", []);
context.commit("update_cekFile", false);
context.dispatch("search", {});
context.commit("update_snackbar", {
color: 'success',
msg: resp.data,
isOpen: true
});
context.commit("update_dialog_document", false);
}
} catch (error) {
context.commit("update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
});
}
},
async getBarcodes(context) {
try {
let param = {
token: one_token(),
ROID: context.state.selected_ro.ReceiveOrderPoID
}
const resp = await api.getBarcodes(param);
if (resp.status != 'OK') {
context.commit("update_snackbar", {
color: 'error',
msg: resp.message,
isOpen: true
});
} else {
context.commit("update_barcodes", resp.data);
}
} catch (error) {
context.commit("update_snackbar", {
color: 'error',
msg: error.message,
isOpen: true
});
}
},
}
}