71 lines
1.9 KiB
JavaScript
71 lines
1.9 KiB
JavaScript
import MeetingService from '../services/meetingService';
|
|
|
|
const state = {
|
|
meetings: [],
|
|
currentMeeting: null
|
|
};
|
|
|
|
const mutations = {
|
|
setMeetings(state, meetings) {
|
|
state.meetings = meetings;
|
|
},
|
|
setCurrentMeeting(state, meeting) {
|
|
state.currentMeeting = meeting;
|
|
}
|
|
};
|
|
|
|
const actions = {
|
|
async fetchMeetings({ commit }) {
|
|
try {
|
|
const response = await MeetingService.getAllMeetings();
|
|
commit('setMeetings', response.data);
|
|
} catch (error) {
|
|
console.error('Failed to fetch meetings:', error);
|
|
}
|
|
},
|
|
async fetchMeetingById({ commit }, id) {
|
|
try {
|
|
const response = await MeetingService.getMeetingById(id);
|
|
commit('setCurrentMeeting', response.data);
|
|
} catch (error) {
|
|
console.error('Failed to fetch meeting:', error);
|
|
}
|
|
},
|
|
async createMeeting({ dispatch }, meeting) {
|
|
try {
|
|
await MeetingService.createMeeting(meeting);
|
|
dispatch('fetchMeetings');
|
|
} catch (error) {
|
|
console.error('Failed to create meeting:', error);
|
|
}
|
|
},
|
|
async updateMeeting({ dispatch }, meeting) {
|
|
try {
|
|
await MeetingService.updateMeeting(meeting.id, meeting);
|
|
dispatch('fetchMeetings');
|
|
} catch (error) {
|
|
console.error('Failed to update meeting:', error);
|
|
}
|
|
},
|
|
async deleteMeeting({ dispatch }, id) {
|
|
try {
|
|
await MeetingService.deleteMeeting(id);
|
|
dispatch('fetchMeetings');
|
|
} catch (error) {
|
|
console.error('Failed to delete meeting:', error);
|
|
}
|
|
}
|
|
};
|
|
|
|
const getters = {
|
|
allMeetings: state => state.meetings,
|
|
currentMeeting: state => state.currentMeeting
|
|
};
|
|
|
|
export default {
|
|
namespaced: true,
|
|
state,
|
|
mutations,
|
|
actions,
|
|
getters
|
|
}; |