页面逻辑

This commit is contained in:
2022-10-20 16:08:27 +08:00
parent 8ad451d4d8
commit 0a81762ba1
12 changed files with 197 additions and 25 deletions

View File

@@ -1,3 +1,4 @@
import 'package:chat/models/user_info_model.dart';
import 'package:chat/routes/auth_routes.dart';
import 'package:get/get.dart';
import 'package:get_storage/get_storage.dart';
@@ -19,10 +20,10 @@ class AuthService extends GetxService {
late String userSig = '';
/// 获取存储的token这个可以做到持久化存储
String get _userSig =>
_box.read('userSig') ??
'eJwtzEELgjAYxvHvsnPIu7VNJ3ToIIKsIAp2ljbrRYylJs3ou2fq8fk98P*Qiz5Hg2tJSlgEZDNvtO7RY4UzixU7W5feoyUp5QAxVVzR5XFvj62bXAjBAGDRHpu-SSnZlseKrxW8TU1p9sV4v3YJoyFrDrV*QYu5yrQ*2cqUzyHkPpixOMbJjnx-EqUv9A__';
String get _userId => _box.read('userId') ?? '5';
String get _userSig => _box.read('userSig') ?? '';
String get _userId => _box.read('userId') ?? '';
Rx<UserInfoModel> userInfo = UserInfoModel.empty().obs;
@override
void onInit() {
@@ -44,8 +45,8 @@ class AuthService extends GetxService {
}
Future<bool> login(String address) async {
_box.write('userId', '5');
userId = '5';
_box.write('userId', '');
userId = '';
isLogin.value = true;
return true;
@@ -58,6 +59,7 @@ class AuthService extends GetxService {
_box.remove('userId');
userSig = '';
userId = '';
userInfo.value = UserInfoModel.empty();
isLogin.value = false;
Get.offAllNamed(AuthRoutes.index);
}

View File

@@ -1,123 +0,0 @@
import 'package:chat/models/moment/moment_model.dart';
import 'package:chat/models/upload_model.dart';
import 'package:chat/utils/request/http.dart';
import 'package:chat/utils/ui_tools.dart';
class MomentService {
MomentService._();
/// 获取“发现”列表数据
///
/// [createAt] 最后一列的create_at
static Future<MomentModel?> fetchMomentList([String? createAt]) async {
try {
final result = await Http.get(
'user/dynamics',
params: {'created_at': createAt},
);
return MomentModel.fromMap(result);
} catch (e) {
UiTools.toast('获取发现列表失败');
}
return null;
}
/// 点赞
///
/// [dynamicId]
static Future<bool?> likeMoment(int dynamicId) async {
try {
final result = await Http.post('user/dynamics/$dynamicId/like');
return result['is_like'];
} catch (e) {
UiTools.toast('点赞失败');
}
return null;
}
/// 删除
///
/// [dynamicId]
static Future<bool?> delMoment(int dynamicId) async {
try {
final result = await Http.delete('user/dynamics/$dynamicId');
return result;
} catch (e) {
UiTools.toast('删除失败');
}
return null;
}
/// 回复或评论
/// [dynamicId]
/// [content] 评论内容
/// [parentId] 回复的评论id
static Future<Comment?> replyComment(
int dynamicId,
String content, [
int? parentId,
]) async {
try {
final result = await Http.post(
'user/dynamics/$dynamicId/comment',
data: {
'content': content,
'parent_id': parentId,
},
);
return Comment.fromMap(result);
} catch (e) {
UiTools.toast('评论失败');
}
return null;
}
/// 删除评论
/// [dynamicId]
/// [comment] 评论id
static Future<bool?> delComment(
int dynamicId, [
int? commentId,
]) async {
try {
final result = await Http.delete(
'user/dynamics/$dynamicId/comment/$commentId',
);
return result;
} catch (e) {
UiTools.toast('删除评论失败');
}
return null;
}
/// 上传文件
static Future<UploadModel?> uploadFile(String filePath) async {
try {
final result = await Http.upload('storage/upload', filePath: filePath);
return UploadModel.fromJson(result);
} catch (e) {
UiTools.toast('上传失败');
}
return null;
}
/// 发布“发现”内容
///
/// [description] 文本内容
/// [pictures] 媒体内容
static Future<dynamic> publishMoment({
required String description,
required List<String> pictures,
}) async {
try {
final result = await Http.post('user/dynamics', data: {
'description': description,
'pictures': pictures,
});
return result;
} catch (e) {
UiTools.toast('发布失败');
}
return null;
}
}

View File

@@ -42,7 +42,7 @@ class TimService extends GetxService {
return TencentImSDKPlugin.v2TIMManager;
}
int sdkAppID = 1400719491;
int sdkAppID = 1400673817;
String get _userSig => AuthService.to.userSig;