Change after making UUIDs
This commit is contained in:
parent
f25602c84c
commit
e208fdabbc
|
|
@ -14,8 +14,8 @@ import type { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-
|
||||||
*/
|
*/
|
||||||
const documents = {
|
const documents = {
|
||||||
"\n mutation SendFeedbackMutation($input: SendFeedbackInput!) {\n send_feedback(input: $input) {\n feedback_response {\n id\n }\n errors {\n field\n messages\n }\n }\n }\n": types.SendFeedbackMutationDocument,
|
"\n mutation SendFeedbackMutation($input: SendFeedbackInput!) {\n send_feedback(input: $input) {\n feedback_response {\n id\n }\n errors {\n field\n messages\n }\n }\n }\n": types.SendFeedbackMutationDocument,
|
||||||
"\n mutation UpsertAssignmentCompletion(\n $assignmentId: ID!\n $courseSessionId: ID!\n $learningContentId: ID\n $assignmentUserId: ID\n $completionStatus: AssignmentCompletionStatus!\n $completionDataString: String!\n $evaluationGrade: Float\n $evaluationPoints: Float\n ) {\n upsert_assignment_completion(\n assignment_id: $assignmentId\n course_session_id: $courseSessionId\n learning_content_page_id: $learningContentId\n assignment_user_id: $assignmentUserId\n completion_status: $completionStatus\n completion_data_string: $completionDataString\n evaluation_grade: $evaluationGrade\n evaluation_points: $evaluationPoints\n ) {\n assignment_completion {\n id\n completion_status\n submitted_at\n evaluation_submitted_at\n evaluation_grade\n evaluation_points\n completion_data\n }\n }\n }\n": types.UpsertAssignmentCompletionDocument,
|
"\n mutation UpsertAssignmentCompletion(\n $assignmentId: ID!\n $courseSessionId: ID!\n $learningContentId: ID\n $assignmentUserId: UUID\n $completionStatus: AssignmentCompletionStatus!\n $completionDataString: String!\n $evaluationGrade: Float\n $evaluationPoints: Float\n ) {\n upsert_assignment_completion(\n assignment_id: $assignmentId\n course_session_id: $courseSessionId\n learning_content_page_id: $learningContentId\n assignment_user_id: $assignmentUserId\n completion_status: $completionStatus\n completion_data_string: $completionDataString\n evaluation_grade: $evaluationGrade\n evaluation_points: $evaluationPoints\n ) {\n assignment_completion {\n id\n completion_status\n submitted_at\n evaluation_submitted_at\n evaluation_grade\n evaluation_points\n completion_data\n }\n }\n }\n": types.UpsertAssignmentCompletionDocument,
|
||||||
"\n query assignmentCompletionQuery(\n $assignmentId: ID!\n $courseSessionId: ID!\n $learningContentId: ID\n $assignmentUserId: ID\n ) {\n assignment(id: $assignmentId) {\n assignment_type\n content_type\n effort_required\n evaluation_description\n evaluation_document_url\n evaluation_tasks\n id\n intro_text\n performance_objectives\n slug\n tasks\n title\n translation_key\n }\n assignment_completion(\n assignment_id: $assignmentId\n course_session_id: $courseSessionId\n assignment_user_id: $assignmentUserId\n learning_content_page_id: $learningContentId\n ) {\n id\n completion_status\n submitted_at\n evaluation_submitted_at\n evaluation_user {\n id\n }\n assignment_user {\n id\n }\n evaluation_grade\n evaluation_points\n completion_data\n }\n }\n": types.AssignmentCompletionQueryDocument,
|
"\n query assignmentCompletionQuery(\n $assignmentId: ID!\n $courseSessionId: ID!\n $learningContentId: ID\n $assignmentUserId: UUID\n ) {\n assignment(id: $assignmentId) {\n assignment_type\n content_type\n effort_required\n evaluation_description\n evaluation_document_url\n evaluation_tasks\n id\n intro_text\n performance_objectives\n slug\n tasks\n title\n translation_key\n }\n assignment_completion(\n assignment_id: $assignmentId\n course_session_id: $courseSessionId\n assignment_user_id: $assignmentUserId\n learning_content_page_id: $learningContentId\n ) {\n id\n completion_status\n submitted_at\n evaluation_submitted_at\n evaluation_user {\n id\n }\n assignment_user {\n id\n }\n evaluation_grade\n evaluation_points\n completion_data\n }\n }\n": types.AssignmentCompletionQueryDocument,
|
||||||
"\n query courseQuery($courseId: Int!) {\n course(id: $courseId) {\n id\n slug\n title\n category_name\n learning_path {\n id\n }\n }\n }\n": types.CourseQueryDocument,
|
"\n query courseQuery($courseId: Int!) {\n course(id: $courseId) {\n id\n slug\n title\n category_name\n learning_path {\n id\n }\n }\n }\n": types.CourseQueryDocument,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -40,11 +40,11 @@ export function graphql(source: "\n mutation SendFeedbackMutation($input: SendF
|
||||||
/**
|
/**
|
||||||
* The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
* The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
||||||
*/
|
*/
|
||||||
export function graphql(source: "\n mutation UpsertAssignmentCompletion(\n $assignmentId: ID!\n $courseSessionId: ID!\n $learningContentId: ID\n $assignmentUserId: ID\n $completionStatus: AssignmentCompletionStatus!\n $completionDataString: String!\n $evaluationGrade: Float\n $evaluationPoints: Float\n ) {\n upsert_assignment_completion(\n assignment_id: $assignmentId\n course_session_id: $courseSessionId\n learning_content_page_id: $learningContentId\n assignment_user_id: $assignmentUserId\n completion_status: $completionStatus\n completion_data_string: $completionDataString\n evaluation_grade: $evaluationGrade\n evaluation_points: $evaluationPoints\n ) {\n assignment_completion {\n id\n completion_status\n submitted_at\n evaluation_submitted_at\n evaluation_grade\n evaluation_points\n completion_data\n }\n }\n }\n"): (typeof documents)["\n mutation UpsertAssignmentCompletion(\n $assignmentId: ID!\n $courseSessionId: ID!\n $learningContentId: ID\n $assignmentUserId: ID\n $completionStatus: AssignmentCompletionStatus!\n $completionDataString: String!\n $evaluationGrade: Float\n $evaluationPoints: Float\n ) {\n upsert_assignment_completion(\n assignment_id: $assignmentId\n course_session_id: $courseSessionId\n learning_content_page_id: $learningContentId\n assignment_user_id: $assignmentUserId\n completion_status: $completionStatus\n completion_data_string: $completionDataString\n evaluation_grade: $evaluationGrade\n evaluation_points: $evaluationPoints\n ) {\n assignment_completion {\n id\n completion_status\n submitted_at\n evaluation_submitted_at\n evaluation_grade\n evaluation_points\n completion_data\n }\n }\n }\n"];
|
export function graphql(source: "\n mutation UpsertAssignmentCompletion(\n $assignmentId: ID!\n $courseSessionId: ID!\n $learningContentId: ID\n $assignmentUserId: UUID\n $completionStatus: AssignmentCompletionStatus!\n $completionDataString: String!\n $evaluationGrade: Float\n $evaluationPoints: Float\n ) {\n upsert_assignment_completion(\n assignment_id: $assignmentId\n course_session_id: $courseSessionId\n learning_content_page_id: $learningContentId\n assignment_user_id: $assignmentUserId\n completion_status: $completionStatus\n completion_data_string: $completionDataString\n evaluation_grade: $evaluationGrade\n evaluation_points: $evaluationPoints\n ) {\n assignment_completion {\n id\n completion_status\n submitted_at\n evaluation_submitted_at\n evaluation_grade\n evaluation_points\n completion_data\n }\n }\n }\n"): (typeof documents)["\n mutation UpsertAssignmentCompletion(\n $assignmentId: ID!\n $courseSessionId: ID!\n $learningContentId: ID\n $assignmentUserId: UUID\n $completionStatus: AssignmentCompletionStatus!\n $completionDataString: String!\n $evaluationGrade: Float\n $evaluationPoints: Float\n ) {\n upsert_assignment_completion(\n assignment_id: $assignmentId\n course_session_id: $courseSessionId\n learning_content_page_id: $learningContentId\n assignment_user_id: $assignmentUserId\n completion_status: $completionStatus\n completion_data_string: $completionDataString\n evaluation_grade: $evaluationGrade\n evaluation_points: $evaluationPoints\n ) {\n assignment_completion {\n id\n completion_status\n submitted_at\n evaluation_submitted_at\n evaluation_grade\n evaluation_points\n completion_data\n }\n }\n }\n"];
|
||||||
/**
|
/**
|
||||||
* The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
* The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
||||||
*/
|
*/
|
||||||
export function graphql(source: "\n query assignmentCompletionQuery(\n $assignmentId: ID!\n $courseSessionId: ID!\n $learningContentId: ID\n $assignmentUserId: ID\n ) {\n assignment(id: $assignmentId) {\n assignment_type\n content_type\n effort_required\n evaluation_description\n evaluation_document_url\n evaluation_tasks\n id\n intro_text\n performance_objectives\n slug\n tasks\n title\n translation_key\n }\n assignment_completion(\n assignment_id: $assignmentId\n course_session_id: $courseSessionId\n assignment_user_id: $assignmentUserId\n learning_content_page_id: $learningContentId\n ) {\n id\n completion_status\n submitted_at\n evaluation_submitted_at\n evaluation_user {\n id\n }\n assignment_user {\n id\n }\n evaluation_grade\n evaluation_points\n completion_data\n }\n }\n"): (typeof documents)["\n query assignmentCompletionQuery(\n $assignmentId: ID!\n $courseSessionId: ID!\n $learningContentId: ID\n $assignmentUserId: ID\n ) {\n assignment(id: $assignmentId) {\n assignment_type\n content_type\n effort_required\n evaluation_description\n evaluation_document_url\n evaluation_tasks\n id\n intro_text\n performance_objectives\n slug\n tasks\n title\n translation_key\n }\n assignment_completion(\n assignment_id: $assignmentId\n course_session_id: $courseSessionId\n assignment_user_id: $assignmentUserId\n learning_content_page_id: $learningContentId\n ) {\n id\n completion_status\n submitted_at\n evaluation_submitted_at\n evaluation_user {\n id\n }\n assignment_user {\n id\n }\n evaluation_grade\n evaluation_points\n completion_data\n }\n }\n"];
|
export function graphql(source: "\n query assignmentCompletionQuery(\n $assignmentId: ID!\n $courseSessionId: ID!\n $learningContentId: ID\n $assignmentUserId: UUID\n ) {\n assignment(id: $assignmentId) {\n assignment_type\n content_type\n effort_required\n evaluation_description\n evaluation_document_url\n evaluation_tasks\n id\n intro_text\n performance_objectives\n slug\n tasks\n title\n translation_key\n }\n assignment_completion(\n assignment_id: $assignmentId\n course_session_id: $courseSessionId\n assignment_user_id: $assignmentUserId\n learning_content_page_id: $learningContentId\n ) {\n id\n completion_status\n submitted_at\n evaluation_submitted_at\n evaluation_user {\n id\n }\n assignment_user {\n id\n }\n evaluation_grade\n evaluation_points\n completion_data\n }\n }\n"): (typeof documents)["\n query assignmentCompletionQuery(\n $assignmentId: ID!\n $courseSessionId: ID!\n $learningContentId: ID\n $assignmentUserId: UUID\n ) {\n assignment(id: $assignmentId) {\n assignment_type\n content_type\n effort_required\n evaluation_description\n evaluation_document_url\n evaluation_tasks\n id\n intro_text\n performance_objectives\n slug\n tasks\n title\n translation_key\n }\n assignment_completion(\n assignment_id: $assignmentId\n course_session_id: $courseSessionId\n assignment_user_id: $assignmentUserId\n learning_content_page_id: $learningContentId\n ) {\n id\n completion_status\n submitted_at\n evaluation_submitted_at\n evaluation_user {\n id\n }\n assignment_user {\n id\n }\n evaluation_grade\n evaluation_points\n completion_data\n }\n }\n"];
|
||||||
/**
|
/**
|
||||||
* The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
* The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -34,6 +34,11 @@ export type Scalars = {
|
||||||
* schema (one of the key benefits of GraphQL).
|
* schema (one of the key benefits of GraphQL).
|
||||||
*/
|
*/
|
||||||
JSONString: { input: any; output: any; }
|
JSONString: { input: any; output: any; }
|
||||||
|
/**
|
||||||
|
* Leverages the internal Python implementation of UUID (uuid.UUID) to provide native UUID objects
|
||||||
|
* in fields, resolvers and input.
|
||||||
|
*/
|
||||||
|
UUID: { input: any; output: any; }
|
||||||
};
|
};
|
||||||
|
|
||||||
/** An enumeration. */
|
/** An enumeration. */
|
||||||
|
|
@ -73,7 +78,7 @@ export type AssignmentCompletionObjectType = {
|
||||||
evaluation_points?: Maybe<Scalars['Float']['output']>;
|
evaluation_points?: Maybe<Scalars['Float']['output']>;
|
||||||
evaluation_submitted_at?: Maybe<Scalars['DateTime']['output']>;
|
evaluation_submitted_at?: Maybe<Scalars['DateTime']['output']>;
|
||||||
evaluation_user?: Maybe<UserType>;
|
evaluation_user?: Maybe<UserType>;
|
||||||
id: Scalars['ID']['output'];
|
id: Scalars['UUID']['output'];
|
||||||
learning_content_page_id?: Maybe<Scalars['ID']['output']>;
|
learning_content_page_id?: Maybe<Scalars['ID']['output']>;
|
||||||
submitted_at?: Maybe<Scalars['DateTime']['output']>;
|
submitted_at?: Maybe<Scalars['DateTime']['output']>;
|
||||||
updated_at: Scalars['DateTime']['output'];
|
updated_at: Scalars['DateTime']['output'];
|
||||||
|
|
@ -116,7 +121,7 @@ export type AttendanceCourseUserMutation = {
|
||||||
|
|
||||||
export type AttendanceUserInputType = {
|
export type AttendanceUserInputType = {
|
||||||
status: AttendanceUserStatus;
|
status: AttendanceUserStatus;
|
||||||
user_id: Scalars['ID']['input'];
|
user_id: Scalars['UUID']['input'];
|
||||||
};
|
};
|
||||||
|
|
||||||
/** An enumeration. */
|
/** An enumeration. */
|
||||||
|
|
@ -130,7 +135,7 @@ export type AttendanceUserType = {
|
||||||
first_name?: Maybe<Scalars['String']['output']>;
|
first_name?: Maybe<Scalars['String']['output']>;
|
||||||
last_name?: Maybe<Scalars['String']['output']>;
|
last_name?: Maybe<Scalars['String']['output']>;
|
||||||
status: AttendanceUserStatus;
|
status: AttendanceUserStatus;
|
||||||
user_id: Scalars['ID']['output'];
|
user_id: Scalars['UUID']['output'];
|
||||||
};
|
};
|
||||||
|
|
||||||
/** An enumeration. */
|
/** An enumeration. */
|
||||||
|
|
@ -242,7 +247,7 @@ export type MutationUpdateCourseSessionAttendanceCourseUsersArgs = {
|
||||||
|
|
||||||
export type MutationUpsertAssignmentCompletionArgs = {
|
export type MutationUpsertAssignmentCompletionArgs = {
|
||||||
assignment_id: Scalars['ID']['input'];
|
assignment_id: Scalars['ID']['input'];
|
||||||
assignment_user_id?: InputMaybe<Scalars['ID']['input']>;
|
assignment_user_id?: InputMaybe<Scalars['UUID']['input']>;
|
||||||
completion_data_string?: InputMaybe<Scalars['String']['input']>;
|
completion_data_string?: InputMaybe<Scalars['String']['input']>;
|
||||||
completion_status?: InputMaybe<AssignmentCompletionStatus>;
|
completion_status?: InputMaybe<AssignmentCompletionStatus>;
|
||||||
course_session_id: Scalars['ID']['input'];
|
course_session_id: Scalars['ID']['input'];
|
||||||
|
|
@ -274,7 +279,7 @@ export type QueryAssignmentArgs = {
|
||||||
|
|
||||||
export type QueryAssignmentCompletionArgs = {
|
export type QueryAssignmentCompletionArgs = {
|
||||||
assignment_id: Scalars['ID']['input'];
|
assignment_id: Scalars['ID']['input'];
|
||||||
assignment_user_id?: InputMaybe<Scalars['ID']['input']>;
|
assignment_user_id?: InputMaybe<Scalars['UUID']['input']>;
|
||||||
course_session_id: Scalars['ID']['input'];
|
course_session_id: Scalars['ID']['input'];
|
||||||
learning_content_page_id?: InputMaybe<Scalars['ID']['input']>;
|
learning_content_page_id?: InputMaybe<Scalars['ID']['input']>;
|
||||||
};
|
};
|
||||||
|
|
@ -310,7 +315,7 @@ export type UserType = {
|
||||||
avatar_url: Scalars['String']['output'];
|
avatar_url: Scalars['String']['output'];
|
||||||
email: Scalars['String']['output'];
|
email: Scalars['String']['output'];
|
||||||
first_name: Scalars['String']['output'];
|
first_name: Scalars['String']['output'];
|
||||||
id: Scalars['ID']['output'];
|
id: Scalars['UUID']['output'];
|
||||||
language: CoreUserLanguageChoices;
|
language: CoreUserLanguageChoices;
|
||||||
last_name: Scalars['String']['output'];
|
last_name: Scalars['String']['output'];
|
||||||
/** Erforderlich. 150 Zeichen oder weniger. Nur Buchstaben, Ziffern und @/./+/-/_. */
|
/** Erforderlich. 150 Zeichen oder weniger. Nur Buchstaben, Ziffern und @/./+/-/_. */
|
||||||
|
|
@ -328,7 +333,7 @@ export type UpsertAssignmentCompletionMutationVariables = Exact<{
|
||||||
assignmentId: Scalars['ID']['input'];
|
assignmentId: Scalars['ID']['input'];
|
||||||
courseSessionId: Scalars['ID']['input'];
|
courseSessionId: Scalars['ID']['input'];
|
||||||
learningContentId?: InputMaybe<Scalars['ID']['input']>;
|
learningContentId?: InputMaybe<Scalars['ID']['input']>;
|
||||||
assignmentUserId?: InputMaybe<Scalars['ID']['input']>;
|
assignmentUserId?: InputMaybe<Scalars['UUID']['input']>;
|
||||||
completionStatus: AssignmentCompletionStatus;
|
completionStatus: AssignmentCompletionStatus;
|
||||||
completionDataString: Scalars['String']['input'];
|
completionDataString: Scalars['String']['input'];
|
||||||
evaluationGrade?: InputMaybe<Scalars['Float']['input']>;
|
evaluationGrade?: InputMaybe<Scalars['Float']['input']>;
|
||||||
|
|
@ -336,17 +341,17 @@ export type UpsertAssignmentCompletionMutationVariables = Exact<{
|
||||||
}>;
|
}>;
|
||||||
|
|
||||||
|
|
||||||
export type UpsertAssignmentCompletionMutation = { __typename?: 'Mutation', upsert_assignment_completion?: { __typename?: 'AssignmentCompletionMutation', assignment_completion?: { __typename?: 'AssignmentCompletionObjectType', id: string, completion_status: AssignmentAssignmentCompletionCompletionStatusChoices, submitted_at?: any | null, evaluation_submitted_at?: any | null, evaluation_grade?: number | null, evaluation_points?: number | null, completion_data?: any | null } | null } | null };
|
export type UpsertAssignmentCompletionMutation = { __typename?: 'Mutation', upsert_assignment_completion?: { __typename?: 'AssignmentCompletionMutation', assignment_completion?: { __typename?: 'AssignmentCompletionObjectType', id: any, completion_status: AssignmentAssignmentCompletionCompletionStatusChoices, submitted_at?: any | null, evaluation_submitted_at?: any | null, evaluation_grade?: number | null, evaluation_points?: number | null, completion_data?: any | null } | null } | null };
|
||||||
|
|
||||||
export type AssignmentCompletionQueryQueryVariables = Exact<{
|
export type AssignmentCompletionQueryQueryVariables = Exact<{
|
||||||
assignmentId: Scalars['ID']['input'];
|
assignmentId: Scalars['ID']['input'];
|
||||||
courseSessionId: Scalars['ID']['input'];
|
courseSessionId: Scalars['ID']['input'];
|
||||||
learningContentId?: InputMaybe<Scalars['ID']['input']>;
|
learningContentId?: InputMaybe<Scalars['ID']['input']>;
|
||||||
assignmentUserId?: InputMaybe<Scalars['ID']['input']>;
|
assignmentUserId?: InputMaybe<Scalars['UUID']['input']>;
|
||||||
}>;
|
}>;
|
||||||
|
|
||||||
|
|
||||||
export type AssignmentCompletionQueryQuery = { __typename?: 'Query', assignment?: { __typename?: 'AssignmentObjectType', assignment_type: AssignmentAssignmentAssignmentTypeChoices, content_type?: string | null, effort_required: string, evaluation_description: string, evaluation_document_url: string, evaluation_tasks?: any | null, id?: string | null, intro_text: string, performance_objectives?: any | null, slug?: string | null, tasks?: any | null, title?: string | null, translation_key?: string | null } | null, assignment_completion?: { __typename?: 'AssignmentCompletionObjectType', id: string, completion_status: AssignmentAssignmentCompletionCompletionStatusChoices, submitted_at?: any | null, evaluation_submitted_at?: any | null, evaluation_grade?: number | null, evaluation_points?: number | null, completion_data?: any | null, evaluation_user?: { __typename?: 'UserType', id: string } | null, assignment_user: { __typename?: 'UserType', id: string } } | null };
|
export type AssignmentCompletionQueryQuery = { __typename?: 'Query', assignment?: { __typename?: 'AssignmentObjectType', assignment_type: AssignmentAssignmentAssignmentTypeChoices, content_type?: string | null, effort_required: string, evaluation_description: string, evaluation_document_url: string, evaluation_tasks?: any | null, id?: string | null, intro_text: string, performance_objectives?: any | null, slug?: string | null, tasks?: any | null, title?: string | null, translation_key?: string | null } | null, assignment_completion?: { __typename?: 'AssignmentCompletionObjectType', id: any, completion_status: AssignmentAssignmentCompletionCompletionStatusChoices, submitted_at?: any | null, evaluation_submitted_at?: any | null, evaluation_grade?: number | null, evaluation_points?: number | null, completion_data?: any | null, evaluation_user?: { __typename?: 'UserType', id: any } | null, assignment_user: { __typename?: 'UserType', id: any } } | null };
|
||||||
|
|
||||||
export type CourseQueryQueryVariables = Exact<{
|
export type CourseQueryQueryVariables = Exact<{
|
||||||
courseId: Scalars['Int']['input'];
|
courseId: Scalars['Int']['input'];
|
||||||
|
|
@ -357,6 +362,6 @@ export type CourseQueryQuery = { __typename?: 'Query', course?: { __typename?: '
|
||||||
|
|
||||||
|
|
||||||
export const SendFeedbackMutationDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"SendFeedbackMutation"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"input"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"SendFeedbackInput"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"send_feedback"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"input"},"value":{"kind":"Variable","name":{"kind":"Name","value":"input"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"feedback_response"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"Field","name":{"kind":"Name","value":"errors"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"field"}},{"kind":"Field","name":{"kind":"Name","value":"messages"}}]}}]}}]}}]} as unknown as DocumentNode<SendFeedbackMutationMutation, SendFeedbackMutationMutationVariables>;
|
export const SendFeedbackMutationDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"SendFeedbackMutation"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"input"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"SendFeedbackInput"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"send_feedback"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"input"},"value":{"kind":"Variable","name":{"kind":"Name","value":"input"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"feedback_response"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"Field","name":{"kind":"Name","value":"errors"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"field"}},{"kind":"Field","name":{"kind":"Name","value":"messages"}}]}}]}}]}}]} as unknown as DocumentNode<SendFeedbackMutationMutation, SendFeedbackMutationMutationVariables>;
|
||||||
export const UpsertAssignmentCompletionDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"UpsertAssignmentCompletion"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"assignmentId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"courseSessionId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"learningContentId"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"assignmentUserId"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"completionStatus"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"AssignmentCompletionStatus"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"completionDataString"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"evaluationGrade"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"evaluationPoints"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"upsert_assignment_completion"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"assignment_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"assignmentId"}}},{"kind":"Argument","name":{"kind":"Name","value":"course_session_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"courseSessionId"}}},{"kind":"Argument","name":{"kind":"Name","value":"learning_content_page_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"learningContentId"}}},{"kind":"Argument","name":{"kind":"Name","value":"assignment_user_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"assignmentUserId"}}},{"kind":"Argument","name":{"kind":"Name","value":"completion_status"},"value":{"kind":"Variable","name":{"kind":"Name","value":"completionStatus"}}},{"kind":"Argument","name":{"kind":"Name","value":"completion_data_string"},"value":{"kind":"Variable","name":{"kind":"Name","value":"completionDataString"}}},{"kind":"Argument","name":{"kind":"Name","value":"evaluation_grade"},"value":{"kind":"Variable","name":{"kind":"Name","value":"evaluationGrade"}}},{"kind":"Argument","name":{"kind":"Name","value":"evaluation_points"},"value":{"kind":"Variable","name":{"kind":"Name","value":"evaluationPoints"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"assignment_completion"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"completion_status"}},{"kind":"Field","name":{"kind":"Name","value":"submitted_at"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_submitted_at"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_grade"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_points"}},{"kind":"Field","name":{"kind":"Name","value":"completion_data"}}]}}]}}]}}]} as unknown as DocumentNode<UpsertAssignmentCompletionMutation, UpsertAssignmentCompletionMutationVariables>;
|
export const UpsertAssignmentCompletionDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"mutation","name":{"kind":"Name","value":"UpsertAssignmentCompletion"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"assignmentId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"courseSessionId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"learningContentId"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"assignmentUserId"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"UUID"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"completionStatus"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"AssignmentCompletionStatus"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"completionDataString"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"evaluationGrade"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"evaluationPoints"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"Float"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"upsert_assignment_completion"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"assignment_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"assignmentId"}}},{"kind":"Argument","name":{"kind":"Name","value":"course_session_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"courseSessionId"}}},{"kind":"Argument","name":{"kind":"Name","value":"learning_content_page_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"learningContentId"}}},{"kind":"Argument","name":{"kind":"Name","value":"assignment_user_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"assignmentUserId"}}},{"kind":"Argument","name":{"kind":"Name","value":"completion_status"},"value":{"kind":"Variable","name":{"kind":"Name","value":"completionStatus"}}},{"kind":"Argument","name":{"kind":"Name","value":"completion_data_string"},"value":{"kind":"Variable","name":{"kind":"Name","value":"completionDataString"}}},{"kind":"Argument","name":{"kind":"Name","value":"evaluation_grade"},"value":{"kind":"Variable","name":{"kind":"Name","value":"evaluationGrade"}}},{"kind":"Argument","name":{"kind":"Name","value":"evaluation_points"},"value":{"kind":"Variable","name":{"kind":"Name","value":"evaluationPoints"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"assignment_completion"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"completion_status"}},{"kind":"Field","name":{"kind":"Name","value":"submitted_at"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_submitted_at"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_grade"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_points"}},{"kind":"Field","name":{"kind":"Name","value":"completion_data"}}]}}]}}]}}]} as unknown as DocumentNode<UpsertAssignmentCompletionMutation, UpsertAssignmentCompletionMutationVariables>;
|
||||||
export const AssignmentCompletionQueryDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"assignmentCompletionQuery"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"assignmentId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"courseSessionId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"learningContentId"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"assignmentUserId"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"assignment"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"assignmentId"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"assignment_type"}},{"kind":"Field","name":{"kind":"Name","value":"content_type"}},{"kind":"Field","name":{"kind":"Name","value":"effort_required"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_description"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_document_url"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_tasks"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"intro_text"}},{"kind":"Field","name":{"kind":"Name","value":"performance_objectives"}},{"kind":"Field","name":{"kind":"Name","value":"slug"}},{"kind":"Field","name":{"kind":"Name","value":"tasks"}},{"kind":"Field","name":{"kind":"Name","value":"title"}},{"kind":"Field","name":{"kind":"Name","value":"translation_key"}}]}},{"kind":"Field","name":{"kind":"Name","value":"assignment_completion"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"assignment_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"assignmentId"}}},{"kind":"Argument","name":{"kind":"Name","value":"course_session_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"courseSessionId"}}},{"kind":"Argument","name":{"kind":"Name","value":"assignment_user_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"assignmentUserId"}}},{"kind":"Argument","name":{"kind":"Name","value":"learning_content_page_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"learningContentId"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"completion_status"}},{"kind":"Field","name":{"kind":"Name","value":"submitted_at"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_submitted_at"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_user"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"Field","name":{"kind":"Name","value":"assignment_user"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_grade"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_points"}},{"kind":"Field","name":{"kind":"Name","value":"completion_data"}}]}}]}}]} as unknown as DocumentNode<AssignmentCompletionQueryQuery, AssignmentCompletionQueryQueryVariables>;
|
export const AssignmentCompletionQueryDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"assignmentCompletionQuery"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"assignmentId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"courseSessionId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"learningContentId"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"ID"}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"assignmentUserId"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"UUID"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"assignment"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"assignmentId"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"assignment_type"}},{"kind":"Field","name":{"kind":"Name","value":"content_type"}},{"kind":"Field","name":{"kind":"Name","value":"effort_required"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_description"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_document_url"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_tasks"}},{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"intro_text"}},{"kind":"Field","name":{"kind":"Name","value":"performance_objectives"}},{"kind":"Field","name":{"kind":"Name","value":"slug"}},{"kind":"Field","name":{"kind":"Name","value":"tasks"}},{"kind":"Field","name":{"kind":"Name","value":"title"}},{"kind":"Field","name":{"kind":"Name","value":"translation_key"}}]}},{"kind":"Field","name":{"kind":"Name","value":"assignment_completion"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"assignment_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"assignmentId"}}},{"kind":"Argument","name":{"kind":"Name","value":"course_session_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"courseSessionId"}}},{"kind":"Argument","name":{"kind":"Name","value":"assignment_user_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"assignmentUserId"}}},{"kind":"Argument","name":{"kind":"Name","value":"learning_content_page_id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"learningContentId"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"completion_status"}},{"kind":"Field","name":{"kind":"Name","value":"submitted_at"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_submitted_at"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_user"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"Field","name":{"kind":"Name","value":"assignment_user"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_grade"}},{"kind":"Field","name":{"kind":"Name","value":"evaluation_points"}},{"kind":"Field","name":{"kind":"Name","value":"completion_data"}}]}}]}}]} as unknown as DocumentNode<AssignmentCompletionQueryQuery, AssignmentCompletionQueryQueryVariables>;
|
||||||
export const CourseQueryDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"courseQuery"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"courseId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"course"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"courseId"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"slug"}},{"kind":"Field","name":{"kind":"Name","value":"title"}},{"kind":"Field","name":{"kind":"Name","value":"category_name"}},{"kind":"Field","name":{"kind":"Name","value":"learning_path"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}}]}}]}}]} as unknown as DocumentNode<CourseQueryQuery, CourseQueryQueryVariables>;
|
export const CourseQueryDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"courseQuery"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"courseId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"Int"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"course"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"id"},"value":{"kind":"Variable","name":{"kind":"Name","value":"courseId"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}},{"kind":"Field","name":{"kind":"Name","value":"slug"}},{"kind":"Field","name":{"kind":"Name","value":"title"}},{"kind":"Field","name":{"kind":"Name","value":"category_name"}},{"kind":"Field","name":{"kind":"Name","value":"learning_path"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"id"}}]}}]}}]}}]} as unknown as DocumentNode<CourseQueryQuery, CourseQueryQueryVariables>;
|
||||||
|
|
@ -2,7 +2,7 @@ type Query {
|
||||||
course_session_attendance_course(id: ID!, assignment_user_id: ID): CourseSessionAttendanceCourseType
|
course_session_attendance_course(id: ID!, assignment_user_id: ID): CourseSessionAttendanceCourseType
|
||||||
course(id: Int): CourseType
|
course(id: Int): CourseType
|
||||||
assignment(id: ID, slug: String): AssignmentObjectType
|
assignment(id: ID, slug: String): AssignmentObjectType
|
||||||
assignment_completion(assignment_id: ID!, course_session_id: ID!, learning_content_page_id: ID, assignment_user_id: ID): AssignmentCompletionObjectType
|
assignment_completion(assignment_id: ID!, course_session_id: ID!, learning_content_page_id: ID, assignment_user_id: UUID): AssignmentCompletionObjectType
|
||||||
}
|
}
|
||||||
|
|
||||||
type CourseSessionAttendanceCourseType {
|
type CourseSessionAttendanceCourseType {
|
||||||
|
|
@ -25,13 +25,19 @@ value as specified by
|
||||||
scalar DateTime
|
scalar DateTime
|
||||||
|
|
||||||
type AttendanceUserType {
|
type AttendanceUserType {
|
||||||
user_id: ID!
|
user_id: UUID!
|
||||||
status: AttendanceUserStatus!
|
status: AttendanceUserStatus!
|
||||||
first_name: String
|
first_name: String
|
||||||
last_name: String
|
last_name: String
|
||||||
email: String
|
email: String
|
||||||
}
|
}
|
||||||
|
|
||||||
|
"""
|
||||||
|
Leverages the internal Python implementation of UUID (uuid.UUID) to provide native UUID objects
|
||||||
|
in fields, resolvers and input.
|
||||||
|
"""
|
||||||
|
scalar UUID
|
||||||
|
|
||||||
"""An enumeration."""
|
"""An enumeration."""
|
||||||
enum AttendanceUserStatus {
|
enum AttendanceUserStatus {
|
||||||
PRESENT
|
PRESENT
|
||||||
|
|
@ -98,14 +104,13 @@ interface CoursePageInterface {
|
||||||
}
|
}
|
||||||
|
|
||||||
type UserType {
|
type UserType {
|
||||||
id: ID!
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Erforderlich. 150 Zeichen oder weniger. Nur Buchstaben, Ziffern und @/./+/-/_.
|
Erforderlich. 150 Zeichen oder weniger. Nur Buchstaben, Ziffern und @/./+/-/_.
|
||||||
"""
|
"""
|
||||||
username: String!
|
username: String!
|
||||||
first_name: String!
|
first_name: String!
|
||||||
last_name: String!
|
last_name: String!
|
||||||
|
id: UUID!
|
||||||
avatar_url: String!
|
avatar_url: String!
|
||||||
email: String!
|
email: String!
|
||||||
language: CoreUserLanguageChoices!
|
language: CoreUserLanguageChoices!
|
||||||
|
|
@ -164,7 +169,7 @@ enum AssignmentAssignmentAssignmentTypeChoices {
|
||||||
scalar JSONStreamField
|
scalar JSONStreamField
|
||||||
|
|
||||||
type AssignmentCompletionObjectType {
|
type AssignmentCompletionObjectType {
|
||||||
id: ID!
|
id: UUID!
|
||||||
created_at: DateTime!
|
created_at: DateTime!
|
||||||
updated_at: DateTime!
|
updated_at: DateTime!
|
||||||
submitted_at: DateTime
|
submitted_at: DateTime
|
||||||
|
|
@ -213,7 +218,7 @@ scalar JSONString
|
||||||
type Mutation {
|
type Mutation {
|
||||||
send_feedback(input: SendFeedbackInput!): SendFeedbackPayload
|
send_feedback(input: SendFeedbackInput!): SendFeedbackPayload
|
||||||
update_course_session_attendance_course_users(attendance_user_list: [AttendanceUserInputType]!, id: ID!): AttendanceCourseUserMutation
|
update_course_session_attendance_course_users(attendance_user_list: [AttendanceUserInputType]!, id: ID!): AttendanceCourseUserMutation
|
||||||
upsert_assignment_completion(assignment_id: ID!, assignment_user_id: ID, completion_data_string: String, completion_status: AssignmentCompletionStatus, course_session_id: ID!, evaluation_grade: Float, evaluation_points: Float, learning_content_page_id: ID): AssignmentCompletionMutation
|
upsert_assignment_completion(assignment_id: ID!, assignment_user_id: UUID, completion_data_string: String, completion_status: AssignmentCompletionStatus, course_session_id: ID!, evaluation_grade: Float, evaluation_points: Float, learning_content_page_id: ID): AssignmentCompletionMutation
|
||||||
}
|
}
|
||||||
|
|
||||||
type SendFeedbackPayload {
|
type SendFeedbackPayload {
|
||||||
|
|
@ -254,7 +259,7 @@ type AttendanceCourseUserMutation {
|
||||||
}
|
}
|
||||||
|
|
||||||
input AttendanceUserInputType {
|
input AttendanceUserInputType {
|
||||||
user_id: ID!
|
user_id: UUID!
|
||||||
status: AttendanceUserStatus!
|
status: AttendanceUserStatus!
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -29,4 +29,5 @@ export const Query = "Query";
|
||||||
export const SendFeedbackInput = "SendFeedbackInput";
|
export const SendFeedbackInput = "SendFeedbackInput";
|
||||||
export const SendFeedbackPayload = "SendFeedbackPayload";
|
export const SendFeedbackPayload = "SendFeedbackPayload";
|
||||||
export const String = "String";
|
export const String = "String";
|
||||||
|
export const UUID = "UUID";
|
||||||
export const UserType = "UserType";
|
export const UserType = "UserType";
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ export const UPSERT_ASSIGNMENT_COMPLETION_MUTATION = graphql(`
|
||||||
$assignmentId: ID!
|
$assignmentId: ID!
|
||||||
$courseSessionId: ID!
|
$courseSessionId: ID!
|
||||||
$learningContentId: ID
|
$learningContentId: ID
|
||||||
$assignmentUserId: ID
|
$assignmentUserId: UUID
|
||||||
$completionStatus: AssignmentCompletionStatus!
|
$completionStatus: AssignmentCompletionStatus!
|
||||||
$completionDataString: String!
|
$completionDataString: String!
|
||||||
$evaluationGrade: Float
|
$evaluationGrade: Float
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ export const ASSIGNMENT_COMPLETION_QUERY = graphql(`
|
||||||
$assignmentId: ID!
|
$assignmentId: ID!
|
||||||
$courseSessionId: ID!
|
$courseSessionId: ID!
|
||||||
$learningContentId: ID
|
$learningContentId: ID
|
||||||
$assignmentUserId: ID
|
$assignmentUserId: UUID
|
||||||
) {
|
) {
|
||||||
assignment(id: $assignmentId) {
|
assignment(id: $assignmentId) {
|
||||||
assignment_type
|
assignment_type
|
||||||
|
|
|
||||||
|
|
@ -80,7 +80,13 @@ Cypress.Commands.add("manageShellCommand", (command) => {
|
||||||
return cy.manageCommand(`shell -c '${command}'`);
|
return cy.manageCommand(`shell -c '${command}'`);
|
||||||
});
|
});
|
||||||
|
|
||||||
function loadObjectJson(key, value, djangoModelPath, serializerModelPath) {
|
function loadObjectJson(
|
||||||
|
key,
|
||||||
|
value,
|
||||||
|
djangoModelPath,
|
||||||
|
serializerModelPath,
|
||||||
|
valueAsString = false
|
||||||
|
) {
|
||||||
const djangoModel = _.last(djangoModelPath.split("."));
|
const djangoModel = _.last(djangoModelPath.split("."));
|
||||||
const djangoModelImportPath = _.initial(djangoModelPath.split(".")).join(".");
|
const djangoModelImportPath = _.initial(djangoModelPath.split(".")).join(".");
|
||||||
const serializerModel = _.last(serializerModelPath.split("."));
|
const serializerModel = _.last(serializerModelPath.split("."));
|
||||||
|
|
@ -89,10 +95,18 @@ function loadObjectJson(key, value, djangoModelPath, serializerModelPath) {
|
||||||
).join(".");
|
).join(".");
|
||||||
|
|
||||||
let filterPart = `${key}=${value}`;
|
let filterPart = `${key}=${value}`;
|
||||||
|
if (valueAsString) {
|
||||||
|
filterPart = `${key}=\\"${value}\\"`;
|
||||||
|
}
|
||||||
|
|
||||||
if (_.isArray(key)) {
|
if (_.isArray(key)) {
|
||||||
filterPart = _.zip(key, value)
|
filterPart = _.zip(key, value)
|
||||||
.map(([k, v]) => {
|
.map(([k, v]) => {
|
||||||
return `${k}=${v}`;
|
if (valueAsString) {
|
||||||
|
return `${k}=\\"${v}\\"`;
|
||||||
|
} else {
|
||||||
|
return `${k}=${v}`;
|
||||||
|
}
|
||||||
})
|
})
|
||||||
.join(",");
|
.join(",");
|
||||||
}
|
}
|
||||||
|
|
@ -116,7 +130,8 @@ Cypress.Commands.add("loadAssignmentCompletion", (key, value) => {
|
||||||
key,
|
key,
|
||||||
value,
|
value,
|
||||||
"vbv_lernwelt.assignment.models.AssignmentCompletion",
|
"vbv_lernwelt.assignment.models.AssignmentCompletion",
|
||||||
"vbv_lernwelt.assignment.serializers.AssignmentCompletionSerializer"
|
"vbv_lernwelt.assignment.serializers.AssignmentCompletionSerializer",
|
||||||
|
true
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -136,15 +151,6 @@ Cypress.Commands.add("makeSelfEvaluation", (answers) => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// Cypress.Commands.add('loadApiClientRequestResponseLog', (key, value) => {
|
|
||||||
// return loadObjectJson(
|
|
||||||
// key,
|
|
||||||
// value,
|
|
||||||
// 'myservice.apps.apiclient.models.ApiClientRequestResponseLog',
|
|
||||||
// 'myservice.apps.apiclient.serializers.ApiClientRequestResponseLogSerializer'
|
|
||||||
// );
|
|
||||||
// });
|
|
||||||
|
|
||||||
Cypress.Commands.add("learningContentMultiLayoutNextStep", () => {
|
Cypress.Commands.add("learningContentMultiLayoutNextStep", () => {
|
||||||
return cy.get('[data-cy="next-step"]').click({ force: true });
|
return cy.get('[data-cy="next-step"]').click({ force: true });
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ class AssignmentCompletionMutation(graphene.Mutation):
|
||||||
assignment_id = graphene.ID(required=True)
|
assignment_id = graphene.ID(required=True)
|
||||||
course_session_id = graphene.ID(required=True)
|
course_session_id = graphene.ID(required=True)
|
||||||
learning_content_page_id = graphene.ID()
|
learning_content_page_id = graphene.ID()
|
||||||
assignment_user_id = graphene.ID()
|
assignment_user_id = graphene.UUID()
|
||||||
|
|
||||||
completion_status = graphene.Argument(
|
completion_status = graphene.Argument(
|
||||||
graphene.Enum.from_enum(AssignmentCompletionStatus)
|
graphene.Enum.from_enum(AssignmentCompletionStatus)
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ class AssignmentQuery(object):
|
||||||
assignment_id=graphene.ID(required=True),
|
assignment_id=graphene.ID(required=True),
|
||||||
course_session_id=graphene.ID(required=True),
|
course_session_id=graphene.ID(required=True),
|
||||||
learning_content_page_id=graphene.ID(required=False),
|
learning_content_page_id=graphene.ID(required=False),
|
||||||
assignment_user_id=graphene.ID(required=False),
|
assignment_user_id=graphene.UUID(required=False),
|
||||||
)
|
)
|
||||||
|
|
||||||
def resolve_assignment_completion(
|
def resolve_assignment_completion(
|
||||||
|
|
|
||||||
|
|
@ -224,7 +224,7 @@ class AttendanceCourseUserMutationTestCase(GraphQLTestCase):
|
||||||
mutation {{
|
mutation {{
|
||||||
upsert_assignment_completion(
|
upsert_assignment_completion(
|
||||||
assignment_id: {self.assignment.id}
|
assignment_id: {self.assignment.id}
|
||||||
assignment_user_id: {self.student.id}
|
assignment_user_id: "{self.student.id}"
|
||||||
course_session_id: {self.course_session.id}
|
course_session_id: {self.course_session.id}
|
||||||
completion_status: EVALUATION_IN_PROGRESS
|
completion_status: EVALUATION_IN_PROGRESS
|
||||||
completion_data_string: "{completion_data_string}"
|
completion_data_string: "{completion_data_string}"
|
||||||
|
|
@ -240,6 +240,7 @@ class AttendanceCourseUserMutationTestCase(GraphQLTestCase):
|
||||||
}}
|
}}
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
print(query)
|
||||||
response = self.query(query)
|
response = self.query(query)
|
||||||
self.assertResponseNoErrors(response)
|
self.assertResponseNoErrors(response)
|
||||||
|
|
||||||
|
|
@ -289,7 +290,7 @@ class AttendanceCourseUserMutationTestCase(GraphQLTestCase):
|
||||||
mutation {{
|
mutation {{
|
||||||
upsert_assignment_completion(
|
upsert_assignment_completion(
|
||||||
assignment_id: {self.assignment.id}
|
assignment_id: {self.assignment.id}
|
||||||
assignment_user_id: {self.student.id}
|
assignment_user_id: "{self.student.id}"
|
||||||
course_session_id: {self.course_session.id}
|
course_session_id: {self.course_session.id}
|
||||||
completion_status: EVALUATION_SUBMITTED
|
completion_status: EVALUATION_SUBMITTED
|
||||||
completion_data_string: "{completion_data_string}"
|
completion_data_string: "{completion_data_string}"
|
||||||
|
|
|
||||||
|
|
@ -146,4 +146,4 @@ class DocumentUploadStartInputSerializer(serializers.Serializer):
|
||||||
|
|
||||||
|
|
||||||
class DocumentUploadFinishInputSerializer(serializers.Serializer):
|
class DocumentUploadFinishInputSerializer(serializers.Serializer):
|
||||||
file_id = serializers.IntegerField()
|
file_id = serializers.UUIDField()
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ logger = structlog.get_logger(__name__)
|
||||||
|
|
||||||
|
|
||||||
class AttendanceUserInputType(graphene.InputObjectType):
|
class AttendanceUserInputType(graphene.InputObjectType):
|
||||||
user_id = graphene.ID(required=True)
|
user_id = graphene.UUID(required=True)
|
||||||
status = graphene.Field(
|
status = graphene.Field(
|
||||||
graphene.Enum.from_enum(AttendanceUserStatus), required=True
|
graphene.Enum.from_enum(AttendanceUserStatus), required=True
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ from vbv_lernwelt.course_session.services.attendance import AttendanceUserStatus
|
||||||
|
|
||||||
|
|
||||||
class AttendanceUserType(graphene.ObjectType):
|
class AttendanceUserType(graphene.ObjectType):
|
||||||
user_id = graphene.ID(required=True)
|
user_id = graphene.UUID(required=True)
|
||||||
status = graphene.Field(
|
status = graphene.Field(
|
||||||
graphene.Enum.from_enum(AttendanceUserStatus), required=True
|
graphene.Enum.from_enum(AttendanceUserStatus), required=True
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ def update_attendance_list(
|
||||||
if u is not None:
|
if u is not None:
|
||||||
result_user_list.append(
|
result_user_list.append(
|
||||||
{
|
{
|
||||||
"user_id": u.id,
|
"user_id": str(u.id),
|
||||||
"status": attendance_user.get(
|
"status": attendance_user.get(
|
||||||
"status", AttendanceUserStatus.PRESENT
|
"status", AttendanceUserStatus.PRESENT
|
||||||
).value,
|
).value,
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
from django.test import TestCase
|
from django.test import TestCase
|
||||||
|
|
||||||
|
from vbv_lernwelt.core.constants import TEST_STUDENT1_USER_ID
|
||||||
from vbv_lernwelt.core.create_default_users import create_default_users
|
from vbv_lernwelt.core.create_default_users import create_default_users
|
||||||
from vbv_lernwelt.core.models import User
|
from vbv_lernwelt.core.models import User
|
||||||
from vbv_lernwelt.course.creators.test_course import create_test_course
|
from vbv_lernwelt.course.creators.test_course import create_test_course
|
||||||
|
|
@ -35,7 +36,7 @@ class AttendanceServicesTestCase(TestCase):
|
||||||
id=self.attendance_course.id
|
id=self.attendance_course.id
|
||||||
)
|
)
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
attendance_course.attendance_user_list[0]["user_id"], student.id
|
attendance_course.attendance_user_list[0]["user_id"], str(student.id)
|
||||||
)
|
)
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
attendance_course.attendance_user_list,
|
attendance_course.attendance_user_list,
|
||||||
|
|
@ -43,7 +44,7 @@ class AttendanceServicesTestCase(TestCase):
|
||||||
{
|
{
|
||||||
"email": "test-student1@example.com",
|
"email": "test-student1@example.com",
|
||||||
"status": "PRESENT",
|
"status": "PRESENT",
|
||||||
"user_id": -21,
|
"user_id": TEST_STUDENT1_USER_ID,
|
||||||
"last_name": "Student1",
|
"last_name": "Student1",
|
||||||
"first_name": "Test",
|
"first_name": "Test",
|
||||||
}
|
}
|
||||||
|
|
@ -68,7 +69,7 @@ class AttendanceServicesTestCase(TestCase):
|
||||||
{
|
{
|
||||||
"email": "test-student1@example.com",
|
"email": "test-student1@example.com",
|
||||||
"status": "PRESENT",
|
"status": "PRESENT",
|
||||||
"user_id": "-21",
|
"user_id": TEST_STUDENT1_USER_ID,
|
||||||
"last_name": "Student1",
|
"last_name": "Student1",
|
||||||
"first_name": "Test",
|
"first_name": "Test",
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -49,8 +49,8 @@ class AttendanceCourseUserMutationTestCase(GraphQLTestCase):
|
||||||
update_course_session_attendance_course_users(
|
update_course_session_attendance_course_users(
|
||||||
id:{self.attendance_course.id},
|
id:{self.attendance_course.id},
|
||||||
attendance_user_list:[
|
attendance_user_list:[
|
||||||
{{user_id: {student.id}, status: PRESENT}},
|
{{user_id: "{student.id}", status: PRESENT}},
|
||||||
{{user_id: "123123123", status: PRESENT}},
|
{{user_id: "3372836c-1c95-4721-881d-5342a60a3bfe", status: PRESENT}},
|
||||||
]
|
]
|
||||||
) {{
|
) {{
|
||||||
course_session_attendance_course {{
|
course_session_attendance_course {{
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
from vbv_lernwelt.course.models import CourseSession
|
from vbv_lernwelt.course.models import CourseSession
|
||||||
from vbv_lernwelt.feedback.factories import FeedbackFactory
|
from vbv_lernwelt.feedback.factories import FeedbackResponseFactory
|
||||||
from vbv_lernwelt.learnpath.models import Circle
|
from vbv_lernwelt.learnpath.models import Circle
|
||||||
|
|
||||||
|
|
||||||
def create_feedback(circle: Circle, course_session: CourseSession, amount: int):
|
def create_feedback(circle: Circle, course_session: CourseSession, amount: int):
|
||||||
for _i in range(amount):
|
for _i in range(amount):
|
||||||
FeedbackFactory(circle=circle, course_session=course_session).save()
|
FeedbackResponseFactory(circle=circle, course_session=course_session).save()
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ from factory.fuzzy import FuzzyChoice, FuzzyInteger
|
||||||
from vbv_lernwelt.feedback.models import FeedbackResponse
|
from vbv_lernwelt.feedback.models import FeedbackResponse
|
||||||
|
|
||||||
|
|
||||||
class FeedbackFactory(DjangoModelFactory):
|
class FeedbackResponseFactory(DjangoModelFactory):
|
||||||
data = Dict(
|
data = Dict(
|
||||||
{
|
{
|
||||||
"satisfaction": FuzzyInteger(2, 4),
|
"satisfaction": FuzzyInteger(2, 4),
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,8 @@ class FeedbackResponse(models.Model):
|
||||||
HUNDRED = 100, "100%"
|
HUNDRED = 100, "100%"
|
||||||
|
|
||||||
def save(self, *args, **kwargs):
|
def save(self, *args, **kwargs):
|
||||||
if not self.id:
|
if self._state.adding:
|
||||||
|
# with `id=UUIDField` it is always set...
|
||||||
course_session_users = CourseSessionUser.objects.filter(
|
course_session_users = CourseSessionUser.objects.filter(
|
||||||
role="EXPERT", course_session=self.course_session, expert=self.circle
|
role="EXPERT", course_session=self.course_session, expert=self.circle
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,8 @@ from vbv_lernwelt.core.models import User
|
||||||
from vbv_lernwelt.course.consts import COURSE_TEST_ID
|
from vbv_lernwelt.course.consts import COURSE_TEST_ID
|
||||||
from vbv_lernwelt.course.creators.test_course import create_test_course
|
from vbv_lernwelt.course.creators.test_course import create_test_course
|
||||||
from vbv_lernwelt.course.models import CourseSession, CourseSessionUser
|
from vbv_lernwelt.course.models import CourseSession, CourseSessionUser
|
||||||
from vbv_lernwelt.feedback.factories import FeedbackFactory
|
from vbv_lernwelt.feedback.factories import FeedbackResponseFactory
|
||||||
|
from vbv_lernwelt.feedback.models import FeedbackResponse
|
||||||
from vbv_lernwelt.learnpath.models import Circle
|
from vbv_lernwelt.learnpath.models import Circle
|
||||||
from vbv_lernwelt.notify.models import Notification
|
from vbv_lernwelt.notify.models import Notification
|
||||||
|
|
||||||
|
|
@ -61,7 +62,9 @@ class FeedbackSummaryApiTestCase(FeedbackApiBaseTestCase):
|
||||||
basis_circle = Circle.objects.get(slug="test-lehrgang-lp-circle-reisen")
|
basis_circle = Circle.objects.get(slug="test-lehrgang-lp-circle-reisen")
|
||||||
csu.expert.add(basis_circle)
|
csu.expert.add(basis_circle)
|
||||||
|
|
||||||
FeedbackFactory(circle=basis_circle, course_session=csu.course_session).save()
|
FeedbackResponse.objects.create(
|
||||||
|
circle=basis_circle, course_session=csu.course_session
|
||||||
|
)
|
||||||
|
|
||||||
notifications = Notification.objects.all()
|
notifications = Notification.objects.all()
|
||||||
self.assertEqual(len(notifications), 1)
|
self.assertEqual(len(notifications), 1)
|
||||||
|
|
@ -84,7 +87,7 @@ class FeedbackSummaryApiTestCase(FeedbackApiBaseTestCase):
|
||||||
basis_circle = Circle.objects.get(slug="test-lehrgang-lp-circle-reisen")
|
basis_circle = Circle.objects.get(slug="test-lehrgang-lp-circle-reisen")
|
||||||
csu.expert.add(basis_circle)
|
csu.expert.add(basis_circle)
|
||||||
|
|
||||||
feedback = FeedbackFactory(
|
feedback = FeedbackResponseFactory(
|
||||||
circle=basis_circle, course_session=csu.course_session
|
circle=basis_circle, course_session=csu.course_session
|
||||||
)
|
)
|
||||||
feedback.save()
|
feedback.save()
|
||||||
|
|
@ -113,12 +116,12 @@ class FeedbackSummaryApiTestCase(FeedbackApiBaseTestCase):
|
||||||
csu.expert.add(reisen_circle)
|
csu.expert.add(reisen_circle)
|
||||||
|
|
||||||
for i in range(number_reisen_feedback):
|
for i in range(number_reisen_feedback):
|
||||||
FeedbackFactory(
|
FeedbackResponseFactory(
|
||||||
circle=reisen_circle, course_session=csu.course_session
|
circle=reisen_circle, course_session=csu.course_session
|
||||||
).save()
|
).save()
|
||||||
|
|
||||||
for i in range(number_fahrzeug_feedback):
|
for i in range(number_fahrzeug_feedback):
|
||||||
FeedbackFactory(
|
FeedbackResponseFactory(
|
||||||
circle=fahrzeug_circle, course_session=csu.course_session
|
circle=fahrzeug_circle, course_session=csu.course_session
|
||||||
).save()
|
).save()
|
||||||
|
|
||||||
|
|
@ -146,12 +149,12 @@ class FeedbackSummaryApiTestCase(FeedbackApiBaseTestCase):
|
||||||
reisen_circle = Circle.objects.get(slug="test-lehrgang-lp-circle-reisen")
|
reisen_circle = Circle.objects.get(slug="test-lehrgang-lp-circle-reisen")
|
||||||
|
|
||||||
for i in range(number_basis_feedback):
|
for i in range(number_basis_feedback):
|
||||||
FeedbackFactory(
|
FeedbackResponseFactory(
|
||||||
circle=reisen_circle, course_session=csu.course_session
|
circle=reisen_circle, course_session=csu.course_session
|
||||||
).save()
|
).save()
|
||||||
|
|
||||||
for i in range(number_analyse_feedback):
|
for i in range(number_analyse_feedback):
|
||||||
FeedbackFactory(
|
FeedbackResponseFactory(
|
||||||
circle=fahrzeug_circle, course_session=csu.course_session
|
circle=fahrzeug_circle, course_session=csu.course_session
|
||||||
).save()
|
).save()
|
||||||
|
|
||||||
|
|
@ -172,7 +175,7 @@ class FeedbackSummaryApiTestCase(FeedbackApiBaseTestCase):
|
||||||
user=self.user,
|
user=self.user,
|
||||||
)
|
)
|
||||||
fahrzeug_circle = Circle.objects.get(slug="test-lehrgang-lp-circle-fahrzeug")
|
fahrzeug_circle = Circle.objects.get(slug="test-lehrgang-lp-circle-fahrzeug")
|
||||||
FeedbackFactory(
|
FeedbackResponseFactory(
|
||||||
circle=fahrzeug_circle, course_session=csu.course_session
|
circle=fahrzeug_circle, course_session=csu.course_session
|
||||||
).save()
|
).save()
|
||||||
|
|
||||||
|
|
@ -206,7 +209,7 @@ class FeedbackDetailApiTestCase(FeedbackApiBaseTestCase):
|
||||||
circle = Circle.objects.get(slug="test-lehrgang-lp-circle-fahrzeug")
|
circle = Circle.objects.get(slug="test-lehrgang-lp-circle-fahrzeug")
|
||||||
|
|
||||||
for i in range(3):
|
for i in range(3):
|
||||||
FeedbackFactory(
|
FeedbackResponseFactory(
|
||||||
circle=circle,
|
circle=circle,
|
||||||
course_session=csu.course_session,
|
course_session=csu.course_session,
|
||||||
data={
|
data={
|
||||||
|
|
@ -252,7 +255,7 @@ class FeedbackDetailApiTestCase(FeedbackApiBaseTestCase):
|
||||||
)
|
)
|
||||||
|
|
||||||
circle = Circle.objects.get(slug="test-lehrgang-lp-circle-reisen")
|
circle = Circle.objects.get(slug="test-lehrgang-lp-circle-reisen")
|
||||||
FeedbackFactory(circle=circle, course_session=csu.course_session).save()
|
FeedbackResponseFactory(circle=circle, course_session=csu.course_session).save()
|
||||||
|
|
||||||
response = self.client.get(
|
response = self.client.get(
|
||||||
f"/api/core/feedback/{csu.course_session.course.id}/{circle.id}/"
|
f"/api/core/feedback/{csu.course_session.course.id}/{circle.id}/"
|
||||||
|
|
@ -268,7 +271,7 @@ class FeedbackDetailApiTestCase(FeedbackApiBaseTestCase):
|
||||||
user=self.user,
|
user=self.user,
|
||||||
)
|
)
|
||||||
circle = Circle.objects.get(slug="test-lehrgang-lp-circle-fahrzeug")
|
circle = Circle.objects.get(slug="test-lehrgang-lp-circle-fahrzeug")
|
||||||
FeedbackFactory(circle=circle, course_session=csu.course_session).save()
|
FeedbackResponseFactory(circle=circle, course_session=csu.course_session).save()
|
||||||
|
|
||||||
response = self.client.get(
|
response = self.client.get(
|
||||||
f"/api/core/feedback/{csu.course_session.course.id}/{circle.id}/"
|
f"/api/core/feedback/{csu.course_session.course.id}/{circle.id}/"
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,10 @@
|
||||||
# Generated by Django 3.2.13 on 2023-07-14 12:28
|
# Generated by Django 3.2.13 on 2023-07-14 13:08
|
||||||
|
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.db import migrations, models
|
from django.db import migrations, models
|
||||||
import django.db.models.deletion
|
import django.db.models.deletion
|
||||||
import django.utils.timezone
|
import django.utils.timezone
|
||||||
import jsonfield.fields
|
import jsonfield.fields
|
||||||
import uuid
|
|
||||||
|
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
class Migration(migrations.Migration):
|
||||||
|
|
@ -21,6 +20,7 @@ class Migration(migrations.Migration):
|
||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='Notification',
|
name='Notification',
|
||||||
fields=[
|
fields=[
|
||||||
|
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
('level', models.CharField(choices=[('success', 'success'), ('info', 'info'), ('warning', 'warning'), ('error', 'error')], default='info', max_length=20, verbose_name='level')),
|
('level', models.CharField(choices=[('success', 'success'), ('info', 'info'), ('warning', 'warning'), ('error', 'error')], default='info', max_length=20, verbose_name='level')),
|
||||||
('unread', models.BooleanField(db_index=True, default=True, verbose_name='unread')),
|
('unread', models.BooleanField(db_index=True, default=True, verbose_name='unread')),
|
||||||
('actor_object_id', models.CharField(max_length=255, verbose_name='actor object id')),
|
('actor_object_id', models.CharField(max_length=255, verbose_name='actor object id')),
|
||||||
|
|
@ -33,7 +33,6 @@ class Migration(migrations.Migration):
|
||||||
('deleted', models.BooleanField(db_index=True, default=False, verbose_name='deleted')),
|
('deleted', models.BooleanField(db_index=True, default=False, verbose_name='deleted')),
|
||||||
('emailed', models.BooleanField(db_index=True, default=False, verbose_name='emailed')),
|
('emailed', models.BooleanField(db_index=True, default=False, verbose_name='emailed')),
|
||||||
('data', jsonfield.fields.JSONField(blank=True, null=True, verbose_name='data')),
|
('data', jsonfield.fields.JSONField(blank=True, null=True, verbose_name='data')),
|
||||||
('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
|
|
||||||
('notification_type', models.CharField(choices=[('USER_INTERACTION', 'User Interaction'), ('PROGRESS', 'Progress'), ('INFORMATION', 'Information')], default='INFORMATION', max_length=32)),
|
('notification_type', models.CharField(choices=[('USER_INTERACTION', 'User Interaction'), ('PROGRESS', 'Progress'), ('INFORMATION', 'Information')], default='INFORMATION', max_length=32)),
|
||||||
('target_url', models.URLField(blank=True, null=True)),
|
('target_url', models.URLField(blank=True, null=True)),
|
||||||
('actor_avatar_url', models.URLField(blank=True, null=True)),
|
('actor_avatar_url', models.URLField(blank=True, null=True)),
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,3 @@
|
||||||
import uuid
|
|
||||||
|
|
||||||
from django.db import models
|
from django.db import models
|
||||||
from django.utils.translation import gettext_lazy as _
|
from django.utils.translation import gettext_lazy as _
|
||||||
from notifications.base.models import AbstractNotification
|
from notifications.base.models import AbstractNotification
|
||||||
|
|
@ -12,7 +10,8 @@ class NotificationType(models.TextChoices):
|
||||||
|
|
||||||
|
|
||||||
class Notification(AbstractNotification):
|
class Notification(AbstractNotification):
|
||||||
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
|
# UUIDs are not supported by the notifications app...
|
||||||
|
# id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
|
||||||
|
|
||||||
notification_type = models.CharField(
|
notification_type = models.CharField(
|
||||||
max_length=32,
|
max_length=32,
|
||||||
|
|
|
||||||
|
|
@ -52,7 +52,7 @@ class TestNotificationApi(APITestCase):
|
||||||
self.assertTrue(
|
self.assertTrue(
|
||||||
all(
|
all(
|
||||||
[
|
[
|
||||||
self.alice.id == notification["recipient"]
|
str(self.alice.id) == notification["recipient"]
|
||||||
for notification in data["all_list"]
|
for notification in data["all_list"]
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue