47 lines
1.0 KiB
TypeScript
47 lines
1.0 KiB
TypeScript
// Types pour l'administration et les statistiques
|
|
|
|
export interface TeamMember {
|
|
uuid: string;
|
|
firstName: string;
|
|
lastName: string;
|
|
skills: Array<{
|
|
skillId: string;
|
|
skillName: string;
|
|
category: string;
|
|
importance: "incontournable" | "majeure" | "standard";
|
|
level: number;
|
|
canMentor: boolean;
|
|
wantsToLearn: boolean;
|
|
}>;
|
|
joinDate: string;
|
|
}
|
|
|
|
export interface TeamStats {
|
|
teamId: string;
|
|
teamName: string;
|
|
direction: string;
|
|
totalMembers: number;
|
|
averageSkillLevel: number;
|
|
topSkills: Array<{
|
|
skillName: string;
|
|
averageLevel: number;
|
|
icon?: string;
|
|
importance: "incontournable" | "majeure" | "standard";
|
|
coverage: number;
|
|
}>;
|
|
skillCoverage: number; // Percentage of skills evaluated
|
|
criticalSkillsCoverage: {
|
|
incontournable: number;
|
|
majeure: number;
|
|
};
|
|
members: TeamMember[];
|
|
}
|
|
|
|
export interface DirectionStats {
|
|
direction: string;
|
|
teams: TeamStats[];
|
|
totalMembers: number;
|
|
averageSkillLevel: number;
|
|
topCategories: Array<{ category: string; averageLevel: number }>;
|
|
}
|