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 student_7_user_id: _,
32 student_8_user_id: _,
33 langs_user_id,
34 sign_up_user,
35 } = seed_users_result;
36
37 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, admin_user_id, true).await?;
38 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, teacher_user_id, true).await?;
39 user_research_consents::upsert(
40 &mut conn,
41 PKeyPolicy::Generate,
42 language_teacher_user_id,
43 true,
44 )
45 .await?;
46 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, assistant_user_id, true)
47 .await?;
48 user_research_consents::upsert(
49 &mut conn,
50 PKeyPolicy::Generate,
51 course_or_exam_creator_user_id,
52 true,
53 )
54 .await?;
55 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, user_user_id, true).await?;
56 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, student_1_user_id, true)
57 .await?;
58 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, student_2_user_id, true)
59 .await?;
60 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, student_3_user_id, true)
61 .await?;
62 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, student_4_user_id, true)
63 .await?;
64 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, student_5_user_id, true)
65 .await?;
66 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, student_6_user_id, true)
67 .await?;
68 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, langs_user_id, true).await?;
69
70 user_research_consents::upsert(
71 &mut conn,
72 PKeyPolicy::Generate,
73 teaching_and_learning_services_user_id,
74 true,
75 )
76 .await?;
77 user_research_consents::upsert(
78 &mut conn,
79 PKeyPolicy::Generate,
80 material_viewer_user_id,
81 true,
82 )
83 .await?;
84 user_research_consents::upsert(
85 &mut conn,
86 PKeyPolicy::Generate,
87 student_without_country,
88 true,
89 )
90 .await?;
91 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, sign_up_user, true).await?;
92
93 for user_id in example_normal_user_ids {
94 user_research_consents::upsert(&mut conn, PKeyPolicy::Generate, user_id, true).await?;
95 }
96
97 Ok(())
98}