feat(player): 切集刷新互动计数统计
This commit is contained in:
1 parent
37353dac15
commit
188811fde6
11 files changed
+694
-20
No files matched your search
@@ -60,6 +60,20 @@ class Episode {
|
||||
posterUrl: posterUrl ?? this.posterUrl,
|
||||
);
|
||||
|
||||
Episode withStats({int? likeCount, int? commentCount}) => Episode(
|
||||
id: id,
|
||||
number: number,
|
||||
title: title,
|
||||
isFree: isFree,
|
||||
videoUrl: videoUrl,
|
||||
durationSec: durationSec,
|
||||
locked: locked,
|
||||
likeCount: likeCount ?? this.likeCount,
|
||||
commentCount: commentCount ?? this.commentCount,
|
||||
thumbnailsUrl: thumbnailsUrl,
|
||||
posterUrl: posterUrl,
|
||||
);
|
||||
|
||||
factory Episode.fromJson(Map<String, dynamic> json) {
|
||||
return Episode(
|
||||
id: (json['id'] ?? '').toString(),
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
// Author: fruit.com.cn
|
||||
|
||||
import 'json_numbers.dart';
|
||||
|
||||
/// 播放页轻量互动计数快照,不包含播放地址或票据信息。
|
||||
class EpisodeStats {
|
||||
const EpisodeStats({
|
||||
required this.episodeId,
|
||||
required this.dramaId,
|
||||
required this.likeCount,
|
||||
required this.commentCount,
|
||||
required this.favoriteCount,
|
||||
required this.liked,
|
||||
required this.favorited,
|
||||
});
|
||||
|
||||
final String episodeId;
|
||||
final String dramaId;
|
||||
final int likeCount;
|
||||
final int commentCount;
|
||||
final int favoriteCount;
|
||||
final bool liked;
|
||||
final bool favorited;
|
||||
|
||||
EpisodeStats copyWith({
|
||||
String? dramaId,
|
||||
int? likeCount,
|
||||
int? commentCount,
|
||||
int? favoriteCount,
|
||||
bool? liked,
|
||||
bool? favorited,
|
||||
}) {
|
||||
return EpisodeStats(
|
||||
episodeId: episodeId,
|
||||
dramaId: dramaId ?? this.dramaId,
|
||||
likeCount: likeCount ?? this.likeCount,
|
||||
commentCount: commentCount ?? this.commentCount,
|
||||
favoriteCount: favoriteCount ?? this.favoriteCount,
|
||||
liked: liked ?? this.liked,
|
||||
favorited: favorited ?? this.favorited,
|
||||
);
|
||||
}
|
||||
|
||||
factory EpisodeStats.fromJson(Map<String, dynamic> json) {
|
||||
return EpisodeStats(
|
||||
episodeId: jsonToId(json['episodeId']),
|
||||
dramaId: jsonToId(json['dramaId']),
|
||||
likeCount: jsonToInt(json['likeCount']),
|
||||
commentCount: jsonToInt(json['commentCount']),
|
||||
favoriteCount: jsonToInt(json['favoriteCount']),
|
||||
liked: json['liked'] == true,
|
||||
favorited: json['favorited'] == true,
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user