| | |
| | | style="margin-bottom: 15px" |
| | | /> |
| | | </div> |
| | | <div class="head-container"> |
| | | <el-tree |
| | | :data="deptOption" |
| | | :props="defaultProps" |
| | | :expand-on-click-node="false" |
| | | :filter-node-method="filterNode" |
| | | ref="tree" |
| | | node-key="id" |
| | | default-expand-all |
| | | highlight-current |
| | | @node-click="handleNodeClick" |
| | | /> |
| | | <div class="scrollable-container"> |
| | | <div class="content"> |
| | | <el-tree |
| | | :data="deptOption" |
| | | :props="defaultProps" |
| | | :expand-on-click-node="false" |
| | | :filter-node-method="filterNode" |
| | | ref="tree" |
| | | node-key="id" |
| | | default-expand-all |
| | | highlight-current |
| | | @node-click="handleNodeClick" |
| | | /> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="20" :xs="24"> |
| | |
| | | style="width: 200px" |
| | | clearable |
| | | filterable |
| | | @change="$forceUpdate()" |
| | | > |
| | | <el-option |
| | | v-for="dict in deptOption" |
| | | :key="dict.label" |
| | | :key="dict.id" |
| | | :label="dict.label" |
| | | :value="dict.id" |
| | | ></el-option> |
| | |
| | | placeholder="请输入科室编码" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="显示顺序" prop="orderNum" style="margin-top:20px"> |
| | | <el-form-item label="显示顺序" prop="orderNum"> |
| | | <el-input v-model="form.orderNum" placeholder="请输入显示顺序" /> |
| | | </el-form-item> |
| | | <el-form-item label="所属医院" prop="hospId" style="margin-top:20px"> |
| | | <el-form-item label="所属医院" prop="hospId"> |
| | | <el-select |
| | | v-model="form.hospId" |
| | | placeholder="请选择所属医院" |
| | |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="负责人" prop="leader" style="margin-top:20px"> |
| | | <el-form-item label="负责人" prop="leader"> |
| | | <el-input v-model="form.leader" placeholder="请输入负责人" /> |
| | | </el-form-item> |
| | | <el-form-item label="联系电话" prop="phone" style="margin-top:20px"> |
| | | <el-form-item label="联系电话" prop="phone"> |
| | | <el-input v-model="form.phone" placeholder="请输入联系电话" /> |
| | | </el-form-item> |
| | | <el-form-item label="邮箱" prop="email" style="margin-top:20px"> |
| | | <el-form-item label="邮箱" prop="email"> |
| | | <el-input v-model="form.email" placeholder="请输入邮箱" /> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="科室英文名称" prop="departmentEnName"> |
| | | <el-input v-model="form.departmentEnName" placeholder="请输入科室英文名称" /> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="组织类型" prop="orgType"> |
| | | <el-select v-model="form.orgType" placeholder="请选择组织类型" style="width: 200px"> |
| | | <el-option v-for="dict in dict.type.dict_user_orgtype" :key="dict.value" :label="dict.label" :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="上级组织id" prop="parentOrgId"> |
| | | <el-input v-model="form.parentOrgId" placeholder="请输入上级组织id" /> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="上级组织名称" prop="parentOrgName"> |
| | | <el-select v-model="form.parentOrgType" placeholder="请选择上级组织名称" style="width: 200px"> |
| | | <el-option v-for="dict in dict.type.dict_user_orgtype" :key="dict.value" :label="dict.label" :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="上级组织编码" prop="parentOrgCode"> |
| | | <el-input v-model="form.parentOrgCode" placeholder="请输入上级组织编码" |
| | | /> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="上级组织类型" prop="parentOrgType"> |
| | | <el-select v-model="form.parentOrgType" placeholder="请选择上级组织类型(PT10.06.17)" style="width: 200px"> |
| | | <el-option v-for="dict in dict.type.dict_user_orgtype" :key="dict.value" :label="dict.label" :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="医疗机构ID" prop="hospId"> |
| | | <el-input v-model="form.hospId" placeholder="请输入医疗机构ID" /> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="医疗机构编码" prop="hospCode"> |
| | | <el-input v-model="form.hospCode" placeholder="请输入医疗机构编码" /> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="医疗机构名称" prop="hospName"> |
| | | <el-input v-model="form.hospName" placeholder="请输入医疗机构名称" /> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="联系人" prop="contactPerson"> |
| | | <el-input v-model="form.contactPerson" placeholder="请输入联系人" /> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="联系人电话" prop="contactPhone"> |
| | | <el-input v-model="form.contactPhone" placeholder="请输入联系人电话"/> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="邮政编码" prop="postalCode"> |
| | | <el-input v-model="form.postalCode" placeholder="请输入邮政编码" /> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="官网" prop="officialWeb"> |
| | | <el-input v-model="form.officialWeb" placeholder="请输入官网" /> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="编制床位数" prop="plaitBed"> |
| | | <el-input v-model="form.plaitBed" placeholder="请输入编制床位数" /> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="开放床位数" prop="openBed"> |
| | | <el-input v-model="form.openBed" placeholder="请输入开放床位数" /> |
| | | </el-form-item> --> |
| | | <!-- <el-form-item label="建立日期" prop="buildDate"> |
| | | <el-date-picker clearable v-model="form.buildDate" type="date" value-format="yyyy-MM-dd" placeholder="请选择建立日期" style="width: 200px"> |
| | | </el-date-picker> |
| | | </el-form-item> --> |
| | | <el-form-item label="标准科室" prop="standardDeptCode" style="margin-top:20px"> |
| | | |
| | | <el-form-item label="标准科室" prop="standardDeptCode"> |
| | | <el-input |
| | | v-model="form.standardDeptCode" |
| | | placeholder="请输入标准科室" |
| | |
| | | ></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="his科室ID" prop="hisksid"> |
| | | <span |
| | | slot="label" |
| | | style="display: inline-block; border-bottom: 2px solid blue" |
| | | @click="handleQuerys" |
| | | > |
| | | his科室ID |
| | | </span> |
| | | |
| | | <el-input |
| | | v-model="form.hisksid" |
| | | placeholder="his科室ID" |
| | | style="width: 200px" |
| | | > |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="his科室名" prop="hisksmc"> |
| | | <el-input |
| | | v-model="form.hisksmc" |
| | | placeholder="his科室名" |
| | | style="width: 202px" |
| | | > |
| | | </el-input> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="重点科室" prop="deptFcusTypeCode"> |
| | | <el-select v-model="form.parentOrgType" placeholder="请选择重点科室(PT10.06.17)" style="width: 200px" > |
| | | <el-option v-for="dict in dict.type.dict_user_orgtype" :key="dict.value" :label="dict.label" :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> --> |
| | | <el-form-item label="简介" prop="peofile"> |
| | | <el-input |
| | | v-model="form.peofile" |
| | | placeholder="请输入简介" |
| | | style="width: 525px" |
| | | /> </el-form-item |
| | | ><br /> |
| | | |
| | | <el-form-item label="科室地址" prop="officialWeb"> |
| | | <el-input v-model="form.officialWeb" placeholder="请输入科室地址" /> |
| | | </el-form-item> |
| | |
| | | > |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item label="简介" prop="peofile"> |
| | | <el-input |
| | | v-model="form.peofile" |
| | | placeholder="请输入简介" |
| | | style="width: 525px" |
| | | /> |
| | | </el-form-item> |
| | | </el-form> |
| | | |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="submitForm">确 定</el-button> |
| | | <el-button @click="cancel">取 消</el-button> |
| | | <el-button type="primary" @click="submitForm">确 定</el-button> |
| | | </div> |
| | | <!-- 在父组件中 --> |
| | | <Packagese |
| | | ref="aaa" |
| | | :visible="showPackagese" |
| | | @add="handleChanges" |
| | | :selectedId="form.hisksid" |
| | | /> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import Packagese from "@/components/Packagese"; |
| | | import { |
| | | listDept, |
| | | getDept, |
| | |
| | | export default { |
| | | name: "Dept", |
| | | dicts: ["sys_normal_disable", "dict_user_orgtype", "dict_dept_type"], |
| | | components: { Treeselect }, |
| | | components: { Treeselect, Packagese }, |
| | | data() { |
| | | let checkPhoneNum = (rule, value, callback) => { |
| | | let patter = new RegExp(/^1\s*[3456789]\s*(\d\s*){9}$/); |
| | |
| | | } |
| | | }; |
| | | return { |
| | | showPackagese: false, |
| | | // 部门名称 |
| | | deptName: undefined, |
| | | // 遮罩层 |
| | | loading: true, |
| | | hospList: [], |
| | | parentNameList: [], |
| | | total: 0, |
| | | // 显示搜索条件 |
| | | showSearch: true, |
| | | // 表格树数据 |
| | |
| | | // 表单校验 |
| | | rules: { |
| | | parentId: [ |
| | | { required: true, validator: checkPhoneNum, trigger: "blur" }, |
| | | { required: true, validator: checkPhoneNum, trigger: "blur" }, |
| | | ], |
| | | deptName: [ |
| | | { required: true, message: "科室名称不能为空", validator: checkPhoneNum, trigger: "blur" }, |
| | | { |
| | | required: true, |
| | | message: "科室名称不能为空", |
| | | validator: checkPhoneNum, |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | orderNum: [ |
| | | { required: true, message: "显示顺序不能为空", validator: checkPhoneNum, trigger: "blur" }, |
| | | { |
| | | required: true, |
| | | message: "显示顺序不能为空", |
| | | validator: checkPhoneNum, |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | departmentCode: [ |
| | | { required: true, message: "科室编码不能为空", validator: checkPhoneNum, trigger: "blur" }, |
| | | { |
| | | required: true, |
| | | message: "科室编码不能为空", |
| | | validator: checkPhoneNum, |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | hospId: [ |
| | | { required: true, message: "所属医院不能为空", validator: checkPhoneNum, trigger: "blur" }, |
| | | { |
| | | required: true, |
| | | message: "所属医院不能为空", |
| | | validator: checkPhoneNum, |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | // email: [ |
| | | // { |
| | |
| | | this.getDeptTree(); |
| | | }, |
| | | methods: { |
| | | handleQuerys() { |
| | | this.showPackagese = true; |
| | | if (this.form.hisksid) { |
| | | this.$refs.aaa.list = [ |
| | | { |
| | | pacCode: this.form.hisksid, |
| | | pacName: this.form.hisksmc, |
| | | }, |
| | | ]; |
| | | } |
| | | |
| | | this.$refs.aaa.open = true; |
| | | this.$refs.aaa.getAllList(); |
| | | this.$refs.aaa.title = "数据字典"; |
| | | }, |
| | | handleChanges(param1) { |
| | | this.form = { |
| | | ...this.form, |
| | | hisksid: param1[0].pacCode, |
| | | hisksmc: param1[0].pacName, |
| | | }; |
| | | }, |
| | | /** 查询部门列表 */ |
| | | getList() { |
| | | this.loading = true; |
| | |
| | | getlistHosp() { |
| | | listHosp(this.queryParams).then((response) => { |
| | | this.hospList = response.rows; |
| | | console.log(this.hospList); |
| | | }); |
| | | }, |
| | | /** 转换部门数据结构 */ |
| | |
| | | }); |
| | | }, |
| | | /** 修改按钮操作 */ |
| | | |
| | | handleUpdate(row) { |
| | | // console.log(11111) |
| | | // this.reset(); |
| | | this.form = row; |
| | | // this.form.parentId = this.form.parentId.toString() |
| | | if(this.form.parentId == 0){ |
| | | this.deptOption.push({ "id": 0, "label": "主类目", }); |
| | | this.form.parentId = this.form.parentId.toString(); |
| | | if (this.form.parentId == 0) { |
| | | this.deptOption.push({ id: 0, label: "主类目" }); |
| | | } |
| | | |
| | | this.open = true; |
| | | this.title = "科室信息维护 "; |
| | | // getDept(row.deptId).then((response) => { |
| | |
| | | this.$refs["form"].validate((valid) => { |
| | | if (valid) { |
| | | if (this.form.deptId != undefined) { |
| | | if(this.form.hospId ){ |
| | | console.log(this.form); |
| | | if (this.form.hospId) { |
| | | updateDept(this.form).then((response) => { |
| | | this.$modal.msgSuccess("修改成功"); |
| | | this.open = false; |
| | | this.getList(); |
| | | }); |
| | | }else{ |
| | | this.$modal.msgSuccess("修改成功"); |
| | | this.open = false; |
| | | this.getList(); |
| | | }); |
| | | } else { |
| | | this.$modal.msgError("请填写带星号"); |
| | | } |
| | | |
| | | } else { |
| | | this.hospList.forEach((element) => { |
| | | if (this.form.hospName == element.hospAreaName) { |
| | |
| | | }; |
| | | </script> |
| | | |
| | | <style scoped> |
| | | .scrollable-container { |
| | | width: 200px; /* 设置容器的宽度 */ |
| | | height: 629px; /* 设置容器的高度 */ |
| | | overflow: auto; /* 允许内容溢出时显示滚动条 */ |
| | | border: 1px solid #ccc; /* 可选:添加边框以更好地显示容器 */ |
| | | position: relative; /* 可选:使容器内的绝对定位元素能够正确显示 */ |
| | | } |
| | | |
| | | .content { |
| | | width: 600px; /* 设置内容的宽度,以触发水平滚动条 */ |
| | | height: 1000px; /* 设置内容的高度,以触发垂直滚动条 */ |
| | | } |
| | | </style> |