journallib/dto/lesson_response_with_mark_and_homework.rs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
// use chrono::NaiveDateTime;
// use common::enums::lesson_type::LessonType;
// use common::enums::status::Status;
// use common::utils::serialize_option_naive_date;
// use serde::{Deserialize, Serialize};
// use uuid::Uuid;
//
// use crate::dto::homework_response::HomeworkResponse;
// use crate::dto::mark_response::MarkResponse;
// use crate::dto::scenario_section::ScenarioSections;
// use crate::entity::lesson::Lesson;
//
// #[derive(Serialize, Deserialize)]
// #[serde(rename_all = "camelCase")]
// pub struct LessonResponseWithMarkAndHomework {
// pub id: Uuid,
// #[serde(skip_serializing_if = "Option::is_none")]
// pub ver: Option<i32>,
// #[serde(skip_serializing_if = "Option::is_none")]
// pub comment: Option<String>,
// #[serde(skip_serializing_if = "Option::is_none")]
// pub importance_default: Option<i32>,
// #[serde(skip_serializing_if = "Option::is_none")]
// #[serde(rename = "type")]
// pub lesson_type: Option<LessonType>,
// #[serde(skip_serializing_if = "Option::is_none")]
// pub curriculum: Option<Uuid>,
// #[serde(skip_serializing_if = "Option::is_none")]
// pub test: Option<Uuid>,
// #[serde(default)]
// #[serde(with = "serialize_option_naive_date")]
// #[serde(skip_serializing_if = "Option::is_none")]
// pub date: Option<NaiveDateTime>,
// #[serde(skip_serializing_if = "Option::is_none")]
// pub journal: Option<Uuid>,
// #[serde(skip_serializing_if = "Option::is_none")]
// pub status: Option<Status>,
// #[serde(skip_serializing_if = "Option::is_none")]
// pub in_schedule: Option<String>,
// #[serde(skip_serializing_if = "Option::is_none")]
// pub room: Option<Uuid>,
// pub marks: Vec<MarkResponse>,
// pub homeworks: Vec<HomeworkResponse>,
// #[serde(skip_serializing_if = "Option::is_none")]
// pub slot: Option<Uuid>,
// #[serde(skip_serializing_if = "Option::is_none")]
// pub tasks: Option<serde_json::Value>,
// #[serde(skip_serializing_if = "Option::is_none")]
// pub scenario_sections: Option<ScenarioSections>,
// #[serde(skip_serializing_if = "Option::is_none")]
// pub actions: Option<Vec<serde_json::Value>>,
// pub lesson_status: String,
// }
//
// impl LessonResponseWithMarkAndHomework {
// pub fn make(
// lesson: Lesson,
// marks: Vec<MarkResponse>,
// homeworks: Vec<HomeworkResponse>,
// ) -> LessonResponseWithMarkAndHomework {
// LessonResponseWithMarkAndHomework {
// id: lesson.uuid,
// ver: lesson.ver,
// comment: lesson.comment,
// importance_default: lesson.importance_default,
// lesson_type: lesson.lesson_type,
// curriculum: lesson.curriculum,
// test: lesson.test,
// date: lesson.date,
// journal: lesson.journal,
// status: lesson.status,
// in_schedule: lesson.in_schedule,
// room: lesson.room,
// marks,
// homeworks,
// slot: lesson.slot,
// tasks: lesson.tasks,
// scenario_sections: lesson.scenario_sections,
// actions: lesson.actions,
// lesson_status: lesson.lesson_status,
// }
// }
// }