noticelib/dto/
device_response.rsuse chrono::NaiveDateTime;
use common::enums::status::Status;
use serde::{Deserialize, Serialize};
use serde_json;
use uuid::Uuid;
use crate::enums::device_type::DeviceType;
use crate::jsonb::zone::Zone;
#[derive(Serialize, Deserialize, Debug, Clone)]
#[serde(rename_all = "camelCase")]
pub struct DeviceResponse {
pub id: Uuid,
pub name: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub organization: Option<Uuid>,
#[serde(skip_serializing_if = "Option::is_none")]
pub resolution: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub visibility: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub isactive: Option<i32>,
#[serde(skip_serializing_if = "Option::is_none")]
pub room: Option<Uuid>,
#[serde(skip_serializing_if = "Option::is_none")]
pub location: Option<serde_json::Value>,
#[serde(skip_serializing_if = "Option::is_none")]
pub details: Option<serde_json::Value>,
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub device_type: Option<DeviceType>,
#[serde(skip_serializing_if = "Option::is_none")]
pub orientation: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub zones: Option<Vec<Zone>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub status: Option<Status>,
#[serde(skip_serializing_if = "Option::is_none")]
pub last_time: Option<NaiveDateTime>,
}