functions_panel.dart 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. import 'dart:async';
  2. import 'dart:convert';
  3. import 'package:fis_jsonrpc/rpc.dart';
  4. import 'package:flutter/foundation.dart';
  5. import 'package:flutter/material.dart';
  6. import 'package:get/get.dart';
  7. import 'package:vitalapp/architecture/utils/prompt_box.dart';
  8. import 'package:vitalapp/architecture/values/features.dart';
  9. import 'package:vitalapp/consts/styles.dart';
  10. import 'package:vitalapp/managers/interfaces/excelData.dart';
  11. import 'package:vitalapp/managers/interfaces/models/crowd_labels.dart';
  12. import 'package:vitalapp/pages/check/prescription/Iodine_deficiency_disorder.dart';
  13. import 'package:vitalapp/pages/check/prescription/blood_sugar_disorder.dart';
  14. import 'package:vitalapp/pages/check/prescription/hypertension_prescription.dart';
  15. import 'package:vitalapp/pages/check/prescription/hypertrophic_osteoarthropathy_prescription.dart';
  16. import 'package:vitalapp/pages/check/prescription/pediatric_epilepsy.dart';
  17. import 'package:vitalapp/pages/check/prescription/pediatric_pneumonia.dart';
  18. import 'package:vitalapp/pages/check/prescription/prescription_form.dart';
  19. import 'package:vitalapp/pages/check/prescription/prescription_form_keys.dart';
  20. import 'package:vitalapp/pages/check/prescription/trichomoniasis_vaginitis.dart';
  21. import 'package:vitalapp/pages/check/prescription/psychiatric_prescription.dart';
  22. import 'package:vitalapp/pages/check/prescription/tuberculosis_prescription.dart';
  23. import 'package:vitalapp/pages/check/prescription/under_fiveMalnutrition_prescription.dart';
  24. import 'package:vitalapp/pages/patient/csv_datas/excel_datas_view.dart';
  25. import 'package:vitalapp/pages/widgets/function_button.dart';
  26. import 'package:vitalapp/store/store.dart';
  27. import 'package:universal_html/html.dart' as html;
  28. import '../controller.dart';
  29. import 'package:csv/csv.dart';
  30. import 'package:vitalapp/managers/interfaces/excelData.dart';
  31. import 'package:vitalapp/pages/patient/csv_datas/excel_datas_view.dart';
  32. import 'package:vitalapp/store/store.dart';
  33. /// 功能入口面板
  34. class FunctionsPanel extends GetView<PatientDetailController> {
  35. const FunctionsPanel({super.key});
  36. @override
  37. Widget build(BuildContext context) {
  38. return Container(
  39. alignment: Alignment.topLeft,
  40. margin: const EdgeInsets.all(8).copyWith(left: 0, right: 12),
  41. decoration: BoxDecoration(
  42. color: Colors.white,
  43. borderRadius: GlobalStyles.borderRadius,
  44. ),
  45. padding: const EdgeInsets.symmetric(horizontal: 0, vertical: 10)
  46. .copyWith(right: 0),
  47. child: GridView(
  48. padding: const EdgeInsets.symmetric(horizontal: 12).copyWith(top: 6),
  49. gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount(
  50. crossAxisCount: 4,
  51. mainAxisSpacing: 5,
  52. crossAxisSpacing: 12,
  53. childAspectRatio: kIsWeb ? 1.3 : 1,
  54. ),
  55. children: [
  56. FunctionButton(
  57. label: "个人基本信息",
  58. icon: _buildImgIcon("record.png"),
  59. onTap: controller.gotoInfo,
  60. ),
  61. FunctionButton(
  62. label: "精神障碍补充表",
  63. icon: _buildImgIcon("severeMentalDisorderSupplementForm.png"),
  64. onTap: controller.gotoMentalDisorderInfo,
  65. ),
  66. FunctionButton(
  67. label: "体检记录",
  68. icon: _buildImgIcon("physicalExamRecord.png"),
  69. onTap: controller.gotoHealthCheckRecord,
  70. ),
  71. FunctionButton(
  72. label: "健康检测记录",
  73. icon: _buildImgIcon("diagnosisTreatment.png"),
  74. onTap: controller.gotoExamRecord,
  75. ),
  76. FunctionButton(
  77. label: "中医体质记录",
  78. icon: _buildImgIcon("traditionalChineseMedicineConstitution.png"),
  79. onTap: controller.gotoTraditionalChineseMedicineConsitutionRecord,
  80. ),
  81. FunctionButton(
  82. label: "高血压随访",
  83. icon: _buildImgIcon("hypertensionFollowUp.png"),
  84. onTap: controller.gotoHypertensionRecord,
  85. ),
  86. FunctionButton(
  87. label: "医生签约",
  88. icon: _buildImgIcon("signContract.png"),
  89. onTap: controller.gotoContractRecords,
  90. ),
  91. FunctionButton(
  92. label: "2型糖尿病随访",
  93. icon: _buildImgIcon("type2DiabetesFollowUp.png"),
  94. onTap: controller.gotoDiabetesRecord,
  95. ),
  96. FunctionButton(
  97. label: "老年人自理评估",
  98. icon: _buildImgIcon("selfCareAssessment.png"),
  99. onTap: controller.gotoSelfCareAbilityAssessment,
  100. ),
  101. FunctionButton(
  102. label: "孕产妇健康管理",
  103. icon: _buildImgIcon("maternalHealthManagement.png"),
  104. onTap: controller.gotoMaternalHealthManagement,
  105. ),
  106. FunctionButton(
  107. label: "精神障碍随访",
  108. icon: _buildImgIcon("severeMentalDisorderFollowUp.png"),
  109. onTap: controller.gotoMentalDisorderRecord,
  110. ),
  111. FunctionButton(
  112. label: "儿童健康管理",
  113. icon: _buildImgIcon("pediatricHealthManagement.png"),
  114. onTap: controller.gotoChildHealth,
  115. ),
  116. FunctionButton(
  117. label: "肺结核健康管理",
  118. icon: _buildImgIcon("tuberculosisHealthManagement.png"),
  119. onTap: controller.gototuberculosisRecord,
  120. ),
  121. ],
  122. ),
  123. );
  124. }
  125. Widget _buildImgIcon(String assetName) {
  126. return Image.asset(
  127. "assets/images/patient/$assetName",
  128. width: 115,
  129. height: 115,
  130. fit: BoxFit.contain,
  131. );
  132. }
  133. }