|
@@ -0,0 +1,1045 @@
|
|
|
+import 'liveConsultation.m.dart';
|
|
|
+
|
|
|
+import 'package:fis_jsonrpc/utils.dart';
|
|
|
+
|
|
|
+class GetUserInfoByOpenIdResult {
|
|
|
+ String? accountName;
|
|
|
+ String? hospital;
|
|
|
+
|
|
|
+ GetUserInfoByOpenIdResult({
|
|
|
+ this.accountName,
|
|
|
+ this.hospital,
|
|
|
+ });
|
|
|
+
|
|
|
+ factory GetUserInfoByOpenIdResult.fromJson(Map<String, dynamic> map) {
|
|
|
+ return GetUserInfoByOpenIdResult(
|
|
|
+ accountName: map['AccountName'],
|
|
|
+ hospital: map['Hospital'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = Map<String, dynamic>();
|
|
|
+ if(accountName != null)
|
|
|
+ map['AccountName'] = accountName;
|
|
|
+ if(hospital != null)
|
|
|
+ map['Hospital'] = hospital;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class AppletAPIBaseRequest {
|
|
|
+ String? openId;
|
|
|
+
|
|
|
+ AppletAPIBaseRequest({
|
|
|
+ this.openId,
|
|
|
+ });
|
|
|
+
|
|
|
+ factory AppletAPIBaseRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return AppletAPIBaseRequest(
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = Map<String, dynamic>();
|
|
|
+ if(openId != null)
|
|
|
+ map['OpenId'] = openId;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class GetUserInfoByOpenIdRequest extends AppletAPIBaseRequest{
|
|
|
+
|
|
|
+ GetUserInfoByOpenIdRequest({
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory GetUserInfoByOpenIdRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return GetUserInfoByOpenIdRequest(
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class BindVcloudAccountAndOpenIdRequest {
|
|
|
+ String? account;
|
|
|
+ String? password;
|
|
|
+ String? openId;
|
|
|
+
|
|
|
+ BindVcloudAccountAndOpenIdRequest({
|
|
|
+ this.account,
|
|
|
+ this.password,
|
|
|
+ this.openId,
|
|
|
+ });
|
|
|
+
|
|
|
+ factory BindVcloudAccountAndOpenIdRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return BindVcloudAccountAndOpenIdRequest(
|
|
|
+ account: map['Account'],
|
|
|
+ password: map['Password'],
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = Map<String, dynamic>();
|
|
|
+ if(account != null)
|
|
|
+ map['Account'] = account;
|
|
|
+ if(password != null)
|
|
|
+ map['Password'] = password;
|
|
|
+ if(openId != null)
|
|
|
+ map['OpenId'] = openId;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+enum RemedicalAIDiagnosisStatusEnum {
|
|
|
+ Null,
|
|
|
+ NoObviousLesion,
|
|
|
+ Benign,
|
|
|
+ Malignant,
|
|
|
+ BenignAndMalignant,
|
|
|
+}
|
|
|
+
|
|
|
+class RemedicalRecordInfo {
|
|
|
+ String? remedicalRecordId;
|
|
|
+ String? terminalDesc;
|
|
|
+ String? organizationDesc;
|
|
|
+ DateTime? createTime;
|
|
|
+ String? patientId;
|
|
|
+ String? patientName;
|
|
|
+ bool reportUploadStatus;
|
|
|
+ RemedicalAIDiagnosisStatusEnum aIDiagnosisStatus;
|
|
|
+
|
|
|
+ RemedicalRecordInfo({
|
|
|
+ this.remedicalRecordId,
|
|
|
+ this.terminalDesc,
|
|
|
+ this.organizationDesc,
|
|
|
+ this.createTime,
|
|
|
+ this.patientId,
|
|
|
+ this.patientName,
|
|
|
+ this.reportUploadStatus = false,
|
|
|
+ this.aIDiagnosisStatus = RemedicalAIDiagnosisStatusEnum.Null,
|
|
|
+ });
|
|
|
+
|
|
|
+ factory RemedicalRecordInfo.fromJson(Map<String, dynamic> map) {
|
|
|
+ return RemedicalRecordInfo(
|
|
|
+ remedicalRecordId: map['RemedicalRecordId'],
|
|
|
+ terminalDesc: map['TerminalDesc'],
|
|
|
+ organizationDesc: map['OrganizationDesc'],
|
|
|
+ createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
|
|
|
+ patientId: map['PatientId'],
|
|
|
+ patientName: map['PatientName'],
|
|
|
+ reportUploadStatus: map['ReportUploadStatus'],
|
|
|
+ aIDiagnosisStatus: RemedicalAIDiagnosisStatusEnum.values.firstWhere((e) => e.index == map['AIDiagnosisStatus']),
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = Map<String, dynamic>();
|
|
|
+ if(remedicalRecordId != null)
|
|
|
+ map['RemedicalRecordId'] = remedicalRecordId;
|
|
|
+ if(terminalDesc != null)
|
|
|
+ map['TerminalDesc'] = terminalDesc;
|
|
|
+ if(organizationDesc != null)
|
|
|
+ map['OrganizationDesc'] = organizationDesc;
|
|
|
+ if(createTime != null)
|
|
|
+ map['CreateTime'] = JsonRpcUtils.dateFormat(createTime!);
|
|
|
+ if(patientId != null)
|
|
|
+ map['PatientId'] = patientId;
|
|
|
+ if(patientName != null)
|
|
|
+ map['PatientName'] = patientName;
|
|
|
+ map['ReportUploadStatus'] = reportUploadStatus;
|
|
|
+ map['AIDiagnosisStatus'] = aIDiagnosisStatus.index;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class AppletAPIPageRequest extends AppletAPIBaseRequest{
|
|
|
+ int pageIndex;
|
|
|
+ int pageSize;
|
|
|
+
|
|
|
+ AppletAPIPageRequest({
|
|
|
+ this.pageIndex = 0,
|
|
|
+ this.pageSize = 0,
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory AppletAPIPageRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return AppletAPIPageRequest(
|
|
|
+ pageIndex: map['PageIndex'],
|
|
|
+ pageSize: map['PageSize'],
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ map['PageIndex'] = pageIndex;
|
|
|
+ map['PageSize'] = pageSize;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class GetRemedicalRecordListRequest extends AppletAPIPageRequest{
|
|
|
+ String? keyWord;
|
|
|
+ DateTime? startTime;
|
|
|
+ DateTime? endTime;
|
|
|
+
|
|
|
+ GetRemedicalRecordListRequest({
|
|
|
+ this.keyWord,
|
|
|
+ this.startTime,
|
|
|
+ this.endTime,
|
|
|
+ int pageIndex = 0,
|
|
|
+ int pageSize = 0,
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ pageIndex: pageIndex,
|
|
|
+ pageSize: pageSize,
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory GetRemedicalRecordListRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return GetRemedicalRecordListRequest(
|
|
|
+ keyWord: map['KeyWord'],
|
|
|
+ startTime: map['StartTime'] != null ? DateTime.parse(map['StartTime']) : null,
|
|
|
+ endTime: map['EndTime'] != null ? DateTime.parse(map['EndTime']) : null,
|
|
|
+ pageIndex: map['PageIndex'],
|
|
|
+ pageSize: map['PageSize'],
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ if(keyWord != null)
|
|
|
+ map['KeyWord'] = keyWord;
|
|
|
+ if(startTime != null)
|
|
|
+ map['StartTime'] = JsonRpcUtils.dateFormat(startTime!);
|
|
|
+ if(endTime != null)
|
|
|
+ map['EndTime'] = JsonRpcUtils.dateFormat(endTime!);
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class GetRemedicalRecordDetailRequest extends AppletAPIBaseRequest{
|
|
|
+ String? remedicalRecordId;
|
|
|
+
|
|
|
+ GetRemedicalRecordDetailRequest({
|
|
|
+ this.remedicalRecordId,
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory GetRemedicalRecordDetailRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return GetRemedicalRecordDetailRequest(
|
|
|
+ remedicalRecordId: map['RemedicalRecordId'],
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ if(remedicalRecordId != null)
|
|
|
+ map['RemedicalRecordId'] = remedicalRecordId;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class ImageFile {
|
|
|
+ String? id;
|
|
|
+ String? fileUrl;
|
|
|
+ DateTime? createTime;
|
|
|
+
|
|
|
+ ImageFile({
|
|
|
+ this.id,
|
|
|
+ this.fileUrl,
|
|
|
+ this.createTime,
|
|
|
+ });
|
|
|
+
|
|
|
+ factory ImageFile.fromJson(Map<String, dynamic> map) {
|
|
|
+ return ImageFile(
|
|
|
+ id: map['Id'],
|
|
|
+ fileUrl: map['FileUrl'],
|
|
|
+ createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = Map<String, dynamic>();
|
|
|
+ if(id != null)
|
|
|
+ map['Id'] = id;
|
|
|
+ if(fileUrl != null)
|
|
|
+ map['FileUrl'] = fileUrl;
|
|
|
+ if(createTime != null)
|
|
|
+ map['CreateTime'] = JsonRpcUtils.dateFormat(createTime!);
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class IReadOnlyList<T> {
|
|
|
+ ImageFile? item;
|
|
|
+
|
|
|
+ IReadOnlyList({
|
|
|
+ this.item,
|
|
|
+ });
|
|
|
+
|
|
|
+ factory IReadOnlyList.fromJson(Map<String, dynamic> map) {
|
|
|
+ return IReadOnlyList(
|
|
|
+ item: map['Item'] != null ? ImageFile.fromJson(map['Item']) : null,
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = Map<String, dynamic>();
|
|
|
+ if(item != null)
|
|
|
+ map['Item'] = item;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class ImageData {
|
|
|
+ String? id;
|
|
|
+ RemedicalFileDataTypeEnum dataType;
|
|
|
+ String? application;
|
|
|
+ String? previewFileToken;
|
|
|
+ DateTime? createTime;
|
|
|
+ IReadOnlyList<ImageFile>? files;
|
|
|
+
|
|
|
+ ImageData({
|
|
|
+ this.id,
|
|
|
+ this.dataType = RemedicalFileDataTypeEnum.VinnoVidSingle,
|
|
|
+ this.application,
|
|
|
+ this.previewFileToken,
|
|
|
+ this.createTime,
|
|
|
+ this.files,
|
|
|
+ });
|
|
|
+
|
|
|
+ factory ImageData.fromJson(Map<String, dynamic> map) {
|
|
|
+ return ImageData(
|
|
|
+ id: map['Id'],
|
|
|
+ dataType: RemedicalFileDataTypeEnum.values.firstWhere((e) => e.index == map['DataType']),
|
|
|
+ application: map['Application'],
|
|
|
+ previewFileToken: map['PreviewFileToken'],
|
|
|
+ createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
|
|
|
+ files: map['Files'] != null ? (map['Files'] as List).map((e)=>ImageFile.fromJson(e as Map<String,dynamic>)).toList() : null,
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = Map<String, dynamic>();
|
|
|
+ if(id != null)
|
|
|
+ map['Id'] = id;
|
|
|
+ map['DataType'] = dataType.index;
|
|
|
+ if(application != null)
|
|
|
+ map['Application'] = application;
|
|
|
+ if(previewFileToken != null)
|
|
|
+ map['PreviewFileToken'] = previewFileToken;
|
|
|
+ if(createTime != null)
|
|
|
+ map['CreateTime'] = JsonRpcUtils.dateFormat(createTime!);
|
|
|
+ if(files != null)
|
|
|
+ map['Files'] = files;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class GetRemedicalDataListRequest extends AppletAPIPageRequest{
|
|
|
+ String? remedicalRecordId;
|
|
|
+
|
|
|
+ GetRemedicalDataListRequest({
|
|
|
+ this.remedicalRecordId,
|
|
|
+ int pageIndex = 0,
|
|
|
+ int pageSize = 0,
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ pageIndex: pageIndex,
|
|
|
+ pageSize: pageSize,
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory GetRemedicalDataListRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return GetRemedicalDataListRequest(
|
|
|
+ remedicalRecordId: map['RemedicalRecordId'],
|
|
|
+ pageIndex: map['PageIndex'],
|
|
|
+ pageSize: map['PageSize'],
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ if(remedicalRecordId != null)
|
|
|
+ map['RemedicalRecordId'] = remedicalRecordId;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+enum AppletAPIImageType {
|
|
|
+ placeHolder_0,
|
|
|
+ Local,
|
|
|
+ Ob,
|
|
|
+ WorkSheet,
|
|
|
+ Remote,
|
|
|
+ DigitalSignature,
|
|
|
+ AIDiagnosis,
|
|
|
+}
|
|
|
+
|
|
|
+class ReportImageInfo {
|
|
|
+ String? examDataId;
|
|
|
+ String? fileUrl;
|
|
|
+ AppletAPIImageType type;
|
|
|
+
|
|
|
+ ReportImageInfo({
|
|
|
+ this.examDataId,
|
|
|
+ this.fileUrl,
|
|
|
+ this.type = AppletAPIImageType.Local,
|
|
|
+ });
|
|
|
+
|
|
|
+ factory ReportImageInfo.fromJson(Map<String, dynamic> map) {
|
|
|
+ return ReportImageInfo(
|
|
|
+ examDataId: map['ExamDataId'],
|
|
|
+ fileUrl: map['FileUrl'],
|
|
|
+ type: AppletAPIImageType.values.firstWhere((e) => e.index == map['Type']),
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = Map<String, dynamic>();
|
|
|
+ if(examDataId != null)
|
|
|
+ map['ExamDataId'] = examDataId;
|
|
|
+ if(fileUrl != null)
|
|
|
+ map['FileUrl'] = fileUrl;
|
|
|
+ map['Type'] = type.index;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class ReportInfo {
|
|
|
+ String? id;
|
|
|
+ IReadOnlyList<ReportImageInfo>? previewImages;
|
|
|
+
|
|
|
+ ReportInfo({
|
|
|
+ this.id,
|
|
|
+ this.previewImages,
|
|
|
+ });
|
|
|
+
|
|
|
+ factory ReportInfo.fromJson(Map<String, dynamic> map) {
|
|
|
+ return ReportInfo(
|
|
|
+ id: map['Id'],
|
|
|
+ previewImages: map['PreviewImages'] != null ? (map['PreviewImages'] as List).map((e)=>ReportImageInfo.fromJson(e as Map<String,dynamic>)).toList() : null,
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = Map<String, dynamic>();
|
|
|
+ if(id != null)
|
|
|
+ map['Id'] = id;
|
|
|
+ if(previewImages != null)
|
|
|
+ map['PreviewImages'] = previewImages;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class GetRemedicalReportListRequest extends AppletAPIPageRequest{
|
|
|
+ String? remedicalRecordId;
|
|
|
+
|
|
|
+ GetRemedicalReportListRequest({
|
|
|
+ this.remedicalRecordId,
|
|
|
+ int pageIndex = 0,
|
|
|
+ int pageSize = 0,
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ pageIndex: pageIndex,
|
|
|
+ pageSize: pageSize,
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory GetRemedicalReportListRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return GetRemedicalReportListRequest(
|
|
|
+ remedicalRecordId: map['RemedicalRecordId'],
|
|
|
+ pageIndex: map['PageIndex'],
|
|
|
+ pageSize: map['PageSize'],
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ if(remedicalRecordId != null)
|
|
|
+ map['RemedicalRecordId'] = remedicalRecordId;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class GetReportDetailRequest extends AppletAPIPageRequest{
|
|
|
+ String? reportId;
|
|
|
+
|
|
|
+ GetReportDetailRequest({
|
|
|
+ this.reportId,
|
|
|
+ int pageIndex = 0,
|
|
|
+ int pageSize = 0,
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ pageIndex: pageIndex,
|
|
|
+ pageSize: pageSize,
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory GetReportDetailRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return GetReportDetailRequest(
|
|
|
+ reportId: map['ReportId'],
|
|
|
+ pageIndex: map['PageIndex'],
|
|
|
+ pageSize: map['PageSize'],
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ if(reportId != null)
|
|
|
+ map['ReportId'] = reportId;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+enum PatientGenderEnum {
|
|
|
+ NotFilled,
|
|
|
+ Male,
|
|
|
+ Female,
|
|
|
+}
|
|
|
+
|
|
|
+class VideoTokenInfo {
|
|
|
+ String? videoToken;
|
|
|
+ String? previewToken;
|
|
|
+
|
|
|
+ VideoTokenInfo({
|
|
|
+ this.videoToken,
|
|
|
+ this.previewToken,
|
|
|
+ });
|
|
|
+
|
|
|
+ factory VideoTokenInfo.fromJson(Map<String, dynamic> map) {
|
|
|
+ return VideoTokenInfo(
|
|
|
+ videoToken: map['VideoToken'],
|
|
|
+ previewToken: map['PreviewToken'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = Map<String, dynamic>();
|
|
|
+ if(videoToken != null)
|
|
|
+ map['VideoToken'] = videoToken;
|
|
|
+ if(previewToken != null)
|
|
|
+ map['PreviewToken'] = previewToken;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class ReportPreviewPdf {
|
|
|
+ String? reportId;
|
|
|
+ DateTime? updateTime;
|
|
|
+ String? previewPdfUrl;
|
|
|
+
|
|
|
+ ReportPreviewPdf({
|
|
|
+ this.reportId,
|
|
|
+ this.updateTime,
|
|
|
+ this.previewPdfUrl,
|
|
|
+ });
|
|
|
+
|
|
|
+ factory ReportPreviewPdf.fromJson(Map<String, dynamic> map) {
|
|
|
+ return ReportPreviewPdf(
|
|
|
+ reportId: map['ReportId'],
|
|
|
+ updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null,
|
|
|
+ previewPdfUrl: map['PreviewPdfUrl'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = Map<String, dynamic>();
|
|
|
+ if(reportId != null)
|
|
|
+ map['ReportId'] = reportId;
|
|
|
+ if(updateTime != null)
|
|
|
+ map['UpdateTime'] = JsonRpcUtils.dateFormat(updateTime!);
|
|
|
+ if(previewPdfUrl != null)
|
|
|
+ map['PreviewPdfUrl'] = previewPdfUrl;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class ConsultationInfo {
|
|
|
+ String? consultationId;
|
|
|
+ String? patientName;
|
|
|
+ PatientGenderEnum patientSex;
|
|
|
+ String? patientAge;
|
|
|
+ DateTime? birthday;
|
|
|
+ String? contactInfo;
|
|
|
+ String? patientID;
|
|
|
+ String? history;
|
|
|
+ String? primaryDiagnosis;
|
|
|
+ String? hospitalId;
|
|
|
+ String? hospitalName;
|
|
|
+ String? expertId;
|
|
|
+ String? expertName;
|
|
|
+ DateTime? consultationDate;
|
|
|
+ String? inspectionItems;
|
|
|
+ String? deviceModel;
|
|
|
+ String? terminalId;
|
|
|
+ IReadOnlyList<String>? imageTokens;
|
|
|
+ IReadOnlyList<VideoTokenInfo>? videoInfos;
|
|
|
+ IReadOnlyList<ReportPreviewPdf>? reportPreviewPdfs;
|
|
|
+
|
|
|
+ ConsultationInfo({
|
|
|
+ this.consultationId,
|
|
|
+ this.patientName,
|
|
|
+ this.patientSex = PatientGenderEnum.NotFilled,
|
|
|
+ this.patientAge,
|
|
|
+ this.birthday,
|
|
|
+ this.contactInfo,
|
|
|
+ this.patientID,
|
|
|
+ this.history,
|
|
|
+ this.primaryDiagnosis,
|
|
|
+ this.hospitalId,
|
|
|
+ this.hospitalName,
|
|
|
+ this.expertId,
|
|
|
+ this.expertName,
|
|
|
+ this.consultationDate,
|
|
|
+ this.inspectionItems,
|
|
|
+ this.deviceModel,
|
|
|
+ this.terminalId,
|
|
|
+ this.imageTokens,
|
|
|
+ this.videoInfos,
|
|
|
+ this.reportPreviewPdfs,
|
|
|
+ });
|
|
|
+
|
|
|
+ factory ConsultationInfo.fromJson(Map<String, dynamic> map) {
|
|
|
+ return ConsultationInfo(
|
|
|
+ consultationId: map['ConsultationId'],
|
|
|
+ patientName: map['PatientName'],
|
|
|
+ patientSex: PatientGenderEnum.values.firstWhere((e) => e.index == map['PatientSex']),
|
|
|
+ patientAge: map['PatientAge'],
|
|
|
+ birthday: map['Birthday'] != null ? DateTime.parse(map['Birthday']) : null,
|
|
|
+ contactInfo: map['ContactInfo'],
|
|
|
+ patientID: map['PatientID'],
|
|
|
+ history: map['History'],
|
|
|
+ primaryDiagnosis: map['PrimaryDiagnosis'],
|
|
|
+ hospitalId: map['HospitalId'],
|
|
|
+ hospitalName: map['HospitalName'],
|
|
|
+ expertId: map['ExpertId'],
|
|
|
+ expertName: map['ExpertName'],
|
|
|
+ consultationDate: map['ConsultationDate'] != null ? DateTime.parse(map['ConsultationDate']) : null,
|
|
|
+ inspectionItems: map['InspectionItems'],
|
|
|
+ deviceModel: map['DeviceModel'],
|
|
|
+ terminalId: map['TerminalId'],
|
|
|
+ imageTokens: map['ImageTokens'] != null ? map['ImageTokens'].cast<String>().toList() : null,
|
|
|
+ videoInfos: map['VideoInfos'] != null ? (map['VideoInfos'] as List).map((e)=>VideoTokenInfo.fromJson(e as Map<String,dynamic>)).toList() : null,
|
|
|
+ reportPreviewPdfs: map['ReportPreviewPdfs'] != null ? (map['ReportPreviewPdfs'] as List).map((e)=>ReportPreviewPdf.fromJson(e as Map<String,dynamic>)).toList() : null,
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = Map<String, dynamic>();
|
|
|
+ if(consultationId != null)
|
|
|
+ map['ConsultationId'] = consultationId;
|
|
|
+ if(patientName != null)
|
|
|
+ map['PatientName'] = patientName;
|
|
|
+ map['PatientSex'] = patientSex.index;
|
|
|
+ if(patientAge != null)
|
|
|
+ map['PatientAge'] = patientAge;
|
|
|
+ if(birthday != null)
|
|
|
+ map['Birthday'] = JsonRpcUtils.dateFormat(birthday!);
|
|
|
+ if(contactInfo != null)
|
|
|
+ map['ContactInfo'] = contactInfo;
|
|
|
+ if(patientID != null)
|
|
|
+ map['PatientID'] = patientID;
|
|
|
+ if(history != null)
|
|
|
+ map['History'] = history;
|
|
|
+ if(primaryDiagnosis != null)
|
|
|
+ map['PrimaryDiagnosis'] = primaryDiagnosis;
|
|
|
+ if(hospitalId != null)
|
|
|
+ map['HospitalId'] = hospitalId;
|
|
|
+ if(hospitalName != null)
|
|
|
+ map['HospitalName'] = hospitalName;
|
|
|
+ if(expertId != null)
|
|
|
+ map['ExpertId'] = expertId;
|
|
|
+ if(expertName != null)
|
|
|
+ map['ExpertName'] = expertName;
|
|
|
+ if(consultationDate != null)
|
|
|
+ map['ConsultationDate'] = JsonRpcUtils.dateFormat(consultationDate!);
|
|
|
+ if(inspectionItems != null)
|
|
|
+ map['InspectionItems'] = inspectionItems;
|
|
|
+ if(deviceModel != null)
|
|
|
+ map['DeviceModel'] = deviceModel;
|
|
|
+ if(terminalId != null)
|
|
|
+ map['TerminalId'] = terminalId;
|
|
|
+ if(imageTokens != null)
|
|
|
+ map['ImageTokens'] = imageTokens;
|
|
|
+ if(videoInfos != null)
|
|
|
+ map['VideoInfos'] = videoInfos;
|
|
|
+ if(reportPreviewPdfs != null)
|
|
|
+ map['ReportPreviewPdfs'] = reportPreviewPdfs;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class GetConsultationListRequest extends AppletAPIPageRequest{
|
|
|
+ String? keyWord;
|
|
|
+ DateTime? startTime;
|
|
|
+ DateTime? endTime;
|
|
|
+
|
|
|
+ GetConsultationListRequest({
|
|
|
+ this.keyWord,
|
|
|
+ this.startTime,
|
|
|
+ this.endTime,
|
|
|
+ int pageIndex = 0,
|
|
|
+ int pageSize = 0,
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ pageIndex: pageIndex,
|
|
|
+ pageSize: pageSize,
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory GetConsultationListRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return GetConsultationListRequest(
|
|
|
+ keyWord: map['KeyWord'],
|
|
|
+ startTime: map['StartTime'] != null ? DateTime.parse(map['StartTime']) : null,
|
|
|
+ endTime: map['EndTime'] != null ? DateTime.parse(map['EndTime']) : null,
|
|
|
+ pageIndex: map['PageIndex'],
|
|
|
+ pageSize: map['PageSize'],
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ if(keyWord != null)
|
|
|
+ map['KeyWord'] = keyWord;
|
|
|
+ if(startTime != null)
|
|
|
+ map['StartTime'] = JsonRpcUtils.dateFormat(startTime!);
|
|
|
+ if(endTime != null)
|
|
|
+ map['EndTime'] = JsonRpcUtils.dateFormat(endTime!);
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class CreateConsultationRequest extends AppletAPIBaseRequest{
|
|
|
+ String? patientName;
|
|
|
+ PatientGenderEnum patientSex;
|
|
|
+ String? patientAge;
|
|
|
+ DateTime? birthday;
|
|
|
+ String? contactInfo;
|
|
|
+ String? patientID;
|
|
|
+ String? history;
|
|
|
+ String? primaryDiagnosis;
|
|
|
+ String? hospitalId;
|
|
|
+ String? expertId;
|
|
|
+ DateTime? consultationDate;
|
|
|
+ String? inspectionItems;
|
|
|
+ String? deviceModel;
|
|
|
+ String? terminalId;
|
|
|
+
|
|
|
+ CreateConsultationRequest({
|
|
|
+ this.patientName,
|
|
|
+ this.patientSex = PatientGenderEnum.NotFilled,
|
|
|
+ this.patientAge,
|
|
|
+ this.birthday,
|
|
|
+ this.contactInfo,
|
|
|
+ this.patientID,
|
|
|
+ this.history,
|
|
|
+ this.primaryDiagnosis,
|
|
|
+ this.hospitalId,
|
|
|
+ this.expertId,
|
|
|
+ this.consultationDate,
|
|
|
+ this.inspectionItems,
|
|
|
+ this.deviceModel,
|
|
|
+ this.terminalId,
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory CreateConsultationRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return CreateConsultationRequest(
|
|
|
+ patientName: map['PatientName'],
|
|
|
+ patientSex: PatientGenderEnum.values.firstWhere((e) => e.index == map['PatientSex']),
|
|
|
+ patientAge: map['PatientAge'],
|
|
|
+ birthday: map['Birthday'] != null ? DateTime.parse(map['Birthday']) : null,
|
|
|
+ contactInfo: map['ContactInfo'],
|
|
|
+ patientID: map['PatientID'],
|
|
|
+ history: map['History'],
|
|
|
+ primaryDiagnosis: map['PrimaryDiagnosis'],
|
|
|
+ hospitalId: map['HospitalId'],
|
|
|
+ expertId: map['ExpertId'],
|
|
|
+ consultationDate: map['ConsultationDate'] != null ? DateTime.parse(map['ConsultationDate']) : null,
|
|
|
+ inspectionItems: map['InspectionItems'],
|
|
|
+ deviceModel: map['DeviceModel'],
|
|
|
+ terminalId: map['TerminalId'],
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ if(patientName != null)
|
|
|
+ map['PatientName'] = patientName;
|
|
|
+ map['PatientSex'] = patientSex.index;
|
|
|
+ if(patientAge != null)
|
|
|
+ map['PatientAge'] = patientAge;
|
|
|
+ if(birthday != null)
|
|
|
+ map['Birthday'] = JsonRpcUtils.dateFormat(birthday!);
|
|
|
+ if(contactInfo != null)
|
|
|
+ map['ContactInfo'] = contactInfo;
|
|
|
+ if(patientID != null)
|
|
|
+ map['PatientID'] = patientID;
|
|
|
+ if(history != null)
|
|
|
+ map['History'] = history;
|
|
|
+ if(primaryDiagnosis != null)
|
|
|
+ map['PrimaryDiagnosis'] = primaryDiagnosis;
|
|
|
+ if(hospitalId != null)
|
|
|
+ map['HospitalId'] = hospitalId;
|
|
|
+ if(expertId != null)
|
|
|
+ map['ExpertId'] = expertId;
|
|
|
+ if(consultationDate != null)
|
|
|
+ map['ConsultationDate'] = JsonRpcUtils.dateFormat(consultationDate!);
|
|
|
+ if(inspectionItems != null)
|
|
|
+ map['InspectionItems'] = inspectionItems;
|
|
|
+ if(deviceModel != null)
|
|
|
+ map['DeviceModel'] = deviceModel;
|
|
|
+ if(terminalId != null)
|
|
|
+ map['TerminalId'] = terminalId;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class OrganBaseInfo {
|
|
|
+ String? organizationId;
|
|
|
+ String? name;
|
|
|
+
|
|
|
+ OrganBaseInfo({
|
|
|
+ this.organizationId,
|
|
|
+ this.name,
|
|
|
+ });
|
|
|
+
|
|
|
+ factory OrganBaseInfo.fromJson(Map<String, dynamic> map) {
|
|
|
+ return OrganBaseInfo(
|
|
|
+ organizationId: map['OrganizationId'],
|
|
|
+ name: map['Name'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = Map<String, dynamic>();
|
|
|
+ if(organizationId != null)
|
|
|
+ map['OrganizationId'] = organizationId;
|
|
|
+ if(name != null)
|
|
|
+ map['Name'] = name;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class GetHospitalsRequest extends AppletAPIBaseRequest{
|
|
|
+
|
|
|
+ GetHospitalsRequest({
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory GetHospitalsRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return GetHospitalsRequest(
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class DoctorInfo {
|
|
|
+ String? id;
|
|
|
+ String? displayName;
|
|
|
+ String? fullName;
|
|
|
+ String? electronSignUrl;
|
|
|
+
|
|
|
+ DoctorInfo({
|
|
|
+ this.id,
|
|
|
+ this.displayName,
|
|
|
+ this.fullName,
|
|
|
+ this.electronSignUrl,
|
|
|
+ });
|
|
|
+
|
|
|
+ factory DoctorInfo.fromJson(Map<String, dynamic> map) {
|
|
|
+ return DoctorInfo(
|
|
|
+ id: map['Id'],
|
|
|
+ displayName: map['DisplayName'],
|
|
|
+ fullName: map['FullName'],
|
|
|
+ electronSignUrl: map['ElectronSignUrl'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = Map<String, dynamic>();
|
|
|
+ if(id != null)
|
|
|
+ map['Id'] = id;
|
|
|
+ if(displayName != null)
|
|
|
+ map['DisplayName'] = displayName;
|
|
|
+ if(fullName != null)
|
|
|
+ map['FullName'] = fullName;
|
|
|
+ if(electronSignUrl != null)
|
|
|
+ map['ElectronSignUrl'] = electronSignUrl;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class GetExpertsRequest extends AppletAPIBaseRequest{
|
|
|
+ String? organizationId;
|
|
|
+
|
|
|
+ GetExpertsRequest({
|
|
|
+ this.organizationId,
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory GetExpertsRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return GetExpertsRequest(
|
|
|
+ organizationId: map['OrganizationId'],
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ if(organizationId != null)
|
|
|
+ map['OrganizationId'] = organizationId;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class GetDeviceModelsRequest extends AppletAPIBaseRequest{
|
|
|
+
|
|
|
+ GetDeviceModelsRequest({
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory GetDeviceModelsRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return GetDeviceModelsRequest(
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class GetScanLocationsRequest extends AppletAPIBaseRequest{
|
|
|
+
|
|
|
+ GetScanLocationsRequest({
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory GetScanLocationsRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return GetScanLocationsRequest(
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class GetConsultationDetailRequest extends AppletAPIBaseRequest{
|
|
|
+ String? consultationId;
|
|
|
+
|
|
|
+ GetConsultationDetailRequest({
|
|
|
+ this.consultationId,
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory GetConsultationDetailRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return GetConsultationDetailRequest(
|
|
|
+ consultationId: map['ConsultationId'],
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ if(consultationId != null)
|
|
|
+ map['ConsultationId'] = consultationId;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class StartConsultationRequest extends AppletAPIBaseRequest{
|
|
|
+ String? consultationId;
|
|
|
+
|
|
|
+ StartConsultationRequest({
|
|
|
+ this.consultationId,
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory StartConsultationRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return StartConsultationRequest(
|
|
|
+ consultationId: map['ConsultationId'],
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ if(consultationId != null)
|
|
|
+ map['ConsultationId'] = consultationId;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+class ConsultationHeartRateRequest extends AppletAPIBaseRequest{
|
|
|
+ String? consultationId;
|
|
|
+
|
|
|
+ ConsultationHeartRateRequest({
|
|
|
+ this.consultationId,
|
|
|
+ String? openId,
|
|
|
+ }) : super(
|
|
|
+ openId: openId,
|
|
|
+ );
|
|
|
+
|
|
|
+ factory ConsultationHeartRateRequest.fromJson(Map<String, dynamic> map) {
|
|
|
+ return ConsultationHeartRateRequest(
|
|
|
+ consultationId: map['ConsultationId'],
|
|
|
+ openId: map['OpenId'],
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<String, dynamic> toJson() {
|
|
|
+ final map = super.toJson();
|
|
|
+ if(consultationId != null)
|
|
|
+ map['ConsultationId'] = consultationId;
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+
|