use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ProjectPayload {
#[serde(rename = "fieldLayoutSchemeId", skip_serializing_if = "Option::is_none")]
pub field_layout_scheme_id: Option<Box<models::ProjectCreateResourceIdentifier>>,
#[serde(rename = "issueSecuritySchemeId", skip_serializing_if = "Option::is_none")]
pub issue_security_scheme_id: Option<Box<models::ProjectCreateResourceIdentifier>>,
#[serde(rename = "issueTypeSchemeId", skip_serializing_if = "Option::is_none")]
pub issue_type_scheme_id: Option<Box<models::ProjectCreateResourceIdentifier>>,
#[serde(rename = "issueTypeScreenSchemeId", skip_serializing_if = "Option::is_none")]
pub issue_type_screen_scheme_id: Option<Box<models::ProjectCreateResourceIdentifier>>,
#[serde(rename = "notificationSchemeId", skip_serializing_if = "Option::is_none")]
pub notification_scheme_id: Option<Box<models::ProjectCreateResourceIdentifier>>,
#[serde(rename = "pcri", skip_serializing_if = "Option::is_none")]
pub pcri: Option<Box<models::ProjectCreateResourceIdentifier>>,
#[serde(rename = "permissionSchemeId", skip_serializing_if = "Option::is_none")]
pub permission_scheme_id: Option<Box<models::ProjectCreateResourceIdentifier>>,
#[serde(rename = "projectTypeKey", skip_serializing_if = "Option::is_none")]
pub project_type_key: Option<ProjectTypeKey>,
#[serde(rename = "workflowSchemeId", skip_serializing_if = "Option::is_none")]
pub workflow_scheme_id: Option<Box<models::ProjectCreateResourceIdentifier>>,
}
impl ProjectPayload {
pub fn new() -> ProjectPayload {
ProjectPayload {
field_layout_scheme_id: None,
issue_security_scheme_id: None,
issue_type_scheme_id: None,
issue_type_screen_scheme_id: None,
notification_scheme_id: None,
pcri: None,
permission_scheme_id: None,
project_type_key: None,
workflow_scheme_id: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum ProjectTypeKey {
#[serde(rename = "software")]
Software,
#[serde(rename = "business")]
Business,
#[serde(rename = "service_desk")]
ServiceDesk,
#[serde(rename = "product_discovery")]
ProductDiscovery,
}
impl Default for ProjectTypeKey {
fn default() -> ProjectTypeKey {
Self::Software
}
}