AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
AmountBreakdown.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/invoicing/Invoicing_EXPORTS.h>
9#include <aws/invoicing/model/DiscountsBreakdown.h>
10#include <aws/invoicing/model/FeesBreakdown.h>
11#include <aws/invoicing/model/TaxesBreakdown.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace Invoicing {
23namespace Model {
24
32 public:
33 AWS_INVOICING_API AmountBreakdown() = default;
34 AWS_INVOICING_API AmountBreakdown(Aws::Utils::Json::JsonView jsonValue);
36 AWS_INVOICING_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline const Aws::String& GetSubTotalAmount() const { return m_subTotalAmount; }
43 inline bool SubTotalAmountHasBeenSet() const { return m_subTotalAmountHasBeenSet; }
44 template <typename SubTotalAmountT = Aws::String>
45 void SetSubTotalAmount(SubTotalAmountT&& value) {
46 m_subTotalAmountHasBeenSet = true;
47 m_subTotalAmount = std::forward<SubTotalAmountT>(value);
48 }
49 template <typename SubTotalAmountT = Aws::String>
50 AmountBreakdown& WithSubTotalAmount(SubTotalAmountT&& value) {
51 SetSubTotalAmount(std::forward<SubTotalAmountT>(value));
52 return *this;
53 }
55
57
60 inline const DiscountsBreakdown& GetDiscounts() const { return m_discounts; }
61 inline bool DiscountsHasBeenSet() const { return m_discountsHasBeenSet; }
62 template <typename DiscountsT = DiscountsBreakdown>
63 void SetDiscounts(DiscountsT&& value) {
64 m_discountsHasBeenSet = true;
65 m_discounts = std::forward<DiscountsT>(value);
66 }
67 template <typename DiscountsT = DiscountsBreakdown>
68 AmountBreakdown& WithDiscounts(DiscountsT&& value) {
69 SetDiscounts(std::forward<DiscountsT>(value));
70 return *this;
71 }
73
75
78 inline const TaxesBreakdown& GetTaxes() const { return m_taxes; }
79 inline bool TaxesHasBeenSet() const { return m_taxesHasBeenSet; }
80 template <typename TaxesT = TaxesBreakdown>
81 void SetTaxes(TaxesT&& value) {
82 m_taxesHasBeenSet = true;
83 m_taxes = std::forward<TaxesT>(value);
84 }
85 template <typename TaxesT = TaxesBreakdown>
86 AmountBreakdown& WithTaxes(TaxesT&& value) {
87 SetTaxes(std::forward<TaxesT>(value));
88 return *this;
89 }
91
93
96 inline const FeesBreakdown& GetFees() const { return m_fees; }
97 inline bool FeesHasBeenSet() const { return m_feesHasBeenSet; }
98 template <typename FeesT = FeesBreakdown>
99 void SetFees(FeesT&& value) {
100 m_feesHasBeenSet = true;
101 m_fees = std::forward<FeesT>(value);
102 }
103 template <typename FeesT = FeesBreakdown>
104 AmountBreakdown& WithFees(FeesT&& value) {
105 SetFees(std::forward<FeesT>(value));
106 return *this;
107 }
109 private:
110 Aws::String m_subTotalAmount;
111
112 DiscountsBreakdown m_discounts;
113
114 TaxesBreakdown m_taxes;
115
116 FeesBreakdown m_fees;
117 bool m_subTotalAmountHasBeenSet = false;
118 bool m_discountsHasBeenSet = false;
119 bool m_taxesHasBeenSet = false;
120 bool m_feesHasBeenSet = false;
121};
122
123} // namespace Model
124} // namespace Invoicing
125} // namespace Aws
AmountBreakdown & WithTaxes(TaxesT &&value)
const Aws::String & GetSubTotalAmount() const
AWS_INVOICING_API Aws::Utils::Json::JsonValue Jsonize() const
const DiscountsBreakdown & GetDiscounts() const
void SetDiscounts(DiscountsT &&value)
AmountBreakdown & WithSubTotalAmount(SubTotalAmountT &&value)
AWS_INVOICING_API AmountBreakdown(Aws::Utils::Json::JsonView jsonValue)
AmountBreakdown & WithFees(FeesT &&value)
AWS_INVOICING_API AmountBreakdown()=default
const TaxesBreakdown & GetTaxes() const
const FeesBreakdown & GetFees() const
void SetSubTotalAmount(SubTotalAmountT &&value)
AmountBreakdown & WithDiscounts(DiscountsT &&value)
AWS_INVOICING_API AmountBreakdown & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue