organization.m.dart 29 KB

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