userlib/remote/
user_role_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
35
36
37
38
39
40
41
42
43
44
45
use common::remote::{get, put, services};
use hyper::HeaderMap;
use uuid::Uuid;

use crate::dto::user_role_response::UserRoleResponse;

pub fn find_by_class(id: Uuid, headers: HeaderMap) -> Result<Vec<UserRoleResponse>, String> {
    get::<Vec<UserRoleResponse>>(
        services::USER_API,
        format!("/userRole/studentsForClass/{}", id),
        headers,
    )
}

pub fn find_students(headers: HeaderMap) -> Result<Vec<UserRoleResponse>, String> {
    get::<Vec<UserRoleResponse>>(
        services::USER_API,
        "/userRole/studentsForOrg".to_string(),
        headers,
    )
}

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

pub fn edit_class_for_all(
    old_class_id: Uuid,
    new_class_id: Uuid,
    headers: HeaderMap,
) -> Result<Vec<UserRoleResponse>, String> {
    put(
        services::USER_API,
        format!(
            "/userRole/editSchoolClassForAll/{}/{}",
            old_class_id, new_class_id
        ),
        headers,
        "",
    )
}