import 'dart:developer'; import 'package:pilipala/http/api.dart'; import 'package:pilipala/http/init.dart'; import 'package:pilipala/models/model_hot_video_item.dart'; import 'package:pilipala/models/user/fav_detail.dart'; import 'package:pilipala/models/user/fav_folder.dart'; import 'package:pilipala/models/user/history.dart'; import 'package:pilipala/models/user/info.dart'; import 'package:pilipala/models/user/stat.dart'; class UserHttp { static Future userStat({required int mid}) async { var res = await Request().get(Api.userStat, data: {'vmid': mid}); if (res.data['code'] == 0) { return {'status': true, 'data': res.data['data']}; } else { return {'status': false}; } } static Future userInfo() async { var res = await Request().get(Api.userInfo); if (res.data['code'] == 0) { UserInfoData data = UserInfoData.fromJson(res.data['data']); return {'status': true, 'data': data}; } else { return {'status': false, 'msg': res.data['message']}; } } static Future userStatOwner() async { var res = await Request().get(Api.userStatOwner); if (res.data['code'] == 0) { UserStat data = UserStat.fromJson(res.data['data']); return {'status': true, 'data': data}; } else { return {'status': false, 'data': [], 'msg': res.data['message']}; } } // 收藏夹 static Future userfavFolder({ required int pn, required int ps, required int mid, }) async { var res = await Request().get(Api.userFavFolder, data: { 'pn': pn, 'ps': ps, 'up_mid': mid, }); if (res.data['code'] == 0) { FavFolderData data = FavFolderData.fromJson(res.data['data']); return {'status': true, 'data': data}; } else { return {'status': false, 'data': [], 'msg': '账号未登录'}; } } static Future userFavFolderDetail( {required int mediaId, required int pn, required int ps, String keyword = '', String order = 'mtime'}) async { var res = await Request().get(Api.userFavFolderDetail, data: { 'media_id': mediaId, 'pn': pn, 'ps': ps, 'keyword': keyword, 'order': order, 'type': 0, 'tid': 0 }); if (res.data['code'] == 0) { FavDetailData data = FavDetailData.fromJson(res.data['data']); return {'status': true, 'data': data}; } else { return {'status': false, 'data': [], 'msg': res.data['message']}; } } // 稍后再看 static Future seeYouLater() async { var res = await Request().get(Api.seeYouLater); if (res.data['code'] == 0) { List list = []; for (var i in res.data['data']['list']) { list.add(HotVideoItemModel.fromJson(i)); } return { 'status': true, 'data': {'list': list, 'count': res.data['data']['count']} }; } else { return {'status': false, 'data': [], 'msg': res.data['message']}; } } // 观看历史 static Future historyList(int? max, int? viewAt) async { var res = await Request().get(Api.historyList, data: { 'type': 'all', 'ps': 20, 'max': max ?? 0, 'view_at': viewAt ?? 0, }); if (res.data['code'] == 0) { return {'status': true, 'data': HistoryData.fromJson(res.data['data'])}; } else { return {'status': false, 'data': [], 'msg': res.data['message']}; } } }