Add dashboard user MCU menu
This commit is contained in:
132
test/vuex/dashboard-user-mcu/modules/dashboard_user.js
Normal file
132
test/vuex/dashboard-user-mcu/modules/dashboard_user.js
Normal file
@@ -0,0 +1,132 @@
|
||||
import * as api from "../api/dashboard_user.js"
|
||||
|
||||
export default {
|
||||
namespaced: true,
|
||||
state: {
|
||||
users: [],
|
||||
selected_user: {},
|
||||
project_options: [],
|
||||
search_username: '',
|
||||
search_project: { mcu_id: 'all', project_number: 'All', project_name: 'Semua Project' },
|
||||
project_keyword: '',
|
||||
page: 1,
|
||||
limit: 20,
|
||||
total_rows: 0,
|
||||
total_pages: 0,
|
||||
search_status: 0,
|
||||
save_status: 0,
|
||||
save_error_message: '',
|
||||
dialog_success: false,
|
||||
msg_success: ''
|
||||
},
|
||||
mutations: {
|
||||
update_users(state, val) { state.users = val },
|
||||
update_selected_user(state, val) { state.selected_user = val },
|
||||
update_project_options(state, val) { state.project_options = val },
|
||||
update_search_username(state, val) { state.search_username = val },
|
||||
update_search_project(state, val) { state.search_project = val },
|
||||
update_project_keyword(state, val) { state.project_keyword = val },
|
||||
update_page(state, val) { state.page = val },
|
||||
update_limit(state, val) { state.limit = val },
|
||||
update_total_rows(state, val) { state.total_rows = val },
|
||||
update_total_pages(state, val) { state.total_pages = val },
|
||||
update_search_status(state, val) { state.search_status = val },
|
||||
update_save_status(state, val) { state.save_status = val },
|
||||
update_save_error_message(state, val) { state.save_error_message = val },
|
||||
update_dialog_success(state, val) { state.dialog_success = val },
|
||||
update_msg_success(state, val) { state.msg_success = val }
|
||||
},
|
||||
actions: {
|
||||
async search(context, prm) {
|
||||
context.commit('update_search_status', 1)
|
||||
try {
|
||||
prm.token = one_token()
|
||||
let resp = await api.search(prm)
|
||||
if (resp.status != 'OK') {
|
||||
context.commit('update_search_status', 3)
|
||||
context.commit('update_save_error_message', resp.message)
|
||||
} else {
|
||||
let data = resp.data || {}
|
||||
context.commit('update_users', data.records || [])
|
||||
context.commit('update_total_rows', data.pagination ? data.pagination.total_rows : 0)
|
||||
context.commit('update_total_pages', data.pagination ? data.pagination.total_pages : 0)
|
||||
context.commit('update_page', data.pagination ? data.pagination.page : 1)
|
||||
context.commit('update_limit', data.pagination ? data.pagination.limit : 20)
|
||||
context.commit('update_search_status', 2)
|
||||
}
|
||||
} catch (e) {
|
||||
context.commit('update_search_status', 3)
|
||||
context.commit('update_save_error_message', e.message)
|
||||
}
|
||||
},
|
||||
async search_project(context, prm) {
|
||||
try {
|
||||
prm.token = one_token()
|
||||
let resp = await api.search_project(prm)
|
||||
if (resp.status != 'OK') {
|
||||
context.commit('update_project_options', [])
|
||||
} else {
|
||||
context.commit('update_project_options', resp.data.records || [])
|
||||
}
|
||||
} catch (e) {
|
||||
context.commit('update_project_options', [])
|
||||
}
|
||||
},
|
||||
async save(context, prm) {
|
||||
context.commit('update_save_status', 1)
|
||||
prm.token = one_token()
|
||||
let resp = await api.save(prm)
|
||||
if (resp.status != 'OK') {
|
||||
context.commit('update_save_status', 3)
|
||||
context.commit('update_save_error_message', resp.message)
|
||||
return resp
|
||||
}
|
||||
context.commit('update_save_status', 2)
|
||||
context.commit('update_msg_success', (resp.data && resp.data.message) ? resp.data.message : 'User berhasil disimpan')
|
||||
context.commit('update_dialog_success', true)
|
||||
return resp
|
||||
},
|
||||
async reset_password(context, prm) {
|
||||
context.commit('update_save_status', 1)
|
||||
prm.token = one_token()
|
||||
let resp = await api.reset_password(prm)
|
||||
if (resp.status != 'OK') {
|
||||
context.commit('update_save_status', 3)
|
||||
context.commit('update_save_error_message', resp.message)
|
||||
return resp
|
||||
}
|
||||
context.commit('update_save_status', 2)
|
||||
context.commit('update_msg_success', (resp.data && resp.data.message) ? resp.data.message : 'Password berhasil direset')
|
||||
context.commit('update_dialog_success', true)
|
||||
return resp
|
||||
},
|
||||
async assign_project(context, prm) {
|
||||
context.commit('update_save_status', 1)
|
||||
prm.token = one_token()
|
||||
let resp = await api.assign_project(prm)
|
||||
if (resp.status != 'OK') {
|
||||
context.commit('update_save_status', 3)
|
||||
context.commit('update_save_error_message', resp.message)
|
||||
return resp
|
||||
}
|
||||
context.commit('update_save_status', 2)
|
||||
context.commit('update_msg_success', (resp.data && resp.data.message) ? resp.data.message : 'Project berhasil di-assign')
|
||||
context.commit('update_dialog_success', true)
|
||||
return resp
|
||||
},
|
||||
async remove_project(context, prm) {
|
||||
context.commit('update_save_status', 1)
|
||||
prm.token = one_token()
|
||||
let resp = await api.remove_project(prm)
|
||||
if (resp.status != 'OK') {
|
||||
context.commit('update_save_status', 3)
|
||||
context.commit('update_save_error_message', resp.message)
|
||||
return resp
|
||||
}
|
||||
context.commit('update_save_status', 2)
|
||||
context.commit('update_msg_success', (resp.data && resp.data.message) ? resp.data.message : 'Project berhasil dihapus')
|
||||
context.commit('update_dialog_success', true)
|
||||
return resp
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user