diff --git a/lib/pages/dynamics/controller.dart b/lib/pages/dynamics/controller.dart index 3ff3ace2..5b524510 100644 --- a/lib/pages/dynamics/controller.dart +++ b/lib/pages/dynamics/controller.dart @@ -13,6 +13,7 @@ import 'package:pilipala/models/dynamics/result.dart'; import 'package:pilipala/models/dynamics/up.dart'; import 'package:pilipala/models/live/item.dart'; import 'package:pilipala/utils/feed_back.dart'; +import 'package:pilipala/utils/id_utils.dart'; import 'package:pilipala/utils/storage.dart'; import 'package:pilipala/utils/utils.dart'; @@ -113,16 +114,21 @@ class DynamicsController extends GetxController { pushDetail(item, floor, {action = 'all'}) async { feedBack(); + + /// 点击评论action 直接查看评论 if (action == 'comment') { Get.toNamed('/dynamicDetail', arguments: {'item': item, 'floor': floor, 'action': action}); return false; } switch (item!.type) { + /// 转发的动态 case 'DYNAMIC_TYPE_FORWARD': Get.toNamed('/dynamicDetail', arguments: {'item': item, 'floor': floor}); break; + + /// 图文动态查看 case 'DYNAMIC_TYPE_DRAW': Get.toNamed('/dynamicDetail', arguments: {'item': item, 'floor': floor}); @@ -138,6 +144,8 @@ class DynamicsController extends GetxController { SmartDialog.showToast(err.toString()); } break; + + /// 专栏文章查看 case 'DYNAMIC_TYPE_ARTICLE': String title = item.modules.moduleDynamic.major.opus.title; String url = item.modules.moduleDynamic.major.opus.jumpUrl; @@ -148,7 +156,10 @@ class DynamicsController extends GetxController { break; case 'DYNAMIC_TYPE_PGC': print('番剧'); + SmartDialog.showToast('暂未支持的类型,请联系开发者'); break; + + /// 纯文字动态查看 case 'DYNAMIC_TYPE_WORD': print('纯文本'); Get.toNamed('/dynamicDetail', @@ -172,10 +183,19 @@ class DynamicsController extends GetxController { }); break; - /// TODO + /// 合集查看 case 'DYNAMIC_TYPE_UGC_SEASON': - print('合集'); + DynamicArchiveModel ugcSeason = + item.modules.moduleDynamic.major.ugcSeason; + int aid = ugcSeason.aid!; + String bvid = IdUtils.av2bv(aid); + String cover = ugcSeason.cover!; + int cid = await SearchHttp.ab2c(bvid: bvid); + Get.toNamed('/video?bvid=$bvid&cid=$cid', + arguments: {'pic': cover, 'heroTag': bvid}); break; + + /// 番剧查看 case 'DYNAMIC_TYPE_PGC_UNION': print('DYNAMIC_TYPE_PGC_UNION 番剧'); DynamicArchiveModel pgc = item.modules.moduleDynamic.major.pgc;