feat: search user by uid

This commit is contained in:
guozhigq
2024-10-26 16:31:01 +08:00
parent baa6a644e3
commit 4f6ac4aff4
4 changed files with 83 additions and 40 deletions

View File

@ -1,7 +1,9 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:pilipala/http/member.dart';
import 'package:pilipala/http/search.dart';
import 'package:pilipala/models/common/search_type.dart';
import 'package:pilipala/models/search/result.dart';
import 'package:pilipala/utils/id_utils.dart';
import 'package:pilipala/utils/utils.dart';
@ -39,6 +41,30 @@ class SearchPanelController extends GetxController {
page.value++;
onPushDetail(keyword, resultList);
}
if (RegExp(r'^\d+$').hasMatch(keyword!) &&
searchType == SearchType.bili_user) {
var res = await MemberHttp.memberInfo(mid: int.parse(keyword!));
if (res['status']) {
try {
final user = SearchUserItemModel(
mid: res['data'].mid,
uname: res['data'].name,
upic: res['data'].face,
level: res['data'].level,
fans: null,
videos: null,
officialVerify: res['data'].official,
);
if (resultList.isEmpty) {
resultList = [user].obs;
} else {
resultList.insert(0, user);
}
} catch (err) {
debugPrint('搜索用户信息失败: $err');
}
}
}
return result;
}