修改超声报告样式已经超声工作台医生选择

This commit is contained in:
lxd 2025-03-27 13:00:31 +08:00
parent 11639b6a18
commit 200ad60791
6 changed files with 125 additions and 70 deletions

View File

@ -57,5 +57,8 @@ export const Api = {
upload: async (data:baseFile) => {
return await request.post({ url: `/doctor/upload`, data})
},
// 查询医生详情
getAlllist: async (orgId:string) => {
return await request.get({ url: `/doctor/getdoctorlist?orgId=${orgId}` })
},
}

View File

@ -88,8 +88,8 @@ export const PatientexamlistApi = {
},
// 超声审核
examine: async (id: String) => {
return await request.get({ url: `/tblist/patientexamlist/examine?id=` + id })
examine: async (id: String,doctorid:string,doctorname:string) => {
return await request.get({ url: `/tblist/patientexamlist/examine?id=` + id + `&doctorid=${doctorid}&doctorname=${doctorname}` })
},
// dicom数据同步

View File

@ -49,11 +49,11 @@
</div>
<div class="ultrasound-findings">
<h3>超声所见</h3>
<p>{{ infoParams.examDescription }}</p>
<p style="font-size: 22px">{{ infoParams.examDescription }}</p>
</div>
<div class="ultrasound-recommendation">
<h3>超声提示</h3>
<p>{{ infoParams.diagResults }}</p>
<p style="font-size: 22px">{{ infoParams.diagResults }}</p>
</div>
<div style="width: 94%; position: absolute; bottom: 20px; right: 20px">
<div style="text-align: center" v-if="infoParams.showQRcode">
@ -67,17 +67,17 @@
</div>
<p v-if="false" style="text-align: right">医生签名{{ infoParams.reviewDoctor }}</p>
<hr />
<el-row style="font-size: 14px">
<el-col :span="6" class="pl-6px">报告医师{{ infoParams.diagDoctor }}</el-col>
<el-col :span="6">
<el-row class="doctor-info-row">
<el-col :span="5" class="pl-6px">报告医师{{ infoParams.diagDoctor }}</el-col>
<el-col :span="7">
报告日期{{ formatDate(infoParams.diagDate as unknown as Date, 'YYYY-MM-DD') }}
</el-col>
<el-col :span="6">审核医师{{ infoParams.reviewDoctor }}</el-col>
<el-col :span="6">
<el-col :span="5">审核医师{{ infoParams.reviewDoctor }}</el-col>
<el-col :span="7">
审核日期{{ formatDate(infoParams.reviewDate as unknown as Date, 'YYYY-MM-DD') }}
</el-col>
</el-row>
<div style="font-size: 11px; text-align: center; margin-top: 16px; margin-bottom: -14px">
<div style="font-size: 17px; text-align: center; margin-top: 16px; margin-bottom: -14px">
本报告只作临床参考不作证明材料
</div>
</div>
@ -203,7 +203,7 @@ onMounted(async () => {
.ultrasound-findings p,
.ultrasound-recommendation p {
font-size: 16px;
font-size: 22px;
margin: 5px 2px 5px 30px;
}
@ -217,4 +217,12 @@ onMounted(async () => {
justify-content: space-around;
margin: 10px 0;
}
/* 使用更具体的选择器并添加 !important 来确保样式优先级 */
.doctor-info-row {
font-size: 19px !important;
}
.doctor-info {
font-size: 19px !important;
}
</style>

View File

@ -480,27 +480,27 @@ const exportPdfCTToBase64 = async () => {
calculateAge(applyFormVO.value.birthday) //
let orgInfoTemp = await ReportPrintStatisticsApi.getOrg(infoParams.value.orgId.trim())
await PatientexamlistApi.generatePdf_ct({
model: '0',
folderPath: (await ConfigApi.getConfigKey('url.ftpimage')) + '\\' + ID.toString(),
id: ID.toString(),
regid: infoParams.value.regId,
examid: infoParams.value.examId,
name: infoParams.value.pname,
gender: infoParams.value.gender,
age: age.value + '岁',
deviceName: infoParams.value.deviceName,
Department: infoParams.value.billDoctorDepartment,
examItemName: infoParams.value.examItemName,
examDescription: infoParams.value.examDescription,
diagResults: infoParams.value.diagResults,
hsname: orgInfoTemp.orgName,
diagDoctor: infoParams.value.diagDoctor,
diagDate: infoParams.value.diagDate,
reviewDoctor: infoParams.value.reviewDoctor,
reviewDate: infoParams.value.reviewDate
})
if (false) {
// await PatientexamlistApi.generatePdf_ct({
// model: '0',
// folderPath: (await ConfigApi.getConfigKey('url.ftpimage')) + '\\' + ID.toString(),
// id: ID.toString(),
// regid: infoParams.value.regId,
// examid: infoParams.value.examId,
// name: infoParams.value.pname,
// gender: infoParams.value.gender,
// age: age.value + '',
// deviceName: infoParams.value.deviceName,
// Department: infoParams.value.billDoctorDepartment,
// examItemName: infoParams.value.examItemName,
// examDescription: infoParams.value.examDescription,
// diagResults: infoParams.value.diagResults,
// hsname: orgInfoTemp.orgName,
// diagDoctor: infoParams.value.diagDoctor,
// diagDate: infoParams.value.diagDate,
// reviewDoctor: infoParams.value.reviewDoctor,
// reviewDate: infoParams.value.reviewDate
// })
showPdfContent.value = true
nextTick(() => {
setTimeout(async () => {
@ -518,7 +518,7 @@ const exportPdfCTToBase64 = async () => {
}
}, 1000)
})
}
}
const infoParams = ref({

View File

@ -137,7 +137,7 @@ const formRules = reactive({
// { pattern: /^[0-9]*$/, message: '', trigger: 'blur' }
],
orgId: [{ required: true, message: '请输入机构编号', trigger: 'blur' }],
doctorLevel: [{ required: true, message: '请输入医生级别', trigger: 'blur' }],
// doctorLevel: [{ required: true, message: '', trigger: 'blur' }],
departmentName: [{ required: true, message: '请选择所属科室', trigger: 'blur' }]
})
const formRef = ref() // Ref

View File

@ -284,14 +284,37 @@
</el-radio-group>
<div class="form-row">
<el-form-item label="诊断医生" class="form-item">
<el-input v-model="applyFormVO.diagDoctor" style="width: 180px" :disabled="true" />
<!-- <el-input v-model="applyFormVO.diagDoctor" style="width: 180px" :disabled="true" /> -->
<el-select
v-model="applyFormVO.diagDoctor"
style="width: 180px"
placeholder="请选择诊断医生"
clearable
:disabled="savedisabled"
>
<el-option
v-for="doctor in doctorList"
:key="doctor.doctorID"
:label="doctor.doctorName"
:value="doctor.doctorName+'|'+doctor.doctorID"
/>
</el-select>
</el-form-item>
<el-form-item label="审核医生" class="form-item">
<el-input
v-model="applyFormVO.reviewDoctor"
<el-select
v-model="applyFormVO.reviewDoctor"
style="width: 180px"
:disabled="true"
/>
placeholder="请选择审核医生"
clearable
:disabled="applyFormVO.reportstatus === '已审核'"
>
<el-option
v-for="doctor in doctorList"
:key="doctor.doctorID"
:label="doctor.doctorName"
:value="doctor.doctorName+'|'+doctor.doctorID"
/>
</el-select>
</el-form-item>
<el-form-item label="报告状态" class="form-item">
@ -523,6 +546,7 @@ import { ReportPrintStatisticsApi } from '@/api/applyregistration/reportPrintSta
import { formatDate } from '@/utils/formatTime'
import PdfContent from '@/views/applyregistration/reportPrintStatistics/ReportInfoUS.vue' // PDF
import * as ConfigApi from '@/api/infra/config' //
import { Api, VO } from '@/api/system/doctor'
/** 超声组件 */
defineOptions({ name: 'Ultrasonic' })
@ -541,7 +565,7 @@ const examinedisabled = ref(false) //审核按钮是否可见
const isImageLoaded = ref(false) //
const isImageLoaded2 = ref(false) //
const isImageLoaded3 = ref(false) //
const doctorList = ref<VO[]>([]) //
//
const handleLoad = (id: string) => {
if (applyFormVO.value.reportstatus && applyFormVO.value.reportstatus == '已审核') {
@ -653,30 +677,30 @@ const exportPdfUSToBase64 = async () => {
image3 = window.location.origin + image3
}
}
await PatientexamlistApi.generatePdf_us({
model: '0',
folderPath: (await ConfigApi.getConfigKey('url.ftpimage')) + '\\' + ID.toString(),
id: ID.toString(),
regid: infoParams.value.regId,
examid: infoParams.value.examId,
name: infoParams.value.pname,
gender: infoParams.value.gender,
age: age.value + '岁',
deviceName: infoParams.value.deviceName,
Department: infoParams.value.billDoctorDepartment,
examItemName: infoParams.value.examItemName,
examDescription: infoParams.value.examDescription,
diagResults: infoParams.value.diagResults,
hsname: orgInfoTemp.orgName,
diagDoctor: infoParams.value.diagDoctor,
diagDate: infoParams.value.diagDate,
reviewDoctor: infoParams.value.reviewDoctor,
reviewDate: infoParams.value.reviewDate,
image1: image1,
image2: image2,
image3: image3
})
if (false) {
// await PatientexamlistApi.generatePdf_us({
// model: '0',
// folderPath: (await ConfigApi.getConfigKey('url.ftpimage')) + '\\' + ID.toString(),
// id: ID.toString(),
// regid: infoParams.value.regId,
// examid: infoParams.value.examId,
// name: infoParams.value.pname,
// gender: infoParams.value.gender,
// age: age.value + '',
// deviceName: infoParams.value.deviceName,
// Department: infoParams.value.billDoctorDepartment,
// examItemName: infoParams.value.examItemName,
// examDescription: infoParams.value.examDescription,
// diagResults: infoParams.value.diagResults,
// hsname: orgInfoTemp.orgName,
// diagDoctor: infoParams.value.diagDoctor,
// diagDate: infoParams.value.diagDate,
// reviewDoctor: infoParams.value.reviewDoctor,
// reviewDate: infoParams.value.reviewDate,
// image1: image1,
// image2: image2,
// image3: image3
// })
showPdfContent.value = true
nextTick(() => {
setTimeout(async () => {
@ -694,7 +718,7 @@ const exportPdfUSToBase64 = async () => {
}
}, 1000)
})
}
}
const infoParams = ref({
@ -733,7 +757,10 @@ const save = async () => {
message.warning('请选择影像图')
return
}
if(applyFormVO.value.diagDoctor==null||applyFormVO.value.diagDoctor=='undefined' || applyFormVO.value.diagDoctor==''){
message.warning('请选择诊断医生')
return
}
//
await message.delConfirm('是否进行保存', '确认')
let timesta = new Date()
@ -745,8 +772,10 @@ const save = async () => {
examineFormVO.value.diagResults = zdjl.value
examineFormVO.value.notes = notes.value
examineFormVO.value.diagFlag = radio1.value
examineFormVO.value.diagDoctor = Profilevo.value.doctorname
examineFormVO.value.diagDoctorId = Profilevo.value.doctorID
let diagDoctor = applyFormVO.value.diagDoctor.split('|')[0]
let diagDoctorId = applyFormVO.value.diagDoctor.split('|')[1]
examineFormVO.value.diagDoctor = diagDoctor
examineFormVO.value.diagDoctorId = diagDoctorId
// examineFormVO.value.reviewDoctor = Profilevo.value.username
examineFormVO.value.reportstatus = '已分析'
// examineFormVO.value.diagDate=localDateTime
@ -776,7 +805,14 @@ const save = async () => {
//
const examine = async () => {
if (applyFormVO.value.reportstatus === '已分析') {
const response = await PatientexamlistApi.examine(ID.toString())
if(applyFormVO.value.reviewDoctor==null||applyFormVO.value.reviewDoctor=='undefined' || applyFormVO.value.reviewDoctor==''){
message.warning('请选择审核医生')
return
}
let reviewDoctor = applyFormVO.value.reviewDoctor.split('|')[0]
let reviewDoctorId = applyFormVO.value.reviewDoctor.split('|')[1]
const response = await PatientexamlistApi.examine(ID.toString(),reviewDoctorId,reviewDoctor)
if (response) {
message.alertSuccess('审核成功')
// ID
@ -1142,11 +1178,19 @@ const open = async (id: number, orgid: string, regid: string) => {
//
getlogininfo()
//
getdoctorlist(orgid)
if (savedisabled.value == false) getimages('')
} finally {
formLoading.value = false
}
}
//
const getdoctorlist = async (orgid:string) => {
const data = await Api.getAlllist(orgid)
doctorList.value = data
}
//
const videoformRef = ref()
const openvideo = () => {