backend/model/enum/water_requirement.rs
1//! Water requirement of a plant.
2
3use diesel_derive_enum::DbEnum;
4use serde::{Deserialize, Serialize};
5use typeshare::typeshare;
6use utoipa::ToSchema;
7
8/// *Used* in hydrology layer.
9/// *Fetched from* `PracticalPlants` and Permapeople (merged with `water` of `PracticalPlants`).
10#[typeshare]
11#[derive(Serialize, Deserialize, DbEnum, Debug, ToSchema, Clone, PartialEq, Eq)]
12#[ExistingTypePath = "crate::schema::sql_types::WaterRequirement"]
13pub enum WaterRequirementEnum {
14 /// well drained, little water input
15 /// holding a lump of soil feels a little warm
16 #[serde(rename = "dry")]
17 #[db_rename = "dry"]
18 Dry,
19
20 /// regular water supply, e.g. flat bed with humus
21 /// holding a lump of soil feels a little cooler than the air around
22 #[serde(rename = "moist")]
23 #[db_rename = "moist"]
24 Moist,
25
26 /// drowned, (often) flooded or in general very moist, e.g. swamp
27 /// holding a lump of soil leaves a spot on your palm
28 #[serde(rename = "wet")]
29 #[db_rename = "wet"]
30 Wet,
31
32 /// completely aquatic
33 /// the soil is saturated with water, such as in a pond
34 #[serde(rename = "water")]
35 #[db_rename = "water"]
36 Water,
37}