report.m.dart 63 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366
  1. import 'education.m.dart';
  2. import 'remedical.m.dart';
  3. import 'liveConsultation.m.dart';
  4. import 'notification.m.dart';
  5. import 'package:fis_jsonrpc/utils.dart';
  6. enum ReportTemplateStatusTypeEnum {
  7. Unpublished,
  8. Published,
  9. }
  10. enum ReportTemplateTypeEnum {
  11. Default,
  12. Organization,
  13. Personal,
  14. }
  15. enum ReportTemplateUsageTypeEnum {
  16. People,
  17. Animal,
  18. }
  19. class ReportTemplateDTO {
  20. String? reportTemplateCode;
  21. String? reportTemplateName;
  22. ReportTemplateStatusTypeEnum reportTemplateStateType;
  23. ReportTemplateTypeEnum reportTemplateType;
  24. ReportTemplateUsageTypeEnum reportTemplateUsageType;
  25. String? organizationCode;
  26. String? personalCode;
  27. String? organizationName;
  28. String? personalName;
  29. String? reportTemplateJson;
  30. String? referenceReportTemplateCode;
  31. bool isDefault;
  32. bool isUserDefault;
  33. String? reportDatasJson;
  34. List<ReportPreviewDTO>? templatePreviewList;
  35. List<String>? templatePreviewUrlList;
  36. String? languageCode;
  37. ReportTemplateDTO({
  38. this.reportTemplateCode,
  39. this.reportTemplateName,
  40. this.reportTemplateStateType = ReportTemplateStatusTypeEnum.Unpublished,
  41. this.reportTemplateType = ReportTemplateTypeEnum.Default,
  42. this.reportTemplateUsageType = ReportTemplateUsageTypeEnum.People,
  43. this.organizationCode,
  44. this.personalCode,
  45. this.organizationName,
  46. this.personalName,
  47. this.reportTemplateJson,
  48. this.referenceReportTemplateCode,
  49. this.isDefault = false,
  50. this.isUserDefault = false,
  51. this.reportDatasJson,
  52. this.templatePreviewList,
  53. this.templatePreviewUrlList,
  54. this.languageCode,
  55. });
  56. factory ReportTemplateDTO.fromJson(Map<String, dynamic> map) {
  57. return ReportTemplateDTO(
  58. reportTemplateCode: map['ReportTemplateCode'],
  59. reportTemplateName: map['ReportTemplateName'],
  60. reportTemplateStateType: ReportTemplateStatusTypeEnum.values.firstWhere((e) => e.index == map['ReportTemplateStateType']),
  61. reportTemplateType: ReportTemplateTypeEnum.values.firstWhere((e) => e.index == map['ReportTemplateType']),
  62. reportTemplateUsageType: ReportTemplateUsageTypeEnum.values.firstWhere((e) => e.index == map['ReportTemplateUsageType']),
  63. organizationCode: map['OrganizationCode'],
  64. personalCode: map['PersonalCode'],
  65. organizationName: map['OrganizationName'],
  66. personalName: map['PersonalName'],
  67. reportTemplateJson: map['ReportTemplateJson'],
  68. referenceReportTemplateCode: map['ReferenceReportTemplateCode'],
  69. isDefault: map['IsDefault'],
  70. isUserDefault: map['IsUserDefault'],
  71. reportDatasJson: map['ReportDatasJson'],
  72. templatePreviewList: map['TemplatePreviewList'] != null ? (map['TemplatePreviewList'] as List).map((e)=>ReportPreviewDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  73. templatePreviewUrlList: map['TemplatePreviewUrlList']?.cast<String>().toList(),
  74. languageCode: map['LanguageCode'],
  75. );
  76. }
  77. Map<String, dynamic> toJson() {
  78. final map = Map<String, dynamic>();
  79. if (reportTemplateCode != null) {
  80. map['ReportTemplateCode'] = reportTemplateCode;
  81. }
  82. if (reportTemplateName != null) {
  83. map['ReportTemplateName'] = reportTemplateName;
  84. }
  85. map['ReportTemplateStateType'] = reportTemplateStateType.index;
  86. map['ReportTemplateType'] = reportTemplateType.index;
  87. map['ReportTemplateUsageType'] = reportTemplateUsageType.index;
  88. if (organizationCode != null) {
  89. map['OrganizationCode'] = organizationCode;
  90. }
  91. if (personalCode != null) {
  92. map['PersonalCode'] = personalCode;
  93. }
  94. if (organizationName != null) {
  95. map['OrganizationName'] = organizationName;
  96. }
  97. if (personalName != null) {
  98. map['PersonalName'] = personalName;
  99. }
  100. if (reportTemplateJson != null) {
  101. map['ReportTemplateJson'] = reportTemplateJson;
  102. }
  103. if (referenceReportTemplateCode != null) {
  104. map['ReferenceReportTemplateCode'] = referenceReportTemplateCode;
  105. }
  106. map['IsDefault'] = isDefault;
  107. map['IsUserDefault'] = isUserDefault;
  108. if (reportDatasJson != null) {
  109. map['ReportDatasJson'] = reportDatasJson;
  110. }
  111. if (templatePreviewList != null) {
  112. map['TemplatePreviewList'] = templatePreviewList;
  113. }
  114. if (templatePreviewUrlList != null) {
  115. map['TemplatePreviewUrlList'] = templatePreviewUrlList;
  116. }
  117. if (languageCode != null) {
  118. map['LanguageCode'] = languageCode;
  119. }
  120. return map;
  121. }
  122. }
  123. class FindReportTemplateByCodeRequest extends TokenRequest{
  124. String? reportTemplateCode;
  125. String? languageCode;
  126. FindReportTemplateByCodeRequest({
  127. this.reportTemplateCode,
  128. this.languageCode,
  129. String? token,
  130. }) : super(
  131. token: token,
  132. );
  133. factory FindReportTemplateByCodeRequest.fromJson(Map<String, dynamic> map) {
  134. return FindReportTemplateByCodeRequest(
  135. reportTemplateCode: map['ReportTemplateCode'],
  136. languageCode: map['LanguageCode'],
  137. token: map['Token'],
  138. );
  139. }
  140. Map<String, dynamic> toJson() {
  141. final map = super.toJson();
  142. if (reportTemplateCode != null)
  143. map['ReportTemplateCode'] = reportTemplateCode;
  144. if (languageCode != null)
  145. map['LanguageCode'] = languageCode;
  146. return map;
  147. }
  148. }
  149. class FindReportByCodeRequest extends TokenRequest{
  150. String? reportCode;
  151. String? language;
  152. FindReportByCodeRequest({
  153. this.reportCode,
  154. this.language,
  155. String? token,
  156. }) : super(
  157. token: token,
  158. );
  159. factory FindReportByCodeRequest.fromJson(Map<String, dynamic> map) {
  160. return FindReportByCodeRequest(
  161. reportCode: map['ReportCode'],
  162. language: map['Language'],
  163. token: map['Token'],
  164. );
  165. }
  166. Map<String, dynamic> toJson() {
  167. final map = super.toJson();
  168. if (reportCode != null)
  169. map['ReportCode'] = reportCode;
  170. if (language != null)
  171. map['Language'] = language;
  172. return map;
  173. }
  174. }
  175. class FindPatientReportsRequest extends TokenRequest{
  176. String? patientCode;
  177. String? languageCode;
  178. FindPatientReportsRequest({
  179. this.patientCode,
  180. this.languageCode,
  181. String? token,
  182. }) : super(
  183. token: token,
  184. );
  185. factory FindPatientReportsRequest.fromJson(Map<String, dynamic> map) {
  186. return FindPatientReportsRequest(
  187. patientCode: map['PatientCode'],
  188. languageCode: map['LanguageCode'],
  189. token: map['Token'],
  190. );
  191. }
  192. Map<String, dynamic> toJson() {
  193. final map = super.toJson();
  194. if (patientCode != null)
  195. map['PatientCode'] = patientCode;
  196. if (languageCode != null)
  197. map['LanguageCode'] = languageCode;
  198. return map;
  199. }
  200. }
  201. enum ReportLabelUsageTypeEnum {
  202. People,
  203. Animal,
  204. }
  205. class ReportLabelDTO extends BaseDTO{
  206. String? reportLabelCode;
  207. String? labelName;
  208. String? languageCode;
  209. ReportLabelUsageTypeEnum usageType;
  210. List<String>? labelItems;
  211. ReportLabelDTO({
  212. this.reportLabelCode,
  213. this.labelName,
  214. this.languageCode,
  215. this.usageType = ReportLabelUsageTypeEnum.People,
  216. this.labelItems,
  217. DateTime? createTime,
  218. DateTime? updateTime,
  219. }) : super(
  220. createTime: createTime,
  221. updateTime: updateTime,
  222. );
  223. factory ReportLabelDTO.fromJson(Map<String, dynamic> map) {
  224. return ReportLabelDTO(
  225. reportLabelCode: map['ReportLabelCode'],
  226. labelName: map['LabelName'],
  227. languageCode: map['LanguageCode'],
  228. usageType: ReportLabelUsageTypeEnum.values.firstWhere((e) => e.index == map['UsageType']),
  229. labelItems: map['LabelItems']?.cast<String>().toList(),
  230. createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
  231. updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null,
  232. );
  233. }
  234. Map<String, dynamic> toJson() {
  235. final map = super.toJson();
  236. if (reportLabelCode != null)
  237. map['ReportLabelCode'] = reportLabelCode;
  238. if (labelName != null)
  239. map['LabelName'] = labelName;
  240. if (languageCode != null)
  241. map['LanguageCode'] = languageCode;
  242. map['UsageType'] = usageType.index;
  243. if (labelItems != null)
  244. map['LabelItems'] = labelItems;
  245. return map;
  246. }
  247. }
  248. class FindReportLabelsRequest extends TokenRequest{
  249. ReportTypeEnum reportType;
  250. String? recordCode;
  251. String? languageCode;
  252. FindReportLabelsRequest({
  253. this.reportType = ReportTypeEnum.RemoteDiagnosis,
  254. this.recordCode,
  255. this.languageCode,
  256. String? token,
  257. }) : super(
  258. token: token,
  259. );
  260. factory FindReportLabelsRequest.fromJson(Map<String, dynamic> map) {
  261. return FindReportLabelsRequest(
  262. reportType: ReportTypeEnum.values.firstWhere((e) => e.index == map['ReportType']),
  263. recordCode: map['RecordCode'],
  264. languageCode: map['LanguageCode'],
  265. token: map['Token'],
  266. );
  267. }
  268. Map<String, dynamic> toJson() {
  269. final map = super.toJson();
  270. map['ReportType'] = reportType.index;
  271. if (recordCode != null)
  272. map['RecordCode'] = recordCode;
  273. if (languageCode != null)
  274. map['LanguageCode'] = languageCode;
  275. return map;
  276. }
  277. }
  278. class ShareDTO extends BaseDTO{
  279. String? shareCode;
  280. String? shortCode;
  281. String? shareContent;
  282. ShareDTO({
  283. this.shareCode,
  284. this.shortCode,
  285. this.shareContent,
  286. DateTime? createTime,
  287. DateTime? updateTime,
  288. }) : super(
  289. createTime: createTime,
  290. updateTime: updateTime,
  291. );
  292. factory ShareDTO.fromJson(Map<String, dynamic> map) {
  293. return ShareDTO(
  294. shareCode: map['ShareCode'],
  295. shortCode: map['ShortCode'],
  296. shareContent: map['ShareContent'],
  297. createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
  298. updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null,
  299. );
  300. }
  301. Map<String, dynamic> toJson() {
  302. final map = super.toJson();
  303. if (shareCode != null)
  304. map['ShareCode'] = shareCode;
  305. if (shortCode != null)
  306. map['ShortCode'] = shortCode;
  307. if (shareContent != null)
  308. map['ShareContent'] = shareContent;
  309. return map;
  310. }
  311. }
  312. class FindShareContentRequest {
  313. String? shortCode;
  314. FindShareContentRequest({
  315. this.shortCode,
  316. });
  317. factory FindShareContentRequest.fromJson(Map<String, dynamic> map) {
  318. return FindShareContentRequest(
  319. shortCode: map['ShortCode'],
  320. );
  321. }
  322. Map<String, dynamic> toJson() {
  323. final map = Map<String, dynamic>();
  324. if (shortCode != null) {
  325. map['ShortCode'] = shortCode;
  326. }
  327. return map;
  328. }
  329. }
  330. class AddReportRequest extends TokenRequest{
  331. ReportTypeEnum reportType;
  332. String? recordCode;
  333. String? reportTemplateJson;
  334. String? reportDatasJson;
  335. String? reportMeasureDatasJson;
  336. String? patientName;
  337. List<String>? reportLabels;
  338. List<String>? platformLabels;
  339. List<String>? diagnosisLabels;
  340. DiagnosisOrganEnum reportOrgan;
  341. String? referralRecordCode;
  342. bool isReferral;
  343. String? reportTemplateCode;
  344. AddReportRequest({
  345. this.reportType = ReportTypeEnum.RemoteDiagnosis,
  346. this.recordCode,
  347. this.reportTemplateJson,
  348. this.reportDatasJson,
  349. this.reportMeasureDatasJson,
  350. this.patientName,
  351. this.reportLabels,
  352. this.platformLabels,
  353. this.diagnosisLabels,
  354. this.reportOrgan = DiagnosisOrganEnum.Null,
  355. this.referralRecordCode,
  356. this.isReferral = false,
  357. this.reportTemplateCode,
  358. String? token,
  359. }) : super(
  360. token: token,
  361. );
  362. factory AddReportRequest.fromJson(Map<String, dynamic> map) {
  363. return AddReportRequest(
  364. reportType: ReportTypeEnum.values.firstWhere((e) => e.index == map['ReportType']),
  365. recordCode: map['RecordCode'],
  366. reportTemplateJson: map['ReportTemplateJson'],
  367. reportDatasJson: map['ReportDatasJson'],
  368. reportMeasureDatasJson: map['ReportMeasureDatasJson'],
  369. patientName: map['PatientName'],
  370. reportLabels: map['ReportLabels']?.cast<String>().toList(),
  371. platformLabels: map['PlatformLabels']?.cast<String>().toList(),
  372. diagnosisLabels: map['DiagnosisLabels']?.cast<String>().toList(),
  373. reportOrgan: DiagnosisOrganEnum.values.firstWhere((e) => e.index == map['ReportOrgan']),
  374. referralRecordCode: map['ReferralRecordCode'],
  375. isReferral: map['IsReferral'],
  376. reportTemplateCode: map['ReportTemplateCode'],
  377. token: map['Token'],
  378. );
  379. }
  380. Map<String, dynamic> toJson() {
  381. final map = super.toJson();
  382. map['ReportType'] = reportType.index;
  383. if (recordCode != null)
  384. map['RecordCode'] = recordCode;
  385. if (reportTemplateJson != null)
  386. map['ReportTemplateJson'] = reportTemplateJson;
  387. if (reportDatasJson != null)
  388. map['ReportDatasJson'] = reportDatasJson;
  389. if (reportMeasureDatasJson != null)
  390. map['ReportMeasureDatasJson'] = reportMeasureDatasJson;
  391. if (patientName != null)
  392. map['PatientName'] = patientName;
  393. if (reportLabels != null)
  394. map['ReportLabels'] = reportLabels;
  395. if (platformLabels != null)
  396. map['PlatformLabels'] = platformLabels;
  397. if (diagnosisLabels != null)
  398. map['DiagnosisLabels'] = diagnosisLabels;
  399. map['ReportOrgan'] = reportOrgan.index;
  400. if (referralRecordCode != null)
  401. map['ReferralRecordCode'] = referralRecordCode;
  402. map['IsReferral'] = isReferral;
  403. if (reportTemplateCode != null)
  404. map['ReportTemplateCode'] = reportTemplateCode;
  405. return map;
  406. }
  407. }
  408. class ModifyReportRequest extends AddReportRequest{
  409. String? reportCode;
  410. ModifyReportRequest({
  411. this.reportCode,
  412. ReportTypeEnum reportType = ReportTypeEnum.RemoteDiagnosis,
  413. String? recordCode,
  414. String? reportTemplateJson,
  415. String? reportDatasJson,
  416. String? reportMeasureDatasJson,
  417. String? patientName,
  418. List<String>? reportLabels,
  419. List<String>? platformLabels,
  420. List<String>? diagnosisLabels,
  421. DiagnosisOrganEnum reportOrgan = DiagnosisOrganEnum.Null,
  422. String? referralRecordCode,
  423. bool isReferral = false,
  424. String? reportTemplateCode,
  425. String? token,
  426. }) : super(
  427. reportType: reportType,
  428. recordCode: recordCode,
  429. reportTemplateJson: reportTemplateJson,
  430. reportDatasJson: reportDatasJson,
  431. reportMeasureDatasJson: reportMeasureDatasJson,
  432. patientName: patientName,
  433. reportLabels: reportLabels,
  434. platformLabels: platformLabels,
  435. diagnosisLabels: diagnosisLabels,
  436. reportOrgan: reportOrgan,
  437. referralRecordCode: referralRecordCode,
  438. isReferral: isReferral,
  439. reportTemplateCode: reportTemplateCode,
  440. token: token,
  441. );
  442. factory ModifyReportRequest.fromJson(Map<String, dynamic> map) {
  443. return ModifyReportRequest(
  444. reportCode: map['ReportCode'],
  445. reportType: ReportTypeEnum.values.firstWhere((e) => e.index == map['ReportType']),
  446. recordCode: map['RecordCode'],
  447. reportTemplateJson: map['ReportTemplateJson'],
  448. reportDatasJson: map['ReportDatasJson'],
  449. reportMeasureDatasJson: map['ReportMeasureDatasJson'],
  450. patientName: map['PatientName'],
  451. reportLabels: map['ReportLabels']?.cast<String>().toList(),
  452. platformLabels: map['PlatformLabels']?.cast<String>().toList(),
  453. diagnosisLabels: map['DiagnosisLabels']?.cast<String>().toList(),
  454. reportOrgan: DiagnosisOrganEnum.values.firstWhere((e) => e.index == map['ReportOrgan']),
  455. referralRecordCode: map['ReferralRecordCode'],
  456. isReferral: map['IsReferral'],
  457. reportTemplateCode: map['ReportTemplateCode'],
  458. token: map['Token'],
  459. );
  460. }
  461. Map<String, dynamic> toJson() {
  462. final map = super.toJson();
  463. if (reportCode != null)
  464. map['ReportCode'] = reportCode;
  465. return map;
  466. }
  467. }
  468. class ModifyReportLabelsRequest extends TokenRequest{
  469. String? reportCode;
  470. List<String>? reportLabels;
  471. ModifyReportLabelsRequest({
  472. this.reportCode,
  473. this.reportLabels,
  474. String? token,
  475. }) : super(
  476. token: token,
  477. );
  478. factory ModifyReportLabelsRequest.fromJson(Map<String, dynamic> map) {
  479. return ModifyReportLabelsRequest(
  480. reportCode: map['ReportCode'],
  481. reportLabels: map['ReportLabels']?.cast<String>().toList(),
  482. token: map['Token'],
  483. );
  484. }
  485. Map<String, dynamic> toJson() {
  486. final map = super.toJson();
  487. if (reportCode != null)
  488. map['ReportCode'] = reportCode;
  489. if (reportLabels != null)
  490. map['ReportLabels'] = reportLabels;
  491. return map;
  492. }
  493. }
  494. class ShareReportBySmsRequest extends TokenRequest{
  495. String? reportCode;
  496. List<String>? mobileList;
  497. String? languageCode;
  498. ShareReportBySmsRequest({
  499. this.reportCode,
  500. this.mobileList,
  501. this.languageCode,
  502. String? token,
  503. }) : super(
  504. token: token,
  505. );
  506. factory ShareReportBySmsRequest.fromJson(Map<String, dynamic> map) {
  507. return ShareReportBySmsRequest(
  508. reportCode: map['ReportCode'],
  509. mobileList: map['MobileList']?.cast<String>().toList(),
  510. languageCode: map['LanguageCode'],
  511. token: map['Token'],
  512. );
  513. }
  514. Map<String, dynamic> toJson() {
  515. final map = super.toJson();
  516. if (reportCode != null)
  517. map['ReportCode'] = reportCode;
  518. if (mobileList != null)
  519. map['MobileList'] = mobileList;
  520. if (languageCode != null)
  521. map['LanguageCode'] = languageCode;
  522. return map;
  523. }
  524. }
  525. class ShareReportByEmailRequest extends TokenRequest{
  526. String? reportCode;
  527. List<String>? emailList;
  528. String? languageCode;
  529. ShareReportByEmailRequest({
  530. this.reportCode,
  531. this.emailList,
  532. this.languageCode,
  533. String? token,
  534. }) : super(
  535. token: token,
  536. );
  537. factory ShareReportByEmailRequest.fromJson(Map<String, dynamic> map) {
  538. return ShareReportByEmailRequest(
  539. reportCode: map['ReportCode'],
  540. emailList: map['EmailList']?.cast<String>().toList(),
  541. languageCode: map['LanguageCode'],
  542. token: map['Token'],
  543. );
  544. }
  545. Map<String, dynamic> toJson() {
  546. final map = super.toJson();
  547. if (reportCode != null)
  548. map['ReportCode'] = reportCode;
  549. if (emailList != null)
  550. map['EmailList'] = emailList;
  551. if (languageCode != null)
  552. map['LanguageCode'] = languageCode;
  553. return map;
  554. }
  555. }
  556. class CopyReportTemplateRequest extends TokenRequest{
  557. String? reportTemplateCode;
  558. CopyReportTemplateRequest({
  559. this.reportTemplateCode,
  560. String? token,
  561. }) : super(
  562. token: token,
  563. );
  564. factory CopyReportTemplateRequest.fromJson(Map<String, dynamic> map) {
  565. return CopyReportTemplateRequest(
  566. reportTemplateCode: map['ReportTemplateCode'],
  567. token: map['Token'],
  568. );
  569. }
  570. Map<String, dynamic> toJson() {
  571. final map = super.toJson();
  572. if (reportTemplateCode != null)
  573. map['ReportTemplateCode'] = reportTemplateCode;
  574. return map;
  575. }
  576. }
  577. class CopyOrgReportTemplateRequest extends TokenRequest{
  578. String? reportTemplateCode;
  579. CopyOrgReportTemplateRequest({
  580. this.reportTemplateCode,
  581. String? token,
  582. }) : super(
  583. token: token,
  584. );
  585. factory CopyOrgReportTemplateRequest.fromJson(Map<String, dynamic> map) {
  586. return CopyOrgReportTemplateRequest(
  587. reportTemplateCode: map['ReportTemplateCode'],
  588. token: map['Token'],
  589. );
  590. }
  591. Map<String, dynamic> toJson() {
  592. final map = super.toJson();
  593. if (reportTemplateCode != null)
  594. map['ReportTemplateCode'] = reportTemplateCode;
  595. return map;
  596. }
  597. }
  598. class FindReportTemplatePagesRequest extends PageRequest{
  599. bool? isDefault;
  600. String? reportTemplateName;
  601. String? languageCode;
  602. ReportTemplateTypeEnum? reportTemplateType;
  603. ReportTemplateStatusTypeEnum? reportTemplateStateType;
  604. FindReportTemplatePagesRequest({
  605. this.isDefault,
  606. this.reportTemplateName,
  607. this.languageCode,
  608. this.reportTemplateType,
  609. this.reportTemplateStateType,
  610. int pageIndex = 0,
  611. int pageSize = 0,
  612. String? token,
  613. }) : super(
  614. pageIndex: pageIndex,
  615. pageSize: pageSize,
  616. token: token,
  617. );
  618. factory FindReportTemplatePagesRequest.fromJson(Map<String, dynamic> map) {
  619. return FindReportTemplatePagesRequest(
  620. isDefault: map['IsDefault'],
  621. reportTemplateName: map['ReportTemplateName'],
  622. languageCode: map['LanguageCode'],
  623. reportTemplateType: map['ReportTemplateType'] != null ? ReportTemplateTypeEnum.values.firstWhere((e) => e.index == map['ReportTemplateType']) : null,
  624. reportTemplateStateType: map['ReportTemplateStateType'] != null ? ReportTemplateStatusTypeEnum.values.firstWhere((e) => e.index == map['ReportTemplateStateType']) : null,
  625. pageIndex: map['PageIndex'],
  626. pageSize: map['PageSize'],
  627. token: map['Token'],
  628. );
  629. }
  630. Map<String, dynamic> toJson() {
  631. final map = super.toJson();
  632. if (isDefault != null)
  633. map['IsDefault'] = isDefault;
  634. if (reportTemplateName != null)
  635. map['ReportTemplateName'] = reportTemplateName;
  636. if (languageCode != null)
  637. map['LanguageCode'] = languageCode;
  638. if (reportTemplateType != null)
  639. map['ReportTemplateType'] = reportTemplateType;
  640. if (reportTemplateStateType != null)
  641. map['ReportTemplateStateType'] = reportTemplateStateType;
  642. return map;
  643. }
  644. }
  645. class AddReportTemplateRequest extends TokenRequest{
  646. String? reportTemplateName;
  647. String? reportTemplateJson;
  648. String? reportDatasJson;
  649. ReportTemplateTypeEnum reportTemplateType;
  650. String? languageCode;
  651. AddReportTemplateRequest({
  652. this.reportTemplateName,
  653. this.reportTemplateJson,
  654. this.reportDatasJson,
  655. this.reportTemplateType = ReportTemplateTypeEnum.Default,
  656. this.languageCode,
  657. String? token,
  658. }) : super(
  659. token: token,
  660. );
  661. factory AddReportTemplateRequest.fromJson(Map<String, dynamic> map) {
  662. return AddReportTemplateRequest(
  663. reportTemplateName: map['ReportTemplateName'],
  664. reportTemplateJson: map['ReportTemplateJson'],
  665. reportDatasJson: map['ReportDatasJson'],
  666. reportTemplateType: ReportTemplateTypeEnum.values.firstWhere((e) => e.index == map['ReportTemplateType']),
  667. languageCode: map['LanguageCode'],
  668. token: map['Token'],
  669. );
  670. }
  671. Map<String, dynamic> toJson() {
  672. final map = super.toJson();
  673. if (reportTemplateName != null)
  674. map['ReportTemplateName'] = reportTemplateName;
  675. if (reportTemplateJson != null)
  676. map['ReportTemplateJson'] = reportTemplateJson;
  677. if (reportDatasJson != null)
  678. map['ReportDatasJson'] = reportDatasJson;
  679. map['ReportTemplateType'] = reportTemplateType.index;
  680. if (languageCode != null)
  681. map['LanguageCode'] = languageCode;
  682. return map;
  683. }
  684. }
  685. class UpdateReportTemplateRequest extends TokenRequest{
  686. String? reportTemplateCode;
  687. String? reportTemplateName;
  688. String? reportTemplateJson;
  689. String? reportDatasJson;
  690. UpdateReportTemplateRequest({
  691. this.reportTemplateCode,
  692. this.reportTemplateName,
  693. this.reportTemplateJson,
  694. this.reportDatasJson,
  695. String? token,
  696. }) : super(
  697. token: token,
  698. );
  699. factory UpdateReportTemplateRequest.fromJson(Map<String, dynamic> map) {
  700. return UpdateReportTemplateRequest(
  701. reportTemplateCode: map['ReportTemplateCode'],
  702. reportTemplateName: map['ReportTemplateName'],
  703. reportTemplateJson: map['ReportTemplateJson'],
  704. reportDatasJson: map['ReportDatasJson'],
  705. token: map['Token'],
  706. );
  707. }
  708. Map<String, dynamic> toJson() {
  709. final map = super.toJson();
  710. if (reportTemplateCode != null)
  711. map['ReportTemplateCode'] = reportTemplateCode;
  712. if (reportTemplateName != null)
  713. map['ReportTemplateName'] = reportTemplateName;
  714. if (reportTemplateJson != null)
  715. map['ReportTemplateJson'] = reportTemplateJson;
  716. if (reportDatasJson != null)
  717. map['ReportDatasJson'] = reportDatasJson;
  718. return map;
  719. }
  720. }
  721. class RemoveReportTemplateRequest extends TokenRequest{
  722. String? reportTemplateCode;
  723. RemoveReportTemplateRequest({
  724. this.reportTemplateCode,
  725. String? token,
  726. }) : super(
  727. token: token,
  728. );
  729. factory RemoveReportTemplateRequest.fromJson(Map<String, dynamic> map) {
  730. return RemoveReportTemplateRequest(
  731. reportTemplateCode: map['ReportTemplateCode'],
  732. token: map['Token'],
  733. );
  734. }
  735. Map<String, dynamic> toJson() {
  736. final map = super.toJson();
  737. if (reportTemplateCode != null)
  738. map['ReportTemplateCode'] = reportTemplateCode;
  739. return map;
  740. }
  741. }
  742. class AddThesaurusRequest extends TokenRequest{
  743. String? thesaurusName;
  744. String? languageCode;
  745. OrganizationPatientTypeEnum patientType;
  746. AddThesaurusRequest({
  747. this.thesaurusName,
  748. this.languageCode,
  749. this.patientType = OrganizationPatientTypeEnum.Person,
  750. String? token,
  751. }) : super(
  752. token: token,
  753. );
  754. factory AddThesaurusRequest.fromJson(Map<String, dynamic> map) {
  755. return AddThesaurusRequest(
  756. thesaurusName: map['ThesaurusName'],
  757. languageCode: map['LanguageCode'],
  758. patientType: OrganizationPatientTypeEnum.values.firstWhere((e) => e.index == map['PatientType']),
  759. token: map['Token'],
  760. );
  761. }
  762. Map<String, dynamic> toJson() {
  763. final map = super.toJson();
  764. if (thesaurusName != null)
  765. map['ThesaurusName'] = thesaurusName;
  766. if (languageCode != null)
  767. map['LanguageCode'] = languageCode;
  768. map['PatientType'] = patientType.index;
  769. return map;
  770. }
  771. }
  772. class UpdateThesaurusRequest extends TokenRequest{
  773. String? thesaurusCode;
  774. String? thesaurusName;
  775. UpdateThesaurusRequest({
  776. this.thesaurusCode,
  777. this.thesaurusName,
  778. String? token,
  779. }) : super(
  780. token: token,
  781. );
  782. factory UpdateThesaurusRequest.fromJson(Map<String, dynamic> map) {
  783. return UpdateThesaurusRequest(
  784. thesaurusCode: map['ThesaurusCode'],
  785. thesaurusName: map['ThesaurusName'],
  786. token: map['Token'],
  787. );
  788. }
  789. Map<String, dynamic> toJson() {
  790. final map = super.toJson();
  791. if (thesaurusCode != null)
  792. map['ThesaurusCode'] = thesaurusCode;
  793. if (thesaurusName != null)
  794. map['ThesaurusName'] = thesaurusName;
  795. return map;
  796. }
  797. }
  798. class AddThesaurusClassifyRequest extends TokenRequest{
  799. String? thesaurusCode;
  800. String? thesaurusItemName;
  801. String? parentItemCode;
  802. AddThesaurusClassifyRequest({
  803. this.thesaurusCode,
  804. this.thesaurusItemName,
  805. this.parentItemCode,
  806. String? token,
  807. }) : super(
  808. token: token,
  809. );
  810. factory AddThesaurusClassifyRequest.fromJson(Map<String, dynamic> map) {
  811. return AddThesaurusClassifyRequest(
  812. thesaurusCode: map['ThesaurusCode'],
  813. thesaurusItemName: map['ThesaurusItemName'],
  814. parentItemCode: map['ParentItemCode'],
  815. token: map['Token'],
  816. );
  817. }
  818. Map<String, dynamic> toJson() {
  819. final map = super.toJson();
  820. if (thesaurusCode != null)
  821. map['ThesaurusCode'] = thesaurusCode;
  822. if (thesaurusItemName != null)
  823. map['ThesaurusItemName'] = thesaurusItemName;
  824. if (parentItemCode != null)
  825. map['ParentItemCode'] = parentItemCode;
  826. return map;
  827. }
  828. }
  829. class AddThesaurusContentRequest extends TokenRequest{
  830. String? thesaurusCode;
  831. String? thesaurusItemDescription;
  832. String? thesaurusItemConclusion;
  833. String? parentItemCode;
  834. AddThesaurusContentRequest({
  835. this.thesaurusCode,
  836. this.thesaurusItemDescription,
  837. this.thesaurusItemConclusion,
  838. this.parentItemCode,
  839. String? token,
  840. }) : super(
  841. token: token,
  842. );
  843. factory AddThesaurusContentRequest.fromJson(Map<String, dynamic> map) {
  844. return AddThesaurusContentRequest(
  845. thesaurusCode: map['ThesaurusCode'],
  846. thesaurusItemDescription: map['ThesaurusItemDescription'],
  847. thesaurusItemConclusion: map['ThesaurusItemConclusion'],
  848. parentItemCode: map['ParentItemCode'],
  849. token: map['Token'],
  850. );
  851. }
  852. Map<String, dynamic> toJson() {
  853. final map = super.toJson();
  854. if (thesaurusCode != null)
  855. map['ThesaurusCode'] = thesaurusCode;
  856. if (thesaurusItemDescription != null)
  857. map['ThesaurusItemDescription'] = thesaurusItemDescription;
  858. if (thesaurusItemConclusion != null)
  859. map['ThesaurusItemConclusion'] = thesaurusItemConclusion;
  860. if (parentItemCode != null)
  861. map['ParentItemCode'] = parentItemCode;
  862. return map;
  863. }
  864. }
  865. class UpdateThesaurusClassifyRequest extends TokenRequest{
  866. String? thesaurusCode;
  867. String? thesaurusItemCode;
  868. String? thesaurusItemName;
  869. String? parentItemCode;
  870. UpdateThesaurusClassifyRequest({
  871. this.thesaurusCode,
  872. this.thesaurusItemCode,
  873. this.thesaurusItemName,
  874. this.parentItemCode,
  875. String? token,
  876. }) : super(
  877. token: token,
  878. );
  879. factory UpdateThesaurusClassifyRequest.fromJson(Map<String, dynamic> map) {
  880. return UpdateThesaurusClassifyRequest(
  881. thesaurusCode: map['ThesaurusCode'],
  882. thesaurusItemCode: map['ThesaurusItemCode'],
  883. thesaurusItemName: map['ThesaurusItemName'],
  884. parentItemCode: map['ParentItemCode'],
  885. token: map['Token'],
  886. );
  887. }
  888. Map<String, dynamic> toJson() {
  889. final map = super.toJson();
  890. if (thesaurusCode != null)
  891. map['ThesaurusCode'] = thesaurusCode;
  892. if (thesaurusItemCode != null)
  893. map['ThesaurusItemCode'] = thesaurusItemCode;
  894. if (thesaurusItemName != null)
  895. map['ThesaurusItemName'] = thesaurusItemName;
  896. if (parentItemCode != null)
  897. map['ParentItemCode'] = parentItemCode;
  898. return map;
  899. }
  900. }
  901. class UpdateThesaurusContentRequest extends TokenRequest{
  902. String? thesaurusCode;
  903. String? thesaurusItemCode;
  904. String? thesaurusItemDescription;
  905. String? thesaurusItemConclusion;
  906. String? parentItemCode;
  907. UpdateThesaurusContentRequest({
  908. this.thesaurusCode,
  909. this.thesaurusItemCode,
  910. this.thesaurusItemDescription,
  911. this.thesaurusItemConclusion,
  912. this.parentItemCode,
  913. String? token,
  914. }) : super(
  915. token: token,
  916. );
  917. factory UpdateThesaurusContentRequest.fromJson(Map<String, dynamic> map) {
  918. return UpdateThesaurusContentRequest(
  919. thesaurusCode: map['ThesaurusCode'],
  920. thesaurusItemCode: map['ThesaurusItemCode'],
  921. thesaurusItemDescription: map['ThesaurusItemDescription'],
  922. thesaurusItemConclusion: map['ThesaurusItemConclusion'],
  923. parentItemCode: map['ParentItemCode'],
  924. token: map['Token'],
  925. );
  926. }
  927. Map<String, dynamic> toJson() {
  928. final map = super.toJson();
  929. if (thesaurusCode != null)
  930. map['ThesaurusCode'] = thesaurusCode;
  931. if (thesaurusItemCode != null)
  932. map['ThesaurusItemCode'] = thesaurusItemCode;
  933. if (thesaurusItemDescription != null)
  934. map['ThesaurusItemDescription'] = thesaurusItemDescription;
  935. if (thesaurusItemConclusion != null)
  936. map['ThesaurusItemConclusion'] = thesaurusItemConclusion;
  937. if (parentItemCode != null)
  938. map['ParentItemCode'] = parentItemCode;
  939. return map;
  940. }
  941. }
  942. class RemoveThesaurusRequest extends TokenRequest{
  943. String? thesaurusCode;
  944. RemoveThesaurusRequest({
  945. this.thesaurusCode,
  946. String? token,
  947. }) : super(
  948. token: token,
  949. );
  950. factory RemoveThesaurusRequest.fromJson(Map<String, dynamic> map) {
  951. return RemoveThesaurusRequest(
  952. thesaurusCode: map['ThesaurusCode'],
  953. token: map['Token'],
  954. );
  955. }
  956. Map<String, dynamic> toJson() {
  957. final map = super.toJson();
  958. if (thesaurusCode != null)
  959. map['ThesaurusCode'] = thesaurusCode;
  960. return map;
  961. }
  962. }
  963. class RemoveThesaurusItemRequest extends TokenRequest{
  964. String? thesaurusCode;
  965. String? thesaurusItemCode;
  966. RemoveThesaurusItemRequest({
  967. this.thesaurusCode,
  968. this.thesaurusItemCode,
  969. String? token,
  970. }) : super(
  971. token: token,
  972. );
  973. factory RemoveThesaurusItemRequest.fromJson(Map<String, dynamic> map) {
  974. return RemoveThesaurusItemRequest(
  975. thesaurusCode: map['ThesaurusCode'],
  976. thesaurusItemCode: map['ThesaurusItemCode'],
  977. token: map['Token'],
  978. );
  979. }
  980. Map<String, dynamic> toJson() {
  981. final map = super.toJson();
  982. if (thesaurusCode != null)
  983. map['ThesaurusCode'] = thesaurusCode;
  984. if (thesaurusItemCode != null)
  985. map['ThesaurusItemCode'] = thesaurusItemCode;
  986. return map;
  987. }
  988. }
  989. enum ThesaurusStatusTypeEnum {
  990. Unpublished,
  991. Published,
  992. }
  993. enum ThesaurusTypeEnum {
  994. Default,
  995. Organization,
  996. Personal,
  997. }
  998. enum ThesaurusUsageTypeEnum {
  999. People,
  1000. Animal,
  1001. }
  1002. class ThesaurusDTO {
  1003. String? thesaurusCode;
  1004. String? thesaurusName;
  1005. ThesaurusStatusTypeEnum thesaurusStateType;
  1006. ThesaurusTypeEnum thesaurusType;
  1007. ThesaurusUsageTypeEnum thesaurusUsageType;
  1008. String? organizationCode;
  1009. String? personalCode;
  1010. String? organizationName;
  1011. String? personalName;
  1012. String? referenceThesaurusCode;
  1013. bool isDefault;
  1014. bool isUserDefault;
  1015. String? languageCode;
  1016. ThesaurusDTO({
  1017. this.thesaurusCode,
  1018. this.thesaurusName,
  1019. this.thesaurusStateType = ThesaurusStatusTypeEnum.Unpublished,
  1020. this.thesaurusType = ThesaurusTypeEnum.Default,
  1021. this.thesaurusUsageType = ThesaurusUsageTypeEnum.People,
  1022. this.organizationCode,
  1023. this.personalCode,
  1024. this.organizationName,
  1025. this.personalName,
  1026. this.referenceThesaurusCode,
  1027. this.isDefault = false,
  1028. this.isUserDefault = false,
  1029. this.languageCode,
  1030. });
  1031. factory ThesaurusDTO.fromJson(Map<String, dynamic> map) {
  1032. return ThesaurusDTO(
  1033. thesaurusCode: map['ThesaurusCode'],
  1034. thesaurusName: map['ThesaurusName'],
  1035. thesaurusStateType: ThesaurusStatusTypeEnum.values.firstWhere((e) => e.index == map['ThesaurusStateType']),
  1036. thesaurusType: ThesaurusTypeEnum.values.firstWhere((e) => e.index == map['ThesaurusType']),
  1037. thesaurusUsageType: ThesaurusUsageTypeEnum.values.firstWhere((e) => e.index == map['ThesaurusUsageType']),
  1038. organizationCode: map['OrganizationCode'],
  1039. personalCode: map['PersonalCode'],
  1040. organizationName: map['OrganizationName'],
  1041. personalName: map['PersonalName'],
  1042. referenceThesaurusCode: map['ReferenceThesaurusCode'],
  1043. isDefault: map['IsDefault'],
  1044. isUserDefault: map['IsUserDefault'],
  1045. languageCode: map['LanguageCode'],
  1046. );
  1047. }
  1048. Map<String, dynamic> toJson() {
  1049. final map = Map<String, dynamic>();
  1050. if (thesaurusCode != null) {
  1051. map['ThesaurusCode'] = thesaurusCode;
  1052. }
  1053. if (thesaurusName != null) {
  1054. map['ThesaurusName'] = thesaurusName;
  1055. }
  1056. map['ThesaurusStateType'] = thesaurusStateType.index;
  1057. map['ThesaurusType'] = thesaurusType.index;
  1058. map['ThesaurusUsageType'] = thesaurusUsageType.index;
  1059. if (organizationCode != null) {
  1060. map['OrganizationCode'] = organizationCode;
  1061. }
  1062. if (personalCode != null) {
  1063. map['PersonalCode'] = personalCode;
  1064. }
  1065. if (organizationName != null) {
  1066. map['OrganizationName'] = organizationName;
  1067. }
  1068. if (personalName != null) {
  1069. map['PersonalName'] = personalName;
  1070. }
  1071. if (referenceThesaurusCode != null) {
  1072. map['ReferenceThesaurusCode'] = referenceThesaurusCode;
  1073. }
  1074. map['IsDefault'] = isDefault;
  1075. map['IsUserDefault'] = isUserDefault;
  1076. if (languageCode != null) {
  1077. map['LanguageCode'] = languageCode;
  1078. }
  1079. return map;
  1080. }
  1081. }
  1082. class GetThesaurusPageRequest extends PageRequest{
  1083. bool? isDefault;
  1084. String? userCode;
  1085. ThesaurusStatusTypeEnum? thesaurusStateType;
  1086. ThesaurusTypeEnum? thesaurusType;
  1087. ThesaurusUsageTypeEnum? thesaurusUsageType;
  1088. String? organizationCode;
  1089. String? personalCode;
  1090. String? thesaurusName;
  1091. String? languageCode;
  1092. GetThesaurusPageRequest({
  1093. this.isDefault,
  1094. this.userCode,
  1095. this.thesaurusStateType,
  1096. this.thesaurusType,
  1097. this.thesaurusUsageType,
  1098. this.organizationCode,
  1099. this.personalCode,
  1100. this.thesaurusName,
  1101. this.languageCode,
  1102. int pageIndex = 0,
  1103. int pageSize = 0,
  1104. String? token,
  1105. }) : super(
  1106. pageIndex: pageIndex,
  1107. pageSize: pageSize,
  1108. token: token,
  1109. );
  1110. factory GetThesaurusPageRequest.fromJson(Map<String, dynamic> map) {
  1111. return GetThesaurusPageRequest(
  1112. isDefault: map['IsDefault'],
  1113. userCode: map['UserCode'],
  1114. thesaurusStateType: map['ThesaurusStateType'] != null ? ThesaurusStatusTypeEnum.values.firstWhere((e) => e.index == map['ThesaurusStateType']) : null,
  1115. thesaurusType: map['ThesaurusType'] != null ? ThesaurusTypeEnum.values.firstWhere((e) => e.index == map['ThesaurusType']) : null,
  1116. thesaurusUsageType: map['ThesaurusUsageType'] != null ? ThesaurusUsageTypeEnum.values.firstWhere((e) => e.index == map['ThesaurusUsageType']) : null,
  1117. organizationCode: map['OrganizationCode'],
  1118. personalCode: map['PersonalCode'],
  1119. thesaurusName: map['ThesaurusName'],
  1120. languageCode: map['LanguageCode'],
  1121. pageIndex: map['PageIndex'],
  1122. pageSize: map['PageSize'],
  1123. token: map['Token'],
  1124. );
  1125. }
  1126. Map<String, dynamic> toJson() {
  1127. final map = super.toJson();
  1128. if (isDefault != null)
  1129. map['IsDefault'] = isDefault;
  1130. if (userCode != null)
  1131. map['UserCode'] = userCode;
  1132. if (thesaurusStateType != null)
  1133. map['ThesaurusStateType'] = thesaurusStateType;
  1134. if (thesaurusType != null)
  1135. map['ThesaurusType'] = thesaurusType;
  1136. if (thesaurusUsageType != null)
  1137. map['ThesaurusUsageType'] = thesaurusUsageType;
  1138. if (organizationCode != null)
  1139. map['OrganizationCode'] = organizationCode;
  1140. if (personalCode != null)
  1141. map['PersonalCode'] = personalCode;
  1142. if (thesaurusName != null)
  1143. map['ThesaurusName'] = thesaurusName;
  1144. if (languageCode != null)
  1145. map['LanguageCode'] = languageCode;
  1146. return map;
  1147. }
  1148. }
  1149. enum ThesaurusItemTypeEnum {
  1150. Classification,
  1151. Contents,
  1152. }
  1153. class ThesaurusItemDTO {
  1154. String? thesaurusItemCode;
  1155. ThesaurusItemTypeEnum thesaurusItemType;
  1156. String? thesaurusItemName;
  1157. String? thesaurusItemDescription;
  1158. String? thesaurusItemConclusion;
  1159. String? parentItemCode;
  1160. bool hasChildren;
  1161. int sort;
  1162. ThesaurusItemDTO({
  1163. this.thesaurusItemCode,
  1164. this.thesaurusItemType = ThesaurusItemTypeEnum.Classification,
  1165. this.thesaurusItemName,
  1166. this.thesaurusItemDescription,
  1167. this.thesaurusItemConclusion,
  1168. this.parentItemCode,
  1169. this.hasChildren = false,
  1170. this.sort = 0,
  1171. });
  1172. factory ThesaurusItemDTO.fromJson(Map<String, dynamic> map) {
  1173. return ThesaurusItemDTO(
  1174. thesaurusItemCode: map['ThesaurusItemCode'],
  1175. thesaurusItemType: ThesaurusItemTypeEnum.values.firstWhere((e) => e.index == map['ThesaurusItemType']),
  1176. thesaurusItemName: map['ThesaurusItemName'],
  1177. thesaurusItemDescription: map['ThesaurusItemDescription'],
  1178. thesaurusItemConclusion: map['ThesaurusItemConclusion'],
  1179. parentItemCode: map['ParentItemCode'],
  1180. hasChildren: map['HasChildren'],
  1181. sort: map['Sort'],
  1182. );
  1183. }
  1184. Map<String, dynamic> toJson() {
  1185. final map = Map<String, dynamic>();
  1186. if (thesaurusItemCode != null) {
  1187. map['ThesaurusItemCode'] = thesaurusItemCode;
  1188. }
  1189. map['ThesaurusItemType'] = thesaurusItemType.index;
  1190. if (thesaurusItemName != null) {
  1191. map['ThesaurusItemName'] = thesaurusItemName;
  1192. }
  1193. if (thesaurusItemDescription != null) {
  1194. map['ThesaurusItemDescription'] = thesaurusItemDescription;
  1195. }
  1196. if (thesaurusItemConclusion != null) {
  1197. map['ThesaurusItemConclusion'] = thesaurusItemConclusion;
  1198. }
  1199. if (parentItemCode != null) {
  1200. map['ParentItemCode'] = parentItemCode;
  1201. }
  1202. map['HasChildren'] = hasChildren;
  1203. map['Sort'] = sort;
  1204. return map;
  1205. }
  1206. }
  1207. class GetThesaurusItemsRequest extends TokenRequest{
  1208. String? thesaurusCode;
  1209. String? keyword;
  1210. GetThesaurusItemsRequest({
  1211. this.thesaurusCode,
  1212. this.keyword,
  1213. String? token,
  1214. }) : super(
  1215. token: token,
  1216. );
  1217. factory GetThesaurusItemsRequest.fromJson(Map<String, dynamic> map) {
  1218. return GetThesaurusItemsRequest(
  1219. thesaurusCode: map['ThesaurusCode'],
  1220. keyword: map['Keyword'],
  1221. token: map['Token'],
  1222. );
  1223. }
  1224. Map<String, dynamic> toJson() {
  1225. final map = super.toJson();
  1226. if (thesaurusCode != null)
  1227. map['ThesaurusCode'] = thesaurusCode;
  1228. if (keyword != null)
  1229. map['Keyword'] = keyword;
  1230. return map;
  1231. }
  1232. }
  1233. class GetThesaurusItemByCodeRequest extends TokenRequest{
  1234. String? thesaurusCode;
  1235. String? thesaurusItemCode;
  1236. GetThesaurusItemByCodeRequest({
  1237. this.thesaurusCode,
  1238. this.thesaurusItemCode,
  1239. String? token,
  1240. }) : super(
  1241. token: token,
  1242. );
  1243. factory GetThesaurusItemByCodeRequest.fromJson(Map<String, dynamic> map) {
  1244. return GetThesaurusItemByCodeRequest(
  1245. thesaurusCode: map['ThesaurusCode'],
  1246. thesaurusItemCode: map['ThesaurusItemCode'],
  1247. token: map['Token'],
  1248. );
  1249. }
  1250. Map<String, dynamic> toJson() {
  1251. final map = super.toJson();
  1252. if (thesaurusCode != null)
  1253. map['ThesaurusCode'] = thesaurusCode;
  1254. if (thesaurusItemCode != null)
  1255. map['ThesaurusItemCode'] = thesaurusItemCode;
  1256. return map;
  1257. }
  1258. }
  1259. class GetThesaurusClassifyByParentCodeRequest extends TokenRequest{
  1260. String? thesaurusCode;
  1261. String? parentItemCode;
  1262. String? keyword;
  1263. GetThesaurusClassifyByParentCodeRequest({
  1264. this.thesaurusCode,
  1265. this.parentItemCode,
  1266. this.keyword,
  1267. String? token,
  1268. }) : super(
  1269. token: token,
  1270. );
  1271. factory GetThesaurusClassifyByParentCodeRequest.fromJson(Map<String, dynamic> map) {
  1272. return GetThesaurusClassifyByParentCodeRequest(
  1273. thesaurusCode: map['ThesaurusCode'],
  1274. parentItemCode: map['ParentItemCode'],
  1275. keyword: map['Keyword'],
  1276. token: map['Token'],
  1277. );
  1278. }
  1279. Map<String, dynamic> toJson() {
  1280. final map = super.toJson();
  1281. if (thesaurusCode != null)
  1282. map['ThesaurusCode'] = thesaurusCode;
  1283. if (parentItemCode != null)
  1284. map['ParentItemCode'] = parentItemCode;
  1285. if (keyword != null)
  1286. map['Keyword'] = keyword;
  1287. return map;
  1288. }
  1289. }
  1290. class GetThesaurusContentByParentCodeRequest extends TokenRequest{
  1291. String? thesaurusCode;
  1292. String? parentItemCode;
  1293. String? keyword;
  1294. GetThesaurusContentByParentCodeRequest({
  1295. this.thesaurusCode,
  1296. this.parentItemCode,
  1297. this.keyword,
  1298. String? token,
  1299. }) : super(
  1300. token: token,
  1301. );
  1302. factory GetThesaurusContentByParentCodeRequest.fromJson(Map<String, dynamic> map) {
  1303. return GetThesaurusContentByParentCodeRequest(
  1304. thesaurusCode: map['ThesaurusCode'],
  1305. parentItemCode: map['ParentItemCode'],
  1306. keyword: map['Keyword'],
  1307. token: map['Token'],
  1308. );
  1309. }
  1310. Map<String, dynamic> toJson() {
  1311. final map = super.toJson();
  1312. if (thesaurusCode != null)
  1313. map['ThesaurusCode'] = thesaurusCode;
  1314. if (parentItemCode != null)
  1315. map['ParentItemCode'] = parentItemCode;
  1316. if (keyword != null)
  1317. map['Keyword'] = keyword;
  1318. return map;
  1319. }
  1320. }
  1321. class CopyThesaurusRequest extends TokenRequest{
  1322. String? thesaurusCode;
  1323. CopyThesaurusRequest({
  1324. this.thesaurusCode,
  1325. String? token,
  1326. }) : super(
  1327. token: token,
  1328. );
  1329. factory CopyThesaurusRequest.fromJson(Map<String, dynamic> map) {
  1330. return CopyThesaurusRequest(
  1331. thesaurusCode: map['ThesaurusCode'],
  1332. token: map['Token'],
  1333. );
  1334. }
  1335. Map<String, dynamic> toJson() {
  1336. final map = super.toJson();
  1337. if (thesaurusCode != null)
  1338. map['ThesaurusCode'] = thesaurusCode;
  1339. return map;
  1340. }
  1341. }
  1342. class CopyOrgThesaurusRequest extends TokenRequest{
  1343. String? thesaurusCode;
  1344. CopyOrgThesaurusRequest({
  1345. this.thesaurusCode,
  1346. String? token,
  1347. }) : super(
  1348. token: token,
  1349. );
  1350. factory CopyOrgThesaurusRequest.fromJson(Map<String, dynamic> map) {
  1351. return CopyOrgThesaurusRequest(
  1352. thesaurusCode: map['ThesaurusCode'],
  1353. token: map['Token'],
  1354. );
  1355. }
  1356. Map<String, dynamic> toJson() {
  1357. final map = super.toJson();
  1358. if (thesaurusCode != null)
  1359. map['ThesaurusCode'] = thesaurusCode;
  1360. return map;
  1361. }
  1362. }
  1363. class ThesaurusAllDTO {
  1364. ThesaurusDTO? baseInfo;
  1365. List<ThesaurusItemDTO>? items;
  1366. ThesaurusAllDTO({
  1367. this.baseInfo,
  1368. this.items,
  1369. });
  1370. factory ThesaurusAllDTO.fromJson(Map<String, dynamic> map) {
  1371. return ThesaurusAllDTO(
  1372. baseInfo: map['BaseInfo'] != null ? ThesaurusDTO.fromJson(map['BaseInfo']) : null,
  1373. items: map['Items'] != null ? (map['Items'] as List).map((e)=>ThesaurusItemDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1374. );
  1375. }
  1376. Map<String, dynamic> toJson() {
  1377. final map = Map<String, dynamic>();
  1378. if (baseInfo != null) {
  1379. map['BaseInfo'] = baseInfo;
  1380. }
  1381. if (items != null) {
  1382. map['Items'] = items;
  1383. }
  1384. return map;
  1385. }
  1386. }
  1387. class GetDefaultThesaurusContentRequest extends TokenRequest{
  1388. String? languageCode;
  1389. GetDefaultThesaurusContentRequest({
  1390. this.languageCode,
  1391. String? token,
  1392. }) : super(
  1393. token: token,
  1394. );
  1395. factory GetDefaultThesaurusContentRequest.fromJson(Map<String, dynamic> map) {
  1396. return GetDefaultThesaurusContentRequest(
  1397. languageCode: map['LanguageCode'],
  1398. token: map['Token'],
  1399. );
  1400. }
  1401. Map<String, dynamic> toJson() {
  1402. final map = super.toJson();
  1403. if (languageCode != null)
  1404. map['LanguageCode'] = languageCode;
  1405. return map;
  1406. }
  1407. }
  1408. class SetUserDefaultThesaurusRequest extends TokenRequest{
  1409. String? thesaurusCode;
  1410. String? languageCode;
  1411. SetUserDefaultThesaurusRequest({
  1412. this.thesaurusCode,
  1413. this.languageCode,
  1414. String? token,
  1415. }) : super(
  1416. token: token,
  1417. );
  1418. factory SetUserDefaultThesaurusRequest.fromJson(Map<String, dynamic> map) {
  1419. return SetUserDefaultThesaurusRequest(
  1420. thesaurusCode: map['ThesaurusCode'],
  1421. languageCode: map['LanguageCode'],
  1422. token: map['Token'],
  1423. );
  1424. }
  1425. Map<String, dynamic> toJson() {
  1426. final map = super.toJson();
  1427. if (thesaurusCode != null)
  1428. map['ThesaurusCode'] = thesaurusCode;
  1429. if (languageCode != null)
  1430. map['LanguageCode'] = languageCode;
  1431. return map;
  1432. }
  1433. }
  1434. class RetryPushReportRecordsByCodesRequest extends TokenRequest{
  1435. List<String>? codes;
  1436. RetryPushReportRecordsByCodesRequest({
  1437. this.codes,
  1438. String? token,
  1439. }) : super(
  1440. token: token,
  1441. );
  1442. factory RetryPushReportRecordsByCodesRequest.fromJson(Map<String, dynamic> map) {
  1443. return RetryPushReportRecordsByCodesRequest(
  1444. codes: map['Codes']?.cast<String>().toList(),
  1445. token: map['Token'],
  1446. );
  1447. }
  1448. Map<String, dynamic> toJson() {
  1449. final map = super.toJson();
  1450. if (codes != null)
  1451. map['Codes'] = codes;
  1452. return map;
  1453. }
  1454. }
  1455. class FindReportPreviewImageRequest extends TokenRequest{
  1456. String? recordCode;
  1457. String? languageCode;
  1458. FindReportPreviewImageRequest({
  1459. this.recordCode,
  1460. this.languageCode,
  1461. String? token,
  1462. }) : super(
  1463. token: token,
  1464. );
  1465. factory FindReportPreviewImageRequest.fromJson(Map<String, dynamic> map) {
  1466. return FindReportPreviewImageRequest(
  1467. recordCode: map['RecordCode'],
  1468. languageCode: map['LanguageCode'],
  1469. token: map['Token'],
  1470. );
  1471. }
  1472. Map<String, dynamic> toJson() {
  1473. final map = super.toJson();
  1474. if (recordCode != null)
  1475. map['RecordCode'] = recordCode;
  1476. if (languageCode != null)
  1477. map['LanguageCode'] = languageCode;
  1478. return map;
  1479. }
  1480. }
  1481. class ConvertVitalReportPreviewImageRequest extends TokenRequest{
  1482. ReportDTO? reportInfo;
  1483. ConvertVitalReportPreviewImageRequest({
  1484. this.reportInfo,
  1485. String? token,
  1486. }) : super(
  1487. token: token,
  1488. );
  1489. factory ConvertVitalReportPreviewImageRequest.fromJson(Map<String, dynamic> map) {
  1490. return ConvertVitalReportPreviewImageRequest(
  1491. reportInfo: map['ReportInfo'] != null ? ReportDTO.fromJson(map['ReportInfo']) : null,
  1492. token: map['Token'],
  1493. );
  1494. }
  1495. Map<String, dynamic> toJson() {
  1496. final map = super.toJson();
  1497. if (reportInfo != null)
  1498. map['ReportInfo'] = reportInfo;
  1499. return map;
  1500. }
  1501. }
  1502. class FindReportShareUrlRequest extends TokenRequest{
  1503. String? reportCode;
  1504. String? languageCode;
  1505. FindReportShareUrlRequest({
  1506. this.reportCode,
  1507. this.languageCode,
  1508. String? token,
  1509. }) : super(
  1510. token: token,
  1511. );
  1512. factory FindReportShareUrlRequest.fromJson(Map<String, dynamic> map) {
  1513. return FindReportShareUrlRequest(
  1514. reportCode: map['ReportCode'],
  1515. languageCode: map['LanguageCode'],
  1516. token: map['Token'],
  1517. );
  1518. }
  1519. Map<String, dynamic> toJson() {
  1520. final map = super.toJson();
  1521. if (reportCode != null)
  1522. map['ReportCode'] = reportCode;
  1523. if (languageCode != null)
  1524. map['LanguageCode'] = languageCode;
  1525. return map;
  1526. }
  1527. }
  1528. class GetDefaultReportTemplateContentRequest extends TokenRequest{
  1529. String? languageCode;
  1530. GetDefaultReportTemplateContentRequest({
  1531. this.languageCode,
  1532. String? token,
  1533. }) : super(
  1534. token: token,
  1535. );
  1536. factory GetDefaultReportTemplateContentRequest.fromJson(Map<String, dynamic> map) {
  1537. return GetDefaultReportTemplateContentRequest(
  1538. languageCode: map['LanguageCode'],
  1539. token: map['Token'],
  1540. );
  1541. }
  1542. Map<String, dynamic> toJson() {
  1543. final map = super.toJson();
  1544. if (languageCode != null)
  1545. map['LanguageCode'] = languageCode;
  1546. return map;
  1547. }
  1548. }
  1549. class SetUserDefaultReportTemplateRequest extends TokenRequest{
  1550. String? reportTemplateCode;
  1551. String? languageCode;
  1552. SetUserDefaultReportTemplateRequest({
  1553. this.reportTemplateCode,
  1554. this.languageCode,
  1555. String? token,
  1556. }) : super(
  1557. token: token,
  1558. );
  1559. factory SetUserDefaultReportTemplateRequest.fromJson(Map<String, dynamic> map) {
  1560. return SetUserDefaultReportTemplateRequest(
  1561. reportTemplateCode: map['ReportTemplateCode'],
  1562. languageCode: map['LanguageCode'],
  1563. token: map['Token'],
  1564. );
  1565. }
  1566. Map<String, dynamic> toJson() {
  1567. final map = super.toJson();
  1568. if (reportTemplateCode != null)
  1569. map['ReportTemplateCode'] = reportTemplateCode;
  1570. if (languageCode != null)
  1571. map['LanguageCode'] = languageCode;
  1572. return map;
  1573. }
  1574. }
  1575. class GetReportTemplateDBRequest {
  1576. String? reportTemplateCode;
  1577. String? languageCode;
  1578. GetReportTemplateDBRequest({
  1579. this.reportTemplateCode,
  1580. this.languageCode,
  1581. });
  1582. factory GetReportTemplateDBRequest.fromJson(Map<String, dynamic> map) {
  1583. return GetReportTemplateDBRequest(
  1584. reportTemplateCode: map['ReportTemplateCode'],
  1585. languageCode: map['LanguageCode'],
  1586. );
  1587. }
  1588. Map<String, dynamic> toJson() {
  1589. final map = Map<String, dynamic>();
  1590. if (reportTemplateCode != null) {
  1591. map['ReportTemplateCode'] = reportTemplateCode;
  1592. }
  1593. if (languageCode != null) {
  1594. map['LanguageCode'] = languageCode;
  1595. }
  1596. return map;
  1597. }
  1598. }
  1599. class RefreshReportPosterRequest extends TokenRequest{
  1600. String? reportPosterCode;
  1601. RefreshReportPosterRequest({
  1602. this.reportPosterCode,
  1603. String? token,
  1604. }) : super(
  1605. token: token,
  1606. );
  1607. factory RefreshReportPosterRequest.fromJson(Map<String, dynamic> map) {
  1608. return RefreshReportPosterRequest(
  1609. reportPosterCode: map['ReportPosterCode'],
  1610. token: map['Token'],
  1611. );
  1612. }
  1613. Map<String, dynamic> toJson() {
  1614. final map = super.toJson();
  1615. if (reportPosterCode != null)
  1616. map['ReportPosterCode'] = reportPosterCode;
  1617. return map;
  1618. }
  1619. }
  1620. class SyncReportInfoRequest {
  1621. String? reportCode;
  1622. DateTime? createTime;
  1623. DateTime? updateTime;
  1624. String? recordCode;
  1625. String? reportUserCode;
  1626. String? patientCode;
  1627. String? patientName;
  1628. String? deviceCode;
  1629. String? reportTemplateJson;
  1630. String? reportDatasJson;
  1631. List<String>? reportLabels;
  1632. List<String>? platformLabels;
  1633. List<String>? diagnosisLabels;
  1634. DiagnosisOrganEnum reportOrgan;
  1635. List<ReportPreviewDTO>? reportPreviewList;
  1636. QualityType qualityType;
  1637. QualifiedState qualifiedState;
  1638. ReportQualityControl? qualityControlDatas;
  1639. SyncReportInfoRequest({
  1640. this.reportCode,
  1641. this.createTime,
  1642. this.updateTime,
  1643. this.recordCode,
  1644. this.reportUserCode,
  1645. this.patientCode,
  1646. this.patientName,
  1647. this.deviceCode,
  1648. this.reportTemplateJson,
  1649. this.reportDatasJson,
  1650. this.reportLabels,
  1651. this.platformLabels,
  1652. this.diagnosisLabels,
  1653. this.reportOrgan = DiagnosisOrganEnum.Null,
  1654. this.reportPreviewList,
  1655. this.qualityType = QualityType.None,
  1656. this.qualifiedState = QualifiedState.UnSet,
  1657. this.qualityControlDatas,
  1658. });
  1659. factory SyncReportInfoRequest.fromJson(Map<String, dynamic> map) {
  1660. return SyncReportInfoRequest(
  1661. reportCode: map['ReportCode'],
  1662. createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
  1663. updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null,
  1664. recordCode: map['RecordCode'],
  1665. reportUserCode: map['ReportUserCode'],
  1666. patientCode: map['PatientCode'],
  1667. patientName: map['PatientName'],
  1668. deviceCode: map['DeviceCode'],
  1669. reportTemplateJson: map['ReportTemplateJson'],
  1670. reportDatasJson: map['ReportDatasJson'],
  1671. reportLabels: map['ReportLabels']?.cast<String>().toList(),
  1672. platformLabels: map['PlatformLabels']?.cast<String>().toList(),
  1673. diagnosisLabels: map['DiagnosisLabels']?.cast<String>().toList(),
  1674. reportOrgan: DiagnosisOrganEnum.values.firstWhere((e) => e.index == map['ReportOrgan']),
  1675. reportPreviewList: map['ReportPreviewList'] != null ? (map['ReportPreviewList'] as List).map((e)=>ReportPreviewDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1676. qualityType: QualityType.values.firstWhere((e) => e.index == map['QualityType']),
  1677. qualifiedState: QualifiedState.values.firstWhere((e) => e.index == map['QualifiedState']),
  1678. qualityControlDatas: map['QualityControlDatas'] != null ? ReportQualityControl.fromJson(map['QualityControlDatas']) : null,
  1679. );
  1680. }
  1681. Map<String, dynamic> toJson() {
  1682. final map = Map<String, dynamic>();
  1683. if (reportCode != null) {
  1684. map['ReportCode'] = reportCode;
  1685. }
  1686. if (createTime != null) {
  1687. map['CreateTime'] = JsonRpcUtils.dateFormat(createTime!);
  1688. }
  1689. if (updateTime != null) {
  1690. map['UpdateTime'] = JsonRpcUtils.dateFormat(updateTime!);
  1691. }
  1692. if (recordCode != null) {
  1693. map['RecordCode'] = recordCode;
  1694. }
  1695. if (reportUserCode != null) {
  1696. map['ReportUserCode'] = reportUserCode;
  1697. }
  1698. if (patientCode != null) {
  1699. map['PatientCode'] = patientCode;
  1700. }
  1701. if (patientName != null) {
  1702. map['PatientName'] = patientName;
  1703. }
  1704. if (deviceCode != null) {
  1705. map['DeviceCode'] = deviceCode;
  1706. }
  1707. if (reportTemplateJson != null) {
  1708. map['ReportTemplateJson'] = reportTemplateJson;
  1709. }
  1710. if (reportDatasJson != null) {
  1711. map['ReportDatasJson'] = reportDatasJson;
  1712. }
  1713. if (reportLabels != null) {
  1714. map['ReportLabels'] = reportLabels;
  1715. }
  1716. if (platformLabels != null) {
  1717. map['PlatformLabels'] = platformLabels;
  1718. }
  1719. if (diagnosisLabels != null) {
  1720. map['DiagnosisLabels'] = diagnosisLabels;
  1721. }
  1722. map['ReportOrgan'] = reportOrgan.index;
  1723. if (reportPreviewList != null) {
  1724. map['ReportPreviewList'] = reportPreviewList;
  1725. }
  1726. map['QualityType'] = qualityType.index;
  1727. map['QualifiedState'] = qualifiedState.index;
  1728. if (qualityControlDatas != null) {
  1729. map['QualityControlDatas'] = qualityControlDatas;
  1730. }
  1731. return map;
  1732. }
  1733. }
  1734. class SyncBatchReportInfoRequest {
  1735. SyncDBEnum syncType;
  1736. List<SyncReportInfoRequest>? syncReportInfos;
  1737. SyncBatchReportInfoRequest({
  1738. this.syncType = SyncDBEnum.Migrate,
  1739. this.syncReportInfos,
  1740. });
  1741. factory SyncBatchReportInfoRequest.fromJson(Map<String, dynamic> map) {
  1742. return SyncBatchReportInfoRequest(
  1743. syncType: SyncDBEnum.values.firstWhere((e) => e.index == map['SyncType']),
  1744. syncReportInfos: map['SyncReportInfos'] != null ? (map['SyncReportInfos'] as List).map((e)=>SyncReportInfoRequest.fromJson(e as Map<String,dynamic>)).toList() : null,
  1745. );
  1746. }
  1747. Map<String, dynamic> toJson() {
  1748. final map = Map<String, dynamic>();
  1749. map['SyncType'] = syncType.index;
  1750. if (syncReportInfos != null) {
  1751. map['SyncReportInfos'] = syncReportInfos;
  1752. }
  1753. return map;
  1754. }
  1755. }
  1756. class ApplicationItemDTO {
  1757. String? description;
  1758. String? summary;
  1759. ApplicationItemDTO({
  1760. this.description,
  1761. this.summary,
  1762. });
  1763. factory ApplicationItemDTO.fromJson(Map<String, dynamic> map) {
  1764. return ApplicationItemDTO(
  1765. description: map['Description'],
  1766. summary: map['Summary'],
  1767. );
  1768. }
  1769. Map<String, dynamic> toJson() {
  1770. final map = Map<String, dynamic>();
  1771. if (description != null) {
  1772. map['Description'] = description;
  1773. }
  1774. if (summary != null) {
  1775. map['Summary'] = summary;
  1776. }
  1777. return map;
  1778. }
  1779. }
  1780. class ApplicationInfoDTO {
  1781. String? name;
  1782. List<ApplicationItemDTO>? items;
  1783. ApplicationInfoDTO({
  1784. this.name,
  1785. this.items,
  1786. });
  1787. factory ApplicationInfoDTO.fromJson(Map<String, dynamic> map) {
  1788. return ApplicationInfoDTO(
  1789. name: map['Name'],
  1790. items: map['Items'] != null ? (map['Items'] as List).map((e)=>ApplicationItemDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1791. );
  1792. }
  1793. Map<String, dynamic> toJson() {
  1794. final map = Map<String, dynamic>();
  1795. if (name != null) {
  1796. map['Name'] = name;
  1797. }
  1798. if (items != null) {
  1799. map['Items'] = items;
  1800. }
  1801. return map;
  1802. }
  1803. }
  1804. class ThesaurusInfoDTO {
  1805. String? name;
  1806. List<ApplicationInfoDTO>? applications;
  1807. ThesaurusInfoDTO({
  1808. this.name,
  1809. this.applications,
  1810. });
  1811. factory ThesaurusInfoDTO.fromJson(Map<String, dynamic> map) {
  1812. return ThesaurusInfoDTO(
  1813. name: map['Name'],
  1814. applications: map['Applications'] != null ? (map['Applications'] as List).map((e)=>ApplicationInfoDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1815. );
  1816. }
  1817. Map<String, dynamic> toJson() {
  1818. final map = Map<String, dynamic>();
  1819. if (name != null) {
  1820. map['Name'] = name;
  1821. }
  1822. if (applications != null) {
  1823. map['Applications'] = applications;
  1824. }
  1825. return map;
  1826. }
  1827. }
  1828. class ThesaurusTemplateInfoDTO {
  1829. List<ThesaurusInfoDTO>? thesaurusList;
  1830. ThesaurusTemplateInfoDTO({
  1831. this.thesaurusList,
  1832. });
  1833. factory ThesaurusTemplateInfoDTO.fromJson(Map<String, dynamic> map) {
  1834. return ThesaurusTemplateInfoDTO(
  1835. thesaurusList: map['ThesaurusList'] != null ? (map['ThesaurusList'] as List).map((e)=>ThesaurusInfoDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1836. );
  1837. }
  1838. Map<String, dynamic> toJson() {
  1839. final map = Map<String, dynamic>();
  1840. if (thesaurusList != null) {
  1841. map['ThesaurusList'] = thesaurusList;
  1842. }
  1843. return map;
  1844. }
  1845. }
  1846. class ImportThesaurusInfoRequest extends TokenRequest{
  1847. String? thesaurusName;
  1848. ThesaurusTemplateInfoDTO? thesaurusTemplateInfo;
  1849. ThesaurusUsageTypeEnum thesaurusUsageType;
  1850. ThesaurusStatusTypeEnum thesaurusStateType;
  1851. ThesaurusTypeEnum thesaurusType;
  1852. String? organizationCode;
  1853. String? personalCode;
  1854. String? languageCode;
  1855. ImportThesaurusInfoRequest({
  1856. this.thesaurusName,
  1857. this.thesaurusTemplateInfo,
  1858. this.thesaurusUsageType = ThesaurusUsageTypeEnum.People,
  1859. this.thesaurusStateType = ThesaurusStatusTypeEnum.Unpublished,
  1860. this.thesaurusType = ThesaurusTypeEnum.Default,
  1861. this.organizationCode,
  1862. this.personalCode,
  1863. this.languageCode,
  1864. String? token,
  1865. }) : super(
  1866. token: token,
  1867. );
  1868. factory ImportThesaurusInfoRequest.fromJson(Map<String, dynamic> map) {
  1869. return ImportThesaurusInfoRequest(
  1870. thesaurusName: map['ThesaurusName'],
  1871. thesaurusTemplateInfo: map['ThesaurusTemplateInfo'] != null ? ThesaurusTemplateInfoDTO.fromJson(map['ThesaurusTemplateInfo']) : null,
  1872. thesaurusUsageType: ThesaurusUsageTypeEnum.values.firstWhere((e) => e.index == map['ThesaurusUsageType']),
  1873. thesaurusStateType: ThesaurusStatusTypeEnum.values.firstWhere((e) => e.index == map['ThesaurusStateType']),
  1874. thesaurusType: ThesaurusTypeEnum.values.firstWhere((e) => e.index == map['ThesaurusType']),
  1875. organizationCode: map['OrganizationCode'],
  1876. personalCode: map['PersonalCode'],
  1877. languageCode: map['LanguageCode'],
  1878. token: map['Token'],
  1879. );
  1880. }
  1881. Map<String, dynamic> toJson() {
  1882. final map = super.toJson();
  1883. if (thesaurusName != null)
  1884. map['ThesaurusName'] = thesaurusName;
  1885. if (thesaurusTemplateInfo != null)
  1886. map['ThesaurusTemplateInfo'] = thesaurusTemplateInfo;
  1887. map['ThesaurusUsageType'] = thesaurusUsageType.index;
  1888. map['ThesaurusStateType'] = thesaurusStateType.index;
  1889. map['ThesaurusType'] = thesaurusType.index;
  1890. if (organizationCode != null)
  1891. map['OrganizationCode'] = organizationCode;
  1892. if (personalCode != null)
  1893. map['PersonalCode'] = personalCode;
  1894. if (languageCode != null)
  1895. map['LanguageCode'] = languageCode;
  1896. return map;
  1897. }
  1898. }
  1899. class ExportThesaurusTemplateResult {
  1900. String? thesaurusName;
  1901. ThesaurusTemplateInfoDTO? thesaurusTemplateInfo;
  1902. ExportThesaurusTemplateResult({
  1903. this.thesaurusName,
  1904. this.thesaurusTemplateInfo,
  1905. });
  1906. factory ExportThesaurusTemplateResult.fromJson(Map<String, dynamic> map) {
  1907. return ExportThesaurusTemplateResult(
  1908. thesaurusName: map['ThesaurusName'],
  1909. thesaurusTemplateInfo: map['ThesaurusTemplateInfo'] != null ? ThesaurusTemplateInfoDTO.fromJson(map['ThesaurusTemplateInfo']) : null,
  1910. );
  1911. }
  1912. Map<String, dynamic> toJson() {
  1913. final map = Map<String, dynamic>();
  1914. if (thesaurusName != null) {
  1915. map['ThesaurusName'] = thesaurusName;
  1916. }
  1917. if (thesaurusTemplateInfo != null) {
  1918. map['ThesaurusTemplateInfo'] = thesaurusTemplateInfo;
  1919. }
  1920. return map;
  1921. }
  1922. }
  1923. class FindThesaurusByCodeRequest extends TokenRequest{
  1924. String? thesaurusCode;
  1925. FindThesaurusByCodeRequest({
  1926. this.thesaurusCode,
  1927. String? token,
  1928. }) : super(
  1929. token: token,
  1930. );
  1931. factory FindThesaurusByCodeRequest.fromJson(Map<String, dynamic> map) {
  1932. return FindThesaurusByCodeRequest(
  1933. thesaurusCode: map['ThesaurusCode'],
  1934. token: map['Token'],
  1935. );
  1936. }
  1937. Map<String, dynamic> toJson() {
  1938. final map = super.toJson();
  1939. if (thesaurusCode != null)
  1940. map['ThesaurusCode'] = thesaurusCode;
  1941. return map;
  1942. }
  1943. }
  1944. class DeviceExamReportDTO extends ReportDTO{
  1945. String? shareUrl;
  1946. List<int>? reportBytes;
  1947. DeviceExamReportDTO({
  1948. this.shareUrl,
  1949. this.reportBytes,
  1950. String? reportTemplateJson,
  1951. String? reportDatasJson,
  1952. String? reportMeasureDatasJson,
  1953. String? encryptPatientName,
  1954. bool canEditReport = false,
  1955. String? deviceName,
  1956. String? reportTemplateName,
  1957. String? reportTemplateCode,
  1958. DateTime? examDate,
  1959. String? reportCode,
  1960. String? recordCode,
  1961. String? reportUserCode,
  1962. String? deviceCode,
  1963. String? patientCode,
  1964. String? patientId,
  1965. String? patientName,
  1966. List<String>? reportLabels,
  1967. List<String>? platformLabels,
  1968. List<String>? diagnosisLabels,
  1969. DiagnosisOrganEnum reportOrgan = DiagnosisOrganEnum.Null,
  1970. DateTime? reportTime,
  1971. String? reportUserName,
  1972. List<ReportPreviewDTO>? reportPreviewList,
  1973. String? referralRecordCode,
  1974. ReportTypeEnum reportType = ReportTypeEnum.RemoteDiagnosis,
  1975. bool isReferral = false,
  1976. QualityType qualityType = QualityType.None,
  1977. QualifiedState qualifiedState = QualifiedState.UnSet,
  1978. ReportQualityControl? qualityControlDatas,
  1979. bool isQualityControlled = false,
  1980. DateTime? createTime,
  1981. DateTime? updateTime,
  1982. }) : super(
  1983. reportTemplateJson: reportTemplateJson,
  1984. reportDatasJson: reportDatasJson,
  1985. reportMeasureDatasJson: reportMeasureDatasJson,
  1986. encryptPatientName: encryptPatientName,
  1987. canEditReport: canEditReport,
  1988. deviceName: deviceName,
  1989. reportTemplateName: reportTemplateName,
  1990. reportTemplateCode: reportTemplateCode,
  1991. examDate: examDate,
  1992. reportCode: reportCode,
  1993. recordCode: recordCode,
  1994. reportUserCode: reportUserCode,
  1995. deviceCode: deviceCode,
  1996. patientCode: patientCode,
  1997. patientId: patientId,
  1998. patientName: patientName,
  1999. reportLabels: reportLabels,
  2000. platformLabels: platformLabels,
  2001. diagnosisLabels: diagnosisLabels,
  2002. reportOrgan: reportOrgan,
  2003. reportTime: reportTime,
  2004. reportUserName: reportUserName,
  2005. reportPreviewList: reportPreviewList,
  2006. referralRecordCode: referralRecordCode,
  2007. reportType: reportType,
  2008. isReferral: isReferral,
  2009. qualityType: qualityType,
  2010. qualifiedState: qualifiedState,
  2011. qualityControlDatas: qualityControlDatas,
  2012. isQualityControlled: isQualityControlled,
  2013. createTime: createTime,
  2014. updateTime: updateTime,
  2015. );
  2016. factory DeviceExamReportDTO.fromJson(Map<String, dynamic> map) {
  2017. final reportBytesData = map['ReportBytes'];
  2018. return DeviceExamReportDTO(
  2019. shareUrl: map['ShareUrl'],
  2020. reportBytes: reportBytesData != null ? (reportBytesData as List).map((e) => e as int).toList(): null,
  2021. reportTemplateJson: map['ReportTemplateJson'],
  2022. reportDatasJson: map['ReportDatasJson'],
  2023. reportMeasureDatasJson: map['ReportMeasureDatasJson'],
  2024. encryptPatientName: map['EncryptPatientName'],
  2025. canEditReport: map['CanEditReport'],
  2026. deviceName: map['DeviceName'],
  2027. reportTemplateName: map['ReportTemplateName'],
  2028. reportTemplateCode: map['ReportTemplateCode'],
  2029. examDate: map['ExamDate'] != null ? DateTime.parse(map['ExamDate']) : null,
  2030. reportCode: map['ReportCode'],
  2031. recordCode: map['RecordCode'],
  2032. reportUserCode: map['ReportUserCode'],
  2033. deviceCode: map['DeviceCode'],
  2034. patientCode: map['PatientCode'],
  2035. patientId: map['PatientId'],
  2036. patientName: map['PatientName'],
  2037. reportLabels: map['ReportLabels']?.cast<String>().toList(),
  2038. platformLabels: map['PlatformLabels']?.cast<String>().toList(),
  2039. diagnosisLabels: map['DiagnosisLabels']?.cast<String>().toList(),
  2040. reportOrgan: DiagnosisOrganEnum.values.firstWhere((e) => e.index == map['ReportOrgan']),
  2041. reportTime: map['ReportTime'] != null ? DateTime.parse(map['ReportTime']) : null,
  2042. reportUserName: map['ReportUserName'],
  2043. reportPreviewList: map['ReportPreviewList'] != null ? (map['ReportPreviewList'] as List).map((e)=>ReportPreviewDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  2044. referralRecordCode: map['ReferralRecordCode'],
  2045. reportType: ReportTypeEnum.values.firstWhere((e) => e.index == map['ReportType']),
  2046. isReferral: map['IsReferral'],
  2047. qualityType: QualityType.values.firstWhere((e) => e.index == map['QualityType']),
  2048. qualifiedState: QualifiedState.values.firstWhere((e) => e.index == map['QualifiedState']),
  2049. qualityControlDatas: map['QualityControlDatas'] != null ? ReportQualityControl.fromJson(map['QualityControlDatas']) : null,
  2050. isQualityControlled: map['IsQualityControlled'],
  2051. createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
  2052. updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null,
  2053. );
  2054. }
  2055. Map<String, dynamic> toJson() {
  2056. final map = super.toJson();
  2057. if (shareUrl != null)
  2058. map['ShareUrl'] = shareUrl;
  2059. if (reportBytes != null)
  2060. map['ReportBytes'] = reportBytes;
  2061. return map;
  2062. }
  2063. }
  2064. class GetDeviceExamReportsRequest extends TokenRequest{
  2065. String? recordCode;
  2066. String? languageCode;
  2067. GetDeviceExamReportsRequest({
  2068. this.recordCode,
  2069. this.languageCode,
  2070. String? token,
  2071. }) : super(
  2072. token: token,
  2073. );
  2074. factory GetDeviceExamReportsRequest.fromJson(Map<String, dynamic> map) {
  2075. return GetDeviceExamReportsRequest(
  2076. recordCode: map['RecordCode'],
  2077. languageCode: map['LanguageCode'],
  2078. token: map['Token'],
  2079. );
  2080. }
  2081. Map<String, dynamic> toJson() {
  2082. final map = super.toJson();
  2083. if (recordCode != null)
  2084. map['RecordCode'] = recordCode;
  2085. if (languageCode != null)
  2086. map['LanguageCode'] = languageCode;
  2087. return map;
  2088. }
  2089. }
  2090. class GetDeviceExamReportByCodeRequest extends TokenRequest{
  2091. String? reportCode;
  2092. String? languageCode;
  2093. bool includeReportBytes;
  2094. GetDeviceExamReportByCodeRequest({
  2095. this.reportCode,
  2096. this.languageCode,
  2097. this.includeReportBytes = false,
  2098. String? token,
  2099. }) : super(
  2100. token: token,
  2101. );
  2102. factory GetDeviceExamReportByCodeRequest.fromJson(Map<String, dynamic> map) {
  2103. return GetDeviceExamReportByCodeRequest(
  2104. reportCode: map['ReportCode'],
  2105. languageCode: map['LanguageCode'],
  2106. includeReportBytes: map['IncludeReportBytes'],
  2107. token: map['Token'],
  2108. );
  2109. }
  2110. Map<String, dynamic> toJson() {
  2111. final map = super.toJson();
  2112. if (reportCode != null)
  2113. map['ReportCode'] = reportCode;
  2114. if (languageCode != null)
  2115. map['LanguageCode'] = languageCode;
  2116. map['IncludeReportBytes'] = includeReportBytes;
  2117. return map;
  2118. }
  2119. }