From a500a671a945627a24afff5a5a4eb2759c2a92fa Mon Sep 17 00:00:00 2001 From: Sas Andy Date: Wed, 14 Aug 2024 08:21:26 +0700 Subject: [PATCH] global script dan global store --- globalscript/global.js | 24 ++++++++++++++ globalstore/globalstore.js | 68 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 globalscript/global.js create mode 100644 globalstore/globalstore.js diff --git a/globalscript/global.js b/globalscript/global.js new file mode 100644 index 0000000..68d8ecc --- /dev/null +++ b/globalscript/global.js @@ -0,0 +1,24 @@ +function one_money(inp, format) { + return numeral(inp).format(format ? format : '0,000') +} +window.one_money = one_money + +function one_token() { + return localStorage.getItem('token') +} +window.one_token = one_token + +function one_user() { + return JSON.parse(localStorage.getItem('user')) +} +window.one_user = one_user +function one_float(inp) { + try { + let val = parseFloat(inp) + if (isNaN(val)) return 0.0 + return val + } catch (e) { + return 0.0 + } +} +window.one_float = one_float \ No newline at end of file diff --git a/globalstore/globalstore.js b/globalstore/globalstore.js new file mode 100644 index 0000000..4b90238 --- /dev/null +++ b/globalstore/globalstore.js @@ -0,0 +1,68 @@ + +const URL = "/westone-api/v1/system/auth"; +const store = { + namespaced: true, + state() { + return { + count: 0, + drawer: true, + data: null, + email: "lashlkdsa", + password: null, + dialog_success: false + }; + }, + mutations: { + increment(state) { + state.count++; + }, + decrement(state) { + state.count--; + }, + setData(state, payload) { + state.data = payload; + }, + setDrawer(state, payload) { + state.drawer = payload; + }, + setEmail(state, data) { + state.email = data; + }, + setPassword(state, data) { + state.password = data; + }, + setDialogSuccess(state, data) { + state.dialog_success = data; + } + }, + actions: { + increment({ commit }) { + commit('increment'); + }, + decrement({ commit }) { + commit('decrement'); + }, + async loginState({ state, commit }) { + const params = { + email: state.email, + password: state.pasword + }; + + try { + const response = await axios.post(URL + '/login', params); + commit('setData', response.data); + } catch (error) { + commit('setError', error); + } + }, + async LoginParam({ commit }, params) { + try { + const response = await axios.post(URL + '/login', params); + commit('setData', response.data); + } catch (error) { + commit('setError', error); + } + } + } +}; +export default store \ No newline at end of file