Skip to main content

text_document_direct_access/table/
dtos.rs

1// Generated by Qleany v1.5.1 from entity_dtos.tera
2
3use common::entities::Alignment;
4use common::entities::Table;
5use common::types::EntityId;
6use serde::{Deserialize, Serialize};
7use std::convert::From;
8
9#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10pub struct TableDto {
11    pub id: EntityId,
12    pub created_at: chrono::DateTime<chrono::Utc>,
13    pub updated_at: chrono::DateTime<chrono::Utc>,
14    pub cells: Vec<EntityId>,
15    pub rows: i64,
16    pub columns: i64,
17    pub column_widths: Vec<i64>,
18    pub fmt_border: Option<i64>,
19    pub fmt_cell_spacing: Option<i64>,
20    pub fmt_cell_padding: Option<i64>,
21    pub fmt_width: Option<i64>,
22    pub fmt_alignment: Option<Alignment>,
23}
24
25impl From<TableDto> for Table {
26    fn from(dto: TableDto) -> Self {
27        Table {
28            id: dto.id,
29            created_at: dto.created_at,
30            updated_at: dto.updated_at,
31            cells: dto.cells,
32            rows: dto.rows,
33            columns: dto.columns,
34            column_widths: dto.column_widths,
35            fmt_border: dto.fmt_border,
36            fmt_cell_spacing: dto.fmt_cell_spacing,
37            fmt_cell_padding: dto.fmt_cell_padding,
38            fmt_width: dto.fmt_width,
39            fmt_alignment: dto.fmt_alignment,
40        }
41    }
42}
43
44impl From<&TableDto> for Table {
45    fn from(dto: &TableDto) -> Self {
46        Table {
47            id: dto.id,
48            created_at: dto.created_at,
49            updated_at: dto.updated_at,
50            cells: dto.cells.clone(),
51            rows: dto.rows,
52            columns: dto.columns,
53            column_widths: dto.column_widths.clone(),
54            fmt_border: dto.fmt_border,
55            fmt_cell_spacing: dto.fmt_cell_spacing,
56            fmt_cell_padding: dto.fmt_cell_padding,
57            fmt_width: dto.fmt_width,
58            fmt_alignment: dto.fmt_alignment.clone(),
59        }
60    }
61}
62
63impl From<Table> for TableDto {
64    fn from(entity: Table) -> Self {
65        TableDto {
66            id: entity.id,
67            created_at: entity.created_at,
68            updated_at: entity.updated_at,
69            cells: entity.cells,
70            rows: entity.rows,
71            columns: entity.columns,
72            column_widths: entity.column_widths,
73            fmt_border: entity.fmt_border,
74            fmt_cell_spacing: entity.fmt_cell_spacing,
75            fmt_cell_padding: entity.fmt_cell_padding,
76            fmt_width: entity.fmt_width,
77            fmt_alignment: entity.fmt_alignment,
78        }
79    }
80}
81
82#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
83pub struct CreateTableDto {
84    pub created_at: chrono::DateTime<chrono::Utc>,
85    pub updated_at: chrono::DateTime<chrono::Utc>,
86    pub cells: Vec<EntityId>,
87    pub rows: i64,
88    pub columns: i64,
89    pub column_widths: Vec<i64>,
90    pub fmt_border: Option<i64>,
91    pub fmt_cell_spacing: Option<i64>,
92    pub fmt_cell_padding: Option<i64>,
93    pub fmt_width: Option<i64>,
94    pub fmt_alignment: Option<Alignment>,
95}
96
97impl From<CreateTableDto> for Table {
98    fn from(dto: CreateTableDto) -> Self {
99        Table {
100            id: 0,
101            created_at: dto.created_at,
102            updated_at: dto.updated_at,
103            cells: dto.cells,
104            rows: dto.rows,
105            columns: dto.columns,
106            column_widths: dto.column_widths,
107            fmt_border: dto.fmt_border,
108            fmt_cell_spacing: dto.fmt_cell_spacing,
109            fmt_cell_padding: dto.fmt_cell_padding,
110            fmt_width: dto.fmt_width,
111            fmt_alignment: dto.fmt_alignment,
112        }
113    }
114}
115
116impl From<&CreateTableDto> for Table {
117    fn from(dto: &CreateTableDto) -> Self {
118        Table {
119            id: 0,
120            created_at: dto.created_at,
121            updated_at: dto.updated_at,
122            cells: dto.cells.clone(),
123            rows: dto.rows,
124            columns: dto.columns,
125            column_widths: dto.column_widths.clone(),
126            fmt_border: dto.fmt_border,
127            fmt_cell_spacing: dto.fmt_cell_spacing,
128            fmt_cell_padding: dto.fmt_cell_padding,
129            fmt_width: dto.fmt_width,
130            fmt_alignment: dto.fmt_alignment.clone(),
131        }
132    }
133}
134
135impl From<Table> for CreateTableDto {
136    fn from(entity: Table) -> Self {
137        CreateTableDto {
138            created_at: entity.created_at,
139            updated_at: entity.updated_at,
140            cells: entity.cells,
141            rows: entity.rows,
142            columns: entity.columns,
143            column_widths: entity.column_widths,
144            fmt_border: entity.fmt_border,
145            fmt_cell_spacing: entity.fmt_cell_spacing,
146            fmt_cell_padding: entity.fmt_cell_padding,
147            fmt_width: entity.fmt_width,
148            fmt_alignment: entity.fmt_alignment,
149        }
150    }
151}
152
153#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
154pub struct UpdateTableDto {
155    pub id: EntityId,
156    pub created_at: chrono::DateTime<chrono::Utc>,
157    pub updated_at: chrono::DateTime<chrono::Utc>,
158    pub rows: i64,
159    pub columns: i64,
160    pub column_widths: Vec<i64>,
161    pub fmt_border: Option<i64>,
162    pub fmt_cell_spacing: Option<i64>,
163    pub fmt_cell_padding: Option<i64>,
164    pub fmt_width: Option<i64>,
165    pub fmt_alignment: Option<Alignment>,
166}
167
168impl From<UpdateTableDto> for Table {
169    fn from(dto: UpdateTableDto) -> Self {
170        Table {
171            id: dto.id,
172            created_at: dto.created_at,
173            updated_at: dto.updated_at,
174            rows: dto.rows,
175            columns: dto.columns,
176            column_widths: dto.column_widths,
177            fmt_border: dto.fmt_border,
178            fmt_cell_spacing: dto.fmt_cell_spacing,
179            fmt_cell_padding: dto.fmt_cell_padding,
180            fmt_width: dto.fmt_width,
181            fmt_alignment: dto.fmt_alignment,
182            cells: Default::default(),
183        }
184    }
185}
186
187impl From<&UpdateTableDto> for Table {
188    fn from(dto: &UpdateTableDto) -> Self {
189        Table {
190            id: dto.id,
191            created_at: dto.created_at,
192            updated_at: dto.updated_at,
193            rows: dto.rows,
194            columns: dto.columns,
195            column_widths: dto.column_widths.clone(),
196            fmt_border: dto.fmt_border,
197            fmt_cell_spacing: dto.fmt_cell_spacing,
198            fmt_cell_padding: dto.fmt_cell_padding,
199            fmt_width: dto.fmt_width,
200            fmt_alignment: dto.fmt_alignment.clone(),
201            cells: Default::default(),
202        }
203    }
204}
205
206impl From<Table> for UpdateTableDto {
207    fn from(entity: Table) -> Self {
208        UpdateTableDto {
209            id: entity.id,
210            created_at: entity.created_at,
211            updated_at: entity.updated_at,
212            rows: entity.rows,
213            columns: entity.columns,
214            column_widths: entity.column_widths,
215            fmt_border: entity.fmt_border,
216            fmt_cell_spacing: entity.fmt_cell_spacing,
217            fmt_cell_padding: entity.fmt_cell_padding,
218            fmt_width: entity.fmt_width,
219            fmt_alignment: entity.fmt_alignment,
220        }
221    }
222}
223
224impl From<TableDto> for UpdateTableDto {
225    fn from(dto: TableDto) -> Self {
226        UpdateTableDto {
227            id: dto.id,
228            created_at: dto.created_at,
229            updated_at: dto.updated_at,
230            rows: dto.rows,
231            columns: dto.columns,
232            column_widths: dto.column_widths,
233            fmt_border: dto.fmt_border,
234            fmt_cell_spacing: dto.fmt_cell_spacing,
235            fmt_cell_padding: dto.fmt_cell_padding,
236            fmt_width: dto.fmt_width,
237            fmt_alignment: dto.fmt_alignment,
238        }
239    }
240}
241pub use common::direct_access::table::TableRelationshipField;
242
243#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
244pub struct TableRelationshipDto {
245    pub id: EntityId,
246    pub field: TableRelationshipField,
247    pub right_ids: Vec<EntityId>,
248}