ad26a53f21
fix: update project card to reflect actual tasks done from project data feat: enhance task form components to accept project ID for submissions refactor: clean up certificate detail page by removing unused elements chore: streamline certificate generation page by removing unnecessary navigation refactor: update certificate list page to use dynamic project data feat: improve interns management page with API integration and better state handling feat: add modal for assigning interns to projects with project selection feat: create a new component for displaying project cards in certificate list fix: correct import paths in create project dialog component refactor: enhance project hooks to include task filtering and refetch capabilities fix: update mock certificate data to reflect correct status feat: extend certificate types to include new fields for better tracking feat: add task_done field to project types for improved task management
48 lines
875 B
TypeScript
48 lines
875 B
TypeScript
// types/certificate.types.ts
|
|
|
|
export interface CertificateUser {
|
|
id: number;
|
|
full_name: string;
|
|
email: string;
|
|
}
|
|
|
|
export interface CertificateProject {
|
|
id: number;
|
|
project_name: string;
|
|
description: string;
|
|
}
|
|
|
|
export interface Certificate {
|
|
id: number;
|
|
id_project: number;
|
|
id_user: number;
|
|
certificate_no: string;
|
|
issued_at: string;
|
|
uuid: string;
|
|
user: CertificateUser;
|
|
project: CertificateProject;
|
|
certificate_status: string;
|
|
}
|
|
|
|
export interface CertificateVerifyResult {
|
|
uuid: string;
|
|
intern_name: string;
|
|
project_name: string;
|
|
created_at: string;
|
|
}
|
|
|
|
export interface CertificateTemplate {
|
|
id_project: number;
|
|
certificate_template: string;
|
|
}
|
|
|
|
// Notification
|
|
export interface Notification {
|
|
id: number;
|
|
id_user: number;
|
|
id_admin: number | null;
|
|
title: string;
|
|
message: string;
|
|
is_read: boolean;
|
|
created_at: string;
|
|
} |