Spaces:
Sleeping
Sleeping
| import { | |
| Entity, | |
| PrimaryGeneratedColumn, | |
| Column, | |
| ManyToOne, | |
| JoinColumn, | |
| CreateDateColumn, | |
| } from 'typeorm'; | |
| import { User } from '../../auth/entities/user.entity'; | |
| ('course_analytics') | |
| export class CourseAnalytics { | |
| ({ | |
| name: 'analytics_id', | |
| type: 'bigint', | |
| unsigned: true, | |
| }) | |
| analyticsId: number; | |
| ({ name: 'course_id', type: 'bigint', unsigned: true }) | |
| courseId: number; | |
| ({ name: 'instructor_id', type: 'bigint', unsigned: true }) | |
| instructorId: number; | |
| ({ name: 'total_students', type: 'int', default: 0 }) | |
| totalStudents: number; | |
| ({ name: 'active_students', type: 'int', default: 0 }) | |
| activeStudents: number; | |
| ({ | |
| name: 'average_grade', | |
| type: 'decimal', | |
| precision: 5, | |
| scale: 2, | |
| nullable: true, | |
| }) | |
| averageGrade: number; | |
| ({ | |
| name: 'average_attendance', | |
| type: 'decimal', | |
| precision: 5, | |
| scale: 2, | |
| nullable: true, | |
| }) | |
| averageAttendance: number; | |
| ({ | |
| name: 'completion_rate', | |
| type: 'decimal', | |
| precision: 5, | |
| scale: 2, | |
| nullable: true, | |
| }) | |
| completionRate: number; | |
| ({ | |
| name: 'engagement_score', | |
| type: 'decimal', | |
| precision: 5, | |
| scale: 2, | |
| nullable: true, | |
| }) | |
| engagementScore: number; | |
| ({ name: 'calculation_date', type: 'date' }) | |
| calculationDate: Date; | |
| ({ name: 'created_at' }) | |
| createdAt: Date; | |
| (() => User) | |
| ({ name: 'instructor_id' }) | |
| instructor: User; | |
| } | |