use serde::{Deserialize, Serialize}; #[derive(Clone, Debug, Deserialize, Serialize)] pub struct NewAdQuery { pub author: String, pub price: String, pub psw: String, pub pubkey: String, pub quantity: String, pub title: String, } #[derive(Clone, Debug, Deserialize)] pub struct RmAdQuery { pub ad: String, pub psw: String, } #[derive(Clone, Debug, Deserialize)] pub struct AdminRmAdQuery { pub ad: String, } #[derive(Clone, Debug, Deserialize)] pub struct AdminLoginQuery { pub psw: String, } #[derive(Clone, Debug, Deserialize)] #[serde(tag = "a")] pub enum Query { #[serde(rename = "new_ad")] NewAdQuery(NewAdQuery), #[serde(rename = "rm_ad")] RmAdQuery(RmAdQuery), } #[derive(Clone, Debug, Deserialize)] #[serde(tag = "a")] pub enum AdminQuery { #[serde(rename = "login")] LoginQuery(AdminLoginQuery), #[serde(rename = "rm_ad")] RmAdQuery(AdminRmAdQuery), } #[derive(Debug, Deserialize)] struct SelectAdQuery { pub ad: String, }