appslib/jsonb/
app_parameter.rs1use serde::{Deserialize, Serialize};
2use uuid::Uuid;
3use crate::enums::parameter_option_type::ParameterOptionType;
4use crate::enums::parameter_type::ParameterType;
5use crate::enums::parameter_visual_type::ParameterVisualType;
6
7#[derive(Clone, Serialize, Deserialize, Debug)]
8#[serde(rename_all = "camelCase")]
9pub struct AppParameter {
10 pub id: Uuid,
11 pub name: String,
12 pub display_name: String,
13 pub parameter_type: ParameterType,
14 pub option_type: Option<ParameterOptionType>,
15 pub request_url: Option<String>,
16 pub value_field: Option<String>,
17 pub name_field: Option<String>,
18 pub image_field: Option<String>,
19 pub description_field: Option<String>,
20 pub visual_type: Option<ParameterVisualType>,
21 pub min: Option<f64>,
22 pub max: Option<f64>,
23 pub options: Option<Vec<ParameterOption>>
24}
25
26#[derive(Clone, Serialize, Deserialize, Debug)]
27#[serde(rename_all = "camelCase")]
28pub struct ParameterOption {
29 pub id: Uuid,
30 pub string_value: String,
31 pub display_name: Option<String>,
32}