feat: dyn topic rcmd

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-06-09 19:50:07 +08:00
parent f1e4130201
commit 10efd96788
15 changed files with 260 additions and 142 deletions

View File

@@ -14,6 +14,7 @@ import 'package:PiliPlus/models_new/article/article_view/data.dart';
import 'package:PiliPlus/models_new/dynamic/dyn_reserve/data.dart';
import 'package:PiliPlus/models_new/dynamic/dyn_topic_feed/topic_card_list.dart';
import 'package:PiliPlus/models_new/dynamic/dyn_topic_top/top_details.dart';
import 'package:PiliPlus/models_new/dynamic/dyn_topic_top/topic_item.dart';
import 'package:PiliPlus/utils/accounts/account.dart';
import 'package:PiliPlus/utils/storage.dart';
import 'package:PiliPlus/utils/utils.dart';
@@ -473,4 +474,23 @@ class DynamicsHttp {
return {'status': false, 'msg': res.data['message']};
}
}
static Future<LoadingState<List<TopicItem>?>> dynTopicRcmd(
{int ps = 25}) async {
final res = await Request().get(
Api.dynTopicRcmd,
queryParameters: {
'source': 'Web',
'page_size': ps,
'web_location': 333.1365,
},
);
if (res.data['code'] == 0) {
return Success((res.data['data']?['topic_items'] as List?)
?.map((e) => TopicItem.fromJson(e))
.toList());
} else {
return Error(res.data['message']);
}
}
}