import 'liveConsultation.m.dart'; import 'notification.m.dart'; class RecordLaboratoryFileResult { bool isSuccess; RecordLaboratoryFileResult({ this.isSuccess = false, }); factory RecordLaboratoryFileResult.fromJson(Map map) { return RecordLaboratoryFileResult( isSuccess: map['IsSuccess'], ); } Map toJson() { final map = Map(); map['IsSuccess'] = isSuccess; return map; } } enum LabUploadTypeEnum { DirectUpload, ByTemplate, } class FileUploadInfoDTO { String? uploadId; int partNum; String? fileUrl; String? fileName; FileUploadInfoDTO({ this.uploadId, this.partNum = 0, this.fileUrl, this.fileName, }); factory FileUploadInfoDTO.fromJson(Map map) { return FileUploadInfoDTO( uploadId: map['UploadId'], partNum: map['PartNum'], fileUrl: map['FileUrl'], fileName: map['FileName'], ); } Map toJson() { final map = Map(); if (uploadId != null) { map['UploadId'] = uploadId; } map['PartNum'] = partNum; if (fileUrl != null) { map['FileUrl'] = fileUrl; } if (fileName != null) { map['FileName'] = fileName; } return map; } } class RecordLaboratoryFileRequest extends TokenRequest{ LabUploadTypeEnum uploadType; List? fileUploadInfos; bool isComprehensiveAnalysis; bool isSeparateAnalysis; String? folderName; String? folderCode; RecordLaboratoryFileRequest({ this.uploadType = LabUploadTypeEnum.DirectUpload, this.fileUploadInfos, this.isComprehensiveAnalysis = false, this.isSeparateAnalysis = false, this.folderName, this.folderCode, String? token, }) : super( token: token, ); factory RecordLaboratoryFileRequest.fromJson(Map map) { return RecordLaboratoryFileRequest( uploadType: LabUploadTypeEnum.values.firstWhere((e) => e.index == map['UploadType']), fileUploadInfos: map['FileUploadInfos'] != null ? (map['FileUploadInfos'] as List).map((e)=>FileUploadInfoDTO.fromJson(e as Map)).toList() : null, isComprehensiveAnalysis: map['IsComprehensiveAnalysis'], isSeparateAnalysis: map['IsSeparateAnalysis'], folderName: map['FolderName'], folderCode: map['FolderCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); map['UploadType'] = uploadType.index; if (fileUploadInfos != null) map['FileUploadInfos'] = fileUploadInfos; map['IsComprehensiveAnalysis'] = isComprehensiveAnalysis; map['IsSeparateAnalysis'] = isSeparateAnalysis; if (folderName != null) map['FolderName'] = folderName; if (folderCode != null) map['FolderCode'] = folderCode; return map; } } class LabFolderDTO { String? code; String? name; String? parentCode; LabFolderDTO({ this.code, this.name, this.parentCode, }); factory LabFolderDTO.fromJson(Map map) { return LabFolderDTO( code: map['Code'], name: map['Name'], parentCode: map['ParentCode'], ); } Map toJson() { final map = Map(); if (code != null) { map['Code'] = code; } if (name != null) { map['Name'] = name; } if (parentCode != null) { map['ParentCode'] = parentCode; } return map; } } class GetFileListByFolderRequest extends PageRequest{ String? folderCode; GetFileListByFolderRequest({ this.folderCode, int pageIndex = 0, int pageSize = 0, String? token, }) : super( pageIndex: pageIndex, pageSize: pageSize, token: token, ); factory GetFileListByFolderRequest.fromJson(Map map) { return GetFileListByFolderRequest( folderCode: map['FolderCode'], pageIndex: map['PageIndex'], pageSize: map['PageSize'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if (folderCode != null) map['FolderCode'] = folderCode; return map; } } class DownloadLabFileTemplateResult { String? templateFileUrl; DownloadLabFileTemplateResult({ this.templateFileUrl, }); factory DownloadLabFileTemplateResult.fromJson(Map map) { return DownloadLabFileTemplateResult( templateFileUrl: map['TemplateFileUrl'], ); } Map toJson() { final map = Map(); if (templateFileUrl != null) { map['TemplateFileUrl'] = templateFileUrl; } return map; } } class DownloadLabFileTemplateRequest extends TokenRequest{ DownloadLabFileTemplateRequest({ String? token, }) : super( token: token, ); factory DownloadLabFileTemplateRequest.fromJson(Map map) { return DownloadLabFileTemplateRequest( token: map['Token'], ); } Map toJson() { final map = super.toJson(); return map; } }