This commit is contained in:
ChenQiuYu 2025-05-20 16:50:55 +08:00
parent f20ce14e31
commit 447299faf6
2 changed files with 170 additions and 127 deletions

View File

@ -3,24 +3,24 @@
<template #default>
<el-scrollbar>
<div style="padding: 24px">
<el-form :model="form" label-width="auto">
<el-form :model="form" label-width="auto" :rules="formRules" ref="formRef">
<el-descriptions
:column="4"
direction="vertical"
border
>
<el-descriptions-item label="科室名称">
<el-form-item>
<el-form-item prop="name">
<el-input v-model="form.name"/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="科室类别">
<el-form-item>
<el-form-item prop="caty">
<el-cascader :props="{ checkStrictly: true }" v-model="form.caty" :options="options"/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="开始日期">
<el-form-item>
<el-form-item prop="beginDate">
<div class="demo-date-picker">
<el-date-picker
v-model="form.beginDate"
@ -59,12 +59,12 @@
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="负责人姓名">
<el-form-item>
<el-form-item prop="resperName">
<el-input v-model="form.resperName"/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="负责人电话">
<el-form-item>
<el-form-item prop="resperTel">
<el-input v-model="form.resperTel"/>
</el-form-item>
</el-descriptions-item>
@ -74,7 +74,7 @@
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="批准床位数">
<el-form-item>
<el-form-item prop="bedCnt">
<el-input v-model="form.bedCnt" type="number"/>
</el-form-item>
</el-descriptions-item>
@ -84,22 +84,22 @@
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="医师人数">
<el-form-item>
<el-form-item prop="drPsncnt">
<el-input v-model.number="form.drPsncnt" type="number"/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="药师人数">
<el-form-item>
<el-form-item prop="pharPsncnt">
<el-input v-model.number="form.pharPsncnt" type="number"/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="护士人数">
<el-form-item>
<el-form-item prop="nursPsncnt">
<el-input v-model.number="form.nursPsncnt" type="number"/>
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="技术人员人数">
<el-form-item>
<el-form-item prop="tecnPsncnt">
<el-input v-model.number="form.tecnPsncnt" type="number"/>
</el-form-item>
</el-descriptions-item>
@ -155,6 +155,41 @@ const form = ref<any>({
tecnPsncnt: '',
memo: '',
})
const formRules = ref<any>({
name: [
{required: true, message: '请输入名称', trigger: 'blur'},
],
caty: [
{required: true, message: '请选择科室类别', trigger: 'blur'},
],
beginDate: [
{required: true, message: '请选择开始日期', trigger: 'blur'},
],
resperName: [
{required: true, message: '请输入负责人姓名', trigger: 'blur'},
],
resperTel: [
{required: true, message: '请输入负责人电话', trigger: 'blur'},
],
creationDate: [
{required: true, message: '请选择成立时间', trigger: 'change'},
],
bedCnt: [
{required: true, message: '请输入批准床位数', trigger: 'blur'},
],
drPsncnt: [
{required: true, message: '请输入医师人数', trigger: 'blur'},
],
pharPsncnt: [
{required: true, message: '请输入药师人数', trigger: 'blur'},
],
nursPsncnt: [
{required: true, message: '请输入护士人数', trigger: 'blur'},
],
tecnPsncnt: [
{required: true, message: '请输入技师人数', trigger: 'blur'},
],
})
const isShow = ref<any>(false)
const emit = defineEmits(['onSubmit'])
const exit = () => {
@ -168,7 +203,10 @@ const openDialog= () => {
init(props.id)
}
}
const formRef = ref()
const save = () => {
formRef.value.validate((valid: any) => {
if (valid) {
if (props.id) {
post("organization/section/edit", {data: form.value}).then((res) => {
exit()
@ -181,6 +219,8 @@ const save = () => {
})
}
}
})
}
const options = Object.entries(depts).map(([key, value]) => {
if (typeof value === 'string') {
return {value: key, label: value};

View File

@ -9,7 +9,6 @@
clearable
v-model="searchModel.keyword"
@input="searchGoods"
style="width: 300px"
>
<template #prefix>
<el-icon>
@ -19,14 +18,13 @@
</el-input>
</el-form-item>
<el-form-item>
<el-cascader :collapse-tags="true" :props="props" style="width: 100px" :options="allCateList"
<el-cascader :collapse-tags="true" :props="props" :options="allCateList"
:show-all-levels="false"
v-model="searchModel.cateId" clearable/>
</el-form-item>
<el-form-item>
<el-select
placeholder="利润分类"
style="width: 100px"
multiple
collapse-tags
collapse-tags-tooltip
@ -52,8 +50,7 @@
</el-icon>
</el-form-item>
<el-form-item>
<el-input placeholder="最高毛利率" v-model="searchModel.maxInterestRate"
style="width: 100px">
<el-input placeholder="最高毛利率" style="width: 100px" v-model="searchModel.maxInterestRate">
<template #suffix>
<el-icon class="el-input__icon">%</el-icon>
</template>
@ -497,16 +494,22 @@ const props = {multiple: true}
margin-left: 5px;
}
:deep(.el-input__inner) {
:deep(.el-input__wrapper) {
height: 42px;
width: 100px;
&:nth-child(1) {
width: 280px;
}
}
:deep(.el-cascader .el-input) {
height: 42px;
width: 100px;
}
:deep(.el-select__wrapper) {
height: 42px;
width: 100px;
}
.btn-group {