userlib/remote/
user_role_remote.rs1use std::collections::HashMap;
2use common::remote::{get, post, put, services};
3use hyper::HeaderMap;
4use uuid::Uuid;
5
6use crate::dto::user_role_response::UserRoleResponse;
7
8pub fn find_by_class(id: Uuid, headers: HeaderMap) -> Result<Vec<UserRoleResponse>, String> {
9 get::<Vec<UserRoleResponse>>(
10 services::USER_API,
11 format!("/userRole/studentsForClass/{}", id),
12 headers,
13 )
14}
15
16pub fn find_students(headers: HeaderMap) -> Result<Vec<UserRoleResponse>, String> {
17 get::<Vec<UserRoleResponse>>(
18 services::USER_API,
19 "/userRole/studentsForOrg".to_string(),
20 headers,
21 )
22}
23
24pub fn find_main_roles_by_user_ids(ids: Vec<Uuid>) -> Result<HashMap<Uuid, UserRoleResponse>, String> {
25 let headers = HeaderMap::new();
26 post(
27 services::USER_API,
28 "userRole/getMainRolesByListIds".to_string(),
29 headers,
30 ids
31 )
32}
33
34pub fn find_by_id(id: Uuid, headers: HeaderMap) -> Result<UserRoleResponse, String> {
35 get::<UserRoleResponse>(
36 services::USER_API,
37 format!("/userRole/remote/{}", id),
38 headers,
39 )
40}
41
42pub fn edit_class_for_all(
43 old_class_id: Uuid,
44 new_class_id: Uuid,
45 headers: HeaderMap,
46) -> Result<Vec<UserRoleResponse>, String> {
47 put(
48 services::USER_API,
49 format!(
50 "/userRole/editSchoolClassForAll/{}/{}",
51 old_class_id, new_class_id
52 ),
53 headers,
54 "",
55 )
56}