|  | @@ -1,115 +0,0 @@
 | 
	
		
			
				|  |  | -<template>
 | 
	
		
			
				|  |  | -  <window-size>
 | 
	
		
			
				|  |  | -    <van-empty description="暂无数据" v-show="!examPackageData.checkItems"></van-empty>
 | 
	
		
			
				|  |  | -    <div style="height: 5px"></div>
 | 
	
		
			
				|  |  | -    <van-tag type="success" size="large" v-show="examPackageData.checkItems" round plain>已发布体检</van-tag>
 | 
	
		
			
				|  |  | -    <van-cell v-for="item in examPackageData.checkItems" :title="item.体检单元名称" :value="item.checkTime" is-link
 | 
	
		
			
				|  |  | -              @click="handleClickExamItem(item)"></van-cell>
 | 
	
		
			
				|  |  | -    <van-cell v-show="examPackageData.summary" title="体检总结" is-link @click="showSummary"></van-cell>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    <div class="exam-item-result" v-show="currentExamTitle">
 | 
	
		
			
				|  |  | -      <van-nav-bar :title="currentExamTitle" left-text="返回" left-arrow @click-left="currentExamTitle = null"
 | 
	
		
			
				|  |  | -                   @click-right="showSwitchItem = true">
 | 
	
		
			
				|  |  | -        <template #right>
 | 
	
		
			
				|  |  | -          <van-icon name="wap-nav" size="18"/>
 | 
	
		
			
				|  |  | -          <span style="color: #1989fa"> 切换</span></template>
 | 
	
		
			
				|  |  | -      </van-nav-bar>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -      <van-action-sheet v-model:show="showSwitchItem" :actions="examPackageData.checkItems" @select="handleClickExamItem" close-on-click-action
 | 
	
		
			
				|  |  | -      close-on-click-overlay/>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -      <div :style="itemResultStyle">
 | 
	
		
			
				|  |  | -        <van-grid :column-num="4">
 | 
	
		
			
				|  |  | -          <van-grid-item text="体检项目"></van-grid-item>
 | 
	
		
			
				|  |  | -          <van-grid-item text="体检结果"></van-grid-item>
 | 
	
		
			
				|  |  | -          <van-grid-item text="单位"></van-grid-item>
 | 
	
		
			
				|  |  | -          <van-grid-item text="参考值"></van-grid-item>
 | 
	
		
			
				|  |  | -        </van-grid>
 | 
	
		
			
				|  |  | -        <div v-for="item in currentExamResult">
 | 
	
		
			
				|  |  | -          <van-grid :column-num="4">
 | 
	
		
			
				|  |  | -            <van-grid-item :text="item.检查项目"></van-grid-item>
 | 
	
		
			
				|  |  | -            <van-grid-item>
 | 
	
		
			
				|  |  | -              <template #text>
 | 
	
		
			
				|  |  | -                <span class="van-grid-item__text">
 | 
	
		
			
				|  |  | -                  {{ item.结果 }}
 | 
	
		
			
				|  |  | -                  <van-tag type="danger" v-if="item.阳性标识">
 | 
	
		
			
				|  |  | -                    {{ item.阳性标识 }}
 | 
	
		
			
				|  |  | -                  </van-tag>
 | 
	
		
			
				|  |  | -                </span>
 | 
	
		
			
				|  |  | -              </template>
 | 
	
		
			
				|  |  | -            </van-grid-item>
 | 
	
		
			
				|  |  | -            <van-grid-item :text="item.单位"></van-grid-item>
 | 
	
		
			
				|  |  | -            <van-grid-item :text="item.参考范围显示效果"></van-grid-item>
 | 
	
		
			
				|  |  | -          </van-grid>
 | 
	
		
			
				|  |  | -        </div>
 | 
	
		
			
				|  |  | -        <div class="department-summary">
 | 
	
		
			
				|  |  | -          科室小结:{{ currentDiagnose }}
 | 
	
		
			
				|  |  | -        </div>
 | 
	
		
			
				|  |  | -      </div>
 | 
	
		
			
				|  |  | -    </div>
 | 
	
		
			
				|  |  | -  </window-size>
 | 
	
		
			
				|  |  | -</template>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -<script setup lang="ts">
 | 
	
		
			
				|  |  | -import {onMounted, ref, Ref} from "vue";
 | 
	
		
			
				|  |  | -import {getPhysicalCheckResult} from '../../../api/physical-exam'
 | 
	
		
			
				|  |  | -import {Dialog} from "vant";
 | 
	
		
			
				|  |  | -import {useStore} from "vuex";
 | 
	
		
			
				|  |  | -import {useRouter} from "vue-router";
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -const router = useRouter()
 | 
	
		
			
				|  |  | -const store = useStore()
 | 
	
		
			
				|  |  | -const itemResultStyle = {
 | 
	
		
			
				|  |  | -  height: store.state.windowSize['h'] - 48 + 'px',
 | 
	
		
			
				|  |  | -  overflowY: 'auto'
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -const examPackageData: Ref<object> = ref({})
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -const currentExamTitle: Ref<string> = ref()
 | 
	
		
			
				|  |  | -const currentDiagnose: Ref<string> = ref()
 | 
	
		
			
				|  |  | -const currentExamResult: Ref<[]> = ref([])
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -const handleClickExamItem = (checkItem: object): void => {
 | 
	
		
			
				|  |  | -  checkItem.color = '#00c278'
 | 
	
		
			
				|  |  | -  currentExamTitle.value = checkItem['体检单元名称']
 | 
	
		
			
				|  |  | -  currentDiagnose.value = checkItem['诊断内容']
 | 
	
		
			
				|  |  | -  currentExamResult.value = examPackageData.value['examResult'][currentExamTitle.value]
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -const showSummary = (): void => {
 | 
	
		
			
				|  |  | -  Dialog.alert({
 | 
	
		
			
				|  |  | -    title: '体检总结',
 | 
	
		
			
				|  |  | -    message: examPackageData.value.summary.汇总建议,
 | 
	
		
			
				|  |  | -    messageAlign: 'left',
 | 
	
		
			
				|  |  | -  })
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -const showSwitchItem:Ref<boolean> = ref(false)
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -onMounted(() => {
 | 
	
		
			
				|  |  | -  const tjid = <string> router.currentRoute.value.params.tjid;
 | 
	
		
			
				|  |  | -  getPhysicalCheckResult(tjid).then(res => {
 | 
	
		
			
				|  |  | -    examPackageData.value = res
 | 
	
		
			
				|  |  | -  })
 | 
	
		
			
				|  |  | -})
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -</script>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -<style scoped>
 | 
	
		
			
				|  |  | -.exam-item-result {
 | 
	
		
			
				|  |  | -  position: absolute;
 | 
	
		
			
				|  |  | -  top: 0;
 | 
	
		
			
				|  |  | -  left: 0;
 | 
	
		
			
				|  |  | -  right: 0;
 | 
	
		
			
				|  |  | -  bottom: 0;
 | 
	
		
			
				|  |  | -  background: white;
 | 
	
		
			
				|  |  | -  z-index: 99
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -.department-summary {
 | 
	
		
			
				|  |  | -  padding: 8px 8px 12px 8px;
 | 
	
		
			
				|  |  | -  font-size: 13px;
 | 
	
		
			
				|  |  | -  color: darkred;
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | -</style>
 |