修改报告打印以及病例管理
This commit is contained in:
parent
ecdaf11003
commit
2c1636858f
@ -461,8 +461,13 @@ function initData() {
|
|||||||
var idx = GetQueryString("idx");
|
var idx = GetQueryString("idx");
|
||||||
var localStorage = window.localStorage;
|
var localStorage = window.localStorage;
|
||||||
var localData = JSON.parse(localStorage.data);
|
var localData = JSON.parse(localStorage.data);
|
||||||
|
var data= JSON.parse(localData.do);
|
||||||
|
console.log("网页接受到数据"+data)
|
||||||
|
stateData.dicomInfo = data;
|
||||||
|
initImgList(stateData.dicomInfo);
|
||||||
|
initConerstoneAndData();
|
||||||
/* alert(localData.regid) */
|
/* alert(localData.regid) */
|
||||||
$.getJSON("http://127.0.0.1:5000/get-data", {
|
/* $.getJSON("http://127.0.0.1:5000/get-data", {
|
||||||
|
|
||||||
},
|
},
|
||||||
function (data) {
|
function (data) {
|
||||||
@ -470,13 +475,19 @@ function initData() {
|
|||||||
alert("获取数据失败")
|
alert("获取数据失败")
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
console.log(data)
|
||||||
stateData.dicomInfo = data;
|
stateData.dicomInfo = data;
|
||||||
initImgList(stateData.dicomInfo);
|
initImgList(stateData.dicomInfo);
|
||||||
initConerstoneAndData();
|
initConerstoneAndData();
|
||||||
}
|
}
|
||||||
});
|
}); */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//初始化滚动条
|
//初始化滚动条
|
||||||
function initSlider(element) {
|
function initSlider(element) {
|
||||||
var idx = stateData.showMapping.get(element.id);
|
var idx = stateData.showMapping.get(element.id);
|
||||||
|
@ -28,4 +28,9 @@ export const ultrasoniccomApi = {
|
|||||||
upreporttemplatetime: async (pid:string) => {
|
upreporttemplatetime: async (pid:string) => {
|
||||||
return await request.get({ url: `/ultrasoniccom/ultrasonic/upreporttemplatetime?pid=${pid}`})
|
return await request.get({ url: `/ultrasoniccom/ultrasonic/upreporttemplatetime?pid=${pid}`})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
//获取dicom数据
|
||||||
|
getdcmlist: async () => {
|
||||||
|
return await request.get({ url: `/ultrasoniccom/ultrasonic/getdcm`})
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
:offset="4"
|
:offset="4"
|
||||||
style="text-align: left; padding-left: 8px; margin-bottom: 6px"
|
style="text-align: left; padding-left: 8px; margin-bottom: 6px"
|
||||||
>
|
>
|
||||||
<el-button> <Icon icon="ep:search" class="mr-5px" /> 搜索 </el-button>
|
<el-button @click="handleQuery">
|
||||||
|
<Icon icon="ep:search" class="mr-5px" /> 搜索
|
||||||
|
</el-button>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-form>
|
</el-form>
|
||||||
@ -164,17 +166,30 @@
|
|||||||
border
|
border
|
||||||
:stripe="true"
|
:stripe="true"
|
||||||
:show-overflow-tooltip="true"
|
:show-overflow-tooltip="true"
|
||||||
:data="list_patExamitems"
|
:data="list"
|
||||||
height="max(45vh,330px)"
|
height="max(45vh,330px)"
|
||||||
|
@row-click="handleRowClick"
|
||||||
>
|
>
|
||||||
aaaa
|
<el-table-column label="主键" align="center" prop="id" v-if="false" />
|
||||||
|
<el-table-column label="检查ID" align="center" prop="examId" />
|
||||||
|
<el-table-column label="患者姓名" align="center" prop="pname" />
|
||||||
|
<el-table-column label="性别" align="center" prop="gender" />
|
||||||
|
<el-table-column
|
||||||
|
label="出生日期"
|
||||||
|
align="center"
|
||||||
|
prop="birthday"
|
||||||
|
:formatter="dateFormatter2"
|
||||||
|
width="180px"
|
||||||
|
/>
|
||||||
|
<el-table-column label="机构ID" align="center" prop="orgId" v-if="false" />
|
||||||
|
<el-table-column label="登记单号" align="center" prop="regId" />
|
||||||
<!-- 数据列 -->
|
<!-- 数据列 -->
|
||||||
</el-table>
|
</el-table>
|
||||||
<div style="display: flex; justify-content: center">
|
<div style="display: flex; justify-content: center">
|
||||||
<Pagination
|
<Pagination
|
||||||
small
|
small
|
||||||
size="small"
|
size="small"
|
||||||
:total="total_patExamitems"
|
:total="total"
|
||||||
v-model:page="queryParams.pageNo"
|
v-model:page="queryParams.pageNo"
|
||||||
v-model:limit="queryParams.pageSize"
|
v-model:limit="queryParams.pageSize"
|
||||||
/>
|
/>
|
||||||
@ -221,10 +236,10 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { dateFormatter } from '@/utils/formatTime'
|
import { dateFormatter, dateFormatter2 } from '@/utils/formatTime'
|
||||||
import download from '@/utils/download'
|
import download from '@/utils/download'
|
||||||
import { IllnessCaseApi } from '@/api/applyregistration/illnessCase'
|
import { IllnessCaseApi } from '@/api/applyregistration/illnessCase'
|
||||||
|
import { PatientexamlistApi, PatientexamlistVO } from '@/api/tblist/patientexamlist'
|
||||||
defineOptions({ name: 'IllnessCase' })
|
defineOptions({ name: 'IllnessCase' })
|
||||||
/*
|
/*
|
||||||
* 李传洋
|
* 李传洋
|
||||||
@ -249,9 +264,34 @@ const queryParams0 = ref({
|
|||||||
doctorName: undefined,
|
doctorName: undefined,
|
||||||
departmentName: undefined
|
departmentName: undefined
|
||||||
})
|
})
|
||||||
|
|
||||||
const queryParams = ref({
|
const queryParams = ref({
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
|
examId: undefined,
|
||||||
|
pname: undefined,
|
||||||
|
gender: undefined,
|
||||||
|
birthday: undefined,
|
||||||
|
examDate: [],
|
||||||
|
deviceType: '',
|
||||||
|
seDc: undefined,
|
||||||
|
examItemName: undefined,
|
||||||
|
reportstatus: undefined,
|
||||||
|
applicationDate: [],
|
||||||
|
uploadDate: [],
|
||||||
|
orgName: undefined,
|
||||||
|
orgId: '',
|
||||||
|
highLevelOrgId: '',
|
||||||
|
createDate: [],
|
||||||
|
examDescription: undefined,
|
||||||
|
diagResults: undefined,
|
||||||
|
diagDate: [],
|
||||||
|
diagDoctor: undefined,
|
||||||
|
reviewDoctor: undefined,
|
||||||
|
reviewDate: [],
|
||||||
|
thumbnailImgUrl: undefined,
|
||||||
|
createTime: [],
|
||||||
|
regId: '',
|
||||||
/** 测试数据 **/
|
/** 测试数据 **/
|
||||||
it_1: '',
|
it_1: '',
|
||||||
it_2: '',
|
it_2: '',
|
||||||
@ -263,10 +303,47 @@ const queryParams = ref({
|
|||||||
it_8: '',
|
it_8: '',
|
||||||
it_9: ''
|
it_9: ''
|
||||||
})
|
})
|
||||||
//表格核心
|
// 列表的总页数
|
||||||
const list_patExamitems = ref<any[]>([])
|
const total = ref(0)
|
||||||
const total_patExamitems = ref(5)
|
|
||||||
const loading_patExamitems = ref(false)
|
const loading_patExamitems = ref(false)
|
||||||
|
// 列表的数据
|
||||||
|
const list = ref<PatientexamlistVO[]>([])
|
||||||
|
|
||||||
|
/** 查询列表 */
|
||||||
|
const getList = async () => {
|
||||||
|
resetForm()
|
||||||
|
loading_patExamitems.value = true
|
||||||
|
try {
|
||||||
|
const data = await PatientexamlistApi.getPatientexamlistPage(queryParams)
|
||||||
|
list.value = data.list
|
||||||
|
total.value = data.total
|
||||||
|
} finally {
|
||||||
|
loading_patExamitems.value = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 行点击事件
|
||||||
|
const handleRowClick = (row) => {
|
||||||
|
//所见
|
||||||
|
examitemsDesc .value= row.examDescription
|
||||||
|
//所得
|
||||||
|
diagnosisDesc.value = row.diagResults
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/** 搜索按钮操作 */
|
||||||
|
const handleQuery = () => {
|
||||||
|
queryParams.value.pageNo = 1
|
||||||
|
//获取到当前登陆用户的机构时 要进行赋值
|
||||||
|
queryParams.value.orgId = ''
|
||||||
|
queryParams.value.highLevelOrgId = ''
|
||||||
|
getList()
|
||||||
|
}
|
||||||
|
/** 重置表单 */
|
||||||
|
const resetForm = () => {
|
||||||
|
list.value = []
|
||||||
|
examitemsDesc.value=''
|
||||||
|
diagnosisDesc.value=''
|
||||||
|
}
|
||||||
|
|
||||||
/****** 自定义内容 ******/
|
/****** 自定义内容 ******/
|
||||||
/****** 可参考内容 ******/
|
/****** 可参考内容 ******/
|
||||||
@ -275,7 +352,7 @@ const loading_patExamitems = ref(false)
|
|||||||
|
|
||||||
/** 钩子方法 **/
|
/** 钩子方法 **/
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
//ceshi
|
getList()
|
||||||
})
|
})
|
||||||
|
|
||||||
/** 防空作用域 **/
|
/** 防空作用域 **/
|
||||||
|
@ -105,10 +105,12 @@
|
|||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<div style="text-align: right" class="item-style">
|
<div style="text-align: right" class="item-style">
|
||||||
<el-button> <Icon icon="ep:search" class="mr-2px" /> 搜索 </el-button>
|
<el-button @click="handleQuery">
|
||||||
<el-button type="primary" plain>
|
<Icon icon="ep:search" class="mr-2px" /> 搜索
|
||||||
<Icon icon="ep:printer" class="mr-2px" /> 打印
|
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<!-- <el-button type="primary" plain>
|
||||||
|
<Icon icon="ep:printer" class="mr-2px" /> 打印
|
||||||
|
</el-button> -->
|
||||||
</div>
|
</div>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@ -119,10 +121,23 @@
|
|||||||
border
|
border
|
||||||
:stripe="true"
|
:stripe="true"
|
||||||
:show-overflow-tooltip="true"
|
:show-overflow-tooltip="true"
|
||||||
:data="list_infos"
|
:data="list"
|
||||||
height="max(43vh,294px)"
|
height="max(43vh,294px)"
|
||||||
|
@row-click="handleRowClick"
|
||||||
>
|
>
|
||||||
aaaa
|
<el-table-column label="主键" align="center" prop="id" v-if="false" />
|
||||||
|
<el-table-column label="检查ID" align="center" prop="examId" />
|
||||||
|
<el-table-column label="患者姓名" align="center" prop="pname" />
|
||||||
|
<el-table-column label="性别" align="center" prop="gender" />
|
||||||
|
<el-table-column
|
||||||
|
label="出生日期"
|
||||||
|
align="center"
|
||||||
|
prop="birthday"
|
||||||
|
:formatter="dateFormatter2"
|
||||||
|
width="180px"
|
||||||
|
/>
|
||||||
|
<el-table-column label="机构ID" align="center" prop="orgId" v-if="false" />
|
||||||
|
<el-table-column label="登记单号" align="center" prop="regId" />
|
||||||
<!-- 数据列 -->
|
<!-- 数据列 -->
|
||||||
</el-table>
|
</el-table>
|
||||||
<div style="display: flex; justify-content: center">
|
<div style="display: flex; justify-content: center">
|
||||||
@ -132,6 +147,7 @@
|
|||||||
:total="total"
|
:total="total"
|
||||||
v-model:page="queryParams.pageNo"
|
v-model:page="queryParams.pageNo"
|
||||||
v-model:limit="queryParams.pageSize"
|
v-model:limit="queryParams.pageSize"
|
||||||
|
@pagination="getList"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</el-card>
|
</el-card>
|
||||||
@ -171,7 +187,7 @@
|
|||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="6">
|
<!-- <el-col :span="6">
|
||||||
<el-form-item label="类别" prop="it_3" class="item-style">
|
<el-form-item label="类别" prop="it_3" class="item-style">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="infoParams.it_3"
|
v-model="infoParams.it_3"
|
||||||
@ -185,8 +201,8 @@
|
|||||||
<el-option label="xxxxx" value="xxxxx" />
|
<el-option label="xxxxx" value="xxxxx" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col> -->
|
||||||
<el-col :span="7">
|
<!-- <el-col :span="7">
|
||||||
<el-form-item label="床号" prop="it_4" class="item-style">
|
<el-form-item label="床号" prop="it_4" class="item-style">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="infoParams.it_4"
|
v-model="infoParams.it_4"
|
||||||
@ -195,8 +211,8 @@
|
|||||||
class="item-width"
|
class="item-width"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col> -->
|
||||||
<el-col :span="2">
|
<!-- <el-col :span="2">
|
||||||
<el-form-item label="" label-width="4px" prop="it_5" class="item-style">
|
<el-form-item label="" label-width="4px" prop="it_5" class="item-style">
|
||||||
<el-checkbox v-model="infoParams.it_5" label="初诊" :disabled="true" />
|
<el-checkbox v-model="infoParams.it_5" label="初诊" :disabled="true" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -210,7 +226,7 @@
|
|||||||
class="item-width"
|
class="item-width"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col> -->
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="13">
|
<el-col :span="13">
|
||||||
@ -238,7 +254,7 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<!-- <el-col :span="6">
|
||||||
<el-form-item label="婚否" prop="it_9" class="item-style">
|
<el-form-item label="婚否" prop="it_9" class="item-style">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="infoParams.it_9"
|
v-model="infoParams.it_9"
|
||||||
@ -252,7 +268,7 @@
|
|||||||
<el-option label="xxxxx" value="xxxxx" />
|
<el-option label="xxxxx" value="xxxxx" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col> -->
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="7">
|
<el-col :span="7">
|
||||||
@ -260,7 +276,6 @@
|
|||||||
<el-date-picker
|
<el-date-picker
|
||||||
v-model="infoParams.it_10"
|
v-model="infoParams.it_10"
|
||||||
type="date"
|
type="date"
|
||||||
value-format="YYYY-MM-DD HH:mm:ss"
|
|
||||||
:readonly="true"
|
:readonly="true"
|
||||||
class="item-width"
|
class="item-width"
|
||||||
/>
|
/>
|
||||||
@ -269,12 +284,12 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="年龄" prop="it_11" class="item-style">
|
<el-form-item label="年龄" prop="it_11" class="item-style">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="infoParams.it_11"
|
v-model="age"
|
||||||
clearable
|
clearable
|
||||||
:readonly="true"
|
:readonly="true"
|
||||||
class="item-width"
|
class="item-width"
|
||||||
>
|
>
|
||||||
<template #append>
|
<!-- <template #append>
|
||||||
<el-select
|
<el-select
|
||||||
v-model="infoParams.it_11a"
|
v-model="infoParams.it_11a"
|
||||||
placeholder=""
|
placeholder=""
|
||||||
@ -286,11 +301,11 @@
|
|||||||
<el-option label="xxxxx" value="xxxxx" />
|
<el-option label="xxxxx" value="xxxxx" />
|
||||||
<el-option label="xxxxx" value="xxxxx" />
|
<el-option label="xxxxx" value="xxxxx" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</template>
|
</template> -->
|
||||||
</el-input>
|
</el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="9">
|
<!-- <el-col :span="9">
|
||||||
<el-form-item label="临床诊断" label-width="64px" prop="it_12" class="item-style">
|
<el-form-item label="临床诊断" label-width="64px" prop="it_12" class="item-style">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="infoParams.it_12"
|
v-model="infoParams.it_12"
|
||||||
@ -299,13 +314,13 @@
|
|||||||
class="item-width"
|
class="item-width"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col> -->
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="13">
|
<el-col :span="13">
|
||||||
<el-form-item label="科室" prop="it_13" class="item-style">
|
<el-form-item label="科室" prop="it_13" class="item-style">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="infoParams.it_13"
|
v-model="infoParams.billDoctorDepartment"
|
||||||
clearable
|
clearable
|
||||||
:readonly="true"
|
:readonly="true"
|
||||||
class="item-width"
|
class="item-width"
|
||||||
@ -328,14 +343,13 @@
|
|||||||
<el-form-item label="申请日期" prop="it_15" class="item-style date-picker">
|
<el-form-item label="申请日期" prop="it_15" class="item-style date-picker">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
v-model="infoParams.it_15"
|
v-model="infoParams.it_15"
|
||||||
type="date"
|
type="datetime"
|
||||||
value-format="YYYY-MM-DD HH:mm:ss"
|
|
||||||
:readonly="true"
|
:readonly="true"
|
||||||
class="item-width"
|
class="item-width"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="17">
|
<!-- <el-col :span="17">
|
||||||
<el-form-item label="末次月经" prop="it_16" class="item-style">
|
<el-form-item label="末次月经" prop="it_16" class="item-style">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="infoParams.it_16"
|
v-model="infoParams.it_16"
|
||||||
@ -344,10 +358,10 @@
|
|||||||
class="item-width"
|
class="item-width"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col> -->
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="7">
|
<!-- <el-col :span="7">
|
||||||
<el-form-item label="孕次" prop="it_17" class="item-style">
|
<el-form-item label="孕次" prop="it_17" class="item-style">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="infoParams.it_17"
|
v-model="infoParams.it_17"
|
||||||
@ -356,8 +370,8 @@
|
|||||||
class="item-width"
|
class="item-width"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col> -->
|
||||||
<el-col :span="6">
|
<!-- <el-col :span="6">
|
||||||
<el-form-item label="产次" prop="it_18" class="item-style">
|
<el-form-item label="产次" prop="it_18" class="item-style">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="infoParams.it_18"
|
v-model="infoParams.it_18"
|
||||||
@ -366,8 +380,8 @@
|
|||||||
class="item-width"
|
class="item-width"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col> -->
|
||||||
<el-col :span="11">
|
<!-- <el-col :span="11">
|
||||||
<el-form-item label="避孕方式" prop="it_19" class="item-style">
|
<el-form-item label="避孕方式" prop="it_19" class="item-style">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="infoParams.it_19"
|
v-model="infoParams.it_19"
|
||||||
@ -381,10 +395,10 @@
|
|||||||
<el-option label="xxxxx" value="xxxxx" />
|
<el-option label="xxxxx" value="xxxxx" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col> -->
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="13">
|
<!-- <el-col :span="13">
|
||||||
<el-form-item label="活检部位" prop="it_20" class="item-style">
|
<el-form-item label="活检部位" prop="it_20" class="item-style">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="infoParams.it_20"
|
v-model="infoParams.it_20"
|
||||||
@ -393,8 +407,8 @@
|
|||||||
class="item-width"
|
class="item-width"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col> -->
|
||||||
<el-col :span="11">
|
<!-- <el-col :span="11">
|
||||||
<el-form-item label="HP" prop="it_21" class="item-style">
|
<el-form-item label="HP" prop="it_21" class="item-style">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="infoParams.it_21"
|
v-model="infoParams.it_21"
|
||||||
@ -403,7 +417,7 @@
|
|||||||
class="item-width"
|
class="item-width"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col> -->
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="13">
|
<el-col :span="13">
|
||||||
@ -445,7 +459,57 @@
|
|||||||
</el-row>
|
</el-row>
|
||||||
</el-form>
|
</el-form>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane label="报告单" name="reportInfo">报告单</el-tab-pane>
|
<el-tab-pane label="报告单" name="reportInfo">
|
||||||
|
<!--报告区域-->
|
||||||
|
<div class="flex-center" id="printMe" style="height: calc(100% - 15px)">
|
||||||
|
<div class="ultrasound-report" id="PDF">
|
||||||
|
<h2>超声检查报告单</h2>
|
||||||
|
<hr />
|
||||||
|
<div class="patient-info">
|
||||||
|
<p class="info-item">姓名:{{infoParams.it_7}}</p>
|
||||||
|
<p class="info-item">送检科室:{{infoParams.billDoctorDepartment}}</p>
|
||||||
|
<p class="info-item">门诊号:{{infoParams.it_2}}</p>
|
||||||
|
<p class="info-item">性别:{{infoParams.it_8}}</p>
|
||||||
|
<p class="info-item">年龄:{{age}}</p>
|
||||||
|
<p class="info-item">设备:{{ infoParams.deviceName}}</p>
|
||||||
|
<p class="info-item">检查号:{{infoParams.it_1 }}</p>
|
||||||
|
<p class="info-item">检查类型:{{infoParams.examItemName }}</p>
|
||||||
|
</div>
|
||||||
|
<hr />
|
||||||
|
<!-- 图片展示区域 -->
|
||||||
|
<h3>超声图像:</h3>
|
||||||
|
<div class="image-gallery">
|
||||||
|
<div class="image-item-container" v-for="image in reportimages" :key="image.id">
|
||||||
|
<img :src="image.imgUrl" alt="" style="width: 180px; height: 180px" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="ultrasound-findings">
|
||||||
|
<h3>超声所见:</h3>
|
||||||
|
<p>{{infoParams.it_23}}</p>
|
||||||
|
</div>
|
||||||
|
<div class="ultrasound-recommendation">
|
||||||
|
<h3>超声提示:</h3>
|
||||||
|
<p>{{infoParams.it_24}}</p>
|
||||||
|
</div>
|
||||||
|
<div style="position: absolute; bottom: 20px; right: 20px">
|
||||||
|
<p>医生签名:{{}}</p>
|
||||||
|
<!-- <p>时间:xxx</p> -->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<el-divider />
|
||||||
|
<!--功能区-->
|
||||||
|
<div>
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
style="width: 100px; float: right"
|
||||||
|
class="ignore-print"
|
||||||
|
v-print="'printMe'"
|
||||||
|
>打印</el-button
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
<div> </div>
|
||||||
|
</div>
|
||||||
|
</el-tab-pane>
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@ -454,10 +518,11 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { dateFormatter } from '@/utils/formatTime'
|
import { dateFormatter, dateFormatter2 } from '@/utils/formatTime'
|
||||||
import download from '@/utils/download'
|
import download from '@/utils/download'
|
||||||
import { ReportPrintStatisticsApi } from '@/api/applyregistration/reportPrintStatistics'
|
import { ReportPrintStatisticsApi } from '@/api/applyregistration/reportPrintStatistics'
|
||||||
|
import { PatientexamlistApi, PatientexamlistVO } from '@/api/tblist/patientexamlist'
|
||||||
|
import { ultrasoniccomApi, updateexamineimageVO } from '@/api/ultrasoniccom'
|
||||||
defineOptions({ name: 'ReportPrintStatistics' })
|
defineOptions({ name: 'ReportPrintStatistics' })
|
||||||
/*
|
/*
|
||||||
* 李传洋
|
* 李传洋
|
||||||
@ -474,6 +539,8 @@ const message = useMessage()
|
|||||||
const { t } = useI18n()
|
const { t } = useI18n()
|
||||||
const activeTabName = ref('diagnosisInfo')
|
const activeTabName = ref('diagnosisInfo')
|
||||||
const deviceList = ref<any[]>([])
|
const deviceList = ref<any[]>([])
|
||||||
|
// 列表的总页数
|
||||||
|
const total = ref(0)
|
||||||
//表单核心
|
//表单核心
|
||||||
const queryParams0 = ref({
|
const queryParams0 = ref({
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
@ -484,14 +551,119 @@ const queryParams0 = ref({
|
|||||||
const queryParams = ref({
|
const queryParams = ref({
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
/** 测试数据 **/
|
examId: undefined,
|
||||||
it_1: '',
|
pname: undefined,
|
||||||
it_1a: '',
|
gender: undefined,
|
||||||
it_2: '',
|
birthday: undefined,
|
||||||
it_3: '',
|
examDate: [],
|
||||||
it_4: '',
|
deviceType: '',
|
||||||
it_5: ''
|
seDc: undefined,
|
||||||
|
examItemName: undefined,
|
||||||
|
reportstatus: undefined,
|
||||||
|
applicationDate: [],
|
||||||
|
uploadDate: [],
|
||||||
|
orgName: undefined,
|
||||||
|
orgId: '',
|
||||||
|
highLevelOrgId: '',
|
||||||
|
createDate: [],
|
||||||
|
examDescription: undefined,
|
||||||
|
diagResults: undefined,
|
||||||
|
diagDate: [],
|
||||||
|
diagDoctor: undefined,
|
||||||
|
reviewDoctor: undefined,
|
||||||
|
reviewDate: [],
|
||||||
|
thumbnailImgUrl: undefined,
|
||||||
|
createTime: [],
|
||||||
|
regId: ''
|
||||||
})
|
})
|
||||||
|
// 计算年龄
|
||||||
|
const age = ref()
|
||||||
|
const calculateAge = (birthdate) => {
|
||||||
|
if (!birthdate) {
|
||||||
|
age.value = null
|
||||||
|
return
|
||||||
|
}
|
||||||
|
const today = new Date()
|
||||||
|
const birth = new Date(birthdate)
|
||||||
|
|
||||||
|
let yearsDiff = today.getFullYear() - birth.getFullYear()
|
||||||
|
|
||||||
|
// Check if the birthday hasn't occurred yet this year
|
||||||
|
const hasBirthdayPassed =
|
||||||
|
today.getMonth() > birth.getMonth() ||
|
||||||
|
(today.getMonth() === birth.getMonth() && today.getDate() >= birth.getDate())
|
||||||
|
|
||||||
|
if (!hasBirthdayPassed) {
|
||||||
|
yearsDiff--
|
||||||
|
}
|
||||||
|
|
||||||
|
age.value = yearsDiff
|
||||||
|
|
||||||
|
}
|
||||||
|
// 列表的数据
|
||||||
|
const list = ref<PatientexamlistVO[]>([])
|
||||||
|
|
||||||
|
/** 查询列表 */
|
||||||
|
const getList = async () => {
|
||||||
|
loading.value = true
|
||||||
|
try {
|
||||||
|
queryParams.deviceType = 'US'
|
||||||
|
const data = await PatientexamlistApi.getPatientexamlistPage(queryParams)
|
||||||
|
list.value = data.list
|
||||||
|
total.value = data.total
|
||||||
|
} finally {
|
||||||
|
loading.value = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 搜索按钮操作 */
|
||||||
|
const handleQuery = () => {
|
||||||
|
queryParams.value.pageNo = 1
|
||||||
|
queryParams.value.deviceType = 'US'
|
||||||
|
//获取到当前登陆用户的机构时 要进行赋值
|
||||||
|
queryParams.value.orgId = ''
|
||||||
|
queryParams.value.highLevelOrgId = ''
|
||||||
|
getList()
|
||||||
|
}
|
||||||
|
//报告的查询
|
||||||
|
//选择图片集合
|
||||||
|
const reportimages = ref<any[]>([])
|
||||||
|
// 加载选择的三个图片
|
||||||
|
const loadimage = async (orgId:string,regId:string) => {
|
||||||
|
const imageslist = await ultrasoniccomApi.getimageslist(orgId, regId, '1')
|
||||||
|
console.log(imageslist)
|
||||||
|
reportimages.value = imageslist
|
||||||
|
}
|
||||||
|
// 行点击事件
|
||||||
|
const handleRowClick = (row) => {
|
||||||
|
//所见
|
||||||
|
infoParams.value.it_23 = row.examDescription
|
||||||
|
//所得
|
||||||
|
infoParams.value.it_24 = row.diagResults
|
||||||
|
//姓名
|
||||||
|
infoParams.value.it_7 = row.pname
|
||||||
|
//性别
|
||||||
|
infoParams.value.it_8 = row.gender
|
||||||
|
// 生日
|
||||||
|
infoParams.value.it_10 = row.birthday
|
||||||
|
//病例号
|
||||||
|
infoParams.value.it_2 = row.examId
|
||||||
|
//检查号
|
||||||
|
infoParams.value.it_1 = row.regId
|
||||||
|
//申请日期
|
||||||
|
infoParams.value.it_15 = row.applicationDate
|
||||||
|
//科室
|
||||||
|
infoParams.value.billDoctorDepartment= row.billDoctorDepartment
|
||||||
|
//设备
|
||||||
|
infoParams.value.deviceName= row.deviceName
|
||||||
|
//年龄
|
||||||
|
calculateAge(row.birthday)
|
||||||
|
//检查类型
|
||||||
|
infoParams.value.examItemName=row.examItemName
|
||||||
|
|
||||||
|
loadimage(row.orgId,row.regId)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
const infoParams0 = ref({
|
const infoParams0 = ref({
|
||||||
doctorName: undefined,
|
doctorName: undefined,
|
||||||
@ -523,11 +695,14 @@ const infoParams = ref({
|
|||||||
it_21: '',
|
it_21: '',
|
||||||
it_22: '',
|
it_22: '',
|
||||||
it_23: '',
|
it_23: '',
|
||||||
it_24: ''
|
it_24: '',
|
||||||
|
billDoctorDepartment:'',
|
||||||
|
deviceName:'',
|
||||||
|
examItemName:'',
|
||||||
})
|
})
|
||||||
//表格核心
|
//表格核心
|
||||||
const list_infos = ref<any[]>([])
|
const list_infos = ref<any[]>([])
|
||||||
const total = ref(5)
|
|
||||||
const loading = ref(false)
|
const loading = ref(false)
|
||||||
|
|
||||||
/****** 自定义内容 ******/
|
/****** 自定义内容 ******/
|
||||||
@ -538,6 +713,7 @@ const loading = ref(false)
|
|||||||
/** 钩子方法 **/
|
/** 钩子方法 **/
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
//ceshi
|
//ceshi
|
||||||
|
getList()
|
||||||
})
|
})
|
||||||
|
|
||||||
/** 防空作用域 **/
|
/** 防空作用域 **/
|
||||||
@ -577,4 +753,43 @@ console.log(infoParams0)
|
|||||||
.radio-group {
|
.radio-group {
|
||||||
border: 1px solid #ececec;
|
border: 1px solid #ececec;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* 报告样式 */
|
||||||
|
.ultrasound-report {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
width: 90%;
|
||||||
|
margin: 20px auto;
|
||||||
|
padding: 20px;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
border-radius: 8px;
|
||||||
|
position: relative;
|
||||||
|
height: 800px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ultrasound-report h1,
|
||||||
|
.ultrasound-report h2 {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.patient-info p,
|
||||||
|
.ultrasound-findings p,
|
||||||
|
.ultrasound-recommendation p {
|
||||||
|
margin: 5px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 报告的P标签 */
|
||||||
|
.patient-info {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ultrasound-findings h3,
|
||||||
|
.ultrasound-recommendation h3 {
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
.image-gallery {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-around;
|
||||||
|
margin: 20px 0;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
<el-tabs v-model="activeName" type="card">
|
<el-tabs v-model="activeName" type="card">
|
||||||
<el-tab-pane label="影像" name="first">
|
<el-tab-pane label="影像" name="first">
|
||||||
<iframe
|
<iframe
|
||||||
|
v-if="dataLoaded"
|
||||||
frameborder="0"
|
frameborder="0"
|
||||||
scrolling="no"
|
scrolling="no"
|
||||||
:src="newSrc"
|
:src="newSrc"
|
||||||
@ -201,6 +202,7 @@
|
|||||||
>
|
>
|
||||||
<el-radio-button label="阴性" value="0" />
|
<el-radio-button label="阴性" value="0" />
|
||||||
<el-radio-button label="阳性" value="1" />
|
<el-radio-button label="阳性" value="1" />
|
||||||
|
<el-radio-button label="重大阳性" value="2" />
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
<el-divider />
|
<el-divider />
|
||||||
<div class="form-row-yx">
|
<div class="form-row-yx">
|
||||||
@ -268,7 +270,7 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ApplyformApi, ApplyformVO, UPFJApplyformVO } from '@/api/applyregistration/applyform'
|
import { ApplyformApi, ApplyformVO, UPFJApplyformVO } from '@/api/applyregistration/applyform'
|
||||||
import { ultrasoniccomApi, updateexamineimageVO } from '@/api/ultrasoniccom'
|
import { ultrasoniccomApi, updateexamineimageVO } from '@/api/ultrasoniccom'
|
||||||
|
import axios from 'axios'
|
||||||
import { PatientexamlistApi, PatientexamlistVO } from '@/api/tblist/patientexamlist'
|
import { PatientexamlistApi, PatientexamlistVO } from '@/api/tblist/patientexamlist'
|
||||||
import { getUserProfile, ProfileVO } from '@/api/system/user/profile'
|
import { getUserProfile, ProfileVO } from '@/api/system/user/profile'
|
||||||
|
|
||||||
@ -285,9 +287,7 @@ const formLoading = ref(false) // 表单的加载中:1)修改时的数据加
|
|||||||
const examineFormVO = ref<PatientexamlistVO>({} as PatientexamlistVO)
|
const examineFormVO = ref<PatientexamlistVO>({} as PatientexamlistVO)
|
||||||
const savedisabled = ref(true) //保存按钮是否可用
|
const savedisabled = ref(true) //保存按钮是否可用
|
||||||
const examinedisabled = ref(false) //审核按钮是否可见
|
const examinedisabled = ref(false) //审核按钮是否可见
|
||||||
const isImageLoaded = ref(false) //是否展示图片清除按钮
|
const dataLoaded = ref(false) //是否加载网页
|
||||||
const isImageLoaded2 = ref(false) //是否展示图片清除按钮
|
|
||||||
const isImageLoaded3 = ref(false) //是否展示图片清除按钮
|
|
||||||
|
|
||||||
//点击节点更新使用时间
|
//点击节点更新使用时间
|
||||||
const clickuptime = async (pid: string) => {
|
const clickuptime = async (pid: string) => {
|
||||||
@ -348,10 +348,6 @@ const save = async () => {
|
|||||||
console.log('data:', response.data)
|
console.log('data:', response.data)
|
||||||
//查询患者信息 根据ID
|
//查询患者信息 根据ID
|
||||||
getPatientexamlist(ID)
|
getPatientexamlist(ID)
|
||||||
//处理选择的图片
|
|
||||||
isImageLoaded.value = false
|
|
||||||
isImageLoaded2.value = false
|
|
||||||
isImageLoaded3.value = false
|
|
||||||
emit('success')
|
emit('success')
|
||||||
} else {
|
} else {
|
||||||
// 接口调用失败,根据具体情况处理错误
|
// 接口调用失败,根据具体情况处理错误
|
||||||
@ -487,12 +483,12 @@ const orgId = ref('')
|
|||||||
//regid
|
//regid
|
||||||
const regId = ref('')
|
const regId = ref('')
|
||||||
//内嵌网页加载增加时间戳 防止缓存
|
//内嵌网页加载增加时间戳 防止缓存
|
||||||
const newSrc=ref('');
|
const newSrc = ref('')
|
||||||
|
|
||||||
/** 打开弹窗 */
|
/** 打开弹窗 */
|
||||||
const open = async (id: number, orgid: string, regid: string) => {
|
const open = async (id: number, orgid: string, regid: string) => {
|
||||||
resetForm()
|
resetForm()
|
||||||
const Src = `/public/dicom/dicomViewPc1.html?t=${new Date().getTime()}`;
|
const Src = `/public/dicom/dicomViewPc1.html?t=${new Date().getTime()}`
|
||||||
newSrc.value = Src
|
newSrc.value = Src
|
||||||
|
|
||||||
console.log('orgid' + orgid)
|
console.log('orgid' + orgid)
|
||||||
@ -520,20 +516,40 @@ const open = async (id: number, orgid: string, regid: string) => {
|
|||||||
privateData.value = pridate
|
privateData.value = pridate
|
||||||
//查询患者信息 根据ID
|
//查询患者信息 根据ID
|
||||||
getPatientexamlist(id)
|
getPatientexamlist(id)
|
||||||
//给打开的内嵌html 传递参数
|
|
||||||
var localData = {
|
|
||||||
regid: regid, // 这里的 'someNumber' 应该替换为实际的数值
|
|
||||||
orgId: orgid // 这里的 'someOrgId' 应该替换为实际的组织ID
|
|
||||||
}
|
|
||||||
// 将对象转换为JSON字符串
|
|
||||||
var localStorageData = JSON.stringify(localData);
|
|
||||||
localStorage.setItem('data', localStorageData)
|
|
||||||
//获取登录人信息
|
//获取登录人信息
|
||||||
getlogininfo()
|
getlogininfo()
|
||||||
|
iframeData()
|
||||||
} finally {
|
} finally {
|
||||||
formLoading.value = false
|
formLoading.value = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// 加载网页请求的数据
|
||||||
|
const iframeData = async () => {
|
||||||
|
try {
|
||||||
|
|
||||||
|
const response = await ultrasoniccomApi.getdcmlist()
|
||||||
|
if (response) {
|
||||||
|
//给打开的内嵌html 传递参数
|
||||||
|
var localData = {
|
||||||
|
regid: '', // 这里的 'someNumber' 应该替换为实际的数值
|
||||||
|
orgId: '' ,// 这里的 'someOrgId' 应该替换为实际的组织ID
|
||||||
|
do:response
|
||||||
|
}
|
||||||
|
// 将对象转换为JSON字符串
|
||||||
|
var localStorageData = JSON.stringify(localData)
|
||||||
|
localStorage.setItem('data', localStorageData)
|
||||||
|
} else {
|
||||||
|
// 如果status不是success,可以根据需要处理错误情况
|
||||||
|
console.error('Request did not succeed:', response.data)
|
||||||
|
}
|
||||||
|
dataLoaded.value = true // 请求完成后,无论成功与否,都设置dataLoaded为true
|
||||||
|
} catch (error) {
|
||||||
|
console.error('Error fetching data:', error)
|
||||||
|
dataLoaded.value = true // 即使发生错误,也设置dataLoaded为true,以便可以显示错误信息
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//查询患者信息 根据ID
|
//查询患者信息 根据ID
|
||||||
const getPatientexamlist = async (id: number) => {
|
const getPatientexamlist = async (id: number) => {
|
||||||
const data = await PatientexamlistApi.getPatientexamlist(id)
|
const data = await PatientexamlistApi.getPatientexamlist(id)
|
||||||
|
@ -280,6 +280,7 @@
|
|||||||
>
|
>
|
||||||
<el-radio-button label="阴性" value="0" />
|
<el-radio-button label="阴性" value="0" />
|
||||||
<el-radio-button label="阳性" value="1" />
|
<el-radio-button label="阳性" value="1" />
|
||||||
|
<el-radio-button label="重大阳性" value="2" />
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
<div class="form-row">
|
<div class="form-row">
|
||||||
<el-form-item label="诊断医生" class="form-item">
|
<el-form-item label="诊断医生" class="form-item">
|
||||||
|
Loading…
Reference in New Issue
Block a user