diff --git a/public/js/api/factory/stv/documents.js b/public/js/api/factory/stv/documents.js new file mode 100644 index 000000000..1898023cd --- /dev/null +++ b/public/js/api/factory/stv/documents.js @@ -0,0 +1,76 @@ +/** + * Copyright (C) 2025 fhcomplete.org + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +export default { + getDocumentsUnaccepted(params) { + return { + method: 'get', + url: 'api/frontend/v1/stv/dokumente/getDocumentsUnaccepted/' + params.id + '/' + params.studiengang_kz + }; + }, + getDocumentsAccepted(params) { + return { + method: 'get', + url: 'api/frontend/v1/stv/dokumente/getDocumentsAccepted/' + params.id + '/' + params.studiengang_kz + }; + }, + deleteZuordnung(params){ + return { + method: 'post', + url: 'api/frontend/v1/stv/dokumente/deleteZuordnung/' + params.prestudent_id + '/' + params.dokument_kurzbz + }; + }, + createZuordnung(params){ + return { + method: 'post', + url: 'api/frontend/v1/stv/dokumente/createZuordnung/' + params.prestudent_id + '/' + params.dokument_kurzbz + }; + }, + loadAkte(akte_id){ + return { + method: 'get', + url: 'api/frontend/v1/stv/dokumente/loadAkte/' + akte_id + }; + }, + getDoktypen(){ + return { + method: 'get', + url: 'api/frontend/v1/stv/dokumente/getDoktypen/' + }; + }, + updateFile(akte_id, params){ + return { + method: 'post', + url: 'api/frontend/v1/stv/dokumente/updateAkte/' + akte_id, + params + }; + }, + deleteFile(akte_id){ + console.log("in deleteFile " + akte_id); + return { + method: 'post', + url: 'api/frontend/v1/stv/dokumente/deleteAkte/' + akte_id, + }; + }, + uploadFile(prestudent_id, params){ + return { + method: 'post', + url: 'api/frontend/v1/stv/dokumente/uploadDokument/' + prestudent_id, + params + }; + }, +} \ No newline at end of file diff --git a/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/List/Accepted.js b/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/List/Accepted.js index e22ad4cdb..7790e12f8 100644 --- a/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/List/Accepted.js +++ b/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/List/Accepted.js @@ -2,6 +2,8 @@ import {CoreFilterCmpt} from "../../../../../filter/Filter.js"; import ModalEdit from "../Modal/Edit.js"; import ModalUpload from "../Modal/Upload.js"; +import ApiStvDocuments from "../../../../../../api/factory/stv/documents.js"; + export default { components: { name: "AcceptedDocuments", @@ -17,13 +19,11 @@ export default { return { tabulatorOptions: { ajaxURL: 'dummy', - ajaxRequestFunc: this.$fhcApi.factory.stv.documents.getDocumentsAccepted, - ajaxParams: () => { - return { + ajaxRequestFunc: () => this.$api.call( + ApiStvDocuments.getDocumentsAccepted({ id: this.prestudent_id, - studiengang_kz: this.studiengang_kz - }; - }, + studiengang_kz: this.studiengang_kz}) + ), ajaxResponse: (url, params, response) => { return response.data; }, @@ -240,7 +240,8 @@ export default { .catch(this.$fhcAlert.handleSystemError); }, deleteFile(akte_id){ - return this.$fhcApi.factory.stv.documents.deleteFile(akte_id) + return this.$api + .call(ApiStvDocuments.deleteFile(akte_id)) .then(response => { this.$fhcAlert.alertSuccess(this.$p.t('ui', 'successDelete')); }) @@ -252,10 +253,12 @@ export default { deleteZuordnung(selected) { Promise.allSettled( selected.map(e => - this.$fhcApi.factory.stv.documents.deleteZuordnung({ - prestudent_id: this.prestudent_id, - dokument_kurzbz: e.dokument_kurzbz - }).then(() => ({ + this.$api + .call(ApiStvDocuments.deleteZuordnung({ + prestudent_id: this.prestudent_id, + dokument_kurzbz: e.dokument_kurzbz + })) + .then(() => ({ success: true, dokument_bz: e.bezeichnung })) diff --git a/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/List/Unaccepted.js b/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/List/Unaccepted.js index 5b2a2d080..6cc25cb6f 100644 --- a/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/List/Unaccepted.js +++ b/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/List/Unaccepted.js @@ -2,6 +2,8 @@ import {CoreFilterCmpt} from "../../../../../filter/Filter.js"; import ModalEdit from "../Modal/Edit.js"; import ModalUpload from "../Modal/Upload.js"; +import ApiStvDocuments from "../../../../../../api/factory/stv/documents.js"; + export default { name: "UnacceptedDocuments", components: { @@ -17,13 +19,11 @@ export default { return { tabulatorOptions: { ajaxURL: 'dummy', - ajaxRequestFunc: this.$fhcApi.factory.stv.documents.getDocumentsUnaccepted, - ajaxParams: () => { - return { + ajaxRequestFunc: () => this.$api.call( + ApiStvDocuments.getDocumentsUnaccepted({ id: this.prestudent_id, - studiengang_kz: this.studiengang_kz - }; - }, + studiengang_kz: this.studiengang_kz}) + ), ajaxResponse: (url, params, response) => response.data, columns: [ {title: "Dokument", field: "bezeichnung"}, @@ -252,10 +252,12 @@ export default { Promise .allSettled( selected.map(e => - this.$fhcApi.factory.stv.documents.createZuordnung({ + this.$api + .call(ApiStvDocuments.createZuordnung({ prestudent_id: this.prestudent_id, - dokument_kurzbz: e.dokument_kurzbz, - }).then(() => ({ + dokument_kurzbz: e.dokument_kurzbz + })) + .then(() => ({ success: true, dokument_bz: e.bezeichnung })) diff --git a/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/Modal/Edit.js b/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/Modal/Edit.js index 95a12a669..29c98020e 100644 --- a/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/Modal/Edit.js +++ b/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/Modal/Edit.js @@ -2,6 +2,8 @@ import BsModal from "../../../../../Bootstrap/Modal.js"; import FormForm from "../../../../../Form/Form.js"; import FormInput from "../../../../../Form/Input.js"; +import ApiStvDocuments from "../../../../../../api/factory/stv/documents.js"; + export default { name: "modalEditDocuments", components: { @@ -17,10 +19,9 @@ export default { }, methods: { updateFile(akte_id){ - console.log("in update" + akte_id); - - this.$fhcApi.factory.stv.documents.updateFile(akte_id, this.formData). - then(response => { + this.$api + .call(ApiStvDocuments.updateFile(akte_id, this.formData)) + .then(response => { this.$fhcAlert.alertSuccess(this.$p.t('ui', 'successSave')); this.$refs.modalEditDocument.hide(); this.$emit('reload'); @@ -32,7 +33,8 @@ export default { this.$refs.modalEditDocument.show(); }, loadFormData(akte_id){ - return this.$fhcApi.factory.stv.documents.loadAkte(akte_id) + return this.$api + .call(ApiStvDocuments.loadAkte(akte_id)) .then(result => { this.formData = result.data; return result; @@ -41,7 +43,8 @@ export default { } }, created(){ - this.$fhcApi.factory.stv.documents.getDoktypen() + this.$api + .call(ApiStvDocuments.getDoktypen()) .then(result => { this.listDokTypen = result.data; }) diff --git a/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/Modal/Upload.js b/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/Modal/Upload.js index dec8da503..f6280a9cf 100644 --- a/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/Modal/Upload.js +++ b/public/js/components/Stv/Studentenverwaltung/Details/Dokumente/Modal/Upload.js @@ -3,6 +3,8 @@ import FormForm from "../../../../../Form/Form.js"; import FormInput from "../../../../../Form/Input.js"; import FormUploadDms from "../../../../../Form/Upload/Dms.js"; +import ApiStvDocuments from "../../../../../../api/factory/stv/documents.js"; + export default { name: "modalUploadDocuments", components: { @@ -23,15 +25,14 @@ export default { }, methods:{ open(prestudent_id, dokument_kurzbz){ - console.log("ps: " + prestudent_id + 'dok: ' + dokument_kurzbz); this.formData.dokument_kurzbz = dokument_kurzbz; this.formData.prestudent_id = prestudent_id; this.$refs.modalUploadFile.show(); }, uploadFile(){ - console.log(this.formData.anhang[0]); - - return this.$fhcApi.factory.stv.documents.uploadFile(this.formData.prestudent_id, this.formData) + // console.log(this.formData.anhang[0]); + return this.$api + .call(ApiStvDocuments.uploadFile(this.formData.prestudent_id, this.formData)) .then(result => { this.$fhcAlert.alertSuccess(this.$p.t('ui', 'successUpload')); this.resetModal(); @@ -48,7 +49,8 @@ export default { } }, created(){ - this.$fhcApi.factory.stv.documents.getDoktypen() + this.$api + .call(ApiStvDocuments.getDoktypen()) .then(result => { this.listDokTypen = result.data; })