Geoffrey-rs/geoffrey_models/src/models/shop.rs

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>
}