organization.m.dart 30 KB

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