upd: announcement

Deskripsi:
- load all announcement
- pencarian announcement
- tambah announcement
- get detail one announcement

No Issues
This commit is contained in:
amel
2025-05-07 17:26:49 +08:00
parent dee684fb88
commit 6cae53cbc7
8 changed files with 431 additions and 153 deletions

14
lib/announcementUpdate.ts Normal file
View File

@@ -0,0 +1,14 @@
import { createSlice } from '@reduxjs/toolkit';
const announcementUpdate = createSlice({
name: 'announcementUpdate',
initialState: false,
reducers: {
setUpdateAnnouncement: (state, action) => {
return action.payload;
},
},
});
export const { setUpdateAnnouncement } = announcementUpdate.actions;
export default announcementUpdate.reducer;

View File

@@ -203,3 +203,22 @@ export const apiAddMemberDiscussionGeneral = async ({ data, id }: { data: { user
return response.data;
};
export const apiGetAnnouncement = async ({ user, search }: { user: string, search: string }) => {
const response = await api.get(`mobile/announcement?user=${user}&search=${search}`);
return response.data;
};
export const apiGetDivisionGroup = async ({ user }: { user: string }) => {
const response = await api.get(`mobile/group/get-division?user=${user}`);
return response.data;
};
export const apiCreateAnnouncement = async ({ data }: { data: { title: string, desc: string, user: string, groups: any[] } }) => {
const response = await api.post(`/mobile/announcement/`, data)
return response.data;
};
export const apiGetAnnouncementOne = async ({ user, id }: { user: string, id: string }) => {
const response = await api.get(`mobile/announcement/${id}?user=${user}`);
return response.data;
};

View File

@@ -1,4 +1,5 @@
import { configureStore } from '@reduxjs/toolkit';
import announcementUpdate from './announcementUpdate';
import bannerReducer from './bannerSlice';
import discussionGeneralDetailUpdate from './discussionGeneralDetail';
import entitiesReducer from './entitiesSlice';
@@ -19,7 +20,8 @@ const store = configureStore({
memberUpdate: memberUpdate,
filterGroup: filterSlice,
discussionGeneralDetailUpdate: discussionGeneralDetailUpdate,
memberChoose: memberChoose
memberChoose: memberChoose,
announcementUpdate: announcementUpdate
}
});