From 24ef032c4ef5dad3a4f4450810f054f8012bb93b Mon Sep 17 00:00:00 2001
From: chenyc <501753378@qq.com>
Date: 星期五, 01 八月 2025 12:30:28 +0800
Subject: [PATCH] 患者检验检查增加
---
src/views/report/item/index.vue | 298 ++++++++++++++++++++++++++---------------------------------
1 files changed, 133 insertions(+), 165 deletions(-)
diff --git a/src/views/report/item/index.vue b/src/views/report/item/index.vue
index eb19c58..e30c3ef 100644
--- a/src/views/report/item/index.vue
+++ b/src/views/report/item/index.vue
@@ -1,171 +1,139 @@
<template>
- <div class="reportItem">
- <van-nav-bar
- title=""
- left-text="返回"
- left-arrow
- @click="fanhui"
- />
- <div class="tou">
- <van-row>
- <van-col span="10">
- <span class="lable">姓名:</span>
- <span class="value">张三丰</span>
- </van-col>
- <van-col span="8">
- <span class="lable">性别:</span>
- <span class="value">男</span>
- </van-col>
- <van-col span="6">
- <span class="lable">年龄:</span>
- <span class="value">30</span>
- </van-col>
- <van-col span="10">
- <span class="lable">科别:</span>
- <span class="value">体检中心</span>
- </van-col>
- <van-col span="14">
- <span class="lable">临床诊断:</span>
- <span class="value">职业健康查体</span>
- </van-col>
- </van-row>
- </div>
- <div class="listdiv">
- <div class="listrow">
- <van-row class="thclass">
- <van-col span="12" style="padding-left: 20px;">检验项目</van-col>
- <van-col span="4">结果</van-col>
- <van-col span="4">单位</van-col>
- <van-col span="4">参考范围</van-col>
- </van-row>
- <van-row :class="{ 'tdclass': i % 2,'tdclassb': !(i % 2) }" v-for="i in 15" :key="i">
- <van-col span="12" style="padding-left: 20px;">嗜碱性粒细胞绝对值(BA#)</van-col>
- <van-col span="4">0.1</van-col>
- <van-col span="4">10∧9/L</van-col>
- <van-col span="4">3.5-9.5</van-col>
- </van-row>
+ <div class="blood-test-report">
+ <van-popup v-model:show="showPopup" position="bottom" :style="{ height: '100%' }">
+ <van-nav-bar
+ title=""
+ left-text="返回"
+ left-arrow
+ @click-left="onClickLeft"
+ />
+
+ <div class="report-container">
+ <div class="report-headerda">
+ <div class="report-header">
+ <div class="title">{{reportData.itemGroupName}}</div>
+ <div class="hospital"></div>
+ <img src="@/assets/xueye.png" alt="Blood Icon" class="blood-icon" />
+ </div>
+ <div class="report-details">
+ <div class="doctor">申请医生:</div>
+ <div class="date">报告时间:{{reportData.date}}</div>
+ </div>
+ </div>
+ <table class="report-table">
+ <thead>
+ <tr>
+ <th>检查项</th>
+ <th>结果</th>
+ <th>参考值/单位</th>
+ <!-- <th>趋势图</th> -->
+ </tr>
+ </thead>
+ <tbody>
+ <tr v-for="(item, index) in reportData.itemGroupItems" :key="index">
+ <td>{{ item.item_name }}</td>
+ <td>{{ item.item_result }} <b style="color: #f56c6c;">{{item.item_result_flag}}</b></td>
+ <td>{{ item.item_result_ref }}/{{item.item_result_unit}}</td>
+ <!-- <td><img :src="item.trendIcon" alt="Trend Icon" /></td> -->
+ </tr>
+ </tbody>
+ </table>
</div>
- </div>
- <div class="jiao">
- <van-row>
- <van-col span="12">
- <span class="lable">送检时间:</span>
- <span class="value">2022-09-27 16:20</span>
- </van-col>
- <van-col span="12">
- <span class="lable">报告时间:</span>
- <span class="value">2022-09-27 16:50</span>
- </van-col>
- <van-col span="12">
- <span class="lable">检测医生:</span>
- <span class="value">李四</span>
- </van-col>
- <van-col span="12">
- <span class="lable">审核医生:</span>
- <span class="value">王五</span>
- </van-col>
- <van-col span="24">
- <span class="lable">备注:</span>
- <span class="value">本报告仅对此次检验的样本负责</span>
- </van-col>
- </van-row>
- </div>
+ </van-popup>
</div>
</template>
-<script lang="ts" setup>
- import {ref,reactive,watchEffect,watch} from 'vue'
- import {useRouter} from 'vue-router'
- const router=useRouter()
- const fanhui=()=>{
- router.go(-1)
- }
-</script>
-<style scoped lang="scss">
- .reportItem{
- background-color: #F6FAFF;
- .tou{
- padding-top: 10px;
- padding-left: 20px;
- height: 66px;
- box-shadow: 0px 2px 4px 0px rgba(70,150,249,0.1);
- border-radius: 8px;
- background: #FFFFFF;
- div {
- height: 30px;
- border-radius: 6px;
- line-height: 30px;
- .lable{
- font-size: 13px;
- font-family: PingFangSC-Regular, PingFang SC;
- font-weight: 400;
- color: #777777;
- }
- .value{
- font-size: 13px;
- font-family: PingFangSC-Regular, PingFang SC;
- font-weight: 400;
- color: #333333;
- }
- }
- }
- .jiao{
- padding-top: 20px;
- padding-left: 20px;
- height: 96px;
- box-shadow: 0px 2px 4px 0px rgba(70,150,249,0.1);
- border-radius: 8px;
- background: #FFFFFF;
- div {
- height: 30px;
- border-radius: 6px;
- line-height: 30px;
- .lable{
- font-size: 13px;
- font-family: PingFangSC-Regular, PingFang SC;
- font-weight: 400;
- color: #777777;
- }
- .value{
- font-size: 13px;
- font-family: PingFangSC-Regular, PingFang SC;
- font-weight: 400;
- color: #333333;
- }
- }
- }
- }
- .listdiv{
- .listrow{
- margin-top: 10px;
- background: #FFFFFF;
- .thclass{
- height:40px;
- line-height: 40px;
- font-size: 13px;
- font-family: PingFangSC-Medium, PingFang SC;
- font-weight: 500;
- color: #333333;
- }
- .tdclass{
- height:30px;
- line-height: 30px;
- font-size: 13px;
- font-family: PingFangSC-Medium, PingFang SC;
- font-weight: 400;
- background: #F0F6FF;
- color: #777777;
- }
- .tdclassb{
- // padding-left: 20px;
- height:30px;
- line-height: 30px;
- font-size: 13px;
- font-family: PingFangSC-Medium, PingFang SC;
- font-weight: 400;
- background: #FFFFFF;
- color: #777777;
- }
- }
+ <script setup>
+ import { ref } from 'vue'
+ // import listIoc from '@/assets/listIoc.png';
+
+ const showPopup = ref(false)
+
+ const reportData=ref({
+ date:'',
+ itemGroupName:'',
+ itemGroupItems:[]
+ })
+ const onClickLeft = () => {
+ showPopup.value = false
}
-</style>
\ No newline at end of file
+ const showSet=(viveData)=>{
+ console.log(viveData)
+ reportData.value=Object.assign({},viveData)
+ showPopup.value=true
+ }
+ defineExpose ({
+ showSet
+ })
+ </script>
+
+ <style scoped>
+ .blood-test-report {
+ text-align: center;
+ background-color: #f0f4f8;
+ }
+
+ .report-container {
+ padding: 10pt;
+ background-color: #f0f4f8;
+ min-height: 100%;
+ }
+
+ .report-headerda {
+ border: 1px solid #ddd;
+ padding: 8px;
+ margin-bottom: 10px;
+ }
+
+ .report-header {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ margin-bottom: 10px;
+ padding-bottom: 10px;
+ border-bottom: 1pt solid #707070;
+ }
+
+ .title {
+ font-size: 18px;
+ font-weight: bold;
+ }
+
+ .hospital {
+ font-size: 14px;
+ color: #666;
+ }
+
+ .blood-icon {
+ width: 50px;
+ height: 50px;
+ }
+
+ .report-details {
+ display: flex;
+ justify-content: space-between;
+ margin-bottom: 20px;
+ }
+
+ .doctor,
+ .date {
+ font-size: 14px;
+ color: #666;
+ }
+
+ .report-table {
+ width: 100%;
+ border-collapse: collapse;
+ }
+
+ .report-table th,
+ .report-table td {
+ border: 1px solid #ddd;
+ padding: 8px;
+ text-align: center;
+ }
+
+ .report-table th {
+ background-color: #e6f2ff;
+ }
+ </style>
\ No newline at end of file
--
Gitblit v1.8.0