mirror of
https://github.com/bggRGjQaUbCoE/PiliPlus.git
synced 2026-04-22 03:31:09 +08:00
13
lib/models_new/pgc/pgc_info_model/activity.dart
Normal file
13
lib/models_new/pgc/pgc_info_model/activity.dart
Normal file
@@ -0,0 +1,13 @@
|
||||
class Activity {
|
||||
String? headBgUrl;
|
||||
int? id;
|
||||
String? title;
|
||||
|
||||
Activity({this.headBgUrl, this.id, this.title});
|
||||
|
||||
factory Activity.fromJson(Map<String, dynamic> json) => Activity(
|
||||
headBgUrl: json['head_bg_url'] as String?,
|
||||
id: json['id'] as int?,
|
||||
title: json['title'] as String?,
|
||||
);
|
||||
}
|
||||
11
lib/models_new/pgc/pgc_info_model/area.dart
Normal file
11
lib/models_new/pgc/pgc_info_model/area.dart
Normal file
@@ -0,0 +1,11 @@
|
||||
class Area {
|
||||
int? id;
|
||||
String? name;
|
||||
|
||||
Area({this.id, this.name});
|
||||
|
||||
factory Area.fromJson(Map<String, dynamic> json) => Area(
|
||||
id: json['id'] as int?,
|
||||
name: json['name'] as String?,
|
||||
);
|
||||
}
|
||||
13
lib/models_new/pgc/pgc_info_model/badge_info.dart
Normal file
13
lib/models_new/pgc/pgc_info_model/badge_info.dart
Normal file
@@ -0,0 +1,13 @@
|
||||
class BadgeInfo {
|
||||
String? bgColor;
|
||||
String? bgColorNight;
|
||||
String? text;
|
||||
|
||||
BadgeInfo({this.bgColor, this.bgColorNight, this.text});
|
||||
|
||||
factory BadgeInfo.fromJson(Map<String, dynamic> json) => BadgeInfo(
|
||||
bgColor: json['bg_color'] as String?,
|
||||
bgColorNight: json['bg_color_night'] as String?,
|
||||
text: json['text'] as String?,
|
||||
);
|
||||
}
|
||||
15
lib/models_new/pgc/pgc_info_model/danmaku.dart
Normal file
15
lib/models_new/pgc/pgc_info_model/danmaku.dart
Normal file
@@ -0,0 +1,15 @@
|
||||
class Danmaku {
|
||||
String? icon;
|
||||
String? pureText;
|
||||
String? text;
|
||||
int? value;
|
||||
|
||||
Danmaku({this.icon, this.pureText, this.text, this.value});
|
||||
|
||||
factory Danmaku.fromJson(Map<String, dynamic> json) => Danmaku(
|
||||
icon: json['icon'] as String?,
|
||||
pureText: json['pure_text'] as String?,
|
||||
text: json['text'] as String?,
|
||||
value: json['value'] as int?,
|
||||
);
|
||||
}
|
||||
13
lib/models_new/pgc/pgc_info_model/dimension.dart
Normal file
13
lib/models_new/pgc/pgc_info_model/dimension.dart
Normal file
@@ -0,0 +1,13 @@
|
||||
class Dimension {
|
||||
int? height;
|
||||
int? rotate;
|
||||
int? width;
|
||||
|
||||
Dimension({this.height, this.rotate, this.width});
|
||||
|
||||
factory Dimension.fromJson(Map<String, dynamic> json) => Dimension(
|
||||
height: json['height'] as int?,
|
||||
rotate: json['rotate'] as int?,
|
||||
width: json['width'] as int?,
|
||||
);
|
||||
}
|
||||
11
lib/models_new/pgc/pgc_info_model/ed.dart
Normal file
11
lib/models_new/pgc/pgc_info_model/ed.dart
Normal file
@@ -0,0 +1,11 @@
|
||||
class Ed {
|
||||
int? end;
|
||||
int? start;
|
||||
|
||||
Ed({this.end, this.start});
|
||||
|
||||
factory Ed.fromJson(Map<String, dynamic> json) => Ed(
|
||||
end: json['end'] as int?,
|
||||
start: json['start'] as int?,
|
||||
);
|
||||
}
|
||||
114
lib/models_new/pgc/pgc_info_model/episode.dart
Normal file
114
lib/models_new/pgc/pgc_info_model/episode.dart
Normal file
@@ -0,0 +1,114 @@
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/badge_info.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/dimension.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/rights.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/skip.dart';
|
||||
|
||||
class EpisodeItem {
|
||||
int? aid;
|
||||
String? badge;
|
||||
BadgeInfo? badgeInfo;
|
||||
int? badgeType;
|
||||
String? bvid;
|
||||
int? cid;
|
||||
String? cover;
|
||||
Dimension? dimension;
|
||||
int? duration;
|
||||
bool? enableVt;
|
||||
int? epId;
|
||||
String? from;
|
||||
int? id;
|
||||
bool? isViewHide;
|
||||
String? link;
|
||||
String? longTitle;
|
||||
int? pubTime;
|
||||
int? pv;
|
||||
String? releaseDate;
|
||||
Rights? rights;
|
||||
int? sectionType;
|
||||
String? shareCopy;
|
||||
String? shareUrl;
|
||||
String? shortLink;
|
||||
bool? showDrmLoginDialog;
|
||||
String? showTitle;
|
||||
Skip? skip;
|
||||
int? status;
|
||||
String? subtitle;
|
||||
String? title;
|
||||
String? vid;
|
||||
|
||||
EpisodeItem({
|
||||
this.aid,
|
||||
this.badge,
|
||||
this.badgeInfo,
|
||||
this.badgeType,
|
||||
this.bvid,
|
||||
this.cid,
|
||||
this.cover,
|
||||
this.dimension,
|
||||
this.duration,
|
||||
this.enableVt,
|
||||
this.epId,
|
||||
this.from,
|
||||
this.id,
|
||||
this.isViewHide,
|
||||
this.link,
|
||||
this.longTitle,
|
||||
this.pubTime,
|
||||
this.pv,
|
||||
this.releaseDate,
|
||||
this.rights,
|
||||
this.sectionType,
|
||||
this.shareCopy,
|
||||
this.shareUrl,
|
||||
this.shortLink,
|
||||
this.showDrmLoginDialog,
|
||||
this.showTitle,
|
||||
this.skip,
|
||||
this.status,
|
||||
this.subtitle,
|
||||
this.title,
|
||||
this.vid,
|
||||
});
|
||||
|
||||
factory EpisodeItem.fromJson(Map<String, dynamic> json) => EpisodeItem(
|
||||
aid: json['aid'] as int?,
|
||||
badge: json['badge'] as String?,
|
||||
badgeInfo: json['badge_info'] == null
|
||||
? null
|
||||
: BadgeInfo.fromJson(json['badge_info'] as Map<String, dynamic>),
|
||||
badgeType: json['badge_type'] as int?,
|
||||
bvid: json['bvid'] as String?,
|
||||
cid: json['cid'] as int?,
|
||||
cover: json['cover'] as String?,
|
||||
dimension: json['dimension'] == null
|
||||
? null
|
||||
: Dimension.fromJson(json['dimension'] as Map<String, dynamic>),
|
||||
duration: json['duration'] as int?,
|
||||
enableVt: json['enable_vt'] as bool?,
|
||||
epId: json['ep_id'] as int?,
|
||||
from: json['from'] as String?,
|
||||
id: json['id'] as int?,
|
||||
isViewHide: json['is_view_hide'] as bool?,
|
||||
link: json['link'] as String?,
|
||||
longTitle: json['long_title'] as String?,
|
||||
pubTime: json['pub_time'] as int?,
|
||||
pv: json['pv'] as int?,
|
||||
releaseDate: json['release_date'] as String?,
|
||||
rights: json['rights'] == null
|
||||
? null
|
||||
: Rights.fromJson(json['rights'] as Map<String, dynamic>),
|
||||
sectionType: json['section_type'] as int?,
|
||||
shareCopy: json['share_copy'] as String?,
|
||||
shareUrl: json['share_url'] as String?,
|
||||
shortLink: json['short_link'] as String?,
|
||||
showDrmLoginDialog: json['showDrmLoginDialog'] as bool?,
|
||||
showTitle: json['show_title'] as String?,
|
||||
skip: json['skip'] == null
|
||||
? null
|
||||
: Skip.fromJson(json['skip'] as Map<String, dynamic>),
|
||||
status: json['status'] as int?,
|
||||
subtitle: json['subtitle'] as String?,
|
||||
title: json['title'] as String?,
|
||||
vid: json['vid'] as String?,
|
||||
);
|
||||
}
|
||||
11
lib/models_new/pgc/pgc_info_model/freya.dart
Normal file
11
lib/models_new/pgc/pgc_info_model/freya.dart
Normal file
@@ -0,0 +1,11 @@
|
||||
class Freya {
|
||||
int? bubbleShowCnt;
|
||||
int? iconShow;
|
||||
|
||||
Freya({this.bubbleShowCnt, this.iconShow});
|
||||
|
||||
factory Freya.fromJson(Map<String, dynamic> json) => Freya(
|
||||
bubbleShowCnt: json['bubble_show_cnt'] as int?,
|
||||
iconShow: json['icon_show'] as int?,
|
||||
);
|
||||
}
|
||||
11
lib/models_new/pgc/pgc_info_model/icon_font.dart
Normal file
11
lib/models_new/pgc/pgc_info_model/icon_font.dart
Normal file
@@ -0,0 +1,11 @@
|
||||
class IconFont {
|
||||
String? name;
|
||||
String? text;
|
||||
|
||||
IconFont({this.name, this.text});
|
||||
|
||||
factory IconFont.fromJson(Map<String, dynamic> json) => IconFont(
|
||||
name: json['name'] as String?,
|
||||
text: json['text'] as String?,
|
||||
);
|
||||
}
|
||||
15
lib/models_new/pgc/pgc_info_model/new_ep.dart
Normal file
15
lib/models_new/pgc/pgc_info_model/new_ep.dart
Normal file
@@ -0,0 +1,15 @@
|
||||
class NewEp {
|
||||
String? desc;
|
||||
int? id;
|
||||
int? isNew;
|
||||
String? title;
|
||||
|
||||
NewEp({this.desc, this.id, this.isNew, this.title});
|
||||
|
||||
factory NewEp.fromJson(Map<String, dynamic> json) => NewEp(
|
||||
desc: json['desc'] as String?,
|
||||
id: json['id'] as int?,
|
||||
isNew: json['is_new'] as int?,
|
||||
title: json['title'] as String?,
|
||||
);
|
||||
}
|
||||
11
lib/models_new/pgc/pgc_info_model/op.dart
Normal file
11
lib/models_new/pgc/pgc_info_model/op.dart
Normal file
@@ -0,0 +1,11 @@
|
||||
class Op {
|
||||
int? end;
|
||||
int? start;
|
||||
|
||||
Op({this.end, this.start});
|
||||
|
||||
factory Op.fromJson(Map<String, dynamic> json) => Op(
|
||||
end: json['end'] as int?,
|
||||
start: json['start'] as int?,
|
||||
);
|
||||
}
|
||||
26
lib/models_new/pgc/pgc_info_model/pay_type.dart
Normal file
26
lib/models_new/pgc/pgc_info_model/pay_type.dart
Normal file
@@ -0,0 +1,26 @@
|
||||
class PayType {
|
||||
int? allowDiscount;
|
||||
int? allowPack;
|
||||
int? allowTicket;
|
||||
int? allowTimeLimit;
|
||||
int? allowVipDiscount;
|
||||
int? forbidBb;
|
||||
|
||||
PayType({
|
||||
this.allowDiscount,
|
||||
this.allowPack,
|
||||
this.allowTicket,
|
||||
this.allowTimeLimit,
|
||||
this.allowVipDiscount,
|
||||
this.forbidBb,
|
||||
});
|
||||
|
||||
factory PayType.fromJson(Map<String, dynamic> json) => PayType(
|
||||
allowDiscount: json['allow_discount'] as int?,
|
||||
allowPack: json['allow_pack'] as int?,
|
||||
allowTicket: json['allow_ticket'] as int?,
|
||||
allowTimeLimit: json['allow_time_limit'] as int?,
|
||||
allowVipDiscount: json['allow_vip_discount'] as int?,
|
||||
forbidBb: json['forbid_bb'] as int?,
|
||||
);
|
||||
}
|
||||
42
lib/models_new/pgc/pgc_info_model/payment.dart
Normal file
42
lib/models_new/pgc/pgc_info_model/payment.dart
Normal file
@@ -0,0 +1,42 @@
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/pay_type.dart';
|
||||
|
||||
class Payment {
|
||||
int? discount;
|
||||
PayType? payType;
|
||||
String? price;
|
||||
String? promotion;
|
||||
String? tip;
|
||||
int? viewStartTime;
|
||||
int? vipDiscount;
|
||||
String? vipFirstPromotion;
|
||||
String? vipPrice;
|
||||
String? vipPromotion;
|
||||
|
||||
Payment({
|
||||
this.discount,
|
||||
this.payType,
|
||||
this.price,
|
||||
this.promotion,
|
||||
this.tip,
|
||||
this.viewStartTime,
|
||||
this.vipDiscount,
|
||||
this.vipFirstPromotion,
|
||||
this.vipPrice,
|
||||
this.vipPromotion,
|
||||
});
|
||||
|
||||
factory Payment.fromJson(Map<String, dynamic> json) => Payment(
|
||||
discount: json['discount'] as int?,
|
||||
payType: json['pay_type'] == null
|
||||
? null
|
||||
: PayType.fromJson(json['pay_type'] as Map<String, dynamic>),
|
||||
price: json['price'] as String?,
|
||||
promotion: json['promotion'] as String?,
|
||||
tip: json['tip'] as String?,
|
||||
viewStartTime: json['view_start_time'] as int?,
|
||||
vipDiscount: json['vip_discount'] as int?,
|
||||
vipFirstPromotion: json['vip_first_promotion'] as String?,
|
||||
vipPrice: json['vip_price'] as String?,
|
||||
vipPromotion: json['vip_promotion'] as String?,
|
||||
);
|
||||
}
|
||||
9
lib/models_new/pgc/pgc_info_model/play_strategy.dart
Normal file
9
lib/models_new/pgc/pgc_info_model/play_strategy.dart
Normal file
@@ -0,0 +1,9 @@
|
||||
class PlayStrategy {
|
||||
List? strategies;
|
||||
|
||||
PlayStrategy({this.strategies});
|
||||
|
||||
factory PlayStrategy.fromJson(Map<String, dynamic> json) => PlayStrategy(
|
||||
strategies: json['strategies'],
|
||||
);
|
||||
}
|
||||
11
lib/models_new/pgc/pgc_info_model/positive.dart
Normal file
11
lib/models_new/pgc/pgc_info_model/positive.dart
Normal file
@@ -0,0 +1,11 @@
|
||||
class Positive {
|
||||
int? id;
|
||||
String? title;
|
||||
|
||||
Positive({this.id, this.title});
|
||||
|
||||
factory Positive.fromJson(Map<String, dynamic> json) => Positive(
|
||||
id: json['id'] as int?,
|
||||
title: json['title'] as String?,
|
||||
);
|
||||
}
|
||||
26
lib/models_new/pgc/pgc_info_model/publish.dart
Normal file
26
lib/models_new/pgc/pgc_info_model/publish.dart
Normal file
@@ -0,0 +1,26 @@
|
||||
class Publish {
|
||||
int? isFinish;
|
||||
int? isStarted;
|
||||
String? pubTime;
|
||||
String? pubTimeShow;
|
||||
int? unknowPubDate;
|
||||
int? weekday;
|
||||
|
||||
Publish({
|
||||
this.isFinish,
|
||||
this.isStarted,
|
||||
this.pubTime,
|
||||
this.pubTimeShow,
|
||||
this.unknowPubDate,
|
||||
this.weekday,
|
||||
});
|
||||
|
||||
factory Publish.fromJson(Map<String, dynamic> json) => Publish(
|
||||
isFinish: json['is_finish'] as int?,
|
||||
isStarted: json['is_started'] as int?,
|
||||
pubTime: json['pub_time'] as String?,
|
||||
pubTimeShow: json['pub_time_show'] as String?,
|
||||
unknowPubDate: json['unknow_pub_date'] as int?,
|
||||
weekday: json['weekday'] as int?,
|
||||
);
|
||||
}
|
||||
11
lib/models_new/pgc/pgc_info_model/rating.dart
Normal file
11
lib/models_new/pgc/pgc_info_model/rating.dart
Normal file
@@ -0,0 +1,11 @@
|
||||
class Rating {
|
||||
int? count;
|
||||
double? score;
|
||||
|
||||
Rating({this.count, this.score});
|
||||
|
||||
factory Rating.fromJson(Map<String, dynamic> json) => Rating(
|
||||
count: json['count'] as int?,
|
||||
score: (json['score'] as num?)?.toDouble(),
|
||||
);
|
||||
}
|
||||
205
lib/models_new/pgc/pgc_info_model/result.dart
Normal file
205
lib/models_new/pgc/pgc_info_model/result.dart
Normal file
@@ -0,0 +1,205 @@
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/activity.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/area.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/episode.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/freya.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/icon_font.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/new_ep.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/payment.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/play_strategy.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/positive.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/publish.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/rating.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/rights.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/season.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/section.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/series.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/show.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/stat.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/up_info.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/user_status.dart';
|
||||
|
||||
class PgcInfoModel {
|
||||
Activity? activity;
|
||||
String? actors;
|
||||
String? alias;
|
||||
List<Area>? areas;
|
||||
String? bkgCover;
|
||||
String? cover;
|
||||
bool? deliveryFragmentVideo;
|
||||
bool? enableVt;
|
||||
List<EpisodeItem>? episodes;
|
||||
String? evaluate;
|
||||
Freya? freya;
|
||||
int? hideEpVvVtDm;
|
||||
IconFont? iconFont;
|
||||
String? jpTitle;
|
||||
String? link;
|
||||
int? mediaId;
|
||||
int? mode;
|
||||
NewEp? newEp;
|
||||
Payment? payment;
|
||||
PlayStrategy? playStrategy;
|
||||
Positive? positive;
|
||||
Publish? publish;
|
||||
Rating? rating;
|
||||
String? record;
|
||||
Rights? rights;
|
||||
int? seasonId;
|
||||
String? seasonTitle;
|
||||
List<Season>? seasons;
|
||||
List<Section>? section;
|
||||
Series? series;
|
||||
String? shareCopy;
|
||||
String? shareSubTitle;
|
||||
String? shareUrl;
|
||||
Show? show;
|
||||
int? showSeasonType;
|
||||
String? squareCover;
|
||||
String? staff;
|
||||
Stat? stat;
|
||||
int? status;
|
||||
List? styles;
|
||||
String? subtitle;
|
||||
String? title;
|
||||
int? total;
|
||||
int? type;
|
||||
UpInfo? upInfo;
|
||||
UserStatus? userStatus;
|
||||
|
||||
PgcInfoModel({
|
||||
this.activity,
|
||||
this.actors,
|
||||
this.alias,
|
||||
this.areas,
|
||||
this.bkgCover,
|
||||
this.cover,
|
||||
this.deliveryFragmentVideo,
|
||||
this.enableVt,
|
||||
this.episodes,
|
||||
this.evaluate,
|
||||
this.freya,
|
||||
this.hideEpVvVtDm,
|
||||
this.iconFont,
|
||||
this.jpTitle,
|
||||
this.link,
|
||||
this.mediaId,
|
||||
this.mode,
|
||||
this.newEp,
|
||||
this.payment,
|
||||
this.playStrategy,
|
||||
this.positive,
|
||||
this.publish,
|
||||
this.rating,
|
||||
this.record,
|
||||
this.rights,
|
||||
this.seasonId,
|
||||
this.seasonTitle,
|
||||
this.seasons,
|
||||
this.section,
|
||||
this.series,
|
||||
this.shareCopy,
|
||||
this.shareSubTitle,
|
||||
this.shareUrl,
|
||||
this.show,
|
||||
this.showSeasonType,
|
||||
this.squareCover,
|
||||
this.staff,
|
||||
this.stat,
|
||||
this.status,
|
||||
this.styles,
|
||||
this.subtitle,
|
||||
this.title,
|
||||
this.total,
|
||||
this.type,
|
||||
this.upInfo,
|
||||
this.userStatus,
|
||||
});
|
||||
|
||||
factory PgcInfoModel.fromJson(Map<String, dynamic> json) => PgcInfoModel(
|
||||
activity: json['activity'] == null
|
||||
? null
|
||||
: Activity.fromJson(json['activity'] as Map<String, dynamic>),
|
||||
actors: json['actors'] as String?,
|
||||
alias: json['alias'] as String?,
|
||||
areas: (json['areas'] as List<dynamic>?)
|
||||
?.map((e) => Area.fromJson(e as Map<String, dynamic>))
|
||||
.toList(),
|
||||
bkgCover: json['bkg_cover'] as String?,
|
||||
cover: json['cover'] as String?,
|
||||
deliveryFragmentVideo: json['delivery_fragment_video'] as bool?,
|
||||
enableVt: json['enable_vt'] as bool?,
|
||||
episodes: (json['episodes'] as List<dynamic>?)
|
||||
?.map((e) => EpisodeItem.fromJson(e as Map<String, dynamic>))
|
||||
.toList(),
|
||||
evaluate: json['evaluate'] as String?,
|
||||
freya: json['freya'] == null
|
||||
? null
|
||||
: Freya.fromJson(json['freya'] as Map<String, dynamic>),
|
||||
hideEpVvVtDm: json['hide_ep_vv_vt_dm'] as int?,
|
||||
iconFont: json['icon_font'] == null
|
||||
? null
|
||||
: IconFont.fromJson(json['icon_font'] as Map<String, dynamic>),
|
||||
jpTitle: json['jp_title'] as String?,
|
||||
link: json['link'] as String?,
|
||||
mediaId: json['media_id'] as int?,
|
||||
mode: json['mode'] as int?,
|
||||
newEp: json['new_ep'] == null
|
||||
? null
|
||||
: NewEp.fromJson(json['new_ep'] as Map<String, dynamic>),
|
||||
payment: json['payment'] == null
|
||||
? null
|
||||
: Payment.fromJson(json['payment'] as Map<String, dynamic>),
|
||||
playStrategy: json['play_strategy'] == null
|
||||
? null
|
||||
: PlayStrategy.fromJson(
|
||||
json['play_strategy'] as Map<String, dynamic>),
|
||||
positive: json['positive'] == null
|
||||
? null
|
||||
: Positive.fromJson(json['positive'] as Map<String, dynamic>),
|
||||
publish: json['publish'] == null
|
||||
? null
|
||||
: Publish.fromJson(json['publish'] as Map<String, dynamic>),
|
||||
rating: json['rating'] == null
|
||||
? null
|
||||
: Rating.fromJson(json['rating'] as Map<String, dynamic>),
|
||||
record: json['record'] as String?,
|
||||
rights: json['rights'] == null
|
||||
? null
|
||||
: Rights.fromJson(json['rights'] as Map<String, dynamic>),
|
||||
seasonId: json['season_id'] as int?,
|
||||
seasonTitle: json['season_title'] as String?,
|
||||
seasons: (json['seasons'] as List<dynamic>?)
|
||||
?.map((e) => Season.fromJson(e as Map<String, dynamic>))
|
||||
.toList(),
|
||||
section: (json['section'] as List<dynamic>?)
|
||||
?.map((e) => Section.fromJson(e as Map<String, dynamic>))
|
||||
.toList(),
|
||||
series: json['series'] == null
|
||||
? null
|
||||
: Series.fromJson(json['series'] as Map<String, dynamic>),
|
||||
shareCopy: json['share_copy'] as String?,
|
||||
shareSubTitle: json['share_sub_title'] as String?,
|
||||
shareUrl: json['share_url'] as String?,
|
||||
show: json['show'] == null
|
||||
? null
|
||||
: Show.fromJson(json['show'] as Map<String, dynamic>),
|
||||
showSeasonType: json['show_season_type'] as int?,
|
||||
squareCover: json['square_cover'] as String?,
|
||||
staff: json['staff'] as String?,
|
||||
stat: json['stat'] == null
|
||||
? null
|
||||
: Stat.fromJson(json['stat'] as Map<String, dynamic>),
|
||||
status: json['status'] as int?,
|
||||
styles: json['styles'],
|
||||
subtitle: json['subtitle'] as String?,
|
||||
title: json['title'] as String?,
|
||||
total: json['total'] as int?,
|
||||
type: json['type'] as int?,
|
||||
upInfo: json['up_info'] == null
|
||||
? null
|
||||
: UpInfo.fromJson(json['up_info'] as Map<String, dynamic>),
|
||||
userStatus: json['user_status'] == null
|
||||
? null
|
||||
: UserStatus.fromJson(json['user_status'] as Map<String, dynamic>),
|
||||
);
|
||||
}
|
||||
13
lib/models_new/pgc/pgc_info_model/rights.dart
Normal file
13
lib/models_new/pgc/pgc_info_model/rights.dart
Normal file
@@ -0,0 +1,13 @@
|
||||
class Rights {
|
||||
int? allowDm;
|
||||
int? allowDownload;
|
||||
int? areaLimit;
|
||||
|
||||
Rights({this.allowDm, this.allowDownload, this.areaLimit});
|
||||
|
||||
factory Rights.fromJson(Map<String, dynamic> json) => Rights(
|
||||
allowDm: json['allow_dm'] as int?,
|
||||
allowDownload: json['allow_download'] as int?,
|
||||
areaLimit: json['area_limit'] as int?,
|
||||
);
|
||||
}
|
||||
63
lib/models_new/pgc/pgc_info_model/season.dart
Normal file
63
lib/models_new/pgc/pgc_info_model/season.dart
Normal file
@@ -0,0 +1,63 @@
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/badge_info.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/icon_font.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/new_ep.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/stat.dart';
|
||||
|
||||
class Season {
|
||||
String? badge;
|
||||
BadgeInfo? badgeInfo;
|
||||
int? badgeType;
|
||||
String? cover;
|
||||
bool? enableVt;
|
||||
String? horizontalCover1610;
|
||||
String? horizontalCover169;
|
||||
IconFont? iconFont;
|
||||
int? mediaId;
|
||||
NewEp? newEp;
|
||||
int? seasonId;
|
||||
String? seasonTitle;
|
||||
int? seasonType;
|
||||
Stat? stat;
|
||||
|
||||
Season({
|
||||
this.badge,
|
||||
this.badgeInfo,
|
||||
this.badgeType,
|
||||
this.cover,
|
||||
this.enableVt,
|
||||
this.horizontalCover1610,
|
||||
this.horizontalCover169,
|
||||
this.iconFont,
|
||||
this.mediaId,
|
||||
this.newEp,
|
||||
this.seasonId,
|
||||
this.seasonTitle,
|
||||
this.seasonType,
|
||||
this.stat,
|
||||
});
|
||||
|
||||
factory Season.fromJson(Map<String, dynamic> json) => Season(
|
||||
badge: json['badge'] as String?,
|
||||
badgeInfo: json['badge_info'] == null
|
||||
? null
|
||||
: BadgeInfo.fromJson(json['badge_info'] as Map<String, dynamic>),
|
||||
badgeType: json['badge_type'] as int?,
|
||||
cover: json['cover'] as String?,
|
||||
enableVt: json['enable_vt'] as bool?,
|
||||
horizontalCover1610: json['horizontal_cover_1610'] as String?,
|
||||
horizontalCover169: json['horizontal_cover_169'] as String?,
|
||||
iconFont: json['icon_font'] == null
|
||||
? null
|
||||
: IconFont.fromJson(json['icon_font'] as Map<String, dynamic>),
|
||||
mediaId: json['media_id'] as int?,
|
||||
newEp: json['new_ep'] == null
|
||||
? null
|
||||
: NewEp.fromJson(json['new_ep'] as Map<String, dynamic>),
|
||||
seasonId: json['season_id'] as int?,
|
||||
seasonTitle: json['season_title'] as String?,
|
||||
seasonType: json['season_type'] as int?,
|
||||
stat: json['stat'] == null
|
||||
? null
|
||||
: Stat.fromJson(json['stat'] as Map<String, dynamic>),
|
||||
);
|
||||
}
|
||||
36
lib/models_new/pgc/pgc_info_model/section.dart
Normal file
36
lib/models_new/pgc/pgc_info_model/section.dart
Normal file
@@ -0,0 +1,36 @@
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/episode.dart';
|
||||
|
||||
class Section {
|
||||
int? attr;
|
||||
int? episodeId;
|
||||
List<dynamic>? episodeIds;
|
||||
List<EpisodeItem>? episodes;
|
||||
int? id;
|
||||
String? title;
|
||||
int? type;
|
||||
int? type2;
|
||||
|
||||
Section({
|
||||
this.attr,
|
||||
this.episodeId,
|
||||
this.episodeIds,
|
||||
this.episodes,
|
||||
this.id,
|
||||
this.title,
|
||||
this.type,
|
||||
this.type2,
|
||||
});
|
||||
|
||||
factory Section.fromJson(Map<String, dynamic> json) => Section(
|
||||
attr: json['attr'] as int?,
|
||||
episodeId: json['episode_id'] as int?,
|
||||
episodeIds: json['episode_ids'] as List<dynamic>?,
|
||||
episodes: (json['episodes'] as List<dynamic>?)
|
||||
?.map((e) => EpisodeItem.fromJson(e as Map<String, dynamic>))
|
||||
.toList(),
|
||||
id: json['id'] as int?,
|
||||
title: json['title'] as String?,
|
||||
type: json['type'] as int?,
|
||||
type2: json['type2'] as int?,
|
||||
);
|
||||
}
|
||||
13
lib/models_new/pgc/pgc_info_model/series.dart
Normal file
13
lib/models_new/pgc/pgc_info_model/series.dart
Normal file
@@ -0,0 +1,13 @@
|
||||
class Series {
|
||||
int? displayType;
|
||||
int? seriesId;
|
||||
String? seriesTitle;
|
||||
|
||||
Series({this.displayType, this.seriesId, this.seriesTitle});
|
||||
|
||||
factory Series.fromJson(Map<String, dynamic> json) => Series(
|
||||
displayType: json['display_type'] as int?,
|
||||
seriesId: json['series_id'] as int?,
|
||||
seriesTitle: json['series_title'] as String?,
|
||||
);
|
||||
}
|
||||
9
lib/models_new/pgc/pgc_info_model/show.dart
Normal file
9
lib/models_new/pgc/pgc_info_model/show.dart
Normal file
@@ -0,0 +1,9 @@
|
||||
class Show {
|
||||
int? wideScreen;
|
||||
|
||||
Show({this.wideScreen});
|
||||
|
||||
factory Show.fromJson(Map<String, dynamic> json) => Show(
|
||||
wideScreen: json['wide_screen'] as int?,
|
||||
);
|
||||
}
|
||||
18
lib/models_new/pgc/pgc_info_model/skip.dart
Normal file
18
lib/models_new/pgc/pgc_info_model/skip.dart
Normal file
@@ -0,0 +1,18 @@
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/ed.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/op.dart';
|
||||
|
||||
class Skip {
|
||||
Ed? ed;
|
||||
Op? op;
|
||||
|
||||
Skip({this.ed, this.op});
|
||||
|
||||
factory Skip.fromJson(Map<String, dynamic> json) => Skip(
|
||||
ed: json['ed'] == null
|
||||
? null
|
||||
: Ed.fromJson(json['ed'] as Map<String, dynamic>),
|
||||
op: json['op'] == null
|
||||
? null
|
||||
: Op.fromJson(json['op'] as Map<String, dynamic>),
|
||||
);
|
||||
}
|
||||
38
lib/models_new/pgc/pgc_info_model/stat.dart
Normal file
38
lib/models_new/pgc/pgc_info_model/stat.dart
Normal file
@@ -0,0 +1,38 @@
|
||||
class Stat {
|
||||
int? coins;
|
||||
int? danmakus;
|
||||
int? favorite;
|
||||
int? favorites;
|
||||
String? followText;
|
||||
int? likes;
|
||||
int? reply;
|
||||
int? share;
|
||||
int? views;
|
||||
int? vt;
|
||||
|
||||
Stat({
|
||||
this.coins,
|
||||
this.danmakus,
|
||||
this.favorite,
|
||||
this.favorites,
|
||||
this.followText,
|
||||
this.likes,
|
||||
this.reply,
|
||||
this.share,
|
||||
this.views,
|
||||
this.vt,
|
||||
});
|
||||
|
||||
factory Stat.fromJson(Map<String, dynamic> json) => Stat(
|
||||
coins: json["coins"],
|
||||
danmakus: json["danmakus"],
|
||||
favorite: json["favorite"],
|
||||
favorites: json["favorites"],
|
||||
followText: json["follow_text"],
|
||||
likes: json["likes"],
|
||||
reply: json["reply"],
|
||||
share: json["share"],
|
||||
views: json["views"],
|
||||
vt: json["vt"],
|
||||
);
|
||||
}
|
||||
24
lib/models_new/pgc/pgc_info_model/stat_for_unity.dart
Normal file
24
lib/models_new/pgc/pgc_info_model/stat_for_unity.dart
Normal file
@@ -0,0 +1,24 @@
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/danmaku.dart';
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/vt.dart';
|
||||
|
||||
class StatForUnity {
|
||||
int? coin;
|
||||
Danmaku? danmaku;
|
||||
int? likes;
|
||||
int? reply;
|
||||
Vt? vt;
|
||||
|
||||
StatForUnity({this.coin, this.danmaku, this.likes, this.reply, this.vt});
|
||||
|
||||
factory StatForUnity.fromJson(Map<String, dynamic> json) => StatForUnity(
|
||||
coin: json['coin'] as int?,
|
||||
danmaku: json['danmaku'] == null
|
||||
? null
|
||||
: Danmaku.fromJson(json['danmaku'] as Map<String, dynamic>),
|
||||
likes: json['likes'] as int?,
|
||||
reply: json['reply'] as int?,
|
||||
vt: json['vt'] == null
|
||||
? null
|
||||
: Vt.fromJson(json['vt'] as Map<String, dynamic>),
|
||||
);
|
||||
}
|
||||
41
lib/models_new/pgc/pgc_info_model/up_info.dart
Normal file
41
lib/models_new/pgc/pgc_info_model/up_info.dart
Normal file
@@ -0,0 +1,41 @@
|
||||
class UpInfo {
|
||||
String? avatar;
|
||||
String? avatarSubscriptUrl;
|
||||
int? follower;
|
||||
int? isFollow;
|
||||
int? mid;
|
||||
String? nicknameColor;
|
||||
int? themeType;
|
||||
String? uname;
|
||||
int? verifyType;
|
||||
int? vipStatus;
|
||||
int? vipType;
|
||||
|
||||
UpInfo({
|
||||
this.avatar,
|
||||
this.avatarSubscriptUrl,
|
||||
this.follower,
|
||||
this.isFollow,
|
||||
this.mid,
|
||||
this.nicknameColor,
|
||||
this.themeType,
|
||||
this.uname,
|
||||
this.verifyType,
|
||||
this.vipStatus,
|
||||
this.vipType,
|
||||
});
|
||||
|
||||
factory UpInfo.fromJson(Map<String, dynamic> json) => UpInfo(
|
||||
avatar: json['avatar'] as String?,
|
||||
avatarSubscriptUrl: json['avatar_subscript_url'] as String?,
|
||||
follower: json['follower'] as int?,
|
||||
isFollow: json['is_follow'] as int?,
|
||||
mid: json['mid'] as int?,
|
||||
nicknameColor: json['nickname_color'] as String?,
|
||||
themeType: json['theme_type'] as int?,
|
||||
uname: json['uname'] as String?,
|
||||
verifyType: json['verify_type'] as int?,
|
||||
vipStatus: json['vip_status'] as int?,
|
||||
vipType: json['vip_type'] as int?,
|
||||
);
|
||||
}
|
||||
15
lib/models_new/pgc/pgc_info_model/user_progress.dart
Normal file
15
lib/models_new/pgc/pgc_info_model/user_progress.dart
Normal file
@@ -0,0 +1,15 @@
|
||||
class UserProgress {
|
||||
UserProgress({
|
||||
this.lastEpId,
|
||||
this.lastEpIndex,
|
||||
this.lastTime,
|
||||
});
|
||||
int? lastEpId;
|
||||
String? lastEpIndex;
|
||||
int? lastTime;
|
||||
UserProgress.fromJson(Map<String, dynamic> json) {
|
||||
lastEpId = json['last_ep_id'];
|
||||
lastEpIndex = json['last_ep_index'];
|
||||
lastTime = json['last_time'];
|
||||
}
|
||||
}
|
||||
39
lib/models_new/pgc/pgc_info_model/user_status.dart
Normal file
39
lib/models_new/pgc/pgc_info_model/user_status.dart
Normal file
@@ -0,0 +1,39 @@
|
||||
import 'package:PiliPlus/models_new/pgc/pgc_info_model/user_progress.dart';
|
||||
|
||||
class UserStatus {
|
||||
int? areaLimit;
|
||||
int? banAreaShow;
|
||||
int? follow;
|
||||
int? followStatus;
|
||||
int? login;
|
||||
int? pay;
|
||||
int? payPackPaid;
|
||||
int? sponsor;
|
||||
UserProgress? progress;
|
||||
|
||||
UserStatus({
|
||||
this.areaLimit,
|
||||
this.banAreaShow,
|
||||
this.follow,
|
||||
this.followStatus,
|
||||
this.login,
|
||||
this.pay,
|
||||
this.payPackPaid,
|
||||
this.sponsor,
|
||||
this.progress,
|
||||
});
|
||||
|
||||
factory UserStatus.fromJson(Map<String, dynamic> json) => UserStatus(
|
||||
areaLimit: json['area_limit'] as int?,
|
||||
banAreaShow: json['ban_area_show'] as int?,
|
||||
follow: json['follow'] as int?,
|
||||
followStatus: json['follow_status'] as int?,
|
||||
login: json['login'] as int?,
|
||||
pay: json['pay'] as int?,
|
||||
payPackPaid: json['pay_pack_paid'] as int?,
|
||||
sponsor: json['sponsor'] as int?,
|
||||
progress: json['progress'] == null
|
||||
? null
|
||||
: UserProgress.fromJson(json['progress']),
|
||||
);
|
||||
}
|
||||
15
lib/models_new/pgc/pgc_info_model/vt.dart
Normal file
15
lib/models_new/pgc/pgc_info_model/vt.dart
Normal file
@@ -0,0 +1,15 @@
|
||||
class Vt {
|
||||
String? icon;
|
||||
String? pureText;
|
||||
String? text;
|
||||
int? value;
|
||||
|
||||
Vt({this.icon, this.pureText, this.text, this.value});
|
||||
|
||||
factory Vt.fromJson(Map<String, dynamic> json) => Vt(
|
||||
icon: json['icon'] as String?,
|
||||
pureText: json['pure_text'] as String?,
|
||||
text: json['text'] as String?,
|
||||
value: json['value'] as int?,
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user