27dad3d1
吴启风
feat:集成友盟统计
|
1
|
import 'package:umeng_common_sdk/umeng_common_sdk.dart';
|
94342c3f
Key
feat: user util
|
2
|
import 'package:wow_english/common/core/user_util.dart';
|
05f9b20a
Key
fixed: api调用方式,未完善
|
3
|
import 'package:wow_english/models/user_entity.dart';
|
e6a4e63c
Key
fixed: 修改个人信息性别
|
4
|
import 'package:wow_english/utils/log_util.dart';
|
05f9b20a
Key
fixed: api调用方式,未完善
|
5
|
|
3e72c6ce
吴启风
feat:登录刷新配置信息
|
6
|
import '../../core/app_config_helper.dart';
|
056970d8
Key
feat: api
|
7
8
|
import '../request_client.dart';
|
da82bd70
Key
feat: user_inform...
|
9
10
|
enum SmsType { login, change_passWord, stdDestroy }
|
056970d8
Key
feat: api
|
11
|
class UserDao {
|
c95453ce
Key
feat: User界面完善
|
12
|
/// 登录
|
94342c3f
Key
feat: user util
|
13
|
static Future<UserEntity?> login(phoneNumber, type, checkKey, checkNumber) async {
|
05f9b20a
Key
fixed: api调用方式,未完善
|
14
|
var params = {'phoneNum': phoneNumber, 'type': type, checkKey: checkNumber};
|
94342c3f
Key
feat: user util
|
15
|
var data = await requestClient.post<UserEntity>(
|
05f9b20a
Key
fixed: api调用方式,未完善
|
16
17
18
|
Apis.login,
data: params,
);
|
aa4e28be
Key
removed: cache_bl...
|
19
|
if (data != null) {
|
94342c3f
Key
feat: user util
|
20
|
UserUtil.saveUser(data);
|
278208b8
吴启风
feat:1、用户访问权限调整;2...
|
21
22
|
// 由于userInfo接口不会返回token,所以这里需要再次保存一下token
final token = data.token;
|
3e72c6ce
吴启风
feat:登录刷新配置信息
|
23
24
|
//登录成功后刷新下配置信息
AppConfigHelper.getAppConfig(forceSync: true);
|
278208b8
吴启风
feat:1、用户访问权限调整;2...
|
25
26
27
28
|
//登录成功后zip一下getUserInfo,因为进入首页需要的信息在userinfo里,保证进入首页数据是最新的
data = await getUserInfo();
data?.token = token;
UserUtil.saveUser(data);
|
27dad3d1
吴启风
feat:集成友盟统计
|
29
|
UmengCommonSdk.onProfileSignIn(data?.phoneNum ?? phoneNumber);
|
94342c3f
Key
feat: user util
|
30
|
}
|
05f9b20a
Key
fixed: api调用方式,未完善
|
31
|
return data;
|
056970d8
Key
feat: api
|
32
|
}
|
39e06486
liangchengyou
feat:获取验证码逻辑处理
|
33
|
|
c95453ce
Key
feat: User界面完善
|
34
35
36
|
/// 登出
static Future logout() async {
var result = await requestClient.post(Apis.logout);
|
a4d8eaa2
Key
feat: 登录时账户有效性校验
|
37
38
39
40
41
42
|
UserUtil.logout();
return result;
}
/// 注销账号
static Future deleteAccount() async {
|
210d15e0
Key
fixed: 账户注销接口
|
43
|
var result = await requestClient.put(Apis.deleteAccount);
|
c95453ce
Key
feat: User界面完善
|
44
45
46
47
48
|
UserUtil.logout();
return result;
}
/// 发送验证码
|
da82bd70
Key
feat: user_inform...
|
49
|
/// [msgType] 消息类型 登录:login, 更改密码:change_passWord, 账号注销:stdDestroy
|
c95453ce
Key
feat: User界面完善
|
50
51
52
53
54
|
static Future sendCode(phoneNumber, {smsType = 'login'}) async {
final params = {'phoneNum': phoneNumber, 'smsType': smsType};
await requestClient.post(Apis.sendSmsCode, data: params);
}
|
4b2c2f07
Key
feat: 三种修改密码的类型及接口
|
55
56
57
58
59
60
61
62
|
/// 设置密码,初始化密码
/// [password] 密码
static Future initPassword(String password) async {
final params = {'password': password};
await requestClient.post(Apis.initPassword, data: params);
}
/// 修改密码
|
da82bd70
Key
feat: user_inform...
|
63
|
/// [phoneNum] 手机号
|
4b2c2f07
Key
feat: 三种修改密码的类型及接口
|
64
|
/// [password] 密码
|
da82bd70
Key
feat: user_inform...
|
65
66
67
|
/// [smsCode] 短信验证码
static Future changePassword(String phoneNum, String password, String smsCode) async {
final params = {'phoneNum': phoneNum, 'password': password, 'code': smsCode};
|
4b2c2f07
Key
feat: 三种修改密码的类型及接口
|
68
69
70
71
|
await requestClient.post(Apis.changePassword, data: params);
}
/// 忘记密码
|
da82bd70
Key
feat: user_inform...
|
72
|
/// [phoneNum] 手机号
|
4b2c2f07
Key
feat: 三种修改密码的类型及接口
|
73
|
/// [password] 密码
|
da82bd70
Key
feat: user_inform...
|
74
|
/// [smsCode] 短信验证码
|
4b2c2f07
Key
feat: 三种修改密码的类型及接口
|
75
76
77
78
79
|
static Future resetPassword(String phoneNum, String password, String smsCode) async {
final params = {'phoneNum': phoneNum, 'password': password, 'code': smsCode};
await requestClient.post(Apis.resetPassword, data: params);
}
|
da82bd70
Key
feat: user_inform...
|
80
81
82
83
84
85
86
|
/// 验证短信验证码
/// [msgType] 消息类型 登录:login, 更改密码:change_passWord, 账号注销:stdDestroy
static Future checkSmsCode(String phoneNum, String smsCode, String msgType) async {
final params = {'phoneNum': phoneNum, 'code': smsCode, 'msgType': msgType};
await requestClient.post(Apis.checkSmsCode, data: params);
}
|
c95453ce
Key
feat: User界面完善
|
87
88
|
/// 获取用户信息
static Future<UserEntity?> getUserInfo() async {
|
a4d8eaa2
Key
feat: 登录时账户有效性校验
|
89
|
return await requestClient.get(Apis.getUserInfo);
|
c95453ce
Key
feat: User界面完善
|
90
91
92
93
|
}
/// 更新用户信息,返回即成功,无body
static Future updateUserInfo(UserEntity userEntity) async {
|
e6a4e63c
Key
fixed: 修改个人信息性别
|
94
|
Log.d('updateUserInfo, userEntity: $userEntity');
|
c95453ce
Key
feat: User界面完善
|
95
|
return await requestClient.put(Apis.setUserInfo, data: userEntity.toUpdateJson());
|
39e06486
liangchengyou
feat:获取验证码逻辑处理
|
96
|
}
|
e6a4e63c
Key
fixed: 修改个人信息性别
|
97
|
|
01e73e19
Key
暂时关闭修改个人信息
|
98
99
100
|
/// 更新用户信息指定字段
static Future updateUserInfoField({String? name, int? age, int? gender, String? avatarUrl}) async {
Log.d('name=$name, age=$age, gender=$gender, avatarUrl=$avatarUrl');
|
e6a4e63c
Key
fixed: 修改个人信息性别
|
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
|
final Map<String, dynamic> data = <String, dynamic>{};
if (name != null) {
data['name'] = name;
}
if (age != null) {
data['age'] = age;
}
if (gender != null) {
data['gender'] = gender;
}
if (avatarUrl != null) {
data['avatarUrl'] = avatarUrl;
}
return await requestClient.put(Apis.setUserInfo, data: data);
}
|
a423aad7
xiaoyu
用户反馈添加字符输入数量显示,添加...
|
116
117
118
119
120
121
|
/// 用户反馈
static Future feedBack(String content, String deviceModel, String osType, String osVersion) async {
final params = {'content': content, 'deviceModel': deviceModel, 'osType': osType, "osVersion": osVersion};
return await requestClient.post(Apis.feedBack, data: params);
}
|
056970d8
Key
feat: api
|
122
|
}
|