inventorylib/dto/
debt_response.rs

1use chrono::NaiveDateTime;
2use common::entity::DtoResp;
3use common::enums::status::Status;
4use common::utils::serialize_option_naive_date;
5use serde::{Deserialize, Serialize};
6use uuid::Uuid;
7
8#[derive(Serialize, Deserialize, Debug, Clone)]
9#[serde(rename_all = "camelCase")]
10pub struct DebtResponse {
11    pub id: Uuid,
12    #[serde(skip_serializing_if = "Option::is_none")]
13    #[serde(rename = "owner")]
14    pub owner_id: Option<Uuid>,
15    #[serde(skip_serializing_if = "Option::is_none")]
16    pub organization: Option<Uuid>,
17    #[serde(skip_serializing_if = "Option::is_none")]
18    pub status: Option<Status>,
19    #[serde(default)]
20    #[serde(with = "serialize_option_naive_date")]
21    #[serde(skip_serializing_if = "Option::is_none")]
22    pub start_time: Option<NaiveDateTime>,
23    #[serde(default)]
24    #[serde(with = "serialize_option_naive_date")]
25    #[serde(skip_serializing_if = "Option::is_none")]
26    pub end_time: Option<NaiveDateTime>,
27    #[serde(rename = "stuff")]
28    pub stuff_id: Uuid,
29}
30
31impl DtoResp for DebtResponse {}