baichun_framework_core/
enums.rs

1use serde::{Deserialize, Serialize};
2
3/// 通用状态枚举
4#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
5#[repr(u8)]
6pub enum Status {
7    /// 禁用
8    Disable = 0,
9    /// 启用
10    Enable = 1,
11}
12
13impl Default for Status {
14    fn default() -> Self {
15        Status::Enable
16    }
17}
18
19/// 性别枚举
20#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
21#[repr(u8)]
22pub enum Gender {
23    /// 未知
24    Unknown = 0,
25    /// 男
26    Male = 1,
27    /// 女
28    Female = 2,
29}
30
31impl Default for Gender {
32    fn default() -> Self {
33        Gender::Unknown
34    }
35}
36
37/// 删除标记
38#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
39#[repr(u8)]
40pub enum DeleteFlag {
41    /// 正常
42    Normal = 0,
43    /// 已删除
44    Deleted = 1,
45}
46
47impl Default for DeleteFlag {
48    fn default() -> Self {
49        DeleteFlag::Normal
50    }
51}
52
53/// 响应状态码
54#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
55#[repr(u16)]
56pub enum ResponseCode {
57    /// 成功
58    Success = 200,
59    /// 错误请求
60    BadRequest = 400,
61    /// 未授权
62    Unauthorized = 401,
63    /// 禁止访问
64    Forbidden = 403,
65    /// 未找到
66    NotFound = 404,
67    /// 服务器错误
68    ServerError = 500,
69}
70
71impl Default for ResponseCode {
72    fn default() -> Self {
73        ResponseCode::Success
74    }
75}
76
77/// 业务状态
78#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
79#[repr(i32)]
80pub enum BusinessStatus {
81    /// 成功
82    Success = 0,
83    /// 失败
84    Fail = 1,
85    /// 错误
86    Error = 2,
87    /// 警告
88    Warning = 3,
89}
90
91impl Default for BusinessStatus {
92    fn default() -> Self {
93        BusinessStatus::Success
94    }
95}
96
97/// 操作类型
98#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
99#[repr(u8)]
100pub enum OperationType {
101    /// 其他
102    Other = 0,
103    /// 新增
104    Insert = 1,
105    /// 修改
106    Update = 2,
107    /// 删除
108    Delete = 3,
109    /// 授权
110    Grant = 4,
111    /// 导出
112    Export = 5,
113    /// 导入
114    Import = 6,
115    /// 强退
116    ForceLogout = 7,
117    /// 生成代码
118    GenCode = 8,
119    /// 清空数据
120    Clean = 9,
121}
122
123impl Default for OperationType {
124    fn default() -> Self {
125        OperationType::Other
126    }
127}