userapi::logic::user_logic

Struct UserLogic

pub struct UserLogic {}

Implementations§

§

impl UserLogic

pub fn format_pass(pass: &str) -> String

pub fn get_del_for_org( app_data: Data<AppData>, jwt_token: JwtToken, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn find_for_roles_and_org( app_data: Data<AppData>, jwt_token: JwtToken, roles: Vec<String>, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn create_guest_for_security( app_data: Data<AppData>, req: CreateUserForSecurity, jwt_token: JwtToken, ) -> Result<ShortUserResponse, StatusMessage>

pub fn get_admins( app_data: Data<AppData>, org_id: Uuid, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn get_medics_or_admins_for_org( app_data: Data<AppData>, org_id: Uuid, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn get_users_without_roles( app_data: Data<AppData>, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn save_student_data_from_csv( app_data: Data<AppData>, file_rq: Json<FileRequest>, jwt_token: JwtToken, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn parse_row(row: &[DataType]) -> (Vec<String>, bool)

pub fn get_gender(gender: String) -> Option<Gender>

pub fn get_email(email: String, role: String) -> String

pub fn create_user( new_user: &mut User, role: String, user_id: Uuid, org_id: Uuid, response: &mut SaveFromXLSXResponse, pool: Pool<ConnectionManager<PgConnection>>, class_id: Option<Uuid>, ern: Option<ERNDetails>, ) -> Uuid

pub fn create_role_for_existing_user( pool: Pool<ConnectionManager<PgConnection>>, role: String, user_id: Uuid, org_id: Uuid, user: User, response: &mut SaveFromXLSXResponse, school_class: Option<Uuid>, )

pub fn restore_role( role: UserRole, pool: Pool<ConnectionManager<PgConnection>>, user: User, response: &mut SaveFromXLSXResponse, )

pub fn check_allowed_county( conn: &PgConnection, org_id: Uuid, auth_log: AuthLog, ) -> Result<(), StatusMessage>

pub fn new_code_for_token(app_data: Data<AppData>, token: String) -> String

pub fn check_mfa_code( app_data: Data<AppData>, values: String, jwt_token: JwtToken, ) -> Result<GetTokenResponse, StatusMessage>

pub fn get_mfa_token( app_data: Data<AppData>, values: String, jwt_token: JwtToken, ) -> Result<GetTokenResponse, StatusMessage>

pub fn mfa_code_resending( app_data: Data<AppData>, jwt_token: JwtToken, headers: HeaderMap, value: String, mfa_type: String, limit_10_seconds: Data<Mutex<Limit10Seconds>>, ) -> Result<StatusMessage, StatusMessage>

fn ip_restriction(ip: String) -> Result<(), StatusMessage>

pub fn get_no_mfa_token( app_data: Data<AppData>, auth_model: Json<AuthRequest>, auth_log: AuthLog, captcha_list: Data<Mutex<HashMap<String, NaiveDateTime>>>, ) -> Result<GetTokenResponse, StatusMessage>

pub fn get_token( app_data: Data<AppData>, auth_model: Json<AuthRequest>, auth_log: AuthLog, headers: HeaderMap, captcha_list: Data<Mutex<HashMap<String, NaiveDateTime>>>, ) -> Result<GetTokenResponse, StatusMessage>

pub fn get_token_for_user( app_data: Data<AppData>, jwt_token: JwtToken, ) -> Result<GetTokenResponse, StatusMessage>

pub fn get_admin_token_for_org( app_data: Data<AppData>, org_id: Uuid, jwt: JwtToken, ) -> Result<GetTokenResponse, StatusMessage>

pub fn check_is_chat_available( app_data: Data<AppData>, token: JwtToken, headers: HeaderMap, ) -> Result<ChatAllowedResponse, StatusMessage>

pub fn get_qr_cards( app_data: Data<AppData>, ur_id_list: Json<Vec<Uuid>>, jwt_token: JwtToken, prefix: String, ) -> Result<Vec<UserRoleQrCardResponse>, StatusMessage>

pub fn is_administration_allowed( jwt_token: JwtToken, target_user: Uuid, min_role: Roles, conn: &PgConnection, ) -> Result<(), StatusMessage>

pub fn change_pass( app_data: Data<AppData>, change_password_request: Json<ChangePasswordRequest>, user_id: Uuid, jwt_token: JwtToken, captcha_list: Data<Mutex<HashMap<String, NaiveDateTime>>>, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn change_online_status( app_data: Data<AppData>, status: String, jwt_token: JwtToken, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn find_users_for_org( app_data: Data<AppData>, jwt_token: JwtToken, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn enable_two_step_auth( app_data: Data<AppData>, user_id: Uuid, jwt_token: JwtToken, ) -> Result<StatusMessage, StatusMessage>

pub fn get_users_by_list_ids( app_data: Data<AppData>, id_list: Json<Vec<Uuid>>, jwt_token: JwtToken, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn get_users_by_org_id( app_data: Data<AppData>, org_id: Uuid, jwt_token: JwtToken, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn get_users_by_org_ids( app_data: Data<AppData>, id_list: Json<Vec<Uuid>>, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn find_by_email( app_data: Data<AppData>, email: String, jwt_token: JwtToken, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn edit_user_admin( app_data: Data<AppData>, edit_user: Json<UpdateUserRequest>, token: JwtToken, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn update( app_data: Data<AppData>, edit_user: Json<UpdateUserRequest>, jwt_token: JwtToken, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn send_invitation( app_data: Data<AppData>, vrorg: Json<VerificationRoleOrgRequest>, headers: HeaderMap, sender_jwt: JwtToken, ) -> Result<StatusMessage, StatusMessage>

pub fn find_ids_for_school_invitation( app_data: Data<AppData>, ) -> Result<Vec<Uuid>, StatusMessage>

pub fn send_school_invitations_by_ids_list( app_data: Data<AppData>, ids_list: Json<Vec<Uuid>>, sender_jwt: JwtToken, headers: HeaderMap, ) -> Result<StatusMessage, StatusMessage>

pub fn send_school_invitations( app_data: Data<AppData>, headers: HeaderMap, sender_jwt: JwtToken, ) -> Result<StatusMessage, StatusMessage>

pub fn send_invitation_from_org( app_data: Data<AppData>, vrorg: Json<VerificationRoleOrgRequest>, headers: HeaderMap, sender_jwt: JwtToken, org_id: Uuid, ) -> Result<StatusMessage, StatusMessage>

pub fn recover_password_with_captcha( app_data: Data<AppData>, auth_model: Json<AuthRequest>, headers: HeaderMap, sender_jwt: JwtToken, ) -> Result<StatusMessage, StatusMessage>

pub fn find_addrress_by_user( conn: &PgConnection, user_id: Uuid, jwt_token: JwtToken, ) -> Result<Vec<Address>, StatusMessage>

pub fn generate_captcha( captcha_list: Data<Mutex<HashMap<String, NaiveDateTime>>>, ) -> CaptchaResponse

pub fn recover_password( app_data: Data<AppData>, auth_model: Json<AuthRequest>, headers: HeaderMap, captcha_list: Data<Mutex<HashMap<String, NaiveDateTime>>>, ) -> Result<StatusMessage, StatusMessage>

pub fn recovered_password( app_data: Data<AppData>, recovered_password_request: Json<RecoveredPasswordRequest>, ) -> Result<usize, StatusMessage>

pub fn login_by_token( app_data: Data<AppData>, token: String, ) -> Result<UserRole, StatusMessage>

pub fn delete_user_from_class( app_data: Data<AppData>, user_id: Uuid, class_id: Uuid, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn decline_role( app_data: Data<AppData>, role_id: Uuid, jwt_token: JwtToken, ) -> Result<UserRoleResponse, StatusMessage>

pub fn block_role( app_data: Data<AppData>, user_role_id: Uuid, sender_jwt: JwtToken, ) -> Result<UserRoleResponse, StatusMessage>

pub fn approve_role( app_data: Data<AppData>, user_role_id: Uuid, sender_jwt: JwtToken, ) -> Result<UserRoleResponse, StatusMessage>

pub fn approve_access_request( app_data: Data<AppData>, user_id: Uuid, org_id: Uuid, headers: HeaderMap, ) -> Result<(), StatusMessage>

pub fn set_avatar( app_data: Data<AppData>, file_path: Json<String>, headers: HeaderMap, jwt_token: JwtToken, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn delete( conn: &PgConnection, user_id: Uuid, jwt_token: JwtToken, ) -> Result<usize, StatusMessage>

pub fn set_avatar_by_id( app_data: Data<AppData>, file_path: Json<String>, user_id: Uuid, jwt_token: JwtToken, headers: HeaderMap, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn approve_email_from_token( app_data: Data<AppData>, _jwt_token: JwtToken, user_id: Uuid, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn approve_email( app_data: Data<AppData>, user_id: Uuid, jwt_token: JwtToken, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn authorize_user_changes( conn: &PgConnection, user_id: Uuid, sender_jwt: JwtToken, ) -> Result<(), StatusMessage>

pub fn block_user( app_data: Data<AppData>, user_id: Uuid, sender_jwt: JwtToken, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn find_parents_for_user( app_data: Data<AppData>, user_id: Uuid, jwt_token: JwtToken, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn find_parents_for_users( app_data: Data<AppData>, user_ids: Vec<Uuid>, jwt_token: JwtToken, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn find_parent_with_childs( app_data: Data<AppData>, user_id: Uuid, jwt_token: JwtToken, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn enrol( app_data: Data<AppData>, application_id: Uuid, headers: HeaderMap, jwt_token_real: JwtToken, ) -> Result<UserWithRolesResponse, StatusMessage>

pub fn create( app_data: Data<AppData>, new_user: Json<CreateUser>, headers: &HeaderMap, sender_jwt: JwtToken, ) -> Result<UserWithRolesResponse, StatusMessage>

pub fn register( app_data: Data<AppData>, new_user: Json<UpdateUserRequest>, headers: HeaderMap, ) -> Result<UserWithRolesResponse, StatusMessage>

pub fn get_recovery_response( app_data: Data<AppData>, token: String, ) -> Result<RecoveryResponse, StatusMessage>

pub fn save_teacher_data_from_csv( app_data: Data<AppData>, file_rq: Json<FileRequest>, jwt_token: JwtToken, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn get_users_by_string_data_for_curr_org( app_data: Data<AppData>, string_data: Json<Vec<String>>, jwt_token: JwtToken, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn get_users_by_roles( app_data: Data<AppData>, roles: Json<Vec<Roles>>, jwt_token: JwtToken, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn get_users_by_string_data_for_all_orgs_except_current( app_data: Data<AppData>, string_data: Json<Vec<String>>, jwt_token: JwtToken, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn find_by_ids( app_data: Data<AppData>, id_list: Json<Vec<Uuid>>, jwt_token: JwtToken, ) -> Result<HashMap<Uuid, ShortUserResponse>, StatusMessage>

pub fn find_for_class( app_data: Data<AppData>, class_id: Uuid, jwt_token: JwtToken, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn generate_qr( token: String, prefix: String, ) -> Result<(String, String), StatusMessage>

pub fn find_roboteacher( conn: &PgConnection, org_uuid: Uuid, user_id: Uuid, ) -> Result<UserWithRolesResponse, StatusMessage>

pub fn find_map_by_id_list( conn: &PgConnection, id_list: Vec<Uuid>, ) -> Result<BTreeMap<Uuid, User>, StatusMessage>

pub fn short_user_with_roles( conn: &PgConnection, users: Vec<User>, ) -> Result<Vec<ShortUserResponse>, StatusMessage>

pub fn user_with_roles( conn: &PgConnection, users: Vec<User>, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn update_avatar( conn: &PgConnection, user: User, avatar: String, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn update_status( conn: &PgConnection, user: User, status: String, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn update_user( conn: &PgConnection, user: User, new_user: User, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn create_user_with_roles( conn: &PgConnection, user: User, user_id: Uuid, ) -> Result<Vec<UserWithRolesResponse>, StatusMessage>

pub fn update_priority_mfa_option( app_data: Data<AppData>, mfa_req: Json<MfaOption>, user_id: Uuid, ) -> Result<UserWithRolesResponse, StatusMessage>

pub fn add_mfa_option( app_data: Data<AppData>, mfa_req: MfaOption, jwt_token: JwtToken, ) -> Result<UserWithRolesResponse, StatusMessage>

pub fn update_skip_until( app_data: Data<AppData>, user_id: Uuid, jwt_token: JwtToken, ) -> Result<UserWithRolesResponse, StatusMessage>

pub fn update_mfa( app_data: Data<AppData>, mfa_req: Json<Mfa>, user_id: Uuid, ) -> Result<UserWithRolesResponse, StatusMessage>

pub fn mfa_switch( app_data: Data<AppData>, user_id: Uuid, ) -> Result<UserWithRolesResponse, StatusMessage>

pub fn delete_mfa_option( app_data: Data<AppData>, mfa_type: String, value: String, user_id: Uuid, ) -> Result<UserWithRolesResponse, StatusMessage>

pub fn find_mfa( app_data: Data<AppData>, user_id: Uuid, ) -> Result<UserWithRolesResponse, StatusMessage>

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<Src, Scheme> ApproxFrom<Src, Scheme> for Src
where Scheme: ApproxScheme,

Source§

type Err = NoError

The error type produced by a failed conversion.
Source§

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 Src
where Dst: ApproxFrom<Src, Scheme>, Scheme: ApproxScheme,

Source§

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>

Convert the subject into an approximately equivalent representation.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T, Dst> ConvAsUtil<Dst> for T

Source§

fn approx(self) -> Result<Dst, Self::Err>
where Self: Sized + ApproxInto<Dst>,

Approximate the subject with the default scheme.
Source§

fn approx_by<Scheme>(self) -> Result<Dst, Self::Err>
where Self: Sized + ApproxInto<Dst, Scheme>, Scheme: ApproxScheme,

Approximate the subject with a specific scheme.
Source§

impl<T> ConvUtil for T

Source§

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>
where Self: Sized + ApproxInto<Dst, Scheme>, Scheme: ApproxScheme,

Approximate the subject to a given type with a specific scheme.
Source§

fn into_as<Dst>(self) -> Dst
where Self: Sized + Into<Dst>,

Convert the subject to a given type.
Source§

fn try_as<Dst>(self) -> Result<Dst, Self::Err>
where Self: Sized + TryInto<Dst>,

Attempt to convert the subject to a given type.
Source§

fn value_as<Dst>(self) -> Result<Dst, Self::Err>
where Self: Sized + ValueInto<Dst>,

Attempt a value conversion of the subject to a given type.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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 more
Source§

impl<T> IntoSql for T

Source§

fn into_sql<T>(self) -> Self::Expression
where Self: Sized + AsExpression<T>,

Convert self to an expression for Diesel’s query builder. Read more
Source§

fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expression
where &'a Self: AsExpression<T>,

Convert &self to an expression for Diesel’s query builder. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<SS, SP> SupersetOf<SS> for SP
where SS: SubsetOf<SP>,

Source§

fn to_subset(&self) -> Option<SS>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
Source§

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

Use with care! Same as self.to_subset but without any property checks. Always succeeds.
Source§

fn from_subset(element: &SS) -> SP

The inclusion map: converts self to the equivalent element of its superset.
Source§

impl<Src> TryFrom<Src> for Src

Source§

type Err = NoError

The error type produced by a failed conversion.
Source§

fn try_from(src: Src) -> Result<Src, <Src as TryFrom<Src>>::Err>

Convert the given value into the subject type.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<Src, Dst> TryInto<Dst> for Src
where Dst: TryFrom<Src>,

Source§

type Err = <Dst as TryFrom<Src>>::Err

The error type produced by a failed conversion.
Source§

fn try_into(self) -> Result<Dst, <Src as TryInto<Dst>>::Err>

Convert the subject into the destination type.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<Src> ValueFrom<Src> for Src

Source§

type Err = NoError

The error type produced by a failed conversion.
Source§

fn value_from(src: Src) -> Result<Src, <Src as ValueFrom<Src>>::Err>

Convert the given value into an exactly equivalent representation.
Source§

impl<Src, Dst> ValueInto<Dst> for Src
where Dst: ValueFrom<Src>,

Source§

type Err = <Dst as ValueFrom<Src>>::Err

The error type produced by a failed conversion.
Source§

fn value_into(self) -> Result<Dst, <Src as ValueInto<Dst>>::Err>

Convert the subject into an exactly equivalent representation.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T