You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
1.3 KiB
36 lines
1.3 KiB
import { Member } from "../../core/Member";
|
|
import { Owner } from "../../core/Owner";
|
|
import { Team } from "../../core/Team";
|
|
import { User } from "../../core/User";
|
|
import { WaitingMember } from "../../core/WaitingMember";
|
|
import { Fetch_Users } from "../Constants";
|
|
import { DtoUserEcurie } from "../dto/dtoUserEcurie";
|
|
|
|
export const setUsersList = (usersList: User[]) => {
|
|
return {
|
|
type: Fetch_Users,
|
|
payload: usersList,
|
|
};
|
|
}
|
|
|
|
export const getUsersList = (team: Team) => {
|
|
return async dispatch => {
|
|
try {
|
|
const usersPromise = await fetch('https://codefirst.iut.uca.fr/containers/enzojolys-r-dash_container/Pilotes');
|
|
const usersListJson = await usersPromise.json();
|
|
const dto: DtoUserEcurie = usersListJson.map(elt => new DtoUserEcurie(elt["owner"], elt["members"], elt["waitingMember"]));
|
|
const usersList: User[] = []
|
|
usersList.push(dto.getOwner())
|
|
dto.getMembers().forEach(element => {
|
|
usersList.push(element);
|
|
});
|
|
dto.getWaitingMember().forEach(element => {
|
|
usersList.push(element)
|
|
});
|
|
dispatch(setUsersList(usersList));
|
|
} catch (error) {
|
|
console.log('Error---------', error);
|
|
//dispatch(fetchDataRejected(error))
|
|
}
|
|
}
|
|
} |