remedical.m.dart 76 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927
  1. import 'aIDiagnosis.m.dart';
  2. import 'patient.m.dart';
  3. import 'recordInfo.m.dart';
  4. import 'connect.m.dart';
  5. import 'authentication.m.dart';
  6. import 'organization.m.dart';
  7. import 'package:fis_jsonrpc/utils.dart';
  8. class CreateExaminfoResult {
  9. String? examCode;
  10. CreateExaminfoResult({
  11. this.examCode,
  12. });
  13. factory CreateExaminfoResult.fromJson(Map<String, dynamic> map) {
  14. return CreateExaminfoResult(
  15. examCode: map['ExamCode'],
  16. );
  17. }
  18. Map<String, dynamic> toJson() {
  19. final map = Map<String, dynamic>();
  20. if(examCode != null)
  21. map['ExamCode'] = examCode;
  22. return map;
  23. }
  24. }
  25. class CreateExaminfoRequest extends TokenRequest{
  26. String? patientType;
  27. String? reservationCode;
  28. List<DataItemDTO >? patientInfo;
  29. List<PatientInfoExt >? patientScanInfoList;
  30. CreateExaminfoRequest({
  31. this.patientType,
  32. this.reservationCode,
  33. this.patientInfo,
  34. this.patientScanInfoList,
  35. String? token,
  36. }) : super(
  37. token: token,
  38. );
  39. factory CreateExaminfoRequest.fromJson(Map<String, dynamic> map) {
  40. return CreateExaminfoRequest(
  41. patientType: map['PatientType'],
  42. reservationCode: map['ReservationCode'],
  43. patientInfo: map['PatientInfo'] != null ? (map['PatientInfo'] as List).map((e)=>DataItemDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  44. patientScanInfoList: map['PatientScanInfoList'] != null ? (map['PatientScanInfoList'] as List).map((e)=>PatientInfoExt.fromJson(e as Map<String,dynamic>)).toList() : null,
  45. token: map['Token'],
  46. );
  47. }
  48. Map<String, dynamic> toJson() {
  49. final map = super.toJson();
  50. if(patientType != null)
  51. map['PatientType'] = patientType;
  52. if(reservationCode != null)
  53. map['ReservationCode'] = reservationCode;
  54. if(patientInfo != null)
  55. map['PatientInfo'] = patientInfo;
  56. if(patientScanInfoList != null)
  57. map['PatientScanInfoList'] = patientScanInfoList;
  58. return map;
  59. }
  60. }
  61. class UploadExamDataRequest extends TokenRequest{
  62. String? examCode;
  63. String? previewFileToken;
  64. String? fileToken;
  65. String? coverImageToken;
  66. String? application;
  67. RemedicalFileDataTypeEnum fileDataType;
  68. MeasuredResultsDTO? measuredResult;
  69. ScanImageDTO? commentResult;
  70. UploadExamDataRequest({
  71. this.examCode,
  72. this.previewFileToken,
  73. this.fileToken,
  74. this.coverImageToken,
  75. this.application,
  76. this.fileDataType = RemedicalFileDataTypeEnum.VinnoVidSingle,
  77. this.measuredResult,
  78. this.commentResult,
  79. String? token,
  80. }) : super(
  81. token: token,
  82. );
  83. factory UploadExamDataRequest.fromJson(Map<String, dynamic> map) {
  84. return UploadExamDataRequest(
  85. examCode: map['ExamCode'],
  86. previewFileToken: map['PreviewFileToken'],
  87. fileToken: map['FileToken'],
  88. coverImageToken: map['CoverImageToken'],
  89. application: map['Application'],
  90. fileDataType: RemedicalFileDataTypeEnum.values.firstWhere((e) => e.index == map['FileDataType']),
  91. measuredResult: map['MeasuredResult'] != null ? MeasuredResultsDTO.fromJson(map['MeasuredResult']) : null,
  92. commentResult: map['CommentResult'] != null ? ScanImageDTO.fromJson(map['CommentResult']) : null,
  93. token: map['Token'],
  94. );
  95. }
  96. Map<String, dynamic> toJson() {
  97. final map = super.toJson();
  98. if(examCode != null)
  99. map['ExamCode'] = examCode;
  100. if(previewFileToken != null)
  101. map['PreviewFileToken'] = previewFileToken;
  102. if(fileToken != null)
  103. map['FileToken'] = fileToken;
  104. if(coverImageToken != null)
  105. map['CoverImageToken'] = coverImageToken;
  106. if(application != null)
  107. map['Application'] = application;
  108. map['FileDataType'] = fileDataType.index;
  109. if(measuredResult != null)
  110. map['MeasuredResult'] = measuredResult;
  111. if(commentResult != null)
  112. map['CommentResult'] = commentResult;
  113. return map;
  114. }
  115. }
  116. class FindRemedicalByCodeRequest extends TokenRequest{
  117. String? remedicalCode;
  118. bool existDiagnosisResult;
  119. FindRemedicalByCodeRequest({
  120. this.remedicalCode,
  121. this.existDiagnosisResult = false,
  122. String? token,
  123. }) : super(
  124. token: token,
  125. );
  126. factory FindRemedicalByCodeRequest.fromJson(Map<String, dynamic> map) {
  127. return FindRemedicalByCodeRequest(
  128. remedicalCode: map['RemedicalCode'],
  129. existDiagnosisResult: map['ExistDiagnosisResult'],
  130. token: map['Token'],
  131. );
  132. }
  133. Map<String, dynamic> toJson() {
  134. final map = super.toJson();
  135. if(remedicalCode != null)
  136. map['RemedicalCode'] = remedicalCode;
  137. map['ExistDiagnosisResult'] = existDiagnosisResult;
  138. return map;
  139. }
  140. }
  141. class AddToRemedicalDiagnosisRequest extends TokenRequest{
  142. String? remedicalCode;
  143. AddToRemedicalDiagnosisRequest({
  144. this.remedicalCode,
  145. String? token,
  146. }) : super(
  147. token: token,
  148. );
  149. factory AddToRemedicalDiagnosisRequest.fromJson(Map<String, dynamic> map) {
  150. return AddToRemedicalDiagnosisRequest(
  151. remedicalCode: map['RemedicalCode'],
  152. token: map['Token'],
  153. );
  154. }
  155. Map<String, dynamic> toJson() {
  156. final map = super.toJson();
  157. if(remedicalCode != null)
  158. map['RemedicalCode'] = remedicalCode;
  159. return map;
  160. }
  161. }
  162. class RemedicalItemList {
  163. String? patientScanTypeDesc;
  164. List<RemedicalInfoDTO >? remedicalList;
  165. RemedicalItemList({
  166. this.patientScanTypeDesc,
  167. this.remedicalList,
  168. });
  169. factory RemedicalItemList.fromJson(Map<String, dynamic> map) {
  170. return RemedicalItemList(
  171. patientScanTypeDesc: map['PatientScanTypeDesc'],
  172. remedicalList: map['RemedicalList'] != null ? (map['RemedicalList'] as List).map((e)=>RemedicalInfoDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  173. );
  174. }
  175. Map<String, dynamic> toJson() {
  176. final map = Map<String, dynamic>();
  177. if(patientScanTypeDesc != null)
  178. map['PatientScanTypeDesc'] = patientScanTypeDesc;
  179. if(remedicalList != null)
  180. map['RemedicalList'] = remedicalList;
  181. return map;
  182. }
  183. }
  184. class RemedicalListResult {
  185. String? scanDate;
  186. String? recordCode;
  187. List<RemedicalItemList >? remedicalItemList;
  188. RemedicalListResult({
  189. this.scanDate,
  190. this.recordCode,
  191. this.remedicalItemList,
  192. });
  193. factory RemedicalListResult.fromJson(Map<String, dynamic> map) {
  194. return RemedicalListResult(
  195. scanDate: map['ScanDate'],
  196. recordCode: map['RecordCode'],
  197. remedicalItemList: map['RemedicalItemList'] != null ? (map['RemedicalItemList'] as List).map((e)=>RemedicalItemList.fromJson(e as Map<String,dynamic>)).toList() : null,
  198. );
  199. }
  200. Map<String, dynamic> toJson() {
  201. final map = Map<String, dynamic>();
  202. if(scanDate != null)
  203. map['ScanDate'] = scanDate;
  204. if(recordCode != null)
  205. map['RecordCode'] = recordCode;
  206. if(remedicalItemList != null)
  207. map['RemedicalItemList'] = remedicalItemList;
  208. return map;
  209. }
  210. }
  211. enum QueryDropdownListEnum {
  212. Org,
  213. }
  214. class QueryDropdownListReuqest extends TokenRequest{
  215. QueryDropdownListEnum queryType;
  216. String? queryValue;
  217. QueryDropdownListReuqest({
  218. this.queryType = QueryDropdownListEnum.Org,
  219. this.queryValue,
  220. String? token,
  221. }) : super(
  222. token: token,
  223. );
  224. factory QueryDropdownListReuqest.fromJson(Map<String, dynamic> map) {
  225. return QueryDropdownListReuqest(
  226. queryType: QueryDropdownListEnum.values.firstWhere((e) => e.index == map['QueryType']),
  227. queryValue: map['QueryValue'],
  228. token: map['Token'],
  229. );
  230. }
  231. Map<String, dynamic> toJson() {
  232. final map = super.toJson();
  233. map['QueryType'] = queryType.index;
  234. if(queryValue != null)
  235. map['QueryValue'] = queryValue;
  236. return map;
  237. }
  238. }
  239. class RservationResult {
  240. String? reservationCode;
  241. List<DataItemDTO >? patientInfo;
  242. List<PatientInfoExt >? patientInfoExtList;
  243. String? dataSource;
  244. RservationResult({
  245. this.reservationCode,
  246. this.patientInfo,
  247. this.patientInfoExtList,
  248. this.dataSource,
  249. });
  250. factory RservationResult.fromJson(Map<String, dynamic> map) {
  251. return RservationResult(
  252. reservationCode: map['ReservationCode'],
  253. patientInfo: map['PatientInfo'] != null ? (map['PatientInfo'] as List).map((e)=>DataItemDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  254. patientInfoExtList: map['PatientInfoExtList'] != null ? (map['PatientInfoExtList'] as List).map((e)=>PatientInfoExt.fromJson(e as Map<String,dynamic>)).toList() : null,
  255. dataSource: map['DataSource'],
  256. );
  257. }
  258. Map<String, dynamic> toJson() {
  259. final map = Map<String, dynamic>();
  260. if(reservationCode != null)
  261. map['ReservationCode'] = reservationCode;
  262. if(patientInfo != null)
  263. map['PatientInfo'] = patientInfo;
  264. if(patientInfoExtList != null)
  265. map['PatientInfoExtList'] = patientInfoExtList;
  266. if(dataSource != null)
  267. map['DataSource'] = dataSource;
  268. return map;
  269. }
  270. }
  271. class QueryReservationResult {
  272. List<RservationResult >? reservationList;
  273. QueryReservationResult({
  274. this.reservationList,
  275. });
  276. factory QueryReservationResult.fromJson(Map<String, dynamic> map) {
  277. return QueryReservationResult(
  278. reservationList: map['ReservationList'] != null ? (map['ReservationList'] as List).map((e)=>RservationResult.fromJson(e as Map<String,dynamic>)).toList() : null,
  279. );
  280. }
  281. Map<String, dynamic> toJson() {
  282. final map = Map<String, dynamic>();
  283. if(reservationList != null)
  284. map['ReservationList'] = reservationList;
  285. return map;
  286. }
  287. }
  288. class QueryReservationRequest extends TokenRequest{
  289. DateTime? createTime;
  290. QueryReservationRequest({
  291. this.createTime,
  292. String? token,
  293. }) : super(
  294. token: token,
  295. );
  296. factory QueryReservationRequest.fromJson(Map<String, dynamic> map) {
  297. return QueryReservationRequest(
  298. createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
  299. token: map['Token'],
  300. );
  301. }
  302. Map<String, dynamic> toJson() {
  303. final map = super.toJson();
  304. if(createTime != null)
  305. map['CreateTime'] = JsonRpcUtils.dateFormat(createTime!);
  306. return map;
  307. }
  308. }
  309. class FinishExamNotifyDetail {
  310. String? recordCode;
  311. RecordStatusEnum recordStatus;
  312. FinishExamNotifyDetail({
  313. this.recordCode,
  314. this.recordStatus = RecordStatusEnum.NotScanned,
  315. });
  316. factory FinishExamNotifyDetail.fromJson(Map<String, dynamic> map) {
  317. return FinishExamNotifyDetail(
  318. recordCode: map['RecordCode'],
  319. recordStatus: RecordStatusEnum.values.firstWhere((e) => e.index == map['RecordStatus']),
  320. );
  321. }
  322. Map<String, dynamic> toJson() {
  323. final map = Map<String, dynamic>();
  324. if(recordCode != null)
  325. map['RecordCode'] = recordCode;
  326. map['RecordStatus'] = recordStatus.index;
  327. return map;
  328. }
  329. }
  330. class PushFinishExamNotifyToClientRequest {
  331. List<FinishExamNotifyDetail >? records;
  332. String? userCode;
  333. PushFinishExamNotifyToClientRequest({
  334. this.records,
  335. this.userCode,
  336. });
  337. factory PushFinishExamNotifyToClientRequest.fromJson(Map<String, dynamic> map) {
  338. return PushFinishExamNotifyToClientRequest(
  339. records: map['Records'] != null ? (map['Records'] as List).map((e)=>FinishExamNotifyDetail.fromJson(e as Map<String,dynamic>)).toList() : null,
  340. userCode: map['UserCode'],
  341. );
  342. }
  343. Map<String, dynamic> toJson() {
  344. final map = Map<String, dynamic>();
  345. if(records != null)
  346. map['Records'] = records;
  347. if(userCode != null)
  348. map['UserCode'] = userCode;
  349. return map;
  350. }
  351. }
  352. class DeviceFinishExamRequest extends TokenRequest{
  353. List<String >? records;
  354. DeviceFinishExamRequest({
  355. this.records,
  356. String? token,
  357. }) : super(
  358. token: token,
  359. );
  360. factory DeviceFinishExamRequest.fromJson(Map<String, dynamic> map) {
  361. return DeviceFinishExamRequest(
  362. records: map['Records'] != null ? map['Records'].cast<String>().toList() : null,
  363. token: map['Token'],
  364. );
  365. }
  366. Map<String, dynamic> toJson() {
  367. final map = super.toJson();
  368. if(records != null)
  369. map['Records'] = records;
  370. return map;
  371. }
  372. }
  373. class QueryExamListItemResult {
  374. String? examCode;
  375. String? patientName;
  376. String? age;
  377. String? sex;
  378. List<String >? associatedExamCodes;
  379. QueryExamListItemResult({
  380. this.examCode,
  381. this.patientName,
  382. this.age,
  383. this.sex,
  384. this.associatedExamCodes,
  385. });
  386. factory QueryExamListItemResult.fromJson(Map<String, dynamic> map) {
  387. return QueryExamListItemResult(
  388. examCode: map['ExamCode'],
  389. patientName: map['PatientName'],
  390. age: map['Age'],
  391. sex: map['Sex'],
  392. associatedExamCodes: map['AssociatedExamCodes'] != null ? map['AssociatedExamCodes'].cast<String>().toList() : null,
  393. );
  394. }
  395. Map<String, dynamic> toJson() {
  396. final map = Map<String, dynamic>();
  397. if(examCode != null)
  398. map['ExamCode'] = examCode;
  399. if(patientName != null)
  400. map['PatientName'] = patientName;
  401. if(age != null)
  402. map['Age'] = age;
  403. if(sex != null)
  404. map['Sex'] = sex;
  405. if(associatedExamCodes != null)
  406. map['AssociatedExamCodes'] = associatedExamCodes;
  407. return map;
  408. }
  409. }
  410. enum ExamStatusEnum {
  411. Wait,
  412. Done,
  413. }
  414. class QueryExamListRequest extends PageRequest{
  415. String? patientName;
  416. DateTime? startTime;
  417. DateTime? endTime;
  418. ExamStatusEnum examStatus;
  419. QueryExamListRequest({
  420. this.patientName,
  421. this.startTime,
  422. this.endTime,
  423. this.examStatus = ExamStatusEnum.Wait,
  424. int pageIndex = 0,
  425. int pageSize = 0,
  426. String? token,
  427. }) : super(
  428. pageIndex: pageIndex,
  429. pageSize: pageSize,
  430. token: token,
  431. );
  432. factory QueryExamListRequest.fromJson(Map<String, dynamic> map) {
  433. return QueryExamListRequest(
  434. patientName: map['PatientName'],
  435. startTime: map['StartTime'] != null ? DateTime.parse(map['StartTime']) : null,
  436. endTime: map['EndTime'] != null ? DateTime.parse(map['EndTime']) : null,
  437. examStatus: ExamStatusEnum.values.firstWhere((e) => e.index == map['ExamStatus']),
  438. pageIndex: map['PageIndex'],
  439. pageSize: map['PageSize'],
  440. token: map['Token'],
  441. );
  442. }
  443. Map<String, dynamic> toJson() {
  444. final map = super.toJson();
  445. if(patientName != null)
  446. map['PatientName'] = patientName;
  447. if(startTime != null)
  448. map['StartTime'] = JsonRpcUtils.dateFormat(startTime!);
  449. if(endTime != null)
  450. map['EndTime'] = JsonRpcUtils.dateFormat(endTime!);
  451. map['ExamStatus'] = examStatus.index;
  452. return map;
  453. }
  454. }
  455. class QueryExamInfoResult {
  456. DateTime? createTime;
  457. String? deptName;
  458. String? patientName;
  459. String? patientAge;
  460. String? patientSex;
  461. List<PatientInfoExt >? patientInfoExtList;
  462. List<String >? associatedExamCodes;
  463. RecordStatusEnum examStatus;
  464. QueryExamInfoResult({
  465. this.createTime,
  466. this.deptName,
  467. this.patientName,
  468. this.patientAge,
  469. this.patientSex,
  470. this.patientInfoExtList,
  471. this.associatedExamCodes,
  472. this.examStatus = RecordStatusEnum.NotScanned,
  473. });
  474. factory QueryExamInfoResult.fromJson(Map<String, dynamic> map) {
  475. return QueryExamInfoResult(
  476. createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
  477. deptName: map['DeptName'],
  478. patientName: map['PatientName'],
  479. patientAge: map['PatientAge'],
  480. patientSex: map['PatientSex'],
  481. patientInfoExtList: map['PatientInfoExtList'] != null ? (map['PatientInfoExtList'] as List).map((e)=>PatientInfoExt.fromJson(e as Map<String,dynamic>)).toList() : null,
  482. associatedExamCodes: map['AssociatedExamCodes'] != null ? map['AssociatedExamCodes'].cast<String>().toList() : null,
  483. examStatus: RecordStatusEnum.values.firstWhere((e) => e.index == map['ExamStatus']),
  484. );
  485. }
  486. Map<String, dynamic> toJson() {
  487. final map = Map<String, dynamic>();
  488. if(createTime != null)
  489. map['CreateTime'] = JsonRpcUtils.dateFormat(createTime!);
  490. if(deptName != null)
  491. map['DeptName'] = deptName;
  492. if(patientName != null)
  493. map['PatientName'] = patientName;
  494. if(patientAge != null)
  495. map['PatientAge'] = patientAge;
  496. if(patientSex != null)
  497. map['PatientSex'] = patientSex;
  498. if(patientInfoExtList != null)
  499. map['PatientInfoExtList'] = patientInfoExtList;
  500. if(associatedExamCodes != null)
  501. map['AssociatedExamCodes'] = associatedExamCodes;
  502. map['ExamStatus'] = examStatus.index;
  503. return map;
  504. }
  505. }
  506. class QueryExamInfoRequest extends TokenRequest{
  507. String? examCode;
  508. QueryExamInfoRequest({
  509. this.examCode,
  510. String? token,
  511. }) : super(
  512. token: token,
  513. );
  514. factory QueryExamInfoRequest.fromJson(Map<String, dynamic> map) {
  515. return QueryExamInfoRequest(
  516. examCode: map['ExamCode'],
  517. token: map['Token'],
  518. );
  519. }
  520. Map<String, dynamic> toJson() {
  521. final map = super.toJson();
  522. if(examCode != null)
  523. map['ExamCode'] = examCode;
  524. return map;
  525. }
  526. }
  527. enum Unit {
  528. None,
  529. percent,
  530. fraction,
  531. placeHolder_3,
  532. placeHolder_4,
  533. placeHolder_5,
  534. placeHolder_6,
  535. placeHolder_7,
  536. placeHolder_8,
  537. placeHolder_9,
  538. cm,
  539. mm,
  540. inch,
  541. ft,
  542. placeHolder_14,
  543. placeHolder_15,
  544. placeHolder_16,
  545. placeHolder_17,
  546. placeHolder_18,
  547. placeHolder_19,
  548. s,
  549. minute,
  550. hour,
  551. day,
  552. week,
  553. week_day,
  554. Tick,
  555. msec,
  556. placeHolder_28,
  557. placeHolder_29,
  558. degree,
  559. radian,
  560. placeHolder_32,
  561. placeHolder_33,
  562. placeHolder_34,
  563. placeHolder_35,
  564. placeHolder_36,
  565. placeHolder_37,
  566. placeHolder_38,
  567. placeHolder_39,
  568. g,
  569. mg,
  570. ng,
  571. kg,
  572. oz,
  573. lb,
  574. lb_oz,
  575. placeHolder_47,
  576. placeHolder_48,
  577. placeHolder_49,
  578. cm2,
  579. mm2,
  580. m2,
  581. placeHolder_53,
  582. placeHolder_54,
  583. placeHolder_55,
  584. placeHolder_56,
  585. placeHolder_57,
  586. placeHolder_58,
  587. placeHolder_59,
  588. cm3,
  589. mm3,
  590. ml,
  591. L,
  592. placeHolder_64,
  593. placeHolder_65,
  594. placeHolder_66,
  595. placeHolder_67,
  596. placeHolder_68,
  597. placeHolder_69,
  598. cms,
  599. mms,
  600. ms,
  601. placeHolder_73,
  602. placeHolder_74,
  603. placeHolder_75,
  604. placeHolder_76,
  605. placeHolder_77,
  606. placeHolder_78,
  607. placeHolder_79,
  608. cms2,
  609. mms2,
  610. placeHolder_82,
  611. placeHolder_83,
  612. placeHolder_84,
  613. placeHolder_85,
  614. placeHolder_86,
  615. placeHolder_87,
  616. placeHolder_88,
  617. placeHolder_89,
  618. cm3s,
  619. mls,
  620. mlmin,
  621. Lmin,
  622. placeHolder_94,
  623. placeHolder_95,
  624. placeHolder_96,
  625. placeHolder_97,
  626. placeHolder_98,
  627. placeHolder_99,
  628. gcm3,
  629. gml,
  630. ngml,
  631. placeHolder_103,
  632. placeHolder_104,
  633. placeHolder_105,
  634. placeHolder_106,
  635. placeHolder_107,
  636. placeHolder_108,
  637. placeHolder_109,
  638. mmHg,
  639. placeHolder_111,
  640. placeHolder_112,
  641. placeHolder_113,
  642. placeHolder_114,
  643. placeHolder_115,
  644. placeHolder_116,
  645. placeHolder_117,
  646. placeHolder_118,
  647. placeHolder_119,
  648. mV,
  649. placeHolder_121,
  650. placeHolder_122,
  651. placeHolder_123,
  652. placeHolder_124,
  653. placeHolder_125,
  654. placeHolder_126,
  655. placeHolder_127,
  656. placeHolder_128,
  657. placeHolder_129,
  658. Hz,
  659. KHz,
  660. HR,
  661. placeHolder_133,
  662. placeHolder_134,
  663. placeHolder_135,
  664. placeHolder_136,
  665. placeHolder_137,
  666. placeHolder_138,
  667. placeHolder_139,
  668. cm3m2,
  669. mlm2,
  670. placeHolder_142,
  671. placeHolder_143,
  672. placeHolder_144,
  673. placeHolder_145,
  674. placeHolder_146,
  675. placeHolder_147,
  676. placeHolder_148,
  677. placeHolder_149,
  678. cm3sm2,
  679. mlsm2,
  680. placeHolder_152,
  681. cm3minm2,
  682. mlminm2,
  683. Lminm2,
  684. placeHolder_156,
  685. placeHolder_157,
  686. placeHolder_158,
  687. placeHolder_159,
  688. circs,
  689. placeHolder_161,
  690. placeHolder_162,
  691. placeHolder_163,
  692. placeHolder_164,
  693. placeHolder_165,
  694. placeHolder_166,
  695. placeHolder_167,
  696. placeHolder_168,
  697. placeHolder_169,
  698. mlbeat,
  699. placeHolder_171,
  700. placeHolder_172,
  701. placeHolder_173,
  702. placeHolder_174,
  703. placeHolder_175,
  704. placeHolder_176,
  705. placeHolder_177,
  706. placeHolder_178,
  707. placeHolder_179,
  708. mm2pa,
  709. d1mpa,
  710. kpa,
  711. placeHolder_183,
  712. placeHolder_184,
  713. placeHolder_185,
  714. placeHolder_186,
  715. placeHolder_187,
  716. placeHolder_188,
  717. placeHolder_189,
  718. mmHgs,
  719. placeHolder_191,
  720. placeHolder_192,
  721. placeHolder_193,
  722. placeHolder_194,
  723. placeHolder_195,
  724. placeHolder_196,
  725. placeHolder_197,
  726. placeHolder_198,
  727. placeHolder_199,
  728. gm2,
  729. kgm2,
  730. placeHolder_202,
  731. placeHolder_203,
  732. placeHolder_204,
  733. placeHolder_205,
  734. placeHolder_206,
  735. placeHolder_207,
  736. placeHolder_208,
  737. placeHolder_209,
  738. cm2m2,
  739. placeHolder_211,
  740. placeHolder_212,
  741. placeHolder_213,
  742. placeHolder_214,
  743. placeHolder_215,
  744. placeHolder_216,
  745. placeHolder_217,
  746. placeHolder_218,
  747. placeHolder_219,
  748. cmm2,
  749. mmm2,
  750. placeHolder_222,
  751. placeHolder_223,
  752. placeHolder_224,
  753. placeHolder_225,
  754. placeHolder_226,
  755. placeHolder_227,
  756. placeHolder_228,
  757. placeHolder_229,
  758. pers,
  759. placeHolder_231,
  760. placeHolder_232,
  761. placeHolder_233,
  762. placeHolder_234,
  763. placeHolder_235,
  764. placeHolder_236,
  765. placeHolder_237,
  766. placeHolder_238,
  767. placeHolder_239,
  768. placeHolder_240,
  769. placeHolder_241,
  770. placeHolder_242,
  771. placeHolder_243,
  772. placeHolder_244,
  773. placeHolder_245,
  774. placeHolder_246,
  775. placeHolder_247,
  776. placeHolder_248,
  777. placeHolder_249,
  778. Celsius,
  779. Fahrenheit,
  780. placeHolder_252,
  781. placeHolder_253,
  782. placeHolder_254,
  783. placeHolder_255,
  784. placeHolder_256,
  785. placeHolder_257,
  786. placeHolder_258,
  787. placeHolder_259,
  788. Ohm,
  789. placeHolder_261,
  790. placeHolder_262,
  791. placeHolder_263,
  792. placeHolder_264,
  793. placeHolder_265,
  794. placeHolder_266,
  795. placeHolder_267,
  796. placeHolder_268,
  797. placeHolder_269,
  798. mmHgml,
  799. }
  800. class OutputItemMetaDTO {
  801. String? name;
  802. String? description;
  803. Unit unit;
  804. OutputItemMetaDTO({
  805. this.name,
  806. this.description,
  807. this.unit = Unit.None,
  808. });
  809. factory OutputItemMetaDTO.fromJson(Map<String, dynamic> map) {
  810. return OutputItemMetaDTO(
  811. name: map['Name'],
  812. description: map['Description'],
  813. unit: Unit.values.firstWhere((e) => e.index == map['Unit']),
  814. );
  815. }
  816. Map<String, dynamic> toJson() {
  817. final map = Map<String, dynamic>();
  818. if(name != null)
  819. map['Name'] = name;
  820. if(description != null)
  821. map['Description'] = description;
  822. map['Unit'] = unit.index;
  823. return map;
  824. }
  825. }
  826. class CalculatorMetaDTO {
  827. List<OutputItemMetaDTO >? availableOutputs;
  828. CalculatorMetaDTO({
  829. this.availableOutputs,
  830. });
  831. factory CalculatorMetaDTO.fromJson(Map<String, dynamic> map) {
  832. return CalculatorMetaDTO(
  833. availableOutputs: map['AvailableOutputs'] != null ? (map['AvailableOutputs'] as List).map((e)=>OutputItemMetaDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  834. );
  835. }
  836. Map<String, dynamic> toJson() {
  837. final map = Map<String, dynamic>();
  838. if(availableOutputs != null)
  839. map['AvailableOutputs'] = availableOutputs;
  840. return map;
  841. }
  842. }
  843. class ChildItemMetaDTO {
  844. String? name;
  845. String? description;
  846. bool isWorking;
  847. List<ChildItemMetaDTO >? childItems;
  848. CalculatorMetaDTO? calculator;
  849. ChildItemMetaDTO({
  850. this.name,
  851. this.description,
  852. this.isWorking = false,
  853. this.childItems,
  854. this.calculator,
  855. });
  856. factory ChildItemMetaDTO.fromJson(Map<String, dynamic> map) {
  857. return ChildItemMetaDTO(
  858. name: map['Name'],
  859. description: map['Description'],
  860. isWorking: map['IsWorking'],
  861. childItems: map['ChildItems'] != null ? (map['ChildItems'] as List).map((e)=>ChildItemMetaDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  862. calculator: map['Calculator'] != null ? CalculatorMetaDTO.fromJson(map['Calculator']) : null,
  863. );
  864. }
  865. Map<String, dynamic> toJson() {
  866. final map = Map<String, dynamic>();
  867. if(name != null)
  868. map['Name'] = name;
  869. if(description != null)
  870. map['Description'] = description;
  871. map['IsWorking'] = isWorking;
  872. if(childItems != null)
  873. map['ChildItems'] = childItems;
  874. if(calculator != null)
  875. map['Calculator'] = calculator;
  876. return map;
  877. }
  878. }
  879. class ItemMetaDTO {
  880. String? name;
  881. String? description;
  882. String? briefAnnotation;
  883. String? measureTypeName;
  884. List<String >? categories;
  885. CalculatorMetaDTO? calculator;
  886. List<ChildItemMetaDTO >? multiMethodItems;
  887. ItemMetaDTO({
  888. this.name,
  889. this.description,
  890. this.briefAnnotation,
  891. this.measureTypeName,
  892. this.categories,
  893. this.calculator,
  894. this.multiMethodItems,
  895. });
  896. factory ItemMetaDTO.fromJson(Map<String, dynamic> map) {
  897. return ItemMetaDTO(
  898. name: map['Name'],
  899. description: map['Description'],
  900. briefAnnotation: map['BriefAnnotation'],
  901. measureTypeName: map['MeasureTypeName'],
  902. categories: map['Categories'] != null ? map['Categories'].cast<String>().toList() : null,
  903. calculator: map['Calculator'] != null ? CalculatorMetaDTO.fromJson(map['Calculator']) : null,
  904. multiMethodItems: map['MultiMethodItems'] != null ? (map['MultiMethodItems'] as List).map((e)=>ChildItemMetaDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  905. );
  906. }
  907. Map<String, dynamic> toJson() {
  908. final map = Map<String, dynamic>();
  909. if(name != null)
  910. map['Name'] = name;
  911. if(description != null)
  912. map['Description'] = description;
  913. if(briefAnnotation != null)
  914. map['BriefAnnotation'] = briefAnnotation;
  915. if(measureTypeName != null)
  916. map['MeasureTypeName'] = measureTypeName;
  917. if(categories != null)
  918. map['Categories'] = categories;
  919. if(calculator != null)
  920. map['Calculator'] = calculator;
  921. if(multiMethodItems != null)
  922. map['MultiMethodItems'] = multiMethodItems;
  923. return map;
  924. }
  925. }
  926. class MeasureFolderDTO {
  927. String? name;
  928. List<String >? workingItemNames;
  929. List<ItemMetaDTO >? availableItems;
  930. MeasureFolderDTO({
  931. this.name,
  932. this.workingItemNames,
  933. this.availableItems,
  934. });
  935. factory MeasureFolderDTO.fromJson(Map<String, dynamic> map) {
  936. return MeasureFolderDTO(
  937. name: map['Name'],
  938. workingItemNames: map['WorkingItemNames'] != null ? map['WorkingItemNames'].cast<String>().toList() : null,
  939. availableItems: map['AvailableItems'] != null ? (map['AvailableItems'] as List).map((e)=>ItemMetaDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  940. );
  941. }
  942. Map<String, dynamic> toJson() {
  943. final map = Map<String, dynamic>();
  944. if(name != null)
  945. map['Name'] = name;
  946. if(workingItemNames != null)
  947. map['WorkingItemNames'] = workingItemNames;
  948. if(availableItems != null)
  949. map['AvailableItems'] = availableItems;
  950. return map;
  951. }
  952. }
  953. class MeasureGroupDTO {
  954. String? name;
  955. String? description;
  956. List<MeasureFolderDTO >? availableFolders;
  957. MeasureGroupDTO({
  958. this.name,
  959. this.description,
  960. this.availableFolders,
  961. });
  962. factory MeasureGroupDTO.fromJson(Map<String, dynamic> map) {
  963. return MeasureGroupDTO(
  964. name: map['Name'],
  965. description: map['Description'],
  966. availableFolders: map['AvailableFolders'] != null ? (map['AvailableFolders'] as List).map((e)=>MeasureFolderDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  967. );
  968. }
  969. Map<String, dynamic> toJson() {
  970. final map = Map<String, dynamic>();
  971. if(name != null)
  972. map['Name'] = name;
  973. if(description != null)
  974. map['Description'] = description;
  975. if(availableFolders != null)
  976. map['AvailableFolders'] = availableFolders;
  977. return map;
  978. }
  979. }
  980. class MeasureModeDTO {
  981. String? modeName;
  982. List<MeasureGroupDTO >? availableGroups;
  983. MeasureModeDTO({
  984. this.modeName,
  985. this.availableGroups,
  986. });
  987. factory MeasureModeDTO.fromJson(Map<String, dynamic> map) {
  988. return MeasureModeDTO(
  989. modeName: map['ModeName'],
  990. availableGroups: map['AvailableGroups'] != null ? (map['AvailableGroups'] as List).map((e)=>MeasureGroupDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  991. );
  992. }
  993. Map<String, dynamic> toJson() {
  994. final map = Map<String, dynamic>();
  995. if(modeName != null)
  996. map['ModeName'] = modeName;
  997. if(availableGroups != null)
  998. map['AvailableGroups'] = availableGroups;
  999. return map;
  1000. }
  1001. }
  1002. class MeasureApplicationDTO {
  1003. String? version;
  1004. String? id;
  1005. String? description;
  1006. List<MeasureModeDTO >? availableModes;
  1007. MeasureApplicationDTO({
  1008. this.version,
  1009. this.id,
  1010. this.description,
  1011. this.availableModes,
  1012. });
  1013. factory MeasureApplicationDTO.fromJson(Map<String, dynamic> map) {
  1014. return MeasureApplicationDTO(
  1015. version: map['Version'],
  1016. id: map['Id'],
  1017. description: map['Description'],
  1018. availableModes: map['AvailableModes'] != null ? (map['AvailableModes'] as List).map((e)=>MeasureModeDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1019. );
  1020. }
  1021. Map<String, dynamic> toJson() {
  1022. final map = Map<String, dynamic>();
  1023. if(version != null)
  1024. map['Version'] = version;
  1025. if(id != null)
  1026. map['Id'] = id;
  1027. if(description != null)
  1028. map['Description'] = description;
  1029. if(availableModes != null)
  1030. map['AvailableModes'] = availableModes;
  1031. return map;
  1032. }
  1033. }
  1034. class GetMeasureApplicationRequest extends TokenRequest{
  1035. String? applicationName;
  1036. String? categoryName;
  1037. List<String >? measureModes;
  1038. GetMeasureApplicationRequest({
  1039. this.applicationName,
  1040. this.categoryName,
  1041. this.measureModes,
  1042. String? token,
  1043. }) : super(
  1044. token: token,
  1045. );
  1046. factory GetMeasureApplicationRequest.fromJson(Map<String, dynamic> map) {
  1047. return GetMeasureApplicationRequest(
  1048. applicationName: map['ApplicationName'],
  1049. categoryName: map['CategoryName'],
  1050. measureModes: map['MeasureModes'] != null ? map['MeasureModes'].cast<String>().toList() : null,
  1051. token: map['Token'],
  1052. );
  1053. }
  1054. Map<String, dynamic> toJson() {
  1055. final map = super.toJson();
  1056. if(applicationName != null)
  1057. map['ApplicationName'] = applicationName;
  1058. if(categoryName != null)
  1059. map['CategoryName'] = categoryName;
  1060. if(measureModes != null)
  1061. map['MeasureModes'] = measureModes;
  1062. return map;
  1063. }
  1064. }
  1065. class CommentItemDTO {
  1066. String? text;
  1067. CommentItemDTO({
  1068. this.text,
  1069. });
  1070. factory CommentItemDTO.fromJson(Map<String, dynamic> map) {
  1071. return CommentItemDTO(
  1072. text: map['Text'],
  1073. );
  1074. }
  1075. Map<String, dynamic> toJson() {
  1076. final map = Map<String, dynamic>();
  1077. if(text != null)
  1078. map['Text'] = text;
  1079. return map;
  1080. }
  1081. }
  1082. class CommentItemResultDTO {
  1083. String? version;
  1084. List<CommentItemDTO >? commentItems;
  1085. CommentItemResultDTO({
  1086. this.version,
  1087. this.commentItems,
  1088. });
  1089. factory CommentItemResultDTO.fromJson(Map<String, dynamic> map) {
  1090. return CommentItemResultDTO(
  1091. version: map['Version'],
  1092. commentItems: map['CommentItems'] != null ? (map['CommentItems'] as List).map((e)=>CommentItemDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1093. );
  1094. }
  1095. Map<String, dynamic> toJson() {
  1096. final map = Map<String, dynamic>();
  1097. if(version != null)
  1098. map['Version'] = version;
  1099. if(commentItems != null)
  1100. map['CommentItems'] = commentItems;
  1101. return map;
  1102. }
  1103. }
  1104. class GetCommentsByApplicationRequest extends TokenRequest{
  1105. String? languageCode;
  1106. String? applicationName;
  1107. String? categoryName;
  1108. GetCommentsByApplicationRequest({
  1109. this.languageCode,
  1110. this.applicationName,
  1111. this.categoryName,
  1112. String? token,
  1113. }) : super(
  1114. token: token,
  1115. );
  1116. factory GetCommentsByApplicationRequest.fromJson(Map<String, dynamic> map) {
  1117. return GetCommentsByApplicationRequest(
  1118. languageCode: map['LanguageCode'],
  1119. applicationName: map['ApplicationName'],
  1120. categoryName: map['CategoryName'],
  1121. token: map['Token'],
  1122. );
  1123. }
  1124. Map<String, dynamic> toJson() {
  1125. final map = super.toJson();
  1126. if(languageCode != null)
  1127. map['LanguageCode'] = languageCode;
  1128. if(applicationName != null)
  1129. map['ApplicationName'] = applicationName;
  1130. if(categoryName != null)
  1131. map['CategoryName'] = categoryName;
  1132. return map;
  1133. }
  1134. }
  1135. class PresetCommentItemDTO {
  1136. List<String >? categoryList;
  1137. String? text;
  1138. PresetCommentItemDTO({
  1139. this.categoryList,
  1140. this.text,
  1141. });
  1142. factory PresetCommentItemDTO.fromJson(Map<String, dynamic> map) {
  1143. return PresetCommentItemDTO(
  1144. categoryList: map['CategoryList'] != null ? map['CategoryList'].cast<String>().toList() : null,
  1145. text: map['Text'],
  1146. );
  1147. }
  1148. Map<String, dynamic> toJson() {
  1149. final map = Map<String, dynamic>();
  1150. if(categoryList != null)
  1151. map['CategoryList'] = categoryList;
  1152. if(text != null)
  1153. map['Text'] = text;
  1154. return map;
  1155. }
  1156. }
  1157. class PresetCommentItemResultDTO {
  1158. String? version;
  1159. List<PresetCommentItemDTO >? presetCommentItems;
  1160. PresetCommentItemResultDTO({
  1161. this.version,
  1162. this.presetCommentItems,
  1163. });
  1164. factory PresetCommentItemResultDTO.fromJson(Map<String, dynamic> map) {
  1165. return PresetCommentItemResultDTO(
  1166. version: map['Version'],
  1167. presetCommentItems: map['PresetCommentItems'] != null ? (map['PresetCommentItems'] as List).map((e)=>PresetCommentItemDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1168. );
  1169. }
  1170. Map<String, dynamic> toJson() {
  1171. final map = Map<String, dynamic>();
  1172. if(version != null)
  1173. map['Version'] = version;
  1174. if(presetCommentItems != null)
  1175. map['PresetCommentItems'] = presetCommentItems;
  1176. return map;
  1177. }
  1178. }
  1179. class GetPresetCommentsRequest extends TokenRequest{
  1180. String? languageCode;
  1181. GetPresetCommentsRequest({
  1182. this.languageCode,
  1183. String? token,
  1184. }) : super(
  1185. token: token,
  1186. );
  1187. factory GetPresetCommentsRequest.fromJson(Map<String, dynamic> map) {
  1188. return GetPresetCommentsRequest(
  1189. languageCode: map['LanguageCode'],
  1190. token: map['Token'],
  1191. );
  1192. }
  1193. Map<String, dynamic> toJson() {
  1194. final map = super.toJson();
  1195. if(languageCode != null)
  1196. map['LanguageCode'] = languageCode;
  1197. return map;
  1198. }
  1199. }
  1200. class GetReportElementByLanguageRequest extends TokenRequest{
  1201. String? reportDatasJosn;
  1202. String? language;
  1203. GetReportElementByLanguageRequest({
  1204. this.reportDatasJosn,
  1205. this.language,
  1206. String? token,
  1207. }) : super(
  1208. token: token,
  1209. );
  1210. factory GetReportElementByLanguageRequest.fromJson(Map<String, dynamic> map) {
  1211. return GetReportElementByLanguageRequest(
  1212. reportDatasJosn: map['ReportDatasJosn'],
  1213. language: map['Language'],
  1214. token: map['Token'],
  1215. );
  1216. }
  1217. Map<String, dynamic> toJson() {
  1218. final map = super.toJson();
  1219. if(reportDatasJosn != null)
  1220. map['ReportDatasJosn'] = reportDatasJosn;
  1221. if(language != null)
  1222. map['Language'] = language;
  1223. return map;
  1224. }
  1225. }
  1226. class SaveUserDefinedCommentsRequest extends TokenRequest{
  1227. String? version;
  1228. String? languageCode;
  1229. String? applicationName;
  1230. String? categoryName;
  1231. List<CommentItemDTO >? commentItems;
  1232. SaveUserDefinedCommentsRequest({
  1233. this.version,
  1234. this.languageCode,
  1235. this.applicationName,
  1236. this.categoryName,
  1237. this.commentItems,
  1238. String? token,
  1239. }) : super(
  1240. token: token,
  1241. );
  1242. factory SaveUserDefinedCommentsRequest.fromJson(Map<String, dynamic> map) {
  1243. return SaveUserDefinedCommentsRequest(
  1244. version: map['Version'],
  1245. languageCode: map['LanguageCode'],
  1246. applicationName: map['ApplicationName'],
  1247. categoryName: map['CategoryName'],
  1248. commentItems: map['CommentItems'] != null ? (map['CommentItems'] as List).map((e)=>CommentItemDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1249. token: map['Token'],
  1250. );
  1251. }
  1252. Map<String, dynamic> toJson() {
  1253. final map = super.toJson();
  1254. if(version != null)
  1255. map['Version'] = version;
  1256. if(languageCode != null)
  1257. map['LanguageCode'] = languageCode;
  1258. if(applicationName != null)
  1259. map['ApplicationName'] = applicationName;
  1260. if(categoryName != null)
  1261. map['CategoryName'] = categoryName;
  1262. if(commentItems != null)
  1263. map['CommentItems'] = commentItems;
  1264. return map;
  1265. }
  1266. }
  1267. class UserDefinedItemMetaDTO {
  1268. String? name;
  1269. String? workingMethodItem;
  1270. UserDefinedItemMetaDTO({
  1271. this.name,
  1272. this.workingMethodItem,
  1273. });
  1274. factory UserDefinedItemMetaDTO.fromJson(Map<String, dynamic> map) {
  1275. return UserDefinedItemMetaDTO(
  1276. name: map['Name'],
  1277. workingMethodItem: map['WorkingMethodItem'],
  1278. );
  1279. }
  1280. Map<String, dynamic> toJson() {
  1281. final map = Map<String, dynamic>();
  1282. if(name != null)
  1283. map['Name'] = name;
  1284. if(workingMethodItem != null)
  1285. map['WorkingMethodItem'] = workingMethodItem;
  1286. return map;
  1287. }
  1288. }
  1289. class UserDefinedMeasureFolderDTO {
  1290. String? name;
  1291. List<String >? workingItemNames;
  1292. String? defaultItem;
  1293. List<UserDefinedItemMetaDTO >? multiMethodItemMetas;
  1294. UserDefinedMeasureFolderDTO({
  1295. this.name,
  1296. this.workingItemNames,
  1297. this.defaultItem,
  1298. this.multiMethodItemMetas,
  1299. });
  1300. factory UserDefinedMeasureFolderDTO.fromJson(Map<String, dynamic> map) {
  1301. return UserDefinedMeasureFolderDTO(
  1302. name: map['Name'],
  1303. workingItemNames: map['WorkingItemNames'] != null ? map['WorkingItemNames'].cast<String>().toList() : null,
  1304. defaultItem: map['DefaultItem'],
  1305. multiMethodItemMetas: map['MultiMethodItemMetas'] != null ? (map['MultiMethodItemMetas'] as List).map((e)=>UserDefinedItemMetaDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1306. );
  1307. }
  1308. Map<String, dynamic> toJson() {
  1309. final map = Map<String, dynamic>();
  1310. if(name != null)
  1311. map['Name'] = name;
  1312. if(workingItemNames != null)
  1313. map['WorkingItemNames'] = workingItemNames;
  1314. if(defaultItem != null)
  1315. map['DefaultItem'] = defaultItem;
  1316. if(multiMethodItemMetas != null)
  1317. map['MultiMethodItemMetas'] = multiMethodItemMetas;
  1318. return map;
  1319. }
  1320. }
  1321. class UserDefinedMeasureGroupDTO {
  1322. String? name;
  1323. List<UserDefinedMeasureFolderDTO >? folders;
  1324. UserDefinedMeasureGroupDTO({
  1325. this.name,
  1326. this.folders,
  1327. });
  1328. factory UserDefinedMeasureGroupDTO.fromJson(Map<String, dynamic> map) {
  1329. return UserDefinedMeasureGroupDTO(
  1330. name: map['Name'],
  1331. folders: map['Folders'] != null ? (map['Folders'] as List).map((e)=>UserDefinedMeasureFolderDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1332. );
  1333. }
  1334. Map<String, dynamic> toJson() {
  1335. final map = Map<String, dynamic>();
  1336. if(name != null)
  1337. map['Name'] = name;
  1338. if(folders != null)
  1339. map['Folders'] = folders;
  1340. return map;
  1341. }
  1342. }
  1343. class UserDefinedMeasureModeDTO {
  1344. String? modeName;
  1345. List<UserDefinedMeasureGroupDTO >? workingGroups;
  1346. UserDefinedMeasureModeDTO({
  1347. this.modeName,
  1348. this.workingGroups,
  1349. });
  1350. factory UserDefinedMeasureModeDTO.fromJson(Map<String, dynamic> map) {
  1351. return UserDefinedMeasureModeDTO(
  1352. modeName: map['ModeName'],
  1353. workingGroups: map['WorkingGroups'] != null ? (map['WorkingGroups'] as List).map((e)=>UserDefinedMeasureGroupDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1354. );
  1355. }
  1356. Map<String, dynamic> toJson() {
  1357. final map = Map<String, dynamic>();
  1358. if(modeName != null)
  1359. map['ModeName'] = modeName;
  1360. if(workingGroups != null)
  1361. map['WorkingGroups'] = workingGroups;
  1362. return map;
  1363. }
  1364. }
  1365. class SaveUserDefinedMeasureApplicationRequest extends TokenRequest{
  1366. String? version;
  1367. String? applicationName;
  1368. String? categoryName;
  1369. UserDefinedMeasureModeDTO? workingMode;
  1370. SaveUserDefinedMeasureApplicationRequest({
  1371. this.version,
  1372. this.applicationName,
  1373. this.categoryName,
  1374. this.workingMode,
  1375. String? token,
  1376. }) : super(
  1377. token: token,
  1378. );
  1379. factory SaveUserDefinedMeasureApplicationRequest.fromJson(Map<String, dynamic> map) {
  1380. return SaveUserDefinedMeasureApplicationRequest(
  1381. version: map['Version'],
  1382. applicationName: map['ApplicationName'],
  1383. categoryName: map['CategoryName'],
  1384. workingMode: map['WorkingMode'] != null ? UserDefinedMeasureModeDTO.fromJson(map['WorkingMode']) : null,
  1385. token: map['Token'],
  1386. );
  1387. }
  1388. Map<String, dynamic> toJson() {
  1389. final map = super.toJson();
  1390. if(version != null)
  1391. map['Version'] = version;
  1392. if(applicationName != null)
  1393. map['ApplicationName'] = applicationName;
  1394. if(categoryName != null)
  1395. map['CategoryName'] = categoryName;
  1396. if(workingMode != null)
  1397. map['WorkingMode'] = workingMode;
  1398. return map;
  1399. }
  1400. }
  1401. enum CursorTypeEnum {
  1402. CursorType1Icon,
  1403. CursorType2Icon,
  1404. CursorType3Icon,
  1405. CursorType4Icon,
  1406. CursorType5Icon,
  1407. }
  1408. class MeasureSystemSettingDTO {
  1409. String? version;
  1410. CursorTypeEnum cursorType;
  1411. int cursorSize;
  1412. int shapeCursorSize;
  1413. String? cursorColor;
  1414. bool showResultWindow;
  1415. int fontSize;
  1416. bool showCursorLine;
  1417. bool holdMeasureLine;
  1418. bool showDepthGuideline;
  1419. bool showBriefAnnotation;
  1420. String? minCursorDistance;
  1421. String? autoSnapDistance;
  1422. int annotationFontSize;
  1423. bool showProtocolInWorkSheet;
  1424. bool showAnnotation;
  1425. MeasureSystemSettingDTO({
  1426. this.version,
  1427. this.cursorType = CursorTypeEnum.CursorType1Icon,
  1428. this.cursorSize = 0,
  1429. this.shapeCursorSize = 0,
  1430. this.cursorColor,
  1431. this.showResultWindow = false,
  1432. this.fontSize = 0,
  1433. this.showCursorLine = false,
  1434. this.holdMeasureLine = false,
  1435. this.showDepthGuideline = false,
  1436. this.showBriefAnnotation = false,
  1437. this.minCursorDistance,
  1438. this.autoSnapDistance,
  1439. this.annotationFontSize = 0,
  1440. this.showProtocolInWorkSheet = false,
  1441. this.showAnnotation = false,
  1442. });
  1443. factory MeasureSystemSettingDTO.fromJson(Map<String, dynamic> map) {
  1444. return MeasureSystemSettingDTO(
  1445. version: map['Version'],
  1446. cursorType: CursorTypeEnum.values.firstWhere((e) => e.index == map['CursorType']),
  1447. cursorSize: map['CursorSize'],
  1448. shapeCursorSize: map['ShapeCursorSize'],
  1449. cursorColor: map['CursorColor'],
  1450. showResultWindow: map['ShowResultWindow'],
  1451. fontSize: map['FontSize'],
  1452. showCursorLine: map['ShowCursorLine'],
  1453. holdMeasureLine: map['HoldMeasureLine'],
  1454. showDepthGuideline: map['ShowDepthGuideline'],
  1455. showBriefAnnotation: map['ShowBriefAnnotation'],
  1456. minCursorDistance: map['MinCursorDistance'],
  1457. autoSnapDistance: map['AutoSnapDistance'],
  1458. annotationFontSize: map['AnnotationFontSize'],
  1459. showProtocolInWorkSheet: map['ShowProtocolInWorkSheet'],
  1460. showAnnotation: map['ShowAnnotation'],
  1461. );
  1462. }
  1463. Map<String, dynamic> toJson() {
  1464. final map = Map<String, dynamic>();
  1465. if(version != null)
  1466. map['Version'] = version;
  1467. map['CursorType'] = cursorType.index;
  1468. map['CursorSize'] = cursorSize;
  1469. map['ShapeCursorSize'] = shapeCursorSize;
  1470. if(cursorColor != null)
  1471. map['CursorColor'] = cursorColor;
  1472. map['ShowResultWindow'] = showResultWindow;
  1473. map['FontSize'] = fontSize;
  1474. map['ShowCursorLine'] = showCursorLine;
  1475. map['HoldMeasureLine'] = holdMeasureLine;
  1476. map['ShowDepthGuideline'] = showDepthGuideline;
  1477. map['ShowBriefAnnotation'] = showBriefAnnotation;
  1478. if(minCursorDistance != null)
  1479. map['MinCursorDistance'] = minCursorDistance;
  1480. if(autoSnapDistance != null)
  1481. map['AutoSnapDistance'] = autoSnapDistance;
  1482. map['AnnotationFontSize'] = annotationFontSize;
  1483. map['ShowProtocolInWorkSheet'] = showProtocolInWorkSheet;
  1484. map['ShowAnnotation'] = showAnnotation;
  1485. return map;
  1486. }
  1487. }
  1488. class GetMeasureSystemSettingRequest extends TokenRequest{
  1489. GetMeasureSystemSettingRequest({
  1490. String? token,
  1491. }) : super(
  1492. token: token,
  1493. );
  1494. factory GetMeasureSystemSettingRequest.fromJson(Map<String, dynamic> map) {
  1495. return GetMeasureSystemSettingRequest(
  1496. token: map['Token'],
  1497. );
  1498. }
  1499. Map<String, dynamic> toJson() {
  1500. final map = super.toJson();
  1501. return map;
  1502. }
  1503. }
  1504. class SaveMeasureSystemSettingRequest extends TokenRequest{
  1505. MeasureSystemSettingDTO? systemSetting;
  1506. SaveMeasureSystemSettingRequest({
  1507. this.systemSetting,
  1508. String? token,
  1509. }) : super(
  1510. token: token,
  1511. );
  1512. factory SaveMeasureSystemSettingRequest.fromJson(Map<String, dynamic> map) {
  1513. return SaveMeasureSystemSettingRequest(
  1514. systemSetting: map['SystemSetting'] != null ? MeasureSystemSettingDTO.fromJson(map['SystemSetting']) : null,
  1515. token: map['Token'],
  1516. );
  1517. }
  1518. Map<String, dynamic> toJson() {
  1519. final map = super.toJson();
  1520. if(systemSetting != null)
  1521. map['SystemSetting'] = systemSetting;
  1522. return map;
  1523. }
  1524. }
  1525. enum RecordCreateTypeEnum {
  1526. Reservation,
  1527. Normal,
  1528. }
  1529. class RecordInfoDTO extends BaseDTO{
  1530. String? recordCode;
  1531. String? patientCode;
  1532. String? deviceCode;
  1533. RecordStatusEnum recordStatus;
  1534. String? creatorCode;
  1535. String? tags;
  1536. RecordCreateTypeEnum createType;
  1537. List<DataItemDTO >? patientInfo;
  1538. List<PatientInfoExt >? patientInfoExtList;
  1539. String? devicePatientID;
  1540. String? patientType;
  1541. List<String >? readUsers;
  1542. String? rootOrganizationCode;
  1543. String? organizationCode;
  1544. List<String >? associatedExamCodes;
  1545. DiagnosisStatusEnum diagnosisStatus;
  1546. List<DiagnosisInfoDTO >? diagnosisInfos;
  1547. RecordInfoDTO({
  1548. this.recordCode,
  1549. this.patientCode,
  1550. this.deviceCode,
  1551. this.recordStatus = RecordStatusEnum.NotScanned,
  1552. this.creatorCode,
  1553. this.tags,
  1554. this.createType = RecordCreateTypeEnum.Reservation,
  1555. this.patientInfo,
  1556. this.patientInfoExtList,
  1557. this.devicePatientID,
  1558. this.patientType,
  1559. this.readUsers,
  1560. this.rootOrganizationCode,
  1561. this.organizationCode,
  1562. this.associatedExamCodes,
  1563. this.diagnosisStatus = DiagnosisStatusEnum.NotRequired,
  1564. this.diagnosisInfos,
  1565. DateTime? createTime,
  1566. DateTime? updateTime,
  1567. }) : super(
  1568. createTime: createTime,
  1569. updateTime: updateTime,
  1570. );
  1571. factory RecordInfoDTO.fromJson(Map<String, dynamic> map) {
  1572. return RecordInfoDTO(
  1573. recordCode: map['RecordCode'],
  1574. patientCode: map['PatientCode'],
  1575. deviceCode: map['DeviceCode'],
  1576. recordStatus: RecordStatusEnum.values.firstWhere((e) => e.index == map['RecordStatus']),
  1577. creatorCode: map['CreatorCode'],
  1578. tags: map['Tags'],
  1579. createType: RecordCreateTypeEnum.values.firstWhere((e) => e.index == map['CreateType']),
  1580. patientInfo: map['PatientInfo'] != null ? (map['PatientInfo'] as List).map((e)=>DataItemDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1581. patientInfoExtList: map['PatientInfoExtList'] != null ? (map['PatientInfoExtList'] as List).map((e)=>PatientInfoExt.fromJson(e as Map<String,dynamic>)).toList() : null,
  1582. devicePatientID: map['DevicePatientID'],
  1583. patientType: map['PatientType'],
  1584. readUsers: map['ReadUsers'] != null ? map['ReadUsers'].cast<String>().toList() : null,
  1585. rootOrganizationCode: map['RootOrganizationCode'],
  1586. organizationCode: map['OrganizationCode'],
  1587. associatedExamCodes: map['AssociatedExamCodes'] != null ? map['AssociatedExamCodes'].cast<String>().toList() : null,
  1588. diagnosisStatus: DiagnosisStatusEnum.values.firstWhere((e) => e.index == map['DiagnosisStatus']),
  1589. diagnosisInfos: map['DiagnosisInfos'] != null ? (map['DiagnosisInfos'] as List).map((e)=>DiagnosisInfoDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1590. createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
  1591. updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null,
  1592. );
  1593. }
  1594. Map<String, dynamic> toJson() {
  1595. final map = super.toJson();
  1596. if(recordCode != null)
  1597. map['RecordCode'] = recordCode;
  1598. if(patientCode != null)
  1599. map['PatientCode'] = patientCode;
  1600. if(deviceCode != null)
  1601. map['DeviceCode'] = deviceCode;
  1602. map['RecordStatus'] = recordStatus.index;
  1603. if(creatorCode != null)
  1604. map['CreatorCode'] = creatorCode;
  1605. if(tags != null)
  1606. map['Tags'] = tags;
  1607. map['CreateType'] = createType.index;
  1608. if(patientInfo != null)
  1609. map['PatientInfo'] = patientInfo;
  1610. if(patientInfoExtList != null)
  1611. map['PatientInfoExtList'] = patientInfoExtList;
  1612. if(devicePatientID != null)
  1613. map['DevicePatientID'] = devicePatientID;
  1614. if(patientType != null)
  1615. map['PatientType'] = patientType;
  1616. if(readUsers != null)
  1617. map['ReadUsers'] = readUsers;
  1618. if(rootOrganizationCode != null)
  1619. map['RootOrganizationCode'] = rootOrganizationCode;
  1620. if(organizationCode != null)
  1621. map['OrganizationCode'] = organizationCode;
  1622. if(associatedExamCodes != null)
  1623. map['AssociatedExamCodes'] = associatedExamCodes;
  1624. map['DiagnosisStatus'] = diagnosisStatus.index;
  1625. if(diagnosisInfos != null)
  1626. map['DiagnosisInfos'] = diagnosisInfos;
  1627. return map;
  1628. }
  1629. }
  1630. class RecordData {
  1631. String? patientName;
  1632. String? patientCode;
  1633. List<RecordInfoDTO >? recordItemList;
  1634. RecordData({
  1635. this.patientName,
  1636. this.patientCode,
  1637. this.recordItemList,
  1638. });
  1639. factory RecordData.fromJson(Map<String, dynamic> map) {
  1640. return RecordData(
  1641. patientName: map['PatientName'],
  1642. patientCode: map['PatientCode'],
  1643. recordItemList: map['RecordItemList'] != null ? (map['RecordItemList'] as List).map((e)=>RecordInfoDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1644. );
  1645. }
  1646. Map<String, dynamic> toJson() {
  1647. final map = Map<String, dynamic>();
  1648. if(patientName != null)
  1649. map['PatientName'] = patientName;
  1650. if(patientCode != null)
  1651. map['PatientCode'] = patientCode;
  1652. if(recordItemList != null)
  1653. map['RecordItemList'] = recordItemList;
  1654. return map;
  1655. }
  1656. }
  1657. class ReportItem {
  1658. String? recordCode;
  1659. String? fileToken;
  1660. ReportItem({
  1661. this.recordCode,
  1662. this.fileToken,
  1663. });
  1664. factory ReportItem.fromJson(Map<String, dynamic> map) {
  1665. return ReportItem(
  1666. recordCode: map['RecordCode'],
  1667. fileToken: map['FileToken'],
  1668. );
  1669. }
  1670. Map<String, dynamic> toJson() {
  1671. final map = Map<String, dynamic>();
  1672. if(recordCode != null)
  1673. map['RecordCode'] = recordCode;
  1674. if(fileToken != null)
  1675. map['FileToken'] = fileToken;
  1676. return map;
  1677. }
  1678. }
  1679. class ReportData {
  1680. String? patientName;
  1681. String? patientCode;
  1682. List<ReportItem >? reportItemList;
  1683. ReportData({
  1684. this.patientName,
  1685. this.patientCode,
  1686. this.reportItemList,
  1687. });
  1688. factory ReportData.fromJson(Map<String, dynamic> map) {
  1689. return ReportData(
  1690. patientName: map['PatientName'],
  1691. patientCode: map['PatientCode'],
  1692. reportItemList: map['ReportItemList'] != null ? (map['ReportItemList'] as List).map((e)=>ReportItem.fromJson(e as Map<String,dynamic>)).toList() : null,
  1693. );
  1694. }
  1695. Map<String, dynamic> toJson() {
  1696. final map = Map<String, dynamic>();
  1697. if(patientName != null)
  1698. map['PatientName'] = patientName;
  1699. if(patientCode != null)
  1700. map['PatientCode'] = patientCode;
  1701. if(reportItemList != null)
  1702. map['ReportItemList'] = reportItemList;
  1703. return map;
  1704. }
  1705. }
  1706. class RemedicalItem {
  1707. String? recordCode;
  1708. String? fileToken;
  1709. RemedicalFileDataTypeEnum fileDataType;
  1710. RemedicalItem({
  1711. this.recordCode,
  1712. this.fileToken,
  1713. this.fileDataType = RemedicalFileDataTypeEnum.VinnoVidSingle,
  1714. });
  1715. factory RemedicalItem.fromJson(Map<String, dynamic> map) {
  1716. return RemedicalItem(
  1717. recordCode: map['RecordCode'],
  1718. fileToken: map['FileToken'],
  1719. fileDataType: RemedicalFileDataTypeEnum.values.firstWhere((e) => e.index == map['FileDataType']),
  1720. );
  1721. }
  1722. Map<String, dynamic> toJson() {
  1723. final map = Map<String, dynamic>();
  1724. if(recordCode != null)
  1725. map['RecordCode'] = recordCode;
  1726. if(fileToken != null)
  1727. map['FileToken'] = fileToken;
  1728. map['FileDataType'] = fileDataType.index;
  1729. return map;
  1730. }
  1731. }
  1732. class RemedicalData {
  1733. String? patientName;
  1734. String? patientCode;
  1735. List<RemedicalItem >? remedicalItemList;
  1736. RemedicalData({
  1737. this.patientName,
  1738. this.patientCode,
  1739. this.remedicalItemList,
  1740. });
  1741. factory RemedicalData.fromJson(Map<String, dynamic> map) {
  1742. return RemedicalData(
  1743. patientName: map['PatientName'],
  1744. patientCode: map['PatientCode'],
  1745. remedicalItemList: map['RemedicalItemList'] != null ? (map['RemedicalItemList'] as List).map((e)=>RemedicalItem.fromJson(e as Map<String,dynamic>)).toList() : null,
  1746. );
  1747. }
  1748. Map<String, dynamic> toJson() {
  1749. final map = Map<String, dynamic>();
  1750. if(patientName != null)
  1751. map['PatientName'] = patientName;
  1752. if(patientCode != null)
  1753. map['PatientCode'] = patientCode;
  1754. if(remedicalItemList != null)
  1755. map['RemedicalItemList'] = remedicalItemList;
  1756. return map;
  1757. }
  1758. }
  1759. class ExportRemedicalDataResult {
  1760. List<RecordData >? recordList;
  1761. List<ReportData >? reportList;
  1762. List<RemedicalData >? remedicalList;
  1763. ExportRemedicalDataResult({
  1764. this.recordList,
  1765. this.reportList,
  1766. this.remedicalList,
  1767. });
  1768. factory ExportRemedicalDataResult.fromJson(Map<String, dynamic> map) {
  1769. return ExportRemedicalDataResult(
  1770. recordList: map['RecordList'] != null ? (map['RecordList'] as List).map((e)=>RecordData.fromJson(e as Map<String,dynamic>)).toList() : null,
  1771. reportList: map['ReportList'] != null ? (map['ReportList'] as List).map((e)=>ReportData.fromJson(e as Map<String,dynamic>)).toList() : null,
  1772. remedicalList: map['RemedicalList'] != null ? (map['RemedicalList'] as List).map((e)=>RemedicalData.fromJson(e as Map<String,dynamic>)).toList() : null,
  1773. );
  1774. }
  1775. Map<String, dynamic> toJson() {
  1776. final map = Map<String, dynamic>();
  1777. if(recordList != null)
  1778. map['RecordList'] = recordList;
  1779. if(reportList != null)
  1780. map['ReportList'] = reportList;
  1781. if(remedicalList != null)
  1782. map['RemedicalList'] = remedicalList;
  1783. return map;
  1784. }
  1785. }
  1786. class ExportRemedicalDataRequest extends TokenRequest{
  1787. DateTime? startTime;
  1788. DateTime? endTime;
  1789. bool isExportReport;
  1790. bool isExportRecord;
  1791. bool isExportRemedicalData;
  1792. List<String >? patientCodes;
  1793. ExportRemedicalDataRequest({
  1794. this.startTime,
  1795. this.endTime,
  1796. this.isExportReport = false,
  1797. this.isExportRecord = false,
  1798. this.isExportRemedicalData = false,
  1799. this.patientCodes,
  1800. String? token,
  1801. }) : super(
  1802. token: token,
  1803. );
  1804. factory ExportRemedicalDataRequest.fromJson(Map<String, dynamic> map) {
  1805. return ExportRemedicalDataRequest(
  1806. startTime: map['StartTime'] != null ? DateTime.parse(map['StartTime']) : null,
  1807. endTime: map['EndTime'] != null ? DateTime.parse(map['EndTime']) : null,
  1808. isExportReport: map['IsExportReport'],
  1809. isExportRecord: map['IsExportRecord'],
  1810. isExportRemedicalData: map['IsExportRemedicalData'],
  1811. patientCodes: map['PatientCodes'] != null ? map['PatientCodes'].cast<String>().toList() : null,
  1812. token: map['Token'],
  1813. );
  1814. }
  1815. Map<String, dynamic> toJson() {
  1816. final map = super.toJson();
  1817. if(startTime != null)
  1818. map['StartTime'] = JsonRpcUtils.dateFormat(startTime!);
  1819. if(endTime != null)
  1820. map['EndTime'] = JsonRpcUtils.dateFormat(endTime!);
  1821. map['IsExportReport'] = isExportReport;
  1822. map['IsExportRecord'] = isExportRecord;
  1823. map['IsExportRemedicalData'] = isExportRemedicalData;
  1824. if(patientCodes != null)
  1825. map['PatientCodes'] = patientCodes;
  1826. return map;
  1827. }
  1828. }
  1829. class FindCacheByCodeRequest extends TokenRequest{
  1830. String? cacheCode;
  1831. FindCacheByCodeRequest({
  1832. this.cacheCode,
  1833. String? token,
  1834. }) : super(
  1835. token: token,
  1836. );
  1837. factory FindCacheByCodeRequest.fromJson(Map<String, dynamic> map) {
  1838. return FindCacheByCodeRequest(
  1839. cacheCode: map['CacheCode'],
  1840. token: map['Token'],
  1841. );
  1842. }
  1843. Map<String, dynamic> toJson() {
  1844. final map = super.toJson();
  1845. if(cacheCode != null)
  1846. map['CacheCode'] = cacheCode;
  1847. return map;
  1848. }
  1849. }
  1850. class CreateReferralRecordRequest extends TokenRequest{
  1851. String? patientCode;
  1852. String? subjectMatter;
  1853. String? referralOrganizationCode;
  1854. String? referralUserCode;
  1855. String? referralRecordCode;
  1856. CreateReferralRecordRequest({
  1857. this.patientCode,
  1858. this.subjectMatter,
  1859. this.referralOrganizationCode,
  1860. this.referralUserCode,
  1861. this.referralRecordCode,
  1862. String? token,
  1863. }) : super(
  1864. token: token,
  1865. );
  1866. factory CreateReferralRecordRequest.fromJson(Map<String, dynamic> map) {
  1867. return CreateReferralRecordRequest(
  1868. patientCode: map['PatientCode'],
  1869. subjectMatter: map['SubjectMatter'],
  1870. referralOrganizationCode: map['ReferralOrganizationCode'],
  1871. referralUserCode: map['ReferralUserCode'],
  1872. referralRecordCode: map['ReferralRecordCode'],
  1873. token: map['Token'],
  1874. );
  1875. }
  1876. Map<String, dynamic> toJson() {
  1877. final map = super.toJson();
  1878. if(patientCode != null)
  1879. map['PatientCode'] = patientCode;
  1880. if(subjectMatter != null)
  1881. map['SubjectMatter'] = subjectMatter;
  1882. if(referralOrganizationCode != null)
  1883. map['ReferralOrganizationCode'] = referralOrganizationCode;
  1884. if(referralUserCode != null)
  1885. map['ReferralUserCode'] = referralUserCode;
  1886. if(referralRecordCode != null)
  1887. map['ReferralRecordCode'] = referralRecordCode;
  1888. return map;
  1889. }
  1890. }
  1891. class QueryReferralRecordPageDTO extends ClientPatientInfoBaseDTO{
  1892. String? code;
  1893. QueryReferralRecordPageDTO({
  1894. this.code,
  1895. String? patientCode,
  1896. bool isValid = false,
  1897. List<DataItemDTO >? patientData,
  1898. int unReadRecordCount = 0,
  1899. bool isReferral = false,
  1900. DateTime? createTime,
  1901. DateTime? updateTime,
  1902. }) : super(
  1903. patientCode: patientCode,
  1904. isValid: isValid,
  1905. patientData: patientData,
  1906. unReadRecordCount: unReadRecordCount,
  1907. isReferral: isReferral,
  1908. createTime: createTime,
  1909. updateTime: updateTime,
  1910. );
  1911. factory QueryReferralRecordPageDTO.fromJson(Map<String, dynamic> map) {
  1912. return QueryReferralRecordPageDTO(
  1913. code: map['Code'],
  1914. patientCode: map['PatientCode'],
  1915. isValid: map['IsValid'],
  1916. patientData: map['PatientData'] != null ? (map['PatientData'] as List).map((e)=>DataItemDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  1917. unReadRecordCount: map['UnReadRecordCount'],
  1918. isReferral: map['IsReferral'],
  1919. createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
  1920. updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null,
  1921. );
  1922. }
  1923. Map<String, dynamic> toJson() {
  1924. final map = super.toJson();
  1925. if(code != null)
  1926. map['Code'] = code;
  1927. return map;
  1928. }
  1929. }
  1930. class QueryReferralRecordListRequest extends PageRequest{
  1931. String? keyWord;
  1932. DateTime? startTime;
  1933. DateTime? endTime;
  1934. PatientValidStatusEnum isValid;
  1935. QueryReferralRecordListRequest({
  1936. this.keyWord,
  1937. this.startTime,
  1938. this.endTime,
  1939. this.isValid = PatientValidStatusEnum.All,
  1940. int pageIndex = 0,
  1941. int pageSize = 0,
  1942. String? token,
  1943. }) : super(
  1944. pageIndex: pageIndex,
  1945. pageSize: pageSize,
  1946. token: token,
  1947. );
  1948. factory QueryReferralRecordListRequest.fromJson(Map<String, dynamic> map) {
  1949. return QueryReferralRecordListRequest(
  1950. keyWord: map['KeyWord'],
  1951. startTime: map['StartTime'] != null ? DateTime.parse(map['StartTime']) : null,
  1952. endTime: map['EndTime'] != null ? DateTime.parse(map['EndTime']) : null,
  1953. isValid: PatientValidStatusEnum.values.firstWhere((e) => e.index == map['IsValid']),
  1954. pageIndex: map['PageIndex'],
  1955. pageSize: map['PageSize'],
  1956. token: map['Token'],
  1957. );
  1958. }
  1959. Map<String, dynamic> toJson() {
  1960. final map = super.toJson();
  1961. if(keyWord != null)
  1962. map['KeyWord'] = keyWord;
  1963. if(startTime != null)
  1964. map['StartTime'] = JsonRpcUtils.dateFormat(startTime!);
  1965. if(endTime != null)
  1966. map['EndTime'] = JsonRpcUtils.dateFormat(endTime!);
  1967. map['IsValid'] = isValid.index;
  1968. return map;
  1969. }
  1970. }
  1971. class AuditReferralRecordRequest extends TokenRequest{
  1972. String? referralRecordCode;
  1973. bool isReceive;
  1974. String? rejectReason;
  1975. AuditReferralRecordRequest({
  1976. this.referralRecordCode,
  1977. this.isReceive = false,
  1978. this.rejectReason,
  1979. String? token,
  1980. }) : super(
  1981. token: token,
  1982. );
  1983. factory AuditReferralRecordRequest.fromJson(Map<String, dynamic> map) {
  1984. return AuditReferralRecordRequest(
  1985. referralRecordCode: map['ReferralRecordCode'],
  1986. isReceive: map['IsReceive'],
  1987. rejectReason: map['RejectReason'],
  1988. token: map['Token'],
  1989. );
  1990. }
  1991. Map<String, dynamic> toJson() {
  1992. final map = super.toJson();
  1993. if(referralRecordCode != null)
  1994. map['ReferralRecordCode'] = referralRecordCode;
  1995. map['IsReceive'] = isReceive;
  1996. if(rejectReason != null)
  1997. map['RejectReason'] = rejectReason;
  1998. return map;
  1999. }
  2000. }
  2001. class WithdrawReferralRecordRequest extends TokenRequest{
  2002. String? referralRecordCode;
  2003. WithdrawReferralRecordRequest({
  2004. this.referralRecordCode,
  2005. String? token,
  2006. }) : super(
  2007. token: token,
  2008. );
  2009. factory WithdrawReferralRecordRequest.fromJson(Map<String, dynamic> map) {
  2010. return WithdrawReferralRecordRequest(
  2011. referralRecordCode: map['ReferralRecordCode'],
  2012. token: map['Token'],
  2013. );
  2014. }
  2015. Map<String, dynamic> toJson() {
  2016. final map = super.toJson();
  2017. if(referralRecordCode != null)
  2018. map['ReferralRecordCode'] = referralRecordCode;
  2019. return map;
  2020. }
  2021. }
  2022. class ReferralOrganizationsQueryRequest extends TokenRequest{
  2023. String? keyword;
  2024. ReferralOrganizationsQueryRequest({
  2025. this.keyword,
  2026. String? token,
  2027. }) : super(
  2028. token: token,
  2029. );
  2030. factory ReferralOrganizationsQueryRequest.fromJson(Map<String, dynamic> map) {
  2031. return ReferralOrganizationsQueryRequest(
  2032. keyword: map['Keyword'],
  2033. token: map['Token'],
  2034. );
  2035. }
  2036. Map<String, dynamic> toJson() {
  2037. final map = super.toJson();
  2038. if(keyword != null)
  2039. map['Keyword'] = keyword;
  2040. return map;
  2041. }
  2042. }
  2043. class QueryReferralPatientByCodeRequest extends FindPatientByCodeRequest{
  2044. String? referralRecordCode;
  2045. QueryReferralPatientByCodeRequest({
  2046. this.referralRecordCode,
  2047. String? code,
  2048. String? token,
  2049. }) : super(
  2050. code: code,
  2051. token: token,
  2052. );
  2053. factory QueryReferralPatientByCodeRequest.fromJson(Map<String, dynamic> map) {
  2054. return QueryReferralPatientByCodeRequest(
  2055. referralRecordCode: map['ReferralRecordCode'],
  2056. code: map['Code'],
  2057. token: map['Token'],
  2058. );
  2059. }
  2060. Map<String, dynamic> toJson() {
  2061. final map = super.toJson();
  2062. if(referralRecordCode != null)
  2063. map['ReferralRecordCode'] = referralRecordCode;
  2064. return map;
  2065. }
  2066. }
  2067. enum ReferralStatusEnum {
  2068. Wait,
  2069. Withdrawn,
  2070. TimedOut,
  2071. Accepted,
  2072. Rejected,
  2073. }
  2074. class CreateReportClass {
  2075. String? referralCode;
  2076. String? creatorCode;
  2077. String? reportCode;
  2078. CreateReportClass({
  2079. this.referralCode,
  2080. this.creatorCode,
  2081. this.reportCode,
  2082. });
  2083. factory CreateReportClass.fromJson(Map<String, dynamic> map) {
  2084. return CreateReportClass(
  2085. referralCode: map['ReferralCode'],
  2086. creatorCode: map['CreatorCode'],
  2087. reportCode: map['ReportCode'],
  2088. );
  2089. }
  2090. Map<String, dynamic> toJson() {
  2091. final map = Map<String, dynamic>();
  2092. if(referralCode != null)
  2093. map['ReferralCode'] = referralCode;
  2094. if(creatorCode != null)
  2095. map['CreatorCode'] = creatorCode;
  2096. if(reportCode != null)
  2097. map['ReportCode'] = reportCode;
  2098. return map;
  2099. }
  2100. }
  2101. class ReferralRecordDTO extends BaseDTO{
  2102. String? code;
  2103. String? patientCode;
  2104. DateTime? referralOutTime;
  2105. String? referralOutOrganizationCode;
  2106. String? subjectMatter;
  2107. String? creator;
  2108. String? referralInOrganizationCode;
  2109. String? referralInUserCode;
  2110. ReferralStatusEnum referralStatus;
  2111. String? rejectReason;
  2112. List<String >? referralCodeList;
  2113. PatientInfoDTO? patientInfo;
  2114. List<String >? recordCodeList;
  2115. List<String >? reportCodeList;
  2116. List<String >? remedicalDataCodeList;
  2117. List<CreateReportClass >? createReportCodeList;
  2118. ReferralRecordDTO({
  2119. this.code,
  2120. this.patientCode,
  2121. this.referralOutTime,
  2122. this.referralOutOrganizationCode,
  2123. this.subjectMatter,
  2124. this.creator,
  2125. this.referralInOrganizationCode,
  2126. this.referralInUserCode,
  2127. this.referralStatus = ReferralStatusEnum.Wait,
  2128. this.rejectReason,
  2129. this.referralCodeList,
  2130. this.patientInfo,
  2131. this.recordCodeList,
  2132. this.reportCodeList,
  2133. this.remedicalDataCodeList,
  2134. this.createReportCodeList,
  2135. DateTime? createTime,
  2136. DateTime? updateTime,
  2137. }) : super(
  2138. createTime: createTime,
  2139. updateTime: updateTime,
  2140. );
  2141. factory ReferralRecordDTO.fromJson(Map<String, dynamic> map) {
  2142. return ReferralRecordDTO(
  2143. code: map['Code'],
  2144. patientCode: map['PatientCode'],
  2145. referralOutTime: map['ReferralOutTime'] != null ? DateTime.parse(map['ReferralOutTime']) : null,
  2146. referralOutOrganizationCode: map['ReferralOutOrganizationCode'],
  2147. subjectMatter: map['SubjectMatter'],
  2148. creator: map['Creator'],
  2149. referralInOrganizationCode: map['ReferralInOrganizationCode'],
  2150. referralInUserCode: map['ReferralInUserCode'],
  2151. referralStatus: ReferralStatusEnum.values.firstWhere((e) => e.index == map['ReferralStatus']),
  2152. rejectReason: map['RejectReason'],
  2153. referralCodeList: map['ReferralCodeList'] != null ? map['ReferralCodeList'].cast<String>().toList() : null,
  2154. patientInfo: map['PatientInfo'] != null ? PatientInfoDTO.fromJson(map['PatientInfo']) : null,
  2155. recordCodeList: map['RecordCodeList'] != null ? map['RecordCodeList'].cast<String>().toList() : null,
  2156. reportCodeList: map['ReportCodeList'] != null ? map['ReportCodeList'].cast<String>().toList() : null,
  2157. remedicalDataCodeList: map['RemedicalDataCodeList'] != null ? map['RemedicalDataCodeList'].cast<String>().toList() : null,
  2158. createReportCodeList: map['CreateReportCodeList'] != null ? (map['CreateReportCodeList'] as List).map((e)=>CreateReportClass.fromJson(e as Map<String,dynamic>)).toList() : null,
  2159. createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
  2160. updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null,
  2161. );
  2162. }
  2163. Map<String, dynamic> toJson() {
  2164. final map = super.toJson();
  2165. if(code != null)
  2166. map['Code'] = code;
  2167. if(patientCode != null)
  2168. map['PatientCode'] = patientCode;
  2169. if(referralOutTime != null)
  2170. map['ReferralOutTime'] = JsonRpcUtils.dateFormat(referralOutTime!);
  2171. if(referralOutOrganizationCode != null)
  2172. map['ReferralOutOrganizationCode'] = referralOutOrganizationCode;
  2173. if(subjectMatter != null)
  2174. map['SubjectMatter'] = subjectMatter;
  2175. if(creator != null)
  2176. map['Creator'] = creator;
  2177. if(referralInOrganizationCode != null)
  2178. map['ReferralInOrganizationCode'] = referralInOrganizationCode;
  2179. if(referralInUserCode != null)
  2180. map['ReferralInUserCode'] = referralInUserCode;
  2181. map['ReferralStatus'] = referralStatus.index;
  2182. if(rejectReason != null)
  2183. map['RejectReason'] = rejectReason;
  2184. if(referralCodeList != null)
  2185. map['ReferralCodeList'] = referralCodeList;
  2186. if(patientInfo != null)
  2187. map['PatientInfo'] = patientInfo;
  2188. if(recordCodeList != null)
  2189. map['RecordCodeList'] = recordCodeList;
  2190. if(reportCodeList != null)
  2191. map['ReportCodeList'] = reportCodeList;
  2192. if(remedicalDataCodeList != null)
  2193. map['RemedicalDataCodeList'] = remedicalDataCodeList;
  2194. if(createReportCodeList != null)
  2195. map['CreateReportCodeList'] = createReportCodeList;
  2196. return map;
  2197. }
  2198. }
  2199. class ReferralRecordDetailDTO extends ReferralRecordDTO{
  2200. String? referralOutOrganizationName;
  2201. String? creatorName;
  2202. String? referralInOrganizationName;
  2203. String? referralInUserName;
  2204. ReferralRecordDetailDTO({
  2205. this.referralOutOrganizationName,
  2206. this.creatorName,
  2207. this.referralInOrganizationName,
  2208. this.referralInUserName,
  2209. String? code,
  2210. String? patientCode,
  2211. DateTime? referralOutTime,
  2212. String? referralOutOrganizationCode,
  2213. String? subjectMatter,
  2214. String? creator,
  2215. String? referralInOrganizationCode,
  2216. String? referralInUserCode,
  2217. ReferralStatusEnum referralStatus = ReferralStatusEnum.Wait,
  2218. String? rejectReason,
  2219. List<String >? referralCodeList,
  2220. PatientInfoDTO? patientInfo,
  2221. List<String >? recordCodeList,
  2222. List<String >? reportCodeList,
  2223. List<String >? remedicalDataCodeList,
  2224. List<CreateReportClass >? createReportCodeList,
  2225. DateTime? createTime,
  2226. DateTime? updateTime,
  2227. }) : super(
  2228. code: code,
  2229. patientCode: patientCode,
  2230. referralOutTime: referralOutTime,
  2231. referralOutOrganizationCode: referralOutOrganizationCode,
  2232. subjectMatter: subjectMatter,
  2233. creator: creator,
  2234. referralInOrganizationCode: referralInOrganizationCode,
  2235. referralInUserCode: referralInUserCode,
  2236. referralStatus: referralStatus,
  2237. rejectReason: rejectReason,
  2238. referralCodeList: referralCodeList,
  2239. patientInfo: patientInfo,
  2240. recordCodeList: recordCodeList,
  2241. reportCodeList: reportCodeList,
  2242. remedicalDataCodeList: remedicalDataCodeList,
  2243. createReportCodeList: createReportCodeList,
  2244. createTime: createTime,
  2245. updateTime: updateTime,
  2246. );
  2247. factory ReferralRecordDetailDTO.fromJson(Map<String, dynamic> map) {
  2248. return ReferralRecordDetailDTO(
  2249. referralOutOrganizationName: map['ReferralOutOrganizationName'],
  2250. creatorName: map['CreatorName'],
  2251. referralInOrganizationName: map['ReferralInOrganizationName'],
  2252. referralInUserName: map['ReferralInUserName'],
  2253. code: map['Code'],
  2254. patientCode: map['PatientCode'],
  2255. referralOutTime: map['ReferralOutTime'] != null ? DateTime.parse(map['ReferralOutTime']) : null,
  2256. referralOutOrganizationCode: map['ReferralOutOrganizationCode'],
  2257. subjectMatter: map['SubjectMatter'],
  2258. creator: map['Creator'],
  2259. referralInOrganizationCode: map['ReferralInOrganizationCode'],
  2260. referralInUserCode: map['ReferralInUserCode'],
  2261. referralStatus: ReferralStatusEnum.values.firstWhere((e) => e.index == map['ReferralStatus']),
  2262. rejectReason: map['RejectReason'],
  2263. referralCodeList: map['ReferralCodeList'] != null ? map['ReferralCodeList'].cast<String>().toList() : null,
  2264. patientInfo: map['PatientInfo'] != null ? PatientInfoDTO.fromJson(map['PatientInfo']) : null,
  2265. recordCodeList: map['RecordCodeList'] != null ? map['RecordCodeList'].cast<String>().toList() : null,
  2266. reportCodeList: map['ReportCodeList'] != null ? map['ReportCodeList'].cast<String>().toList() : null,
  2267. remedicalDataCodeList: map['RemedicalDataCodeList'] != null ? map['RemedicalDataCodeList'].cast<String>().toList() : null,
  2268. createReportCodeList: map['CreateReportCodeList'] != null ? (map['CreateReportCodeList'] as List).map((e)=>CreateReportClass.fromJson(e as Map<String,dynamic>)).toList() : null,
  2269. createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
  2270. updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null,
  2271. );
  2272. }
  2273. Map<String, dynamic> toJson() {
  2274. final map = super.toJson();
  2275. if(referralOutOrganizationName != null)
  2276. map['ReferralOutOrganizationName'] = referralOutOrganizationName;
  2277. if(creatorName != null)
  2278. map['CreatorName'] = creatorName;
  2279. if(referralInOrganizationName != null)
  2280. map['ReferralInOrganizationName'] = referralInOrganizationName;
  2281. if(referralInUserName != null)
  2282. map['ReferralInUserName'] = referralInUserName;
  2283. return map;
  2284. }
  2285. }
  2286. class FindPatientReferralRecordRequest extends TokenRequest{
  2287. String? patientCode;
  2288. FindPatientReferralRecordRequest({
  2289. this.patientCode,
  2290. String? token,
  2291. }) : super(
  2292. token: token,
  2293. );
  2294. factory FindPatientReferralRecordRequest.fromJson(Map<String, dynamic> map) {
  2295. return FindPatientReferralRecordRequest(
  2296. patientCode: map['PatientCode'],
  2297. token: map['Token'],
  2298. );
  2299. }
  2300. Map<String, dynamic> toJson() {
  2301. final map = super.toJson();
  2302. if(patientCode != null)
  2303. map['PatientCode'] = patientCode;
  2304. return map;
  2305. }
  2306. }
  2307. class FindReferralInRecordRequest extends TokenRequest{
  2308. String? referralRecordCode;
  2309. FindReferralInRecordRequest({
  2310. this.referralRecordCode,
  2311. String? token,
  2312. }) : super(
  2313. token: token,
  2314. );
  2315. factory FindReferralInRecordRequest.fromJson(Map<String, dynamic> map) {
  2316. return FindReferralInRecordRequest(
  2317. referralRecordCode: map['ReferralRecordCode'],
  2318. token: map['Token'],
  2319. );
  2320. }
  2321. Map<String, dynamic> toJson() {
  2322. final map = super.toJson();
  2323. if(referralRecordCode != null)
  2324. map['ReferralRecordCode'] = referralRecordCode;
  2325. return map;
  2326. }
  2327. }
  2328. class QueryReferralRecordsPageRequest extends GetRecordsPageRequest{
  2329. String? referralRecordCode;
  2330. QueryReferralRecordsPageRequest({
  2331. this.referralRecordCode,
  2332. String? patientCode,
  2333. QueryRecordStatusEnum queryRecordStatus = QueryRecordStatusEnum.All,
  2334. QueryRecordCreateTypeEnum queryRecordCreateType = QueryRecordCreateTypeEnum.All,
  2335. int pageIndex = 0,
  2336. int pageSize = 0,
  2337. String? token,
  2338. }) : super(
  2339. patientCode: patientCode,
  2340. queryRecordStatus: queryRecordStatus,
  2341. queryRecordCreateType: queryRecordCreateType,
  2342. pageIndex: pageIndex,
  2343. pageSize: pageSize,
  2344. token: token,
  2345. );
  2346. factory QueryReferralRecordsPageRequest.fromJson(Map<String, dynamic> map) {
  2347. return QueryReferralRecordsPageRequest(
  2348. referralRecordCode: map['ReferralRecordCode'],
  2349. patientCode: map['PatientCode'],
  2350. queryRecordStatus: QueryRecordStatusEnum.values.firstWhere((e) => e.index == map['QueryRecordStatus']),
  2351. queryRecordCreateType: QueryRecordCreateTypeEnum.values.firstWhere((e) => e.index == map['QueryRecordCreateType']),
  2352. pageIndex: map['PageIndex'],
  2353. pageSize: map['PageSize'],
  2354. token: map['Token'],
  2355. );
  2356. }
  2357. Map<String, dynamic> toJson() {
  2358. final map = super.toJson();
  2359. if(referralRecordCode != null)
  2360. map['ReferralRecordCode'] = referralRecordCode;
  2361. return map;
  2362. }
  2363. }
  2364. enum UploadFileTypeEnum {
  2365. Unknown,
  2366. EXE,
  2367. APK,
  2368. IPA,
  2369. ZIP,
  2370. DAT,
  2371. RAR,
  2372. PNG,
  2373. ICON,
  2374. BMP,
  2375. JPEG,
  2376. JPG,
  2377. GIF,
  2378. WEBP,
  2379. TIFF,
  2380. IMG,
  2381. PDF,
  2382. DOC,
  2383. DOCX,
  2384. XLS,
  2385. XLSX,
  2386. MP4,
  2387. MSI,
  2388. VID,
  2389. }
  2390. class ReportPreviewDTO {
  2391. String? fileToken;
  2392. String? thumbnailToken;
  2393. String? language;
  2394. UploadFileTypeEnum fileType;
  2395. ReportPreviewDTO({
  2396. this.fileToken,
  2397. this.thumbnailToken,
  2398. this.language,
  2399. this.fileType = UploadFileTypeEnum.Unknown,
  2400. });
  2401. factory ReportPreviewDTO.fromJson(Map<String, dynamic> map) {
  2402. return ReportPreviewDTO(
  2403. fileToken: map['FileToken'],
  2404. thumbnailToken: map['ThumbnailToken'],
  2405. language: map['Language'],
  2406. fileType: UploadFileTypeEnum.values.firstWhere((e) => e.index == map['FileType']),
  2407. );
  2408. }
  2409. Map<String, dynamic> toJson() {
  2410. final map = Map<String, dynamic>();
  2411. if(fileToken != null)
  2412. map['FileToken'] = fileToken;
  2413. if(thumbnailToken != null)
  2414. map['ThumbnailToken'] = thumbnailToken;
  2415. if(language != null)
  2416. map['Language'] = language;
  2417. map['FileType'] = fileType.index;
  2418. return map;
  2419. }
  2420. }
  2421. class ReportBaseDTO extends BaseDTO{
  2422. String? reportCode;
  2423. String? recordCode;
  2424. String? reportUserCode;
  2425. String? deviceCode;
  2426. String? patientCode;
  2427. String? patientId;
  2428. String? patientName;
  2429. List<String >? reportLabels;
  2430. List<String >? platformLabels;
  2431. List<String >? diagnosisLabels;
  2432. DiagnosisOrganEnum reportOrgan;
  2433. DateTime? reportTime;
  2434. String? reportUserName;
  2435. List<ReportPreviewDTO >? reportPreviewList;
  2436. String? referralRecordCode;
  2437. ReportBaseDTO({
  2438. this.reportCode,
  2439. this.recordCode,
  2440. this.reportUserCode,
  2441. this.deviceCode,
  2442. this.patientCode,
  2443. this.patientId,
  2444. this.patientName,
  2445. this.reportLabels,
  2446. this.platformLabels,
  2447. this.diagnosisLabels,
  2448. this.reportOrgan = DiagnosisOrganEnum.Null,
  2449. this.reportTime,
  2450. this.reportUserName,
  2451. this.reportPreviewList,
  2452. this.referralRecordCode,
  2453. DateTime? createTime,
  2454. DateTime? updateTime,
  2455. }) : super(
  2456. createTime: createTime,
  2457. updateTime: updateTime,
  2458. );
  2459. factory ReportBaseDTO.fromJson(Map<String, dynamic> map) {
  2460. return ReportBaseDTO(
  2461. reportCode: map['ReportCode'],
  2462. recordCode: map['RecordCode'],
  2463. reportUserCode: map['ReportUserCode'],
  2464. deviceCode: map['DeviceCode'],
  2465. patientCode: map['PatientCode'],
  2466. patientId: map['PatientId'],
  2467. patientName: map['PatientName'],
  2468. reportLabels: map['ReportLabels'] != null ? map['ReportLabels'].cast<String>().toList() : null,
  2469. platformLabels: map['PlatformLabels'] != null ? map['PlatformLabels'].cast<String>().toList() : null,
  2470. diagnosisLabels: map['DiagnosisLabels'] != null ? map['DiagnosisLabels'].cast<String>().toList() : null,
  2471. reportOrgan: DiagnosisOrganEnum.values.firstWhere((e) => e.index == map['ReportOrgan']),
  2472. reportTime: map['ReportTime'] != null ? DateTime.parse(map['ReportTime']) : null,
  2473. reportUserName: map['ReportUserName'],
  2474. reportPreviewList: map['ReportPreviewList'] != null ? (map['ReportPreviewList'] as List).map((e)=>ReportPreviewDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  2475. referralRecordCode: map['ReferralRecordCode'],
  2476. createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
  2477. updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null,
  2478. );
  2479. }
  2480. Map<String, dynamic> toJson() {
  2481. final map = super.toJson();
  2482. if(reportCode != null)
  2483. map['ReportCode'] = reportCode;
  2484. if(recordCode != null)
  2485. map['RecordCode'] = recordCode;
  2486. if(reportUserCode != null)
  2487. map['ReportUserCode'] = reportUserCode;
  2488. if(deviceCode != null)
  2489. map['DeviceCode'] = deviceCode;
  2490. if(patientCode != null)
  2491. map['PatientCode'] = patientCode;
  2492. if(patientId != null)
  2493. map['PatientId'] = patientId;
  2494. if(patientName != null)
  2495. map['PatientName'] = patientName;
  2496. if(reportLabels != null)
  2497. map['ReportLabels'] = reportLabels;
  2498. if(platformLabels != null)
  2499. map['PlatformLabels'] = platformLabels;
  2500. if(diagnosisLabels != null)
  2501. map['DiagnosisLabels'] = diagnosisLabels;
  2502. map['ReportOrgan'] = reportOrgan.index;
  2503. if(reportTime != null)
  2504. map['ReportTime'] = JsonRpcUtils.dateFormat(reportTime!);
  2505. if(reportUserName != null)
  2506. map['ReportUserName'] = reportUserName;
  2507. if(reportPreviewList != null)
  2508. map['ReportPreviewList'] = reportPreviewList;
  2509. if(referralRecordCode != null)
  2510. map['ReferralRecordCode'] = referralRecordCode;
  2511. return map;
  2512. }
  2513. }
  2514. class ReportDTO extends ReportBaseDTO{
  2515. String? reportTemplateJson;
  2516. String? reportDatasJson;
  2517. String? encryptPatientName;
  2518. ReportDTO({
  2519. this.reportTemplateJson,
  2520. this.reportDatasJson,
  2521. this.encryptPatientName,
  2522. String? reportCode,
  2523. String? recordCode,
  2524. String? reportUserCode,
  2525. String? deviceCode,
  2526. String? patientCode,
  2527. String? patientId,
  2528. String? patientName,
  2529. List<String >? reportLabels,
  2530. List<String >? platformLabels,
  2531. List<String >? diagnosisLabels,
  2532. DiagnosisOrganEnum reportOrgan = DiagnosisOrganEnum.Null,
  2533. DateTime? reportTime,
  2534. String? reportUserName,
  2535. List<ReportPreviewDTO >? reportPreviewList,
  2536. String? referralRecordCode,
  2537. DateTime? createTime,
  2538. DateTime? updateTime,
  2539. }) : super(
  2540. reportCode: reportCode,
  2541. recordCode: recordCode,
  2542. reportUserCode: reportUserCode,
  2543. deviceCode: deviceCode,
  2544. patientCode: patientCode,
  2545. patientId: patientId,
  2546. patientName: patientName,
  2547. reportLabels: reportLabels,
  2548. platformLabels: platformLabels,
  2549. diagnosisLabels: diagnosisLabels,
  2550. reportOrgan: reportOrgan,
  2551. reportTime: reportTime,
  2552. reportUserName: reportUserName,
  2553. reportPreviewList: reportPreviewList,
  2554. referralRecordCode: referralRecordCode,
  2555. createTime: createTime,
  2556. updateTime: updateTime,
  2557. );
  2558. factory ReportDTO.fromJson(Map<String, dynamic> map) {
  2559. return ReportDTO(
  2560. reportTemplateJson: map['ReportTemplateJson'],
  2561. reportDatasJson: map['ReportDatasJson'],
  2562. encryptPatientName: map['EncryptPatientName'],
  2563. reportCode: map['ReportCode'],
  2564. recordCode: map['RecordCode'],
  2565. reportUserCode: map['ReportUserCode'],
  2566. deviceCode: map['DeviceCode'],
  2567. patientCode: map['PatientCode'],
  2568. patientId: map['PatientId'],
  2569. patientName: map['PatientName'],
  2570. reportLabels: map['ReportLabels'] != null ? map['ReportLabels'].cast<String>().toList() : null,
  2571. platformLabels: map['PlatformLabels'] != null ? map['PlatformLabels'].cast<String>().toList() : null,
  2572. diagnosisLabels: map['DiagnosisLabels'] != null ? map['DiagnosisLabels'].cast<String>().toList() : null,
  2573. reportOrgan: DiagnosisOrganEnum.values.firstWhere((e) => e.index == map['ReportOrgan']),
  2574. reportTime: map['ReportTime'] != null ? DateTime.parse(map['ReportTime']) : null,
  2575. reportUserName: map['ReportUserName'],
  2576. reportPreviewList: map['ReportPreviewList'] != null ? (map['ReportPreviewList'] as List).map((e)=>ReportPreviewDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  2577. referralRecordCode: map['ReferralRecordCode'],
  2578. createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
  2579. updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null,
  2580. );
  2581. }
  2582. Map<String, dynamic> toJson() {
  2583. final map = super.toJson();
  2584. if(reportTemplateJson != null)
  2585. map['ReportTemplateJson'] = reportTemplateJson;
  2586. if(reportDatasJson != null)
  2587. map['ReportDatasJson'] = reportDatasJson;
  2588. if(encryptPatientName != null)
  2589. map['EncryptPatientName'] = encryptPatientName;
  2590. return map;
  2591. }
  2592. }
  2593. class FindExamReportsRequest extends TokenRequest{
  2594. String? recordCode;
  2595. FindExamReportsRequest({
  2596. this.recordCode,
  2597. String? token,
  2598. }) : super(
  2599. token: token,
  2600. );
  2601. factory FindExamReportsRequest.fromJson(Map<String, dynamic> map) {
  2602. return FindExamReportsRequest(
  2603. recordCode: map['RecordCode'],
  2604. token: map['Token'],
  2605. );
  2606. }
  2607. Map<String, dynamic> toJson() {
  2608. final map = super.toJson();
  2609. if(recordCode != null)
  2610. map['RecordCode'] = recordCode;
  2611. return map;
  2612. }
  2613. }
  2614. class QueryReferralExamReportRequest extends FindExamReportsRequest{
  2615. String? referralRecordCode;
  2616. QueryReferralExamReportRequest({
  2617. this.referralRecordCode,
  2618. String? recordCode,
  2619. String? token,
  2620. }) : super(
  2621. recordCode: recordCode,
  2622. token: token,
  2623. );
  2624. factory QueryReferralExamReportRequest.fromJson(Map<String, dynamic> map) {
  2625. return QueryReferralExamReportRequest(
  2626. referralRecordCode: map['ReferralRecordCode'],
  2627. recordCode: map['RecordCode'],
  2628. token: map['Token'],
  2629. );
  2630. }
  2631. Map<String, dynamic> toJson() {
  2632. final map = super.toJson();
  2633. if(referralRecordCode != null)
  2634. map['ReferralRecordCode'] = referralRecordCode;
  2635. return map;
  2636. }
  2637. }