Refactoring FhcApi_Factory

This commit is contained in:
ma0068
2025-04-24 07:54:06 +02:00
parent 854223a2d7
commit eaaf5de9c0
5 changed files with 117 additions and 31 deletions
+76
View File
@@ -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 <https://www.gnu.org/licenses/>.
*/
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
};
},
}
@@ -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
}))
@@ -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
}))
@@ -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;
})
@@ -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;
})