artcoded_api/models/
timesheet.rs

1/*
2 * Artcoded
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: 1.0.0
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct Timesheet {
16    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
17    pub id: Option<String>,
18    #[serde(rename = "dateCreation", skip_serializing_if = "Option::is_none")]
19    pub date_creation: Option<String>,
20    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
21    pub name: Option<String>,
22    #[serde(rename = "periods", skip_serializing_if = "Option::is_none")]
23    pub periods: Option<Vec<models::TimesheetPeriod>>,
24    #[serde(rename = "closed", skip_serializing_if = "Option::is_none")]
25    pub closed: Option<bool>,
26    #[serde(rename = "uploadId", skip_serializing_if = "Option::is_none")]
27    pub upload_id: Option<String>,
28    #[serde(rename = "invoiceId", skip_serializing_if = "Option::is_none")]
29    pub invoice_id: Option<String>,
30    #[serde(rename = "clientId", skip_serializing_if = "Option::is_none")]
31    pub client_id: Option<String>,
32    #[serde(rename = "clientName", skip_serializing_if = "Option::is_none")]
33    pub client_name: Option<String>,
34    #[serde(rename = "settings", skip_serializing_if = "Option::is_none")]
35    pub settings: Option<Box<models::TimesheetSettings>>,
36    #[serde(rename = "yearMonth", skip_serializing_if = "Option::is_none")]
37    pub year_month: Option<String>,
38    #[serde(rename = "year", skip_serializing_if = "Option::is_none")]
39    pub year: Option<i32>,
40    #[serde(rename = "month", skip_serializing_if = "Option::is_none")]
41    pub month: Option<i32>,
42    #[serde(
43        rename = "numberOfWorkingHours",
44        skip_serializing_if = "Option::is_none"
45    )]
46    pub number_of_working_hours: Option<f64>,
47    #[serde(rename = "clientNameOrNA", skip_serializing_if = "Option::is_none")]
48    pub client_name_or_na: Option<String>,
49    #[serde(rename = "monthEnum", skip_serializing_if = "Option::is_none")]
50    pub month_enum: Option<MonthEnum>,
51    #[serde(
52        rename = "numberOfWorkingDays",
53        skip_serializing_if = "Option::is_none"
54    )]
55    pub number_of_working_days: Option<i64>,
56    #[serde(
57        rename = "numberOfHoursWorked",
58        skip_serializing_if = "Option::is_none"
59    )]
60    pub number_of_hours_worked: Option<String>,
61    #[serde(
62        rename = "numberOfMinutesWorked",
63        skip_serializing_if = "Option::is_none"
64    )]
65    pub number_of_minutes_worked: Option<i64>,
66}
67
68impl Timesheet {
69    pub fn new() -> Timesheet {
70        Timesheet {
71            id: None,
72            date_creation: None,
73            name: None,
74            periods: None,
75            closed: None,
76            upload_id: None,
77            invoice_id: None,
78            client_id: None,
79            client_name: None,
80            settings: None,
81            year_month: None,
82            year: None,
83            month: None,
84            number_of_working_hours: None,
85            client_name_or_na: None,
86            month_enum: None,
87            number_of_working_days: None,
88            number_of_hours_worked: None,
89            number_of_minutes_worked: None,
90        }
91    }
92}
93///
94#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
95pub enum MonthEnum {
96    #[serde(rename = "JANUARY")]
97    January,
98    #[serde(rename = "FEBRUARY")]
99    February,
100    #[serde(rename = "MARCH")]
101    March,
102    #[serde(rename = "APRIL")]
103    April,
104    #[serde(rename = "MAY")]
105    May,
106    #[serde(rename = "JUNE")]
107    June,
108    #[serde(rename = "JULY")]
109    July,
110    #[serde(rename = "AUGUST")]
111    August,
112    #[serde(rename = "SEPTEMBER")]
113    September,
114    #[serde(rename = "OCTOBER")]
115    October,
116    #[serde(rename = "NOVEMBER")]
117    November,
118    #[serde(rename = "DECEMBER")]
119    December,
120}
121
122impl Default for MonthEnum {
123    fn default() -> MonthEnum {
124        Self::January
125    }
126}