diff --git a/database/student.js b/database/student.js index fd17d22..c60d5af 100644 --- a/database/student.js +++ b/database/student.js @@ -195,16 +195,39 @@ async function getStudentScores(owner_id, start, length, searchTerm) .whereRaw('?? = ??', ['student_events.student_id', 'students.id']) .where('owner_id', owner_id) .whereNull('deleted_at') - .as('total_score') + .as('total_score'), + DB('student_events') + .sum('score') + .whereRaw('?? = ??', ['student_events.student_id', 'students.id']) + .where('owner_id', owner_id) + .where('score',"<","0") + .whereNull('deleted_at') + .as('negative_score'), + DB('student_events') + .sum('score') + .whereRaw('?? = ??', ['student_events.student_id', 'students.id']) + .where('owner_id', owner_id) + .where('score',">","0") + .whereNull('deleted_at') + .as('positive_score') ]) .where("name","like",`%${searchTerm ?? ""}%`) - .whereNull('deleted_at') + .whereNull('students.deleted_at') + .where('owner_id', owner_id) .orderBy('total_score', 'desc') .limit(length) .offset(start); - return students; + return students.map(e => { + e.total_score = e.total_score == null ? 0 : e.total_score; + return e; + }); } +/* +negative_score +positive_score +*/ + async function deleteEvent(owner_id, id) { await DB.table("student_events") diff --git a/views/panel/panel.ejs b/views/panel/panel.ejs index 4448304..fd06cdd 100644 --- a/views/panel/panel.ejs +++ b/views/panel/panel.ejs @@ -79,10 +79,29 @@ return `${data.name} ${data.surname || ''}`; } }, + { + title: "Negatif Puan", + data: "negative_score", + name: "negative_score", + render:e => { + return `${e.toString()}`; + } + }, + { + title: "Pozitif Puan", + data: "positive_score", + name: "positive_score", + render:e => { + return `+${e.toString()}`; + } + }, { title: "Toplam Puanı", data: "total_score", - name: "total_score" + name: "total_score", + render:e => { + return `+${e.toString()}`; + } } ], "language": { diff --git a/views/partials/footer.ejs b/views/partials/footer.ejs index 237c004..cfafe99 100644 --- a/views/partials/footer.ejs +++ b/views/partials/footer.ejs @@ -1,8 +1,19 @@ - -
- YeşilSkor
+ EkoEtki