timesheetlib/enums/
payslip_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 = "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}