30 lines
681 B
Rust
30 lines
681 B
Rust
use serde::{Deserialize, Serialize};
|
|
use chrono::{DateTime, Utc};
|
|
|
|
use crate::models::item::Item;
|
|
|
|
#[derive(Serialize, Deserialize, Debug, Clone)]
|
|
pub struct ItemListing {
|
|
pub item: Item,
|
|
pub price: u64,
|
|
pub count_per_price: u64,
|
|
pub restocked_time: DateTime<Utc>
|
|
}
|
|
|
|
impl ItemListing {
|
|
fn new(item: &str, price: u64, count_per_price: u64, restocked_time: DateTime<Utc>) -> Self {
|
|
Self {
|
|
item: Item {name: item.to_string()},
|
|
price,
|
|
count_per_price,
|
|
restocked_time,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[derive(Default, Serialize, Deserialize, Debug, Clone)]
|
|
pub struct ShopData {
|
|
pub item_listings: Vec<ItemListing>
|
|
}
|
|
|