Skip to content
This repository has been archived by the owner on Sep 4, 2023. It is now read-only.

Commit

Permalink
Add support for component based documents (EpsilonComponents) (#89)
Browse files Browse the repository at this point in the history
* Initial component architecture for JSON and Word export

* Added architecture for single point of component data retrieval and Word convertion

* Typo

* Cleanup component architecture and modify Word export to return OpenXML

* Add coding guidelines enforcement (#85)

* Add initial coding guidelines and fix where necessary

* Enforce code styling and update code where necessary

* Remove duplicate .editorconfig entries

* Add code analysis setup to CI

* Add missing checkout step

* Update incorrect action version tag

* Remove incompatible analysis step

* Push code style offense to validate CI pipeline

* Remove code style violation

* Add global.json

* Add support for dynamic component converters

* Removed Word component merging logic from controller to WordDownloader class

* Remve redundant method

* Remove accidental document

* Remove redundant models and interfaces

* Fix persona images not being added as Base64 (#84)

* Made some adjustments that the pictures in the persona get converted to Base64 strings versus loading it remotely from Canvas (as the access key is only valid for a limited time period)

* Add coding guidelines enforcement (#85)

* Add initial coding guidelines and fix where necessary

* Enforce code styling and update code where necessary

* Remove duplicate .editorconfig entries

* Add code analysis setup to CI

* Add missing checkout step

* Update incorrect action version tag

* Remove incompatible analysis step

* Push code style offense to validate CI pipeline

* Remove code style violation

* Add global.json

* Made a couple of changes based on recommendations made in the merge request.

---------

Co-authored-by: Jelle Maas <typiqally@gmail.com>

* Fix exporters no longer working correctly (#88)

* Temporarily fix paginator not working correctly

* Set format names to uppercase

* Fix stream being disposed before usage

* Fix homepage returning null when no images are present

* Cleanup Word downloader

* Change CLI project namespace to allow for additional projects

* Add initial Web API project

* Create controllers and endpoints

* Transform abstract class to interface

* Change classes to records & add poc endpoints

* Add download Word file endpoint

* Typo

* Add initial frontend code

* Add competence profile data model (#76)

* Initial proof of concept for competence profile data model

* Refactor competence profile return type

* Created endpoint with updated HboIDomain and Mockdata. Also created GraphQL endpoint for student data

* Cleanup records to seperate GraphQL folder

* Fix GraphQL records

---------

Co-authored-by: Jelle Maas <typiqally@gmail.com>
Co-authored-by: Sven Hansen <76601644+1SvenHansen@users.noreply.github.com>

* Link submission query with competence profile endpoint (#79)

* Added Professional development

* Rename namespace to correspond with coding guidelines

* Separate records into different files

* Rename Value to Name to correspond with domain

* Rename Value to Level to correspond with domain

* Add professional skills to domain

* Add short name to architectural layer and professional skills

* Rename properties in competence profile random data filler

* Rename CompetenceProfileOutcome to ProfessionalTaskOutcome

* Add Professional skill outcome to competence profile

* Use singular name

* Use id references instead of name values

* Use type keyword

* Add submissions from all courses from student to competence profile transformation

* Fix merge issues

* Add task and skill outcomes to competence profile return type

* Fetch terms from canvas

* Remove redundant imports

* Change default application url

* Prevent browser from launching on every restart

* Cleanup code

* Add filter enrolment term function

* Add terms to competence profile

* Remove unused terms function

* Added filter on professional outcomes and sorting

* Removed unused things

* V0.1

* Defining colors for elements

* Remove obsolete styling

* Update pnpm lock file

* Add Vue router

* Resolve ESLint warnings

* Add authorization view and controller

* Use controller templating for route

* A lot of stuff

* A lot of stuff

* Working

* Set it all to vue 3 supported format

* Fix import path

* Add CORS policy

* Realtime user data

* Add terms to competence profile

* Cleanup code and improve competence profile converter

* Filter on PostedAt value

---------

Co-authored-by: Tara <tarawillink@gmail.com>
Co-authored-by: Sven <svenroermond@hotmail.com>
Co-authored-by: Neal Geilen <info@nealgeilen.nl>

* Add performance dashboard frontend interface (#81)

* Added Professional development

* Rename namespace to correspond with coding guidelines

* Separate records into different files

* Rename Value to Name to correspond with domain

* Rename Value to Level to correspond with domain

* Add professional skills to domain

* Add short name to architectural layer and professional skills

* Rename properties in competence profile random data filler

* Rename CompetenceProfileOutcome to ProfessionalTaskOutcome

* Add Professional skill outcome to competence profile

* Use singular name

* Use id references instead of name values

* Use type keyword

* Add submissions from all courses from student to competence profile transformation

* Fix merge issues

* Add task and skill outcomes to competence profile return type

* Fetch terms from canvas

* Remove redundant imports

* Change default application url

* Prevent browser from launching on every restart

* Cleanup code

* V0.1

* Defining colors for elements

* Remove obsolete styling

* Update pnpm lock file

* Add Vue router

* Resolve ESLint warnings

* Add authorization view and controller

* Use controller templating for route

* A lot of stuff

* A lot of stuff

* Working

* Set it all to vue 3 supported format

* Fix import path

* Add CORS policy

* Realtime user data

* Bugfixes

* Add filter enrolment term function

* Add terms to competence profile

* Remove unused terms function

* Added filter on professional outcomes and sorting

* Removed unused things

* Realtime user data

* Add terms to competence profile

* Cleanup code and improve competence profile converter

* Filter on PostedAt value

* Added frontend grid & colors

---------

Co-authored-by: Tara <tarawillink@gmail.com>
Co-authored-by: Jelle Maas <typiqally@gmail.com>
Co-authored-by: Sven <svenroermond@hotmail.com>
Co-authored-by: Eline <elinevooijs@outlook.com>

* Add decaying average calculations (#80)

* initial version of the decaying average functionality

* Added Professional development

* Rename namespace to correspond with coding guidelines

* Separate records into different files

* Rename Value to Name to correspond with domain

* Rename Value to Level to correspond with domain

* Add professional skills to domain

* Add short name to architectural layer and professional skills

* Rename properties in competence profile random data filler

* Rename CompetenceProfileOutcome to ProfessionalTaskOutcome

* Add Professional skill outcome to competence profile

* Use singular name

* Use id references instead of name values

* Use type keyword

* re-adding decaying average files and logic

* Add submissions from all courses from student to competence profile transformation

* Fix merge issues

* Add task and skill outcomes to competence profile return type

* Fetch terms from canvas

* Remove redundant imports

* Change default application url

* Prevent browser from launching on every restart

* Cleanup code

* Add filter enrolment term function

* Add terms to competence profile

* Remove unused terms function

* Added filter on professional outcomes and sorting

* Removed unused things

* V0.1

* Defining colors for elements

* Remove obsolete styling

* Update pnpm lock file

* Add Vue router

* Resolve ESLint warnings

* Add authorization view and controller

* Use controller templating for route

* A lot of stuff

* A lot of stuff

* Working

* Set it all to vue 3 supported format

* Fix import path

* Add CORS policy

* Realtime user data

* Add terms to competence profile

* Cleanup code and improve competence profile converter

* Filter on PostedAt value

* initial version of the decaying average functionality

* re-adding decaying average files and logic

* Decaying average calculation functionality supporting both ArchitectureLayer and Skill outcomes

* Decaying average calculation functional per layer per activity and skills are independent of layers

---------

Co-authored-by: jan.fojtik <jan.fojtik@indicia.nl>
Co-authored-by: Tara <tarawillink@gmail.com>
Co-authored-by: Jelle Maas <typiqally@gmail.com>
Co-authored-by: Sven <svenroermond@hotmail.com>
Co-authored-by: Neal Geilen <info@nealgeilen.nl>

* Fix to not all learning outcomes getting retrieved (#82)

* Attempt to fix not all learning outcomes getting retrieved

* Use submission histories instead of rubric assessments directly

* Ensure rubric assessments nodes has elements

* Add performance dashboard frontend interface (#81)

* Added Professional development

* Rename namespace to correspond with coding guidelines

* Separate records into different files

* Rename Value to Name to correspond with domain

* Rename Value to Level to correspond with domain

* Add professional skills to domain

* Add short name to architectural layer and professional skills

* Rename properties in competence profile random data filler

* Rename CompetenceProfileOutcome to ProfessionalTaskOutcome

* Add Professional skill outcome to competence profile

* Use singular name

* Use id references instead of name values

* Use type keyword

* Add submissions from all courses from student to competence profile transformation

* Fix merge issues

* Add task and skill outcomes to competence profile return type

* Fetch terms from canvas

* Remove redundant imports

* Change default application url

* Prevent browser from launching on every restart

* Cleanup code

* V0.1

* Defining colors for elements

* Remove obsolete styling

* Update pnpm lock file

* Add Vue router

* Resolve ESLint warnings

* Add authorization view and controller

* Use controller templating for route

* A lot of stuff

* A lot of stuff

* Working

* Set it all to vue 3 supported format

* Fix import path

* Add CORS policy

* Realtime user data

* Bugfixes

* Add filter enrolment term function

* Add terms to competence profile

* Remove unused terms function

* Added filter on professional outcomes and sorting

* Removed unused things

* Realtime user data

* Add terms to competence profile

* Cleanup code and improve competence profile converter

* Filter on PostedAt value

* Added frontend grid & colors

---------

Co-authored-by: Tara <tarawillink@gmail.com>
Co-authored-by: Jelle Maas <typiqally@gmail.com>
Co-authored-by: Sven <svenroermond@hotmail.com>
Co-authored-by: Eline <elinevooijs@outlook.com>

* Add decaying average calculations (#80)

* initial version of the decaying average functionality

* Added Professional development

* Rename namespace to correspond with coding guidelines

* Separate records into different files

* Rename Value to Name to correspond with domain

* Rename Value to Level to correspond with domain

* Add professional skills to domain

* Add short name to architectural layer and professional skills

* Rename properties in competence profile random data filler

* Rename CompetenceProfileOutcome to ProfessionalTaskOutcome

* Add Professional skill outcome to competence profile

* Use singular name

* Use id references instead of name values

* Use type keyword

* re-adding decaying average files and logic

* Add submissions from all courses from student to competence profile transformation

* Fix merge issues

* Add task and skill outcomes to competence profile return type

* Fetch terms from canvas

* Remove redundant imports

* Change default application url

* Prevent browser from launching on every restart

* Cleanup code

* Add filter enrolment term function

* Add terms to competence profile

* Remove unused terms function

* Added filter on professional outcomes and sorting

* Removed unused things

* V0.1

* Defining colors for elements

* Remove obsolete styling

* Update pnpm lock file

* Add Vue router

* Resolve ESLint warnings

* Add authorization view and controller

* Use controller templating for route

* A lot of stuff

* A lot of stuff

* Working

* Set it all to vue 3 supported format

* Fix import path

* Add CORS policy

* Realtime user data

* Add terms to competence profile

* Cleanup code and improve competence profile converter

* Filter on PostedAt value

* initial version of the decaying average functionality

* re-adding decaying average files and logic

* Decaying average calculation functionality supporting both ArchitectureLayer and Skill outcomes

* Decaying average calculation functional per layer per activity and skills are independent of layers

---------

Co-authored-by: jan.fojtik <jan.fojtik@indicia.nl>
Co-authored-by: Tara <tarawillink@gmail.com>
Co-authored-by: Jelle Maas <typiqally@gmail.com>
Co-authored-by: Sven <svenroermond@hotmail.com>
Co-authored-by: Neal Geilen <info@nealgeilen.nl>

* Correct HBO-i domain layer order

* Add performance dashboard frontend interface (#81)

* Added Professional development

* Rename namespace to correspond with coding guidelines

* Separate records into different files

* Rename Value to Name to correspond with domain

* Rename Value to Level to correspond with domain

* Add professional skills to domain

* Add short name to architectural layer and professional skills

* Rename properties in competence profile random data filler

* Rename CompetenceProfileOutcome to ProfessionalTaskOutcome

* Add Professional skill outcome to competence profile

* Use singular name

* Use id references instead of name values

* Use type keyword

* Add submissions from all courses from student to competence profile transformation

* Fix merge issues

* Add task and skill outcomes to competence profile return type

* Fetch terms from canvas

* Remove redundant imports

* Change default application url

* Prevent browser from launching on every restart

* Cleanup code

* V0.1

* Defining colors for elements

* Remove obsolete styling

* Update pnpm lock file

* Add Vue router

* Resolve ESLint warnings

* Add authorization view and controller

* Use controller templating for route

* A lot of stuff

* A lot of stuff

* Working

* Set it all to vue 3 supported format

* Fix import path

* Add CORS policy

* Realtime user data

* Bugfixes

* Add filter enrolment term function

* Add terms to competence profile

* Remove unused terms function

* Added filter on professional outcomes and sorting

* Removed unused things

* Realtime user data

* Add terms to competence profile

* Cleanup code and improve competence profile converter

* Filter on PostedAt value

* Added frontend grid & colors

---------

Co-authored-by: Tara <tarawillink@gmail.com>
Co-authored-by: Jelle Maas <typiqally@gmail.com>
Co-authored-by: Sven <svenroermond@hotmail.com>
Co-authored-by: Eline <elinevooijs@outlook.com>

* Add decaying average calculations (#80)

* initial version of the decaying average functionality

* Added Professional development

* Rename namespace to correspond with coding guidelines

* Separate records into different files

* Rename Value to Name to correspond with domain

* Rename Value to Level to correspond with domain

* Add professional skills to domain

* Add short name to architectural layer and professional skills

* Rename properties in competence profile random data filler

* Rename CompetenceProfileOutcome to ProfessionalTaskOutcome

* Add Professional skill outcome to competence profile

* Use singular name

* Use id references instead of name values

* Use type keyword

* re-adding decaying average files and logic

* Add submissions from all courses from student to competence profile transformation

* Fix merge issues

* Add task and skill outcomes to competence profile return type

* Fetch terms from canvas

* Remove redundant imports

* Change default application url

* Prevent browser from launching on every restart

* Cleanup code

* Add filter enrolment term function

* Add terms to competence profile

* Remove unused terms function

* Added filter on professional outcomes and sorting

* Removed unused things

* V0.1

* Defining colors for elements

* Remove obsolete styling

* Update pnpm lock file

* Add Vue router

* Resolve ESLint warnings

* Add authorization view and controller

* Use controller templating for route

* A lot of stuff

* A lot of stuff

* Working

* Set it all to vue 3 supported format

* Fix import path

* Add CORS policy

* Realtime user data

* Add terms to competence profile

* Cleanup code and improve competence profile converter

* Filter on PostedAt value

* initial version of the decaying average functionality

* re-adding decaying average files and logic

* Decaying average calculation functionality supporting both ArchitectureLayer and Skill outcomes

* Decaying average calculation functional per layer per activity and skills are independent of layers

---------

Co-authored-by: jan.fojtik <jan.fojtik@indicia.nl>
Co-authored-by: Tara <tarawillink@gmail.com>
Co-authored-by: Jelle Maas <typiqally@gmail.com>
Co-authored-by: Sven <svenroermond@hotmail.com>
Co-authored-by: Neal Geilen <info@nealgeilen.nl>

* Attempt to fix not all learning outcomes getting retrieved

* Use submission histories instead of rubric assessments directly

* Ensure rubric assessments nodes has elements

* Correct HBO-i domain layer order

---------

Co-authored-by: Jelle Maas <typiqally@gmail.com>
Co-authored-by: Tara <tarawillink@gmail.com>
Co-authored-by: Sven <svenroermond@hotmail.com>
Co-authored-by: Eline <elinevooijs@outlook.com>
Co-authored-by: jendafojtik <83012368+jendafojtik@users.noreply.github.com>
Co-authored-by: jan.fojtik <jan.fojtik@indicia.nl>

* Initial component architecture for JSON and Word export

* Added architecture for single point of component data retrieval and Word convertion

* Typo

* Cleanup component architecture and modify Word export to return OpenXML

* Add support for dynamic component converters

* Removed Word component merging logic from controller to WordDownloader class

* Remve redundant method

* Remove accidental document

* Remove redundant models and interfaces

* Cleanup Word downloader

* Fix code analysis issues

* Fix incorrect interface reference

* Remove CLI projects and its dependencies

* Rename Epsilon component classes

* Reformat records

* Remove obsolete test

* Rename TResponse to TComponent

* Remove redundant export data

* Remove redundant interface

* Add service collection extensions for components

* Rework component converters to be included in component models

* Move domain logic in controller to separate services

* Move component name to attribute and rename to competence component

* Remove duplicate package reference

* Move HttpService class to Canvas project

* Remove unused constants

* Modify persona page to accommodate new component architecture (#91)

* Created PersonaPage component for the new architecture.

* fix feedback sven

* Cleanup code

* Modify architecture to force adding Word components instead of creating them

* Add using statement to ensure stream is disposed

---------

Co-authored-by: Jelle Maas <typiqally@gmail.com>

* Add initial KPI matrix component (#87)

* Created KpiMatrix component

* Added modules and fixed comments

* Fixed an issue where outcomes where duplicate

* Created KPIMatrix in word document

* Fixed all remaining issues.

* Merge conflicts

* Fixed MR requests

* Changed course to allcourses

* File restructure

* Revised coding structure. Assignments that are not yest graded are also now included

* Merged files in new structure

* Colored rows

* "Simplified"

* Move HttpService class to Canvas project

* Added legend and changed "GradeStatus" structure

* Remove unused constants

* Modify persona page to accommodate new component architecture (#91)

* Created PersonaPage component for the new architecture.

* fix feedback sven

* Cleanup code

* Modify architecture to force adding Word components instead of creating them

* Add using statement to ensure stream is disposed

---------

Co-authored-by: Jelle Maas <typiqally@gmail.com>

* Move HttpService class to Canvas project

* Remove unused constants

* Modify persona page to accommodate new component architecture (#91)

* Created PersonaPage component for the new architecture.

* fix feedback sven

* Cleanup code

* Modify architecture to force adding Word components instead of creating them

* Add using statement to ensure stream is disposed

---------

Co-authored-by: Jelle Maas <typiqally@gmail.com>

* Created KpiMatrix component

* Added modules and fixed comments

* Merge conflicts

* File restructure

* Revised coding structure. Assignments that are not yest graded are also now included

* Created KpiMatrix component

* Added modules and fixed comments

* Merge conflicts

* File restructure

* Revised coding structure. Assignments that are not yest graded are also now included

* Added legend and changed "GradeStatus" structure

* Added extra grade type

* Added legend to json result

* Working order

* startDate & endDate implementation for document generator

* POC working

* Created KpiMatrix component

* Added modules and fixed comments

* Fixed an issue where outcomes where duplicate

* Created KPIMatrix in word document

* Fixed all remaining issues.

* Merge conflicts

* Fixed MR requests

* Changed course to allcourses

* File restructure

* Revised coding structure. Assignments that are not yest graded are also now included

* Merged files in new structure

* Colored rows

* "Simplified"

* Added legend and changed "GradeStatus" structure

* Created KpiMatrix component

* Added modules and fixed comments

* Merge conflicts

* File restructure

* Revised coding structure. Assignments that are not yest graded are also now included

* Created KpiMatrix component

* Added modules and fixed comments

* Merge conflicts

* File restructure

* Revised coding structure. Assignments that are not yest graded are also now included

* Added legend and changed "GradeStatus" structure

* Added extra grade type

* Added legend to json result

* Working order

* startDate & endDate implementation for document generator

* POC working

* changes

* Lint fixes

* Lint fixes

* Cleanup code and update coding guidelines

* Change outcome grade statuses

* Cleanup code

---------

Co-authored-by: Neal Geilen <info@nealgeilen.nl>
Co-authored-by: Jelle Maas <typiqally@gmail.com>
Co-authored-by: Koen Janssen <6256259+koen253janssen@users.noreply.github.com>

---------

Co-authored-by: Sven <svenroermond@hotmail.com>
Co-authored-by: Koen Janssen <6256259+koen253janssen@users.noreply.github.com>
Co-authored-by: Sven Hansen <76601644+1SvenHansen@users.noreply.github.com>
Co-authored-by: Sven Hansen <76601644+SyntaxSven@users.noreply.github.com>
Co-authored-by: Tara <tarawillink@gmail.com>
Co-authored-by: Neal Geilen <info@nealgeilen.nl>
Co-authored-by: Eline <elinevooijs@outlook.com>
Co-authored-by: jendafojtik <83012368+jendafojtik@users.noreply.github.com>
Co-authored-by: jan.fojtik <jan.fojtik@indicia.nl>
Co-authored-by: Jasper123pyah <73039915+Jasper123pyah@users.noreply.github.com>
  • Loading branch information
11 people committed May 26, 2023
1 parent c6dd35f commit 451f809
Show file tree
Hide file tree
Showing 18 changed files with 14 additions and 439 deletions.
11 changes: 0 additions & 11 deletions Epsilon.Abstractions/Component/ICompetenceProfileConverter.cs

This file was deleted.

12 changes: 0 additions & 12 deletions Epsilon.Abstractions/Model/CompetenceProfile.cs

This file was deleted.

9 changes: 6 additions & 3 deletions Epsilon.Canvas.Abstractions/Model/GraphQl/AssessmentRating.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
namespace Epsilon.Canvas.Abstractions.Model.GraphQl;

public record AssessmentRating(
[property: JsonPropertyName("points")] double? Points,
[property: JsonPropertyName("outcome")] Outcome? Outcome
);
[property: JsonPropertyName("criterion")] Criterion? Criterion,
[property: JsonPropertyName("points")] double? Points
)
{
public bool IsMastery => Points >= Criterion?.MasteryPoints;
}
3 changes: 2 additions & 1 deletion Epsilon.Canvas.Abstractions/Model/GraphQl/Assignment.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,6 @@ namespace Epsilon.Canvas.Abstractions.Model.GraphQl;

public record Assignment(
[property: JsonPropertyName("name")] string? Name,
[property: JsonPropertyName("modules")] List<Module>? Modules
[property: JsonPropertyName("modules")] IEnumerable<Module>? Modules ,
[property: JsonPropertyName("rubric")] Rubric? Rubric
);
4 changes: 0 additions & 4 deletions Epsilon.Canvas.Abstractions/Model/GraphQl/Module.cs
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
using System.Text.Json.Serialization;

<<<<<<< HEAD
namespace Epsilon.Canvas.Abstractions.Model.GraphQL;
=======
namespace Epsilon.Canvas.Abstractions.Model.GraphQl;
>>>>>>> f6062a3 (Link submission query with competence profile endpoint (#79))

public record Module(
[property: JsonPropertyName("name")] string Name
Expand Down
3 changes: 1 addition & 2 deletions Epsilon.Canvas.Abstractions/Model/GraphQl/Outcome.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,5 @@ namespace Epsilon.Canvas.Abstractions.Model.GraphQl;

public record Outcome(
[property: JsonPropertyName("_id")] int Id,
[property: JsonPropertyName("title")] string? Title,
[property: JsonPropertyName("masteryPoints")] double? MasteryPoints
[property: JsonPropertyName("title")] string Title
);
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
namespace Epsilon.Canvas.Abstractions.Model.GraphQl;

public record RubricAssessmentNode(
[property: JsonPropertyName("assessmentRatings")] List<AssessmentRating>? AssessmentRatings,
[property: JsonPropertyName("user")] User? User
[property: JsonPropertyName("assessmentRatings")] IReadOnlyList<AssessmentRating?>? AssessmentRatings
);
Original file line number Diff line number Diff line change
@@ -1,11 +1,7 @@
using System.Text.Json.Serialization;

<<<<<<< HEAD
namespace Epsilon.Canvas.Abstractions.Model.GraphQL;
=======
namespace Epsilon.Canvas.Abstractions.Model.GraphQl;
>>>>>>> f6062a3 (Link submission query with competence profile endpoint (#79))

public record RubricAssessmentsConnection(
[property: JsonPropertyName("nodes")] List<RubricAssessmentNode>? Nodes
[property: JsonPropertyName("nodes")] IEnumerable<RubricAssessmentNode>? Nodes
);
Original file line number Diff line number Diff line change
@@ -1,14 +1,7 @@
using System.Text.Json.Serialization;

<<<<<<< HEAD
namespace Epsilon.Canvas.Abstractions.Model.GraphQL;

public record SubmissionsConnection(
[property: JsonPropertyName("nodes")] List<Node>? Nodes
=======
namespace Epsilon.Canvas.Abstractions.Model.GraphQl;

public record SubmissionsConnection(
[property: JsonPropertyName("nodes")] List<SubmissionsConnectionNode>? Nodes
>>>>>>> f6062a3 (Link submission query with competence profile endpoint (#79))
);
2 changes: 1 addition & 1 deletion Epsilon.Canvas.Abstractions/Model/GraphQl/User.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,5 @@ namespace Epsilon.Canvas.Abstractions.Model.GraphQl;

public record User(
[property: JsonPropertyName("name")] string? Name
>>>>>>> f6062a3 (Link submission query with competence profile endpoint (#79))
DateTime startDate, DateTime endDate>> f6062a3 (Link submission query with competence profile endpoint (#79))
);
18 changes: 1 addition & 17 deletions Epsilon.Canvas.Abstractions/Model/OutcomeResultCollection.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,4 @@ public record OutcomeResultCollection(
[property: JsonPropertyName("outcome_results")]
IEnumerable<OutcomeResult> OutcomeResults,
[property: JsonPropertyName("linked")] OutcomeResultCollectionLink? Links
)
{
public double GetDecayingAverage()
{
var decayingAverage = 0.0;

foreach(var grade in OutcomeResults)
{
if (grade.Score != null)
{
decayingAverage = decayingAverage * 0.35 + grade.Score.Value * 0.65;
}
}

return decayingAverage;
}
}
);

This file was deleted.

This file was deleted.

67 changes: 1 addition & 66 deletions Epsilon.Canvas/QueryConstants.cs
Original file line number Diff line number Diff line change
@@ -1,66 +1 @@
namespace Epsilon.Canvas;

public static class QueryConstants
{
public const string GetUserCourseSubmissionOutcomes = @"
query GetUserCourseSubmissionOutcomes {
course(id: $courseId) {
name
submissionsConnection {
nodes {
assignment {
name
modules {
name
}
}
rubricAssessmentsConnection {
nodes {
assessmentRatings {
points
outcome {
title
}
}
user {
name
}
}
}
}
}
}
}
";

public const string GetAllUserCoursesSubmissionOutcomes = @"
query GetAllUserCoursesSubmissionOutcomes {
allCourses {
name
submissionsConnection(studentIds: $studentIds) {
nodes {
assignment {
name
}
postedAt
rubricAssessmentsConnection {
nodes {
assessmentRatings {
points
outcome {
_id
title
masteryPoints
}
}
user {
name
}
}
}
}
}
}
}
";
}

102 changes: 0 additions & 102 deletions Epsilon.Host.Frontend/src/components/Competance/KpiMatrix.vue

This file was deleted.

Loading

0 comments on commit 451f809

Please sign in to comment.