organization.m.dart 31 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132
  1. import 'notification.m.dart';
  2. import 'liveConsultation.m.dart';
  3. import 'device.m.dart';
  4. class SettingDTOClass {
  5. String? langugeKey;
  6. String? settingModule;
  7. String? customContent;
  8. String? completeContent;
  9. String? baseConfigVersion;
  10. String? version;
  11. SettingDTOClass({
  12. this.langugeKey,
  13. this.settingModule,
  14. this.customContent,
  15. this.completeContent,
  16. this.baseConfigVersion,
  17. this.version,
  18. });
  19. factory SettingDTOClass.fromJson(Map<String, dynamic> map) {
  20. return SettingDTOClass(
  21. langugeKey: map['LangugeKey'],
  22. settingModule: map['SettingModule'],
  23. customContent: map['CustomContent'],
  24. completeContent: map['CompleteContent'],
  25. baseConfigVersion: map['BaseConfigVersion'],
  26. version: map['Version'],
  27. );
  28. }
  29. Map<String, dynamic> toJson() {
  30. final map = Map<String, dynamic>();
  31. if (langugeKey != null) {
  32. map['LangugeKey'] = langugeKey;
  33. }
  34. if (settingModule != null) {
  35. map['SettingModule'] = settingModule;
  36. }
  37. if (customContent != null) {
  38. map['CustomContent'] = customContent;
  39. }
  40. if (completeContent != null) {
  41. map['CompleteContent'] = completeContent;
  42. }
  43. if (baseConfigVersion != null) {
  44. map['BaseConfigVersion'] = baseConfigVersion;
  45. }
  46. if (version != null) {
  47. map['Version'] = version;
  48. }
  49. return map;
  50. }
  51. }
  52. class ReferralOrganizationDTO {
  53. String? organizationCode;
  54. String? organizationName;
  55. ReferralOrganizationDTO({
  56. this.organizationCode,
  57. this.organizationName,
  58. });
  59. factory ReferralOrganizationDTO.fromJson(Map<String, dynamic> map) {
  60. return ReferralOrganizationDTO(
  61. organizationCode: map['OrganizationCode'],
  62. organizationName: map['OrganizationName'],
  63. );
  64. }
  65. Map<String, dynamic> toJson() {
  66. final map = Map<String, dynamic>();
  67. if (organizationCode != null) {
  68. map['OrganizationCode'] = organizationCode;
  69. }
  70. if (organizationName != null) {
  71. map['OrganizationName'] = organizationName;
  72. }
  73. return map;
  74. }
  75. }
  76. class OrganizationBasicDTO extends OrganizationBaseDTO{
  77. String? regionCode;
  78. String? rootRegionCode;
  79. String? parentCode;
  80. String? logoUrl;
  81. OrganizationPatientTypeEnum patientType;
  82. bool isinvented;
  83. List<SettingDTOClass>? settings;
  84. List<String>? diagnosisModules;
  85. bool isEncryptedShow;
  86. double referralLimitHours;
  87. List<String>? referralOrganizationCodes;
  88. List<ReferralOrganizationDTO>? referralOrganizations;
  89. String? defaultThesaurusCode;
  90. String? defaultReportTemplateCode;
  91. bool emergencyNeedFill;
  92. String? emergencySettingVersion;
  93. String? emergencySettingJson;
  94. OrganizationBasicDTO({
  95. this.regionCode,
  96. this.rootRegionCode,
  97. this.parentCode,
  98. this.logoUrl,
  99. this.patientType = OrganizationPatientTypeEnum.Person,
  100. this.isinvented = false,
  101. this.settings,
  102. this.diagnosisModules,
  103. this.isEncryptedShow = false,
  104. this.referralLimitHours = 0,
  105. this.referralOrganizationCodes,
  106. this.referralOrganizations,
  107. this.defaultThesaurusCode,
  108. this.defaultReportTemplateCode,
  109. this.emergencyNeedFill = false,
  110. this.emergencySettingVersion,
  111. this.emergencySettingJson,
  112. String? organizationCode,
  113. String? organizationName,
  114. String? shortCode,
  115. DateTime? createTime,
  116. DateTime? updateTime,
  117. }) : super(
  118. organizationCode: organizationCode,
  119. organizationName: organizationName,
  120. shortCode: shortCode,
  121. createTime: createTime,
  122. updateTime: updateTime,
  123. );
  124. factory OrganizationBasicDTO.fromJson(Map<String, dynamic> map) {
  125. return OrganizationBasicDTO(
  126. regionCode: map['RegionCode'],
  127. rootRegionCode: map['RootRegionCode'],
  128. parentCode: map['ParentCode'],
  129. logoUrl: map['LogoUrl'],
  130. patientType: OrganizationPatientTypeEnum.values.firstWhere((e) => e.index == map['PatientType']),
  131. isinvented: map['Isinvented'],
  132. settings: map['Settings'] != null ? (map['Settings'] as List).map((e)=>SettingDTOClass.fromJson(e as Map<String,dynamic>)).toList() : null,
  133. diagnosisModules: map['DiagnosisModules']?.cast<String>().toList(),
  134. isEncryptedShow: map['IsEncryptedShow'],
  135. referralLimitHours: double.parse(map['ReferralLimitHours'].toString()),
  136. referralOrganizationCodes: map['ReferralOrganizationCodes']?.cast<String>().toList(),
  137. referralOrganizations: map['ReferralOrganizations'] != null ? (map['ReferralOrganizations'] as List).map((e)=>ReferralOrganizationDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  138. defaultThesaurusCode: map['DefaultThesaurusCode'],
  139. defaultReportTemplateCode: map['DefaultReportTemplateCode'],
  140. emergencyNeedFill: map['EmergencyNeedFill'],
  141. emergencySettingVersion: map['EmergencySettingVersion'],
  142. emergencySettingJson: map['EmergencySettingJson'],
  143. organizationCode: map['OrganizationCode'],
  144. organizationName: map['OrganizationName'],
  145. shortCode: map['ShortCode'],
  146. createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
  147. updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null,
  148. );
  149. }
  150. Map<String, dynamic> toJson() {
  151. final map = super.toJson();
  152. if (regionCode != null)
  153. map['RegionCode'] = regionCode;
  154. if (rootRegionCode != null)
  155. map['RootRegionCode'] = rootRegionCode;
  156. if (parentCode != null)
  157. map['ParentCode'] = parentCode;
  158. if (logoUrl != null)
  159. map['LogoUrl'] = logoUrl;
  160. map['PatientType'] = patientType.index;
  161. map['Isinvented'] = isinvented;
  162. if (settings != null)
  163. map['Settings'] = settings;
  164. if (diagnosisModules != null)
  165. map['DiagnosisModules'] = diagnosisModules;
  166. map['IsEncryptedShow'] = isEncryptedShow;
  167. map['ReferralLimitHours'] = referralLimitHours;
  168. if (referralOrganizationCodes != null)
  169. map['ReferralOrganizationCodes'] = referralOrganizationCodes;
  170. if (referralOrganizations != null)
  171. map['ReferralOrganizations'] = referralOrganizations;
  172. if (defaultThesaurusCode != null)
  173. map['DefaultThesaurusCode'] = defaultThesaurusCode;
  174. if (defaultReportTemplateCode != null)
  175. map['DefaultReportTemplateCode'] = defaultReportTemplateCode;
  176. map['EmergencyNeedFill'] = emergencyNeedFill;
  177. if (emergencySettingVersion != null)
  178. map['EmergencySettingVersion'] = emergencySettingVersion;
  179. if (emergencySettingJson != null)
  180. map['EmergencySettingJson'] = emergencySettingJson;
  181. return map;
  182. }
  183. }
  184. enum OrganizationTypeEnum {
  185. Corporation,
  186. Department,
  187. Section,
  188. }
  189. enum OrganizationStateEnum {
  190. WaitAudit,
  191. Audited,
  192. Rejected,
  193. }
  194. class OrganizationDTO extends OrganizationBasicDTO{
  195. String? description;
  196. String? rootCode;
  197. OrganizationTypeEnum organizationType;
  198. List<String>? authorityGroups;
  199. String? nautica;
  200. OrganizationStateEnum state;
  201. List<String>? directors;
  202. List<String>? assignedAdmins;
  203. String? patientSettingJson;
  204. String? examSettingJson;
  205. String? consultationSettingJson;
  206. String? patientSettingVersion;
  207. String? examSettingVersion;
  208. String? consultationSettingVersion;
  209. String? parentOrganizationName;
  210. OrganizationDTO({
  211. this.description,
  212. this.rootCode,
  213. this.organizationType = OrganizationTypeEnum.Corporation,
  214. this.authorityGroups,
  215. this.nautica,
  216. this.state = OrganizationStateEnum.WaitAudit,
  217. this.directors,
  218. this.assignedAdmins,
  219. this.patientSettingJson,
  220. this.examSettingJson,
  221. this.consultationSettingJson,
  222. this.patientSettingVersion,
  223. this.examSettingVersion,
  224. this.consultationSettingVersion,
  225. this.parentOrganizationName,
  226. String? regionCode,
  227. String? rootRegionCode,
  228. String? parentCode,
  229. String? logoUrl,
  230. OrganizationPatientTypeEnum patientType = OrganizationPatientTypeEnum.Person,
  231. bool isinvented = false,
  232. List<SettingDTOClass>? settings,
  233. List<String>? diagnosisModules,
  234. bool isEncryptedShow = false,
  235. double referralLimitHours = 0,
  236. List<String>? referralOrganizationCodes,
  237. List<ReferralOrganizationDTO>? referralOrganizations,
  238. String? defaultThesaurusCode,
  239. String? defaultReportTemplateCode,
  240. bool emergencyNeedFill = false,
  241. String? emergencySettingVersion,
  242. String? emergencySettingJson,
  243. String? organizationCode,
  244. String? organizationName,
  245. String? shortCode,
  246. DateTime? createTime,
  247. DateTime? updateTime,
  248. }) : super(
  249. regionCode: regionCode,
  250. rootRegionCode: rootRegionCode,
  251. parentCode: parentCode,
  252. logoUrl: logoUrl,
  253. patientType: patientType,
  254. isinvented: isinvented,
  255. settings: settings,
  256. diagnosisModules: diagnosisModules,
  257. isEncryptedShow: isEncryptedShow,
  258. referralLimitHours: referralLimitHours,
  259. referralOrganizationCodes: referralOrganizationCodes,
  260. referralOrganizations: referralOrganizations,
  261. defaultThesaurusCode: defaultThesaurusCode,
  262. defaultReportTemplateCode: defaultReportTemplateCode,
  263. emergencyNeedFill: emergencyNeedFill,
  264. emergencySettingVersion: emergencySettingVersion,
  265. emergencySettingJson: emergencySettingJson,
  266. organizationCode: organizationCode,
  267. organizationName: organizationName,
  268. shortCode: shortCode,
  269. createTime: createTime,
  270. updateTime: updateTime,
  271. );
  272. factory OrganizationDTO.fromJson(Map<String, dynamic> map) {
  273. return OrganizationDTO(
  274. description: map['Description'],
  275. rootCode: map['RootCode'],
  276. organizationType: OrganizationTypeEnum.values.firstWhere((e) => e.index == map['OrganizationType']),
  277. authorityGroups: map['AuthorityGroups']?.cast<String>().toList(),
  278. nautica: map['Nautica'],
  279. state: OrganizationStateEnum.values.firstWhere((e) => e.index == map['State']),
  280. directors: map['Directors']?.cast<String>().toList(),
  281. assignedAdmins: map['AssignedAdmins']?.cast<String>().toList(),
  282. patientSettingJson: map['PatientSettingJson'],
  283. examSettingJson: map['ExamSettingJson'],
  284. consultationSettingJson: map['ConsultationSettingJson'],
  285. patientSettingVersion: map['PatientSettingVersion'],
  286. examSettingVersion: map['ExamSettingVersion'],
  287. consultationSettingVersion: map['ConsultationSettingVersion'],
  288. parentOrganizationName: map['ParentOrganizationName'],
  289. regionCode: map['RegionCode'],
  290. rootRegionCode: map['RootRegionCode'],
  291. parentCode: map['ParentCode'],
  292. logoUrl: map['LogoUrl'],
  293. patientType: OrganizationPatientTypeEnum.values.firstWhere((e) => e.index == map['PatientType']),
  294. isinvented: map['Isinvented'],
  295. settings: map['Settings'] != null ? (map['Settings'] as List).map((e)=>SettingDTOClass.fromJson(e as Map<String,dynamic>)).toList() : null,
  296. diagnosisModules: map['DiagnosisModules']?.cast<String>().toList(),
  297. isEncryptedShow: map['IsEncryptedShow'],
  298. referralLimitHours: double.parse(map['ReferralLimitHours'].toString()),
  299. referralOrganizationCodes: map['ReferralOrganizationCodes']?.cast<String>().toList(),
  300. referralOrganizations: map['ReferralOrganizations'] != null ? (map['ReferralOrganizations'] as List).map((e)=>ReferralOrganizationDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  301. defaultThesaurusCode: map['DefaultThesaurusCode'],
  302. defaultReportTemplateCode: map['DefaultReportTemplateCode'],
  303. emergencyNeedFill: map['EmergencyNeedFill'],
  304. emergencySettingVersion: map['EmergencySettingVersion'],
  305. emergencySettingJson: map['EmergencySettingJson'],
  306. organizationCode: map['OrganizationCode'],
  307. organizationName: map['OrganizationName'],
  308. shortCode: map['ShortCode'],
  309. createTime: map['CreateTime'] != null ? DateTime.parse(map['CreateTime']) : null,
  310. updateTime: map['UpdateTime'] != null ? DateTime.parse(map['UpdateTime']) : null,
  311. );
  312. }
  313. Map<String, dynamic> toJson() {
  314. final map = super.toJson();
  315. if (description != null)
  316. map['Description'] = description;
  317. if (rootCode != null)
  318. map['RootCode'] = rootCode;
  319. map['OrganizationType'] = organizationType.index;
  320. if (authorityGroups != null)
  321. map['AuthorityGroups'] = authorityGroups;
  322. if (nautica != null)
  323. map['Nautica'] = nautica;
  324. map['State'] = state.index;
  325. if (directors != null)
  326. map['Directors'] = directors;
  327. if (assignedAdmins != null)
  328. map['AssignedAdmins'] = assignedAdmins;
  329. if (patientSettingJson != null)
  330. map['PatientSettingJson'] = patientSettingJson;
  331. if (examSettingJson != null)
  332. map['ExamSettingJson'] = examSettingJson;
  333. if (consultationSettingJson != null)
  334. map['ConsultationSettingJson'] = consultationSettingJson;
  335. if (patientSettingVersion != null)
  336. map['PatientSettingVersion'] = patientSettingVersion;
  337. if (examSettingVersion != null)
  338. map['ExamSettingVersion'] = examSettingVersion;
  339. if (consultationSettingVersion != null)
  340. map['ConsultationSettingVersion'] = consultationSettingVersion;
  341. if (parentOrganizationName != null)
  342. map['ParentOrganizationName'] = parentOrganizationName;
  343. return map;
  344. }
  345. }
  346. class SearchOrganizationsRequest extends TokenRequest{
  347. String? keyword;
  348. String? parentCode;
  349. String? parentShortCode;
  350. OrganizationTypeEnum organizationType;
  351. int pageSize;
  352. int pageIndex;
  353. SearchOrganizationsRequest({
  354. this.keyword,
  355. this.parentCode,
  356. this.parentShortCode,
  357. this.organizationType = OrganizationTypeEnum.Corporation,
  358. this.pageSize = 0,
  359. this.pageIndex = 0,
  360. String? token,
  361. }) : super(
  362. token: token,
  363. );
  364. factory SearchOrganizationsRequest.fromJson(Map<String, dynamic> map) {
  365. return SearchOrganizationsRequest(
  366. keyword: map['Keyword'],
  367. parentCode: map['ParentCode'],
  368. parentShortCode: map['ParentShortCode'],
  369. organizationType: OrganizationTypeEnum.values.firstWhere((e) => e.index == map['OrganizationType']),
  370. pageSize: map['PageSize'],
  371. pageIndex: map['PageIndex'],
  372. token: map['Token'],
  373. );
  374. }
  375. Map<String, dynamic> toJson() {
  376. final map = super.toJson();
  377. if (keyword != null)
  378. map['Keyword'] = keyword;
  379. if (parentCode != null)
  380. map['ParentCode'] = parentCode;
  381. if (parentShortCode != null)
  382. map['ParentShortCode'] = parentShortCode;
  383. map['OrganizationType'] = organizationType.index;
  384. map['PageSize'] = pageSize;
  385. map['PageIndex'] = pageIndex;
  386. return map;
  387. }
  388. }
  389. class GetOrganizationByCodeRequest extends TokenRequest{
  390. String? organizationCode;
  391. GetOrganizationByCodeRequest({
  392. this.organizationCode,
  393. String? token,
  394. }) : super(
  395. token: token,
  396. );
  397. factory GetOrganizationByCodeRequest.fromJson(Map<String, dynamic> map) {
  398. return GetOrganizationByCodeRequest(
  399. organizationCode: map['OrganizationCode'],
  400. token: map['Token'],
  401. );
  402. }
  403. Map<String, dynamic> toJson() {
  404. final map = super.toJson();
  405. if (organizationCode != null)
  406. map['OrganizationCode'] = organizationCode;
  407. return map;
  408. }
  409. }
  410. class GetParentOrganizationListRequest extends TokenRequest{
  411. GetParentOrganizationListRequest({
  412. String? token,
  413. }) : super(
  414. token: token,
  415. );
  416. factory GetParentOrganizationListRequest.fromJson(Map<String, dynamic> map) {
  417. return GetParentOrganizationListRequest(
  418. token: map['Token'],
  419. );
  420. }
  421. Map<String, dynamic> toJson() {
  422. final map = super.toJson();
  423. return map;
  424. }
  425. }
  426. class FindOrganizationListRequest extends PageRequest{
  427. String? keyWord;
  428. FindOrganizationListRequest({
  429. this.keyWord,
  430. int pageIndex = 0,
  431. int pageSize = 0,
  432. String? token,
  433. }) : super(
  434. pageIndex: pageIndex,
  435. pageSize: pageSize,
  436. token: token,
  437. );
  438. factory FindOrganizationListRequest.fromJson(Map<String, dynamic> map) {
  439. return FindOrganizationListRequest(
  440. keyWord: map['KeyWord'],
  441. pageIndex: map['PageIndex'],
  442. pageSize: map['PageSize'],
  443. token: map['Token'],
  444. );
  445. }
  446. Map<String, dynamic> toJson() {
  447. final map = super.toJson();
  448. if (keyWord != null)
  449. map['KeyWord'] = keyWord;
  450. return map;
  451. }
  452. }
  453. class FindPatientOrganizationsByPageRequest extends PageRequest{
  454. String? keyWord;
  455. FindPatientOrganizationsByPageRequest({
  456. this.keyWord,
  457. int pageIndex = 0,
  458. int pageSize = 0,
  459. String? token,
  460. }) : super(
  461. pageIndex: pageIndex,
  462. pageSize: pageSize,
  463. token: token,
  464. );
  465. factory FindPatientOrganizationsByPageRequest.fromJson(Map<String, dynamic> map) {
  466. return FindPatientOrganizationsByPageRequest(
  467. keyWord: map['KeyWord'],
  468. pageIndex: map['PageIndex'],
  469. pageSize: map['PageSize'],
  470. token: map['Token'],
  471. );
  472. }
  473. Map<String, dynamic> toJson() {
  474. final map = super.toJson();
  475. if (keyWord != null)
  476. map['KeyWord'] = keyWord;
  477. return map;
  478. }
  479. }
  480. class GetPersonOrganizationRequest extends TokenRequest{
  481. GetPersonOrganizationRequest({
  482. String? token,
  483. }) : super(
  484. token: token,
  485. );
  486. factory GetPersonOrganizationRequest.fromJson(Map<String, dynamic> map) {
  487. return GetPersonOrganizationRequest(
  488. token: map['Token'],
  489. );
  490. }
  491. Map<String, dynamic> toJson() {
  492. final map = super.toJson();
  493. return map;
  494. }
  495. }
  496. class SavePersonOrganizationRequest {
  497. String? token;
  498. String? regionCode;
  499. String? parentCode;
  500. String? logoUrl;
  501. String? organizationCode;
  502. String? organizationName;
  503. OrganizationPatientTypeEnum patientType;
  504. bool isEncryptedShow;
  505. double referralLimitHours;
  506. List<String>? referralOrganizationCodes;
  507. SavePersonOrganizationRequest({
  508. this.token,
  509. this.regionCode,
  510. this.parentCode,
  511. this.logoUrl,
  512. this.organizationCode,
  513. this.organizationName,
  514. this.patientType = OrganizationPatientTypeEnum.Person,
  515. this.isEncryptedShow = false,
  516. this.referralLimitHours = 0,
  517. this.referralOrganizationCodes,
  518. });
  519. factory SavePersonOrganizationRequest.fromJson(Map<String, dynamic> map) {
  520. return SavePersonOrganizationRequest(
  521. token: map['Token'],
  522. regionCode: map['RegionCode'],
  523. parentCode: map['ParentCode'],
  524. logoUrl: map['LogoUrl'],
  525. organizationCode: map['OrganizationCode'],
  526. organizationName: map['OrganizationName'],
  527. patientType: OrganizationPatientTypeEnum.values.firstWhere((e) => e.index == map['PatientType']),
  528. isEncryptedShow: map['IsEncryptedShow'],
  529. referralLimitHours: double.parse(map['ReferralLimitHours'].toString()),
  530. referralOrganizationCodes: map['ReferralOrganizationCodes']?.cast<String>().toList(),
  531. );
  532. }
  533. Map<String, dynamic> toJson() {
  534. final map = Map<String, dynamic>();
  535. if (token != null) {
  536. map['Token'] = token;
  537. }
  538. if (regionCode != null) {
  539. map['RegionCode'] = regionCode;
  540. }
  541. if (parentCode != null) {
  542. map['ParentCode'] = parentCode;
  543. }
  544. if (logoUrl != null) {
  545. map['LogoUrl'] = logoUrl;
  546. }
  547. if (organizationCode != null) {
  548. map['OrganizationCode'] = organizationCode;
  549. }
  550. if (organizationName != null) {
  551. map['OrganizationName'] = organizationName;
  552. }
  553. map['PatientType'] = patientType.index;
  554. map['IsEncryptedShow'] = isEncryptedShow;
  555. map['ReferralLimitHours'] = referralLimitHours;
  556. if (referralOrganizationCodes != null) {
  557. map['ReferralOrganizationCodes'] = referralOrganizationCodes;
  558. }
  559. return map;
  560. }
  561. }
  562. class OrganizationItemDTO {
  563. String? organizationName;
  564. String? parentCode;
  565. String? extendsData;
  566. OrganizationPatientTypeEnum patientType;
  567. OrganizationItemDTO({
  568. this.organizationName,
  569. this.parentCode,
  570. this.extendsData,
  571. this.patientType = OrganizationPatientTypeEnum.Person,
  572. });
  573. factory OrganizationItemDTO.fromJson(Map<String, dynamic> map) {
  574. return OrganizationItemDTO(
  575. organizationName: map['OrganizationName'],
  576. parentCode: map['ParentCode'],
  577. extendsData: map['ExtendsData'],
  578. patientType: OrganizationPatientTypeEnum.values.firstWhere((e) => e.index == map['PatientType']),
  579. );
  580. }
  581. Map<String, dynamic> toJson() {
  582. final map = Map<String, dynamic>();
  583. if (organizationName != null) {
  584. map['OrganizationName'] = organizationName;
  585. }
  586. if (parentCode != null) {
  587. map['ParentCode'] = parentCode;
  588. }
  589. if (extendsData != null) {
  590. map['ExtendsData'] = extendsData;
  591. }
  592. map['PatientType'] = patientType.index;
  593. return map;
  594. }
  595. }
  596. class AddOrganizationsRequest extends TokenRequest{
  597. List<OrganizationItemDTO>? organizationInfos;
  598. String? languageCode;
  599. AddOrganizationsRequest({
  600. this.organizationInfos,
  601. this.languageCode,
  602. String? token,
  603. }) : super(
  604. token: token,
  605. );
  606. factory AddOrganizationsRequest.fromJson(Map<String, dynamic> map) {
  607. return AddOrganizationsRequest(
  608. organizationInfos: map['OrganizationInfos'] != null ? (map['OrganizationInfos'] as List).map((e)=>OrganizationItemDTO.fromJson(e as Map<String,dynamic>)).toList() : null,
  609. languageCode: map['LanguageCode'],
  610. token: map['Token'],
  611. );
  612. }
  613. Map<String, dynamic> toJson() {
  614. final map = super.toJson();
  615. if (organizationInfos != null)
  616. map['OrganizationInfos'] = organizationInfos;
  617. if (languageCode != null)
  618. map['LanguageCode'] = languageCode;
  619. return map;
  620. }
  621. }
  622. class RemoveOrganizationsRequest extends TokenRequest{
  623. List<String>? organizationCodes;
  624. RemoveOrganizationsRequest({
  625. this.organizationCodes,
  626. String? token,
  627. }) : super(
  628. token: token,
  629. );
  630. factory RemoveOrganizationsRequest.fromJson(Map<String, dynamic> map) {
  631. return RemoveOrganizationsRequest(
  632. organizationCodes: map['OrganizationCodes']?.cast<String>().toList(),
  633. token: map['Token'],
  634. );
  635. }
  636. Map<String, dynamic> toJson() {
  637. final map = super.toJson();
  638. if (organizationCodes != null)
  639. map['OrganizationCodes'] = organizationCodes;
  640. return map;
  641. }
  642. }
  643. class UpdateOrganizationNameRequest extends TokenRequest{
  644. String? organizationCode;
  645. String? organizationName;
  646. UpdateOrganizationNameRequest({
  647. this.organizationCode,
  648. this.organizationName,
  649. String? token,
  650. }) : super(
  651. token: token,
  652. );
  653. factory UpdateOrganizationNameRequest.fromJson(Map<String, dynamic> map) {
  654. return UpdateOrganizationNameRequest(
  655. organizationCode: map['OrganizationCode'],
  656. organizationName: map['OrganizationName'],
  657. token: map['Token'],
  658. );
  659. }
  660. Map<String, dynamic> toJson() {
  661. final map = super.toJson();
  662. if (organizationCode != null)
  663. map['OrganizationCode'] = organizationCode;
  664. if (organizationName != null)
  665. map['OrganizationName'] = organizationName;
  666. return map;
  667. }
  668. }
  669. class OrganizationSettingResult {
  670. String? settingVersion;
  671. String? cMSTemplateCode;
  672. String? settingData;
  673. OrganizationSettingResult({
  674. this.settingVersion,
  675. this.cMSTemplateCode,
  676. this.settingData,
  677. });
  678. factory OrganizationSettingResult.fromJson(Map<String, dynamic> map) {
  679. return OrganizationSettingResult(
  680. settingVersion: map['SettingVersion'],
  681. cMSTemplateCode: map['CMSTemplateCode'],
  682. settingData: map['SettingData'],
  683. );
  684. }
  685. Map<String, dynamic> toJson() {
  686. final map = Map<String, dynamic>();
  687. if (settingVersion != null) {
  688. map['SettingVersion'] = settingVersion;
  689. }
  690. if (cMSTemplateCode != null) {
  691. map['CMSTemplateCode'] = cMSTemplateCode;
  692. }
  693. if (settingData != null) {
  694. map['SettingData'] = settingData;
  695. }
  696. return map;
  697. }
  698. }
  699. enum OrganizationSettingTypeEnum {
  700. Patient,
  701. Exam,
  702. Consultation,
  703. StatisticsFake,
  704. IsOpenFake,
  705. Emergency,
  706. }
  707. class GetUserOrganizationSettingRequest extends TokenRequest{
  708. OrganizationSettingTypeEnum settingType;
  709. String? version;
  710. GetUserOrganizationSettingRequest({
  711. this.settingType = OrganizationSettingTypeEnum.Patient,
  712. this.version,
  713. String? token,
  714. }) : super(
  715. token: token,
  716. );
  717. factory GetUserOrganizationSettingRequest.fromJson(Map<String, dynamic> map) {
  718. return GetUserOrganizationSettingRequest(
  719. settingType: OrganizationSettingTypeEnum.values.firstWhere((e) => e.index == map['SettingType']),
  720. version: map['Version'],
  721. token: map['Token'],
  722. );
  723. }
  724. Map<String, dynamic> toJson() {
  725. final map = super.toJson();
  726. map['SettingType'] = settingType.index;
  727. if (version != null)
  728. map['Version'] = version;
  729. return map;
  730. }
  731. }
  732. class ServerLangugeClass {
  733. String? langugeKey;
  734. List<String>? langugeModules;
  735. ServerLangugeClass({
  736. this.langugeKey,
  737. this.langugeModules,
  738. });
  739. factory ServerLangugeClass.fromJson(Map<String, dynamic> map) {
  740. return ServerLangugeClass(
  741. langugeKey: map['LangugeKey'],
  742. langugeModules: map['LangugeModules']?.cast<String>().toList(),
  743. );
  744. }
  745. Map<String, dynamic> toJson() {
  746. final map = Map<String, dynamic>();
  747. if (langugeKey != null) {
  748. map['LangugeKey'] = langugeKey;
  749. }
  750. if (langugeModules != null) {
  751. map['LangugeModules'] = langugeModules;
  752. }
  753. return map;
  754. }
  755. }
  756. class ServerSettingResult {
  757. List<ServerLangugeClass>? serverLangugeList;
  758. Map<String,String>? serverConfigList;
  759. int heartRateSeconds;
  760. int liveConsultationDefaultQueryDays;
  761. String? notificationUrl;
  762. int liveConsultationRateSeconds;
  763. String? cMSUrl;
  764. String? courseUrl;
  765. String? courseHomeUrl;
  766. String? courseAPIUrl;
  767. bool isSelfRtcService;
  768. String? liveProtocol;
  769. TransactionStatusEnum liveProtocolType;
  770. bool isSMSOn;
  771. bool isASROn;
  772. String? webServerUrl;
  773. int consultationTimeoutTimes;
  774. bool qualityControlSwitch;
  775. bool isScreenshot;
  776. ServerSettingResult({
  777. this.serverLangugeList,
  778. this.serverConfigList,
  779. this.heartRateSeconds = 0,
  780. this.liveConsultationDefaultQueryDays = 0,
  781. this.notificationUrl,
  782. this.liveConsultationRateSeconds = 0,
  783. this.cMSUrl,
  784. this.courseUrl,
  785. this.courseHomeUrl,
  786. this.courseAPIUrl,
  787. this.isSelfRtcService = false,
  788. this.liveProtocol,
  789. this.liveProtocolType = TransactionStatusEnum.Applied,
  790. this.isSMSOn = false,
  791. this.isASROn = false,
  792. this.webServerUrl,
  793. this.consultationTimeoutTimes = 0,
  794. this.qualityControlSwitch = false,
  795. this.isScreenshot = false,
  796. });
  797. factory ServerSettingResult.fromJson(Map<String, dynamic> map) {
  798. return ServerSettingResult(
  799. serverLangugeList: map['ServerLangugeList'] != null ? (map['ServerLangugeList'] as List).map((e)=>ServerLangugeClass.fromJson(e as Map<String,dynamic>)).toList() : null,
  800. serverConfigList: map['ServerConfigList']?.cast<String,String>(),
  801. heartRateSeconds: map['HeartRateSeconds'],
  802. liveConsultationDefaultQueryDays: map['LiveConsultationDefaultQueryDays'],
  803. notificationUrl: map['NotificationUrl'],
  804. liveConsultationRateSeconds: map['LiveConsultationRateSeconds'],
  805. cMSUrl: map['CMSUrl'],
  806. courseUrl: map['CourseUrl'],
  807. courseHomeUrl: map['CourseHomeUrl'],
  808. courseAPIUrl: map['CourseAPIUrl'],
  809. isSelfRtcService: map['IsSelfRtcService'],
  810. liveProtocol: map['LiveProtocol'],
  811. liveProtocolType: TransactionStatusEnum.values.firstWhere((e) => e.index == map['LiveProtocolType']),
  812. isSMSOn: map['IsSMSOn'],
  813. isASROn: map['IsASROn'],
  814. webServerUrl: map['WebServerUrl'],
  815. consultationTimeoutTimes: map['ConsultationTimeoutTimes'],
  816. qualityControlSwitch: map['QualityControlSwitch'],
  817. isScreenshot: map['IsScreenshot'],
  818. );
  819. }
  820. Map<String, dynamic> toJson() {
  821. final map = Map<String, dynamic>();
  822. if (serverLangugeList != null) {
  823. map['ServerLangugeList'] = serverLangugeList;
  824. }
  825. if (serverConfigList != null) {
  826. map['ServerConfigList'] = serverConfigList;
  827. }
  828. map['HeartRateSeconds'] = heartRateSeconds;
  829. map['LiveConsultationDefaultQueryDays'] = liveConsultationDefaultQueryDays;
  830. if (notificationUrl != null) {
  831. map['NotificationUrl'] = notificationUrl;
  832. }
  833. map['LiveConsultationRateSeconds'] = liveConsultationRateSeconds;
  834. if (cMSUrl != null) {
  835. map['CMSUrl'] = cMSUrl;
  836. }
  837. if (courseUrl != null) {
  838. map['CourseUrl'] = courseUrl;
  839. }
  840. if (courseHomeUrl != null) {
  841. map['CourseHomeUrl'] = courseHomeUrl;
  842. }
  843. if (courseAPIUrl != null) {
  844. map['CourseAPIUrl'] = courseAPIUrl;
  845. }
  846. map['IsSelfRtcService'] = isSelfRtcService;
  847. if (liveProtocol != null) {
  848. map['LiveProtocol'] = liveProtocol;
  849. }
  850. map['LiveProtocolType'] = liveProtocolType.index;
  851. map['IsSMSOn'] = isSMSOn;
  852. map['IsASROn'] = isASROn;
  853. if (webServerUrl != null) {
  854. map['WebServerUrl'] = webServerUrl;
  855. }
  856. map['ConsultationTimeoutTimes'] = consultationTimeoutTimes;
  857. map['QualityControlSwitch'] = qualityControlSwitch;
  858. map['IsScreenshot'] = isScreenshot;
  859. return map;
  860. }
  861. }
  862. class LangugeDataResult {
  863. String? version;
  864. String? content;
  865. String? langugeModule;
  866. LangugeDataResult({
  867. this.version,
  868. this.content,
  869. this.langugeModule,
  870. });
  871. factory LangugeDataResult.fromJson(Map<String, dynamic> map) {
  872. return LangugeDataResult(
  873. version: map['Version'],
  874. content: map['Content'],
  875. langugeModule: map['LangugeModule'],
  876. );
  877. }
  878. Map<String, dynamic> toJson() {
  879. final map = Map<String, dynamic>();
  880. if (version != null) {
  881. map['Version'] = version;
  882. }
  883. if (content != null) {
  884. map['Content'] = content;
  885. }
  886. if (langugeModule != null) {
  887. map['LangugeModule'] = langugeModule;
  888. }
  889. return map;
  890. }
  891. }
  892. class LangugeDataItemRequest {
  893. String? version;
  894. String? langugeModule;
  895. LangugeDataItemRequest({
  896. this.version,
  897. this.langugeModule,
  898. });
  899. factory LangugeDataItemRequest.fromJson(Map<String, dynamic> map) {
  900. return LangugeDataItemRequest(
  901. version: map['Version'],
  902. langugeModule: map['LangugeModule'],
  903. );
  904. }
  905. Map<String, dynamic> toJson() {
  906. final map = Map<String, dynamic>();
  907. if (version != null) {
  908. map['Version'] = version;
  909. }
  910. if (langugeModule != null) {
  911. map['LangugeModule'] = langugeModule;
  912. }
  913. return map;
  914. }
  915. }
  916. class LangugeDataRequest extends TokenRequest{
  917. String? langugeKey;
  918. List<LangugeDataItemRequest>? langugeDataItemList;
  919. LangugeDataRequest({
  920. this.langugeKey,
  921. this.langugeDataItemList,
  922. String? token,
  923. }) : super(
  924. token: token,
  925. );
  926. factory LangugeDataRequest.fromJson(Map<String, dynamic> map) {
  927. return LangugeDataRequest(
  928. langugeKey: map['LangugeKey'],
  929. langugeDataItemList: map['LangugeDataItemList'] != null ? (map['LangugeDataItemList'] as List).map((e)=>LangugeDataItemRequest.fromJson(e as Map<String,dynamic>)).toList() : null,
  930. token: map['Token'],
  931. );
  932. }
  933. Map<String, dynamic> toJson() {
  934. final map = super.toJson();
  935. if (langugeKey != null)
  936. map['LangugeKey'] = langugeKey;
  937. if (langugeDataItemList != null)
  938. map['LangugeDataItemList'] = langugeDataItemList;
  939. return map;
  940. }
  941. }
  942. class OrganizationSimplifyDTO {
  943. String? organizationCode;
  944. String? organizationName;
  945. String? shortCode;
  946. OrganizationSimplifyDTO({
  947. this.organizationCode,
  948. this.organizationName,
  949. this.shortCode,
  950. });
  951. factory OrganizationSimplifyDTO.fromJson(Map<String, dynamic> map) {
  952. return OrganizationSimplifyDTO(
  953. organizationCode: map['OrganizationCode'],
  954. organizationName: map['OrganizationName'],
  955. shortCode: map['ShortCode'],
  956. );
  957. }
  958. Map<String, dynamic> toJson() {
  959. final map = Map<String, dynamic>();
  960. if (organizationCode != null) {
  961. map['OrganizationCode'] = organizationCode;
  962. }
  963. if (organizationName != null) {
  964. map['OrganizationName'] = organizationName;
  965. }
  966. if (shortCode != null) {
  967. map['ShortCode'] = shortCode;
  968. }
  969. return map;
  970. }
  971. }
  972. class GetOrganizationByUserAndDevicesRequest extends PageRequest{
  973. String? keyword;
  974. bool onlyOrganization;
  975. bool isIncloudReferral;
  976. GetOrganizationByUserAndDevicesRequest({
  977. this.keyword,
  978. this.onlyOrganization = false,
  979. this.isIncloudReferral = false,
  980. int pageIndex = 0,
  981. int pageSize = 0,
  982. String? token,
  983. }) : super(
  984. pageIndex: pageIndex,
  985. pageSize: pageSize,
  986. token: token,
  987. );
  988. factory GetOrganizationByUserAndDevicesRequest.fromJson(Map<String, dynamic> map) {
  989. return GetOrganizationByUserAndDevicesRequest(
  990. keyword: map['Keyword'],
  991. onlyOrganization: map['OnlyOrganization'],
  992. isIncloudReferral: map['IsIncloudReferral'],
  993. pageIndex: map['PageIndex'],
  994. pageSize: map['PageSize'],
  995. token: map['Token'],
  996. );
  997. }
  998. Map<String, dynamic> toJson() {
  999. final map = super.toJson();
  1000. if (keyword != null)
  1001. map['Keyword'] = keyword;
  1002. map['OnlyOrganization'] = onlyOrganization;
  1003. map['IsIncloudReferral'] = isIncloudReferral;
  1004. return map;
  1005. }
  1006. }
  1007. class QueryOrganizationsRequest extends TokenRequest{
  1008. String? shortCode;
  1009. QueryOrganizationsRequest({
  1010. this.shortCode,
  1011. String? token,
  1012. }) : super(
  1013. token: token,
  1014. );
  1015. factory QueryOrganizationsRequest.fromJson(Map<String, dynamic> map) {
  1016. return QueryOrganizationsRequest(
  1017. shortCode: map['ShortCode'],
  1018. token: map['Token'],
  1019. );
  1020. }
  1021. Map<String, dynamic> toJson() {
  1022. final map = super.toJson();
  1023. if (shortCode != null)
  1024. map['ShortCode'] = shortCode;
  1025. return map;
  1026. }
  1027. }