476 lines
20 KiB
JavaScript
476 lines
20 KiB
JavaScript
// 1 => LOADING
|
|
// 2 => DONE
|
|
// 3 => ERROR
|
|
import * as api from "../api/price.js"
|
|
|
|
export default {
|
|
namespaced: true,
|
|
state: {
|
|
lookup_status: 0,
|
|
searchPrice: "",
|
|
priceHeaderList: [],
|
|
loading: false,
|
|
page: 1,
|
|
totalPageHeader: 0,
|
|
errorMsg: '',
|
|
snackbarSuccess: false,
|
|
snackbarError: false,
|
|
successMsg: '',
|
|
selectedPriceHeader: {
|
|
"headerID": "0",
|
|
"headerName": "",
|
|
"headerStartDate": "",
|
|
"headerEndDate": "",
|
|
"headerCode": "CODE"
|
|
},
|
|
dialogPriceHeader: false,
|
|
dialogDeleteHeader: false,
|
|
startDateHeader: moment(new Date()).format('YYYY-MM-DD'),
|
|
endDateHeader: moment(new Date()).format('YYYY-MM-DD'),
|
|
nameHeader: "",
|
|
filterName: "",
|
|
filterSubGroup: [],
|
|
filterStatus: [],
|
|
selectedFilterSubGroup: {
|
|
"id": "0",
|
|
'name': 'Semua'
|
|
},
|
|
selectedFilterStatus: {
|
|
"id": "A",
|
|
'name': 'Semua'
|
|
},
|
|
priceTestList: [],
|
|
priceTestPageTotal: 0,
|
|
priceTestPage: 1,
|
|
priceHeaderCopyList: [],
|
|
selectedPriceHeaderCopy: {},
|
|
dialogCopyHarga: false,
|
|
copyPacket: false,
|
|
dialogValidasi: false,
|
|
},
|
|
mutations: {
|
|
update_lookup_status(state, val) {
|
|
state.lookup_status = val
|
|
},
|
|
update_searchPrice(state, val) {
|
|
state.searchPrice = val
|
|
},
|
|
update_priceHeaderList(state, val) {
|
|
state.priceHeaderList = val
|
|
},
|
|
update_loading(state, val) {
|
|
state.loading = val
|
|
},
|
|
update_page(state, val) {
|
|
state.page = val
|
|
},
|
|
update_totalPageHeader(state, val) {
|
|
state.totalPageHeader = val
|
|
},
|
|
update_errorMsg(state, val) {
|
|
state.errorMsg = val
|
|
},
|
|
update_snackbarSuccess(state, val) {
|
|
state.snackbarSuccess = val
|
|
},
|
|
update_snackbarError(state, val) {
|
|
state.snackbarError = val
|
|
},
|
|
update_successMsg(state, val) {
|
|
state.successMsg = val
|
|
},
|
|
update_selectedPriceHeader(state, val) {
|
|
state.selectedPriceHeader = val
|
|
},
|
|
update_dialogPriceHeader(state, val) {
|
|
state.dialogPriceHeader = val
|
|
},
|
|
update_startDateHeader(state, val) {
|
|
state.startDateHeader = val
|
|
},
|
|
update_endDateHeader(state, val) {
|
|
state.endDateHeader = val
|
|
},
|
|
update_nameHeader(state, val) {
|
|
state.nameHeader = val
|
|
},
|
|
update_dialogDeleteHeader(state, val) {
|
|
state.dialogDeleteHeader = val
|
|
},
|
|
update_filterName(state, val) {
|
|
state.filterName = val
|
|
},
|
|
update_filterStatus(state, val) {
|
|
state.filterStatus = val
|
|
},
|
|
update_filterSubGroup(state, val) {
|
|
state.filterSubGroup = val
|
|
},
|
|
update_selectedFilterStatus(state, val) {
|
|
state.selectedFilterStatus = val
|
|
},
|
|
update_selectedFilterSubGroup(state, val) {
|
|
state.selectedFilterSubGroup = val
|
|
},
|
|
update_priceTestList(state, val) {
|
|
state.priceTestList = val
|
|
},
|
|
update_priceTestPageTotal(state, val) {
|
|
state.priceTestPageTotal = val
|
|
},
|
|
update_priceTestPage(state, val) {
|
|
state.priceTestPage = val
|
|
},
|
|
update_priceHeaderCopyList(state, val) {
|
|
state.priceHeaderCopyList = val
|
|
},
|
|
update_selectedPriceHeaderCopy(state, val) {
|
|
state.selectedPriceHeaderCopy = val
|
|
},
|
|
update_dialogCopyHarga(state, val) {
|
|
state.dialogCopyHarga = val
|
|
},
|
|
update_copyPacket(state, val) {
|
|
state.copyPacket = val
|
|
},
|
|
update_dialogValidasi(state, val) {
|
|
state.dialogValidasi = val
|
|
},
|
|
},
|
|
actions: {
|
|
async searchPriceHeader(context) {
|
|
context.commit("update_lookup_status", 1)
|
|
context.commit("update_loading", true)
|
|
try {
|
|
let prm = {
|
|
token: one_token(),
|
|
page: context.state.page,
|
|
search: context.state.searchPrice
|
|
}
|
|
let resp = await api.search(prm)
|
|
if (resp.status != "OK") {
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_errorMsg", resp.message)
|
|
context.commit("update_snackbarError", false)
|
|
|
|
} else {
|
|
context.commit("update_lookup_status", 2)
|
|
context.commit("update_errorMsg", '')
|
|
context.commit("update_loading", false)
|
|
|
|
let data = {
|
|
records: resp.data.records,
|
|
total: resp.data.total
|
|
}
|
|
context.commit("update_priceHeaderList", resp.data.records)
|
|
if (resp.data.records.length > 0 && context.state.selectedPriceHeader.headerID === "0") {
|
|
context.commit("update_selectedPriceHeader", resp.data.records[0])
|
|
context.dispatch("searchpricetest")
|
|
// this.$store.dispatch("price/searchpricetest");
|
|
|
|
} else if (resp.data.records.length > 0 && context.state.selectedPriceHeader.headerID !== "0") {
|
|
for (let i = 0; i < resp.data.records.length; i++) {
|
|
const e = resp.data.records[i];
|
|
if (e.headerID === context.state.selectedPriceHeader.headerID) {
|
|
context.commit("update_selectedPriceHeader", e)
|
|
}
|
|
|
|
}
|
|
}
|
|
context.commit("update_totalPageHeader", resp.data.total)
|
|
}
|
|
} catch (e) {
|
|
console.log(e)
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_errorMsg", e)
|
|
context.commit("update_snackbarError", false)
|
|
|
|
}
|
|
},
|
|
async insertPriceHeader(context) {
|
|
context.commit("update_lookup_status", 1)
|
|
context.commit("update_loading", true)
|
|
try {
|
|
let prm = {
|
|
token: one_token(),
|
|
name: context.state.nameHeader,
|
|
sd: context.state.startDateHeader,
|
|
ed: context.state.endDateHeader
|
|
}
|
|
let resp = await api.insertheader(prm)
|
|
if (resp.status != "OK") {
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_snackbarError", true)
|
|
context.commit("update_errorMsg", resp.message)
|
|
} else {
|
|
context.commit("update_lookup_status", 2)
|
|
context.commit("update_errorMsg", '')
|
|
context.commit("update_successMsg", 'Berhasil Membuat Harga ' + context.state.nameHeader)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_snackbarSuccess", true)
|
|
context.commit("update_dialogPriceHeader", false)
|
|
context.commit("update_nameHeader", '')
|
|
context.dispatch("searchPriceHeader")
|
|
}
|
|
} catch (e) {
|
|
console.log(e)
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_snackbarError", true)
|
|
context.commit("update_errorMsg", e)
|
|
}
|
|
},
|
|
async editPriceHeader(context) {
|
|
context.commit("update_lookup_status", 1)
|
|
context.commit("update_loading", true)
|
|
try {
|
|
let prm = {
|
|
id: context.state.selectedPriceHeader.headerID,
|
|
token: one_token(),
|
|
name: context.state.nameHeader,
|
|
sd: context.state.startDateHeader,
|
|
ed: context.state.endDateHeader
|
|
}
|
|
let resp = await api.editheader(prm)
|
|
if (resp.status != "OK") {
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_snackbarError", true)
|
|
context.commit("update_errorMsg", resp.message)
|
|
} else {
|
|
context.commit("update_lookup_status", 2)
|
|
context.commit("update_errorMsg", '')
|
|
context.commit("update_successMsg", 'Berhasil Edit Harga ' + context.state.nameHeader)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_snackbarSuccess", true)
|
|
context.commit("update_dialogPriceHeader", false)
|
|
context.commit("update_nameHeader", '')
|
|
context.dispatch("searchPriceHeader")
|
|
}
|
|
} catch (e) {
|
|
console.log(e)
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_snackbarError", true)
|
|
context.commit("update_errorMsg", e)
|
|
}
|
|
},
|
|
async deletePriceHeader(context) {
|
|
context.commit("update_lookup_status", 1)
|
|
context.commit("update_loading", true)
|
|
try {
|
|
let prm = {
|
|
id: context.state.selectedPriceHeader.headerID,
|
|
token: one_token(),
|
|
}
|
|
let resp = await api.deleteheader(prm)
|
|
if (resp.status != "OK") {
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_snackbarError", true)
|
|
context.commit("update_errorMsg", resp.message)
|
|
} else {
|
|
context.commit("update_lookup_status", 2)
|
|
context.commit("update_errorMsg", '')
|
|
context.commit("update_successMsg", 'Berhasil Hapus Harga ' + context.state.nameHeader)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_snackbarSuccess", true)
|
|
context.commit("update_dialogDeleteHeader", false)
|
|
context.commit("update_nameHeader", '')
|
|
context.dispatch("searchPriceHeader")
|
|
}
|
|
} catch (e) {
|
|
console.log(e)
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_snackbarError", true)
|
|
context.commit("update_errorMsg", e)
|
|
}
|
|
},
|
|
async getpricefilter(context) {
|
|
context.commit("update_lookup_status", 1)
|
|
context.commit("update_loading", true)
|
|
try {
|
|
let prm = {
|
|
token: one_token(),
|
|
}
|
|
let resp = await api.getfilterprice(prm)
|
|
if (resp.status != "OK") {
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_errorMsg", resp.message)
|
|
} else {
|
|
context.commit("update_lookup_status", 2)
|
|
context.commit("update_errorMsg", '')
|
|
context.commit("update_loading", false)
|
|
|
|
|
|
context.commit("update_filterStatus", resp.data.status)
|
|
context.commit("update_filterSubGroup", resp.data.subgroup)
|
|
}
|
|
} catch (e) {
|
|
console.log(e)
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_errorMsg", e)
|
|
}
|
|
},
|
|
async searchpricetest(context) {
|
|
context.commit("update_lookup_status", 1)
|
|
context.commit("update_loading", true)
|
|
try {
|
|
let prm = {
|
|
token: one_token(),
|
|
search: context.state.filterName,
|
|
subgroup: context.state.selectedFilterSubGroup.id,
|
|
status: context.state.selectedFilterStatus.id,
|
|
headerid: context.state.selectedPriceHeader.headerID,
|
|
page: context.state.priceTestPage,
|
|
}
|
|
let resp = await api.searchpricetest(prm)
|
|
if (resp.status != "OK") {
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_errorMsg", resp.message)
|
|
} else {
|
|
context.commit("update_lookup_status", 2)
|
|
context.commit("update_errorMsg", '')
|
|
context.commit("update_loading", false)
|
|
context.commit("update_priceTestList", resp.data.records)
|
|
context.commit("update_priceTestPageTotal", resp.data.total)
|
|
|
|
}
|
|
} catch (e) {
|
|
console.log(e)
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_errorMsg", e)
|
|
}
|
|
},
|
|
async savetest(context, prm) {
|
|
context.commit("update_lookup_status", 1)
|
|
context.commit("update_loading", true)
|
|
try {
|
|
prm.token = one_token();
|
|
prm.headerid = context.state.selectedPriceHeader.headerID
|
|
|
|
let resp = await api.savetest(prm)
|
|
if (resp.status != "OK") {
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_snackbarError", false)
|
|
context.commit("update_errorMsg", resp.message)
|
|
} else {
|
|
context.commit("update_lookup_status", 2)
|
|
context.commit("update_successMsg", 'Berhasil simpan harga')
|
|
context.commit("update_snackbarSuccess", false)
|
|
context.commit("update_loading", false)
|
|
context.dispatch("searchpricetest");
|
|
context.dispatch("searchPriceHeader");
|
|
|
|
}
|
|
} catch (e) {
|
|
console.log(e)
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_errorMsg", e)
|
|
}
|
|
},
|
|
async copyharga(context) {
|
|
context.commit("update_lookup_status", 1)
|
|
context.commit("update_loading", true)
|
|
try {
|
|
let prm = {
|
|
token: one_token(),
|
|
headerid: context.state.selectedPriceHeaderCopy.headerID,
|
|
name: context.state.nameHeader,
|
|
copypacket: context.state.copyPacket
|
|
}
|
|
|
|
let resp = await api.copyharga(prm)
|
|
if (resp.status != "OK") {
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_errorMsg", resp.message)
|
|
context.commit("update_snackbarError", false)
|
|
} else {
|
|
context.commit("update_lookup_status", 2)
|
|
context.commit("update_errorMsg", '')
|
|
context.commit("update_loading", false)
|
|
context.commit("update_successMsg", 'Berhasil copy harga')
|
|
context.commit("update_snackbarSuccess", false)
|
|
context.dispatch("searchPriceHeader");
|
|
context.commit("update_dialogCopyHarga", false)
|
|
context.commit("update_nameHeader", '')
|
|
context.commit("update_selectedPriceHeaderCopy", {})
|
|
context.commit("update_copyPacket", false)
|
|
|
|
}
|
|
} catch (e) {
|
|
console.log(e)
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_errorMsg", e)
|
|
}
|
|
},
|
|
async validateheader(context) {
|
|
context.commit("update_lookup_status", 1)
|
|
context.commit("update_loading", true)
|
|
try {
|
|
let prm = {
|
|
token: one_token(),
|
|
id: context.state.selectedPriceHeader.headerID,
|
|
}
|
|
|
|
let resp = await api.validateheader(prm)
|
|
if (resp.status != "OK") {
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_errorMsg", resp.message)
|
|
} else {
|
|
context.commit("update_lookup_status", 2)
|
|
context.commit("update_successMsg", 'Berhasil validasi price header')
|
|
context.commit("update_snackbarSuccess", false)
|
|
|
|
context.commit("update_loading", false)
|
|
context.commit("update_dialogValidasi", false)
|
|
context.dispatch("searchPriceHeader");
|
|
context.dispatch("searchpricetest");
|
|
}
|
|
} catch (e) {
|
|
console.log(e)
|
|
context.commit("update_lookup_status", 3)
|
|
context.commit("update_loading", false)
|
|
context.commit("update_errorMsg", e)
|
|
}
|
|
},
|
|
async searchPriceHeaderAutocomplete(context, prm) {
|
|
context.commit("update_lookup_status", 1)
|
|
try {
|
|
prm.token = one_token();
|
|
prm.headerid = context.state.selectedPriceHeader.headerID
|
|
|
|
let resp = await api.searchpricetestautocomplete(prm)
|
|
if (resp.status != "OK") {
|
|
context.commit("update_lookup_status", 3)
|
|
|
|
context.commit("update_errorMsg", resp.message)
|
|
} else {
|
|
context.commit("update_lookup_status", 2)
|
|
context.commit("update_errorMsg", '')
|
|
context.commit("update_priceHeaderCopyList", resp.data.records)
|
|
|
|
}
|
|
} catch (e) {
|
|
console.log(e)
|
|
context.commit("update_lookup_status", 3)
|
|
|
|
context.commit("update_errorMsg", e)
|
|
}
|
|
},
|
|
}
|
|
}
|