Files
FE_CPONE/test/vuex/one-qontak-config/modules/form.js
2026-04-27 10:13:31 +07:00

120 lines
4.0 KiB
JavaScript

import * as api from "../api/form.js"
import { update } from "../api/form.js"
export default {
namespaced: true,
state: {
// Status
errors: [],
save_status: 0,
save_error_message: '',
get_data_status: 0,
get_data_error_message: '',
alert_success: false,
msg_success: "",
// Data
xid: 0,
tokenQontak: '',
waIntegrationID: '',
templateID: '',
templateName: '',
lastUpdated: ''
},
mutations: {
update_errors(state, val) {
state.errors = val
},
update_save_status(state, val) {
state.save_status = val
},
update_save_error_message(state, val) {
state.save_error_message = val
},
update_get_data_status(state, val) {
state.get_data_status = val
},
update_get_data_error_message(state, val) {
state.get_data_error_message = val
},
update_tokenQontak(state, val) {
state.tokenQontak = val
},
update_waIntegrationID(state, val) {
state.waIntegrationID = val
},
update_templateID(state, val) {
state.templateID = val
},
update_lastUpdated(state, val) {
state.lastUpdated = val
},
update_templateName(state, val) {
state.templateName = val
},
update_XQontakApiID(state, val) {
state.xid = val
},
update_alert_success(state, val) {
state.alert_success = val
},
update_msg_success(state, val) {
state.msg_success = val
}
},
actions: {
// Status :
// 1 => LOADING
// 2 => DONE
// 3 => ERROR
async getlatestdata(context) {
context.commit("update_get_data_status", 1)
try {
let resp = await api.getlatestdata(one_token())
if (resp.status != "OK") {
context.commit("update_get_data_status", 3)
} else {
context.commit("update_get_data_status", 2)
let data = {
total: resp.data.total,
records: resp.data.records[0]
}
context.commit("update_save_status", 2)
context.commit("update_XQontakApiID", data.records.XQontakApiID)
context.commit("update_tokenQontak", data.records.XQontakApiToken)
context.commit("update_waIntegrationID", data.records.XQontakApiWaIntegrationID)
context.commit("update_templateID", data.records.XQontakApiTemplateID)
context.commit("update_templateName", data.records.XQontakApiTemplateName)
context.commit("update_lastUpdated", data.records.XQontakApiLastUpdated)
}
} catch (e) {
context.commit("update_get_data_status", 3)
context.commit("update_errors", e)
}
},
async update(context, prm) {
context.commit("update_save_status", 1)
try {
prm.token = one_token()
let resp = await api.update(prm)
if (resp.status != "OK") {
context.commit("update_save_status", 3)
} else {
context.commit("update_save_status", 2)
var msg = "Berhasil update config Qontak"
context.commit("update_msg_success", msg)
context.commit("update_alert_success", true)
context.dispatch("getlatestdata")
}
} catch (e) {
context.commit("update_save_status", 3)
context.commit("update_errors", e)
}
}
}
}