ddex_core/models/common/
territory.rs

1// core/src/models/common/territory.rs
2//! Territory and copyright types
3
4use serde::{Deserialize, Serialize};
5use chrono::{DateTime, Utc};
6
7#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
8pub struct TerritoryCode {
9    pub code: String,
10    pub excluded: bool,
11}
12
13#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
14pub struct Copyright {
15    pub text: String,
16    pub year: Option<i32>,
17    pub owner: Option<String>,
18}
19
20#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
21pub struct Price {
22    pub amount: f64,
23    pub currency: String,
24    pub territory: Option<String>,
25}
26
27#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
28pub struct ValidityPeriod {
29    pub start_date: Option<DateTime<Utc>>,
30    pub end_date: Option<DateTime<Utc>>,
31}