1
+ use chrono:: { NaiveDateTime } ;
2
+ use serde:: { Deserialize , Serialize } ;
3
+ use sqlx:: FromRow ;
4
+ use utils:: naive_datetime_format;
5
+
6
+ #[ derive( Debug , Clone , Serialize , Deserialize , FromRow ) ]
7
+ pub struct SysUser {
8
+ pub id : Option < i64 > , // 对应 Long 类型
9
+ pub name : Option < String > , // 用户姓名
10
+ pub user_name : Option < String > , // 登录用户名
11
+ pub avatar : Option < String > , // 头像
12
+ pub password : Option < String > , // 登录密码
13
+ pub leader_flag : Option < bool > , // 是否经理
14
+ pub position : Option < String > , // 职位
15
+ pub email : Option < String > , // 电子邮件
16
+ pub phone_number : Option < String > , // 手机号码
17
+ pub system_language : Option < String > , // 系统语言
18
+ pub is_manager : Option < i32 > , // 是否为管理者 0==管理者 1==员工
19
+ pub is_system : Option < i32 > , // 是否系统自带数据
20
+ pub status : Option < i32 > , // 状态 0:正常,1:删除,2:封禁
21
+ pub description : Option < String > , // 用户描述
22
+ pub remark : Option < String > , // 备注
23
+ pub wechat_open_id : Option < String > , // 微信绑定
24
+ pub tenant_id : Option < i64 > , // 租户id
25
+
26
+ // NaiveDateTime添加序列化和反序列化处理
27
+ #[ serde( with = "naive_datetime_format" ) ]
28
+ pub create_time : Option < NaiveDateTime > , // 创建时间
29
+
30
+ #[ serde( with = "naive_datetime_format" ) ]
31
+ pub update_time : Option < NaiveDateTime > , // 更新时间
32
+
33
+ pub create_by : Option < i64 > , // 创建人
34
+ pub update_by : Option < i64 > , // 修改人
35
+ pub delete_flag : Option < i32 > , // 删除标记
36
+ }
37
+
38
+ impl SysUser {
39
+ pub fn new (
40
+ id : Option < i64 > ,
41
+ name : Option < String > ,
42
+ user_name : Option < String > ,
43
+ avatar : Option < String > ,
44
+ password : Option < String > ,
45
+ leader_flag : Option < bool > ,
46
+ position : Option < String > ,
47
+ email : Option < String > ,
48
+ phone_number : Option < String > ,
49
+ system_language : Option < String > ,
50
+ is_manager : Option < i32 > ,
51
+ is_system : Option < i32 > ,
52
+ status : Option < i32 > ,
53
+ description : Option < String > ,
54
+ remark : Option < String > ,
55
+ wechat_open_id : Option < String > ,
56
+ tenant_id : Option < i64 > ,
57
+ create_time : Option < NaiveDateTime > ,
58
+ update_time : Option < NaiveDateTime > ,
59
+ create_by : Option < i64 > ,
60
+ update_by : Option < i64 > ,
61
+ delete_flag : Option < i32 > ,
62
+ ) -> Self {
63
+ SysUser {
64
+ id,
65
+ name,
66
+ user_name,
67
+ avatar,
68
+ password,
69
+ leader_flag,
70
+ position,
71
+ email,
72
+ phone_number,
73
+ system_language,
74
+ is_manager,
75
+ is_system,
76
+ status,
77
+ description,
78
+ remark,
79
+ wechat_open_id,
80
+ tenant_id,
81
+ create_time,
82
+ update_time,
83
+ create_by,
84
+ update_by,
85
+ delete_flag,
86
+ }
87
+ }
88
+ }
0 commit comments