Struct Report
pub struct Report {Show 14 fields
pub uuid: Uuid,
pub updt: Option<NaiveDateTime>,
pub updu: Option<Uuid>,
pub ver: Option<i32>,
pub rstatus: Option<RStatus>,
pub org_id: Uuid,
pub template_id: Uuid,
pub student_id: Uuid,
pub reporter: Uuid,
pub rubrics: Json<Vec<RubricResponse>>,
pub status: ReportStatus,
pub term_id: Uuid,
pub term_type: TermType,
pub path: Option<String>,
}
Fields§
§uuid: Uuid
§updt: Option<NaiveDateTime>
§updu: Option<Uuid>
§ver: Option<i32>
§rstatus: Option<RStatus>
§org_id: Uuid
§template_id: Uuid
§student_id: Uuid
§reporter: Uuid
§rubrics: Json<Vec<RubricResponse>>
§status: ReportStatus
§term_id: Uuid
§term_type: TermType
§path: Option<String>
Implementations§
§impl Report
impl Report
pub fn from_request(req: &ReportRequest) -> Report
pub fn to_response(&self) -> ReportResponse
pub fn to_response_list(categories: Vec<Report>) -> Vec<ReportResponse>
Trait Implementations§
§impl<'update> AsChangeset for &'update Report
impl<'update> AsChangeset for &'update Report
§type Changeset = <(Option<Eq<updt, <&'update NaiveDateTime as AsExpression<<updt as Expression>::SqlType>>::Expression>>, Option<Eq<updu, <&'update Uuid as AsExpression<<updu as Expression>::SqlType>>::Expression>>, Option<Eq<ver, <&'update i32 as AsExpression<<ver as Expression>::SqlType>>::Expression>>, Option<Eq<rstatus, <&'update RStatus as AsExpression<<rstatus as Expression>::SqlType>>::Expression>>, Eq<org_id, <&'update Uuid as AsExpression<<org_id as Expression>::SqlType>>::Expression>, Eq<template_id, <&'update Uuid as AsExpression<<template_id as Expression>::SqlType>>::Expression>, Eq<student_id, <&'update Uuid as AsExpression<<student_id as Expression>::SqlType>>::Expression>, Eq<reporter, <&'update Uuid as AsExpression<<reporter as Expression>::SqlType>>::Expression>, Eq<rubrics, <&'update Json<Vec<RubricResponse>> as AsExpression<<rubrics as Expression>::SqlType>>::Expression>, Eq<status, <&'update ReportStatus as AsExpression<<status as Expression>::SqlType>>::Expression>, Eq<term_id, <&'update Uuid as AsExpression<<term_id as Expression>::SqlType>>::Expression>, Eq<term_type, <&'update TermType as AsExpression<<term_type as Expression>::SqlType>>::Expression>, Option<Eq<path, <&'update String as AsExpression<<path as Expression>::SqlType>>::Expression>>) as AsChangeset>::Changeset
type Changeset = <(Option<Eq<updt, <&'update NaiveDateTime as AsExpression<<updt as Expression>::SqlType>>::Expression>>, Option<Eq<updu, <&'update Uuid as AsExpression<<updu as Expression>::SqlType>>::Expression>>, Option<Eq<ver, <&'update i32 as AsExpression<<ver as Expression>::SqlType>>::Expression>>, Option<Eq<rstatus, <&'update RStatus as AsExpression<<rstatus as Expression>::SqlType>>::Expression>>, Eq<org_id, <&'update Uuid as AsExpression<<org_id as Expression>::SqlType>>::Expression>, Eq<template_id, <&'update Uuid as AsExpression<<template_id as Expression>::SqlType>>::Expression>, Eq<student_id, <&'update Uuid as AsExpression<<student_id as Expression>::SqlType>>::Expression>, Eq<reporter, <&'update Uuid as AsExpression<<reporter as Expression>::SqlType>>::Expression>, Eq<rubrics, <&'update Json<Vec<RubricResponse>> as AsExpression<<rubrics as Expression>::SqlType>>::Expression>, Eq<status, <&'update ReportStatus as AsExpression<<status as Expression>::SqlType>>::Expression>, Eq<term_id, <&'update Uuid as AsExpression<<term_id as Expression>::SqlType>>::Expression>, Eq<term_type, <&'update TermType as AsExpression<<term_type as Expression>::SqlType>>::Expression>, Option<Eq<path, <&'update String as AsExpression<<path as Expression>::SqlType>>::Expression>>) as AsChangeset>::Changeset
The update statement this type represents
§fn as_changeset(self) -> Self::Changeset
fn as_changeset(self) -> Self::Changeset
Convert
self
into the actual update statement being executed§impl<'update> AsChangeset for Report
impl<'update> AsChangeset for Report
§type Changeset = <(Option<Eq<updt, <NaiveDateTime as AsExpression<<updt as Expression>::SqlType>>::Expression>>, Option<Eq<updu, <Uuid as AsExpression<<updu as Expression>::SqlType>>::Expression>>, Option<Eq<ver, <i32 as AsExpression<<ver as Expression>::SqlType>>::Expression>>, Option<Eq<rstatus, <RStatus as AsExpression<<rstatus as Expression>::SqlType>>::Expression>>, Eq<org_id, <Uuid as AsExpression<<org_id as Expression>::SqlType>>::Expression>, Eq<template_id, <Uuid as AsExpression<<template_id as Expression>::SqlType>>::Expression>, Eq<student_id, <Uuid as AsExpression<<student_id as Expression>::SqlType>>::Expression>, Eq<reporter, <Uuid as AsExpression<<reporter as Expression>::SqlType>>::Expression>, Eq<rubrics, <Json<Vec<RubricResponse>> as AsExpression<<rubrics as Expression>::SqlType>>::Expression>, Eq<status, <ReportStatus as AsExpression<<status as Expression>::SqlType>>::Expression>, Eq<term_id, <Uuid as AsExpression<<term_id as Expression>::SqlType>>::Expression>, Eq<term_type, <TermType as AsExpression<<term_type as Expression>::SqlType>>::Expression>, Option<Eq<path, <String as AsExpression<<path as Expression>::SqlType>>::Expression>>) as AsChangeset>::Changeset
type Changeset = <(Option<Eq<updt, <NaiveDateTime as AsExpression<<updt as Expression>::SqlType>>::Expression>>, Option<Eq<updu, <Uuid as AsExpression<<updu as Expression>::SqlType>>::Expression>>, Option<Eq<ver, <i32 as AsExpression<<ver as Expression>::SqlType>>::Expression>>, Option<Eq<rstatus, <RStatus as AsExpression<<rstatus as Expression>::SqlType>>::Expression>>, Eq<org_id, <Uuid as AsExpression<<org_id as Expression>::SqlType>>::Expression>, Eq<template_id, <Uuid as AsExpression<<template_id as Expression>::SqlType>>::Expression>, Eq<student_id, <Uuid as AsExpression<<student_id as Expression>::SqlType>>::Expression>, Eq<reporter, <Uuid as AsExpression<<reporter as Expression>::SqlType>>::Expression>, Eq<rubrics, <Json<Vec<RubricResponse>> as AsExpression<<rubrics as Expression>::SqlType>>::Expression>, Eq<status, <ReportStatus as AsExpression<<status as Expression>::SqlType>>::Expression>, Eq<term_id, <Uuid as AsExpression<<term_id as Expression>::SqlType>>::Expression>, Eq<term_type, <TermType as AsExpression<<term_type as Expression>::SqlType>>::Expression>, Option<Eq<path, <String as AsExpression<<path as Expression>::SqlType>>::Expression>>) as AsChangeset>::Changeset
The update statement this type represents
§fn as_changeset(self) -> Self::Changeset
fn as_changeset(self) -> Self::Changeset
Convert
self
into the actual update statement being executed§impl<'de> Deserialize<'de> for Report
impl<'de> Deserialize<'de> for Report
§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
§impl<'ident> Identifiable for &'ident Report
impl<'ident> Identifiable for &'ident Report
§impl<'insert> Insertable<table> for &'insert Report
impl<'insert> Insertable<table> for &'insert Report
§type Values = <(Option<Eq<uuid, <&'insert Uuid as AsExpression<<uuid as Expression>::SqlType>>::Expression>>, Option<Eq<updt, <&'insert NaiveDateTime as AsExpression<<updt as Expression>::SqlType>>::Expression>>, Option<Eq<updu, <&'insert Uuid as AsExpression<<updu as Expression>::SqlType>>::Expression>>, Option<Eq<ver, <&'insert i32 as AsExpression<<ver as Expression>::SqlType>>::Expression>>, Option<Eq<rstatus, <&'insert RStatus as AsExpression<<rstatus as Expression>::SqlType>>::Expression>>, Option<Eq<org_id, <&'insert Uuid as AsExpression<<org_id as Expression>::SqlType>>::Expression>>, Option<Eq<template_id, <&'insert Uuid as AsExpression<<template_id as Expression>::SqlType>>::Expression>>, Option<Eq<student_id, <&'insert Uuid as AsExpression<<student_id as Expression>::SqlType>>::Expression>>, Option<Eq<reporter, <&'insert Uuid as AsExpression<<reporter as Expression>::SqlType>>::Expression>>, Option<Eq<rubrics, <&'insert Json<Vec<RubricResponse>> as AsExpression<<rubrics as Expression>::SqlType>>::Expression>>, Option<Eq<status, <&'insert ReportStatus as AsExpression<<status as Expression>::SqlType>>::Expression>>, Option<Eq<term_id, <&'insert Uuid as AsExpression<<term_id as Expression>::SqlType>>::Expression>>, Option<Eq<term_type, <&'insert TermType as AsExpression<<term_type as Expression>::SqlType>>::Expression>>, Option<Eq<path, <&'insert String as AsExpression<<path as Expression>::SqlType>>::Expression>>) as Insertable<table>>::Values
type Values = <(Option<Eq<uuid, <&'insert Uuid as AsExpression<<uuid as Expression>::SqlType>>::Expression>>, Option<Eq<updt, <&'insert NaiveDateTime as AsExpression<<updt as Expression>::SqlType>>::Expression>>, Option<Eq<updu, <&'insert Uuid as AsExpression<<updu as Expression>::SqlType>>::Expression>>, Option<Eq<ver, <&'insert i32 as AsExpression<<ver as Expression>::SqlType>>::Expression>>, Option<Eq<rstatus, <&'insert RStatus as AsExpression<<rstatus as Expression>::SqlType>>::Expression>>, Option<Eq<org_id, <&'insert Uuid as AsExpression<<org_id as Expression>::SqlType>>::Expression>>, Option<Eq<template_id, <&'insert Uuid as AsExpression<<template_id as Expression>::SqlType>>::Expression>>, Option<Eq<student_id, <&'insert Uuid as AsExpression<<student_id as Expression>::SqlType>>::Expression>>, Option<Eq<reporter, <&'insert Uuid as AsExpression<<reporter as Expression>::SqlType>>::Expression>>, Option<Eq<rubrics, <&'insert Json<Vec<RubricResponse>> as AsExpression<<rubrics as Expression>::SqlType>>::Expression>>, Option<Eq<status, <&'insert ReportStatus as AsExpression<<status as Expression>::SqlType>>::Expression>>, Option<Eq<term_id, <&'insert Uuid as AsExpression<<term_id as Expression>::SqlType>>::Expression>>, Option<Eq<term_type, <&'insert TermType as AsExpression<<term_type as Expression>::SqlType>>::Expression>>, Option<Eq<path, <&'insert String as AsExpression<<path as Expression>::SqlType>>::Expression>>) as Insertable<table>>::Values
The
VALUES
clause to insert these records Read moreSource§fn insert_into(self, table: T) -> InsertStatement<T, Self::Values>where
Self: Sized,
fn insert_into(self, table: T) -> InsertStatement<T, Self::Values>where
Self: Sized,
Insert
self
into a given table. Read more§impl<'insert> Insertable<table> for Report
impl<'insert> Insertable<table> for Report
§type Values = <(Option<Eq<uuid, <Uuid as AsExpression<<uuid as Expression>::SqlType>>::Expression>>, Option<Eq<updt, <NaiveDateTime as AsExpression<<updt as Expression>::SqlType>>::Expression>>, Option<Eq<updu, <Uuid as AsExpression<<updu as Expression>::SqlType>>::Expression>>, Option<Eq<ver, <i32 as AsExpression<<ver as Expression>::SqlType>>::Expression>>, Option<Eq<rstatus, <RStatus as AsExpression<<rstatus as Expression>::SqlType>>::Expression>>, Option<Eq<org_id, <Uuid as AsExpression<<org_id as Expression>::SqlType>>::Expression>>, Option<Eq<template_id, <Uuid as AsExpression<<template_id as Expression>::SqlType>>::Expression>>, Option<Eq<student_id, <Uuid as AsExpression<<student_id as Expression>::SqlType>>::Expression>>, Option<Eq<reporter, <Uuid as AsExpression<<reporter as Expression>::SqlType>>::Expression>>, Option<Eq<rubrics, <Json<Vec<RubricResponse>> as AsExpression<<rubrics as Expression>::SqlType>>::Expression>>, Option<Eq<status, <ReportStatus as AsExpression<<status as Expression>::SqlType>>::Expression>>, Option<Eq<term_id, <Uuid as AsExpression<<term_id as Expression>::SqlType>>::Expression>>, Option<Eq<term_type, <TermType as AsExpression<<term_type as Expression>::SqlType>>::Expression>>, Option<Eq<path, <String as AsExpression<<path as Expression>::SqlType>>::Expression>>) as Insertable<table>>::Values
type Values = <(Option<Eq<uuid, <Uuid as AsExpression<<uuid as Expression>::SqlType>>::Expression>>, Option<Eq<updt, <NaiveDateTime as AsExpression<<updt as Expression>::SqlType>>::Expression>>, Option<Eq<updu, <Uuid as AsExpression<<updu as Expression>::SqlType>>::Expression>>, Option<Eq<ver, <i32 as AsExpression<<ver as Expression>::SqlType>>::Expression>>, Option<Eq<rstatus, <RStatus as AsExpression<<rstatus as Expression>::SqlType>>::Expression>>, Option<Eq<org_id, <Uuid as AsExpression<<org_id as Expression>::SqlType>>::Expression>>, Option<Eq<template_id, <Uuid as AsExpression<<template_id as Expression>::SqlType>>::Expression>>, Option<Eq<student_id, <Uuid as AsExpression<<student_id as Expression>::SqlType>>::Expression>>, Option<Eq<reporter, <Uuid as AsExpression<<reporter as Expression>::SqlType>>::Expression>>, Option<Eq<rubrics, <Json<Vec<RubricResponse>> as AsExpression<<rubrics as Expression>::SqlType>>::Expression>>, Option<Eq<status, <ReportStatus as AsExpression<<status as Expression>::SqlType>>::Expression>>, Option<Eq<term_id, <Uuid as AsExpression<<term_id as Expression>::SqlType>>::Expression>>, Option<Eq<term_type, <TermType as AsExpression<<term_type as Expression>::SqlType>>::Expression>>, Option<Eq<path, <String as AsExpression<<path as Expression>::SqlType>>::Expression>>) as Insertable<table>>::Values
The
VALUES
clause to insert these records Read moreSource§fn insert_into(self, table: T) -> InsertStatement<T, Self::Values>where
Self: Sized,
fn insert_into(self, table: T) -> InsertStatement<T, Self::Values>where
Self: Sized,
Insert
self
into a given table. Read more§impl MetaFields for Report
impl MetaFields for Report
fn update_fields(&mut self, user_id: Uuid)
fn init_fields(&mut self, user_id: Uuid)
§impl<__DB: Backend, __ST> Queryable<__ST, __DB> for Report
impl<__DB: Backend, __ST> Queryable<__ST, __DB> for Report
§impl<__DB: Backend> QueryableByName<__DB> for Reportwhere
Uuid: FromSql<SqlTypeOf<uuid>, __DB> + FromSql<SqlTypeOf<org_id>, __DB> + FromSql<SqlTypeOf<template_id>, __DB> + FromSql<SqlTypeOf<student_id>, __DB> + FromSql<SqlTypeOf<reporter>, __DB> + FromSql<SqlTypeOf<term_id>, __DB>,
Option<NaiveDateTime>: FromSql<SqlTypeOf<updt>, __DB>,
Option<Uuid>: FromSql<SqlTypeOf<updu>, __DB>,
Option<i32>: FromSql<SqlTypeOf<ver>, __DB>,
Option<RStatus>: FromSql<SqlTypeOf<rstatus>, __DB>,
Json<Vec<RubricResponse>>: FromSql<SqlTypeOf<rubrics>, __DB>,
ReportStatus: FromSql<SqlTypeOf<status>, __DB>,
TermType: FromSql<SqlTypeOf<term_type>, __DB>,
Option<String>: FromSql<SqlTypeOf<path>, __DB>,
impl<__DB: Backend> QueryableByName<__DB> for Reportwhere
Uuid: FromSql<SqlTypeOf<uuid>, __DB> + FromSql<SqlTypeOf<org_id>, __DB> + FromSql<SqlTypeOf<template_id>, __DB> + FromSql<SqlTypeOf<student_id>, __DB> + FromSql<SqlTypeOf<reporter>, __DB> + FromSql<SqlTypeOf<term_id>, __DB>,
Option<NaiveDateTime>: FromSql<SqlTypeOf<updt>, __DB>,
Option<Uuid>: FromSql<SqlTypeOf<updu>, __DB>,
Option<i32>: FromSql<SqlTypeOf<ver>, __DB>,
Option<RStatus>: FromSql<SqlTypeOf<rstatus>, __DB>,
Json<Vec<RubricResponse>>: FromSql<SqlTypeOf<rubrics>, __DB>,
ReportStatus: FromSql<SqlTypeOf<status>, __DB>,
TermType: FromSql<SqlTypeOf<term_type>, __DB>,
Option<String>: FromSql<SqlTypeOf<path>, __DB>,
impl StructuralPartialEq for Report
impl<'insert> UndecoratedInsertRecord<table> for Report
Auto Trait Implementations§
impl Freeze for Report
impl RefUnwindSafe for Report
impl Send for Report
impl Sync for Report
impl Unpin for Report
impl UnwindSafe for Report
Blanket Implementations§
Source§impl<Src, Scheme> ApproxFrom<Src, Scheme> for Srcwhere
Scheme: ApproxScheme,
impl<Src, Scheme> ApproxFrom<Src, Scheme> for Srcwhere
Scheme: ApproxScheme,
Source§fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>
fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>
Convert the given value into an approximately equivalent representation.
Source§impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Srcwhere
Dst: ApproxFrom<Src, Scheme>,
Scheme: ApproxScheme,
impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Srcwhere
Dst: ApproxFrom<Src, Scheme>,
Scheme: ApproxScheme,
Source§type Err = <Dst as ApproxFrom<Src, Scheme>>::Err
type Err = <Dst as ApproxFrom<Src, Scheme>>::Err
The error type produced by a failed conversion.
Source§fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
Convert the subject into an approximately equivalent representation.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, Dst> ConvAsUtil<Dst> for T
impl<T, Dst> ConvAsUtil<Dst> for T
Source§impl<T> ConvUtil for T
impl<T> ConvUtil for T
Source§fn approx_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
fn approx_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
Approximate the subject to a given type with the default scheme.
Source§fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>
fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>
Approximate the subject to a given type with a specific scheme.
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoSql for T
impl<T> IntoSql for T
Source§fn into_sql<T>(self) -> Self::Expressionwhere
Self: Sized + AsExpression<T>,
fn into_sql<T>(self) -> Self::Expressionwhere
Self: Sized + AsExpression<T>,
Convert
self
to an expression for Diesel’s query builder. Read moreSource§fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expressionwhere
&'a Self: AsExpression<T>,
fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expressionwhere
&'a Self: AsExpression<T>,
Convert
&self
to an expression for Diesel’s query builder. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.