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