use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ActivityRecord {
#[serde(rename = "channel", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub channel: Option<Option<String>>,
#[serde(rename = "created_at")]
pub created_at: String,
#[serde(rename = "detail")]
pub detail: String,
#[serde(rename = "id")]
pub id: String,
#[serde(rename = "integration_id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub integration_id: Option<Option<String>>,
#[serde(rename = "integration_identifier", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub integration_identifier: Option<Option<String>>,
#[serde(rename = "is_retry")]
pub is_retry: bool,
#[serde(rename = "is_test")]
pub is_test: bool,
#[serde(rename = "job_id")]
pub job_id: String,
#[serde(rename = "notification_id")]
pub notification_id: String,
#[serde(rename = "provider_id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub provider_id: Option<Option<String>>,
#[serde(rename = "source")]
pub source: String,
#[serde(rename = "status")]
pub status: String,
#[serde(rename = "subscriber_id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub subscriber_id: Option<Option<String>>,
#[serde(rename = "transaction_id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub transaction_id: Option<Option<String>>,
#[serde(rename = "workflow_id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub workflow_id: Option<Option<String>>,
}
impl ActivityRecord {
pub fn new(created_at: String, detail: String, id: String, is_retry: bool, is_test: bool, job_id: String, notification_id: String, source: String, status: String) -> ActivityRecord {
ActivityRecord {
channel: None,
created_at,
detail,
id,
integration_id: None,
integration_identifier: None,
is_retry,
is_test,
job_id,
notification_id,
provider_id: None,
source,
status,
subscriber_id: None,
transaction_id: None,
workflow_id: None,
}
}
}