timesheetlib/enums/
payslip_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 = "payslip_status")]
20pub enum PayslipStatus {
21    Draft,
22    Confirmed,
23    Awaiting,
24    Processed,
25    ParshalyPayed,
26    Payed,
27    Finalised,
28    Historical,
29    Undefined,
30
31}
32impl fmt::Display for PayslipStatus {
33    fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
34        write!(f, "{:?}", self)
35    }
36}
37impl Default for PayslipStatus {
38    fn default() -> Self {
39        PayslipStatus::Undefined
40    }
41}