timesheetlib/enums/
entry_status.rs

1use postgres_types::{FromSql, ToSql};
2use serde::{Deserialize, Serialize};
3use std::fmt;
4use std::fmt::Formatter;
5use std::str;
6use strum_macros::EnumString;
7
8
9#[derive(
10    Serialize,
11    Deserialize,
12    Debug,
13    EnumString,
14    ToSql,
15    FromSql,
16    PartialEq,
17    Clone
18)]
19#[postgres(name = "entry_status")]
20pub enum EntryStatus {
21    Draft,
22    Approved,
23    Rejected,
24    Submitted,
25    Canceled,
26    Payed,
27    Review,
28    Undefined,
29
30}
31impl fmt::Display for EntryStatus {
32    fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
33        write!(f, "{:?}", self)
34    }
35}
36impl Default for EntryStatus {
37    fn default() -> Self {
38        EntryStatus::Undefined
39    }
40}