AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
InvoiceSummary.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/invoicing/Invoicing_EXPORTS.h>
10#include <aws/invoicing/model/BillingPeriod.h>
11#include <aws/invoicing/model/Entity.h>
12#include <aws/invoicing/model/InvoiceCurrencyAmount.h>
13#include <aws/invoicing/model/InvoiceType.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace Invoicing {
25namespace Model {
26
33 public:
34 AWS_INVOICING_API InvoiceSummary() = default;
35 AWS_INVOICING_API InvoiceSummary(Aws::Utils::Json::JsonView jsonValue);
37 AWS_INVOICING_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline const Aws::String& GetAccountId() const { return m_accountId; }
44 inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; }
45 template <typename AccountIdT = Aws::String>
46 void SetAccountId(AccountIdT&& value) {
47 m_accountIdHasBeenSet = true;
48 m_accountId = std::forward<AccountIdT>(value);
49 }
50 template <typename AccountIdT = Aws::String>
51 InvoiceSummary& WithAccountId(AccountIdT&& value) {
52 SetAccountId(std::forward<AccountIdT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::String& GetInvoiceId() const { return m_invoiceId; }
62 inline bool InvoiceIdHasBeenSet() const { return m_invoiceIdHasBeenSet; }
63 template <typename InvoiceIdT = Aws::String>
64 void SetInvoiceId(InvoiceIdT&& value) {
65 m_invoiceIdHasBeenSet = true;
66 m_invoiceId = std::forward<InvoiceIdT>(value);
67 }
68 template <typename InvoiceIdT = Aws::String>
69 InvoiceSummary& WithInvoiceId(InvoiceIdT&& value) {
70 SetInvoiceId(std::forward<InvoiceIdT>(value));
71 return *this;
72 }
74
76
79 inline const Aws::Utils::DateTime& GetIssuedDate() const { return m_issuedDate; }
80 inline bool IssuedDateHasBeenSet() const { return m_issuedDateHasBeenSet; }
81 template <typename IssuedDateT = Aws::Utils::DateTime>
82 void SetIssuedDate(IssuedDateT&& value) {
83 m_issuedDateHasBeenSet = true;
84 m_issuedDate = std::forward<IssuedDateT>(value);
85 }
86 template <typename IssuedDateT = Aws::Utils::DateTime>
87 InvoiceSummary& WithIssuedDate(IssuedDateT&& value) {
88 SetIssuedDate(std::forward<IssuedDateT>(value));
89 return *this;
90 }
92
94
97 inline const Aws::Utils::DateTime& GetDueDate() const { return m_dueDate; }
98 inline bool DueDateHasBeenSet() const { return m_dueDateHasBeenSet; }
99 template <typename DueDateT = Aws::Utils::DateTime>
100 void SetDueDate(DueDateT&& value) {
101 m_dueDateHasBeenSet = true;
102 m_dueDate = std::forward<DueDateT>(value);
103 }
104 template <typename DueDateT = Aws::Utils::DateTime>
105 InvoiceSummary& WithDueDate(DueDateT&& value) {
106 SetDueDate(std::forward<DueDateT>(value));
107 return *this;
108 }
110
112
115 inline const Entity& GetEntity() const { return m_entity; }
116 inline bool EntityHasBeenSet() const { return m_entityHasBeenSet; }
117 template <typename EntityT = Entity>
118 void SetEntity(EntityT&& value) {
119 m_entityHasBeenSet = true;
120 m_entity = std::forward<EntityT>(value);
121 }
122 template <typename EntityT = Entity>
123 InvoiceSummary& WithEntity(EntityT&& value) {
124 SetEntity(std::forward<EntityT>(value));
125 return *this;
126 }
128
130
133 inline const BillingPeriod& GetBillingPeriod() const { return m_billingPeriod; }
134 inline bool BillingPeriodHasBeenSet() const { return m_billingPeriodHasBeenSet; }
135 template <typename BillingPeriodT = BillingPeriod>
136 void SetBillingPeriod(BillingPeriodT&& value) {
137 m_billingPeriodHasBeenSet = true;
138 m_billingPeriod = std::forward<BillingPeriodT>(value);
139 }
140 template <typename BillingPeriodT = BillingPeriod>
141 InvoiceSummary& WithBillingPeriod(BillingPeriodT&& value) {
142 SetBillingPeriod(std::forward<BillingPeriodT>(value));
143 return *this;
144 }
146
148
151 inline InvoiceType GetInvoiceType() const { return m_invoiceType; }
152 inline bool InvoiceTypeHasBeenSet() const { return m_invoiceTypeHasBeenSet; }
153 inline void SetInvoiceType(InvoiceType value) {
154 m_invoiceTypeHasBeenSet = true;
155 m_invoiceType = value;
156 }
158 SetInvoiceType(value);
159 return *this;
160 }
162
164
167 inline const Aws::String& GetOriginalInvoiceId() const { return m_originalInvoiceId; }
168 inline bool OriginalInvoiceIdHasBeenSet() const { return m_originalInvoiceIdHasBeenSet; }
169 template <typename OriginalInvoiceIdT = Aws::String>
170 void SetOriginalInvoiceId(OriginalInvoiceIdT&& value) {
171 m_originalInvoiceIdHasBeenSet = true;
172 m_originalInvoiceId = std::forward<OriginalInvoiceIdT>(value);
173 }
174 template <typename OriginalInvoiceIdT = Aws::String>
175 InvoiceSummary& WithOriginalInvoiceId(OriginalInvoiceIdT&& value) {
176 SetOriginalInvoiceId(std::forward<OriginalInvoiceIdT>(value));
177 return *this;
178 }
180
182
185 inline const Aws::String& GetPurchaseOrderNumber() const { return m_purchaseOrderNumber; }
186 inline bool PurchaseOrderNumberHasBeenSet() const { return m_purchaseOrderNumberHasBeenSet; }
187 template <typename PurchaseOrderNumberT = Aws::String>
188 void SetPurchaseOrderNumber(PurchaseOrderNumberT&& value) {
189 m_purchaseOrderNumberHasBeenSet = true;
190 m_purchaseOrderNumber = std::forward<PurchaseOrderNumberT>(value);
191 }
192 template <typename PurchaseOrderNumberT = Aws::String>
193 InvoiceSummary& WithPurchaseOrderNumber(PurchaseOrderNumberT&& value) {
194 SetPurchaseOrderNumber(std::forward<PurchaseOrderNumberT>(value));
195 return *this;
196 }
198
200
203 inline const InvoiceCurrencyAmount& GetBaseCurrencyAmount() const { return m_baseCurrencyAmount; }
204 inline bool BaseCurrencyAmountHasBeenSet() const { return m_baseCurrencyAmountHasBeenSet; }
205 template <typename BaseCurrencyAmountT = InvoiceCurrencyAmount>
206 void SetBaseCurrencyAmount(BaseCurrencyAmountT&& value) {
207 m_baseCurrencyAmountHasBeenSet = true;
208 m_baseCurrencyAmount = std::forward<BaseCurrencyAmountT>(value);
209 }
210 template <typename BaseCurrencyAmountT = InvoiceCurrencyAmount>
211 InvoiceSummary& WithBaseCurrencyAmount(BaseCurrencyAmountT&& value) {
212 SetBaseCurrencyAmount(std::forward<BaseCurrencyAmountT>(value));
213 return *this;
214 }
216
218
221 inline const InvoiceCurrencyAmount& GetTaxCurrencyAmount() const { return m_taxCurrencyAmount; }
222 inline bool TaxCurrencyAmountHasBeenSet() const { return m_taxCurrencyAmountHasBeenSet; }
223 template <typename TaxCurrencyAmountT = InvoiceCurrencyAmount>
224 void SetTaxCurrencyAmount(TaxCurrencyAmountT&& value) {
225 m_taxCurrencyAmountHasBeenSet = true;
226 m_taxCurrencyAmount = std::forward<TaxCurrencyAmountT>(value);
227 }
228 template <typename TaxCurrencyAmountT = InvoiceCurrencyAmount>
229 InvoiceSummary& WithTaxCurrencyAmount(TaxCurrencyAmountT&& value) {
230 SetTaxCurrencyAmount(std::forward<TaxCurrencyAmountT>(value));
231 return *this;
232 }
234
236
239 inline const InvoiceCurrencyAmount& GetPaymentCurrencyAmount() const { return m_paymentCurrencyAmount; }
240 inline bool PaymentCurrencyAmountHasBeenSet() const { return m_paymentCurrencyAmountHasBeenSet; }
241 template <typename PaymentCurrencyAmountT = InvoiceCurrencyAmount>
242 void SetPaymentCurrencyAmount(PaymentCurrencyAmountT&& value) {
243 m_paymentCurrencyAmountHasBeenSet = true;
244 m_paymentCurrencyAmount = std::forward<PaymentCurrencyAmountT>(value);
245 }
246 template <typename PaymentCurrencyAmountT = InvoiceCurrencyAmount>
247 InvoiceSummary& WithPaymentCurrencyAmount(PaymentCurrencyAmountT&& value) {
248 SetPaymentCurrencyAmount(std::forward<PaymentCurrencyAmountT>(value));
249 return *this;
250 }
252 private:
253 Aws::String m_accountId;
254
255 Aws::String m_invoiceId;
256
257 Aws::Utils::DateTime m_issuedDate{};
258
259 Aws::Utils::DateTime m_dueDate{};
260
261 Entity m_entity;
262
263 BillingPeriod m_billingPeriod;
264
265 InvoiceType m_invoiceType{InvoiceType::NOT_SET};
266
267 Aws::String m_originalInvoiceId;
268
269 Aws::String m_purchaseOrderNumber;
270
271 InvoiceCurrencyAmount m_baseCurrencyAmount;
272
273 InvoiceCurrencyAmount m_taxCurrencyAmount;
274
275 InvoiceCurrencyAmount m_paymentCurrencyAmount;
276 bool m_accountIdHasBeenSet = false;
277 bool m_invoiceIdHasBeenSet = false;
278 bool m_issuedDateHasBeenSet = false;
279 bool m_dueDateHasBeenSet = false;
280 bool m_entityHasBeenSet = false;
281 bool m_billingPeriodHasBeenSet = false;
282 bool m_invoiceTypeHasBeenSet = false;
283 bool m_originalInvoiceIdHasBeenSet = false;
284 bool m_purchaseOrderNumberHasBeenSet = false;
285 bool m_baseCurrencyAmountHasBeenSet = false;
286 bool m_taxCurrencyAmountHasBeenSet = false;
287 bool m_paymentCurrencyAmountHasBeenSet = false;
288};
289
290} // namespace Model
291} // namespace Invoicing
292} // namespace Aws
AWS_INVOICING_API InvoiceSummary(Aws::Utils::Json::JsonView jsonValue)
const InvoiceCurrencyAmount & GetBaseCurrencyAmount() const
void SetPurchaseOrderNumber(PurchaseOrderNumberT &&value)
InvoiceSummary & WithIssuedDate(IssuedDateT &&value)
void SetInvoiceType(InvoiceType value)
void SetBillingPeriod(BillingPeriodT &&value)
void SetAccountId(AccountIdT &&value)
InvoiceSummary & WithBaseCurrencyAmount(BaseCurrencyAmountT &&value)
AWS_INVOICING_API Aws::Utils::Json::JsonValue Jsonize() const
InvoiceSummary & WithPurchaseOrderNumber(PurchaseOrderNumberT &&value)
InvoiceSummary & WithPaymentCurrencyAmount(PaymentCurrencyAmountT &&value)
AWS_INVOICING_API InvoiceSummary()=default
InvoiceSummary & WithInvoiceType(InvoiceType value)
void SetTaxCurrencyAmount(TaxCurrencyAmountT &&value)
InvoiceSummary & WithDueDate(DueDateT &&value)
const Aws::String & GetInvoiceId() const
const Aws::Utils::DateTime & GetDueDate() const
InvoiceSummary & WithTaxCurrencyAmount(TaxCurrencyAmountT &&value)
void SetInvoiceId(InvoiceIdT &&value)
InvoiceSummary & WithOriginalInvoiceId(OriginalInvoiceIdT &&value)
InvoiceSummary & WithBillingPeriod(BillingPeriodT &&value)
const InvoiceCurrencyAmount & GetTaxCurrencyAmount() const
const Aws::Utils::DateTime & GetIssuedDate() const
void SetIssuedDate(IssuedDateT &&value)
const InvoiceCurrencyAmount & GetPaymentCurrencyAmount() const
void SetPaymentCurrencyAmount(PaymentCurrencyAmountT &&value)
const Aws::String & GetAccountId() const
InvoiceSummary & WithEntity(EntityT &&value)
InvoiceSummary & WithAccountId(AccountIdT &&value)
const Aws::String & GetPurchaseOrderNumber() const
void SetBaseCurrencyAmount(BaseCurrencyAmountT &&value)
const Aws::String & GetOriginalInvoiceId() const
AWS_INVOICING_API InvoiceSummary & operator=(Aws::Utils::Json::JsonView jsonValue)
InvoiceSummary & WithInvoiceId(InvoiceIdT &&value)
void SetOriginalInvoiceId(OriginalInvoiceIdT &&value)
const BillingPeriod & GetBillingPeriod() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue