bios_iam/basic/domain/
iam_account.rs

1use tardis::chrono::{self, Utc};
2use tardis::db::sea_orm;
3use tardis::db::sea_orm::*;
4use tardis::{TardisCreateEntity, TardisEmptyBehavior, TardisEmptyRelation};
5
6#[derive(Clone, Debug, PartialEq, Eq, DeriveEntityModel, TardisCreateEntity, TardisEmptyBehavior, TardisEmptyRelation)]
7#[sea_orm(table_name = "iam_account")]
8pub struct Model {
9    #[sea_orm(primary_key, auto_increment = false)]
10    pub id: String,
11    pub icon: String,
12    /// [data type Kind](crate::iam_enumeration::IamAccountStatusKind)
13    pub status: i16,
14    /// Marking of temporary status
15    ///
16    /// 临时状态的标记
17    pub temporary: bool,
18    /// [data type Kind](crate::iam_enumeration::IamAccountLockStateKind)
19    pub lock_status: i16,
20    /// Expanded fields with index
21    ///
22    /// 索引扩展字段 idx 1-3
23    #[index]
24    pub ext1_idx: String,
25    #[index]
26    pub ext2_idx: String,
27    #[index]
28    pub ext3_idx: String,
29    /// Expanded fields
30    ///
31    /// 普通扩展字段 4-9
32    pub ext4: String,
33    pub ext5: String,
34    pub ext6: String,
35    pub ext7: String,
36    pub ext8: String,
37    pub ext9: String,
38    #[sea_orm(extra = "DEFAULT CURRENT_TIMESTAMP")]
39    pub effective_time: chrono::DateTime<Utc>,
40
41    #[sea_orm(extra = "DEFAULT CURRENT_TIMESTAMP")]
42    pub logout_time: chrono::DateTime<Utc>,
43    /// [data type Kind](crate::iam_enumeration::IamAccountLogoutTypeKind)
44    pub logout_type: String,
45
46    /// Nature of labor
47    ///
48    /// 用工性质
49    pub labor_type: String,
50
51    #[fill_ctx(fill = "own_paths")]
52    pub own_paths: String,
53}