import 'package:get/get.dart'; import 'package:json_annotation/json_annotation.dart'; part 'talks.g.dart'; @JsonSerializable() class TalkBean { @JsonKey(name: 'id') late final String id; @JsonKey(name: 'taskId') String? taskId; @JsonKey(name: 'ssid') String? ssid; @JsonKey(name: 'audioUrl') String? audioUrl; @JsonKey(name: 'duration') double? duration; @JsonKey(name: 'characters') int? characters; @JsonKey(name: 'status', fromJson: _intFromJson, includeToJson: false) Rxn status; @JsonKey(name: 'title', fromJson: _stringFromJson, includeToJson: false) Rxn title; @JsonKey(name: 'summary', fromJson: _stringFromJson, includeToJson: false) Rxn summary; @JsonKey(name: 'createTime') String? createTime; @JsonKey(name: 'example') bool? isExample; @JsonKey(name: 'oversizeFile') bool? oversizeFile; @JsonKey(name: 'uploadType') int? uploadType; TalkBean({ required this.id, this.taskId, this.ssid, this.audioUrl, this.duration, this.characters, required this.status, required this.title, required this.summary, this.createTime, this.isExample, this.oversizeFile, this.uploadType, }); factory TalkBean.fromJson(Map json) => _$TalkBeanFromJson(json); static _stringFromJson(String? txt) => Rxn(txt); static _intFromJson(int? txt) => Rxn(txt); void updateBean(TalkBean talkBean) { taskId = talkBean.taskId; ssid = talkBean.ssid; audioUrl = talkBean.audioUrl; duration = talkBean.duration; characters = talkBean.characters; status.value = talkBean.status.value; title.value = talkBean.title.value; summary.value = talkBean.summary.value; createTime = talkBean.createTime; isExample = talkBean.isExample; oversizeFile = talkBean.oversizeFile; uploadType = talkBean.uploadType; } } class TalkStatus { TalkStatus._(); //(0等待生成 1生成中,都处于生成中) 2成功 3失败 4未分析 static int analysing = 0; static int waitAnalysis = 1; static int analysisSuccess = 2; static int analysisFail = 3; static int notAnalysis = 4; } class TalkUploadType { TalkUploadType._(); static int record = 0; static int localUpload = 1; }