stcloud/models/
charges_details_response_dto.rs1#![allow(unused_imports)]
11
12use serde_json::Value;
13use bigdecimal::BigDecimal;
14use chrono::{Date, NaiveDateTime, NaiveDate, DateTime, FixedOffset, Utc};
15
16use crate::models::*;
17use crate::date_serializer;
18use crate::date_serializer_opt;
19use crate::serialize_quoted_numbers;
20use crate::serialize_quoted_numbers_opt;
21#[derive(Debug, Serialize, Deserialize, PartialEq, Clone)]
25pub struct ChargesDetailsResponseDto {
26 #[serde(rename = "app")]
27 #[serde(default)]
28 app: Option<App>,
29 #[serde(rename = "chargeBase")]
30 #[serde(default)]
31 charge_base: Option<String>,
32 #[serde(rename = "dayUsageData")]
33 #[serde(default)]
34 day_usage_data: Option<Vec<DayUsageData>>,
35 #[serde(rename = "monthlyFeeAmount")]
36 #[serde(default)]
37 monthly_fee_amount: Option<f32>,
38 #[serde(rename = "periodFeePeriods")]
39 #[serde(default)]
40 period_fee_periods: Option<Vec<MinPeriodFeePeriod>>,
41 #[serde(rename = "totalAmount")]
42 #[serde(default)]
43 total_amount: Option<f32>,
44 #[serde(rename = "usageAmount")]
45 #[serde(default)]
46 usage_amount: Option<f32>
47}
48
49impl ChargesDetailsResponseDto {
50 pub fn new() -> ChargesDetailsResponseDto {
51 ChargesDetailsResponseDto {
52 app: None,
53 charge_base: None,
54 day_usage_data: None,
55 monthly_fee_amount: None,
56 period_fee_periods: None,
57 total_amount: None,
58 usage_amount: None
59 }
60 }
61
62 pub fn set_app(&mut self, app: App) {
63 self.app = Some(app);
64 }
65
66 pub fn with_app(mut self, app: App) -> ChargesDetailsResponseDto {
67 self.app = Some(app);
68 self
69 }
70
71 pub fn app(&self) -> Option<&App> {
72 self.app.as_ref()
73 }
74
75 pub fn reset_app(&mut self) {
76 self.app = None;
77 }
78
79 pub fn set_charge_base(&mut self, charge_base: String) {
80 self.charge_base = Some(charge_base);
81 }
82
83 pub fn with_charge_base(mut self, charge_base: String) -> ChargesDetailsResponseDto {
84 self.charge_base = Some(charge_base);
85 self
86 }
87
88 pub fn charge_base(&self) -> Option<&String> {
89 self.charge_base.as_ref()
90 }
91
92 pub fn reset_charge_base(&mut self) {
93 self.charge_base = None;
94 }
95
96 pub fn set_day_usage_data(&mut self, day_usage_data: Vec<DayUsageData>) {
97 self.day_usage_data = Some(day_usage_data);
98 }
99
100 pub fn with_day_usage_data(mut self, day_usage_data: Vec<DayUsageData>) -> ChargesDetailsResponseDto {
101 self.day_usage_data = Some(day_usage_data);
102 self
103 }
104
105 pub fn day_usage_data(&self) -> Option<&Vec<DayUsageData>> {
106 self.day_usage_data.as_ref()
107 }
108
109 pub fn reset_day_usage_data(&mut self) {
110 self.day_usage_data = None;
111 }
112
113 pub fn set_monthly_fee_amount(&mut self, monthly_fee_amount: f32) {
114 self.monthly_fee_amount = Some(monthly_fee_amount);
115 }
116
117 pub fn with_monthly_fee_amount(mut self, monthly_fee_amount: f32) -> ChargesDetailsResponseDto {
118 self.monthly_fee_amount = Some(monthly_fee_amount);
119 self
120 }
121
122 pub fn monthly_fee_amount(&self) -> Option<&f32> {
123 self.monthly_fee_amount.as_ref()
124 }
125
126 pub fn reset_monthly_fee_amount(&mut self) {
127 self.monthly_fee_amount = None;
128 }
129
130 pub fn set_period_fee_periods(&mut self, period_fee_periods: Vec<MinPeriodFeePeriod>) {
131 self.period_fee_periods = Some(period_fee_periods);
132 }
133
134 pub fn with_period_fee_periods(mut self, period_fee_periods: Vec<MinPeriodFeePeriod>) -> ChargesDetailsResponseDto {
135 self.period_fee_periods = Some(period_fee_periods);
136 self
137 }
138
139 pub fn period_fee_periods(&self) -> Option<&Vec<MinPeriodFeePeriod>> {
140 self.period_fee_periods.as_ref()
141 }
142
143 pub fn reset_period_fee_periods(&mut self) {
144 self.period_fee_periods = None;
145 }
146
147 pub fn set_total_amount(&mut self, total_amount: f32) {
148 self.total_amount = Some(total_amount);
149 }
150
151 pub fn with_total_amount(mut self, total_amount: f32) -> ChargesDetailsResponseDto {
152 self.total_amount = Some(total_amount);
153 self
154 }
155
156 pub fn total_amount(&self) -> Option<&f32> {
157 self.total_amount.as_ref()
158 }
159
160 pub fn reset_total_amount(&mut self) {
161 self.total_amount = None;
162 }
163
164 pub fn set_usage_amount(&mut self, usage_amount: f32) {
165 self.usage_amount = Some(usage_amount);
166 }
167
168 pub fn with_usage_amount(mut self, usage_amount: f32) -> ChargesDetailsResponseDto {
169 self.usage_amount = Some(usage_amount);
170 self
171 }
172
173 pub fn usage_amount(&self) -> Option<&f32> {
174 self.usage_amount.as_ref()
175 }
176
177 pub fn reset_usage_amount(&mut self) {
178 self.usage_amount = None;
179 }
180
181
182 pub fn validate(&self) {
183 }
184
185}
186
187