284 lines
9.3 KiB
JavaScript
284 lines
9.3 KiB
JavaScript
// 1 => LOADING
|
|
// 2 => DONE
|
|
// 3 => ERROR
|
|
import * as api from "../api/doctor.js"
|
|
import * as area from "../api/area.js"
|
|
import * as other from "../api/other.js"
|
|
|
|
export default {
|
|
namespaced: true,
|
|
state: {
|
|
search : '',
|
|
search_status: 0,
|
|
search_error_message: "",
|
|
|
|
sexs: [],
|
|
selected_sex: null,
|
|
param_name: '',
|
|
param_prefix1: '',
|
|
param_prefix2: '',
|
|
param_sufix1: '',
|
|
param_sufix2: '',
|
|
param_sufix3: '',
|
|
param_hp: '',
|
|
param_address: '',
|
|
|
|
provinces: [],
|
|
selected_province: null,
|
|
cities: [],
|
|
selected_city: null,
|
|
districts: [],
|
|
selected_district: null,
|
|
villages: [],
|
|
selected_village: null,
|
|
dialog_new: false,
|
|
|
|
adhoc: false
|
|
},
|
|
|
|
mutations: {
|
|
update_search(state,val) {
|
|
state.search=val
|
|
},
|
|
|
|
update_search_error_message(state,status) {
|
|
state.search_error_message = status
|
|
},
|
|
|
|
update_search_status(state,status) {
|
|
state.search_status = status
|
|
},
|
|
|
|
update_dialog_new(state, d) {
|
|
state.dialog_new = d
|
|
},
|
|
|
|
update_sexs(state, d) {
|
|
state.sexs = d.records
|
|
},
|
|
|
|
update_selected_sex(state, d) {
|
|
state.selected_sex = d
|
|
},
|
|
|
|
update_provinces(state, d) {
|
|
state.provinces = d.records
|
|
state.cities = []
|
|
state.districts = []
|
|
state.villages = []
|
|
state.selected_city = null
|
|
state.selected_district = null
|
|
state.selected_village = null
|
|
|
|
for (let i in d.records)
|
|
if (d.records[i].is_default == "Y")
|
|
state.selected_province = d.records[i]
|
|
},
|
|
|
|
update_selected_province(state, d) {
|
|
state.selected_province = d
|
|
},
|
|
|
|
update_districts(state, d) {
|
|
state.districts = d.records
|
|
state.villages = []
|
|
state.selected_village = null
|
|
|
|
for (let i in d.records)
|
|
if (d.records[i].is_default == "Y")
|
|
state.selected_district = d.records[i]
|
|
},
|
|
|
|
update_selected_district(state, d) {
|
|
state.selected_district = d
|
|
},
|
|
|
|
update_cities(state, d) {
|
|
state.cities = d.records
|
|
state.districts = []
|
|
state.villages = []
|
|
state.selected_district = null
|
|
state.selected_village = null
|
|
|
|
for (let i in d.records)
|
|
if (d.records[i].is_default == "Y")
|
|
state.selected_city = d.records[i]
|
|
},
|
|
|
|
update_selected_city(state, d) {
|
|
state.selected_city = d
|
|
},
|
|
|
|
update_villages(state, d) {
|
|
state.villages = d.records
|
|
|
|
for (let i in d.records)
|
|
if (d.records[i].is_default == "Y")
|
|
state.selected_village = d.records[i]
|
|
},
|
|
|
|
update_selected_village(state, d) {
|
|
state.selected_village = d
|
|
},
|
|
|
|
update_param(state, d) {
|
|
state['param_'+d.param] = d.val
|
|
},
|
|
|
|
update_adhoc(state, d) {
|
|
state.adhoc = d
|
|
}
|
|
},
|
|
actions: {
|
|
async save(context) {
|
|
context.commit('update_search_status', 1)
|
|
try {
|
|
let d = {
|
|
name: context.state.param_name,
|
|
prefix1: context.state.param_prefix1,
|
|
prefix2: context.state.param_prefix2,
|
|
sufix1: context.state.param_sufix1,
|
|
sufix2: context.state.param_sufix2,
|
|
sufix3: context.state.param_sufix3,
|
|
sex: context.state.selected_sex.M_SexID,
|
|
hp: context.state.param_hp,
|
|
address: context.state.param_address,
|
|
village: context.state.selected_village.M_KelurahanID
|
|
}
|
|
|
|
let resp = await api.save(one_token(), d)
|
|
if (resp.status != 'OK') {
|
|
context.commit('update_search_status', 3)
|
|
context.commit('update_search_error_message', resp.message)
|
|
} else {
|
|
context.commit('update_search_status', 2)
|
|
context.commit('update_search_error_message', '')
|
|
let data = {
|
|
records: resp.data.records,
|
|
total: resp.data.total
|
|
}
|
|
|
|
context.commit('update_adhoc', true)
|
|
context.commit('doctor/update_doctors', data, {root:true})
|
|
context.commit('doctor/update_search', data.records[0].M_DoctorRealName, {root:true})
|
|
context.commit('doctor/update_selected_doctor', data.records[0], {root:true})
|
|
context.commit('delivery/update_params', {d_id:data.records[0].M_DoctorID}, {root:true})
|
|
context.dispatch('delivery/search', null, {root:true})
|
|
|
|
context.commit('update_dialog_new', false)
|
|
context.commit('update_dialog_loading', false, {root:true})
|
|
|
|
|
|
}
|
|
} catch(e) {
|
|
console.log(e)
|
|
}
|
|
},
|
|
|
|
async search_sex(context) {
|
|
context.commit('update_search_status', 1)
|
|
try {
|
|
let resp = await other.search_sex()
|
|
if (resp.status != 'OK') {
|
|
context.commit('update_search_status', 3)
|
|
context.commit('update_search_error_message', resp.message)
|
|
} else {
|
|
context.commit('update_search_status', 2)
|
|
context.commit('update_search_error_message', '')
|
|
let data = {
|
|
records: resp.data.records
|
|
}
|
|
|
|
context.commit('update_sexs', data)
|
|
}
|
|
} catch(e) {
|
|
|
|
}
|
|
},
|
|
|
|
async search_province(context) {
|
|
context.commit('update_search_status', 1)
|
|
try {
|
|
let resp = await area.search_province()
|
|
if (resp.status != 'OK') {
|
|
context.commit('update_search_status', 3)
|
|
context.commit('update_search_error_message', resp.message)
|
|
} else {
|
|
context.commit('update_search_status', 2)
|
|
context.commit('update_search_error_message', '')
|
|
let data = {
|
|
records: resp.data.records
|
|
}
|
|
|
|
context.commit('update_provinces', data)
|
|
}
|
|
} catch(e) {
|
|
|
|
}
|
|
},
|
|
|
|
async search_city(context) {
|
|
context.commit('update_search_status', 1)
|
|
try {
|
|
let resp = await area.search_city(context.state.selected_province.M_ProvinceID)
|
|
if (resp.status != 'OK') {
|
|
context.commit('update_search_status', 3)
|
|
context.commit('update_search_error_message', resp.message)
|
|
} else {
|
|
context.commit('update_search_status', 2)
|
|
context.commit('update_search_error_message', '')
|
|
let data = {
|
|
records: resp.data.records
|
|
}
|
|
|
|
context.commit('update_cities', data)
|
|
}
|
|
} catch(e) {
|
|
|
|
}
|
|
},
|
|
|
|
async search_district(context) {
|
|
context.commit('update_search_status', 1)
|
|
try {
|
|
let resp = await area.search_district(context.state.selected_city.M_CityID)
|
|
if (resp.status != 'OK') {
|
|
context.commit('update_search_status', 3)
|
|
context.commit('update_search_error_message', resp.message)
|
|
} else {
|
|
context.commit('update_search_status', 2)
|
|
context.commit('update_search_error_message', '')
|
|
let data = {
|
|
records: resp.data.records
|
|
}
|
|
|
|
context.commit('update_districts', data)
|
|
}
|
|
} catch(e) {
|
|
|
|
}
|
|
},
|
|
|
|
async search_village(context) {
|
|
context.commit('update_search_status', 1)
|
|
try {
|
|
let resp = await area.search_kelurahan(context.state.selected_district.M_DistrictID)
|
|
if (resp.status != 'OK') {
|
|
context.commit('update_search_status', 3)
|
|
context.commit('update_search_error_message', resp.message)
|
|
} else {
|
|
context.commit('update_search_status', 2)
|
|
context.commit('update_search_error_message', '')
|
|
let data = {
|
|
records: resp.data.records
|
|
}
|
|
|
|
context.commit('update_villages', data)
|
|
}
|
|
} catch(e) {
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|