librarylib/dto/
author_response.rs1use chrono::NaiveDateTime;
2use serde::{Deserialize, Serialize};
3use serde_json;
4use uuid::Uuid;
5
6use common::entity::DtoReq;
7
8
9#[derive(Serialize, Deserialize, Debug, Clone)]
10#[serde(rename_all = "camelCase")]
11pub struct AuthorResponse {
12 pub id: Uuid,
13 #[serde(skip_serializing_if = "Option::is_none")]
14 pub key: Option<String>,
15 #[serde(skip_serializing_if = "Option::is_none")]
16 pub name: Option<String>,
17 #[serde(skip_serializing_if = "Option::is_none")]
18 pub eastern_order: Option<bool>,
19 #[serde(skip_serializing_if = "Option::is_none")]
20 pub personal_name: Option<String>,
21 #[serde(skip_serializing_if = "Option::is_none")]
22 pub enumeration: Option<String>,
23 #[serde(skip_serializing_if = "Option::is_none")]
24 pub title: Option<String>,
25 #[serde(skip_serializing_if = "Option::is_none")]
26 pub alternate_names: Option<Vec<String>>,
27 #[serde(skip_serializing_if = "Option::is_none")]
28 pub uris: Option<String>,
29 #[serde(skip_serializing_if = "Option::is_none")]
30 pub bio: Option<String>,
31 #[serde(skip_serializing_if = "Option::is_none")]
32 pub location: Option<String>,
33 #[serde(skip_serializing_if = "Option::is_none")]
34 pub birth_date: Option<String>,
35 #[serde(skip_serializing_if = "Option::is_none")]
36 pub death_date: Option<String>,
37 #[serde(skip_serializing_if = "Option::is_none")]
38 pub date: Option<String>,
39 #[serde(skip_serializing_if = "Option::is_none")]
40 pub wikipedia: Option<String>,
41 #[serde(skip_serializing_if = "Option::is_none")]
42 pub links: Option<Vec<serde_json::Value>>,
43 #[serde(skip_serializing_if = "Option::is_none")]
44 pub source_records: Option<Vec<String>>,
45 #[serde(skip_serializing_if = "Option::is_none")]
46 pub created: Option<NaiveDateTime>,
47 #[serde(skip_serializing_if = "Option::is_none")]
48 pub last_modified: Option<NaiveDateTime>,
49 #[serde(skip_serializing_if = "Option::is_none")]
50 pub revision: Option<i32>,
51 #[serde(skip_serializing_if = "Option::is_none")]
52 pub latest_revision: Option<i32>,
53}
54
55impl DtoReq for AuthorResponse {}