普兆健康管家前端代码仓库
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

488 lines
14 KiB

  1. <template>
  2. <view class="page__view">
  3. <navbar title="体检报告" leftClick @leftClick="$utils.navigateBack" color="#191919" bgColor="#FFFFFF" />
  4. <view class="main" v-if="detail">
  5. <view class="section">
  6. <reportSummaryView :data="detail"></reportSummaryView>
  7. </view>
  8. <view class="section">
  9. <reportMainIndexView :list="detail.mainIndexList"></reportMainIndexView>
  10. </view>
  11. <view class="section">
  12. <reportAbnormalView :list="detail.abnormalList"></reportAbnormalView>
  13. </view>
  14. <view class="section">
  15. <reportCommonView :list="detail.commonlist"></reportCommonView>
  16. </view>
  17. <view class="section">
  18. <reportDetectView :data="detail"></reportDetectView>
  19. </view>
  20. <view class="section">
  21. <reportTableView :list="detail.tableList"></reportTableView>
  22. </view>
  23. </view>
  24. <view class="bottom">
  25. <button class="flex btn" @click="onDownload">下载PDF</button>
  26. </view>
  27. </view>
  28. </template>
  29. <script>
  30. import reportSummaryView from './reportSummaryView.vue'
  31. import reportMainIndexView from './reportMainIndexView.vue'
  32. import reportAbnormalView from './reportAbnormalView.vue'
  33. import reportCommonView from './reportCommonView.vue'
  34. import reportDetectView from './reportDetectView.vue'
  35. import reportTableView from './reportTableView.vue'
  36. export default {
  37. components: {
  38. reportSummaryView,
  39. reportMainIndexView,
  40. reportAbnormalView,
  41. reportCommonView,
  42. reportDetectView,
  43. reportTableView,
  44. },
  45. data() {
  46. return {
  47. id: null,
  48. detail: null,
  49. }
  50. },
  51. onLoad(arg) {
  52. this.id = arg.id
  53. this.getData()
  54. },
  55. methods: {
  56. getData() {
  57. this.detail = {
  58. score: 77,
  59. BMI: 20.3,
  60. BMIchange: -0.2,
  61. BMItag: '正常',
  62. height: 164,
  63. weight: 46,
  64. mainIndexList: [
  65. {
  66. id: '001',
  67. label: '心率',
  68. value: '75',
  69. unit: 'bpm(次/分钟)',
  70. standrad: '60-100bpm',
  71. status: 1,
  72. },
  73. {
  74. id: '002',
  75. label: '血氧',
  76. value: '99',
  77. unit: '%',
  78. standrad: '≥94%',
  79. status: 1,
  80. },
  81. {
  82. id: '003',
  83. label: '空腹血糖',
  84. value: '4.0',
  85. unit: 'mmol/L',
  86. standrad: '3.9-6.1mmol/L',
  87. status: 1,
  88. },
  89. {
  90. id: '004',
  91. label: '血压',
  92. value: '110/80',
  93. unit: 'mmHg',
  94. standrad: '140/90mmHg~90/60 mmHg',
  95. status: 1,
  96. },
  97. ],
  98. abnormalList: [
  99. {
  100. id: '001',
  101. title: '甲状腺结节(甲状腺结节或钙化)',
  102. desc: '建议进一步监测;常规测甲状腺功能全套,甲状腺。',
  103. },
  104. {
  105. id: '002',
  106. title: '甲状腺结节(甲状腺结节或钙化)',
  107. desc: '建议进一步监测;常规测甲状腺功能全套,甲状腺。',
  108. },
  109. {
  110. id: '003',
  111. title: '甲状腺结节(甲状腺结节或钙化)',
  112. desc: '建议进一步监测;常规测甲状腺功能全套,甲状腺。',
  113. },
  114. {
  115. id: '004',
  116. title: '甲状腺结节(甲状腺结节或钙化)',
  117. desc: '建议进一步监测;常规测甲状腺功能全套,甲状腺。',
  118. },
  119. ],
  120. commonlist: [
  121. {
  122. id: '001',
  123. label: '血小板',
  124. value: '5.2',
  125. standrad: '125~350×10^9/L',
  126. status: 1,
  127. },
  128. {
  129. id: '002',
  130. label: '血红蛋白',
  131. value: '4.8',
  132. standrad: '110 ~ 150g/L',
  133. status: 1,
  134. },
  135. {
  136. id: '003',
  137. label: '白细胞',
  138. value: '3.0',
  139. standrad: '3.9-6.1mmol/L',
  140. status: 1,
  141. },
  142. {
  143. id: '004',
  144. label: '转氨酶',
  145. value: '7.0',
  146. standrad: '3.9-6.1mmol/L',
  147. status: 1,
  148. },
  149. {
  150. id: '005',
  151. label: '胆红素',
  152. value: '17',
  153. standrad: '3.9-6.1mmol/L',
  154. status: 1,
  155. },
  156. {
  157. id: '006',
  158. label: '白蛋白',
  159. value: '15',
  160. standrad: '3.9-6.1mmol/L',
  161. status: 1,
  162. },
  163. {
  164. id: '007',
  165. label: '肌酐',
  166. value: '4',
  167. standrad: '3.9-6.1mmol/L',
  168. status: 1,
  169. },
  170. {
  171. id: '008',
  172. label: '尿酸',
  173. value: '556',
  174. standrad: '3.9-6.1mmol/L',
  175. status: 0,
  176. },
  177. {
  178. id: '009',
  179. label: '血压',
  180. value: '23',
  181. standrad: '3.9-6.1mmol/L',
  182. status: 0,
  183. },
  184. {
  185. id: '010',
  186. label: '甘油三酯',
  187. value: '56',
  188. standrad: '3.9-6.1mmol/L',
  189. status: 0,
  190. },
  191. ],
  192. chronicFoodAllergyList: [
  193. {
  194. id: '001',
  195. label: '血小板',
  196. value: '5.2',
  197. standrad: '125~350×10^9/L',
  198. status: 1,
  199. },
  200. {
  201. id: '002',
  202. label: '血红蛋白',
  203. value: '4.8',
  204. standrad: '110 ~ 150g/L',
  205. status: 1,
  206. },
  207. {
  208. id: '003',
  209. label: '白细胞',
  210. value: '3.0',
  211. standrad: '3.9-6.1mmol/L',
  212. status: 1,
  213. },
  214. {
  215. id: '004',
  216. label: '转氨酶',
  217. value: '7.0',
  218. standrad: '3.9-6.1mmol/L',
  219. status: 1,
  220. },
  221. {
  222. id: '005',
  223. label: '胆红素',
  224. value: '17',
  225. standrad: '3.9-6.1mmol/L',
  226. status: 1,
  227. },
  228. {
  229. id: '006',
  230. label: '白蛋白',
  231. value: '15',
  232. standrad: '3.9-6.1mmol/L',
  233. status: 1,
  234. },
  235. {
  236. id: '007',
  237. label: '肌酐',
  238. value: '4',
  239. standrad: '3.9-6.1mmol/L',
  240. status: 1,
  241. },
  242. {
  243. id: '008',
  244. label: '尿酸',
  245. value: '556',
  246. standrad: '3.9-6.1mmol/L',
  247. status: 0,
  248. },
  249. {
  250. id: '009',
  251. label: '血压',
  252. value: '23',
  253. standrad: '3.9-6.1mmol/L',
  254. status: 0,
  255. },
  256. {
  257. id: '010',
  258. label: '甘油三酯',
  259. value: '56',
  260. standrad: '3.9-6.1mmol/L',
  261. status: 0,
  262. },
  263. ],
  264. gutMicrobiomeList: [
  265. {
  266. id: '001',
  267. label: '血小板',
  268. value: '5.2',
  269. standrad: '125~350×10^9/L',
  270. status: 1,
  271. },
  272. {
  273. id: '002',
  274. label: '血红蛋白',
  275. value: '4.8',
  276. standrad: '110 ~ 150g/L',
  277. status: 1,
  278. },
  279. {
  280. id: '003',
  281. label: '白细胞',
  282. value: '3.0',
  283. standrad: '3.9-6.1mmol/L',
  284. status: 1,
  285. },
  286. {
  287. id: '004',
  288. label: '转氨酶',
  289. value: '7.0',
  290. standrad: '3.9-6.1mmol/L',
  291. status: 1,
  292. },
  293. {
  294. id: '005',
  295. label: '胆红素',
  296. value: '17',
  297. standrad: '3.9-6.1mmol/L',
  298. status: 1,
  299. },
  300. {
  301. id: '006',
  302. label: '白蛋白',
  303. value: '15',
  304. standrad: '3.9-6.1mmol/L',
  305. status: 1,
  306. },
  307. {
  308. id: '007',
  309. label: '肌酐',
  310. value: '4',
  311. standrad: '3.9-6.1mmol/L',
  312. status: 1,
  313. },
  314. {
  315. id: '008',
  316. label: '尿酸',
  317. value: '556',
  318. standrad: '3.9-6.1mmol/L',
  319. status: 0,
  320. },
  321. {
  322. id: '009',
  323. label: '血压',
  324. value: '23',
  325. standrad: '3.9-6.1mmol/L',
  326. status: 0,
  327. },
  328. {
  329. id: '010',
  330. label: '甘油三酯',
  331. value: '56',
  332. standrad: '3.9-6.1mmol/L',
  333. status: 0,
  334. },
  335. ],
  336. scoreList: [
  337. { id: '001', label: '饮食', value: 23 },
  338. { id: '002', label: '饮食', value: 23 },
  339. { id: '003', label: '作息', value: 44 },
  340. { id: '004', label: '作息', value: 44 },
  341. { id: '005', label: '运动', value: 88 },
  342. { id: '006', label: '运动', value: 88 },
  343. { id: '007', label: '体质', value: 56 },
  344. { id: '008', label: '体质', value: 56 },
  345. { id: '009', label: '心理', value: 78 },
  346. { id: '010', label: '心理', value: 100 },
  347. ],
  348. tableList: [
  349. {
  350. id: '001',
  351. name: '慢性食物过敏',
  352. significance: '评估个体对特定食物的免疫反应,主要检测IgG抗体水平。了解个体对不同食物的免疫反应程度,以帮助识别可能引起不适症状的食物,并指导个体的饮食调整和管理策略。辅助诊断和管理相关的消化问题和炎症疾病。',
  353. sampling: '指尖血',
  354. weight: 5,
  355. done: 1,
  356. },
  357. {
  358. id: '002',
  359. name: '肠道菌群基因测序',
  360. significance: '评估和分析个体肠道内微生物的组成和功能,以了解肠道健康状况和相关疾病的风险。以制定个性化的益生菌+ 营养策略和有害菌应对方案。',
  361. sampling: '指尖血',
  362. weight: 5,
  363. done: 1,
  364. },
  365. {
  366. id: '003',
  367. name: '营养与毒性元素',
  368. significance: '评估和分析个体肠道内微生物的组成和功能,以了解肠道健康状况和相关疾病的风险。以制定个性化的益生菌+ 营养策略和有害菌应对方案。',
  369. sampling: '指尖血',
  370. weight: 5,
  371. done: 1,
  372. },
  373. {
  374. id: '004',
  375. name: '精准基因',
  376. significance: '评估和分析个体肠道内微生物的组成和功能,以了解肠道健康状况和相关疾病的风险。以制定个性化的益生菌+ 营养策略和有害菌应对方案。',
  377. sampling: '指尖血',
  378. weight: 5,
  379. done: 1,
  380. },
  381. {
  382. id: '005',
  383. name: '新陈代谢',
  384. significance: '评估和分析个体肠道内微生物的组成和功能,以了解肠道健康状况和相关疾病的风险。以制定个性化的益生菌+ 营养策略和有害菌应对方案。',
  385. sampling: '指尖血',
  386. weight: 5,
  387. done: 1,
  388. },
  389. {
  390. id: '006',
  391. name: '女性荷尔蒙&抗缪',
  392. significance: '评估和分析个体肠道内微生物的组成和功能,以了解肠道健康状况和相关疾病的风险。以制定个性化的益生菌+ 营养策略和有害菌应对方案。',
  393. sampling: '指尖血',
  394. weight: 5,
  395. done: 1,
  396. },
  397. {
  398. id: '007',
  399. name: '环境荷尔蒙',
  400. significance: '评估和分析个体肠道内微生物的组成和功能,以了解肠道健康状况和相关疾病的风险。以制定个性化的益生菌+ 营养策略和有害菌应对方案。',
  401. sampling: '指尖血',
  402. weight: 5,
  403. done: 1,
  404. },
  405. {
  406. id: '008',
  407. name: '抗压力荷尔蒙评估',
  408. significance: '评估和分析个体肠道内微生物的组成和功能,以了解肠道健康状况和相关疾病的风险。以制定个性化的益生菌+ 营养策略和有害菌应对方案。',
  409. sampling: '指尖血',
  410. weight: 5,
  411. done: 1,
  412. },
  413. {
  414. id: '009',
  415. name: '慢病风险',
  416. significance: '评估和分析个体肠道内微生物的组成和功能,以了解肠道健康状况和相关疾病的风险。以制定个性化的益生菌+ 营养策略和有害菌应对方案。',
  417. sampling: '指尖血',
  418. weight: 5,
  419. done: 1,
  420. },
  421. ],
  422. }
  423. console.log('detail', this.detail)
  424. },
  425. jumpToNutritionProgram() {
  426. this.$utils.navigateTo(`/pages_order/report/nutritionProgram/index?id=${this.id}`)
  427. },
  428. },
  429. }
  430. </script>
  431. <style scoped lang="scss">
  432. .page__view {
  433. width: 100vw;
  434. min-height: 100vh;
  435. background-color: $uni-bg-color;
  436. position: relative;
  437. /deep/ .nav-bar__view {
  438. position: fixed;
  439. top: 0;
  440. left: 0;
  441. }
  442. }
  443. .main {
  444. padding: calc(var(--status-bar-height) + 168rpx) 32rpx 280rpx 32rpx;
  445. }
  446. .section {
  447. & + & {
  448. margin-top: 40rpx;
  449. }
  450. }
  451. .bottom {
  452. width: 100%;
  453. height: 200rpx;
  454. position: fixed;
  455. left: 0;
  456. bottom: 0;
  457. padding: 24rpx 40rpx;
  458. box-sizing: border-box;
  459. background: #FFFFFF;
  460. .btn {
  461. padding: 16rpx 0;
  462. font-family: PingFang SC;
  463. font-size: 36rpx;
  464. font-weight: 500;
  465. line-height: 1;
  466. color: #FFFFFF;
  467. background-image: linear-gradient(to right, #4B348F, #845CFA);
  468. border-radius: 41rpx;
  469. }
  470. }
  471. </style>