headless_lms_server/programs/seed/
seed_user_research_consents.rs1use headless_lms_models::{PKeyPolicy, user_research_consents};
2use sqlx::{Pool, Postgres};
3
4use super::seed_users::SeedUsersResult;
5
6pub async fn seed_user_research_consents(
7 db_pool: Pool<Postgres>,
8 seed_users_result: SeedUsersResult,
9) -> anyhow::Result<()> {
10 info!("inserting research consents for users");
11 let mut conn = db_pool.acquire().await?;
12
13 let SeedUsersResult {
14 admin_user_id,
15 teacher_user_id,
16 language_teacher_user_id,
17 assistant_user_id,
18 course_or_exam_creator_user_id,
19 example_normal_user_ids,
20 teaching_and_learning_services_user_id,
21 student_without_research_consent: _,
22 student_without_country,
23 material_viewer_user_id,
24 user_user_id,
25 student_1_user_id,
26 student_2_user_id,
27 student_3_user_id,
28 student_4_user_id,
29 student_5_user_id,
30 student_6_user_id,
31 langs_user_id,
32 } = seed_users_result;
33
34 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, admin_user_id, true).await?;
35 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, teacher_user_id, true).await?;
36 user_research_consents::upsert(
37 &mut conn,
38 PKeyPolicy::Generate,
39 language_teacher_user_id,
40 true,
41 )
42 .await?;
43 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, assistant_user_id, true)
44 .await?;
45 user_research_consents::upsert(
46 &mut conn,
47 PKeyPolicy::Generate,
48 course_or_exam_creator_user_id,
49 true,
50 )
51 .await?;
52 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, user_user_id, true).await?;
53 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, student_1_user_id, true)
54 .await?;
55 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, student_2_user_id, true)
56 .await?;
57 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, student_3_user_id, true)
58 .await?;
59 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, student_4_user_id, true)
60 .await?;
61 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, student_5_user_id, true)
62 .await?;
63 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, student_6_user_id, true)
64 .await?;
65 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, langs_user_id, true).await?;
66
67 user_research_consents::upsert(
68 &mut conn,
69 PKeyPolicy::Generate,
70 teaching_and_learning_services_user_id,
71 true,
72 )
73 .await?;
74 user_research_consents::upsert(
75 &mut conn,
76 PKeyPolicy::Generate,
77 material_viewer_user_id,
78 true,
79 )
80 .await?;
81 user_research_consents::upsert(
82 &mut conn,
83 PKeyPolicy::Generate,
84 student_without_country,
85 true,
86 )
87 .await?;
88
89 for user_id in example_normal_user_ids {
90 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, user_id, true).await?;
91 }
92
93 Ok(())
94}