userlib/sync_remote/
user_remote.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
use common::remote::{get, post, services};
use hyper::HeaderMap;
use uuid::Uuid;

use crate::dto::public_teacher_response::PublicTeacherResponse;
use crate::dto::user_with_roles_response::UserWithRolesResponse;

pub fn find_robo_teacher(headers: HeaderMap) -> Result<UserWithRolesResponse, String> {
    get::<UserWithRolesResponse>(
        services::USER_API,
        String::from("/user/getRoboTeacher"),
        headers,
    )
}

pub fn find_by_id(id: Uuid, headers: HeaderMap) -> Result<UserWithRolesResponse, String> {
    get::<UserWithRolesResponse>(
        services::USER_API,
        format!("/user/{}", id),
        headers,
    )
}

pub fn public_get_teachers_info(
    uuids: Vec<Uuid>,
    headers: HeaderMap,
) -> Result<Vec<PublicTeacherResponse>, String> {
    post::<_, Vec<PublicTeacherResponse>>(
        services::USER_API,
        String::from(format!("{}", "/publicUser/getTeachersInfo")),
        headers,
        uuids,
    )
}