use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct DtPortfolioMetrics {
#[serde(rename = "critical", skip_serializing_if = "Option::is_none")]
pub critical: Option<i64>,
#[serde(rename = "findingsAudited", skip_serializing_if = "Option::is_none")]
pub findings_audited: Option<i64>,
#[serde(rename = "findingsTotal", skip_serializing_if = "Option::is_none")]
pub findings_total: Option<i64>,
#[serde(rename = "findingsUnaudited", skip_serializing_if = "Option::is_none")]
pub findings_unaudited: Option<i64>,
#[serde(rename = "high", skip_serializing_if = "Option::is_none")]
pub high: Option<i64>,
#[serde(rename = "inheritedRiskScore", skip_serializing_if = "Option::is_none")]
pub inherited_risk_score: Option<f64>,
#[serde(rename = "low", skip_serializing_if = "Option::is_none")]
pub low: Option<i64>,
#[serde(rename = "medium", skip_serializing_if = "Option::is_none")]
pub medium: Option<i64>,
#[serde(rename = "policyViolationsFail", skip_serializing_if = "Option::is_none")]
pub policy_violations_fail: Option<i64>,
#[serde(rename = "policyViolationsInfo", skip_serializing_if = "Option::is_none")]
pub policy_violations_info: Option<i64>,
#[serde(rename = "policyViolationsTotal", skip_serializing_if = "Option::is_none")]
pub policy_violations_total: Option<i64>,
#[serde(rename = "policyViolationsWarn", skip_serializing_if = "Option::is_none")]
pub policy_violations_warn: Option<i64>,
#[serde(rename = "projects", skip_serializing_if = "Option::is_none")]
pub projects: Option<i64>,
#[serde(rename = "suppressions", skip_serializing_if = "Option::is_none")]
pub suppressions: Option<i64>,
#[serde(rename = "unassigned", skip_serializing_if = "Option::is_none")]
pub unassigned: Option<i64>,
#[serde(rename = "vulnerabilities", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub vulnerabilities: Option<Option<i64>>,
}
impl DtPortfolioMetrics {
pub fn new() -> DtPortfolioMetrics {
DtPortfolioMetrics {
critical: None,
findings_audited: None,
findings_total: None,
findings_unaudited: None,
high: None,
inherited_risk_score: None,
low: None,
medium: None,
policy_violations_fail: None,
policy_violations_info: None,
policy_violations_total: None,
policy_violations_warn: None,
projects: None,
suppressions: None,
unassigned: None,
vulnerabilities: None,
}
}
}