opt: intro: queryUserStat

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-03-26 11:03:47 +08:00
parent b9adf26ee0
commit 812f351ddd
4 changed files with 33 additions and 29 deletions

View File

@@ -135,7 +135,9 @@ class Api {
static const String relatedList = '/x/web-interface/archive/related';
// 查询用户与自己关系_仅查关注
static const String hasFollow = '/x/relation';
static const String relation = '/x/relation';
static const String relations = '/x/relation/relations';
// 操作用户关系
static const String relationMod = '/x/relation/modify';

View File

@@ -346,7 +346,7 @@ class UserHttp {
static Future hasFollow(int mid) async {
var res = await Request().get(
Api.hasFollow,
Api.relation,
queryParameters: {
'fid': mid,
},

View File

@@ -784,7 +784,7 @@ class VideoHttp {
// 查询是否关注up
static Future hasFollow({required int mid}) async {
var res = await Request().get(Api.hasFollow, queryParameters: {'fid': mid});
var res = await Request().get(Api.relation, queryParameters: {'fid': mid});
if (res.data['code'] == 0) {
return {'status': true, 'data': res.data['data']};
} else {

View File

@@ -1,5 +1,6 @@
import 'dart:async';
import 'package:PiliPlus/http/api.dart';
import 'package:PiliPlus/http/init.dart';
import 'package:PiliPlus/http/loading_state.dart';
import 'package:PiliPlus/http/member.dart';
@@ -150,23 +151,6 @@ class VideoIntroController extends GetxController
}
videoDetail.value = result['data'];
videoItem['staff'] = result['data'].staff;
if (result['data'].staff?.isNotEmpty == true) {
Request().get(
'/x/relation/relations',
queryParameters: {
'fids': (result['data'].staff as List<Staff>)
.map((item) => item.mid)
.join(',')
},
).then((res) {
if (res.data['code'] == 0) {
staffRelations.value = {
'status': true,
if (res.data['data'] != null) ...res.data['data'],
};
}
});
}
try {
final videoDetailController =
Get.find<VideoDetailController>(tag: heroTag);
@@ -187,7 +171,7 @@ class VideoIntroController extends GetxController
// '评论 ${result['data']!.stat!.reply}'
// ];
// 获取到粉丝数再返回
await queryUserStat();
queryUserStat();
} else {
SmartDialog.showToast(
"${result['code']} ${result['msg']} ${result['data']}");
@@ -215,14 +199,32 @@ class VideoIntroController extends GetxController
// 获取up主粉丝数
Future queryUserStat() async {
if (videoDetail.value.owner == null) {
return;
}
var result =
await MemberHttp.memberCardInfo(mid: videoDetail.value.owner!.mid!);
if (result['status']) {
userStat.value = result['data'];
userStat.refresh();
if (videoItem['staff']?.isNotEmpty == true) {
Request().get(
Api.relations,
queryParameters: {
'fids': (videoItem['staff'] as List<Staff>)
.map((item) => item.mid)
.join(',')
},
).then((res) {
if (res.data['code'] == 0) {
staffRelations.value = {
'status': true,
if (res.data['data'] != null) ...res.data['data'],
};
}
});
} else {
if (videoDetail.value.owner == null) {
return;
}
var result =
await MemberHttp.memberCardInfo(mid: videoDetail.value.owner!.mid!);
if (result['status']) {
userStat.value = result['data'];
userStat.refresh();
}
}
}