diff --git a/src/pages/02_personnel-management/MainPage.vue b/src/pages/02_personnel-management/MainPage.vue index 4933db49..5b380bde 100644 --- a/src/pages/02_personnel-management/MainPage.vue +++ b/src/pages/02_personnel-management/MainPage.vue @@ -32,10 +32,12 @@ import InfoForm from 'components/02_personnel-management/InfoForm.vue'; import NoData from 'components/NoData.vue'; import ProfileUpload from 'components/ProfileUpload.vue'; import PaginationComponent from 'src/components/PaginationComponent.vue'; +import useOptionStore from 'src/stores/options'; const { locale, t } = useI18n(); const $q = useQuasar(); +const optionStore = useOptionStore(); const utilsStore = useUtilsStore(); const flowStore = useFlowStore(); const userStore = useUserStore(); @@ -257,8 +259,8 @@ async function openDialog( } if (id && userData.value) { - assignFormData(id); isEdit.value = true; + await assignFormData(id); if (formData.value.userType === 'AGENCY') { const result = await userStore.fetchAttachment(id); @@ -330,6 +332,7 @@ function onClose() { userCode.value = ''; urlProfile.value = undefined; profileFile.value = undefined; + infoDrawerEdit.value = false; agencyFile.value = []; modal.value = false; isEdit.value = false; @@ -550,6 +553,13 @@ onMounted(async () => { userStore.userOption.roleOpts.length === 0 ? await userStore.fetchRoleOption() : ''; + if (optionStore.globalOption) { + userStore.userOption.genderOpts = optionStore.globalOption.gender; + userStore.userOption.responsibleAreaOpts = optionStore.globalOption.area; + userStore.userOption.nationalityOpts = optionStore.globalOption.nationality; + userStore.userOption.trainingPlaceOpts = optionStore.globalOption.training; + } + typeStats.value = await userStore.typeStats(); // const firstTypeIncludeUser = Object.entries(typeStats.value || {}).find( diff --git a/src/stores/user/index.ts b/src/stores/user/index.ts index 1b4fca21..ea010239 100644 --- a/src/stores/user/index.ts +++ b/src/stores/user/index.ts @@ -14,7 +14,6 @@ import { import axios from 'axios'; import useBranchStore from '../branch'; import { Branch } from '../branch/types'; -import { useI18n } from 'vue-i18n'; import useFlowStore from '../flow'; const branchStore = useBranchStore(); @@ -31,41 +30,10 @@ const useUserStore = defineStore('api-user', () => { { label: 'DELEGATE', value: 'DELEGATE' }, { label: 'AGENCY', value: 'AGENCY' }, ], - genderOpts: [ - { label: 'ชาย', value: 'male' }, - { label: 'หญิง', value: 'female' }, - ], - responsibleAreaOpts: [ - { label: 'เขตพื้นที่ 1 บางรัก ปทุมวัน ยานนาวสาทร และบางคอแหลม' }, - { - label: 'เขตพื้นที่ 2 จอมทอง ทุ่งครุ บางขุนเทียน บางบอน และราษฎร์บูรณะ', - }, - { label: 'เขตพื้นที่ 3 คลองเตย บางนา ประเวศ พระโขนง วัฒนา และสวนหลวง' }, - { label: 'เขตพื้นที่ 4 คันนายาว บางกะปิ ลาดพร้าว บึงกุ่ม และวังทางหลาง' }, - { - label: - 'เขตพื้นที่ 5 คลองสามวา มีนบุรี ลาดกระบัง สะพานสูง หนองจอก และสายไหม', - }, - { label: 'เขตพื้นที่ 6 คลองสาน ธนบุรี บางกอกน้อย บางกอกใหญ่ และบางพลัด' }, - { label: 'เขตพื้นที่ 7 ตลิ่งชัน ทวีวัฒนา บางแค ภาษีเจริญ และหนองแขม' }, - { label: 'เขตพื้นที่ 8 ดุสิต พระนครป้อมปราบศัตรูพ่าย และสัมพันธวงศ์' }, - { label: 'เขตพื้นที่ 9 จตุจักร ดอนเมือง บางชื่อ บางเขน และหลักส' }, - { label: 'เขตพื้นที่ 10 ดินแดง พญาไท ราชเทวี และห้วยขวาง' }, - ], - nationalityOpts: [ - { label: 'ไทย', value: 'th' }, - { label: 'เมียนมา', value: 'mm' }, - { label: 'ลาว', value: 'lo' }, - { label: 'กัมพูชา', value: 'kh' }, - { label: 'เวียดนาม', value: 'vn' }, - ], - trainingPlaceOpts: [ - { label: 'สถานที่อบรมแรงงานเมียนมา-แม่สอด จ.ตาก' }, - { label: 'สถานที่อบรมแรงงานเมียนมา- เกาะสอง จ.ระนอง' }, - { label: 'สถานที่อบรมแรงงานลาว-หนองคาย จ.หนองคาย' }, - { label: 'สถานที่อบรมแรงงานกัมพูชา- อรัญประเทศ จ.สระแก้ว' }, - { label: 'สถานที่อบรมแรงงานกัมพูชา-บ้านแหลม จ.จันทบุร' }, - ], + genderOpts: [], + responsibleAreaOpts: [], + nationalityOpts: [], + trainingPlaceOpts: [], }); const data = ref>();