修改用户信息界面 增加机构字典和科室字典

This commit is contained in:
lxd 2024-07-30 14:59:39 +08:00
parent e0d05c12d6
commit f1d586c0cf
14 changed files with 795 additions and 314 deletions

View File

@ -0,0 +1,54 @@
import request from '@/config/axios'
// 科室管理 VO
export interface DepartmentVO {
id: string // 主键
departmentName: string // 科室名称
createPerson: string // 创建人
createDate: Date // 创建时间
departmentRemark: string // 科室备注
deletePerson: string // 删除操作人
deleteDate: Date // 删除时间
departmentAddress: string // 科室具体位置
orgId: string // 机构ID
departmentCode: string // 科室代号:科室短号
isDelete: string // 删除标记1为删除
}
// 科室管理 API
export const DepartmentApi = {
// 查询科室管理分页
getDepartmentPage: async (params: any) => {
return await request.get({ url: `/system/department/page`, params })
},
// 查询科室管理详情
getDepartment: async (id: number) => {
return await request.get({ url: `/system/department/get?id=` + id })
},
// 查询科室相关数据字典
getDepartmentList: async () => {
return await request.get({ url: `/system/department/getlist` })
},
// 新增科室管理
createDepartment: async (data: DepartmentVO) => {
return await request.post({ url: `/system/department/create`, data })
},
// 修改科室管理
updateDepartment: async (data: DepartmentVO) => {
return await request.put({ url: `/system/department/update`, data })
},
// 删除科室管理
deleteDepartment: async (id: number) => {
return await request.delete({ url: `/system/department/delete?id=` + id })
},
// 导出科室管理 Excel
exportDepartment: async (params) => {
return await request.download({ url: `/system/department/export-excel`, params })
},
}

View File

@ -27,7 +27,11 @@ export const OrgApi = {
getOrg: async (id: number) => {
return await request.get({ url: `/org/org/get?id=` + id })
},
// 查询机构管理字典
getOrglist: async () => {
return await request.get({ url: `/org/org/getlist` })
},
// 新增机构管理
createOrg: async (data: OrgVO) => {
return await request.post({ url: `/org/org/create`, data })

View File

@ -15,6 +15,7 @@ export interface UserVO {
remark: string
loginDate: Date
createTime: Date
orgId:string
}
// 查询用户管理列表

View File

@ -91,6 +91,7 @@ export default defineComponent({
textColor="var(--left-menu-text-color)"
activeTextColor="var(--left-menu-text-active-color)"
onSelect={menuSelect}
>
{{
default: () => {

View File

@ -8,16 +8,16 @@
:inline="true"
label-width="68px"
>
<el-form-item label="登记来源" prop="regSource">
<el-form-item label="登记来源" prop="regSource">
<el-select
v-model="queryParams.regSource"
placeholder="请选择来源"
clearable
class="!w-200px"
>
<el-option label="门诊" value="门诊" />
<el-option label="住院" value="住院" />
<el-option label="体检" value="体检" />
<el-option label="门诊" value="门诊" />
<el-option label="住院" value="住院" />
<el-option label="体检" value="体检" />
</el-select>
</el-form-item>
@ -63,7 +63,7 @@
class="!w-150px"
/>
</el-form-item>
<el-form-item label="检查单号" prop="examId">
<el-input
v-model="queryParams.examId"
@ -73,10 +73,8 @@
class="!w-150px"
/>
</el-form-item>
<!-- <el-form-item label="检查日期" prop="examDate">
<!-- <el-form-item label="检查日期" prop="examDate">
<el-date-picker
v-model="queryParams.examDate"
value-format="YYYY-MM-DD HH:mm:ss"
@ -87,7 +85,7 @@
class="!w-240px"
/>
</el-form-item> -->
<!-- <el-form-item label="检查项目名称" prop="examItemName">
<!-- <el-form-item label="检查项目名称" prop="examItemName">
<el-input
v-model="queryParams.examItemName"
placeholder="请输入检查项目名称"
@ -103,33 +101,29 @@
clearable
class="!w-200px"
>
<el-option label="未分检" value="未分检" />
<el-option label="未检查" value="未检查" />
<el-option label="已检查" value="已检查" />
<el-option label="已放弃" value="已放弃" />
<el-option label="未分检" value="未分检" />
<el-option label="未检查" value="未检查" />
<el-option label="已检查" value="已检查" />
<el-option label="已放弃" value="已放弃" />
</el-select>
</el-form-item>
<el-form-item label="执行科室" prop="deviceDepartment">
<el-select
v-model="queryParams.deviceDepartment"
v-model="queryParams.deviceDepartment"
placeholder="请选择执行科室"
clearable
class="!w-200px"
>
<el-option label="影像科" value="影像科" />
<el-option v-for="item in fordepartementData" :key="item.id" :label="item.departmentName" :value="item.departmentName" />
<!-- <el-option label="影像科" value="影像科" /> -->
</el-select>
</el-form-item>
<el-form-item>
<el-button @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button>
<el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button>
<!-- <el-button
<!-- <el-button
type="primary"
plain
@click="openForm('create')"
@ -155,20 +149,29 @@
>
<Icon icon="ep:plus" class="mr-5px" /> 批量分检
</el-button>
<el-button @click="resetQuery" type="primary"
><Icon icon="ep:refresh" class="mr-5px" /> 同步</el-button
>
</el-form-item>
</el-form>
</ContentWrap>
<!-- 列表 -->
<ContentWrap>
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true" @selection-change="handleSelectionChange" >
<el-table
v-loading="loading"
:data="list"
:stripe="true"
:show-overflow-tooltip="true"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" />
<el-table-column label="主键" align="center" prop="id" v-if="false"/>
<el-table-column label="主键" align="center" prop="id" v-if="false" />
<el-table-column label="登记单号" align="center" prop="regId" width="100px" />
<el-table-column label="登记来源" align="center" prop="regSource" width="100px"/>
<el-table-column label="登记来源" align="center" prop="regSource" width="100px" />
<el-table-column label="检查单号" align="center" prop="examId" />
<el-table-column label="患者姓名" align="center" prop="pname" width="100px"/>
<el-table-column label="性别" align="center" prop="gender" width="100px"/>
<el-table-column label="患者姓名" align="center" prop="pname" width="100px" />
<el-table-column label="性别" align="center" prop="gender" width="100px" />
<el-table-column
label="出生日期"
align="center"
@ -184,10 +187,10 @@
:formatter="dateFormatter"
width="180px"
/>
<el-table-column label="检查项目名称" align="center" prop="examItemName" width="140px"/>
<el-table-column label="检查设备ID" align="center" prop="deviceId" v-if="false"/>
<el-table-column label="检查设备" align="center" prop="deviceName" width="130px"/>
<el-table-column label="联系电话" align="center" prop="contactTel" />
<el-table-column label="检查项目名称" align="center" prop="examItemName" width="140px" />
<el-table-column label="检查设备ID" align="center" prop="deviceId" v-if="false" />
<el-table-column label="检查设备" align="center" prop="deviceName" width="130px" />
<el-table-column label="联系电话" align="center" prop="contactTel" />
<el-table-column
label="登记时间"
align="center"
@ -202,9 +205,15 @@
:formatter="dateFormatter"
width="180px"
/>
<el-table-column label="开单医生" align="center" prop="billgDoctor" width="100px"/>
<el-table-column label="开单医生" align="center" prop="billgDoctor" width="100px" />
<el-table-column label="检查状态" align="center" prop="examStatus" width="100px" />
<el-table-column label="开单医生科室" align="center" prop="billDoctorDepartment" :label-class-name="'no-wrap'" v-if="false" />
<el-table-column
label="开单医生科室"
align="center"
prop="billDoctorDepartment"
:label-class-name="'no-wrap'"
v-if="false"
/>
<el-table-column
label="此条记录的创建时间"
align="center"
@ -213,15 +222,17 @@
width="180px"
v-if="false"
/>
<el-table-column label="检查项目代码" align="center" prop="examItemCode" v-if="false"/>
<el-table-column label="检查项目代码" align="center" prop="examItemCode" v-if="false" />
<el-table-column label="机构ID" align="center" prop="orgId" v-if="false" />
<el-table-column label="分检医生" align="center" prop="sortDoctor" width="100px"/>
<el-table-column label="分检医生" align="center" prop="sortDoctor" width="100px" />
<el-table-column label="操作" align="center">
<template #default="scope">
<el-button
link
type="primary"
@click="openForm('分检', scope.row.pname,scope.row.orgId,scope.row.id,scope.row.examStatus)"
@click="
openForm('分检', scope.row.pname, scope.row.orgId, scope.row.id, scope.row.examStatus)
"
v-hasPermi="['applyregistration:applyform:update']"
>
分检
@ -229,19 +240,13 @@
<el-button
link
type="danger"
@click="handleDelete(scope.row.id,scope.row.examStatus)"
@click="handleDelete(scope.row.id, scope.row.examStatus)"
v-hasPermi="['applyregistration:applyform:delete']"
>
作废
</el-button>
<el-button
link
type="danger"
@click="openPrintForm(scope.row.id)"
>
导引单
</el-button>
<el-button link type="danger" @click="openPrintForm(scope.row.id)"> 导引单 </el-button>
</template>
</el-table-column>
</el-table>
@ -263,22 +268,23 @@
<script setup lang="ts">
import { dateFormatter } from '@/utils/formatTime'
import download from '@/utils/download'
import { ApplyformApi, ApplyformVO,UPFJApplyformVO } from '@/api/applyregistration/applyform'
import { ApplyformApi, ApplyformVO, UPFJApplyformVO } from '@/api/applyregistration/applyform'
import ApplyformForm from './ApplyformForm.vue'
import { fa } from 'element-plus/es/locale';
import GuidePrint from './GuidePrint.vue';
import { getUserProfile, ProfileVO } from '@/api/system/user/profile'
import { fa } from 'element-plus/es/locale'
import GuidePrint from './GuidePrint.vue'
import { getUserProfile, ProfileVO } from '@/api/system/user/profile'
import { DepartmentApi, DepartmentVO } from '@/api/system/department'
/** 申请登记记录 列表 */
defineOptions({ name: 'Applyform' })
const message = useMessage() //
const { t } = useI18n() //
const loading = ref(true) //
const list = ref<ApplyformVO[]>([]) //
const total = ref(0) //
//
const fordepartementData = ref<any[]>([])
const queryParams = reactive({
pageNo: 1,
pageSize: 10,
@ -302,12 +308,12 @@ const queryParams = reactive({
examItemCode: undefined,
orgId: undefined,
sortDoctor: undefined,
deviceDepartment:undefined,
departmentCode:undefined,
deviceDepartment: undefined,
departmentCode: undefined
})
const queryFormRef = ref() //
const exportLoading = ref(false) //
const Profilevo = ref<ProfileVO>({} as ProfileVO); //
const Profilevo = ref<ProfileVO>({} as ProfileVO) //
/** 查询列表 */
const getList = async () => {
loading.value = true
@ -315,10 +321,11 @@ const getList = async () => {
const data = await ApplyformApi.getApplyformPage(queryParams)
list.value = data.list
total.value = data.total
//
fordepartementData.value=await DepartmentApi.getDepartmentList()
} finally {
loading.value = false
}
}
/** 搜索按钮操作 */
@ -335,90 +342,81 @@ const resetQuery = () => {
/** 添加/修改操作 */
const formRef = ref()
const openForm = (type: string,pname:string ,orgid: string,ID:number,status:string) => {
if(status=="未分检")
{
formRef.value.open(type, orgid,pname,ID,Profilevo.value.username,[])
const openForm = (type: string, pname: string, orgid: string, ID: number, status: string) => {
if (status == '未分检') {
formRef.value.open(type, orgid, pname, ID, Profilevo.value.username, [])
} else {
message.warning('只有未分检才可以进行分检操作')
}
else
{
message.warning("只有未分检才可以进行分检操作")
}
}
/** 打印导引单 */
const Print = ref();
const openPrintForm = (ID:number) => {
const Print = ref()
const openPrintForm = (ID: number) => {
Print.value.open(ID)
}
//
const selectedRows = ref<any[]>([]); //
const previouslySelectedRows = ref<any[]>([]); //
const selectedRows = ref<any[]>([]) //
const previouslySelectedRows = ref<any[]>([]) //
const handleSelectionChange = (selection) => {
//
selectedRows.value = selection;
//
selectedRows.value = selection
//
const unselectedRows = previouslySelectedRows.value.filter(prevRow => !selection.some(newRow => newRow.id === prevRow.id));
//
const unselectedRows = previouslySelectedRows.value.filter(
(prevRow) => !selection.some((newRow) => newRow.id === prevRow.id)
)
//
unselectedRows.forEach(row => {
console.log(`Row ${row.id} was unselected.`);
//
});
//
unselectedRows.forEach((row) => {
console.log(`Row ${row.id} was unselected.`)
//
})
//
previouslySelectedRows.value = selection;
console.log(previouslySelectedRows.value)
//
previouslySelectedRows.value = selection
console.log(previouslySelectedRows.value)
}
/** 批量分检按钮操作 */
const batchhandle = async (username:string) => {
const batchhandle = async (username: string) => {
try {
let orgid:string=""
let orgid: string = ''
previouslySelectedRows.value.forEach(row => {
if(row.examStatus!="未分检")
{
message.warning("存在已经分检数据,重新选择")
previouslySelectedRows.value.forEach((row) => {
if (row.examStatus != '未分检') {
message.warning('存在已经分检数据,重新选择')
throw new Error('End Loop')
}
orgid=row.orgId
});
console.log(`orgid ${orgid} was unselected.`);
console.log(`username ${username} was unselected.`);
formRef.value.open("批量", orgid,'',0,username,previouslySelectedRows.value)
} catch {}
}
/** 作废按钮操作 */
const handleDelete = async (id: number,status:string) => {
try {
if(status=="已检查")
{
message.warning("已进行检查,不允许进行作废操作")
orgid = row.orgId
})
if (previouslySelectedRows.value.length <= 0) {
message.warning('请选择需要分检的患者')
return
}
if(status=="已放弃")
{
message.warning("已作废,无需再次作废")
console.log(`orgid ${orgid} was unselected.`)
console.log(`username ${username} was unselected.`)
formRef.value.open('批量', orgid, '', 0, username, previouslySelectedRows.value)
} catch {}
}
/** 作废按钮操作 */
const handleDelete = async (id: number, status: string) => {
try {
if (status == '已检查') {
message.warning('已进行检查,不允许进行作废操作')
return
}
if (status == '已放弃') {
message.warning('已作废,无需再次作废')
return
}
//
await message.delConfirm("是否作废选择内容")
await message.delConfirm('是否作废选择内容')
//
await ApplyformApi.cancelApplyform(id)
message.success("作废成功")
message.success('作废成功')
//
await getList()
} catch {}
@ -440,9 +438,7 @@ const handleExport = async () => {
}
//
const getlogininfo = async () => {
Profilevo.value= await getUserProfile()
Profilevo.value = await getUserProfile()
}
/** 初始化 **/
@ -450,4 +446,4 @@ onMounted(() => {
getlogininfo()
getList()
})
</script>
</script>

View File

@ -46,8 +46,15 @@
<el-form-item label="第三方软件的制造商" prop="softwareManufacturer" label-width="160px">
<el-input v-model="formData.softwareManufacturer" placeholder="请输入第三方软件的制造商" />
</el-form-item>
<el-form-item label="机构编码" prop="orgId" label-width="160px">
<el-input v-model="formData.orgId" placeholder="请输入机构编码" />
<el-form-item label="机构名称" prop="orgId" label-width="160px">
<el-select v-model="formData.orgId" placeholder="请选择机构" clearable>
<el-option
v-for="item in fororglistData"
:key="item.orgID"
:label="item.orgName"
:value="item.orgID"
/>
</el-select>
</el-form-item>
<el-form-item label="备注信息" prop="remark" label-width="160px">
<el-input v-model="formData.remark" placeholder="请输入备注信息" />
@ -61,6 +68,7 @@
</template>
<script setup lang="ts">
import { ApiconfigApi, ApiconfigVO } from '@/api/system/apiconfig'
import { OrgApi } from '@/api/system/org'
/** 接口配置 表单 */
defineOptions({ name: 'ApiconfigForm' })
@ -68,6 +76,8 @@ defineOptions({ name: 'ApiconfigForm' })
const { t } = useI18n() //
const message = useMessage() //
//
const fororglistData = ref<any[]>([])
const dialogVisible = ref(false) //
const dialogTitle = ref('') //
const formLoading = ref(false) // 12
@ -102,6 +112,8 @@ const open = async (type: string, id?: number) => {
dialogVisible.value = true
dialogTitle.value = t('action.' + type)
formType.value = type
//
fororglistData.value = await OrgApi.getOrglist()
resetForm()
//
if (id) {
@ -126,17 +138,14 @@ const submitForm = async () => {
try {
const data = formData.value as unknown as ApiconfigVO
if (formType.value === 'create') {
re.value = await ApiconfigApi.createApiconfig(data)
re.value = await ApiconfigApi.createApiconfig(data)
if (re.value==='Api代码重复') {
if (re.value === 'Api代码重复') {
message.error(re.value)
return
}
else
{
} else {
message.success(t('common.createSuccess'))
}
} else {
await ApiconfigApi.updateApiconfig(data)
message.success(t('common.updateSuccess'))

View File

@ -0,0 +1,143 @@
<template>
<Dialog :title="dialogTitle" v-model="dialogVisible">
<el-form
ref="formRef"
:model="formData"
:rules="formRules"
label-width="100px"
v-loading="formLoading"
>
<el-form-item label="科室名称" prop="departmentName">
<el-input v-model="formData.departmentName" placeholder="请输入科室名称" />
</el-form-item>
<el-form-item label="科室备注" prop="departmentRemark">
<el-input v-model="formData.departmentRemark" placeholder="请输入科室备注" />
</el-form-item>
<el-form-item label="科室具体位置" prop="departmentAddress">
<el-input v-model="formData.departmentAddress" placeholder="请输入科室具体位置" />
</el-form-item>
<el-form-item label="科室代号" prop="departmentCode">
<el-input v-model="formData.departmentCode" placeholder="请输入科室代号" />
</el-form-item>
<el-form-item label="机构名称" prop="orgId">
<el-select v-model="formData.orgId" placeholder="请选择机构" clearable>
<el-option
v-for="item in fororglistData"
:key="item.orgID"
:label="item.orgName"
:value="item.orgID"
/>
</el-select>
</el-form-item>
</el-form>
<template #footer>
<el-button @click="submitForm" type="primary" :disabled="formLoading"> </el-button>
<el-button @click="dialogVisible = false"> </el-button>
</template>
</Dialog>
</template>
<script setup lang="ts">
import { DepartmentApi, DepartmentVO } from '@/api/system/department'
import { OrgApi } from '@/api/system/org'
/** 科室管理 表单 */
defineOptions({ name: 'DepartmentForm' })
const { t } = useI18n() //
const message = useMessage() //
//
const fororglistData = ref<any[]>([])
const dialogVisible = ref(false) //
const dialogTitle = ref('') //
const formLoading = ref(false) // 12
const formType = ref('') // create - update -
const formData = ref({
id: undefined,
departmentName: undefined,
createPerson: undefined,
createDate: undefined,
departmentRemark: undefined,
deletePerson: undefined,
deleteDate: undefined,
departmentAddress: undefined,
orgId: undefined,
departmentCode: undefined,
isDelete: undefined
})
const formRules = reactive({
departmentName: [{ required: true, message: '请输入科室名称', trigger: 'blur' }],
orgId: [{ required: true, message: '请选择机构', trigger: 'blur' }],
departmentCode: [{ required: true, message: '请输入科室代号', trigger: 'blur' }]
})
const formRef = ref() // Ref
//
const name = ref()
/** 打开弹窗 */
const open = async (type: string, username: string, id?: number) => {
dialogVisible.value = true
dialogTitle.value = t('action.' + type)
formType.value = type
name.value = username
//
fororglistData.value = await OrgApi.getOrglist()
resetForm()
//
if (id) {
formLoading.value = true
try {
formData.value = await DepartmentApi.getDepartment(id)
} finally {
formLoading.value = false
}
}
}
defineExpose({ open }) // open
/** 提交表单 */
const emit = defineEmits(['success']) // success
const submitForm = async () => {
//
await formRef.value.validate()
//
formLoading.value = true
try {
formData.value.createPerson = name.value
const data = formData.value as unknown as DepartmentVO
if (formType.value === 'create') {
await DepartmentApi.createDepartment(data)
message.success(t('common.createSuccess'))
} else {
await DepartmentApi.updateDepartment(data)
message.success(t('common.updateSuccess'))
}
dialogVisible.value = false
//
emit('success')
} finally {
formLoading.value = false
}
}
/** 重置表单 */
const resetForm = () => {
formData.value = {
id: undefined,
departmentName: undefined,
createPerson: undefined,
createDate: undefined,
departmentRemark: undefined,
deletePerson: undefined,
deleteDate: undefined,
departmentAddress: undefined,
orgId: undefined,
departmentCode: undefined,
isDelete: undefined
}
formRef.value?.resetFields()
}
</script>

View File

@ -0,0 +1,197 @@
<template>
<ContentWrap>
<!-- 搜索工作栏 -->
<el-form
class="-mb-15px"
:model="queryParams"
ref="queryFormRef"
:inline="true"
label-width="68px"
>
<el-form-item label="科室名称" prop="departmentName">
<el-input
v-model="queryParams.departmentName"
placeholder="请输入科室名称"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item>
<el-button @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button>
<el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button>
<el-button
type="primary"
plain
@click="openForm('create',Profilevo.username)"
v-hasPermi="['system:department:create']"
>
<Icon icon="ep:plus" class="mr-5px" /> 新增
</el-button>
<el-button
type="success"
plain
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['system:department:export']"
>
<Icon icon="ep:download" class="mr-5px" /> 导出
</el-button>
</el-form-item>
</el-form>
</ContentWrap>
<!-- 列表 -->
<ContentWrap>
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true">
<el-table-column label="主键" align="center" prop="id" v-if="false"/>
<el-table-column label="科室名称" align="center" prop="departmentName" />
<el-table-column label="创建人" align="center" prop="createPerson" />
<el-table-column
label="创建时间"
align="center"
prop="createDate"
:formatter="dateFormatter"
width="180px"
/>
<el-table-column label="科室备注" align="center" prop="departmentRemark" />
<el-table-column label="删除操作人" align="center" prop="deletePerson" v-if="false"/>
<el-table-column
label="删除时间"
align="center"
prop="deleteDate"
:formatter="dateFormatter"
width="180px"
v-if="false"
/>
<el-table-column label="科室具体位置" align="center" prop="departmentAddress" />
<el-table-column label="机构编码" align="center" prop="orgId" />
<el-table-column label="科室代号" align="center" prop="departmentCode" />
<el-table-column label="删除标记1为删除" align="center" prop="isDelete" v-if="false"/>
<el-table-column label="操作" align="center">
<template #default="scope">
<el-button
link
type="primary"
@click="openForm('update',Profilevo.username, scope.row.id)"
v-hasPermi="['system:department:update']"
>
编辑
</el-button>
<el-button
link
type="danger"
@click="handleDelete(scope.row.id)"
v-hasPermi="['system:department:delete']"
>
删除
</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页 -->
<Pagination
:total="total"
v-model:page="queryParams.pageNo"
v-model:limit="queryParams.pageSize"
@pagination="getList"
/>
</ContentWrap>
<!-- 表单弹窗添加/修改 -->
<DepartmentForm ref="formRef" @success="getList" />
</template>
<script setup lang="ts">
import { dateFormatter } from '@/utils/formatTime'
import download from '@/utils/download'
import { DepartmentApi, DepartmentVO } from '@/api/system/department'
import DepartmentForm from './DepartmentForm.vue'
import { getUserProfile, ProfileVO } from '@/api/system/user/profile'
/** 科室管理 列表 */
defineOptions({ name: 'Department' })
const message = useMessage() //
const { t } = useI18n() //
//
const Profilevo = ref<ProfileVO>({} as ProfileVO)
const loading = ref(true) //
const list = ref<DepartmentVO[]>([]) //
const total = ref(0) //
const queryParams = reactive({
pageNo: 1,
pageSize: 10,
departmentName: undefined,
orgId: undefined,
})
const queryFormRef = ref() //
const exportLoading = ref(false) //
/** 查询列表 */
const getList = async () => {
loading.value = true
try {
const data = await DepartmentApi.getDepartmentPage(queryParams)
list.value = data.list
total.value = data.total
} finally {
loading.value = false
}
}
/** 搜索按钮操作 */
const handleQuery = () => {
queryParams.pageNo = 1
getList()
}
/** 重置按钮操作 */
const resetQuery = () => {
queryFormRef.value.resetFields()
handleQuery()
}
/** 添加/修改操作 */
const formRef = ref()
const openForm = (type: string, username:string, id?: number) => {
formRef.value.open(type,username, id)
}
/** 删除按钮操作 */
const handleDelete = async (id: number) => {
try {
//
await message.delConfirm()
//
await DepartmentApi.deleteDepartment(id)
message.success(t('common.delSuccess'))
//
await getList()
} catch {}
}
/** 导出按钮操作 */
const handleExport = async () => {
try {
//
await message.exportConfirm()
//
exportLoading.value = true
const data = await DepartmentApi.exportDepartment(queryParams)
download.excel(data, '科室管理.xls')
} catch {
} finally {
exportLoading.value = false
}
}
//
const getlogininfo = async () => {
Profilevo.value = await getUserProfile()
}
/** 初始化 **/
onMounted(() => {
getlogininfo()
getList()
})
</script>

View File

@ -69,8 +69,14 @@
<el-option label="主任医师" value="主任医师" />
</el-select>
</el-form-item>
<el-form-item label="机构编号" prop="orgId">
<el-input v-model="formData.orgId" placeholder="请输入机构ID" />
<el-form-item label="机构名称" prop="orgId">
<el-select
v-model="formData.orgId"
placeholder="请选择机构"
clearable
>
<el-option v-for="item in fororglistData" :key="item.orgID" :label="item.orgName" :value="item.orgID" />
</el-select>
</el-form-item>
</el-form>
<template #footer>
@ -83,6 +89,8 @@
import { Api, VO, baseFile } from '@/api/system/doctor'
import { error } from 'console'
import type { UploadProps, UploadUserFile } from 'element-plus'
import { OrgApi } from '@/api/system/org'
//base64
const imageBase64 = ref()
//
@ -90,7 +98,8 @@ const imagefilename = ref()
/** 医生管理 表单 */
defineOptions({ name: 'Form' })
//
const fororglistData = ref<any[]>([])
const { t } = useI18n() //
const message = useMessage() //
const dialogVisible = ref(false) //
@ -127,6 +136,9 @@ const open = async (type: string, id?: number) => {
dialogTitle.value = t('action.' + type)
formType.value = type
resetForm()
//
fororglistData.value=await OrgApi.getOrglist()
//
if (id) {
formLoading.value = true

View File

@ -42,8 +42,15 @@
<el-form-item label="检查部位代码" prop="examPartCode" label-width="111px">
<el-input v-model="formData.examPartCode" placeholder="请选择检查部位代码" />
</el-form-item>
<el-form-item label="机构编号" prop="orgId" label-width="111px">
<el-input v-model="formData.orgId" placeholder="请输入机构编号" />
<el-form-item label="机构名称" prop="orgId" label-width="111px">
<el-select v-model="formData.orgId" placeholder="请选择机构" clearable>
<el-option
v-for="item in fororglistData"
:key="item.orgID"
:label="item.orgName"
:value="item.orgID"
/>
</el-select>
</el-form-item>
<el-form-item label="第三方系统的检查项目的CODE" prop="thirdPartyExamItemCode" v-if="false">
<el-input
@ -76,13 +83,15 @@
</template>
<script setup lang="ts">
import { examitemsApi, examitemsVO } from '@/api/system/examitems'
import { OrgApi } from '@/api/system/org'
/** 检查部位 表单 */
defineOptions({ name: 'ExamitemsForm' })
const { t } = useI18n() //
const message = useMessage() //
//
const fororglistData = ref<any[]>([])
const dialogVisible = ref(false) //
const dialogTitle = ref('') //
const formLoading = ref(false) // 12
@ -115,6 +124,8 @@ const open = async (type: string, id?: number) => {
dialogVisible.value = true
dialogTitle.value = t('action.' + type)
formType.value = type
//
fororglistData.value = await OrgApi.getOrglist()
resetForm()
//
if (id) {
@ -140,21 +151,20 @@ const submitForm = async () => {
const re = ref()
if (formType.value === 'create') {
re.value = await examitemsApi.createexamitems(data)
if (re.value ==='项目ID已经存在') {
message.error(re.value)
return
} else {
message.success(t('common.createSuccess'))
}
if (re.value === '项目ID已经存在') {
message.error(re.value)
return
} else {
message.success(t('common.createSuccess'))
}
} else {
await examitemsApi.updateexamitems(data)
message.success(t('common.updateSuccess'))
}
dialogVisible.value = false
//
emit('success')
//
emit('success')
} finally {
formLoading.value = false
}

View File

@ -116,7 +116,7 @@
type="primary"
plain
@click="openForm('create')"
v-hasPermi="['org:org:create']"
v-hasPermi="['org::create']"
>
<Icon icon="ep:plus" class="mr-5px" /> 新增
</el-button>
@ -126,7 +126,7 @@
plain
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['org:org:export']"
v-hasPermi="['org::export']"
>
<Icon icon="ep:download" class="mr-5px" /> 导出
</el-button>
@ -162,7 +162,7 @@
link
type="primary"
@click="openForm('update', scope.row.orgID)"
v-hasPermi="['org:org:update']"
v-hasPermi="['org::update']"
>
编辑
</el-button>
@ -170,7 +170,7 @@
link
type="primary"
@click="openOrgSuperiorForm(scope.row.orgID)"
v-hasPermi="['org:org:update']"
v-hasPermi="['org::update']"
>
上级机构设置
</el-button>
@ -178,7 +178,7 @@
link
type="primary"
@click="openorgwxForm(scope.row.orgID)"
v-hasPermi="['org:org:update']"
v-hasPermi="['org::update']"
>
微信通知设置
</el-button>
@ -186,7 +186,7 @@
link
type="danger"
@click="handleDelete(scope.row.orgID)"
v-hasPermi="['org:org:delete']"
v-hasPermi="['org::delete']"
>
删除
</el-button>

View File

@ -81,6 +81,21 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="机构名称" prop="orgId" >
<el-select v-model="formData.orgId" placeholder="请选择机构" clearable>
<el-option
v-for="item in fororglistData"
:key="item.orgID"
:label="item.orgName"
:value="item.orgID"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="备注">
@ -103,12 +118,13 @@ import * as PostApi from '@/api/system/post'
import * as DeptApi from '@/api/system/dept'
import * as UserApi from '@/api/system/user'
import { FormRules } from 'element-plus'
import { OrgApi } from '@/api/system/org'
defineOptions({ name: 'SystemUserForm' })
const { t } = useI18n() //
const message = useMessage() //
//
const fororglistData = ref<any[]>([])
const dialogVisible = ref(false) //
const dialogTitle = ref('') //
const formLoading = ref(false) // 12
@ -125,12 +141,14 @@ const formData = ref({
postIds: [],
remark: '',
status: CommonStatusEnum.ENABLE,
roleIds: []
roleIds: [],
orgId:''
})
const formRules = reactive<FormRules>({
username: [{ required: true, message: '用户名称不能为空', trigger: 'blur' }],
nickname: [{ required: true, message: '用户昵称不能为空', trigger: 'blur' }],
password: [{ required: true, message: '用户密码不能为空', trigger: 'blur' }],
orgId: [{ required: true, message: '机构不能为空', trigger: 'blur' }],
email: [
{
type: 'email',
@ -155,6 +173,8 @@ const open = async (type: string, id?: number) => {
dialogVisible.value = true
dialogTitle.value = t('action.' + type)
formType.value = type
//
fororglistData.value = await OrgApi.getOrglist()
resetForm()
//
if (id) {
@ -212,7 +232,8 @@ const resetForm = () => {
postIds: [],
remark: '',
status: CommonStatusEnum.ENABLE,
roleIds: []
roleIds: [],
orgId:''
}
formRef.value?.resetFields()
}

View File

@ -8,7 +8,7 @@
v-loading="formLoading"
>
<el-form-item label="微信号userid" prop="wxUserid" label-width="130px" style="">
<el-input v-model="formData.wxUserid" placeholder="请输入微信号userid" :disabled="true"/>
<el-input v-model="formData.wxUserid" placeholder="请输入微信号userid" :disabled="true" />
</el-form-item>
<el-form-item label="电话号码" prop="bindTel" label-width="130px">
<el-input v-model="formData.bindTel" placeholder="请输入电话号码" />
@ -27,8 +27,15 @@
<el-form-item label="备注" prop="remark" label-width="130px">
<el-input v-model="formData.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="机构编码" prop="orgId" label-width="130px">
<el-input v-model="formData.orgId" placeholder="请输入机构编码" />
<el-form-item label="机构名称" prop="orgId" label-width="130px">
<el-select v-model="formData.orgId" placeholder="请选择机构" clearable>
<el-option
v-for="item in fororglistData"
:key="item.orgID"
:label="item.orgName"
:value="item.orgID"
/>
</el-select>
</el-form-item>
</el-form>
<template #footer>
@ -39,6 +46,7 @@
</template>
<script setup lang="ts">
import { WxApi, WxVO } from '@/api/system/wx'
import { OrgApi } from '@/api/system/org'
/** 微信通知管理 表单 */
defineOptions({ name: 'WxForm' })
@ -46,6 +54,8 @@ defineOptions({ name: 'WxForm' })
const { t } = useI18n() //
const message = useMessage() //
//
const fororglistData = ref<any[]>([])
const dialogVisible = ref(false) //
const dialogTitle = ref('') //
const formLoading = ref(false) // 12
@ -57,10 +67,9 @@ const formData = ref({
personName: undefined,
createDate: undefined,
remark: undefined,
orgId: undefined,
orgId: undefined
})
const formRules = reactive({
wxUserid: [{ required: true, message: '请输入微信号userid', trigger: 'blur' }],
bindTel: [{ required: true, message: '请输入电话号码', trigger: 'blur' }],
personName: [{ required: true, message: '请输入所属人的姓名', trigger: 'blur' }],
@ -73,6 +82,8 @@ const open = async (type: string, id?: number) => {
dialogVisible.value = true
dialogTitle.value = t('action.' + type)
formType.value = type
//
fororglistData.value = await OrgApi.getOrglist()
resetForm()
//
if (id) {
@ -119,8 +130,8 @@ const resetForm = () => {
personName: undefined,
createDate: undefined,
remark: undefined,
orgId: undefined,
orgId: undefined
}
formRef.value?.resetFields()
}
</script>
</script>

View File

@ -1,5 +1,11 @@
<template>
<Dialog :title="dialogTitle" v-model="dialogVisible" class="custom-dialog">
<el-dialog
v-model="dialogVisible"
:title="dialogTitle"
class="my-custom-close-icon"
:fullscreen="true"
>
<!-- <Dialog :title="dialogTitle" v-model="dialogVisible" class="custom-dialog"> -->
<!-- <el-form
ref="Print"
:model=applyFormVO
@ -7,13 +13,12 @@
label-width="100px"
v-loading="formLoading"
> -->
<div class="container">
<div class="left">
<div class="my-container">
<div class="my-left">
<el-select
v-model="fordevicemValue"
placeholder="请选择模版类别"
clearable
class="!w-230px"
@change="handleselectchange"
@clear="selectclear"
>
@ -22,11 +27,11 @@
<el-option label="体检" value="体检模版" />
</el-select>
<el-tabs type="border-card" style="height: 931px">
<el-tabs type="border-card" style="height: calc(100% - 32px)">
<el-tab-pane label="通用模版">
<!-- -->
<el-tree
style="min-width: 195px"
style="min-width: 195px;"
v-loading="formLoading"
class="treeStyle"
:check-on-click-node="true"
@ -57,108 +62,118 @@
:show-checkbox="false"
:check-strictly="true"
@node-click="handleTreeNodeClick"
ref="priselectTree"
:expand-on-click-node="false"
/>
</el-tab-pane>
</el-tabs>
</div>
<div class="middle">
<div class="my-middle">
<!--用户信息区域-->
<el-tabs
v-model="activeName"
class="demo-tabs"
type="border-card"
style="height: 963px"
style="height: 100%"
@tab-change="handleTabChange"
>
<el-tab-pane label="用户信息" name="first">
<el-form
:model="applyFormVO"
label-width="auto"
style="max-width: 900px"
:inline="true"
>
<el-row>
<el-col :span="8">
<el-form-item label="检查号">
<el-input v-model="applyFormVO.examId" style="width: 180px" :disabled="true" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="姓名">
<el-input v-model="applyFormVO.pname" style="width: 180px" :disabled="true" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="性别">
<el-input v-model="applyFormVO.gender" style="width: 180px" :disabled="true" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="出生日期">
<el-date-picker
v-model="applyFormVO.birthday"
type="date"
placeholder="出生日期"
size="default"
style="width: 180px"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="检查时间">
<el-date-picker
v-model="applyFormVO.examDate"
type="datetime"
placeholder="检查时间"
size="default"
style="width: 180px"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="检查项目名称">
<el-input
v-model="applyFormVO.examItemName"
style="width: 180px"
:disabled="true"
/>
</el-form-item>
</el-col>
<div class="my-app-container">
<el-form
:model="applyFormVO"
label-width="auto"
style="max-width: 900px"
:inline="true"
>
<el-row>
<el-col :span="8">
<el-form-item label="检查号" style="font-weight: bold">
<el-input
v-model="applyFormVO.examId"
style="width: 190px"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="姓名" style="font-weight: bold">
<el-input v-model="applyFormVO.pname" style="width: 190px" :disabled="true" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="性别" style="font-weight: bold">
<el-input
v-model="applyFormVO.gender"
style="width: 190px"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="出生日期" style="font-weight: bold">
<el-date-picker
v-model="applyFormVO.birthday"
type="date"
placeholder="出生日期"
size="default"
style="width: 190px"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="检查时间" style="font-weight: bold">
<el-date-picker
v-model="applyFormVO.examDate"
type="datetime"
placeholder="检查时间"
size="default"
style="width: 190px"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="检查项目名称" style="font-weight: bold">
<el-input
v-model="applyFormVO.examItemName"
style="width: 190px"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="申请时间" style="font-weight: bold">
<el-date-picker
v-model="applyFormVO.applicationDate"
type="datetime"
placeholder="检查时间"
size="default"
style="width: 190px"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="申请单号" style="font-weight: bold">
<el-input v-model="applyFormVO.regId" style="width: 190px" :disabled="true" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="送检科室" style="font-weight: bold">
<el-input
v-model="applyFormVO.billDoctorDepartment"
style="width: 190px"
:disabled="true"
/>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<el-col :span="8">
<el-form-item label="申请时间">
<el-date-picker
v-model="applyFormVO.applicationDate"
type="datetime"
placeholder="检查时间"
size="default"
style="width: 180px"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="申请单号">
<el-input v-model="applyFormVO.regId" style="width: 180px" :disabled="true" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="送检科室">
<el-input
v-model="applyFormVO.billDoctorDepartment"
style="width: 180px"
:disabled="true"
/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-divider />
<!--图片显示区域-->
<div class="demo-image">
@ -190,25 +205,25 @@
</el-card>
</div>
<el-divider />
<label style="text-align: center">检查所见</label>
<label style="text-align: center; font-size: 17px; font-weight: bold">检查所见</label>
<el-input
v-model="sj"
style="max-width: 100%; width: 100%"
:rows="4"
style="width: 100%"
:rows="8"
type="textarea"
placeholder="检查所见"
/>
<el-divider />
<label>诊断结论</label>
<label style="font-size: 17px; font-weight: bold">诊断结论</label>
<el-input
v-model="zdjl"
style="width: 100%"
:rows="4"
:rows="8"
type="textarea"
placeholder="诊断结论"
/>
<el-divider />
<label>报告备注</label>
<label style="font-size: 17px; font-weight: bold">报告备注</label>
<el-input v-model="notes" style="width: 100%" placeholder="" />
<el-radio-group
v-model="radio1"
@ -239,8 +254,6 @@
/>
</el-form-item>
</div>
<!--:disabled="applyFormVO.reportstatus === '已审核' ? true : false"-->
<el-button
type="primary"
plain
@ -252,8 +265,8 @@
</el-tab-pane>
<el-tab-pane label="报告" name="report">
<!--报告区域-->
<div class="flex-center" id="printMe">
<div class="ultrasound-report" id="PDF" style="height: 750px">
<div class="flex-center" id="printMe" style="height: 100%">
<div class="ultrasound-report" id="PDF">
<h2>超声检查报告单</h2>
<hr />
<div class="patient-info">
@ -300,7 +313,7 @@
>
<el-button
type="primary"
class="ignore-print"
class="ignore-print"
style="width: 100px"
:disabled="formLoading"
@click="() => htmlToPdf.getPdf('超声报告单', '#PDF')"
@ -312,57 +325,52 @@
</el-tab-pane>
</el-tabs>
</div>
<div class="right" style="border: 1px solid #dcdfe6; padding: 2px; height: 960px">
<div class="my-right" style="border: 1px solid #dcdfe6; height: 100%">
<!--图片区域-->
<div>
<div style="width: 100%">
<el-button
type="primary"
plain
style="width: 220px"
style="width: 100%"
@click="upimagedeleteor()"
:disabled="applyFormVO.reportstatus === '已审核' ? true : false"
>图像删除</el-button
>
</div>
<div>
<div style="width: 100%">
<el-button
type="primary"
plain
style="width: 220px"
style="width: 100%"
@click="getimages"
:disabled="applyFormVO.reportstatus === '已审核' ? true : false"
>图像刷新</el-button
>
</div>
<div class="image-container">
<div class="image-wrapper">
<div class="image-item-container" v-for="image in images" :key="image.id">
<el-image
class="image-item"
:src="image.imgUrl"
@dblclick="selectImage(image.imgUrl, image.id)"
@click="chooseImage($event, image.id)"
/>
</div>
</div>
<div class="image-container image-wrapper image-item-container">
<el-image
class="image-item"
v-for="image in images"
:key="image.id"
:src="image.imgUrl"
@dblclick="selectImage(image.imgUrl, image.id)"
@click="chooseImage($event, image.id)"
/>
</div>
</div>
</div>
<!-- </el-form> -->
<template #footer>
<el-button @click="dialogVisible = false">关闭</el-button>
</template>
</Dialog>
</el-dialog>
<!-- </Dialog> -->
<!-- 弹窗-->
<el-dialog v-model="dialogTableVisible" title="选择结论添加方式" width="300" align-center>
<el-dialog v-model="dialogTableVisible" title="选择结论添加方式" width="320" align-center>
<div>
<el-button @click="handleButtonClick('覆盖')" type="primary">覆盖</el-button>
<el-button @click="handleButtonClick('追加')" type="success">追加</el-button>
<el-button @click="dialogTableVisible = false" type="info">关闭</el-button>
<el-button @click="handleButtonClick('覆盖')" type="primary" style="font-size: 20px;">覆盖</el-button>
<el-button @click="handleButtonClick('追加')" type="success" style="font-size: 20px;">追加</el-button>
<el-button @click="dialogTableVisible = false" type="info" style="font-size: 20px;">关闭</el-button>
</div>
</el-dialog>
</template>
<script setup lang="ts">
import { ApplyformApi, ApplyformVO, UPFJApplyformVO } from '@/api/applyregistration/applyform'
import { ultrasoniccomApi, updateexamineimageVO } from '@/api/ultrasoniccom'
@ -386,10 +394,8 @@ const dialogTitle = ref('') // 弹窗的标题
const formLoading = ref(false) // 12
const examineFormVO = ref<PatientexamlistVO>({} as PatientexamlistVO)
//使
const clickuptime =async (pid:string)=>
{
const clickuptime = async (pid: string) => {
await ultrasoniccomApi.upreporttemplatetime(pid)
}
@ -409,7 +415,7 @@ const handleButtonClick = (buttonName) => {
sj.value = lssj + strsj
}
dialogTableVisible.value = false
console.log("获取到父节点"+pid);
console.log('获取到父节点' + pid)
clickuptime(pid)
}
@ -654,13 +660,13 @@ const treeDefaultProps = {
//
let strzdjl: string = ''
let strsj: string = ''
let pid:string=''//id
let pid: string = '' //id
//
const handleTreeNodeClick = async (data) => {
strzdjl = data.diagResults
strsj = data.examDescription
pid=data.pid
console.log("父节点"+data.pid)
pid = data.pid
console.log('父节点' + data.pid)
dialogTableVisible.value = true
}
//
@ -751,15 +757,12 @@ const getlogininfo = async () => {
Profilevo.value = await getUserProfile()
}
/** 重置表单 */
const resetForm = () => {
applyFormVO.value={} as PatientexamlistVO
pid=''
strzdjl= ''
strsj = ''
applyFormVO.value = {} as PatientexamlistVO
pid = ''
strzdjl = ''
strsj = ''
activeName.value = 'first'
deleteimageid.value = ''
updateexamineimage.value = []
@ -802,24 +805,28 @@ const chooseImage = (event, id: number) => {
</script>
<style>
.container {
.my-container {
display: flex;
height: 950px;
height: 1200px;
}
.left {
flex: 0 0 200px; /* 固定宽度 */
.my-container * {
font-size: 15px;
}
.my-left {
width: 20%;
background: lightblue;
}
.middle {
flex: 1; /* 占据剩余空间 */
.my-middle {
width: 60%;
margin-left: 2px;
background: rgb(238, 240, 238);
}
.right {
flex: 0 0 200px; /* 固定宽度 */
.my-right {
width: 20%;
background: rgb(255, 255, 255);
display: flex;
flex-direction: column;
@ -834,6 +841,13 @@ const chooseImage = (event, id: number) => {
padding: 10px;
}
.my-app-container {
display: flex;
justify-content: center;
align-items: center;
}
.demo-image {
display: flex;
justify-content: center;
@ -859,16 +873,17 @@ const chooseImage = (event, id: number) => {
.image-wrapper {
display: flex;
flex-wrap: wrap;
justify-content: center; /* 水平居中 */
align-items: center; /* 垂直居中 */
gap: 10px; /* 设置图像之间的间距 */
width: 100%;
flex-direction: column;
}
.image-item {
/* 可选:设置图像的宽度和高度 */
width: 200px;
height: 200px;
width: 80%;
height: 80%;
cursor: pointer;
transition: transform 0.3s ease; /* 添加过渡效果 */
}
@ -896,17 +911,19 @@ const chooseImage = (event, id: number) => {
.form-item {
flex: 1; /* 均分宽度,使两个输入框平分容器的宽度 */
margin-right: 20px;
font-weight:bold
}
/* 报告样式 */
.ultrasound-report {
font-family: Arial, sans-serif;
max-width: 800px;
width: 90%;
margin: 20px auto;
padding: 20px;
border: 1px solid #ccc;
border-radius: 8px;
position: relative;
height: 900px;
}
.ultrasound-report h1,
@ -954,4 +971,9 @@ const chooseImage = (event, id: number) => {
flex-basis: 25%;
/* 设置其他样式属性,如 padding、margin 等 */
}
.my-custom-close-icon .el-dialog__close {
font-size: 40px; /* 自定义图标大小 */
color: red; /* 自定义图标颜色 */
}
</style>