use super::v1::EntityLifecycle;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Default, PartialEq, Eq)]
pub struct OperatingContextListOptions {
pub include_inactive: bool,
pub limit: Option<usize>,
pub after_id: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "snake_case")]
pub enum OperatingContextPayloadType {
DropSupply,
DropFirestarter,
Other,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "snake_case")]
pub enum OperatingContextRiskSeverity {
Negligible,
Minor,
Major,
Hazardous,
Catastrophic,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "snake_case")]
pub enum OperatingContextRiskProbability {
ExtremelyImprobable,
Improbable,
Unlikely,
Occasional,
Frequent,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct DocumentCondition {
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<i64>,
pub localization_id: i64,
pub condition_text: String,
pub requirement_text: String,
#[serde(default)]
pub optional: bool,
#[serde(default)]
pub lifecycle: EntityLifecycle,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub inserted_at: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextType {
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<i64>,
pub localization_id: i64,
pub name: String,
#[serde(default)]
pub lifecycle: EntityLifecycle,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub inserted_at: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextRole {
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<i64>,
pub localization_id: i64,
pub name: String,
#[serde(default)]
pub lifecycle: EntityLifecycle,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub inserted_at: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextEquipmentCategory {
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<i64>,
pub localization_id: i64,
pub name: String,
#[serde(default)]
pub lifecycle: EntityLifecycle,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub inserted_at: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextEquipmentItem {
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<i64>,
pub equipment_category_id: i64,
pub name: String,
#[serde(default)]
pub lifecycle: EntityLifecycle,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub inserted_at: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct OperatingContext {
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<i64>,
pub herd_id: i64,
pub operating_context_type_id: i64,
pub name: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
pub valid_from: String,
pub valid_to: String,
pub distance_max_from_home: f64,
pub altitude_agl_max: f64,
pub involves_third_party_land: bool,
pub created_by: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub created_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_at: Option<String>,
#[serde(default)]
pub lifecycle: EntityLifecycle,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextPayload {
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<i64>,
pub operating_context_id: i64,
pub payload_type: OperatingContextPayloadType,
pub weight_kg: f64,
#[serde(skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
pub created_by: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub created_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_at: Option<String>,
#[serde(default)]
pub lifecycle: EntityLifecycle,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextRoleAssignment {
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<i64>,
pub operating_context_id: i64,
pub membership_id: i64,
pub role_id: i64,
pub herd_id: i64,
#[serde(default)]
pub lifecycle: EntityLifecycle,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub inserted_at: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextEquipmentRequirement {
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<i64>,
pub operating_context_id: i64,
pub equipment_item_id: i64,
#[serde(default)]
pub lifecycle: EntityLifecycle,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub inserted_at: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextRegion {
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<i64>,
pub operating_context_id: i64,
pub is_exclusion: bool,
pub region: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub bounding_box: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub weather_origin: Option<String>,
pub created_by: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub created_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_at: Option<String>,
#[serde(default)]
pub lifecycle: EntityLifecycle,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextRisk {
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<i64>,
pub operating_context_id: i64,
pub severity_before: OperatingContextRiskSeverity,
pub probability_before: OperatingContextRiskProbability,
pub hazard: String,
pub mitigation: String,
pub severity_after: OperatingContextRiskSeverity,
pub probability_after: OperatingContextRiskProbability,
pub created_by: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub created_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_at: Option<String>,
#[serde(default)]
pub lifecycle: EntityLifecycle,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_at: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextWeatherSnapshot {
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<i64>,
pub operating_context_region_id: i64,
pub collected_at: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub kp_index: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub temperature_min_celsius: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub temperature_max_celsius: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub precipitation_millimeters: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub wind_speed_meters_per_second: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub wind_heading_degrees: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub visibility_meters: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub static_buildup_category: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub density_altitude_meters: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub inserted_at: Option<String>,
}
#[derive(Debug, Clone, Default, PartialEq, Serialize, Deserialize)]
pub struct DocumentConditionPatch {
#[serde(skip_serializing_if = "Option::is_none")]
pub localization_id: Option<i64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub condition_text: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub requirement_text: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub optional: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle: Option<EntityLifecycle>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<Option<String>>,
}
#[derive(Debug, Clone, Default, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextCatalogPatch {
#[serde(skip_serializing_if = "Option::is_none")]
pub localization_id: Option<i64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle: Option<EntityLifecycle>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<Option<String>>,
}
#[derive(Debug, Clone, Default, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextEquipmentItemPatch {
#[serde(skip_serializing_if = "Option::is_none")]
pub equipment_category_id: Option<i64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle: Option<EntityLifecycle>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<Option<String>>,
}
#[derive(Debug, Clone, Default, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextRoleAssignmentPatch {
#[serde(skip_serializing_if = "Option::is_none")]
pub membership_id: Option<i64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub role_id: Option<i64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle: Option<EntityLifecycle>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<Option<String>>,
}
#[derive(Debug, Clone, Default, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextEquipmentRequirementPatch {
#[serde(skip_serializing_if = "Option::is_none")]
pub equipment_item_id: Option<i64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle: Option<EntityLifecycle>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<Option<String>>,
}
#[derive(Debug, Clone, Default, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextPatch {
#[serde(skip_serializing_if = "Option::is_none")]
pub operating_context_type_id: Option<i64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub description: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub valid_from: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub valid_to: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub distance_max_from_home: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub altitude_agl_max: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub involves_third_party_land: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_by: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle: Option<EntityLifecycle>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<Option<String>>,
}
#[derive(Debug, Clone, Default, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextPayloadPatch {
#[serde(skip_serializing_if = "Option::is_none")]
pub payload_type: Option<OperatingContextPayloadType>,
#[serde(skip_serializing_if = "Option::is_none")]
pub weight_kg: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub description: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_by: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle: Option<EntityLifecycle>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<Option<String>>,
}
#[derive(Debug, Clone, Default, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextRegionPatch {
#[serde(skip_serializing_if = "Option::is_none")]
pub is_exclusion: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub region: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub bounding_box: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub weather_origin: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_by: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle: Option<EntityLifecycle>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<Option<String>>,
}
#[derive(Debug, Clone, Default, PartialEq, Serialize, Deserialize)]
pub struct OperatingContextRiskPatch {
#[serde(skip_serializing_if = "Option::is_none")]
pub severity_before: Option<OperatingContextRiskSeverity>,
#[serde(skip_serializing_if = "Option::is_none")]
pub probability_before: Option<OperatingContextRiskProbability>,
#[serde(skip_serializing_if = "Option::is_none")]
pub hazard: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub mitigation: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub severity_after: Option<OperatingContextRiskSeverity>,
#[serde(skip_serializing_if = "Option::is_none")]
pub probability_after: Option<OperatingContextRiskProbability>,
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_by: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle: Option<EntityLifecycle>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_changed_by: Option<Option<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lifecycle_reason: Option<Option<String>>,
}