journallib/dto/
student_lesson_feedback_response.rs

1use common::entity::DtoResp;
2use common::enums::r_status::RStatus;
3use serde::{Deserialize, Serialize};
4use uuid::Uuid;
5
6#[derive(Serialize, Deserialize, Debug, Clone)]
7#[serde(rename_all = "camelCase")]
8pub struct StudentLessonFeedbackResponse {
9    pub id: Uuid,
10    #[serde(skip_serializing_if = "Option::is_none")]
11    pub rstatus: Option<RStatus>,
12    #[serde(skip_serializing_if = "Option::is_none")]
13    pub ver: Option<i32>,
14    pub lesson: Uuid,
15    pub student: Uuid,
16    #[serde(skip_serializing_if = "Option::is_none")]
17    pub general: Option<i32>,
18    #[serde(skip_serializing_if = "Option::is_none")]
19    pub interesting: Option<i32>,
20    #[serde(skip_serializing_if = "Option::is_none")]
21    pub interesting_comment: Option<String>,
22    #[serde(skip_serializing_if = "Option::is_none")]
23    pub explanation: Option<i32>,
24    #[serde(skip_serializing_if = "Option::is_none")]
25    pub explanation_comment: Option<String>,
26    #[serde(skip_serializing_if = "Option::is_none")]
27    pub understanding: Option<bool>,
28    #[serde(skip_serializing_if = "Option::is_none")]
29    pub understanding_values: Option<Vec<String>>,
30    #[serde(skip_serializing_if = "Option::is_none")]
31    pub questions: Option<bool>,
32    #[serde(skip_serializing_if = "Option::is_none")]
33    pub questions_values: Option<Vec<String>>,
34    #[serde(skip_serializing_if = "Option::is_none")]
35    pub comment: Option<String>,
36}
37
38impl DtoResp for StudentLessonFeedbackResponse {}