From 3e1eadbbfdca1b2c0cb32ba4c8e1160a60e0ccb8 Mon Sep 17 00:00:00 2001 From: "Adam T. Carpenter" Date: Sat, 31 Oct 2020 10:14:31 -0400 Subject: All basic functionality implemented. --- dichroism/src/dtos/product_get.rs | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 dichroism/src/dtos/product_get.rs (limited to 'dichroism/src/dtos/product_get.rs') diff --git a/dichroism/src/dtos/product_get.rs b/dichroism/src/dtos/product_get.rs new file mode 100644 index 0000000..3f68eef --- /dev/null +++ b/dichroism/src/dtos/product_get.rs @@ -0,0 +1,32 @@ +use crate::models::Product; + +#[derive(Debug, Serialize)] +pub struct ProductGet { + pub id: i32, + pub name: String, + pub description: String, + pub cents: i32, + pub quantity: i32, + pub featured: bool, + pub photo_base: String, + pub photo_fullsize: String, + pub photo_thumbnail: String, + pub category: String, +} + +impl From for ProductGet { + fn from(p: Product) -> Self { + Self { + id: p.id.unwrap_or(-1), + name: p.name, + description: p.description, + cents: p.cents, + quantity: p.quantity, + featured: p.featured, + category: p.category, + photo_fullsize: p.photo_set.fullsize.filename(), + photo_base: p.photo_set.base.filename(), + photo_thumbnail: p.photo_set.thumbnail.filename(), + } + } +} -- cgit v1.2.3