mirror of
https://github.com/alexmickelson/canvasManagement.git
synced 2026-03-26 07:38:33 -06:00
create rubric when creating assignment as well
This commit is contained in:
@@ -114,7 +114,6 @@ public class CoursePlanner
|
|||||||
|
|
||||||
await syncAssignmentsWithCanvas(canvasId);
|
await syncAssignmentsWithCanvas(canvasId);
|
||||||
|
|
||||||
|
|
||||||
CanvasAssignments = await canvas.Assignments.GetAll(canvasId);
|
CanvasAssignments = await canvas.Assignments.GetAll(canvasId);
|
||||||
CanvasModules = await canvas.GetModules(canvasId);
|
CanvasModules = await canvas.GetModules(canvasId);
|
||||||
|
|
||||||
@@ -175,9 +174,7 @@ public class CoursePlanner
|
|||||||
LocalCourse = LocalCourse with { Modules = modules };
|
LocalCourse = LocalCourse with { Modules = modules };
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task<LocalAssignment> syncAssignmentToCanvas(
|
private async Task<LocalAssignment> syncAssignmentToCanvas(LocalAssignment localAssignment)
|
||||||
LocalAssignment localAssignment
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
if (
|
if (
|
||||||
LocalCourse == null
|
LocalCourse == null
|
||||||
@@ -208,20 +205,11 @@ public class CoursePlanner
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
var createdAssignment = await canvas.Assignments.Create(
|
return await canvas.Assignments.Create(
|
||||||
courseId: canvasId,
|
canvasId,
|
||||||
name: localAssignment.name,
|
localAssignment,
|
||||||
submissionTypes: localAssignment.submission_types,
|
localHtmlDescription
|
||||||
description: localHtmlDescription,
|
|
||||||
dueAt: localAssignment.due_at,
|
|
||||||
lockAt: localAssignment.lock_at,
|
|
||||||
pointsPossible: localAssignment.points_possible
|
|
||||||
);
|
);
|
||||||
|
|
||||||
return localAssignment with
|
|
||||||
{
|
|
||||||
canvasId = createdAssignment.Id
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -27,27 +27,23 @@ public class CanvasAssignmentService
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<CanvasAssignment> Create(
|
public async Task<LocalAssignment> Create(
|
||||||
ulong courseId,
|
ulong courseId,
|
||||||
string name,
|
LocalAssignment localAssignment,
|
||||||
IEnumerable<SubmissionType> submissionTypes,
|
string htmlDescription
|
||||||
string? description,
|
|
||||||
DateTime? dueAt,
|
|
||||||
DateTime? lockAt,
|
|
||||||
int? pointsPossible
|
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
System.Console.WriteLine($"creating assignment: {name}");
|
System.Console.WriteLine($"creating assignment: {localAssignment.name}");
|
||||||
var url = $"courses/{courseId}/assignments";
|
var url = $"courses/{courseId}/assignments";
|
||||||
var request = new RestRequest(url);
|
var request = new RestRequest(url);
|
||||||
var body = new CanvasAssignmentCreationRequest()
|
var body = new CanvasAssignmentCreationRequest()
|
||||||
{
|
{
|
||||||
name = name,
|
name = localAssignment.name,
|
||||||
submission_types = submissionTypes.Select(t => t.ToString()),
|
submission_types = localAssignment.submission_types.Select(t => t.ToString()),
|
||||||
description = description ?? "",
|
description = localAssignment.description ?? "",
|
||||||
due_at = dueAt,
|
due_at = localAssignment.due_at,
|
||||||
lock_at = lockAt,
|
lock_at = localAssignment.lock_at,
|
||||||
points_possible = pointsPossible ?? 0
|
points_possible = localAssignment.points_possible
|
||||||
};
|
};
|
||||||
request.AddHeader("Content-Type", "application/json");
|
request.AddHeader("Content-Type", "application/json");
|
||||||
var bodyObj = new { assignment = body };
|
var bodyObj = new { assignment = body };
|
||||||
@@ -55,10 +51,12 @@ public class CanvasAssignmentService
|
|||||||
var (canvasAssignment, response) = await webRequestor.PostAsync<CanvasAssignment>(request);
|
var (canvasAssignment, response) = await webRequestor.PostAsync<CanvasAssignment>(request);
|
||||||
if (canvasAssignment == null)
|
if (canvasAssignment == null)
|
||||||
throw new Exception("created canvas assignment was null");
|
throw new Exception("created canvas assignment was null");
|
||||||
return canvasAssignment with
|
|
||||||
|
await CreateRubric(courseId, localAssignment);
|
||||||
|
|
||||||
|
return localAssignment with
|
||||||
{
|
{
|
||||||
DueAt = canvasAssignment.DueAt?.ToLocalTime(),
|
canvasId = canvasAssignment.Id
|
||||||
LockAt = canvasAssignment.LockAt?.ToLocalTime()
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user