File size: 1,247 Bytes
9ce3455
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
import mongoose from 'mongoose';

const documentSchema = new mongoose.Schema({
    filename: {
        type: String,
        required: true
    },
    originalName: {
        type: String,
        required: true
    },
    fileType: {
        type: String,
        enum: ['pdf', 'excel', 'csv'],
        required: true
    },
    fileSize: {
        type: Number,
        required: true
    },
    uploadDate: {
        type: Date,
        default: Date.now
    },
    status: {
        type: String,
        enum: ['uploaded', 'processing', 'analyzed', 'error'],
        default: 'uploaded'
    },
    extractedText: {
        type: String
    },
    analysisResults: {
        totalTrainings: Number,
        totalParticipants: Number,
        themeDistribution: mongoose.Schema.Types.Mixed,
        stateWiseCoverage: mongoose.Schema.Types.Mixed,
        averageCompletionRate: String,
        gapAnalysis: mongoose.Schema.Types.Mixed,
        recommendations: [String],
        keyInsights: [String]
    },
    reportUrl: {
        type: String
    },
    cloudinaryUrl: {
        type: String
    }
}, {
    timestamps: true
});

export default mongoose.model('Document', documentSchema);