import { ICourseModalityRq } from "../budget/budget.model"; import { AgreementCodRq } from "../cod/cod-rq.model"; import { INewCourseRs, IStatusRs, ICourseAssignedRs, ICapacityRs, ICronogramRs } from "./course-rq.model"; export interface Courses { code: string; teacher: number; course_type: TypeCourse; english_level: number; agreement: string; start_date: Date; finish_date: Date; } export interface TypeCourse { code: number; name: string; academic_plan: string; } export interface English_Levels { code: number; name: string; } export interface IgetCodBcourseByModalityAndStatusAndLevelInglishRq { token: string; modality: number; status: number; english_level: English_Levels[]; year?: number; campus?: number; } export interface IObtainCoursesByDifferentParametersRq { token: string; modality: number; teacher: number; course_status: number; english_level: English_Levels[]; } export interface IObtainCoursesStatusByDifferentParametersRq { token: string; modality: number; coordinator: number; course_status: number; english_level: English_Levels[]; } export interface IObtainCoursesStatusByAreaRq { token: string; modality: number; academic_plan: number; course_status: number; english_level: English_Levels[]; } export interface IObtainCoursesByDifferentParametersRs { code: number; course_schedule: string[]; teacher: string; course_type: ICourseTRq; to_start: Date; start_date: Date; finish_date: Date; capacity: number; more_days: null; english_level: ICourseModalityRq; agreement: AgreementCodRq; course_modality: ICourseModalityRq; course_status: number; available_capacity: number; course_scheduleDetails: ICourseScheduleDetailRs[]; } export interface ICourseScheduleDetailRs { ClassDay: string; StarTime: string; EndTime: string; ClassRoom: IClassRoomRq; } export interface IClassRoomRq { code: number; name: string; id_calendar: string; adress: string; campus: string; } export interface ICourseTRq { code: number; name: string; number_class: number; academic_plan: ICourseModalityRq; } export interface InfoCourseRs { english_level_name: string; course_type_name: string; teacher_name: string; teacher_last_name: string; course_modality: number; name: string; total_asistencias: number; total_inasistencias: number; academic_plan: string; } export interface ICourseChangeAuditRq { token: string; user_paran: string; } export interface ICourseChangeAuditRs { code: number; made_by: number; requested_by: number; old_course: number; new_course: number; type_action: number; cod_code: number; user_course: string; notes_course: string; attendance_course: string; final_score: string; other_observations: string; updated_at: Date; created_at: Date; student_code: number; student_name: string; student_last_name: string; student_id_card: string; student_phone_number: string; cod_code_value: number; } export interface ICourseRsAllFields { code: number; course_schedule: number; teacher: number; course_type: number; to_start: string; start_date: string; finish_date: string; english_level: number; course_modality: number; capacity: number; campus: number; agreement: number; is_club: number; is_from: number; is_renovation: number; is_visible: number; more_days: string | null; created_at: string; } export interface ICourseTypeAllFieldsRs { code: number; name: string; label: string; number_class: number; number_class_club: number; academic_plan: string; theory_classes: number; club_classes: number; category: number; } export interface IObtainCourseChangeAuditByCodCodeRs { code: number; made_by: IObtainByRs; requested_by: IObtainByRs; old_course: IObtainCourseRs; new_course: IObtainCourseRs; type_action: number; type_reason: number; cod_code: number; user_course: IObtainUserCourseAuditRs; notes_course: IObtainNotesCourseAuditRs[]; attendance_course: IObtainAttendanceCourseAuditRs; final_score: string; other_observations: string; updated_at: Date; created_at: Date; } export interface IObtainAttendanceCourseAuditRs { theory: IObtainAttendanceAuditRs[]; club: IObtainAttendanceAuditRs[]; } export interface IObtainAttendanceAuditRs { attendance: number; is_attended: number; course_event: number; name_event: string; date_event: Date; cod: number; course: number; } export interface IObtainNotesCourseAuditRs { code: number; note_code: number; note_type: IObtainNoteTypeAuditRs; note_value: number; observation: string; created_at: Date; } export interface IObtainUserCourseAuditRs { code: number; student_code: number; course_code: number; notes: number; } export interface IObtainNoteTypeAuditRs { code: number; note_name: string; percent: number; } export interface IObtainStudentHasCourseChangesRs { code: number; has_audit: number; } export interface IobtainCourseChangeAuditByStudentCodeRs { cods: IObtainCodRs[]; student: IObtainStudentForAuditRs; } export interface IObtainCodRs { code: number; course: IObtainCourseRs; course_type: ICourseTypeAllFieldsRs; agreement: number; english_level: IObtainLevelAuditRs[]; student: number; parent: number; aditional_information: number; adviser: number; cod_status: number; cod_price: number; cod_paid: number; accept_terms_code: null; updated_at: Date; created_at: Date; dataAudit: IObtainCourseChangeAuditByCodCodeRs[]; first_course: ICourseTypeAllFieldsRs | null; first_level: IObtainLevelAuditRs[] | null; } export interface IObtainCourseRs { code: number; course_schedule: number; teacher: number; course_type: ICourseTypeAllFieldsRs; to_start: Date; start_date: Date; finish_date: Date; capacity: number; more_days: null; english_level: IObtainLevelAuditRs[]; agreement: number; course_modality: number; is_renovation: number; is_from: number | null; is_club: number; is_visible: number; campus: number; created_at: Date; } export interface IObtainLevelAuditRs { code: number; name: string; } export interface IObtainByRs { name: string; } export interface IObtainStudentForAuditRs { student_code: number; student_name: string; student_last_name: string; student_id_card: string; student_phone_number: string; } export interface IobtainCourseChangeAuditByStudentCodeRs { old_course: IObtainOldCourseRs; new_course: IObtainNewCourseRs; } export interface IObtainNewCourseRs extends INewCourseRs { course_type: IObtainCourseTypeRs; english_level: IObtainEnglishLevelRs[]; cod_status: IObtainCodStatusRs; user_status: number | null; } export interface IObtainCodStatusRs { code: number; status: string; color_status: string; } export interface IObtainCourseTypeRs { code: number; name: string; label: string; number_class: number; number_class_club: number; academic_plan: number; theory_classes: number; club_classes: number; category: number; } export interface IObtainEnglishLevelRs { code: number; name: string; } export interface IObtainOldCourseRs { status: IStatusRs; courseAssigned: ICourseAssignedRs; capacity: ICapacityRs; user_course: IObtainOldCourseUserCourseRs; cronogram: ICronogramRs; attendance: IObtainOldCourseAttendanceRs; evaluations: IObtainOldCourseEvaluationsRs; course_type: IObtainCourseTypeRs; english_level: IObtainEnglishLevelRs[]; cod_status: IObtainCodStatusRs; user_status: number | null; } export interface IObtainOldCourseAttendanceRs { result: IObtainResultRs; attendance: IObtainAttendanceAttendanceRs; } export interface IObtainAttendanceAttendanceRs { club: IObtainTheoryRs[]; theory: IObtainTheoryRs[]; } export interface IObtainTheoryRs { attendance: number; is_attended: number; course_event: number; name_event: string; date_event: Date; cod: number; course: number; } export interface IObtainResultRs { club: IObtainResultClubRs; theory: IObtainResultClubRs; } export interface IObtainResultClubRs { has_duplicates: boolean; unique_classes: IObtainTheoryRs[]; duplicates_found: any[]; delete_result?: null; } export interface IObtainOldCourseEvaluationsRs { note_details: IObtainNoteDetailsRs; note_scores: IObtainNoteScoreRs[]; } export interface IObtainNoteDetailsRs { code: number; student_code: number; cod_code: number; final_score: number; user_course: IObtainNoteDetailsUserCourseRs; note_scores: IObtainNoteScoreRs[]; } export interface IObtainNoteScoreRs { code: number; note_code: number; note_type: number; note_value: number; observation: string; created_at: Date; } export interface IObtainNoteDetailsUserCourseRs { code: number; student_code: number; course_code: number; notes: number; } export interface IObtainOldCourseUserCourseRs { success: boolean; message: string; duplicates: boolean; kept_note: number; kept_user_course: number; note_details: IObtainNoteDetailsRs; note_scores: IObtainNoteScoreRs[]; duplicate_notes: number[]; duplicate_user_course: number[]; deleted_notes: any[]; deleted_user_course: any[]; } export interface IGetCourseTypeByPlanAndCampusRq { campus: number; academic_plan: number; } export interface IGetCourseTypeByPlanAndCampusRs { code: number; name: string; label: string; number_class: number; number_class_club: number; academic_plan: number; theory_classes: number; club_classes: number; campus: number; category: number; } export interface IGetCoursesByAcademicPlanAndCampusRq { token: string; academic_plan_code: number; campus_code: number; } export interface IGetCoursesByAcademicPlanAndCampusRs { code: number; course_schedule: string[]; teacher: string; course_type: ICourseTypeAndCategoryRs; to_start: Date; start_date: null; finish_date: null; capacity: number; more_days: null; english_level: string; agreement: string; course_modality: ICourseModalityRs; is_renovation: number; is_from: null; is_club: number; is_visible: number; campus: number; created_at: Date; status: number; course_enable: boolean; available_capacity: number; cods: number; course_club: ICourseClubRs; is_renovation_mismatch: boolean; } export interface ICourseClubRs { code: number; course_schedule: string[]; teacher: string; course_type: ICourseTypeAndCategoryRs; to_start: Date; start_date: null; finish_date: null; capacity: number; more_days: null; english_level: string; agreement: string; course_modality: ICourseModalityRs; is_renovation: number; is_from: null; is_club: number; is_visible: number; campus: number; course_scheduleDetails: null; } export interface ICourseModalityRs { code: number; name: string; } export interface ICourseTypeAndCategoryRs { code: number; name: string; label: string; number_class: number; number_class_club: number; academic_plan: string; theory_classes: number; club_classes: number; category: number; }