opt models

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-06-04 15:20:35 +08:00
parent f50b1d2beb
commit b960359a39
858 changed files with 11000 additions and 12588 deletions

View 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?,
);
}

View 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?,
);
}

View 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?,
);
}

View 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?,
);
}

View 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?,
);
}

View 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?,
);
}

View 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?,
);
}

View 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?,
);
}

View 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?,
);
}

View 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?,
);
}

View 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?,
);
}

View 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?,
);
}

View 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?,
);
}

View File

@@ -0,0 +1,9 @@
class PlayStrategy {
List? strategies;
PlayStrategy({this.strategies});
factory PlayStrategy.fromJson(Map<String, dynamic> json) => PlayStrategy(
strategies: json['strategies'],
);
}

View 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?,
);
}

View 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?,
);
}

View 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(),
);
}

View 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>),
);
}

View 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?,
);
}

View 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>),
);
}

View 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?,
);
}

View 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?,
);
}

View 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?,
);
}

View 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>),
);
}

View 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"],
);
}

View 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>),
);
}

View 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?,
);
}

View 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'];
}
}

View 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']),
);
}

View 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?,
);
}