diff --git a/src/modules/04_registryNew/components/detail/Achievement/01_ProfessionalLicense.vue b/src/modules/04_registryNew/components/detail/Achievement/01_ProfessionalLicense.vue index 385369625..d3ee0f275 100644 --- a/src/modules/04_registryNew/components/detail/Achievement/01_ProfessionalLicense.vue +++ b/src/modules/04_registryNew/components/detail/Achievement/01_ProfessionalLicense.vue @@ -28,6 +28,8 @@ const route = useRoute(); const id = ref(route.params.id.toString()); const dialogStatus = ref("create"); const editId = ref(""); +const keyword = ref(""); +const historyKeyword = ref(""); const columns = ref([ { @@ -95,31 +97,15 @@ const profesLicenseData = reactive({ certificateNo: "", issueDate: new Date(), expireDate: new Date(), + profileId: id.value, }); const rows = ref([]); const historyRows = ref([]); -const formFilter = reactive({ - page: 1, - pageSize: 10, - keyword: "", -}); - -const historyFormFilter = reactive({ - page: 1, - pageSize: 10, - keyword: "", -}); - const pagination = ref({ - page: formFilter.page, - rowsPerPage: formFilter.pageSize, -}); - -const historyPagination = ref({ - page: historyFormFilter.page, - rowsPerPage: historyFormFilter.pageSize, + page: 1, + rowsPerPage: 2, }); const visibleColumns = ref([ @@ -138,10 +124,6 @@ const historyVisibleColumns = ref([ "expireDate", ]); -function validateForm() { - onSubmit(); -} - async function onSubmit() { dialogConfirm( $q, @@ -198,13 +180,7 @@ function editForm(row: any) { async function addData() { await http .post(config.API.profileNewCertificate, { - profileId: id.value, - expireDate: profesLicenseData.expireDate, - issueDate: profesLicenseData.issueDate, - certificateNo: profesLicenseData.certificateNo, - certificateType: profesLicenseData.certificateType, - issuer: profesLicenseData.issuer, - isActive: true, + ...profesLicenseData, }) .then(() => { fetchData(id.value); @@ -221,12 +197,8 @@ async function addData() { async function editData(idData: string) { await http .patch(config.API.profileNewCertificateByCertificateId(idData), { - expireDate: profesLicenseData.expireDate, - issueDate: profesLicenseData.issueDate, - certificateNo: profesLicenseData.certificateNo, - certificateType: profesLicenseData.certificateType, - issuer: profesLicenseData.issuer, - isActive: true, + ...profesLicenseData, + profileId: undefined, }) .then(() => { fetchData(id.value); @@ -240,18 +212,20 @@ async function editData(idData: string) { }); } -async function deleteData(idData: string) { - await http - .delete(config.API.profileNewCertificateByCertificateId(idData)) - .then(() => { - fetchData(id.value); - }) - .catch((err) => { - messageError($q, err); - }) - .finally(() => { - hideLoader(); - }); +function deleteData(idData: string) { + dialogRemove($q, () => + http + .delete(config.API.profileNewCertificateByCertificateId(idData)) + .then(() => { + fetchData(id.value); + }) + .catch((err) => { + messageError($q, err); + }) + .finally(() => { + hideLoader(); + }) + ); } async function fetchHistoryData(id: string) { @@ -293,13 +267,7 @@ onMounted(async () => { > - + @@ -362,7 +330,7 @@ onMounted(async () => { bordered :paging="true" dense - :filter="formFilter.keyword" + :filter="keyword" v-model:pagination="pagination" :rows-per-page-options="[20, 50, 100]" class="custom-header-table" @@ -422,9 +390,7 @@ onMounted(async () => { size="14px" icon="mdi-delete" clickable - @click.stop=" - dialogRemove($q, async () => await deleteData(props.row.id)) - " + @click.stop="deleteData(props.row.id)" v-close-popup > ลบข้อมูล @@ -484,7 +450,7 @@ onMounted(async () => { - + { /> - +
{ hide-bottom-space />
- - +
+
{
- - +
+
{
- +
{ - - - - - - - - - - - - - - - + + + + + + + - diff --git a/src/modules/04_registryNew/interface/request/ProfesLicense.ts b/src/modules/04_registryNew/interface/request/ProfesLicense.ts index 0753c11b4..5a005de57 100644 --- a/src/modules/04_registryNew/interface/request/ProfesLicense.ts +++ b/src/modules/04_registryNew/interface/request/ProfesLicense.ts @@ -4,6 +4,7 @@ interface RequestItemsObject { certificateNo: string; issueDate: Date; expireDate: Date; + profileId: string; } export type { RequestItemsObject };