This commit is contained in:
2024-07-08 14:33:13 +08:00
parent 73726672a2
commit 0cd7a3a72f
9 changed files with 59 additions and 71 deletions

View File

@ -54,10 +54,11 @@ export function getDepartmentList(query) {
} }
//科室 //科室
export function selectUserDepartment() { export function selectUserDepartment(query) {
return request({ return request({
url: '/system/department/selectUserDepartment', url: '/system/department/selectUserDepartment',
method: 'get', method: 'get',
params: query
}) })
} }

View File

@ -60,6 +60,7 @@ import { listOperationNum } from "@/api/operationInfo/operationInfo";
import { import {
listWechatTemplateNum, listWechatTemplateNum,
} from "@/api/manage/template"; } from "@/api/manage/template";
import { getDepartmentList } from "@/api/system/question";
import { listScriptNum } from "@/api/manage/script"; import { listScriptNum } from "@/api/manage/script";
import { listMessageNum } from "@/api/manage/message"; import { listMessageNum } from "@/api/manage/message";
import { selectNumByDept } from "@/api/manage/propaganda"; import { selectNumByDept } from "@/api/manage/propaganda";
@ -178,8 +179,11 @@ export default {
method = selectNumByDept(this.querydepartmen) method = selectNumByDept(this.querydepartmen)
} else if (this.methods == 'listServicePackageNum') { } else if (this.methods == 'listServicePackageNum') {
method = listServicePackageNum(this.querydepartmen) method = listServicePackageNum(this.querydepartmen)
} else if (this.methods == 'getDepartmentList') {
method = getDepartmentList(this.querydepartmen)
} }
method.then(response => { method.then(response => {
console.log(response)
this.DepartmentoList = response.data.deptNumList; this.DepartmentoList = response.data.deptNumList;
this.hospitalAgencyName = response.data.hospitalAgencyName this.hospitalAgencyName = response.data.hospitalAgencyName
this.count = 0; this.count = 0;
@ -188,6 +192,14 @@ export default {
this.count += item.countNum; this.count += item.countNum;
} }
}); });
if (this.methods == 'getDepartmentList') {
this.$emit("clickdepartment", {
hospitalAgencyId: this.querydepartmen.hospitalAgencyId,
itemid: '',
itemName: '',
hospitalAgencyName: this.hospitalAgencyName
});
}
this.$emit("clickdepartment", { this.$emit("clickdepartment", {
hospitalAgencyId: this.querydepartmen.hospitalAgencyId, hospitalAgencyId: this.querydepartmen.hospitalAgencyId,
itemid: '', itemid: '',

View File

@ -7,7 +7,7 @@
</el-col> </el-col>
<el-col :span="19" :xs="24"> <el-col :span="19" :xs="24">
<div ref="topform" class="form"> <div ref="topform" class="form">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" <el-form :model="queryParams" ref="queryForms" size="small" :inline="true" v-show="showSearch"
label-width="68px"> label-width="68px">
<el-form-item label="短信模板名称" prop="textMessageName" label-width="100px"> <el-form-item label="短信模板名称" prop="textMessageName" label-width="100px">
<el-input v-model="queryParams.textMessageName" placeholder="请输入微信模版名称" clearable <el-input v-model="queryParams.textMessageName" placeholder="请输入微信模版名称" clearable
@ -473,7 +473,7 @@ export default {
this.informationqueryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId this.informationqueryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId
this.queryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId this.queryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId
this.$refs.DepartmentList.resetQuery() this.$refs.DepartmentList.resetQuery()
this.resetForm("queryForm"); this.resetForm("queryForms");
this.handleQuery(); this.handleQuery();
}, },
// //

View File

@ -807,7 +807,7 @@ export default {
}, },
// //
clickdisease() { clickdisease() {
if (!this.form.departmentName) { if (this.form.departmentName == '请选择科室') {
this.$modal.msgError("请先选择科室"); this.$modal.msgError("请先选择科室");
} else { } else {
this.diseaseshowst = true; this.diseaseshowst = true;
@ -888,7 +888,7 @@ export default {
this.informationqueryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId this.informationqueryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId
this.queryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId this.queryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId
this.$refs.DepartmentList.resetQuery() this.$refs.DepartmentList.resetQuery()
this.resetForm("queryForm"); this.resetForm("queryForms");
this.handleQuery(); this.handleQuery();
}, },
// //

View File

@ -7,7 +7,7 @@
</el-col> </el-col>
<el-col :span="19" :xs="24"> <el-col :span="19" :xs="24">
<div ref="topform" class="form"> <div ref="topform" class="form">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" <el-form :model="queryParams" ref="queryForms" size="small" :inline="true" v-show="showSearch"
label-width="68px"> label-width="68px">
<el-form-item label="通用话术名称" prop="commonScriptName" label-width="100px"> <el-form-item label="通用话术名称" prop="commonScriptName" label-width="100px">
<el-input v-model="queryParams.commonScriptName" placeholder="请输入通用话术名称" clearable <el-input v-model="queryParams.commonScriptName" placeholder="请输入通用话术名称" clearable
@ -585,7 +585,7 @@ export default {
} }
this.informationqueryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId this.informationqueryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId
this.$refs.DepartmentList.resetQuery() this.$refs.DepartmentList.resetQuery()
this.resetForm("queryForm"); this.resetForm("queryForms");
this.handleQuery(); this.handleQuery();
}, },
// //

View File

@ -7,7 +7,7 @@
</el-col> </el-col>
<el-col :span="19" :xs="24"> <el-col :span="19" :xs="24">
<div ref="topform" class="form"> <div ref="topform" class="form">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" <el-form :model="queryParams" ref="queryForms" size="small" :inline="true" v-show="showSearch"
label-width="90px"> label-width="90px">
<el-form-item label="病种名称" prop="diseaseTypeName"> <el-form-item label="病种名称" prop="diseaseTypeName">
<el-input v-model="queryParams.diseaseTypeName" placeholder="请输入病种名称" clearable <el-input v-model="queryParams.diseaseTypeName" placeholder="请输入病种名称" clearable
@ -88,7 +88,7 @@
<el-form ref="form" :model="form" :rules="rules" label-width="100px" :inline="true"> <el-form ref="form" :model="form" :rules="rules" label-width="100px" :inline="true">
<el-form-item label="科室名称" prop="departmentId"> <el-form-item label="科室名称" prop="departmentId">
<el-button @click="clickinnerVisible()" style=" <el-button @click="clickinnerVisible()" style="
width: 379px; width: 208px;
text-align: left; text-align: left;
height: 36px; height: 36px;
overflow: hidden; overflow: hidden;
@ -97,7 +97,7 @@
<el-form-item label="病种名称" prop="diseaseTypeName"> <el-form-item label="病种名称" prop="diseaseTypeName">
<el-button type="" @click="clickdisease()" :style="form.diseaseTypeName == '请选择病种' ? 'color: #c0c4cc;' : ''" <el-button type="" @click="clickdisease()" :style="form.diseaseTypeName == '请选择病种' ? 'color: #c0c4cc;' : ''"
style=" style="
width: 206px; width: 208px;
text-align: left; text-align: left;
height: 36px; height: 36px;
overflow: hidden; overflow: hidden;
@ -111,7 +111,7 @@
</el-form-item> </el-form-item>
<el-form-item label="服务包价格" prop="packagePrice"> <el-form-item label="服务包价格" prop="packagePrice">
<el-input oninput="value=value.replace(/[^\d.]/g,'')" v-model="form.packagePrice" placeholder="请输入服务包价格" <el-input oninput="value=value.replace(/[^\d.]/g,'')" v-model="form.packagePrice" placeholder="请输入服务包价格"
style="width: 204px"> style="width: 208px">
<template slot="append"></template> <template slot="append"></template>
</el-input> </el-input>
</el-form-item> </el-form-item>
@ -119,7 +119,7 @@
<el-input v-model="form.packageVersion" placeholder="请输入服务包版本" /> <el-input v-model="form.packageVersion" placeholder="请输入服务包版本" />
</el-form-item> </el-form-item>
<el-form-item label="硬件类型" prop="hardwareType"> <el-form-item label="硬件类型" prop="hardwareType">
<el-select v-model="form.hardwareType" placeholder="请选择硬件类型" style="width: 204px"> <el-select v-model="form.hardwareType" placeholder="请选择硬件类型" style="width: 208px">
<el-option v-for="item in optionstype" :key="item.value" :label="item.label" :value="item.value"> <el-option v-for="item in optionstype" :key="item.value" :label="item.label" :value="item.value">
</el-option> </el-option>
</el-select> </el-select>
@ -136,13 +136,14 @@
<br /> <br />
<div v-for="(aitem, index) in form.voList" :key="index"> <div v-for="(aitem, index) in form.voList" :key="index">
<el-form-item label="服务包内容" :rules="rules.voList.serviceWayName" :prop="`voList.${index}.serviceWayName`"> <el-form-item label="服务包内容" :rules="rules.voList.serviceWayName" :prop="`voList.${index}.serviceWayName`">
<el-select v-model="aitem.serviceWayName" placeholder="请选择服务方式" @change="changeway($event, index)"> <el-select v-model="aitem.serviceWayName" placeholder="请选择服务方式" @change="changeway($event, index)"
style="width:208px">
<el-option v-for="item in optionsway" :key="item.id" :label="item.serviceWayName" <el-option v-for="item in optionsway" :key="item.id" :label="item.serviceWayName"
:value="item.serviceWayName"> :value="item.serviceWayName">
</el-option> </el-option>
</el-select> </el-select>
<el-form-item label="" :rules="rules.voList.serviceContent" :prop="`voList.${index}.serviceContent`"> <el-form-item label="" :rules="rules.voList.serviceContent" :prop="`voList.${index}.serviceContent`">
<el-select style="margin-left: 10px" v-model="aitem.serviceContent" placeholder="请选择服务内容" <el-select style="margin-left: 10px;width:208px" v-model="aitem.serviceContent" placeholder="请选择服务内容"
@change="changcontent($event, index)"> @change="changcontent($event, index)">
<el-option v-for="item in optionscontent[index]" :key="item.id" :label="item.serviceContent" <el-option v-for="item in optionscontent[index]" :key="item.id" :label="item.serviceContent"
:value="item.serviceContent"> :value="item.serviceContent">
@ -151,7 +152,7 @@
</el-form-item> </el-form-item>
<el-form-item label="" :rules="rules.voList.serviceFrequencyText" <el-form-item label="" :rules="rules.voList.serviceFrequencyText"
:prop="`voList.${index}.serviceFrequencyText`"> :prop="`voList.${index}.serviceFrequencyText`">
<el-select v-model="aitem.serviceFrequencyText" placeholder="请选择服务频次"> <el-select v-model="aitem.serviceFrequencyText" placeholder="请选择服务频次" style="width:208px">
<el-option v-for="item in optionsfrequency[index]" :key="item.id" :label="item.serviceFrequencyText" <el-option v-for="item in optionsfrequency[index]" :key="item.id" :label="item.serviceFrequencyText"
:value="item.serviceFrequencyText"> :value="item.serviceFrequencyText">
</el-option> </el-option>
@ -707,7 +708,7 @@ export default {
}, },
// //
clickdisease() { clickdisease() {
if (!this.form.departmentName) { if (this.form.departmentName == '请选择科室') {
this.$modal.msgError("请先选择科室"); this.$modal.msgError("请先选择科室");
} else { } else {
this.querydisease.departmentId = this.form.departmentId this.querydisease.departmentId = this.form.departmentId
@ -796,7 +797,7 @@ export default {
this.informationqueryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId this.informationqueryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId
this.queryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId this.queryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId
this.$refs.DepartmentList.resetQuery() this.$refs.DepartmentList.resetQuery()
this.resetForm("queryForm"); this.resetForm("queryForms");
this.handleQuery(); this.handleQuery();
}, },
// //
@ -988,7 +989,7 @@ export default {
::v-deep .el-input-group { ::v-deep .el-input-group {
width: 204px !important; width: 208px !important;
} }
.container { .container {

View File

@ -7,7 +7,7 @@
</el-col> </el-col>
<el-col :span="19" :xs="24"> <el-col :span="19" :xs="24">
<div ref="topform" class="form"> <div ref="topform" class="form">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" <el-form :model="queryParams" ref="queryForms" size="small" :inline="true" v-show="showSearch"
label-width="68px"> label-width="68px">
<el-form-item label="微信模版名称" prop="wechatTemplateName" label-width="100px"> <el-form-item label="微信模版名称" prop="wechatTemplateName" label-width="100px">
<el-input v-model="queryParams.wechatTemplateName" placeholder="请输入微信模版名称" clearable <el-input v-model="queryParams.wechatTemplateName" placeholder="请输入微信模版名称" clearable
@ -469,7 +469,7 @@ export default {
this.informationqueryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId this.informationqueryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId
this.queryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId this.queryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId
this.$refs.DepartmentList.resetQuery() this.$refs.DepartmentList.resetQuery()
this.resetForm("queryForm"); this.resetForm("queryForms");
this.handleQuery(); this.handleQuery();
}, },
// //

View File

@ -7,7 +7,7 @@
</el-col> </el-col>
<el-col :span="19" :xs="24"> <el-col :span="19" :xs="24">
<div ref="topform" class="form"> <div ref="topform" class="form">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" <el-form :model="queryParams" ref="queryForms" size="small" :inline="true" v-show="showSearch"
label-width="68px" @submit.native.prevent> label-width="68px" @submit.native.prevent>
<el-form-item label="手术名称" prop="operationName"> <el-form-item label="手术名称" prop="operationName">
<el-input v-model="queryParams.operationName" placeholder="请输入手术名称" clearable <el-input v-model="queryParams.operationName" placeholder="请输入手术名称" clearable
@ -296,7 +296,7 @@ export default {
this.informationqueryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId this.informationqueryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId
this.queryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId this.queryParams.hospitalAgencyId = JSON.parse(localStorage.getItem('user')).hospitalAgencyId
this.$refs.DepartmentList.resetQuery() this.$refs.DepartmentList.resetQuery()
this.resetForm("queryForm"); this.resetForm("queryForms");
this.handleQuery(); this.handleQuery();
}, },
// //

View File

@ -3,18 +3,8 @@
<el-row :gutter="20"> <el-row :gutter="20">
<!--部门数据--> <!--部门数据-->
<el-col :span="5" :xs="24"> <el-col :span="5" :xs="24">
<div class="left" ref="box"> <DepartmentList ref="DepartmentList" @clickdepartment="clickdepartment" :methods="'getDepartmentList'">
<div class="name">科室名称</div> </DepartmentList>
<div style="padding: 10px 0;">
<el-input v-model="departmentName" placeholder="请输入科室名称" clearable @keyup.enter.native="getTreeselect" />
</div>
<div class="listitem" v-for="(item, index) in deptOptions" :key="index" @click="clickDepartmenitem(item)">
<div :class="queryParams.departmentId == item.id ? 'allactive' : 'all'">
{{ item.departmentName }}
</div>
<span class="count">{{ item.countNum }}</span>
</div>
</div>
</el-col> </el-col>
<!--用户数据--> <!--用户数据-->
<el-col :span="19" :xs="24"> <el-col :span="19" :xs="24">
@ -106,22 +96,17 @@
<script> <script>
import { listQuestion, getQuestion, delQuestion, addQuestion, updateQuestion, getDepartmentList, selectUserDepartment, diseaseList, updateclassification } from "@/api/system/question"; import { listQuestion, getQuestion, delQuestion, addQuestion, updateQuestion, getDepartmentList, selectUserDepartment, diseaseList, updateclassification } from "@/api/system/question";
import DepartmentList from '../../components/DepartmentList.vue'
export default { export default {
components: {
DepartmentList,
},
name: "Question", name: "Question",
data() { data() {
return { return {
maxTableHeight: undefined, maxTableHeight: undefined,
classificationOpen: false, classificationOpen: false,
classificationform: {}, classificationform: {},
//
departmentName: '',
defaultProps: {
children: "children",
label: "label"
},
//
deptOptions: undefined,
// //
loading: true, loading: true,
// //
@ -155,14 +140,7 @@ export default {
} }
}; };
}, },
watch: {
//
departmentName(val) {
// this.getTreeselect()
}
},
created() { created() {
this.getTreeselect();
this.getList(); this.getList();
}, },
mounted() { mounted() {
@ -170,6 +148,17 @@ export default {
this.screenChange() this.screenChange()
}, },
methods: { methods: {
//
clickdepartment(item) {
this.queryParams.hospitalAgencyId = item.hospitalAgencyId
this.queryParams.hospitalAgencyName = item.hospitalAgencyName
this.queryParams.departmentId = item.itemid
this.departmentName = item.itemName
if (item.hospitalAgencyId) {
this.getList();
}
this.$forceUpdate()
},
clickDepartmenitem(item) { clickDepartmenitem(item) {
this.loading = true; this.loading = true;
this.queryParams.departmentId = item.id; this.queryParams.departmentId = item.id;
@ -193,6 +182,12 @@ export default {
// //
handleClassification(row) { handleClassification(row) {
this.classificationform = JSON.parse(JSON.stringify(row)) this.classificationform = JSON.parse(JSON.stringify(row))
let queryparam = {
hospitalAgencyId: this.queryParams.hospitalAgencyId
}
selectUserDepartment(queryparam).then(res => {
this.departmentlist = res.data
})
if (this.classificationform.departmentId) { if (this.classificationform.departmentId) {
let query = { let query = {
departmentId: this.classificationform.departmentId departmentId: this.classificationform.departmentId
@ -261,25 +256,6 @@ export default {
this.queryParams.departmentId = data.id; this.queryParams.departmentId = data.id;
this.handleQuery(); this.handleQuery();
}, },
//
filterNode(value, data) {
if (!value) return true;
return data.label.indexOf(value) !== -1;
},
/** 查询科室下拉树结构 */
getTreeselect() {
getDepartmentList({
departmentName: this.departmentName
}).then(response => {
// response.data.forEach(e => {
// e.label = e.departmentName
// })
this.deptOptions = response.data;
});
selectUserDepartment().then(res => {
this.departmentlist = res.data
})
},
/** 查询问卷基本信息列表 */ /** 查询问卷基本信息列表 */
getList() { getList() {
this.loading = true; this.loading = true;
@ -293,7 +269,6 @@ export default {
handleQuery() { handleQuery() {
this.queryParams.pageNum = 1; this.queryParams.pageNum = 1;
this.getList(); this.getList();
this.getTreeselect();
}, },
/** 重置按钮操作 */ /** 重置按钮操作 */
resetQuery() { resetQuery() {
@ -334,7 +309,6 @@ export default {
this.$modal.confirm('是否确认删除问卷?').then(function () { this.$modal.confirm('是否确认删除问卷?').then(function () {
return delQuestion(ids); return delQuestion(ids);
}).then(() => { }).then(() => {
this.getTreeselect();
this.getList(); this.getList();
this.$modal.msgSuccess("删除成功"); this.$modal.msgSuccess("删除成功");
}).catch(() => { }); }).catch(() => { });