timesheetlib/enums/
entry_status.rs1use 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}