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

663 lines
27 KiB
JavaScript

// 1 => LOADING
// 2 => DONE
// 3 => ERROR
import * as api from "../api/staff.js"
export default {
namespaced: true,
state: {
last_id: -1,
last_saved_id: -1,
x_addr_id: 0,
act: 'edit',
act_addr: 'new',
get_data_status: 0,
search_staff: 0,
search_status: 0,
statuses: [{ label: 'Bukan Kurir', value: 'N' }, { label: 'Sebagai Kurir', value: 'Y' }],
selected_status: { label: 'Bukan Kurir', value: 'N' },
search_error_message: '',
dobs: [],
selected_dob: {},
dob: '',
staff_name: '',
staffs: [],
total_staffs: 0,
sexes: [],
selected_sex: {},
address: '',
cities: [],
city_address: {},
subareas: [],
subarea_address: {},
phone: '',
hp: '',
branchs: [],
selected_branch: {},
religions: [],
selected_religion: {},
startdate: '',
enddate: '',
positions: [],
selected_position: {},
nik: '',
idnumber: '',
timework: '',
timeworksaturday: '',
blood: '',
study: '',
iscourier: 'N',
total_staff: 0,
selected_staff: {},
save_status: 0,
btn_save_seen: true,
pgrs_save: false,
save_error_message: '',
no_save: 0,
open_alert_confirmation: false,
alert_success: false,
msg_success: "",
dialog_success: false,
dialog_confirmation_delete: false,
msg_confirmation_delete: "",
dialog_confirmation_delete_addr: false,
msg_confirmation_delete_addr: "",
autocomplete_status: 0,
dialog_form_address: false,
errors: [],
dialog_form_position: false,
doctorList: [],
selectedDoctor: {},
searchDoctor: '',
isDoctor: 'N'
},
mutations: {
update_x_addr_id(state, val) {
state.x_addr_id = val
},
update_last_id(state, val) {
state.last_id = val
},
update_last_saved_id(state, val) {
state.last_saved_id = val
},
update_act(state, val) {
state.act = val
},
update_act_addr(state, val) {
state.act_addr = val
},
update_get_data_status(state, val) {
state.get_data_status = val
},
update_search_error_message(state, patient) {
state.search_error_message = patient
},
update_search_staff(state, staff) {
state.search_staff = staff
},
update_staff_name(state, val) {
state.staff_name = val
},
update_staffs(state, data) {
state.staffs = data
},
update_selected_staff(state, val) {
state.selected_staff = val
},
update_dob(state, val) {
state.dob = val
},
update_sexes(state, val) {
state.sexes = val
},
update_selected_sex(state, val) {
state.selected_sex = val
},
update_address(state, val) {
state.address = val
},
update_cities(state, val) {
state.cities = val
},
update_city_address(state, val) {
state.city_address = val
},
update_subareas(state, val) {
state.subareas = val
},
update_subarea_address(state, val) {
state.subarea_address = val
},
update_phone(state, val) {
state.phone = val
},
update_hp(state, val) {
state.hp = val
},
update_religions(state, val) {
state.religions = val
},
update_selected_religion(state, val) {
state.selected_religion = val
},
update_branchs(state, val) {
state.branchs = val
},
update_selected_branch(state, val) {
state.selected_branch = val
},
update_startdate(state, val) {
state.startdate = val
},
update_enddate(state, val) {
state.enddate = val
},
update_positions(state, val) {
state.positions = val
},
update_selected_position(state, val) {
state.selected_position = val
},
update_nik(state, val) {
state.nik = val
},
update_idnumber(state, val) {
state.idnumber = val
},
update_timework(state, val) {
state.timework = val
},
update_timeworksaturday(state, val) {
state.timeworksaturday = val
},
update_blood(state, val) {
state.blood = val
},
update_study(state, val) {
state.study = val
},
update_iscourier(state, val) {
state.iscourier = val
},
update_btn_save_seen(state, val) {
state.btn_save_seen = val
},
update_pgrs_save(state, val) {
state.pgrs_save = val
},
update_save_error_message(state, msg) {
state.save_error_message = ''
},
update_no_save(state, val) {
state.no_save = val
},
update_open_alert_confirmation(state, val) {
state.open_alert_confirmation = val
},
update_alert_success(state, val) {
state.alert_success = val
},
update_msg_success(state, val) {
state.msg_success = val
},
update_dialog_success(state, val) {
state.dialog_success = val
},
update_dialog_confirmation_delete(state, val) {
state.dialog_confirmation_delete = val
},
update_msg_confirmation_delete(state, val) {
state.msg_confirmation_delete = val
},
update_dialog_confirmation_delete_addr(state, val) {
state.dialog_confirmation_delete_addr = val
},
update_msg_confirmation_delete_addr(state, val) {
state.msg_confirmation_delete_addr = val
},
update_addresses(state, val) {
state.addresses = val
},
update_autocomplete_status(state, val) {
state.autocomplete_status = val
},
update_dialog_form_address(state, val) {
state.dialog_form_address = val
},
update_label_address(state, val) {
state.label_address = val
},
update_search_status(state, val) {
state.search_status = val
},
update_errors(state, val) {
state.errors = val
},
update_total_staffs(state, val) {
state.total_staffs = val
},
update_selected_status(state, val) {
state.selected_status = val
},
update_dialog_form_position(state, val) {
state.dialog_form_position = val
},
update_save_status(state, val) {
state.save_status = val
},
update_doctorList(state, val) {
state.doctorList = val
},
update_selectedDoctor(state, val) {
state.selectedDoctor = val
},
update_searchDoctor(state, val) {
state.searchDoctor = val
},
update_isDoctor(state, val) {
state.isDoctor = val
},
},
actions: {
async search(context, prm) {
context.commit("update_search_staff", 1)
try {
let resp = await api.search(one_token(), prm.name, prm.snik, prm.status)
if (resp.status != "OK") {
context.commit("update_search_staff", 3)
context.commit("update_search_error_message", resp.message)
} else {
context.commit("update_search_staff", 2)
context.commit("update_search_error_message", "")
let data = {
records: resp.data.records,
total: resp.data.total
}
context.commit("update_staffs", data.records)
context.commit("update_total_staffs", data.total)
context.commit("update_no_save", 0)
if (prm.lastid === -1) {
context.commit("update_selected_staff", data.records[0])
var sta = data.records[0]
context.commit("update_selected_branch", { M_BranchID: sta.M_StaffM_BranchID, M_BranchName: sta.M_BranchName })
context.commit("update_staff_name", sta.M_StaffName)
context.commit("update_dob", sta.M_StaffDOBx)
context.commit("update_selected_sex", { M_SexID: sta.M_StaffM_SexID, M_SexName: sta.M_SexName })
context.commit("update_address", sta.M_StaffAddress)
//context.commit("update_cities",[{M_CityID:sta.M_StaffM_CityID,M_CityName:sta.M_CityName}])
//context.commit("update_city_address",{M_CityID:sta.M_StaffM_CityID,M_CityName:sta.M_CityName})
//context.commit("update_subareas",[{M_SubareaID:sta.M_StaffM_SubareaID,M_SubareaName:sta.M_SubareaName}])
//context.commit("update_subarea_address",{M_SubareaID:sta.M_StaffM_SubareaID,M_SubareaName:sta.M_SubareaName})
context.commit("update_phone", sta.M_StaffPhone)
context.commit("update_hp", sta.M_StaffHP)
context.commit("update_selected_religion", { M_ReligionID: sta.M_StaffM_ReligionID, M_ReligionName: sta.M_ReligionName })
context.commit("update_startdate", sta.M_StaffStartDate)
context.commit("update_enddate", sta.M_StaffEndDate)
context.commit("update_selected_position", { M_PositionID: sta.M_StaffM_PositionID, M_PositionName: sta.M_PositionName })
context.commit("update_nik", sta.M_StaffNIK)
context.commit("update_idnumber", sta.M_StaffIDNumber)
context.commit("update_timework", sta.M_StaffTimeWork)
context.commit("update_timeworksaturday", sta.M_StaffTimeWorkSaturday)
context.commit("update_blood", sta.M_StaffBlood)
context.commit("update_study", sta.M_StaffStudy)
context.commit("update_iscourier", sta.M_StaffIsCourier)
}
else {
context.commit("update_selected_staff", data.records[prm.lastid])
var sta = data.records[prm.lastid]
context.commit("update_selected_branch", { M_BranchID: sta.M_StaffM_BranchID, M_BranchName: sta.M_BranchName })
context.commit("update_staff_name", sta.M_StaffName)
context.commit("update_dob", sta.M_StaffDOBx)
context.commit("update_selected_sex", { M_SexID: sta.M_StaffM_SexID, m_sexname: sta.m_sexname })
context.commit("update_address", sta.M_StaffAddress)
context.commit("update_cities", [{ M_CityID: sta.M_StaffM_CityID, M_CityName: sta.M_CityName }])
context.commit("update_city_address", { M_CityID: sta.M_StaffM_CityID, M_CityName: sta.M_CityName })
context.commit("update_subareas", [{ M_SubareaID: sta.M_StaffM_SubareaID, M_SubareaName: sta.M_SubareaName }])
context.commit("update_subarea_address", { M_SubareaID: sta.M_StaffM_SubareaID, M_SubareaName: sta.M_SubareaName })
context.commit("update_phone", sta.M_StaffPhone)
context.commit("update_hp", sta.M_StaffHP)
context.commit("update_selected_religion", { M_ReligionID: sta.M_StaffM_ReligionID, M_ReligionName: sta.M_ReligionName })
context.commit("update_startdate", sta.M_StaffStartDate)
context.commit("update_enddate", sta.M_StaffEndDate)
context.commit("update_selected_position", { M_PositionID: sta.M_StaffM_PositionID, M_PositionName: sta.M_PositionName })
context.commit("update_nik", sta.M_StaffNIK)
context.commit("update_idnumber", sta.M_StaffIDNumber)
context.commit("update_timework", sta.M_StaffTimeWork)
context.commit("update_timeworksaturday", sta.M_StaffTimeWorkSaturday)
context.commit("update_blood", sta.M_StaffBlood)
context.commit("update_study", sta.M_StaffStudy)
context.commit("update_iscourier", sta.M_StaffIsCourier)
}
}
} catch (e) {
context.commit("update_search_staff", 3)
context.commit("update_search_error_message", e.message)
console.log(e)
}
},
async getsexreg(context) {
context.commit("update_get_data_status", 1)
try {
let resp = await api.getsexreg(one_token())
if (resp.status != "OK") {
context.commit("update_get_data_status", 3)
} else {
context.commit("update_get_data_status", 2)
let data = {
records: resp.data.records,
total: resp.data.total
}
context.commit("update_sexes", data.records.sexes)
context.commit("update_religions", data.records.religions)
context.commit("update_branchs", data.records.branchs)
context.commit("update_positions", data.records.positions)
}
} catch (e) {
context.commit("update_get_data_status", 3)
}
},
async save(context, prm) {
context.commit("update_save_status", 1)
try {
prm.token = one_token()
let resp = await api.save(prm)
if (resp.status != "OK") {
context.commit("update_save_status", 3)
} else {
context.commit("update_save_status", 2)
context.commit("update_last_id", prm.M_StaffID)
context.commit("update_dialog_success", true)
var msg = "Data karyawan " + prm.M_StaffName + " sudah terupdate dong ..."
context.commit("update_msg_success", msg)
}
} catch (e) {
context.commit("update_save_status", 3)
}
},
async newstaff(context, prm) {
context.commit("update_save_status", 1)
try {
prm.token = one_token()
let resp = await api.newstaff(prm)
if (resp.status != "OK") {
context.commit("update_save_status", 3)
} else {
context.commit("update_save_status", 2)
console.log(resp.data.id)
context.commit("update_last_id", resp.data.id)
context.commit("update_dialog_success", true)
var msg = "Data karyawan " + prm.M_StaffName + " sudah tersimpan dong ..."
context.commit("update_msg_success", msg)
}
} catch (e) {
context.commit("update_save_status", 3)
}
},
async delete(context, prm) {
context.commit("update_save_status", 1)
try {
prm.token = one_token()
let resp = await api.xdelete(prm)
if (resp.status != "OK") {
context.commit("update_save_status", 3)
} else {
context.commit("update_save_status", 2)
context.commit("update_last_id", 0)
context.commit("update_dialog_confirmation_delete", false)
context.commit("update_dialog_success", true)
var msg = "Data karyawan " + prm.M_StaffName + " sudah dihapus dong ..."
context.commit("update_msg_success", msg)
context.commit("update_selected_branch", {})
context.commit("update_staff_name", '')
context.commit("update_dob", '')
context.commit("update_selected_sex", {})
context.commit("update_address", '')
context.commit("update_city_address", {})
context.commit("update_subarea_address", {})
context.commit("update_phone", '')
context.commit("update_hp", '')
context.commit("update_selected_religion", {})
context.commit("update_startdate", '')
context.commit("update_enddate", '')
context.commit("update_selected_position", {})
context.commit("update_nik", '')
context.commit("update_idnumber", '')
context.commit("update_timework", '')
context.commit("update_timeworksaturday", '')
context.commit("update_blood", '')
context.commit("update_study", '')
context.commit("update_iscourier", 'N')
}
} catch (e) {
context.commit("update_save_status", 3)
}
},
async saveposition(context, prm) {
context.commit("update_save_status", 1)
try {
prm.token = one_token()
let resp = await api.saveposition(prm)
if (resp.status != "OK") {
context.commit("update_save_status", 3)
context.commit("update_save_error_message", resp.message)
} else {
context.commit("update_save_status", 2)
context.commit("update_save_error_message", resp.message)
context.commit("update_save_error_message", resp.message)
var data = {
records: resp.data.records,
total: resp.data.total
}
if (data.total !== -1) {
context.commit("update_errors", [])
context.commit("update_positions", resp.data.records.positions)
} else {
context.commit("update_errors", resp.data.errors)
}
}
} catch (e) {
context.commit("update_save_status", 3)
context.commit("update_save_error_message", e.message)
console.log(e)
}
},
async updateposition(context, prm) {
context.commit("update_save_status", 1)
try {
prm.token = one_token()
let resp = await api.updateposition(prm)
if (resp.status != "OK") {
context.commit("update_save_status", 3)
context.commit("update_save_error_message", resp.message)
} else {
context.commit("update_save_status", 2)
context.commit("update_save_error_message", resp.message)
context.commit("update_save_error_message", resp.message)
let data = {
records: resp.data.records,
total: resp.data.total
}
if (data.total !== -1) {
context.commit("update_positions", resp.data.records.positions)
}
}
} catch (e) {
context.commit("update_save_status", 3)
context.commit("update_save_error_message", e.message)
console.log(e)
}
},
async deleteposition(context, prm) {
context.commit("update_save_status", 1)
try {
prm.token = one_token()
let resp = await api.deleteposition(prm)
if (resp.status != "OK") {
context.commit("update_save_status", 3)
context.commit("update_save_error_message", resp.message)
} else {
context.commit("update_save_status", 2)
context.commit("update_save_error_message", resp.message)
context.commit("update_save_error_message", resp.message)
let data = {
records: resp.data.records,
total: resp.data.total
}
if (data.total !== -1) {
context.commit("update_positions", resp.data.records.positions)
}
}
} catch (e) {
context.commit("update_save_status", 3)
context.commit("update_save_error_message", e.message)
console.log(e)
}
},
async getaddress(context, prm) {
context.commit("update_save_status", 1)
try {
prm.token = one_token()
let resp = await api.getaddress(prm)
if (resp.status != "OK") {
context.commit("update_save_status", 3)
} else {
context.commit("update_save_status", 2)
let data = {
records: resp.data.records,
total: resp.data.total
}
context.commit("update_addresses", data.records)
}
} catch (e) {
context.commit("update_save_status", 3)
}
},
async searchcity(context, prm) {
context.commit("update_autocomplete_status", 1)
try {
let resp = await api.searchcity(one_token(), prm)
if (resp.status != "OK") {
context.commit("update_autocomplete_status", 3)
} else {
context.commit("update_autocomplete_status", 2)
let data = {
records: resp.data.records,
total: resp.data.total
}
context.commit("update_cities", resp.data.records)
}
} catch (e) {
context.commit("update_autocomplete_status", 3)
}
},
async getsubarea(context, prm) {
context.commit("update_get_data_status", 1)
try {
let resp = await api.getsubarea(one_token(), prm)
if (resp.status != "OK") {
context.commit("update_get_data_status", 3)
} else {
context.commit("update_get_data_status", 2)
let data = {
records: resp.data.records,
total: resp.data.total
}
context.commit("update_subareas", resp.data.records)
}
} catch (e) {
context.commit("update_get_data_status", 3)
}
},
async savenewaddress(context, prm) {
context.commit("update_save_status", 1)
try {
prm.token = one_token()
let resp = await api.savenewaddress(prm)
if (resp.status != "OK") {
context.commit("update_save_status", 3)
} else {
context.commit("update_save_status", 2)
context.commit("update_dialog_form_address", false)
context.commit("update_last_id", prm.M_StaffAddressM_StaffID)
context.commit("update_dialog_success", true)
var msg = "Penambahan data alamat karyawan " + prm.M_StaffName + " sudah berhasil dong ..."
context.commit("update_msg_success", msg)
}
} catch (e) {
context.commit("update_save_status", 3)
}
},
async saveeditaddress(context, prm) {
context.commit("update_save_status", 1)
try {
prm.token = one_token()
let resp = await api.saveeditaddress(prm)
if (resp.status != "OK") {
context.commit("update_save_status", 3)
} else {
context.commit("update_save_status", 2)
context.commit("update_dialog_form_address", false)
context.commit("update_last_id", prm.M_StaffAddressM_StaffID)
context.commit("update_dialog_success", true)
var msg = "Perubahan data alamat karyawan " + prm.M_StaffName + " sudah berhasil dong ..."
context.commit("update_msg_success", msg)
}
} catch (e) {
context.commit("update_save_status", 3)
}
},
async deleteaddress(context, prm) {
context.commit("update_save_status", 1)
try {
prm.token = one_token()
let resp = await api.deleteaddress(prm)
if (resp.status != "OK") {
context.commit("update_save_status", 3)
} else {
context.commit("update_save_status", 2)
context.commit("update_dialog_confirmation_delete_addr", false)
context.commit("update_last_id", prm.M_StaffAddressM_StaffID)
context.commit("update_dialog_success", true)
var msg = "Penghapusan data alamat " + prm.M_StaffAddressNote + " dari karyawan " + prm.M_StaffName + " sudah berhasil dong ..."
context.commit("update_msg_success", msg)
}
} catch (e) {
context.commit("update_save_status", 3)
}
},
async getdoctor(context) {
context.commit("update_get_data_status", 1)
try {
let prm = {
token: one_token(),
search: context.state.searchDoctor
}
let resp = await api.getdoctor(prm)
if (resp.status != "OK") {
context.commit("update_get_data_status", 3)
} else {
context.commit("update_get_data_status", 2)
let data = {
records: resp.data.records,
total: resp.data.total
}
context.commit("update_doctorList", resp.data.records)
}
} catch (e) {
context.commit("update_get_data_status", 3)
}
},
}
}