appslib/jsonb/
app_parameter.rs

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