tutorlib/dto/
search_tutor_request.rsuse serde::{Deserialize, Serialize};
use crate::enums::delivery_type::DeliveryType;
#[derive(Serialize, Deserialize, Debug, Clone)]
#[serde(rename_all = "camelCase")]
pub struct SearchTutorRequest {
pub subject: Option<String>,
pub price_from: Option<i32>,
pub price_to: Option<i32>,
pub delivery_type: Option<DeliveryType>,
}
impl SearchTutorRequest {
pub fn to_search_tutor(&self) -> SearchTutorRequest {
SearchTutorRequest {
subject: if self.subject.is_none() {
Option::from(String::from(""))
} else {
self.subject.clone()
},
price_from: if self.price_from.is_none() {
Some(0)
} else {
self.price_from
},
price_to: if self.price_to.is_none() {
Some(i32::MAX)
} else {
self.price_to
},
delivery_type: self.delivery_type.clone(),
}
}
}