#![allow(unused_imports)]
use serde_json::Value;
use bigdecimal::BigDecimal;
use chrono::{NaiveDateTime, DateTime, FixedOffset, Utc};
use crate::models::*;
#[derive(Debug, Serialize, Deserialize, Clone)]
pub struct Dividend {
#[serde(rename = "symbol")]
symbol: Option<String>, #[serde(rename = "type")]
_type: Option<String>, #[serde(rename = "exDate")]
ex_date: String, #[serde(rename = "paymentDate")]
payment_date: Option<String>, #[serde(rename = "recordDate")]
record_date: Option<String>, #[serde(rename = "declaredDate")]
declared_date: Option<String>, #[serde(rename = "amount")]
amount: f32, #[serde(rename = "qualified")]
qualified: Option<String>, #[serde(rename = "flag")]
flag: Option<String> }
impl Dividend {
pub fn new(ex_date: String, amount: f32, ) -> Dividend {
Dividend {
symbol: None,
_type: None,
ex_date: ex_date,
payment_date: None,
record_date: None,
declared_date: None,
amount: amount,
qualified: None,
flag: None
}
}
pub fn set_symbol(&mut self, symbol: String) {
self.symbol = Some(symbol);
}
pub fn with_symbol(mut self, symbol: String) -> Dividend {
self.symbol = Some(symbol);
self
}
pub fn symbol(&self) -> Option<&String> {
self.symbol.as_ref()
}
pub fn reset_symbol(&mut self) {
self.symbol = None;
}
pub fn set__type(&mut self, _type: String) {
self._type = Some(_type);
}
pub fn with__type(mut self, _type: String) -> Dividend {
self._type = Some(_type);
self
}
pub fn _type(&self) -> Option<&String> {
self._type.as_ref()
}
pub fn reset__type(&mut self) {
self._type = None;
}
pub fn set_ex_date(&mut self, ex_date: String) {
self.ex_date = ex_date;
}
pub fn with_ex_date(mut self, ex_date: String) -> Dividend {
self.ex_date = ex_date;
self
}
pub fn ex_date(&self) -> &String {
&self.ex_date
}
pub fn set_payment_date(&mut self, payment_date: String) {
self.payment_date = Some(payment_date);
}
pub fn with_payment_date(mut self, payment_date: String) -> Dividend {
self.payment_date = Some(payment_date);
self
}
pub fn payment_date(&self) -> Option<&String> {
self.payment_date.as_ref()
}
pub fn reset_payment_date(&mut self) {
self.payment_date = None;
}
pub fn set_record_date(&mut self, record_date: String) {
self.record_date = Some(record_date);
}
pub fn with_record_date(mut self, record_date: String) -> Dividend {
self.record_date = Some(record_date);
self
}
pub fn record_date(&self) -> Option<&String> {
self.record_date.as_ref()
}
pub fn reset_record_date(&mut self) {
self.record_date = None;
}
pub fn set_declared_date(&mut self, declared_date: String) {
self.declared_date = Some(declared_date);
}
pub fn with_declared_date(mut self, declared_date: String) -> Dividend {
self.declared_date = Some(declared_date);
self
}
pub fn declared_date(&self) -> Option<&String> {
self.declared_date.as_ref()
}
pub fn reset_declared_date(&mut self) {
self.declared_date = None;
}
pub fn set_amount(&mut self, amount: f32) {
self.amount = amount;
}
pub fn with_amount(mut self, amount: f32) -> Dividend {
self.amount = amount;
self
}
pub fn amount(&self) -> &f32 {
&self.amount
}
pub fn set_qualified(&mut self, qualified: String) {
self.qualified = Some(qualified);
}
pub fn with_qualified(mut self, qualified: String) -> Dividend {
self.qualified = Some(qualified);
self
}
pub fn qualified(&self) -> Option<&String> {
self.qualified.as_ref()
}
pub fn reset_qualified(&mut self) {
self.qualified = None;
}
pub fn set_flag(&mut self, flag: String) {
self.flag = Some(flag);
}
pub fn with_flag(mut self, flag: String) -> Dividend {
self.flag = Some(flag);
self
}
pub fn flag(&self) -> Option<&String> {
self.flag.as_ref()
}
pub fn reset_flag(&mut self) {
self.flag = None;
}
}