librarylib/dto/
request_request.rs1use chrono::NaiveDateTime;
2use common::utils::serialize_option_naive_date;
3use serde::{Deserialize, Serialize};
4use uuid::Uuid;
5
6use common::entity::DtoReq;
7
8use crate::enums::request_status::RequestStatus;
9
10#[derive(Serialize, Deserialize, Debug, Clone)]
11#[serde(rename_all = "camelCase")]
12pub struct RequestRequest {
13 pub id: Option<Uuid>,
14 pub requestor: Uuid,
15 pub status: RequestStatus,
16 pub book: Uuid,
17 pub history: Option<serde_json::Value>,
18 #[serde(skip_serializing_if = "Option::is_none")]
19 #[serde(default)]
20 #[serde(with = "serialize_option_naive_date")]
21 pub return_before: Option<NaiveDateTime>,
22}
23
24impl DtoReq for RequestRequest {}