mirror of
https://github.com/HChaZZY/PiliPlus.git
synced 2025-12-06 09:13:48 +08:00
opt: get bangumiInfo
This commit is contained in:
@@ -1,3 +1,4 @@
|
|||||||
|
import 'package:PiliPalaX/models/bangumi/info.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/rendering.dart';
|
import 'package:flutter/rendering.dart';
|
||||||
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
|
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
|
||||||
@@ -43,25 +44,40 @@ class VideoCardV extends StatelessWidget {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
int epId = videoItem.param;
|
int epId = videoItem.param;
|
||||||
SmartDialog.showLoading(msg: '资源获取中');
|
Utils.viewBangumi(epId: epId);
|
||||||
var result = await SearchHttp.bangumiInfo(seasonId: null, epId: epId);
|
// SmartDialog.showLoading(msg: '资源获取中');
|
||||||
SmartDialog.dismiss();
|
// var result = await SearchHttp.bangumiInfo(seasonId: null, epId: epId);
|
||||||
if (result['status']) {
|
// SmartDialog.dismiss();
|
||||||
var bangumiDetail = result['data'];
|
// if (result['status']) {
|
||||||
int cid = bangumiDetail.episodes!.first.cid;
|
// var bangumiDetail = result['data'];
|
||||||
String bvid = IdUtils.av2bv(bangumiDetail.episodes!.first.aid);
|
// EpisodeItem episode = result['data'].episodes.first;
|
||||||
String seasonId = bangumiDetail.seasonId;
|
// int? epId = result['data'].userStatus?.progress?.lastEpId;
|
||||||
Get.toNamed(
|
// if (epId == null) {
|
||||||
'/video?bvid=$bvid&cid=$cid&seasonId=$seasonId&epId=$epId',
|
// epId = episode.epId;
|
||||||
arguments: {
|
// } else {
|
||||||
'pic': videoItem.pic,
|
// for (var item in result['data'].episodes) {
|
||||||
'heroTag': heroTag,
|
// if (item.epId == epId) {
|
||||||
'videoType': SearchType.media_bangumi,
|
// episode = item;
|
||||||
},
|
// break;
|
||||||
);
|
// }
|
||||||
} else {
|
// }
|
||||||
SmartDialog.showToast(result['msg']);
|
// }
|
||||||
}
|
// String bvid = episode.bvid!;
|
||||||
|
// int cid = episode.cid!;
|
||||||
|
// String pic = episode.cover!;
|
||||||
|
// String seasonId = bangumiDetail.seasonId;
|
||||||
|
// dynamic heroTag = Utils.makeHeroTag(cid);
|
||||||
|
// Get.toNamed(
|
||||||
|
// '/video?bvid=$bvid&cid=$cid&seasonId=$seasonId&epId=$epId',
|
||||||
|
// arguments: {
|
||||||
|
// 'pic': pic,
|
||||||
|
// 'heroTag': heroTag,
|
||||||
|
// 'videoType': SearchType.media_bangumi,
|
||||||
|
// },
|
||||||
|
// );
|
||||||
|
// } else {
|
||||||
|
// SmartDialog.showToast(result['msg']);
|
||||||
|
// }
|
||||||
break;
|
break;
|
||||||
case 'av':
|
case 'av':
|
||||||
String bvid = videoItem.bvid ?? IdUtils.av2bv(videoItem.aid);
|
String bvid = videoItem.bvid ?? IdUtils.av2bv(videoItem.aid);
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ class BangumiIntroController extends CommonController {
|
|||||||
// 视频bvid
|
// 视频bvid
|
||||||
String bvid = Get.parameters['bvid'] ?? '';
|
String bvid = Get.parameters['bvid'] ?? '';
|
||||||
var seasonId = Get.parameters['seasonId'] != null
|
var seasonId = Get.parameters['seasonId'] != null
|
||||||
? int.parse(Get.parameters['seasonId']!)
|
? int.tryParse(Get.parameters['seasonId']!)
|
||||||
: null;
|
: null;
|
||||||
var epId = Get.parameters['epId'] != null
|
var epId = Get.parameters['epId'] != null
|
||||||
? int.tryParse(Get.parameters['epId']!)
|
? int.tryParse(Get.parameters['epId']!)
|
||||||
|
|||||||
@@ -42,45 +42,46 @@ class BangumiCardV extends StatelessWidget {
|
|||||||
child: InkWell(
|
child: InkWell(
|
||||||
onTap: () async {
|
onTap: () async {
|
||||||
final int seasonId = bangumiItem.seasonId;
|
final int seasonId = bangumiItem.seasonId;
|
||||||
SmartDialog.showLoading(msg: '获取中...');
|
Utils.viewBangumi(seasonId: seasonId);
|
||||||
final res = await SearchHttp.bangumiInfo(seasonId: seasonId);
|
// SmartDialog.showLoading(msg: '获取中...');
|
||||||
SmartDialog.dismiss().then((value) {
|
// final res = await SearchHttp.bangumiInfo(seasonId: seasonId);
|
||||||
if (res['status']) {
|
// SmartDialog.dismiss().then((value) {
|
||||||
if (res['data'].episodes.isEmpty) {
|
// if (res['status']) {
|
||||||
SmartDialog.showToast('资源加载失败');
|
// if (res['data'].episodes.isEmpty) {
|
||||||
return;
|
// SmartDialog.showToast('资源加载失败');
|
||||||
}
|
// return;
|
||||||
EpisodeItem episode = res['data'].episodes.first;
|
// }
|
||||||
int? epId = res['data'].userStatus?.progress?.lastEpId;
|
// EpisodeItem episode = res['data'].episodes.first;
|
||||||
if (epId == null) {
|
// int? epId = res['data'].userStatus?.progress?.lastEpId;
|
||||||
epId = episode.epId;
|
// if (epId == null) {
|
||||||
} else {
|
// epId = episode.epId;
|
||||||
for (var item in res['data'].episodes) {
|
// } else {
|
||||||
if (item.epId == epId) {
|
// for (var item in res['data'].episodes) {
|
||||||
episode = item;
|
// if (item.epId == epId) {
|
||||||
break;
|
// episode = item;
|
||||||
}
|
// break;
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
String bvid = episode.bvid!;
|
// }
|
||||||
int cid = episode.cid!;
|
// String bvid = episode.bvid!;
|
||||||
String pic = episode.cover!;
|
// int cid = episode.cid!;
|
||||||
print('epId');
|
// String pic = episode.cover!;
|
||||||
print(epId);
|
// // print('epId');
|
||||||
String heroTag = Utils.makeHeroTag(cid);
|
// // print(epId);
|
||||||
Get.toNamed(
|
// String heroTag = Utils.makeHeroTag(cid);
|
||||||
'/video?bvid=$bvid&cid=$cid&seasonId=$seasonId&epId=$epId',
|
// Get.toNamed(
|
||||||
arguments: {
|
// '/video?bvid=$bvid&cid=$cid&seasonId=$seasonId&epId=$epId',
|
||||||
'pic': pic,
|
// arguments: {
|
||||||
'heroTag': heroTag,
|
// 'pic': pic,
|
||||||
'videoType': SearchType.media_bangumi,
|
// 'heroTag': heroTag,
|
||||||
'bangumiItem': res['data'],
|
// 'videoType': SearchType.media_bangumi,
|
||||||
},
|
// 'bangumiItem': res['data'],
|
||||||
);
|
// },
|
||||||
} else {
|
// );
|
||||||
SmartDialog.showToast(res['msg']);
|
// } else {
|
||||||
}
|
// SmartDialog.showToast(res['msg']);
|
||||||
});
|
// }
|
||||||
|
// });
|
||||||
},
|
},
|
||||||
child: Column(
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
|
|||||||
@@ -178,37 +178,38 @@ class DynamicsController extends GetxController
|
|||||||
print('DYNAMIC_TYPE_PGC_UNION 番剧');
|
print('DYNAMIC_TYPE_PGC_UNION 番剧');
|
||||||
DynamicArchiveModel pgc = item.modules.moduleDynamic.major.pgc;
|
DynamicArchiveModel pgc = item.modules.moduleDynamic.major.pgc;
|
||||||
if (pgc.epid != null) {
|
if (pgc.epid != null) {
|
||||||
SmartDialog.showLoading(msg: '获取中...');
|
Utils.viewBangumi(epId: pgc.epid);
|
||||||
var res = await SearchHttp.bangumiInfo(epId: pgc.epid);
|
// SmartDialog.showLoading(msg: '获取中...');
|
||||||
SmartDialog.dismiss();
|
// var res = await SearchHttp.bangumiInfo(epId: pgc.epid);
|
||||||
if (res['status']) {
|
// SmartDialog.dismiss();
|
||||||
// dynamic episode -> progress episode -> first episode
|
// if (res['status']) {
|
||||||
EpisodeItem episode = (res['data'].episodes as List)
|
// // dynamic episode -> progress episode -> first episode
|
||||||
.firstWhereOrNull(
|
// EpisodeItem episode = (res['data'].episodes as List)
|
||||||
(item) => item.epId == pgc.epid,
|
// .firstWhereOrNull(
|
||||||
) ??
|
// (item) => item.epId == pgc.epid,
|
||||||
(res['data'].episodes as List).firstWhereOrNull(
|
// ) ??
|
||||||
(item) =>
|
// (res['data'].episodes as List).firstWhereOrNull(
|
||||||
item.epId == res['data'].userStatus?.progress?.lastEpId,
|
// (item) =>
|
||||||
) ??
|
// item.epId == res['data'].userStatus?.progress?.lastEpId,
|
||||||
res['data'].episodes.first;
|
// ) ??
|
||||||
dynamic epId = episode.epId;
|
// res['data'].episodes.first;
|
||||||
dynamic bvid = episode.bvid;
|
// dynamic epId = episode.epId;
|
||||||
dynamic cid = episode.cid;
|
// dynamic bvid = episode.bvid;
|
||||||
dynamic pic = episode.cover;
|
// dynamic cid = episode.cid;
|
||||||
dynamic heroTag = Utils.makeHeroTag(cid);
|
// dynamic pic = episode.cover;
|
||||||
Utils.toDupNamed(
|
// dynamic heroTag = Utils.makeHeroTag(cid);
|
||||||
'/video?bvid=$bvid&cid=$cid&seasonId=${res['data'].seasonId}&epId=$epId',
|
// Utils.toDupNamed(
|
||||||
arguments: {
|
// '/video?bvid=$bvid&cid=$cid&seasonId=${res['data'].seasonId}&epId=$epId',
|
||||||
'pic': pic,
|
// arguments: {
|
||||||
'heroTag': heroTag,
|
// 'pic': pic,
|
||||||
'videoType': SearchType.media_bangumi,
|
// 'heroTag': heroTag,
|
||||||
'bangumiItem': res['data'],
|
// 'videoType': SearchType.media_bangumi,
|
||||||
},
|
// 'bangumiItem': res['data'],
|
||||||
);
|
// },
|
||||||
} else {
|
// );
|
||||||
SmartDialog.showToast(res['msg']);
|
// } else {
|
||||||
}
|
// SmartDialog.showToast(res['msg']);
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -106,34 +106,42 @@ class HistoryItem extends StatelessWidget {
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (videoItem.history.epid != '') {
|
if (videoItem.history.epid != '') {
|
||||||
SmartDialog.showLoading(msg: '获取中...');
|
Utils.viewBangumi(epId: videoItem.history.epid);
|
||||||
var res =
|
// SmartDialog.showLoading(msg: '获取中...');
|
||||||
await SearchHttp.bangumiInfo(epId: videoItem.history.epid);
|
// var res =
|
||||||
SmartDialog.dismiss();
|
// await SearchHttp.bangumiInfo(epId: videoItem.history.epid);
|
||||||
if (res['status']) {
|
// SmartDialog.dismiss();
|
||||||
EpisodeItem episode = res['data'].episodes.first;
|
// if (res['status']) {
|
||||||
for (EpisodeItem i in res['data'].episodes) {
|
// var bangumiDetail = res['data'];
|
||||||
if (i.epId == videoItem.history.epid) {
|
// EpisodeItem episode = res['data'].episodes.first;
|
||||||
episode = i;
|
// int? epId = res['data'].userStatus?.progress?.lastEpId;
|
||||||
break;
|
// if (epId == null) {
|
||||||
}
|
// epId = episode.epId;
|
||||||
}
|
// } else {
|
||||||
String bvid = episode.bvid!;
|
// for (var item in res['data'].episodes) {
|
||||||
int cid = episode.cid!;
|
// if (item.epId == epId) {
|
||||||
String pic = episode.cover!;
|
// episode = item;
|
||||||
String heroTag = Utils.makeHeroTag(cid);
|
// break;
|
||||||
Get.toNamed(
|
// }
|
||||||
'/video?bvid=$bvid&cid=$cid&seasonId=${res['data'].seasonId}&epId=${episode.epId}',
|
// }
|
||||||
arguments: {
|
// }
|
||||||
'pic': pic,
|
// String bvid = episode.bvid!;
|
||||||
'heroTag': heroTag,
|
// int cid = episode.cid!;
|
||||||
'videoType': SearchType.media_bangumi,
|
// String pic = episode.cover!;
|
||||||
'bangumiItem': res['data'],
|
// String seasonId = bangumiDetail.seasonId;
|
||||||
},
|
// dynamic heroTag = Utils.makeHeroTag(cid);
|
||||||
);
|
// Get.toNamed(
|
||||||
} else {
|
// '/video?bvid=$bvid&cid=$cid&seasonId=$seasonId&epId=$epId',
|
||||||
SmartDialog.showToast(res['msg']);
|
// arguments: {
|
||||||
}
|
// 'pic': pic,
|
||||||
|
// 'heroTag': heroTag,
|
||||||
|
// 'videoType': SearchType.media_bangumi,
|
||||||
|
// 'bangumiItem': res['data'],
|
||||||
|
// },
|
||||||
|
// );
|
||||||
|
// } else {
|
||||||
|
// SmartDialog.showToast(res['msg']);
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -137,47 +137,48 @@ Widget searchBangumiPanel(BuildContext context, ctr, loadingState) {
|
|||||||
height: 32,
|
height: 32,
|
||||||
child: ElevatedButton(
|
child: ElevatedButton(
|
||||||
onPressed: () async {
|
onPressed: () async {
|
||||||
SmartDialog.showLoading(msg: '获取中...');
|
Utils.viewBangumi(seasonId: i.seasonId);
|
||||||
var res = await SearchHttp.bangumiInfo(
|
// SmartDialog.showLoading(msg: '获取中...');
|
||||||
seasonId: i.seasonId);
|
// var res = await SearchHttp.bangumiInfo(
|
||||||
SmartDialog.dismiss().then((value) {
|
// seasonId: i.seasonId);
|
||||||
if (res['status']) {
|
// SmartDialog.dismiss().then((value) {
|
||||||
EpisodeItem episode =
|
// if (res['status']) {
|
||||||
res['data'].episodes.first;
|
// EpisodeItem episode =
|
||||||
int? epId = res['data']
|
// res['data'].episodes.first;
|
||||||
.userStatus
|
// int? epId = res['data']
|
||||||
?.progress
|
// .userStatus
|
||||||
?.lastEpId;
|
// ?.progress
|
||||||
if (epId == null) {
|
// ?.lastEpId;
|
||||||
epId = episode.epId;
|
// if (epId == null) {
|
||||||
} else {
|
// epId = episode.epId;
|
||||||
for (var item
|
// } else {
|
||||||
in res['data'].episodes) {
|
// for (var item
|
||||||
if (item.epId == epId) {
|
// in res['data'].episodes) {
|
||||||
episode = item;
|
// if (item.epId == epId) {
|
||||||
break;
|
// episode = item;
|
||||||
}
|
// break;
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
String bvid = episode.bvid!;
|
// }
|
||||||
int cid = episode.cid!;
|
// String bvid = episode.bvid!;
|
||||||
String pic = episode.cover!;
|
// int cid = episode.cid!;
|
||||||
String heroTag =
|
// String pic = episode.cover!;
|
||||||
Utils.makeHeroTag(cid);
|
// String heroTag =
|
||||||
Get.toNamed(
|
// Utils.makeHeroTag(cid);
|
||||||
'/video?bvid=$bvid&cid=$cid&seasonId=${i.seasonId}&epId=$epId',
|
// Get.toNamed(
|
||||||
arguments: {
|
// '/video?bvid=$bvid&cid=$cid&seasonId=${i.seasonId}&epId=$epId',
|
||||||
'pic': pic,
|
// arguments: {
|
||||||
'heroTag': heroTag,
|
// 'pic': pic,
|
||||||
'videoType':
|
// 'heroTag': heroTag,
|
||||||
SearchType.media_bangumi,
|
// 'videoType':
|
||||||
'bangumiItem': res['data'],
|
// SearchType.media_bangumi,
|
||||||
},
|
// 'bangumiItem': res['data'],
|
||||||
);
|
// },
|
||||||
} else {
|
// );
|
||||||
SmartDialog.showToast(res['msg']);
|
// } else {
|
||||||
}
|
// SmartDialog.showToast(res['msg']);
|
||||||
});
|
// }
|
||||||
|
// });
|
||||||
},
|
},
|
||||||
child: const Text('观看'),
|
child: const Text('观看'),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
|
|
||||||
|
import 'package:PiliPalaX/models/bangumi/info.dart';
|
||||||
import 'package:PiliPalaX/models/common/reply_type.dart';
|
import 'package:PiliPalaX/models/common/reply_type.dart';
|
||||||
import 'package:PiliPalaX/pages/video/detail/reply/widgets/reply_item.dart';
|
import 'package:PiliPalaX/pages/video/detail/reply/widgets/reply_item.dart';
|
||||||
import 'package:app_links/app_links.dart';
|
import 'package:app_links/app_links.dart';
|
||||||
@@ -270,28 +271,41 @@ class PiliScheme {
|
|||||||
// 番剧跳转
|
// 番剧跳转
|
||||||
static Future<void> bangumiPush(int? seasonId, int? epId) async {
|
static Future<void> bangumiPush(int? seasonId, int? epId) async {
|
||||||
print('seasonId: $seasonId, epId: $epId');
|
print('seasonId: $seasonId, epId: $epId');
|
||||||
SmartDialog.showLoading<dynamic>(msg: '获取中...');
|
// SmartDialog.showLoading<dynamic>(msg: '获取中...');
|
||||||
try {
|
try {
|
||||||
var result = await SearchHttp.bangumiInfo(seasonId: seasonId, epId: epId);
|
Utils.viewBangumi(seasonId: seasonId, epId: epId);
|
||||||
if (result['status']) {
|
// var result = await SearchHttp.bangumiInfo(seasonId: seasonId, epId: epId);
|
||||||
var bangumiDetail = result['data'];
|
// if (result['status']) {
|
||||||
final int cid = bangumiDetail.episodes!.first.cid;
|
// var bangumiDetail = result['data'];
|
||||||
final String bvid = IdUtils.av2bv(bangumiDetail.episodes!.first.aid);
|
// EpisodeItem episode = result['data'].episodes.first;
|
||||||
final String heroTag = Utils.makeHeroTag(cid);
|
// int? epId = result['data'].userStatus?.progress?.lastEpId;
|
||||||
var epId = bangumiDetail.episodes!.first.id;
|
// if (epId == null) {
|
||||||
SmartDialog.dismiss().then(
|
// epId = episode.epId;
|
||||||
(e) => Utils.toDupNamed(
|
// } else {
|
||||||
'/video?bvid=$bvid&cid=$cid&seasonId=$seasonId&epId=$epId',
|
// for (var item in result['data'].episodes) {
|
||||||
arguments: <String, dynamic>{
|
// if (item.epId == epId) {
|
||||||
'pic': bangumiDetail.cover,
|
// episode = item;
|
||||||
'heroTag': heroTag,
|
// break;
|
||||||
'videoType': SearchType.media_bangumi,
|
// }
|
||||||
},
|
// }
|
||||||
),
|
// }
|
||||||
);
|
// String bvid = episode.bvid!;
|
||||||
} else {
|
// int cid = episode.cid!;
|
||||||
SmartDialog.showToast(result['msg']);
|
// dynamic pic = episode.cover;
|
||||||
}
|
// final String heroTag = Utils.makeHeroTag(cid);
|
||||||
|
// SmartDialog.dismiss().then(
|
||||||
|
// (e) => Utils.toDupNamed(
|
||||||
|
// '/video?bvid=$bvid&cid=$cid&seasonId=${bangumiDetail.seasonId}&epId=$epId',
|
||||||
|
// arguments: <String, dynamic>{
|
||||||
|
// 'pic': pic,
|
||||||
|
// 'heroTag': heroTag,
|
||||||
|
// 'videoType': SearchType.media_bangumi,
|
||||||
|
// },
|
||||||
|
// ),
|
||||||
|
// );
|
||||||
|
// } else {
|
||||||
|
// SmartDialog.showToast(result['msg']);
|
||||||
|
// }
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
SmartDialog.showToast('番剧获取失败:$e');
|
SmartDialog.showToast('番剧获取失败:$e');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ import 'dart:async';
|
|||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
import 'dart:math';
|
import 'dart:math';
|
||||||
|
import 'package:PiliPalaX/http/search.dart';
|
||||||
|
import 'package:PiliPalaX/models/bangumi/info.dart';
|
||||||
|
import 'package:PiliPalaX/models/common/search_type.dart';
|
||||||
import 'package:PiliPalaX/utils/storage.dart';
|
import 'package:PiliPalaX/utils/storage.dart';
|
||||||
import 'package:crypto/crypto.dart';
|
import 'package:crypto/crypto.dart';
|
||||||
import 'package:device_info_plus/device_info_plus.dart';
|
import 'package:device_info_plus/device_info_plus.dart';
|
||||||
@@ -22,6 +25,51 @@ import '../models/github/latest.dart';
|
|||||||
class Utils {
|
class Utils {
|
||||||
static final Random random = Random();
|
static final Random random = Random();
|
||||||
|
|
||||||
|
static void viewBangumi({
|
||||||
|
dynamic seasonId,
|
||||||
|
dynamic epId,
|
||||||
|
}) async {
|
||||||
|
SmartDialog.showLoading(msg: '资源获取中');
|
||||||
|
var result = await SearchHttp.bangumiInfo(seasonId: seasonId, epId: epId);
|
||||||
|
SmartDialog.dismiss();
|
||||||
|
if (result['status']) {
|
||||||
|
if (result['data'].episodes.isEmpty) {
|
||||||
|
SmartDialog.showToast('资源加载失败');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// epId episode -> progress episode -> first episode
|
||||||
|
EpisodeItem? episode;
|
||||||
|
if (epId != null) {
|
||||||
|
EpisodeItem? e = (result['data'].episodes as List).firstWhereOrNull(
|
||||||
|
(item) => item.epId == epId,
|
||||||
|
);
|
||||||
|
if (e != null) {
|
||||||
|
episode = e;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
episode ??= (result['data'].episodes as List).firstWhereOrNull(
|
||||||
|
(item) =>
|
||||||
|
item.epId == result['data'].userStatus?.progress?.lastEpId,
|
||||||
|
) ??
|
||||||
|
result['data'].episodes.first;
|
||||||
|
dynamic bvid = episode?.bvid;
|
||||||
|
dynamic cid = episode?.cid;
|
||||||
|
dynamic pic = episode?.cover;
|
||||||
|
dynamic heroTag = Utils.makeHeroTag(cid);
|
||||||
|
Utils.toDupNamed(
|
||||||
|
'/video?bvid=$bvid&cid=$cid&seasonId=${result['data'].seasonId}&epId=${episode?.epId}',
|
||||||
|
arguments: {
|
||||||
|
'pic': pic,
|
||||||
|
'heroTag': heroTag,
|
||||||
|
'videoType': SearchType.media_bangumi,
|
||||||
|
'bangumiItem': result['data'],
|
||||||
|
},
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
SmartDialog.showToast(result['msg']);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static void toDupNamed(
|
static void toDupNamed(
|
||||||
String page, {
|
String page, {
|
||||||
dynamic arguments,
|
dynamic arguments,
|
||||||
|
|||||||
Reference in New Issue
Block a user