diff --git a/src/components/CreateEditComponents/EditCourse.vue b/src/components/CreateEditComponents/EditCourse.vue index 31fca714506995da26369e589033e07cbe79f9a7..4e1de2b1d621b6c3e1b832fb668fb9fed03a70ea 100644 --- a/src/components/CreateEditComponents/EditCourse.vue +++ b/src/components/CreateEditComponents/EditCourse.vue @@ -132,7 +132,7 @@ export default { return { id: JSON.parse(localStorage.getItem('checkedBoxID')), message: "", - course: new Course('', '', '', '', '', '', '', '', '', '', '', '', ''), + course: new Course('','', '', '', '', '', '', '', '', '', '', '', '', ''), } }, @@ -144,34 +144,34 @@ export default { methods: { getData(){ - this.$store.dispatch('course/getByID', this.id).then( - (data) => { - this.course.coursenumber = data.courseNumber; - this.course.courseoffer = data.courseOffer; - this.course.coursename = data.name; - this.course.eventtype = data.eventType; - this.course.coursedate = data.courseDate; - this.course.topic = data.topic; - this.course.courselocation = data.location; - this.course.accompanyingteacher = data.accompanyingTeacher; - this.course.supervisingstudents = data.supervisingStudents; - this.course.presentstudents = data.presentStudents; - this.course.registeredstudents = data.registeredStudents; - this.course.instructor = data.instructor; - this.course.notefield = data.noteField; - - }, - error => { - this.message = (error.response && error.response.data) || error.message || error.toString(); - this.successful = false; - } - ); + this.$store.dispatch('course/getByID', this.id).then( + (data) => { + this.course.coursenumber = data.courseNumber; + this.course.courseoffer = data.courseOffer; + this.course.coursename = data.name; + this.course.eventtype = data.eventType; + this.course.coursedate = data.courseDate; + this.course.topic = data.topic; + this.course.courselocation = data.location; + this.course.accompanyingteacher = data.accompanyingTeacher; + this.course.supervisingstudents = data.supervisingStudents; + this.course.presentstudents = data.presentStudents; + this.course.registeredstudents = data.registeredStudents; + this.course.instructor = data.instructor; + this.course.notefield = data.noteField; + + }, + error => { + this.message = (error.response && error.response.data) || error.message || error.toString(); + this.successful = false; + } + ); }, validateBeforeSubmit() { this.$validator.validate().then(isValid => { if (isValid) { - console.log("isvalid") + this.course.id = this.id; this.$store.dispatch('course/update', this.course).then( data => { this.message = data.message; diff --git a/src/models/course.js b/src/models/course.js index 5d1080c836511d2f90c2dc5e1e91a47ed544d890..be185bd911f36e202c9752cc3e797fe2663777e4 100644 --- a/src/models/course.js +++ b/src/models/course.js @@ -1,6 +1,7 @@ export default class Course { - constructor(coursenumber, courseoffer, coursename, eventtype, coursedate, topic, courselocation, accompanyingteacher, supervisingstudents, presentstudents, registeredstudents, instructor, notefield) { + constructor(id, coursenumber, courseoffer, coursename, eventtype, coursedate, topic, courselocation, accompanyingteacher, supervisingstudents, presentstudents, registeredstudents, instructor, notefield, status) { + this.id = id, this.coursenumber = coursenumber; this.courseoffer = courseoffer; this.coursename = coursename; @@ -14,5 +15,6 @@ export default class Course { this.registeredstudents = registeredstudents; this.instructor = instructor; this.notefield = notefield; + this.status = status; } } diff --git a/src/services/course.service.js b/src/services/course.service.js index 6119c2b5509d70f7d57239388c3bc9723f782920..fe8f030b08502383e2ec5a8c3f29adb601637acc 100644 --- a/src/services/course.service.js +++ b/src/services/course.service.js @@ -29,6 +29,41 @@ class CourseService { }); } + update(course) { + return axios + .post(API_URL + 'updateCourse', { + id: course.id, + angebotsnummer: course.coursenumber, + angebot: course.courseoffer, + kursname: course.coursename, + veranstaltungsart: course.eventtype, + kursdatum: course.coursedate, + thema: course.topic, + kursort: course.courselocation, + begleitendeLehrkraft: course.accompanyingteacher, + betreuendeStudenten: course.supervisingstudents, + anzahlderAnwesenden:course.presentstudents, + anzahlderAngemeldeten:course.registeredstudents, + kursleiter: course.instructor, + notiz: course.notefield, + } + ,{headers: authHeader() }) + .then(response => { + return response.data; + }); + } + + delete() { + return axios + .post(API_URL + 'deleteCourse', { + id:8 + } + ,{headers: authHeader() }) + .then(response => { + return response.data; + }); + } + getAll() { return axios .get(API_URL + 'getCourses', { diff --git a/src/store/course.module.js b/src/store/course.module.js index 6c54b3fa6c8a45288a7c6c4fe9619ca85423862a..13a1f8ce9714365b2442d378c15ce396ffe965b5 100644 --- a/src/store/course.module.js +++ b/src/store/course.module.js @@ -24,11 +24,24 @@ export const course = { update({ commit }, course) { return CourseService.update(course).then( response => { - commit('updateSuccess', response); + commit('insertSuccess', response); return Promise.resolve(response); }, error => { - commit('updateFailure'); + commit('insertFailure'); + return Promise.reject(error); + } + ); + }, + + delete({ commit }) { + return CourseService.update().then( + response => { + commit('insertSuccess', response); + return Promise.resolve(response); + }, + error => { + commit('insertFailure'); return Promise.reject(error); } );