import 'notification.m.dart'; import 'masterInteractionCenter.m.dart'; import 'package:fis_jsonrpc/utils.dart'; import 'package:fis_common/json_convert.dart'; class BaseDTO { DateTime? createTime; DateTime? updateTime; BaseDTO({ this.createTime, this.updateTime, }); factory BaseDTO.fromJson(Map map) { return BaseDTO( createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null, updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null, ); } Map toJson() { final map = Map(); if(createTime != null) map['CreateTime'] = JsonRpcUtils.dateFormat(createTime!); if(updateTime != null) map['UpdateTime'] = JsonRpcUtils.dateFormat(updateTime!); return map; } } class OrganizationBaseDTO extends BaseDTO{ String? organizationCode; String? organizationName; OrganizationBaseDTO({ this.organizationCode, this.organizationName, DateTime? createTime, DateTime? updateTime, }) : super( createTime: createTime, updateTime: updateTime, ); factory OrganizationBaseDTO.fromJson(Map map) { return OrganizationBaseDTO( organizationCode: map['OrganizationCode'], organizationName: map['OrganizationName'], createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null, updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null, ); } Map toJson() { final map = super.toJson(); if(organizationCode != null) map['OrganizationCode'] = organizationCode; if(organizationName != null) map['OrganizationName'] = organizationName; return map; } } class BaseRequest { BaseRequest(); factory BaseRequest.fromJson(Map map) { return BaseRequest( ); } Map toJson() { final map = Map(); return map; } } class TokenRequest extends BaseRequest{ String? token; TokenRequest({ this.token, }) : super( ); factory TokenRequest.fromJson(Map map) { return TokenRequest( token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(token != null) map['Token'] = token; return map; } } class FindHigherOrganizationsRequest extends TokenRequest{ String? organizationName; FindHigherOrganizationsRequest({ this.organizationName, String? token, }) : super( token: token, ); factory FindHigherOrganizationsRequest.fromJson(Map map) { return FindHigherOrganizationsRequest( organizationName: map['OrganizationName'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(organizationName != null) map['OrganizationName'] = organizationName; return map; } } class FindGrassRootsOrganizationsRequest extends TokenRequest{ String? organizationName; FindGrassRootsOrganizationsRequest({ this.organizationName, String? token, }) : super( token: token, ); factory FindGrassRootsOrganizationsRequest.fromJson(Map map) { return FindGrassRootsOrganizationsRequest( organizationName: map['OrganizationName'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(organizationName != null) map['OrganizationName'] = organizationName; return map; } } class UserBaseDTO extends BaseDTO{ String? userCode; String? userName; String? headImageUrl; UserBaseDTO({ this.userCode, this.userName, this.headImageUrl, DateTime? createTime, DateTime? updateTime, }) : super( createTime: createTime, updateTime: updateTime, ); factory UserBaseDTO.fromJson(Map map) { return UserBaseDTO( userCode: map['UserCode'], userName: map['UserName'], headImageUrl: map['HeadImageUrl'], createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null, updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null, ); } Map toJson() { final map = super.toJson(); if(userCode != null) map['UserCode'] = userCode; if(userName != null) map['UserName'] = userName; if(headImageUrl != null) map['HeadImageUrl'] = headImageUrl; return map; } } class OrganizationExpertDTO extends UserBaseDTO{ String? fullName; List? fieldList; OrganizationExpertDTO({ this.fullName, this.fieldList, String? userCode, String? userName, String? headImageUrl, DateTime? createTime, DateTime? updateTime, }) : super( userCode: userCode, userName: userName, headImageUrl: headImageUrl, createTime: createTime, updateTime: updateTime, ); factory OrganizationExpertDTO.fromJson(Map map) { return OrganizationExpertDTO( fullName: map['FullName'], fieldList: map['FieldList'] != null ? map['FieldList'].cast().toList() : null, userCode: map['UserCode'], userName: map['UserName'], headImageUrl: map['HeadImageUrl'], createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null, updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null, ); } Map toJson() { final map = super.toJson(); if(fullName != null) map['FullName'] = fullName; if(fieldList != null) map['FieldList'] = fieldList; return map; } } class FindOrganizationExpertsRequest extends TokenRequest{ String? organizationCode; String? expertName; FindOrganizationExpertsRequest({ this.organizationCode, this.expertName, String? token, }) : super( token: token, ); factory FindOrganizationExpertsRequest.fromJson(Map map) { return FindOrganizationExpertsRequest( organizationCode: map['OrganizationCode'], expertName: map['ExpertName'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(organizationCode != null) map['OrganizationCode'] = organizationCode; if(expertName != null) map['ExpertName'] = expertName; return map; } } class DataItemDTO { String? key; String? value; DataItemDTO({ this.key, this.value, }); factory DataItemDTO.fromJson(Map map) { return DataItemDTO( key: map['Key'], value: map['Value'], ); } Map toJson() { final map = Map(); if(key != null) map['Key'] = key; if(value != null) map['Value'] = value; return map; } } enum ConsultationReportMode { ExpertReport, ApplicantReport, } class ApplyConsultationRequest extends TokenRequest{ String? expertUserCode; String? deviceCode; String? scanPosition; DateTime? consultationTime; List? patientDatas; String? patientCode; ConsultationReportMode reportMode; String? diseases; String? scanUserCode; String? expertOrganizationCode; String? applyUserCode; String? primaryDiagnosis; ApplyConsultationRequest({ this.expertUserCode, this.deviceCode, this.scanPosition, this.consultationTime, this.patientDatas, this.patientCode, this.reportMode = ConsultationReportMode.ExpertReport, this.diseases, this.scanUserCode, this.expertOrganizationCode, this.applyUserCode, this.primaryDiagnosis, String? token, }) : super( token: token, ); factory ApplyConsultationRequest.fromJson(Map map) { return ApplyConsultationRequest( expertUserCode: map['ExpertUserCode'], deviceCode: map['DeviceCode'], scanPosition: map['ScanPosition'], consultationTime: map['ConsultationTime'] != null ? DateTime.parse(map['ConsultationTime']) : null, patientDatas: map['PatientDatas'] != null ? (map['PatientDatas'] as List).map((e)=>DataItemDTO.fromJson(e as Map)).toList() : null, patientCode: map['PatientCode'], reportMode: ConsultationReportMode.values.firstWhere((e) => e.index == map['ReportMode']), diseases: map['Diseases'], scanUserCode: map['ScanUserCode'], expertOrganizationCode: map['ExpertOrganizationCode'], applyUserCode: map['ApplyUserCode'], primaryDiagnosis: map['PrimaryDiagnosis'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(expertUserCode != null) map['ExpertUserCode'] = expertUserCode; if(deviceCode != null) map['DeviceCode'] = deviceCode; if(scanPosition != null) map['ScanPosition'] = scanPosition; if(consultationTime != null) map['ConsultationTime'] = JsonRpcUtils.dateFormat(consultationTime!); if(patientDatas != null) map['PatientDatas'] = patientDatas; if(patientCode != null) map['PatientCode'] = patientCode; map['ReportMode'] = reportMode.index; if(diseases != null) map['Diseases'] = diseases; if(scanUserCode != null) map['ScanUserCode'] = scanUserCode; if(expertOrganizationCode != null) map['ExpertOrganizationCode'] = expertOrganizationCode; if(applyUserCode != null) map['ApplyUserCode'] = applyUserCode; if(primaryDiagnosis != null) map['PrimaryDiagnosis'] = primaryDiagnosis; return map; } } class UpdateConsultationRequest extends TokenRequest{ String? consultationCode; String? expertUserCode; String? deviceCode; String? scanPosition; DateTime? consultationTime; String? diseases; String? scanUserCode; String? expertOrganizationCode; String? applyUserCode; String? primaryDiagnosis; UpdateConsultationRequest({ this.consultationCode, this.expertUserCode, this.deviceCode, this.scanPosition, this.consultationTime, this.diseases, this.scanUserCode, this.expertOrganizationCode, this.applyUserCode, this.primaryDiagnosis, String? token, }) : super( token: token, ); factory UpdateConsultationRequest.fromJson(Map map) { return UpdateConsultationRequest( consultationCode: map['ConsultationCode'], expertUserCode: map['ExpertUserCode'], deviceCode: map['DeviceCode'], scanPosition: map['ScanPosition'], consultationTime: map['ConsultationTime'] != null ? DateTime.parse(map['ConsultationTime']) : null, diseases: map['Diseases'], scanUserCode: map['ScanUserCode'], expertOrganizationCode: map['ExpertOrganizationCode'], applyUserCode: map['ApplyUserCode'], primaryDiagnosis: map['PrimaryDiagnosis'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; if(expertUserCode != null) map['ExpertUserCode'] = expertUserCode; if(deviceCode != null) map['DeviceCode'] = deviceCode; if(scanPosition != null) map['ScanPosition'] = scanPosition; if(consultationTime != null) map['ConsultationTime'] = JsonRpcUtils.dateFormat(consultationTime!); if(diseases != null) map['Diseases'] = diseases; if(scanUserCode != null) map['ScanUserCode'] = scanUserCode; if(expertOrganizationCode != null) map['ExpertOrganizationCode'] = expertOrganizationCode; if(applyUserCode != null) map['ApplyUserCode'] = applyUserCode; if(primaryDiagnosis != null) map['PrimaryDiagnosis'] = primaryDiagnosis; return map; } } class FindAssistantExpertsRequest extends TokenRequest{ String? expertName; FindAssistantExpertsRequest({ this.expertName, String? token, }) : super( token: token, ); factory FindAssistantExpertsRequest.fromJson(Map map) { return FindAssistantExpertsRequest( expertName: map['ExpertName'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(expertName != null) map['ExpertName'] = expertName; return map; } } enum TransactionStatusEnum { placeHolder_0, Applied, Withdrawn, Rejected, ToStart, InProgress, PendingReport, End, } enum EvaluateGradeEnum { UnSet, Dissatisfaction, General, Satisfaction, } class ConsultationPageDTO { String? consultationCode; TransactionStatusEnum consultationStatus; String? patientName; String? phone; String? sex; String? patientAge; String? applyOrganizationName; String? consultationTime; String? expertUserName; EvaluateGradeEnum consultationEvaluate; ConsultationPageDTO({ this.consultationCode, this.consultationStatus = TransactionStatusEnum.Applied, this.patientName, this.phone, this.sex, this.patientAge, this.applyOrganizationName, this.consultationTime, this.expertUserName, this.consultationEvaluate = EvaluateGradeEnum.UnSet, }); factory ConsultationPageDTO.fromJson(Map map) { return ConsultationPageDTO( consultationCode: map['ConsultationCode'], consultationStatus: TransactionStatusEnum.values.firstWhere((e) => e.index == map['ConsultationStatus']), patientName: map['PatientName'], phone: map['Phone'], sex: map['Sex'], patientAge: map['PatientAge'], applyOrganizationName: map['ApplyOrganizationName'], consultationTime: map['ConsultationTime'], expertUserName: map['ExpertUserName'], consultationEvaluate: EvaluateGradeEnum.values.firstWhere((e) => e.index == map['ConsultationEvaluate']), ); } Map toJson() { final map = Map(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; map['ConsultationStatus'] = consultationStatus.index; if(patientName != null) map['PatientName'] = patientName; if(phone != null) map['Phone'] = phone; if(sex != null) map['Sex'] = sex; if(patientAge != null) map['PatientAge'] = patientAge; if(applyOrganizationName != null) map['ApplyOrganizationName'] = applyOrganizationName; if(consultationTime != null) map['ConsultationTime'] = consultationTime; if(expertUserName != null) map['ExpertUserName'] = expertUserName; map['ConsultationEvaluate'] = consultationEvaluate.index; return map; } } class PageResult { int pageIndex; int pageSize; int totalCount; List? pageData; PageResult({ this.pageIndex = 0, this.pageSize = 0, this.totalCount = 0, this.pageData, }); factory PageResult.fromJson(Map map) { List pageDataList = []; if (map['PageData'] != null) { pageDataList.addAll( (map['PageData'] as List).map((e) => FJsonConvert.fromJson(e)!)); } return PageResult( pageIndex: map['PageIndex'], pageSize: map['PageSize'], totalCount: map['TotalCount'], pageData: pageDataList, ); } Map toJson() { final map = Map(); map['PageIndex'] = pageIndex; map['PageSize'] = pageSize; map['TotalCount'] = totalCount; if(pageData != null) map['PageData'] = pageData; return map; } } class PageRequest extends TokenRequest{ int pageIndex; int pageSize; PageRequest({ this.pageIndex = 0, this.pageSize = 0, String? token, }) : super( token: token, ); factory PageRequest.fromJson(Map map) { return PageRequest( pageIndex: map['PageIndex'], pageSize: map['PageSize'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); map['PageIndex'] = pageIndex; map['PageSize'] = pageSize; return map; } } enum QueryConsultationStatusEnum { All, Applied, Withdrawn, Rejected, ToStart, InProgress, PendingReport, End, } enum ConsultationQueryTypeEnum { All, MyApply, MyArrange, MyJoin, } enum QueryEvaluateGradeEnum { All, UnSet, Dissatisfaction, General, Satisfaction, } class FindConsultationByPageRequest extends PageRequest{ String? keyword; DateTime? startDate; DateTime? endDate; QueryConsultationStatusEnum consultationStatus; ConsultationQueryTypeEnum consultationQueryType; QueryEvaluateGradeEnum evaluateGrade; String? language; FindConsultationByPageRequest({ this.keyword, this.startDate, this.endDate, this.consultationStatus = QueryConsultationStatusEnum.All, this.consultationQueryType = ConsultationQueryTypeEnum.All, this.evaluateGrade = QueryEvaluateGradeEnum.All, this.language, int pageIndex = 0, int pageSize = 0, String? token, }) : super( pageIndex: pageIndex, pageSize: pageSize, token: token, ); factory FindConsultationByPageRequest.fromJson(Map map) { return FindConsultationByPageRequest( keyword: map['Keyword'], startDate: map['StartDate'] != null ? DateTime.parse(map['StartDate']) : null, endDate: map['EndDate'] != null ? DateTime.parse(map['EndDate']) : null, consultationStatus: QueryConsultationStatusEnum.values.firstWhere((e) => e.index == map['ConsultationStatus']), consultationQueryType: ConsultationQueryTypeEnum.values.firstWhere((e) => e.index == map['ConsultationQueryType']), evaluateGrade: QueryEvaluateGradeEnum.values.firstWhere((e) => e.index == map['EvaluateGrade']), language: map['Language'], pageIndex: map['PageIndex'], pageSize: map['PageSize'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(keyword != null) map['Keyword'] = keyword; if(startDate != null) map['StartDate'] = JsonRpcUtils.dateFormat(startDate!); if(endDate != null) map['EndDate'] = JsonRpcUtils.dateFormat(endDate!); map['ConsultationStatus'] = consultationStatus.index; map['ConsultationQueryType'] = consultationQueryType.index; map['EvaluateGrade'] = evaluateGrade.index; if(language != null) map['Language'] = language; return map; } } enum OrganizationPatientTypeEnum { Person, Animals, } enum RemedicalFileDataTypeEnum { VinnoVidSingle, ThirdVidSingle, VinnoVidMovie, ThirdVidMovie, Image, } class ConsultationFileDTO { String? sourceUrl; String? previewImageUrl; String? coverImageUrl; DateTime? createTime; String? creatorCode; RemedicalFileDataTypeEnum fileDataType; ConsultationFileDTO({ this.sourceUrl, this.previewImageUrl, this.coverImageUrl, this.createTime, this.creatorCode, this.fileDataType = RemedicalFileDataTypeEnum.VinnoVidSingle, }); factory ConsultationFileDTO.fromJson(Map map) { return ConsultationFileDTO( sourceUrl: map['SourceUrl'], previewImageUrl: map['PreviewImageUrl'], coverImageUrl: map['CoverImageUrl'], createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null, creatorCode: map['CreatorCode'], fileDataType: RemedicalFileDataTypeEnum.values.firstWhere((e) => e.index == map['FileDataType']), ); } Map toJson() { final map = Map(); if(sourceUrl != null) map['SourceUrl'] = sourceUrl; if(previewImageUrl != null) map['PreviewImageUrl'] = previewImageUrl; if(coverImageUrl != null) map['CoverImageUrl'] = coverImageUrl; if(createTime != null) map['CreateTime'] = JsonRpcUtils.dateFormat(createTime!); if(creatorCode != null) map['CreatorCode'] = creatorCode; map['FileDataType'] = fileDataType.index; return map; } } class ConsultationMemberDTO { String? memberCode; String? memberOrganizationCode; String? memberDepartmentCode; LiveConsultationMemberStatus memberStatus; DateTime? memberOperateTime; ConsultationMemberDTO({ this.memberCode, this.memberOrganizationCode, this.memberDepartmentCode, this.memberStatus = LiveConsultationMemberStatus.Default, this.memberOperateTime, }); factory ConsultationMemberDTO.fromJson(Map map) { return ConsultationMemberDTO( memberCode: map['MemberCode'], memberOrganizationCode: map['MemberOrganizationCode'], memberDepartmentCode: map['MemberDepartmentCode'], memberStatus: LiveConsultationMemberStatus.values.firstWhere((e) => e.index == map['MemberStatus']), memberOperateTime: map['MemberOperateTime'] != null ? DateTime.parse(map['MemberOperateTime']) : null, ); } Map toJson() { final map = Map(); if(memberCode != null) map['MemberCode'] = memberCode; if(memberOrganizationCode != null) map['MemberOrganizationCode'] = memberOrganizationCode; if(memberDepartmentCode != null) map['MemberDepartmentCode'] = memberDepartmentCode; map['MemberStatus'] = memberStatus.index; if(memberOperateTime != null) map['MemberOperateTime'] = JsonRpcUtils.dateFormat(memberOperateTime!); return map; } } enum ConsultationReminderTimeEnum { FifteenMinutes, ThirtyMinutes, SixtyMinutes, OneDay, } enum ConsultationReminderMode { Application, SMS, } class ConsultationReminderDTO { ConsultationReminderTimeEnum consultationReminderTime; ConsultationReminderMode consultationReminderMode; ConsultationReminderDTO({ this.consultationReminderTime = ConsultationReminderTimeEnum.FifteenMinutes, this.consultationReminderMode = ConsultationReminderMode.Application, }); factory ConsultationReminderDTO.fromJson(Map map) { return ConsultationReminderDTO( consultationReminderTime: ConsultationReminderTimeEnum.values.firstWhere((e) => e.index == map['ConsultationReminderTime']), consultationReminderMode: ConsultationReminderMode.values.firstWhere((e) => e.index == map['ConsultationReminderMode']), ); } Map toJson() { final map = Map(); map['ConsultationReminderTime'] = consultationReminderTime.index; map['ConsultationReminderMode'] = consultationReminderMode.index; return map; } } class ConsultationDetailDTO { String? consultationCode; String? applyOrganizationCode; String? applyDepartmentCode; String? applyUserCode; String? expertOrganizationCode; String? expertDepartmentCode; String? expertUserCode; String? deviceCode; String? operateUserCode; String? scanUserCode; String? patientCode; OrganizationPatientTypeEnum patientType; String? scanPosition; DateTime? createTime; DateTime? consultationTime; DateTime? consultationTimeEnd; TransactionStatusEnum consultationStatus; String? applyOrganizationName; String? applyUserName; String? operateUserName; String? scanUserName; String? expertOrganizationName; String? expertUserName; String? deviceName; String? patientName; String? sex; List? patientDatas; List? fileInfos; String? rejectReason; String? location; List? consultationMembers; String? description; List? consultationReminders; String? approverCode; ConsultationReportMode reportMode; String? diseases; String? primaryDiagnosis; String? initiatorCode; ConsultationDetailDTO({ this.consultationCode, this.applyOrganizationCode, this.applyDepartmentCode, this.applyUserCode, this.expertOrganizationCode, this.expertDepartmentCode, this.expertUserCode, this.deviceCode, this.operateUserCode, this.scanUserCode, this.patientCode, this.patientType = OrganizationPatientTypeEnum.Person, this.scanPosition, this.createTime, this.consultationTime, this.consultationTimeEnd, this.consultationStatus = TransactionStatusEnum.Applied, this.applyOrganizationName, this.applyUserName, this.operateUserName, this.scanUserName, this.expertOrganizationName, this.expertUserName, this.deviceName, this.patientName, this.sex, this.patientDatas, this.fileInfos, this.rejectReason, this.location, this.consultationMembers, this.description, this.consultationReminders, this.approverCode, this.reportMode = ConsultationReportMode.ExpertReport, this.diseases, this.primaryDiagnosis, this.initiatorCode, }); factory ConsultationDetailDTO.fromJson(Map map) { return ConsultationDetailDTO( consultationCode: map['ConsultationCode'], applyOrganizationCode: map['ApplyOrganizationCode'], applyDepartmentCode: map['ApplyDepartmentCode'], applyUserCode: map['ApplyUserCode'], expertOrganizationCode: map['ExpertOrganizationCode'], expertDepartmentCode: map['ExpertDepartmentCode'], expertUserCode: map['ExpertUserCode'], deviceCode: map['DeviceCode'], operateUserCode: map['OperateUserCode'], scanUserCode: map['ScanUserCode'], patientCode: map['PatientCode'], patientType: OrganizationPatientTypeEnum.values.firstWhere((e) => e.index == map['PatientType']), scanPosition: map['ScanPosition'], createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null, consultationTime: map['ConsultationTime'] != null ? DateTime.parse(map['ConsultationTime']) : null, consultationTimeEnd: map['ConsultationTimeEnd'] != null ? DateTime.parse(map['ConsultationTimeEnd']) : null, consultationStatus: TransactionStatusEnum.values.firstWhere((e) => e.index == map['ConsultationStatus']), applyOrganizationName: map['ApplyOrganizationName'], applyUserName: map['ApplyUserName'], operateUserName: map['OperateUserName'], scanUserName: map['ScanUserName'], expertOrganizationName: map['ExpertOrganizationName'], expertUserName: map['ExpertUserName'], deviceName: map['DeviceName'], patientName: map['PatientName'], sex: map['Sex'], patientDatas: map['PatientDatas'] != null ? (map['PatientDatas'] as List).map((e)=>DataItemDTO.fromJson(e as Map)).toList() : null, fileInfos: map['FileInfos'] != null ? (map['FileInfos'] as List).map((e)=>ConsultationFileDTO.fromJson(e as Map)).toList() : null, rejectReason: map['RejectReason'], location: map['Location'], consultationMembers: map['ConsultationMembers'] != null ? (map['ConsultationMembers'] as List).map((e)=>ConsultationMemberDTO.fromJson(e as Map)).toList() : null, description: map['Description'], consultationReminders: map['ConsultationReminders'] != null ? (map['ConsultationReminders'] as List).map((e)=>ConsultationReminderDTO.fromJson(e as Map)).toList() : null, approverCode: map['ApproverCode'], reportMode: ConsultationReportMode.values.firstWhere((e) => e.index == map['ReportMode']), diseases: map['Diseases'], primaryDiagnosis: map['PrimaryDiagnosis'], initiatorCode: map['InitiatorCode'], ); } Map toJson() { final map = Map(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; if(applyOrganizationCode != null) map['ApplyOrganizationCode'] = applyOrganizationCode; if(applyDepartmentCode != null) map['ApplyDepartmentCode'] = applyDepartmentCode; if(applyUserCode != null) map['ApplyUserCode'] = applyUserCode; if(expertOrganizationCode != null) map['ExpertOrganizationCode'] = expertOrganizationCode; if(expertDepartmentCode != null) map['ExpertDepartmentCode'] = expertDepartmentCode; if(expertUserCode != null) map['ExpertUserCode'] = expertUserCode; if(deviceCode != null) map['DeviceCode'] = deviceCode; if(operateUserCode != null) map['OperateUserCode'] = operateUserCode; if(scanUserCode != null) map['ScanUserCode'] = scanUserCode; if(patientCode != null) map['PatientCode'] = patientCode; map['PatientType'] = patientType.index; if(scanPosition != null) map['ScanPosition'] = scanPosition; if(createTime != null) map['CreateTime'] = JsonRpcUtils.dateFormat(createTime!); if(consultationTime != null) map['ConsultationTime'] = JsonRpcUtils.dateFormat(consultationTime!); if(consultationTimeEnd != null) map['ConsultationTimeEnd'] = JsonRpcUtils.dateFormat(consultationTimeEnd!); map['ConsultationStatus'] = consultationStatus.index; if(applyOrganizationName != null) map['ApplyOrganizationName'] = applyOrganizationName; if(applyUserName != null) map['ApplyUserName'] = applyUserName; if(operateUserName != null) map['OperateUserName'] = operateUserName; if(scanUserName != null) map['ScanUserName'] = scanUserName; if(expertOrganizationName != null) map['ExpertOrganizationName'] = expertOrganizationName; if(expertUserName != null) map['ExpertUserName'] = expertUserName; if(deviceName != null) map['DeviceName'] = deviceName; if(patientName != null) map['PatientName'] = patientName; if(sex != null) map['Sex'] = sex; if(patientDatas != null) map['PatientDatas'] = patientDatas; if(fileInfos != null) map['FileInfos'] = fileInfos; if(rejectReason != null) map['RejectReason'] = rejectReason; if(location != null) map['Location'] = location; if(consultationMembers != null) map['ConsultationMembers'] = consultationMembers; if(description != null) map['Description'] = description; if(consultationReminders != null) map['ConsultationReminders'] = consultationReminders; if(approverCode != null) map['ApproverCode'] = approverCode; map['ReportMode'] = reportMode.index; if(diseases != null) map['Diseases'] = diseases; if(primaryDiagnosis != null) map['PrimaryDiagnosis'] = primaryDiagnosis; if(initiatorCode != null) map['InitiatorCode'] = initiatorCode; return map; } } class FindConsultationDetailRequest extends TokenRequest{ String? consultationCode; FindConsultationDetailRequest({ this.consultationCode, String? token, }) : super( token: token, ); factory FindConsultationDetailRequest.fromJson(Map map) { return FindConsultationDetailRequest( consultationCode: map['ConsultationCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class ApprovalConsultationRequest extends TokenRequest{ String? consultationCode; String? expertUserCode; DateTime? consultationTime; DateTime? consultationTimeEnd; String? location; List? consultationMemberCodes; String? description; List? consultationReminders; ApprovalConsultationRequest({ this.consultationCode, this.expertUserCode, this.consultationTime, this.consultationTimeEnd, this.location, this.consultationMemberCodes, this.description, this.consultationReminders, String? token, }) : super( token: token, ); factory ApprovalConsultationRequest.fromJson(Map map) { return ApprovalConsultationRequest( consultationCode: map['ConsultationCode'], expertUserCode: map['ExpertUserCode'], consultationTime: map['ConsultationTime'] != null ? DateTime.parse(map['ConsultationTime']) : null, consultationTimeEnd: map['ConsultationTimeEnd'] != null ? DateTime.parse(map['ConsultationTimeEnd']) : null, location: map['Location'], consultationMemberCodes: map['ConsultationMemberCodes'] != null ? map['ConsultationMemberCodes'].cast().toList() : null, description: map['Description'], consultationReminders: map['ConsultationReminders'] != null ? (map['ConsultationReminders'] as List).map((e)=>ConsultationReminderDTO.fromJson(e as Map)).toList() : null, token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; if(expertUserCode != null) map['ExpertUserCode'] = expertUserCode; if(consultationTime != null) map['ConsultationTime'] = JsonRpcUtils.dateFormat(consultationTime!); if(consultationTimeEnd != null) map['ConsultationTimeEnd'] = JsonRpcUtils.dateFormat(consultationTimeEnd!); if(location != null) map['Location'] = location; if(consultationMemberCodes != null) map['ConsultationMemberCodes'] = consultationMemberCodes; if(description != null) map['Description'] = description; if(consultationReminders != null) map['ConsultationReminders'] = consultationReminders; return map; } } class RejectApplyConsultationRequest extends TokenRequest{ String? consultationCode; String? reason; RejectApplyConsultationRequest({ this.consultationCode, this.reason, String? token, }) : super( token: token, ); factory RejectApplyConsultationRequest.fromJson(Map map) { return RejectApplyConsultationRequest( consultationCode: map['ConsultationCode'], reason: map['Reason'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; if(reason != null) map['Reason'] = reason; return map; } } class RevokeConsultationRequest extends TokenRequest{ String? consultationCode; RevokeConsultationRequest({ this.consultationCode, String? token, }) : super( token: token, ); factory RevokeConsultationRequest.fromJson(Map map) { return RevokeConsultationRequest( consultationCode: map['ConsultationCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class DeleteConsultationRequest extends TokenRequest{ String? consultationCode; DeleteConsultationRequest({ this.consultationCode, String? token, }) : super( token: token, ); factory DeleteConsultationRequest.fromJson(Map map) { return DeleteConsultationRequest( consultationCode: map['ConsultationCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class ConsultationFileBaseDTO { String? sourceUrl; String? previewImageUrl; String? coverImageUrl; RemedicalFileDataTypeEnum fileDataType; ConsultationFileBaseDTO({ this.sourceUrl, this.previewImageUrl, this.coverImageUrl, this.fileDataType = RemedicalFileDataTypeEnum.VinnoVidSingle, }); factory ConsultationFileBaseDTO.fromJson(Map map) { return ConsultationFileBaseDTO( sourceUrl: map['SourceUrl'], previewImageUrl: map['PreviewImageUrl'], coverImageUrl: map['CoverImageUrl'], fileDataType: RemedicalFileDataTypeEnum.values.firstWhere((e) => e.index == map['FileDataType']), ); } Map toJson() { final map = Map(); if(sourceUrl != null) map['SourceUrl'] = sourceUrl; if(previewImageUrl != null) map['PreviewImageUrl'] = previewImageUrl; if(coverImageUrl != null) map['CoverImageUrl'] = coverImageUrl; map['FileDataType'] = fileDataType.index; return map; } } class UpdateConsultationFilesInfoRequest extends TokenRequest{ String? consultationCode; List? fileInfos; UpdateConsultationFilesInfoRequest({ this.consultationCode, this.fileInfos, String? token, }) : super( token: token, ); factory UpdateConsultationFilesInfoRequest.fromJson(Map map) { return UpdateConsultationFilesInfoRequest( consultationCode: map['ConsultationCode'], fileInfos: map['FileInfos'] != null ? (map['FileInfos'] as List).map((e)=>ConsultationFileBaseDTO.fromJson(e as Map)).toList() : null, token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; if(fileInfos != null) map['FileInfos'] = fileInfos; return map; } } class ConsultationAssistantDTO extends UserBaseDTO{ String? fullName; ConsultationAssistantDTO({ this.fullName, String? userCode, String? userName, String? headImageUrl, DateTime? createTime, DateTime? updateTime, }) : super( userCode: userCode, userName: userName, headImageUrl: headImageUrl, createTime: createTime, updateTime: updateTime, ); factory ConsultationAssistantDTO.fromJson(Map map) { return ConsultationAssistantDTO( fullName: map['FullName'], userCode: map['UserCode'], userName: map['UserName'], headImageUrl: map['HeadImageUrl'], createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null, updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null, ); } Map toJson() { final map = super.toJson(); if(fullName != null) map['FullName'] = fullName; return map; } } class FindOrganizationAssistantsRequest extends TokenRequest{ String? assistantName; FindOrganizationAssistantsRequest({ this.assistantName, String? token, }) : super( token: token, ); factory FindOrganizationAssistantsRequest.fromJson(Map map) { return FindOrganizationAssistantsRequest( assistantName: map['AssistantName'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(assistantName != null) map['AssistantName'] = assistantName; return map; } } class ConsultationAssistantDoctorDTO extends UserBaseDTO{ String? fullName; ConsultationAssistantDoctorDTO({ this.fullName, String? userCode, String? userName, String? headImageUrl, DateTime? createTime, DateTime? updateTime, }) : super( userCode: userCode, userName: userName, headImageUrl: headImageUrl, createTime: createTime, updateTime: updateTime, ); factory ConsultationAssistantDoctorDTO.fromJson(Map map) { return ConsultationAssistantDoctorDTO( fullName: map['FullName'], userCode: map['UserCode'], userName: map['UserName'], headImageUrl: map['HeadImageUrl'], createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null, updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null, ); } Map toJson() { final map = super.toJson(); if(fullName != null) map['FullName'] = fullName; return map; } } class FindOrganizationAssistantDoctorsRequest extends TokenRequest{ String? assistantDoctorName; FindOrganizationAssistantDoctorsRequest({ this.assistantDoctorName, String? token, }) : super( token: token, ); factory FindOrganizationAssistantDoctorsRequest.fromJson(Map map) { return FindOrganizationAssistantDoctorsRequest( assistantDoctorName: map['AssistantDoctorName'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(assistantDoctorName != null) map['AssistantDoctorName'] = assistantDoctorName; return map; } } class UpdateMyOrganizationAssistantRequest extends TokenRequest{ String? assistantUserCode; String? assistantDoctorUserCode; UpdateMyOrganizationAssistantRequest({ this.assistantUserCode, this.assistantDoctorUserCode, String? token, }) : super( token: token, ); factory UpdateMyOrganizationAssistantRequest.fromJson(Map map) { return UpdateMyOrganizationAssistantRequest( assistantUserCode: map['AssistantUserCode'], assistantDoctorUserCode: map['AssistantDoctorUserCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(assistantUserCode != null) map['AssistantUserCode'] = assistantUserCode; if(assistantDoctorUserCode != null) map['AssistantDoctorUserCode'] = assistantDoctorUserCode; return map; } } class ClientPatientInfoBaseDTO extends BaseDTO{ String? patientCode; bool isValid; List? patientData; int unReadRecordCount; bool isReferral; List? devicePatientIDs; ClientPatientInfoBaseDTO({ this.patientCode, this.isValid = false, this.patientData, this.unReadRecordCount = 0, this.isReferral = false, this.devicePatientIDs, DateTime? createTime, DateTime? updateTime, }) : super( createTime: createTime, updateTime: updateTime, ); factory ClientPatientInfoBaseDTO.fromJson(Map map) { return ClientPatientInfoBaseDTO( patientCode: map['PatientCode'], isValid: map['IsValid'], patientData: map['PatientData'] != null ? (map['PatientData'] as List).map((e)=>DataItemDTO.fromJson(e as Map)).toList() : null, unReadRecordCount: map['UnReadRecordCount'], isReferral: map['IsReferral'], devicePatientIDs: map['DevicePatientIDs'] != null ? map['DevicePatientIDs'].cast().toList() : null, createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null, updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null, ); } Map toJson() { final map = super.toJson(); if(patientCode != null) map['PatientCode'] = patientCode; map['IsValid'] = isValid; if(patientData != null) map['PatientData'] = patientData; map['UnReadRecordCount'] = unReadRecordCount; map['IsReferral'] = isReferral; if(devicePatientIDs != null) map['DevicePatientIDs'] = devicePatientIDs; return map; } } class FindConsultationPatientPageRequest extends PageRequest{ String? keyword; DateTime? startDate; DateTime? endDate; FindConsultationPatientPageRequest({ this.keyword, this.startDate, this.endDate, int pageIndex = 0, int pageSize = 0, String? token, }) : super( pageIndex: pageIndex, pageSize: pageSize, token: token, ); factory FindConsultationPatientPageRequest.fromJson(Map map) { return FindConsultationPatientPageRequest( keyword: map['Keyword'], startDate: map['StartDate'] != null ? DateTime.parse(map['StartDate']) : null, endDate: map['EndDate'] != null ? DateTime.parse(map['EndDate']) : null, pageIndex: map['PageIndex'], pageSize: map['PageSize'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(keyword != null) map['Keyword'] = keyword; if(startDate != null) map['StartDate'] = JsonRpcUtils.dateFormat(startDate!); if(endDate != null) map['EndDate'] = JsonRpcUtils.dateFormat(endDate!); return map; } } class InitiateLiveConsultationResult { String? consultationCode; String? initiatorCode; int roomNo; int appId; String? userSign; List? memberLiveDatas; InitiateLiveConsultationResult({ this.consultationCode, this.initiatorCode, this.roomNo = 0, this.appId = 0, this.userSign, this.memberLiveDatas, }); factory InitiateLiveConsultationResult.fromJson(Map map) { return InitiateLiveConsultationResult( consultationCode: map['ConsultationCode'], initiatorCode: map['InitiatorCode'], roomNo: map['RoomNo'], appId: map['AppId'], userSign: map['UserSign'], memberLiveDatas: map['MemberLiveDatas'] != null ? (map['MemberLiveDatas'] as List).map((e)=>LiveConsultationMember.fromJson(e as Map)).toList() : null, ); } Map toJson() { final map = Map(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; if(initiatorCode != null) map['InitiatorCode'] = initiatorCode; map['RoomNo'] = roomNo; map['AppId'] = appId; if(userSign != null) map['UserSign'] = userSign; if(memberLiveDatas != null) map['MemberLiveDatas'] = memberLiveDatas; return map; } } class InitiateLiveConsultationRequest extends TokenRequest{ String? consultationCode; InitiateLiveConsultationRequest({ this.consultationCode, String? token, }) : super( token: token, ); factory InitiateLiveConsultationRequest.fromJson(Map map) { return InitiateLiveConsultationRequest( consultationCode: map['ConsultationCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class InviteInLiveConsultationResult { String? consultationCode; InviteInLiveConsultationResult({ this.consultationCode, }); factory InviteInLiveConsultationResult.fromJson(Map map) { return InviteInLiveConsultationResult( consultationCode: map['ConsultationCode'], ); } Map toJson() { final map = Map(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class InviteInLiveConsultationRequest extends TokenRequest{ String? consultationCode; List? inviteCodes; int roomNo; InviteInLiveConsultationRequest({ this.consultationCode, this.inviteCodes, this.roomNo = 0, String? token, }) : super( token: token, ); factory InviteInLiveConsultationRequest.fromJson(Map map) { return InviteInLiveConsultationRequest( consultationCode: map['ConsultationCode'], inviteCodes: map['InviteCodes'] != null ? map['InviteCodes'].cast().toList() : null, roomNo: map['RoomNo'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; if(inviteCodes != null) map['InviteCodes'] = inviteCodes; map['RoomNo'] = roomNo; return map; } } class CancelInvitingInLiveConsultationResult { String? consultationCode; CancelInvitingInLiveConsultationResult({ this.consultationCode, }); factory CancelInvitingInLiveConsultationResult.fromJson(Map map) { return CancelInvitingInLiveConsultationResult( consultationCode: map['ConsultationCode'], ); } Map toJson() { final map = Map(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class CancelInvitingInLiveConsultationRequest extends TokenRequest{ String? consultationCode; List? inviteCodes; CancelInvitingInLiveConsultationRequest({ this.consultationCode, this.inviteCodes, String? token, }) : super( token: token, ); factory CancelInvitingInLiveConsultationRequest.fromJson(Map map) { return CancelInvitingInLiveConsultationRequest( consultationCode: map['ConsultationCode'], inviteCodes: map['InviteCodes'] != null ? map['InviteCodes'].cast().toList() : null, token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; if(inviteCodes != null) map['InviteCodes'] = inviteCodes; return map; } } class RejectLiveConsultationResult { String? consultationCode; RejectLiveConsultationResult({ this.consultationCode, }); factory RejectLiveConsultationResult.fromJson(Map map) { return RejectLiveConsultationResult( consultationCode: map['ConsultationCode'], ); } Map toJson() { final map = Map(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class RejectLiveConsultationRequest extends TokenRequest{ String? consultationCode; RejectLiveConsultationRequest({ this.consultationCode, String? token, }) : super( token: token, ); factory RejectLiveConsultationRequest.fromJson(Map map) { return RejectLiveConsultationRequest( consultationCode: map['ConsultationCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class JoinLiveConsultationResult { String? consultationCode; JoinLiveConsultationResult({ this.consultationCode, }); factory JoinLiveConsultationResult.fromJson(Map map) { return JoinLiveConsultationResult( consultationCode: map['ConsultationCode'], ); } Map toJson() { final map = Map(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class JoinLiveConsultationRequest extends TokenRequest{ String? consultationCode; String? joinerCode; JoinLiveConsultationRequest({ this.consultationCode, this.joinerCode, String? token, }) : super( token: token, ); factory JoinLiveConsultationRequest.fromJson(Map map) { return JoinLiveConsultationRequest( consultationCode: map['ConsultationCode'], joinerCode: map['JoinerCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; if(joinerCode != null) map['JoinerCode'] = joinerCode; return map; } } class CancelLiveConsultationResult { String? consultationCode; CancelLiveConsultationResult({ this.consultationCode, }); factory CancelLiveConsultationResult.fromJson(Map map) { return CancelLiveConsultationResult( consultationCode: map['ConsultationCode'], ); } Map toJson() { final map = Map(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class CancelLiveConsultationRequest extends TokenRequest{ String? consultationCode; CancelLiveConsultationRequest({ this.consultationCode, String? token, }) : super( token: token, ); factory CancelLiveConsultationRequest.fromJson(Map map) { return CancelLiveConsultationRequest( consultationCode: map['ConsultationCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class AcceptLiveConsultationResult { String? consultationCode; String? userCode; int roomNo; int appId; String? userSign; List? memberLiveDatas; AcceptLiveConsultationResult({ this.consultationCode, this.userCode, this.roomNo = 0, this.appId = 0, this.userSign, this.memberLiveDatas, }); factory AcceptLiveConsultationResult.fromJson(Map map) { return AcceptLiveConsultationResult( consultationCode: map['ConsultationCode'], userCode: map['UserCode'], roomNo: map['RoomNo'], appId: map['AppId'], userSign: map['UserSign'], memberLiveDatas: map['MemberLiveDatas'] != null ? (map['MemberLiveDatas'] as List).map((e)=>LiveConsultationMember.fromJson(e as Map)).toList() : null, ); } Map toJson() { final map = Map(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; if(userCode != null) map['UserCode'] = userCode; map['RoomNo'] = roomNo; map['AppId'] = appId; if(userSign != null) map['UserSign'] = userSign; if(memberLiveDatas != null) map['MemberLiveDatas'] = memberLiveDatas; return map; } } class AcceptLiveConsultationRequest extends TokenRequest{ String? consultationCode; AcceptLiveConsultationRequest({ this.consultationCode, String? token, }) : super( token: token, ); factory AcceptLiveConsultationRequest.fromJson(Map map) { return AcceptLiveConsultationRequest( consultationCode: map['ConsultationCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class LeaveLiveConsultationResult { String? consultationCode; LeaveLiveConsultationResult({ this.consultationCode, }); factory LeaveLiveConsultationResult.fromJson(Map map) { return LeaveLiveConsultationResult( consultationCode: map['ConsultationCode'], ); } Map toJson() { final map = Map(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class LeaveLiveConsultationRequest extends TokenRequest{ String? consultationCode; String? leaverCode; LeaveLiveConsultationRequest({ this.consultationCode, this.leaverCode, String? token, }) : super( token: token, ); factory LeaveLiveConsultationRequest.fromJson(Map map) { return LeaveLiveConsultationRequest( consultationCode: map['ConsultationCode'], leaverCode: map['LeaverCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; if(leaverCode != null) map['LeaverCode'] = leaverCode; return map; } } class MuteLiveConsultationResult { String? consultationCode; MuteLiveConsultationResult({ this.consultationCode, }); factory MuteLiveConsultationResult.fromJson(Map map) { return MuteLiveConsultationResult( consultationCode: map['ConsultationCode'], ); } Map toJson() { final map = Map(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class MuteLiveConsultationRequest extends TokenRequest{ String? consultationCode; String? memberCode; bool mute; MuteLiveConsultationRequest({ this.consultationCode, this.memberCode, this.mute = false, String? token, }) : super( token: token, ); factory MuteLiveConsultationRequest.fromJson(Map map) { return MuteLiveConsultationRequest( consultationCode: map['ConsultationCode'], memberCode: map['MemberCode'], mute: map['Mute'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; if(memberCode != null) map['MemberCode'] = memberCode; map['Mute'] = mute; return map; } } class SwitchLiveConsultationVideoResult { String? consultationCode; SwitchLiveConsultationVideoResult({ this.consultationCode, }); factory SwitchLiveConsultationVideoResult.fromJson(Map map) { return SwitchLiveConsultationVideoResult( consultationCode: map['ConsultationCode'], ); } Map toJson() { final map = Map(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class SwitchLiveConsultationVideoRequest extends TokenRequest{ String? consultationCode; bool opened; SwitchLiveConsultationVideoRequest({ this.consultationCode, this.opened = false, String? token, }) : super( token: token, ); factory SwitchLiveConsultationVideoRequest.fromJson(Map map) { return SwitchLiveConsultationVideoRequest( consultationCode: map['ConsultationCode'], opened: map['Opened'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; map['Opened'] = opened; return map; } } class LiveConsultationHeartRateResult { String? consultationCode; LiveConsultationHeartRateResult({ this.consultationCode, }); factory LiveConsultationHeartRateResult.fromJson(Map map) { return LiveConsultationHeartRateResult( consultationCode: map['ConsultationCode'], ); } Map toJson() { final map = Map(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class LiveConsultationHeartRateRequest extends TokenRequest{ String? consultationCode; LiveConsultationHeartRateRequest({ this.consultationCode, String? token, }) : super( token: token, ); factory LiveConsultationHeartRateRequest.fromJson(Map map) { return LiveConsultationHeartRateRequest( consultationCode: map['ConsultationCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class BoardPointDTO { double x; double y; BoardPointDTO({ this.x = 0, this.y = 0, }); factory BoardPointDTO.fromJson(Map map) { return BoardPointDTO( x: double.parse(map['X'].toString()), y: double.parse(map['Y'].toString()), ); } Map toJson() { final map = Map(); map['X'] = x; map['Y'] = y; return map; } } enum BoardTypeEnum { ReadOnly, Ink, Line, Erase, } class SendInteractiveBoardDataRequest extends TokenRequest{ String? inkColor; double inkThickness; List? points; BoardTypeEnum boardEditType; String? consultationCode; SendInteractiveBoardDataRequest({ this.inkColor, this.inkThickness = 0, this.points, this.boardEditType = BoardTypeEnum.ReadOnly, this.consultationCode, String? token, }) : super( token: token, ); factory SendInteractiveBoardDataRequest.fromJson(Map map) { return SendInteractiveBoardDataRequest( inkColor: map['InkColor'], inkThickness: double.parse(map['InkThickness'].toString()), points: map['Points'] != null ? (map['Points'] as List).map((e)=>BoardPointDTO.fromJson(e as Map)).toList() : null, boardEditType: BoardTypeEnum.values.firstWhere((e) => e.index == map['BoardEditType']), consultationCode: map['ConsultationCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(inkColor != null) map['InkColor'] = inkColor; map['InkThickness'] = inkThickness; if(points != null) map['Points'] = points; map['BoardEditType'] = boardEditType.index; if(consultationCode != null) map['ConsultationCode'] = consultationCode; return map; } } class AddFollowUpVisitInfoRequest extends TokenRequest{ String? consultationRecordCode; String? patientName; String? patientPhone; String? generalCase; String? clinicalSituation; String? doctorCode; DateTime? occurredTime; AddFollowUpVisitInfoRequest({ this.consultationRecordCode, this.patientName, this.patientPhone, this.generalCase, this.clinicalSituation, this.doctorCode, this.occurredTime, String? token, }) : super( token: token, ); factory AddFollowUpVisitInfoRequest.fromJson(Map map) { return AddFollowUpVisitInfoRequest( consultationRecordCode: map['ConsultationRecordCode'], patientName: map['PatientName'], patientPhone: map['PatientPhone'], generalCase: map['GeneralCase'], clinicalSituation: map['ClinicalSituation'], doctorCode: map['DoctorCode'], occurredTime: map['OccurredTime'] != null ? DateTime.parse(map['OccurredTime']) : null, token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationRecordCode != null) map['ConsultationRecordCode'] = consultationRecordCode; if(patientName != null) map['PatientName'] = patientName; if(patientPhone != null) map['PatientPhone'] = patientPhone; if(generalCase != null) map['GeneralCase'] = generalCase; if(clinicalSituation != null) map['ClinicalSituation'] = clinicalSituation; if(doctorCode != null) map['DoctorCode'] = doctorCode; if(occurredTime != null) map['OccurredTime'] = JsonRpcUtils.dateFormat(occurredTime!); return map; } } class DeleteFollowUpVisitInfoRequest extends TokenRequest{ String? followUpVisitCode; DeleteFollowUpVisitInfoRequest({ this.followUpVisitCode, String? token, }) : super( token: token, ); factory DeleteFollowUpVisitInfoRequest.fromJson(Map map) { return DeleteFollowUpVisitInfoRequest( followUpVisitCode: map['FollowUpVisitCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(followUpVisitCode != null) map['FollowUpVisitCode'] = followUpVisitCode; return map; } } class UpdateFollowUpVisitInfoRequest extends TokenRequest{ String? followUpVisitCode; String? generalCase; String? clinicalSituation; UpdateFollowUpVisitInfoRequest({ this.followUpVisitCode, this.generalCase, this.clinicalSituation, String? token, }) : super( token: token, ); factory UpdateFollowUpVisitInfoRequest.fromJson(Map map) { return UpdateFollowUpVisitInfoRequest( followUpVisitCode: map['FollowUpVisitCode'], generalCase: map['GeneralCase'], clinicalSituation: map['ClinicalSituation'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(followUpVisitCode != null) map['FollowUpVisitCode'] = followUpVisitCode; if(generalCase != null) map['GeneralCase'] = generalCase; if(clinicalSituation != null) map['ClinicalSituation'] = clinicalSituation; return map; } } class FollowUpVisitDTO { String? followUpVisitCode; String? consultationRecordCode; String? patientName; String? patientPhone; String? generalCase; String? clinicalSituation; String? doctorCode; String? doctorName; DateTime? occurredTime; FollowUpVisitDTO({ this.followUpVisitCode, this.consultationRecordCode, this.patientName, this.patientPhone, this.generalCase, this.clinicalSituation, this.doctorCode, this.doctorName, this.occurredTime, }); factory FollowUpVisitDTO.fromJson(Map map) { return FollowUpVisitDTO( followUpVisitCode: map['FollowUpVisitCode'], consultationRecordCode: map['ConsultationRecordCode'], patientName: map['PatientName'], patientPhone: map['PatientPhone'], generalCase: map['GeneralCase'], clinicalSituation: map['ClinicalSituation'], doctorCode: map['DoctorCode'], doctorName: map['DoctorName'], occurredTime: map['OccurredTime'] != null ? DateTime.parse(map['OccurredTime']) : null, ); } Map toJson() { final map = Map(); if(followUpVisitCode != null) map['FollowUpVisitCode'] = followUpVisitCode; if(consultationRecordCode != null) map['ConsultationRecordCode'] = consultationRecordCode; if(patientName != null) map['PatientName'] = patientName; if(patientPhone != null) map['PatientPhone'] = patientPhone; if(generalCase != null) map['GeneralCase'] = generalCase; if(clinicalSituation != null) map['ClinicalSituation'] = clinicalSituation; if(doctorCode != null) map['DoctorCode'] = doctorCode; if(doctorName != null) map['DoctorName'] = doctorName; if(occurredTime != null) map['OccurredTime'] = JsonRpcUtils.dateFormat(occurredTime!); return map; } } class GetFollowUpVisitInfoRequest extends TokenRequest{ String? consultationRecordCode; GetFollowUpVisitInfoRequest({ this.consultationRecordCode, String? token, }) : super( token: token, ); factory GetFollowUpVisitInfoRequest.fromJson(Map map) { return GetFollowUpVisitInfoRequest( consultationRecordCode: map['ConsultationRecordCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationRecordCode != null) map['ConsultationRecordCode'] = consultationRecordCode; return map; } } class GetFollowUpVisitInfoDetailRequest extends TokenRequest{ String? followUpVisitCode; GetFollowUpVisitInfoDetailRequest({ this.followUpVisitCode, String? token, }) : super( token: token, ); factory GetFollowUpVisitInfoDetailRequest.fromJson(Map map) { return GetFollowUpVisitInfoDetailRequest( followUpVisitCode: map['FollowUpVisitCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(followUpVisitCode != null) map['FollowUpVisitCode'] = followUpVisitCode; return map; } } class SetNeedFollowUpVisitRequest extends TokenRequest{ String? consultationRecordCode; bool isNeed; SetNeedFollowUpVisitRequest({ this.consultationRecordCode, this.isNeed = false, String? token, }) : super( token: token, ); factory SetNeedFollowUpVisitRequest.fromJson(Map map) { return SetNeedFollowUpVisitRequest( consultationRecordCode: map['ConsultationRecordCode'], isNeed: map['IsNeed'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationRecordCode != null) map['ConsultationRecordCode'] = consultationRecordCode; map['IsNeed'] = isNeed; return map; } } class AddConsultationEvaluateRequest extends TokenRequest{ String? consultationRecordCode; double evaluateScore; String? feedback; AddConsultationEvaluateRequest({ this.consultationRecordCode, this.evaluateScore = 0, this.feedback, String? token, }) : super( token: token, ); factory AddConsultationEvaluateRequest.fromJson(Map map) { return AddConsultationEvaluateRequest( consultationRecordCode: map['ConsultationRecordCode'], evaluateScore: double.parse(map['EvaluateScore'].toString()), feedback: map['Feedback'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationRecordCode != null) map['ConsultationRecordCode'] = consultationRecordCode; map['EvaluateScore'] = evaluateScore; if(feedback != null) map['Feedback'] = feedback; return map; } } class DeleteConsultationEvaluateRequest extends TokenRequest{ String? consultationEvaluateCode; DeleteConsultationEvaluateRequest({ this.consultationEvaluateCode, String? token, }) : super( token: token, ); factory DeleteConsultationEvaluateRequest.fromJson(Map map) { return DeleteConsultationEvaluateRequest( consultationEvaluateCode: map['ConsultationEvaluateCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationEvaluateCode != null) map['ConsultationEvaluateCode'] = consultationEvaluateCode; return map; } } class UpdateConsultationEvaluateRequest extends TokenRequest{ String? consultationEvaluateCode; double evaluateScore; String? feedback; UpdateConsultationEvaluateRequest({ this.consultationEvaluateCode, this.evaluateScore = 0, this.feedback, String? token, }) : super( token: token, ); factory UpdateConsultationEvaluateRequest.fromJson(Map map) { return UpdateConsultationEvaluateRequest( consultationEvaluateCode: map['ConsultationEvaluateCode'], evaluateScore: double.parse(map['EvaluateScore'].toString()), feedback: map['Feedback'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationEvaluateCode != null) map['ConsultationEvaluateCode'] = consultationEvaluateCode; map['EvaluateScore'] = evaluateScore; if(feedback != null) map['Feedback'] = feedback; return map; } } class ConsultationEvaluateDTO { String? consultationEvaluateCode; String? consultationRecordCode; EvaluateGradeEnum evaluateGrade; double evaluateScore; String? feedback; ConsultationEvaluateDTO({ this.consultationEvaluateCode, this.consultationRecordCode, this.evaluateGrade = EvaluateGradeEnum.UnSet, this.evaluateScore = 0, this.feedback, }); factory ConsultationEvaluateDTO.fromJson(Map map) { return ConsultationEvaluateDTO( consultationEvaluateCode: map['ConsultationEvaluateCode'], consultationRecordCode: map['ConsultationRecordCode'], evaluateGrade: EvaluateGradeEnum.values.firstWhere((e) => e.index == map['EvaluateGrade']), evaluateScore: double.parse(map['EvaluateScore'].toString()), feedback: map['Feedback'], ); } Map toJson() { final map = Map(); if(consultationEvaluateCode != null) map['ConsultationEvaluateCode'] = consultationEvaluateCode; if(consultationRecordCode != null) map['ConsultationRecordCode'] = consultationRecordCode; map['EvaluateGrade'] = evaluateGrade.index; map['EvaluateScore'] = evaluateScore; if(feedback != null) map['Feedback'] = feedback; return map; } } class GetConsultationEvaluateRequest extends TokenRequest{ String? consultationRecordCode; GetConsultationEvaluateRequest({ this.consultationRecordCode, String? token, }) : super( token: token, ); factory GetConsultationEvaluateRequest.fromJson(Map map) { return GetConsultationEvaluateRequest( consultationRecordCode: map['ConsultationRecordCode'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationRecordCode != null) map['ConsultationRecordCode'] = consultationRecordCode; return map; } } class AcceptInvitationRequest extends TokenRequest{ String? consultationRecordCode; bool isAgree; String? refusalCause; AcceptInvitationRequest({ this.consultationRecordCode, this.isAgree = false, this.refusalCause, String? token, }) : super( token: token, ); factory AcceptInvitationRequest.fromJson(Map map) { return AcceptInvitationRequest( consultationRecordCode: map['ConsultationRecordCode'], isAgree: map['IsAgree'], refusalCause: map['RefusalCause'], token: map['Token'], ); } Map toJson() { final map = super.toJson(); if(consultationRecordCode != null) map['ConsultationRecordCode'] = consultationRecordCode; map['IsAgree'] = isAgree; if(refusalCause != null) map['RefusalCause'] = refusalCause; return map; } }