| 
					
				 | 
			
			
				@@ -1,235 +0,0 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-<template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  <div style="height: 10%;display: flex"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    <el-button @click="copyClick">复制选中的值</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    <div class="describe"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <div class="pat-info"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <test-describe front="姓名" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :text="inspectionHeader?.ptnt_NAME"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <test-describe front="性别" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :text="filterSex(inspectionHeader?.ptnt_SEX)"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <test-describe front="年龄" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :text="inspectionHeader.ptnt_AGE + filterAgeUnit(inspectionHeader.ptnt_AGE_UNIT) "/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <test-describe front="住院号" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :text="inspectionHeader.ptnt_NO"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <test-describe front="科室" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :text="inspectionHeader.dept_NAME"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <test-describe front="床号" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :text="inspectionHeader.ptnt_BED_NO"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <test-describe front="标本类型" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :text="inspectionHeader.smpl_NAME "/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <test-describe front="申请项目" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :text="inspectionHeader?.aply_CNTN.substring(0, 13) + inspectionHeader.aply_CNTN.substring(13)"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <div class="test-date"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <test-describe front="接收时间" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :text="inspectionHeader.aply_DATE "/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <test-describe front="检验时间" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :text="inspectionHeader.ordr_CREATE_DATE "/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <test-describe front="报告时间" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :text="inspectionHeader.audt_TIME "/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <test-describe front="送检医生" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :text="inspectionHeader.test_USR_NAME "/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <test-describe front="检验人" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :text="inspectionHeader.ordr_USR_NAME "/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <test-describe front="审核人" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :text="inspectionHeader.audt_USR_NAME "/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  <div class="container"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    <el-auto-resizer> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <template #default="{ height, width }"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <div style="display: flex"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <div class="sidebar"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <xc-table-v3 :height="height" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         @row-click="sidebarRow" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :data="sidebarList" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :columns="sidebarColums"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          <div class="main"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <xc-table-v3 :height="height" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         ref="tableRef" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :data="mainList" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                         :columns="mainColums"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    </el-auto-resizer> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-<script setup name='EmrTest' lang="tsx"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-// 查询检验 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import {getServerDateApi} from "@/api/public-api"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import {queryInspectionDetail, queryInspectionsIndex} from '@/api/inspections' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import {patInfo} from './emr-tools-store' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import {onMounted, ref} from "vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import XcTableV3 from "@/components/xiao-chan/xc-table-v3/XcTableV3.vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import {XcColumn} from "@/components/xiao-chan/xc-table-v3/XcColumn"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import {xcMessage} from '@/utils/xiaochan-element-plus' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import TestDescribe from "@/components/zhu-yuan-yi-sheng/emr/auxiliary-tools/test-describe.vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const emits = defineEmits(['close']) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const sidebarList = ref() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const mainList = ref() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const tableRef = ref() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const inspectionHeader = ref({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  aply_CNTN: '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const query = async () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  const param = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    type: 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    content: patInfo.value.inpatientNo, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    start: patInfo.value.admissDate, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    end: await getServerDateApi(), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  queryInspectionsIndex(param).then((res) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    sidebarList.value = res 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const sidebarColums: XcColumn<any>[] = [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  {title: '名称', key: 'aply_CTNT'} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const mainColums: XcColumn<any>[] = [ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  {title: '选择', type: 'selection'}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  {title: '名称', key: 'itm_NAME'}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  {title: '结果', key: 'itm_SRC_VALUE'}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  {title: '单位', key: 'itm_UNIT'}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  {title: '说明', key: 'itm_ALERT'}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  {title: '参考值', key: 'range'}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const sidebarRow = (row) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  tableRef.value.table().clearSelection() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  queryInspectionDetail(row.ordr_ID).then((res) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    mainList.value = res.inspectionItems 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    inspectionHeader.value = res.inspectionHeader 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    console.log(res) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-const copyClick = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  let temp = tableRef.value.table().getSelectionRows() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  if (temp.length === 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    xcMessage.error('请先选选择数据') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  let data = '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  temp.forEach(item => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    data += `${item.itm_NAME}    ${item.itm_VALUE}    ${item.itm_UNIT}     ${item.range}\n` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  let copyData = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    content: [{type: 'text', data}], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    plainText: data, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  window.localStorage.setItem( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      "clipBoardData", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      JSON.stringify(copyData) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  xcMessage.success('复制成功') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  emits('close') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-function filterSex(val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  switch (val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    case '0': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      return '未填' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    case '1': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      return '男' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    case '2': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      return '女' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    case '3': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      return '未知' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  return '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-function filterAgeUnit(val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  switch (val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    case '0': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      return '岁' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    case '1': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      return '月' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    case '2': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      return '天' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    case '3': 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      return '时' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  return '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-onMounted(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  query() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-</script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-<style scoped lang="scss"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-.container { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  height: 90%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-.sidebar { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  width: 220px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-.main { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  height: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-.describe { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  margin-left: 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  font-size: 12px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  .pat-info { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    div { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      padding: 5px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  .test-date { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    div { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      padding: 5px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-</style> 
			 |