diff --git a/server/resources.go b/server/resources.go index 0338ec6..96599f8 100644 --- a/server/resources.go +++ b/server/resources.go @@ -309,7 +309,7 @@ func (s *Server) DownloadMovieTorrent(c *gin.Context) (interface{}, error) { history, err := s.db.SaveHistoryRecord(ent.History{ MediaID: media.ID, EpisodeID: ep.ID, - SourceTitle: media.NameCn, + SourceTitle: in.Name, TargetDir: "./", Status: history.StatusRunning, Size: in.Size, diff --git a/ui/lib/movie_watchlist.dart b/ui/lib/movie_watchlist.dart index ffbd9fc..631e6dc 100644 --- a/ui/lib/movie_watchlist.dart +++ b/ui/lib/movie_watchlist.dart @@ -252,7 +252,7 @@ class _NestedTabBarState extends ConsumerState ref .read(movieTorrentsDataProvider(widget.id) .notifier) - .download(torrent.link!) + .download(torrent) .whenComplete(() => Utils.showSnakeBar("开始下载:${torrent.name}")) .onError((error, trace) => diff --git a/ui/lib/providers/welcome_data.dart b/ui/lib/providers/welcome_data.dart index f0d823b..f29b26e 100644 --- a/ui/lib/providers/welcome_data.dart +++ b/ui/lib/providers/welcome_data.dart @@ -181,24 +181,23 @@ class MediaDetail { } class SearchResult { - SearchResult({ - required this.backdropPath, - required this.id, - required this.name, - required this.originalName, - required this.overview, - required this.posterPath, - required this.mediaType, - required this.adult, - required this.originalLanguage, - required this.genreIds, - required this.popularity, - required this.firstAirDate, - required this.voteAverage, - required this.voteCount, - required this.originCountry, - this.inWatchlist - }); + SearchResult( + {required this.backdropPath, + required this.id, + required this.name, + required this.originalName, + required this.overview, + required this.posterPath, + required this.mediaType, + required this.adult, + required this.originalLanguage, + required this.genreIds, + required this.popularity, + required this.firstAirDate, + required this.voteAverage, + required this.voteCount, + required this.originCountry, + this.inWatchlist}); final String? backdropPath; final int? id; @@ -258,10 +257,12 @@ class MovieTorrentResource return (rsp.data as List).map((v) => TorrentResource.fromJson(v)).toList(); } - Future download(String link) async { + Future download(TorrentResource res) async { + var m = res.toJson(); + m["media_id"] = int.parse(mediaId!); + final dio = await APIs.getDio(); - var resp = await dio.post(APIs.availableMoviesUrl, - data: {"media_id": int.parse(mediaId!), "link": link}); + var resp = await dio.post(APIs.availableMoviesUrl, data: m); var rsp = ServerResponse.fromJson(resp.data); if (rsp.code != 0) { throw rsp.message; @@ -286,4 +287,11 @@ class TorrentResource { peers: json["peers"], link: json["link"]); } + Map toJson() { + final Map data = {}; + data['name'] = name; + data['size'] = size; + data["link"] = link; + return data; + } }