Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
shidongli 2024-06-28 18:15:15 +08:00
commit faf455c369
15 changed files with 554 additions and 597 deletions

View File

@ -63,7 +63,7 @@ const mutations = {
}
}
},
DEL_RIGHT_VIEWS: (state, view) => {
const index = state.visitedViews.findIndex(v => v.path === view.path)
if (index === -1) {
@ -112,6 +112,15 @@ const actions = {
},
delView({ dispatch, state }, view) {
if (view.fullPath == '/task/manualReview') {
localStorage.removeItem('routeCheckStatus')
}
if (view.fullPath == "/patient/signRecord") {
localStorage.removeItem('serviceStatus')
}
if (view.fullPath == "/task/followup") {
localStorage.removeItem('nodeExecuteStatus')
}
return new Promise(resolve => {
dispatch('delVisitedView', view)
dispatch('delCachedView', view)
@ -135,6 +144,15 @@ const actions = {
},
delOthersViews({ dispatch, state }, view) {
if (view.fullPath != '/task/manualReview') {
localStorage.removeItem('routeCheckStatus')
}
if (view.fullPath != "/patient/signRecord") {
localStorage.removeItem('serviceStatus')
}
if (view.fullPath != "/task/followup") {
localStorage.removeItem('nodeExecuteStatus')
}
return new Promise(resolve => {
dispatch('delOthersVisitedViews', view)
dispatch('delOthersCachedViews', view)

View File

@ -1,7 +1,7 @@
<template>
<div style="background-color: #f1f3f5; padding-top: 16px">
<div slot="footer" class="topfooter">
<el-tabs v-model="activeNametab" @tab-click="handleClick">
<el-tabs v-model="activeNametab">
<el-tab-pane label="画像审核" name="portrait"></el-tab-pane>
<el-tab-pane label="路径审核" name="route"></el-tab-pane>
</el-tabs>
@ -230,9 +230,6 @@ export default {
this.portraitlistdata = val
console.log(this.portraitlistdata, '999999999')
},
handleClick(tab, event) {
console.log(tab, event, this.activeNametab);
},
//
ignore() {
// let manageRouteNodeIds = []

View File

@ -377,15 +377,24 @@ export default {
this.informationlist = res.data
loading.close();
})
.catch(()=>{
loading.close();
})
.catch(() => {
loading.close();
})
},
getlist() {
if (!this.routelist) {
const loading = this.$loading({
lock: true,
text: '加载中',
spinner: 'el-icon-loading',
background: 'rgba(255, 255, 255, 0.7)'
});
getRouteNodeInfo(this.$route.query.signRecordId).then(res => {
this.routelist = res.data
this.tab = 2
loading.close();
}).catch(err => {
loading.close();
})
} else {
this.tab = 2

View File

@ -1,39 +1,19 @@
<template>
<div class="app-container" ref="layout">
<el-tabs
v-model="queryParams.routeCheckStatus"
@tab-click="handleClick"
style="flex: 1"
>
<el-tabs v-model="queryParams.routeCheckStatus" @tab-click="handleClick" style="flex: 1">
<el-tab-pane label="未审核" name="UNAUDITED"></el-tab-pane>
<el-tab-pane label="已审核" name="AGREE"></el-tab-pane>
<el-tab-pane label="已忽略" name="DISAGREE"></el-tab-pane>
</el-tabs>
<div ref="topform" class="form">
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
label-width="80px"
>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="80px">
<el-form-item label="患者姓名" prop="patientName">
<el-input
v-model="queryParams.patientName"
placeholder="请输入患者姓名"
clearable
@keyup.enter.native="handleQuery"
style="width: 200px"
/>
<el-input v-model="queryParams.patientName" placeholder="请输入患者姓名" clearable @keyup.enter.native="handleQuery"
style="width: 200px" />
</el-form-item>
<el-form-item label="患者电话" prop="patientPhone">
<el-input
v-model="queryParams.patientPhone"
placeholder="请输入患者电话"
clearable
@keyup.enter.native="handleQuery"
style="width: 200px"
/>
<el-input v-model="queryParams.patientPhone" placeholder="请输入患者电话" clearable @keyup.enter.native="handleQuery"
style="width: 200px" />
</el-form-item>
<!-- <el-form-item
label="出院/就诊时间"
@ -52,160 +32,58 @@
</el-date-picker>
</el-form-item> -->
<el-form-item label="签约时间" prop="signTimeStart">
<el-date-picker
v-model="signTime"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
style="width: 300px"
value-format="yyyy-MM-dd"
end-placeholder="结束日期"
>
<el-date-picker v-model="signTime" type="daterange" range-separator="" start-placeholder="开始日期"
style="width: 300px" value-format="yyyy-MM-dd" end-placeholder="结束日期">
</el-date-picker>
</el-form-item>
<el-form-item label="诊断" prop="mainDiagnosis">
<el-input
v-model="queryParams.mainDiagnosis"
placeholder="请选择诊断"
clearable
style="width: 200px"
@keyup.enter.native="handleQuery"
/>
<el-input v-model="queryParams.mainDiagnosis" placeholder="请选择诊断" clearable style="width: 200px"
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="患者来源" prop="patientSource">
<el-select
v-model="queryParams.patientSource"
placeholder="请选择患者来源"
clearable
style="width: 200px"
>
<el-option
v-for="dict in dict.type.patient_source"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
<el-select v-model="queryParams.patientSource" placeholder="请选择患者来源" clearable style="width: 200px">
<el-option v-for="dict in dict.type.patient_source" :key="dict.value" :label="dict.label"
:value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="医院" prop="hospitalAgencyId">
<el-select
v-model="queryParams.hospitalAgencyId"
filterable
placeholder="请选择医院"
style="width: 200px"
clearable
@clear="clearhospitalAgency"
@change="changehospitalAgency"
>
<el-option
v-for="item in hospitalAgencylist"
:key="item.id"
:label="item.agencyName"
:value="item.id"
>
<el-select v-model="queryParams.hospitalAgencyId" filterable placeholder="请选择医院" style="width: 200px"
clearable @clear="clearhospitalAgency" @change="changehospitalAgency">
<el-option v-for="item in hospitalAgencylist" :key="item.id" :label="item.agencyName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item
label="院区"
prop="campusAgencyId"
v-if="queryParams.hospitalAgencyId"
>
<el-select
v-model="queryParams.campusAgencyId"
filterable
placeholder="请选择院区"
style="width: 200px"
clearable
@clear="clearcampusAgency"
@change="changecampusAgency"
>
<el-option
v-for="item in campusAgencylist"
:key="item.id"
:label="item.agencyName"
:value="item.id"
>
<el-form-item label="院区" prop="campusAgencyId" v-if="queryParams.hospitalAgencyId">
<el-select v-model="queryParams.campusAgencyId" filterable placeholder="请选择院区" style="width: 200px" clearable
@clear="clearcampusAgency" @change="changecampusAgency">
<el-option v-for="item in campusAgencylist" :key="item.id" :label="item.agencyName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item
label="科室"
prop="departmentId"
v-if="queryParams.hospitalAgencyId"
>
<el-select
v-model="queryParams.departmentId"
filterable
placeholder="请选择科室"
style="width: 200px"
clearable
@clear="cleardepartment"
@change="changedepartment"
>
<el-option
v-for="item in departmentlist"
:key="item.id"
:label="item.departmentName"
:value="item.id"
>
<el-form-item label="科室" prop="departmentId" v-if="queryParams.hospitalAgencyId">
<el-select v-model="queryParams.departmentId" filterable placeholder="请选择科室" style="width: 200px" clearable
@clear="cleardepartment" @change="changedepartment">
<el-option v-for="item in departmentlist" :key="item.id" :label="item.departmentName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item
label="病区"
prop="wardId"
v-if="queryParams.hospitalAgencyId"
>
<el-select
v-model="queryParams.wardId"
filterable
placeholder="请选择病区"
style="width: 200px"
clearable
>
<el-option
v-for="item in wardlist"
:key="item.id"
:label="item.departmentName"
:value="item.id"
>
<el-form-item label="病区" prop="wardId" v-if="queryParams.hospitalAgencyId">
<el-select v-model="queryParams.wardId" filterable placeholder="请选择病区" style="width: 200px" clearable>
<el-option v-for="item in wardlist" :key="item.id" :label="item.departmentName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
</div>
<div ref="table">
<el-table
:max-height="maxTableHeight"
v-loading="loading"
:data="patientInfoList"
>
<el-table :max-height="maxTableHeight" v-loading="loading" :data="patientInfoList">
<el-table-column label="序号" type="index" width="50" align="center" />
<el-table-column
label="患者姓名"
align="center"
prop="patientName"
width="80"
/>
<el-table-column
label="患者电话"
align="center"
prop="patientPhone"
width="120"
/>
<el-table-column label="患者姓名" align="center" prop="patientName" width="80" />
<el-table-column label="患者电话" align="center" prop="patientPhone" width="120" />
<el-table-column label="性别" align="center" prop="sex" width="50">
<template slot-scope="scope">
{{ scope.row.sex == "MALE" ? "男" : "" }}
@ -213,38 +91,13 @@
</template>
</el-table-column>
<el-table-column label="年龄" align="center" prop="age" width="50" />
<el-table-column
label="出生日期"
align="center"
prop="birthDate"
width="100"
/>
<el-table-column
label="医院"
align="center"
prop="hospitalAgencyName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="院区"
align="center"
prop="campusAgencyName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="科室名称"
align="center"
prop="departmentName"
:show-overflow-tooltip="true"
/>
<el-table-column label="出生日期" align="center" prop="birthDate" width="100" />
<el-table-column label="医院" align="center" prop="hospitalAgencyName" :show-overflow-tooltip="true" />
<el-table-column label="院区" align="center" prop="campusAgencyName" :show-overflow-tooltip="true" />
<el-table-column label="科室名称" align="center" prop="departmentName" :show-overflow-tooltip="true" />
<el-table-column label="病区名称" align="center" prop="wardName" />
<el-table-column
label="住院/门诊号"
align="center"
prop="inHospitalNumber"
width="105"
:show-overflow-tooltip="true"
/>
<el-table-column label="住院/门诊号" align="center" prop="inHospitalNumber" width="105"
:show-overflow-tooltip="true" />
<!-- <el-table-column label="就诊方式" align="center" prop="visitMethod" width="80"> -->
<!-- <template slot-scope="scope">
<dict-tag :options="dict.type.patient_source" :value="scope.row.visitMethod" />
@ -252,48 +105,24 @@
<!-- </el-table-column> -->
<el-table-column label="就诊方式" align="center" prop="visitMethod">
<template slot-scope="scope">
<dict-tag
:options="dict.type.visit_method"
:value="scope.row.visitMethod"
/>
<dict-tag :options="dict.type.visit_method" :value="scope.row.visitMethod" />
</template>
</el-table-column>
<!-- <el-table-column label="医生" align="center" prop="attendingPhysicianName" width="80" :show-overflow-tooltip="true"/> -->
<el-table-column
label="主要诊断"
align="center"
prop="signDiagnosis"
:show-overflow-tooltip="true"
width="100"
/>
<el-table-column
label="签约时间"
align="center"
prop="signTime"
width="100"
>
<el-table-column label="主要诊断" align="center" prop="signDiagnosis" :show-overflow-tooltip="true" width="100" />
<el-table-column label="签约时间" align="center" prop="signTime" width="100">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.signTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
<el-table-column
label="画像审核状态"
align="center"
prop="portaitCheckStatus"
width="100"
>
<el-table-column label="画像审核状态" align="center" prop="portaitCheckStatus" width="100">
<template slot-scope="scope">
{{ scope.row.portaitCheckStatus == "AGREE" ? "审核通过" : "" }}
{{ scope.row.portaitCheckStatus == "DISAGREE" ? "已忽略" : "" }}
{{ scope.row.portaitCheckStatus == "" ? "未审核" : "" }}
</template>
</el-table-column>
<el-table-column
label="路径审核状态"
align="center"
prop="routeCheckStatus"
width="100"
>
<el-table-column label="路径审核状态" align="center" prop="routeCheckStatus" width="100">
<template slot-scope="scope">
{{ scope.row.routeCheckStatus == "AGREE" ? "审核通过" : "" }}
{{ scope.row.routeCheckStatus == "DISAGREE" ? "已忽略" : "" }}
@ -301,38 +130,18 @@
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
fixed="right"
>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
@click="handleAuthRole(scope.row)"
v-if="queryParams.routeCheckStatus == 'UNAUDITED'"
>审核</el-button
>
<el-button
size="mini"
type="text"
@click="handleLook(scope.row)"
v-if="queryParams.routeCheckStatus != 'UNAUDITED'"
>查看</el-button
>
<el-button size="mini" type="text" @click="handleAuthRole(scope.row)"
v-if="queryParams.routeCheckStatus == 'UNAUDITED'">审核</el-button>
<el-button size="mini" type="text" @click="handleLook(scope.row)"
v-if="queryParams.routeCheckStatus != 'UNAUDITED'">查看</el-button>
</template>
</el-table-column>
</el-table>
</div>
<myPagination
v-show="total > 0"
:total="total"
:pageSize="queryParams.pageSize"
:indexFromWrap="queryParams.pageNum"
@updateCPage="updateCPage"
></myPagination>
<myPagination v-show="total > 0" :total="total" :pageSize="queryParams.pageSize"
:indexFromWrap="queryParams.pageNum" @updateCPage="updateCPage"></myPagination>
</div>
</template>
@ -405,6 +214,9 @@ export default {
};
},
created() {
if (localStorage.getItem('routeCheckStatus')) {
this.queryParams.routeCheckStatus = localStorage.getItem('routeCheckStatus')
}
this.getList();
this.selectAgencyinfo();
},
@ -419,6 +231,7 @@ export default {
this.getList();
},
handleClick(tab, event) {
localStorage.setItem('routeCheckStatus', this.queryParams.routeCheckStatus)
this.dischargeTime = [];
this.queryParams.dischargeTimeStart = null;
this.queryParams.dischargeTimeEnd = null;
@ -455,7 +268,7 @@ export default {
query: {
patientId: row.patientId,
signRecordId: row.id,
routeCheckStatus:row.routeCheckStatus
routeCheckStatus: row.routeCheckStatus
},
});
},

View File

@ -355,6 +355,9 @@ export default {
};
},
created() {
if (localStorage.getItem('serviceStatus')) {
this.queryParams.serviceStatus = localStorage.getItem('serviceStatus')
}
this.selectAgencyinfo();
},
mounted() {
@ -477,18 +480,19 @@ export default {
//
addTask() {
if (this.addTaskitem) {
this.$store.dispatch('tagsView/delView', this.$route).then(({ visitedViews }) => {
this.$router.push({
path: "/patient/ManuallyCreatingTasks",
query: {
signPatientRecordId: this.addTaskitem.id,
patientId: this.addTaskitem.patientId,
patientName: this.addTaskitem.patientName,
departmentId: this.addTaskitem.departmentId,
departmentName: this.addTaskitem.departmentName,
},
});
})
localStorage.setItem('serviceStatus', this.queryParams.serviceStatus)
// this.$store.dispatch('tagsView/delView', this.$route).then(({ visitedViews }) => {
this.$router.push({
path: "/patient/ManuallyCreatingTasks",
query: {
signPatientRecordId: this.addTaskitem.id,
patientId: this.addTaskitem.patientId,
patientName: this.addTaskitem.patientName,
departmentId: this.addTaskitem.departmentId,
departmentName: this.addTaskitem.departmentName,
},
});
// })
} else {
this.$message.error('请先选择一名签约服务中患者');
}
@ -538,6 +542,7 @@ export default {
}, `signRecord_${new Date().getTime()}.xlsx`)
},
handleClick(tab, event) {
localStorage.setItem('serviceStatus', this.queryParams.serviceStatus)
this.intentionalTime = []
this.queryParams.intentionalTimeStart = null
this.queryParams.intentionalTimeEnd = null
@ -548,28 +553,28 @@ export default {
this.getList();
},
handlenewsign(row) {
this.$store.dispatch('tagsView/delView', this.$route).then(({ visitedViews }) => {
this.$router.replace({
path: "/patient/newSigning",
query: {
departmentId: row.departmentId,
patientName: row.patientName,
patientPhone: row.patientPhone,
visitMethod: row.visitMethod,
signDiagnosis: row.signDiagnosis,
visitSerialNumber: row.visitSerialNumber,
hospitalAgencyName: row.hospitalAgencyName,
hospitalAgencyId: row.hospitalAgencyId,
inHospitalNumber: row.inHospitalNumber,
departmentName: row.departmentName,
paymentStatus: row.paymentStatus,
sex: row.sex,
age: row.birthDate ? getAge(row.birthDate) : '',
patientId: row.patientId,
createTime: row.createTime,
},
});
})
// this.$store.dispatch('tagsView/delView', this.$route).then(({ visitedViews }) => {
this.$router.replace({
path: "/patient/newSigning",
query: {
departmentId: row.departmentId,
patientName: row.patientName,
patientPhone: row.patientPhone,
visitMethod: row.visitMethod,
signDiagnosis: row.signDiagnosis,
visitSerialNumber: row.visitSerialNumber,
hospitalAgencyName: row.hospitalAgencyName,
hospitalAgencyId: row.hospitalAgencyId,
inHospitalNumber: row.inHospitalNumber,
departmentName: row.departmentName,
paymentStatus: row.paymentStatus,
sex: row.sex,
age: row.birthDate ? getAge(row.birthDate) : '',
patientId: row.patientId,
createTime: row.createTime,
},
});
// })
},
selectAgencyinfo() {
let query = {
@ -665,16 +670,16 @@ export default {
},
//
handleContinue(row) {
this.$store.dispatch('tagsView/delView', this.$route).then(({ visitedViews }) => {
this.$router.replace({
path: "/patient/continueSigning",
query: {
hospitalAgencyId: row.hospitalAgencyId,
hospitalAgencyName: row.hospitalAgencyName,
patientSignRecordId: row.id,
},
});
})
// this.$store.dispatch('tagsView/delView', this.$route).then(({ visitedViews }) => {
this.$router.replace({
path: "/patient/continueSigning",
query: {
hospitalAgencyId: row.hospitalAgencyId,
hospitalAgencyName: row.hospitalAgencyName,
patientSignRecordId: row.id,
},
});
// })
},
/** 详情操作 */
handleAuthRole(row) {

View File

@ -2,7 +2,7 @@
<div class="app-container">
<el-descriptions title="编辑触发条件" style="height: 25px; width: 99px" />
<div class="title">
<div :class="show3 == false ? 'title' : 'titlement'">
<!-- <div >触发条件</div> -->
<div class="nodes">
<!-- 一级 -->
@ -30,7 +30,8 @@
@change="changetriggerLogic($event, index)"
>
<el-option
v-for="item in openlist.triggerConditionList.optionstriggerConditionOperator"
v-for="item in openlist.triggerConditionList
.optionstriggerConditionOperator"
:key="item.dictValue"
:label="item.dictLabel"
:value="item.dictValue"
@ -127,7 +128,8 @@
@change="changetriggerLogic($event, index)"
>
<el-option
v-for="item in openlist.triggerConditionList.optionstriggerConditionOperator"
v-for="item in openlist.triggerConditionList
.optionstriggerConditionOperator"
:key="item.dictValue"
:label="item.dictLabel"
:value="item.dictValue"
@ -205,7 +207,7 @@
</span>
</div>
</div>
<div class="list">
<div :class="show3 == true ? 'listment' : 'list'">
<div class="timelist">
<div class="timetitle">
管理路径节点({{ lists.length }})
@ -276,7 +278,7 @@
<el-form-item label="任务类型" prop="">
<el-select
v-model="form.taskType"
style="width: 110px"
style="width: 130px"
@change="changeTaskType"
>
<el-option
@ -291,7 +293,7 @@
<el-form-item label="任务细分" prop="">
<el-select
v-model="form.taskSubdivision"
style="width: 110px"
style="width: 130px"
@change="changetaskSubdivision"
>
<el-option
@ -317,7 +319,7 @@
<el-form-item label="二级分类描述" prop="">
<el-input
v-model="form.secondClassifyDescribe"
style="width: 110px"
style="width: 130px"
disabled
></el-input>
</el-form-item>
@ -849,7 +851,7 @@ export default indexjs;
}
.dialog-footer {
padding: 0px 30px;
padding: 4px 20px 0 30px;
text-align: right;
}
@ -966,7 +968,7 @@ export default indexjs;
.topform {
padding: 15px 0 0 15px;
height: 200px;
height: 150px;
.form {
::v-deep .el-input__inner {
@ -980,10 +982,10 @@ export default indexjs;
}
}
.title {
.titlement {
display: flex;
margin-left: 100px;
// height: 15vh;
.select {
font-weight: 550;
// margin-left: 10%;
@ -999,14 +1001,33 @@ export default indexjs;
}
}
}
.title {
display: flex;
margin-left: 100px;
height: 7vh;
.select {
font-weight: 550;
// margin-left: 10%;
position: relative;
right: 20px;
// width: 300px;
font-size: 13px;
.el-input {
width: 200px;
height: 30px !important;
line-height: 30px !important;
}
}
}
// .container {
// padding: 20px;
// }
.list {
.listment {
margin: 12px auto;
width: 100%;
// height: calc(100% - 80px);
// height: 60vh;
// height: calc(100% - 220px);
background-color: #f2f4f5;
display: flex;
padding-top: 15px;
@ -1041,6 +1062,45 @@ export default indexjs;
background-color: #fff;
}
}
.list {
// margin: 12px auto;
width: 100%;
height: 69vh;
// height: calc(100% - 80px);
background-color: #f2f4f5;
display: flex;
padding-top: 15px;
justify-content: space-evenly;
.timelist {
width: 25%;
background-color: #fff;
padding: 0 20px 20px;
// height: calc(100vh - 350px);
overflow: scroll;
.timetitle {
height: 60px;
display: flex;
align-items: center;
justify-content: space-between;
}
::v-deep .el-timeline {
width: 100%;
padding: 15px 0 0 !important;
}
}
.texts {
width: 73%;
// height: calc(100vh - 350px);
overflow: scroll;
background-color: #fff;
}
}
.cards {
border: 1px solid #409eff;

View File

@ -590,11 +590,12 @@ export default {
},
//wangeditor传值
onNodeContent(item) {
this.form.nodeContent = item.nodeContent;
if (this.form.nodeContent) {
if (item.nodeContent) {
this.form.nodeContent = item.nodeContent;
var abc = new RegExp("<br>", "g");
var bbb = this.form.nodeContent.replace(abc, "");
this.form.nodeContent = bbb;
console.log(this.form.nodeContent, 'this.form.nodeContent')
}
},
@ -699,13 +700,12 @@ export default {
},
bottomclickevent(uitem, index, uindex) {
// if (
// this.form.taskSubdivisiontemplateType != "QUESTIONNAIRE" &&
// this.form.taskSubdivisiontemplateType != "PROPAGANDA"
// ) {
// console.log()
this.$refs.wangeditor.emit();
// }
if (
this.form.taskSubdivisiontemplateType != "QUESTIONNAIRE" &&
this.form.taskSubdivisiontemplateType != "PROPAGANDA"
) {
this.$refs.wangeditor.emit();
}
setTimeout(() => {
this.form = uitem;
this.taskPartitionList = [];

View File

@ -1,6 +1,7 @@
<template>
<div class="app-container">
<el-button size="small" @click="classificationOpen = true" style="width: 200px;font-size:14px;text-align:left;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;"
<el-button size="small" @click="classificationOpen = true"
style="width: 200px;font-size:14px;text-align:left;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;"
:style="handleselectName ? 'color:black' : 'color:#C0C4CC'">{{ handleselectName ? handleselectName : '选择短信模板'
}}</el-button>
<el-dialog title="短信库模板选择" :visible.sync="classificationOpen" width="70%" :before-close="classificationOpenfalse">
@ -68,10 +69,10 @@
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" />
</el-col>
</el-row>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList" />
</el-dialog>
</div>
</template>
@ -168,7 +169,7 @@ export default {
this.$emit("on-template", { templateId: '', templateName: '', templateContent: "" });
},
handleselect(item) {
console.log(item.id,'id')
console.log(item.id, 'id')
this.handleselectId = item.id
this.handleselectName = item.textMessageName
this.$emit("on-template", { templateId: item.id, templateName: item.textMessageName, templateContent: item.templateContent });
@ -238,6 +239,10 @@ export default {
padding: 0 !important;
}
::v-deep .el-dialog__body {
padding-bottom: 60px;
}
::v-deep .el-input-number .el-input__inner {
text-align: left;
}

View File

@ -1,6 +1,7 @@
<template>
<div class="app-container">
<el-button size="small" @click="classificationOpen = true" style="width: 200px;font-size:14px;text-align:left;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;"
<el-button size="small" @click="classificationOpen = true"
style="width: 200px;font-size:14px;text-align:left;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;"
:style="handleselectName ? 'color:black' : 'color:#C0C4CC'">{{ handleselectName ? handleselectName :
'选择公众号模板' }}</el-button>
<el-dialog title="公众号模板选择" :visible.sync="classificationOpen" width="70%"
@ -69,10 +70,10 @@
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" />
</el-col>
</el-row>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" />
</el-dialog>
</div>
</template>
@ -235,6 +236,10 @@ export default {
text-align: left;
}
::v-deep .el-dialog__body {
padding-bottom: 60px;
}
.app-container {
display: inline-block;
padding: 0 !important;

View File

@ -70,10 +70,10 @@
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" />
</el-col>
</el-row>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" />
</el-dialog>
</div>
</template>
@ -236,6 +236,10 @@ export default {
text-align: left;
}
::v-deep .el-dialog__body {
padding-bottom: 60px;
}
.app-container {
display: inline-block;
padding: 0 !important;

View File

@ -1,6 +1,7 @@
<template>
<div class="app-container">
<el-button size="small" @click="classificationOpen = true" style="width: 200px;font-size:14px;text-align:left;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;"
<el-button size="small" @click="classificationOpen = true"
style="width: 200px;font-size:14px;text-align:left;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;"
:style="handleselectName ? 'color:black' : 'color:#C0C4CC'">{{ handleselectName ? handleselectName :
'选择宣教模板' }}</el-button>
<el-dialog title="宣教库模板选择" :visible.sync="classificationOpen" width="70%"
@ -77,10 +78,10 @@
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" />
</el-col>
</el-row>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" />
</el-dialog>
</div>
</template>
@ -284,6 +285,10 @@ export default {
padding: 0 !important;
}
::v-deep .el-dialog__body {
padding-bottom: 60px;
}
.propagandaselect {
width: 100px;
height: 100px;

View File

@ -1,6 +1,7 @@
<template>
<div class="app-container">
<el-button size="small" @click="classificationOpen = true" style="width: 200px;font-size:14px;text-align:left;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;"
<el-button size="small" @click="classificationOpen = true"
style="width: 200px;font-size:14px;text-align:left;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;"
:style="handleselectName ? 'color:black' : 'color:#C0C4CC'">{{ handleselectName ? handleselectName :
'选择问卷模板' }}</el-button>
<el-dialog title="问卷库模板选择" :visible.sync="classificationOpen" width="70%"
@ -63,10 +64,10 @@
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" />
</el-col>
</el-row>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" />
</el-dialog>
</div>
</template>
@ -200,6 +201,10 @@ export default {
};
</script>
<style scoped lang="scss">
::v-deep .el-dialog__body {
padding-bottom: 60px;
}
.app-container {
padding: 0 !important;
display: inline-block;

View File

@ -1,53 +1,30 @@
<template>
<div class="app-container">
<el-button
size="small"
@click="classificationOpen = true"
style="
<el-button size="small" @click="classificationOpen = true" style="
width: 200px;
font-size: 14px;
text-align: left;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
"
:style="handleselectName ? 'color:black' : 'color:#C0C4CC'"
>{{ handleselectName ? handleselectName : "请选择" }}</el-button
>
<el-dialog
title="话书库模板选择"
:visible.sync="classificationOpen"
width="70%"
:before-close="classificationOpenfalse"
>
" :style="handleselectName ? 'color:black' : 'color:#C0C4CC'">{{ handleselectName ? handleselectName : "请选择"
}}</el-button>
<el-dialog title="话书库模板选择" :visible.sync="classificationOpen" width="70%" :before-close="classificationOpenfalse">
<el-row :gutter="20">
<!--部门数据-->
<el-col :span="6" :xs="24">
<div class="leftscript" ref="box">
<div class="name">科室名称</div>
<div>
<el-input
v-model="name"
placeholder="请输入科室名称"
clearable
@keyup.enter.native="handleQuery"
/>
<el-input v-model="name" placeholder="请输入科室名称" clearable @keyup.enter.native="handleQuery" />
</div>
<div class="listitem">
<div
:class="itemname == null ? 'allactive' : 'all'"
@click="itemdata()"
>
<div :class="itemname == null ? 'allactive' : 'all'" @click="itemdata()">
全部
</div>
<span class="count">{{ count }}</span>
</div>
<div
class="listitem"
v-for="(item, index) in DepartmentoList"
:key="index"
@click="itemdata(item)"
>
<div class="listitem" v-for="(item, index) in DepartmentoList" :key="index" @click="itemdata(item)">
<div :class="itemname == item.id ? 'allactive' : 'all'">
{{ item.departmentName }}
</div>
@ -57,138 +34,50 @@
</el-col>
<!--用户数据-->
<el-col :span="18" :xs="24">
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="100px"
>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch"
label-width="100px">
<el-form-item label="通用话术名称" prop="commonScriptName">
<el-input
v-model="queryParams.commonScriptName"
placeholder="请输入通用话术名称"
clearable
@keyup.enter.native="handleQuery"
/>
<el-input v-model="queryParams.commonScriptName" placeholder="请输入通用话术名称" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="话术名称" prop="scriptName">
<el-input
v-model="queryParams.scriptName"
placeholder="请输入话术名称"
clearable
@keyup.enter.native="handleQuery"
/>
<el-input v-model="queryParams.scriptName" placeholder="请输入话术名称" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="话术ID" prop="scriptId">
<el-input
v-model="queryParams.scriptId"
placeholder="请输入话术ID"
clearable
@keyup.enter.native="handleQuery"
/>
<el-input v-model="queryParams.scriptId" placeholder="请输入话术ID" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="平台ID" prop="platformId">
<el-input
v-model="queryParams.platformId"
placeholder="请输入平台ID"
clearable
@keyup.enter.native="handleQuery"
/>
<el-input v-model="queryParams.platformId" placeholder="请输入平台ID" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-table
v-loading="loading"
:data="scriptList"
@row-dblclick="handleselect"
>
<el-table-column
label="序号"
align="center"
prop="sort"
type="index"
/>
<el-table-column
label="通用话术名称"
align="center"
prop="commonScriptName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="话术名称"
align="center"
prop="scriptName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="话术ID"
align="center"
prop="scriptId"
:show-overflow-tooltip="true"
/>
<el-table-column
label="平台ID"
align="center"
prop="platformId"
:show-overflow-tooltip="true"
/>
<el-table-column
label="话术简介"
align="center"
prop="scriptIntroduction"
:show-overflow-tooltip="true"
/>
<el-table-column
label="病种名称"
align="center"
prop="diseaseTypeName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<el-table v-loading="loading" :data="scriptList" @row-dblclick="handleselect">
<el-table-column label="序号" align="center" prop="sort" type="index" />
<el-table-column label="通用话术名称" align="center" prop="commonScriptName" :show-overflow-tooltip="true" />
<el-table-column label="话术名称" align="center" prop="scriptName" :show-overflow-tooltip="true" />
<el-table-column label="话术ID" align="center" prop="scriptId" :show-overflow-tooltip="true" />
<el-table-column label="平台ID" align="center" prop="platformId" :show-overflow-tooltip="true" />
<el-table-column label="话术简介" align="center" prop="scriptIntroduction" :show-overflow-tooltip="true" />
<el-table-column label="病种名称" align="center" prop="diseaseTypeName" :show-overflow-tooltip="true" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
@click="handleselect(scope.row)"
v-if="handleselectId != scope.row.id"
>选择</el-button
>
<el-button
size="mini"
type="text"
@click="nohandleselect(scope.row)"
v-if="handleselectId == scope.row.id"
>取消选择</el-button
>
<el-button size="mini" type="text" @click="handleselect(scope.row)"
v-if="handleselectId != scope.row.id">选择</el-button>
<el-button size="mini" type="text" @click="nohandleselect(scope.row)"
v-if="handleselectId == scope.row.id">取消选择</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</el-col>
</el-row>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList" />
</el-dialog>
</div>
</template>
@ -386,6 +275,10 @@ export default {
text-align: left;
}
::v-deep .el-dialog__body {
padding-bottom: 60px;
}
.app-container {
display: inline-block;
padding: 0 !important;

View File

@ -270,6 +270,9 @@ export default {
};
},
created() {
if (localStorage.getItem('nodeExecuteStatus')) {
this.queryParams.nodeExecuteStatus = localStorage.getItem('nodeExecuteStatus')
}
this.getList();
this.selectAgencyinfo();
},
@ -284,10 +287,11 @@ export default {
this.getList();
},
handleClick(tab, event) {
this.intentionalTime = [],
this.mzTime = [],
this.ryTime = [],
this.queryParams.dischargeStartTime = null
localStorage.setItem('nodeExecuteStatus', this.queryParams.nodeExecuteStatus)
this.intentionalTime = []
this.mzTime = []
this.ryTime = []
this.queryParams.dischargeStartTime = null
this.queryParams.dischargeEndTime = null
this.queryParams.clinicalStartTime = null
this.queryParams.clinicalEndTime = null
@ -642,15 +646,6 @@ export default {
}
});
},
// handleClick(tab, event) {
// this.intentionalTime = [];
// this.queryParams.startDate = null;
// this.queryParams.endDate = null;
// // this.signTime = []
// // this.queryParams.signTimeStart = null
// // this.queryParams.signTimeEnd = null
// this.getList();
// },
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;

View File

@ -2,8 +2,18 @@
<div class="header">
<div class="topheader">
<div class="user">
<img class="headsculpture" src="../../../assets/manage/touxiang.png" alt="" v-if="list.sex == 'MALE'" />
<img class="headsculpture" src="../../../assets/manage/nvtouxiang.png" alt="" v-if="list.sex == 'FEMALE'" />
<img
class="headsculpture"
src="../../../assets/manage/touxiang.png"
alt=""
v-if="list.sex == 'MALE'"
/>
<img
class="headsculpture"
src="../../../assets/manage/nvtouxiang.png"
alt=""
v-if="list.sex == 'FEMALE'"
/>
<div class="name">
{{ list.patientName }}
</div>
@ -37,83 +47,187 @@
<div class="bottomheader">
<div style="display: flex">
<!-- 问卷模板 -->
<div class="right" v-if="$route.query.taskType == 'QUESTIONNAIRE_SCALE' ||
$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'
">
<div style="float: right; margin-top: 20px" v-if="$route.query.taskType == 'QUESTIONNAIRE_SCALE' ||
$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'
">
<el-form :inline="true" class="demo-form-inline" :model="questiondata" :rules="rules" ref="questiondata">
<div
class="right"
v-if="
$route.query.taskType == 'QUESTIONNAIRE_SCALE' ||
$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'
"
>
<div
style="float: right; margin-top: 20px"
v-if="
$route.query.taskType == 'QUESTIONNAIRE_SCALE' ||
$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'
"
>
<el-form
:inline="true"
class="demo-form-inline"
:model="questiondata"
:rules="rules"
ref="questiondata"
>
<el-form-item label="任务处理信息" prop="routeHandleRemark">
<el-input type="textarea" placeholder="请输入任务处理信息" v-model="questiondata.routeHandleRemark" />
<el-input
type="textarea"
placeholder="请输入任务处理信息"
v-model="questiondata.routeHandleRemark"
/>
</el-form-item>
</el-form>
</div>
<div class="sport" v-if="$route.query.taskType == 'QUESTIONNAIRE_SCALE'">
<div
class="sport"
v-if="$route.query.taskType == 'QUESTIONNAIRE_SCALE'"
>
问卷模板: Barthel指数评定问卷
</div>
<div class="words" v-if="$route.query.taskType == 'QUESTIONNAIRE_SCALE'">
<div
class="words"
v-if="$route.query.taskType == 'QUESTIONNAIRE_SCALE'"
>
您好!本问卷用于评估日常生活能力请根据自身日常实际表现选择合适的选项
</div>
<div class="sport" v-if="$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'">
<div
class="sport"
v-if="$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'"
>
人工随访模板: 神经内科人工随访
</div>
<div class="words" v-if="$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'">
<div
class="words"
v-if="$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'"
>
**您好!
</div>
<div class="words" v-if="$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'">
<div
class="words"
v-if="$route.query.taskType == 'ARTIFICIAL_FOLLOW_UP'"
>
我是医院的工作人员今天给您打电话想要了解一下您的恢复情况
</div>
<div class="words" v-for="(item, index) in questiondata.questionSubjectList" :key="index">
<div
class="words"
v-for="(item, index) in questiondata.questionSubjectList"
:key="index"
>
{{ index + 1 }}.{{ item.questionName }}
<span v-if="item.questionType == 'MULTIPLE_CHOICE'">单选题</span>
<span v-if="item.questionType == 'MULTIPLE_CHOICE_QUESTIONS'">多选题</span>
<span v-if="item.questionType == 'SCORING_QUESTIONS'">打分题</span>
<span v-if="item.questionType == 'COMBINATION_RADIO_SUBJECT'">组合单选题</span>
<span v-if="item.questionType == 'COMBINATION_MULTIPLE_SUBJECT'">组合多选题</span>
<span v-if="item.questionType == 'COMBINATION_BLANKS_SUBJECT'">组合填空题</span>
<span v-if="item.questionType == 'FILL_IN_THE_BLANKS'">填空题</span>
<span v-if="item.questionType == 'COMBINATION_SCORING_SUBJECT'">组合打分题</span>
<span v-if="item.questionType == 'DATE_BLANKS_SUBJECT'">日期填空题</span>
<span v-if="item.questionType == 'TIME_BLANKS_SUBJECT'">时间填空题</span>
<el-radio-group v-if="item.questionType == 'MULTIPLE_CHOICE' ||
item.questionType == 'COMBINATION_RADIO_SUBJECT' ||
item.questionType == 'SCORING_QUESTIONS' ||
item.questionType == 'COMBINATION_SCORING_SUBJECT'
" v-model="questiondata[index]" class="custom-radio-group" @change="radioGroupChange($event, item)">
<el-radio class="custom" v-for="(aitem, aindex) in item.questionSubjectOptionList" :key="aindex"
:label="aitem.id" @change="radioChange($event, aitem, index)">{{ aitem.optionName }}</el-radio>
<span v-if="item.questionType == 'MULTIPLE_CHOICE'"
>单选题</span
>
<span v-if="item.questionType == 'MULTIPLE_CHOICE_QUESTIONS'"
>多选题</span
>
<span v-if="item.questionType == 'SCORING_QUESTIONS'"
>打分题</span
>
<span v-if="item.questionType == 'COMBINATION_RADIO_SUBJECT'"
>组合单选题</span
>
<span v-if="item.questionType == 'COMBINATION_MULTIPLE_SUBJECT'"
>组合多选题</span
>
<span v-if="item.questionType == 'COMBINATION_BLANKS_SUBJECT'"
>组合填空题</span
>
<span v-if="item.questionType == 'FILL_IN_THE_BLANKS'"
>填空题</span
>
<span v-if="item.questionType == 'COMBINATION_SCORING_SUBJECT'"
>组合打分题</span
>
<span v-if="item.questionType == 'DATE_BLANKS_SUBJECT'"
>日期填空题</span
>
<span v-if="item.questionType == 'TIME_BLANKS_SUBJECT'"
>时间填空题</span
>
<el-radio-group
v-if="
item.questionType == 'MULTIPLE_CHOICE' ||
item.questionType == 'COMBINATION_RADIO_SUBJECT' ||
item.questionType == 'SCORING_QUESTIONS' ||
item.questionType == 'COMBINATION_SCORING_SUBJECT'
"
v-model="questiondata[index]"
class="custom-radio-group"
@change="radioGroupChange($event, item)"
>
<el-radio
class="custom"
v-for="(aitem, aindex) in item.questionSubjectOptionList"
:key="aindex"
:label="aitem.id"
@change="radioChange($event, aitem, index)"
>{{ aitem.optionName }}</el-radio
>
</el-radio-group>
<!-- 多选组合多选 -->
<el-checkbox-group v-model="checkeddata" @change="radioGroupChange($event, item, 'checkbox')" v-if="item.questionType == 'MULTIPLE_CHOICE_QUESTIONS' ||
item.questionType == 'COMBINATION_MULTIPLE_SUBJECT'
">
<el-checkbox v-for="(aitem, aindex) in item.questionSubjectOptionList" :key="aindex" :label="aitem.id"
@change="radioChangecheck($event, aitem, index, aindex)">{{ aitem.optionName }}</el-checkbox>
<el-checkbox-group
v-model="checkeddata"
@change="radioGroupChange($event, item, 'checkbox')"
v-if="
item.questionType == 'MULTIPLE_CHOICE_QUESTIONS' ||
item.questionType == 'COMBINATION_MULTIPLE_SUBJECT'
"
>
<el-checkbox
v-for="(aitem, aindex) in item.questionSubjectOptionList"
:key="aindex"
:label="aitem.id"
@change="radioChangecheck($event, aitem, index, aindex)"
>{{ aitem.optionName }}</el-checkbox
>
</el-checkbox-group>
<!-- 填空题组合填空 -->
<div v-if="item.questionType == 'FILL_IN_THE_BLANKS' ||
item.questionType == 'COMBINATION_BLANKS_SUBJECT'
" class="tk">
<el-input v-model="item.fillBlanksAnswer" placeholder="请输入答案" type="textarea" />
<div
v-if="
item.questionType == 'FILL_IN_THE_BLANKS' ||
item.questionType == 'COMBINATION_BLANKS_SUBJECT'
"
class="tk"
>
<el-input
v-model="item.fillBlanksAnswer"
placeholder="请输入答案"
type="textarea"
/>
<!-- <el-input></el-input> -->
</div>
<!-- 日期填空题 -->
<div v-if="item.questionType == 'DATE_BLANKS_SUBJECT'" style="margin: 20px 0 10px 30px">
<el-date-picker @change="timepicker($event, index)" clearable v-model="item.fillBlanksAnswer" type="date"
value-format="yyyy-MM-dd" placeholder="选择日期">
<div
v-if="item.questionType == 'DATE_BLANKS_SUBJECT'"
style="margin: 20px 0 10px 30px"
>
<el-date-picker
@change="timepicker($event, index)"
clearable
v-model="item.fillBlanksAnswer"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择日期"
>
</el-date-picker>
</div>
<!-- 时间填空题 -->
<div style="margin: 20px 0 10px 30px" v-if="item.questionType == 'TIME_BLANKS_SUBJECT'">
<el-time-select @change="timepickerselect($event, index)" clearable v-model="item.fillBlanksAnswer"
<div
style="margin: 20px 0 10px 30px"
v-if="item.questionType == 'TIME_BLANKS_SUBJECT'"
>
<el-time-select
@change="timepickerselect($event, index)"
clearable
v-model="item.fillBlanksAnswer"
:picker-options="{
start: '08:30',
step: '00:30',
end: '23:30',
}" placeholder="选择时间">
start: '08:30',
step: '00:30',
end: '23:30',
}"
placeholder="选择时间"
>
</el-time-select>
</div>
</div>
@ -122,18 +236,36 @@
<div v-if="$route.query.taskType == 'PHONE_OUTBOUND'">
<div class="sport">电话外呼</div>
<div class="nexttime">
<el-form ref="formlist" :model="formlist" label-width="110px" :inline="true" :rules="rulesphone">
<el-form
ref="formlist"
:model="formlist"
label-width="110px"
:inline="true"
:rules="rulesphone"
>
<!-- <br/> -->
<el-form-item label="电话" prop="patientPhone">
<el-input
disabled
v-model="formlist.patientPhone"
placeholder="请输入电话"
/>
</el-form-item>
<br />
<el-form-item label="是否接通" prop="phone">
<el-radio v-model="formlist.phoneConnectStatus" label="CONNECTED">已接通</el-radio>
<el-radio v-model="formlist.phoneConnectStatus" label="NOTCONNECTED">未接通</el-radio>
<el-radio
v-model="formlist.phoneConnectStatus"
label="CONNECTED"
>已接通</el-radio
>
<el-radio
v-model="formlist.phoneConnectStatus"
label="NOTCONNECTED"
>未接通</el-radio
>
</el-form-item>
<br />
<el-form-item label="任务处理信息" prop="routeHandleRemark">
<el-input v-model="formlist.routeHandleRemark" placeholder="请输入任务处理信息" />
</el-form-item>
<br />
<!-- <el-form-item label="话术名称" prop="scriptName">
<el-input
disabled
@ -144,7 +276,11 @@
</el-form-item> -->
<!-- <br /> -->
<el-form-item label="通用话术名称" prop="phoneTemplateName">
<el-input disabled v-model="formlist.phoneTemplateName" placeholder="请输入通用话术名称" />
<el-input
disabled
v-model="formlist.phoneTemplateName"
placeholder="请输入通用话术名称"
/>
</el-form-item>
<br />
<!-- <el-form-item label="话术简介" prop="scriptIntroduction">
@ -164,58 +300,60 @@
/>
</el-form-item> -->
<!-- <br /> -->
<el-form-item label="电话推送" prop="phonePushSign">
<!-- <el-input
type="textarea"
v-model="formlist.routeHandleRemark"
placeholder="请输入任务处理信息"
/> -->
<!-- <el-switch
disabled
v-model="formlist.phonePushSign"
active-color="#13ce66"
active-value="1"
inactive-value="0"
>
</el-switch> -->
<el-radio disabled v-model="formlist.phonePushSign" label="1">已开启</el-radio>
<el-radio disabled v-model="formlist.phonePushSign" label="0">未开启</el-radio>
</el-form-item>
<br />
<el-form-item label="电话" prop="patientPhone">
<el-input disabled v-model="formlist.patientPhone" placeholder="请输入电话" />
</el-form-item>
<br />
<!-- <div style="background:red;width:200px;height:1600px"> -->
<el-form-item label="重复次数" prop="phoneRedialTimes">
<el-select v-model="formlist.phoneRedialTimes" disabled style="width: 200px">
<!-- <div v-for="(item,index) in optionslistS" :key="index">
<div>{{ item.label }}</div>
</div> -->
<el-input
disabled
v-model="formlist.phoneRedialTimes"
placeholder=""
/>
<!-- <el-select v-model="formlist.phoneRedialTimes" disabled style="width: 200px">
<el-option v-for="item in optionslistS" :key="item.dictValue" :label="item.dictLabel"
:value="item.dictValue">
</el-option>
</el-select>
</el-select> -->
</el-form-item>
<br />
<el-form-item label="电话短信提醒" prop="phone">
<el-select disabled v-model="formlist.phoneMessageRemind" style="width: 200px">
<el-input
disabled
v-model="formlist.phoneMessageRemind"
placeholder=""
/>
<!-- <el-select disabled v-model="formlist.phoneMessageRemind" style="width: 200px">
<el-option v-for="item in optionslist" :key="item.dictValue" :label="item.dictLabel"
:value="item.dictValue">
</el-option>
</el-select>
</el-select> -->
</el-form-item>
<br />
<el-form-item label="短信模板:" prop="phone">
<span class="spanname">
<message style="width: 200px;height:50px" @on-template="messageontemplateMESSAGE"
:templateId="formlist.phoneMessageTemplateId" :templateName="formlist.phoneMessageTemplateName">
<message
style="width: 200px; height: 50px"
@on-template="messageontemplateMESSAGE"
:templateId="formlist.phoneMessageTemplateId"
:templateName="formlist.phoneMessageTemplateName"
>
</message>
</span>
</el-form-item>
<br />
<el-form-item label="话术图" prop="phone">
<img :src="formlist.scriptFilePath" style="width: 250px; height: 200px" />
<!-- <img :src="formlist.scriptFilePath" style="width: 250px; height: 200px" /> -->
</el-form-item>
<br />
<el-form-item label="任务处理信息" prop="routeHandleRemark">
<el-input
type="textarea"
v-model="formlist.routeHandleRemark"
style="width: 500px"
placeholder="请输入任务处理信息"
/>
</el-form-item>
<br />
</el-form>
@ -290,33 +428,35 @@ export default {
routeHandlePerson: null,
routeHandleId: null,
},
parentDictCode: "",
};
},
created() {
this.id = this.$route.query.manageRouteId;
this.info();
this.infolistword()
this.infolistMESSAGE();
this.infolistword();
if (
this.$route.query.taskType == "QUESTIONNAIRE_SCALE" ||
this.$route.query.taskType == "ARTIFICIAL_FOLLOW_UP"
) {
this.questioninfo();
} else {
selectPhonePush(this.$route.query.manageRouteNodeId).then((response) => {
selectPhonePush(this.$route.query.manageRouteNodeId).then((response) => {
if (response.data) {
this.formlist = response.data;
if(this.formlist.phonePushSign==0){
this.formlist.phonePushSign='0'
}else if(this.formlist.phonePushSign==1){
this.formlist.phonePushSign='1'
this.formlist.phoneRedialTimes = response.data.phoneRedialTimes;
this.formlist.phoneMessageRemind = response.data.phoneMessageRemind;
// console.log(this.formlist, " this.formlist.phoneRedialTimes");
this.infolistMESSAGE();
this.infolistword()
if (this.formlist.phonePushSign == 0) {
this.formlist.phonePushSign = "0";
} else if (this.formlist.phonePushSign == 1) {
this.formlist.phonePushSign = "1";
}
}
});
}
},
methods: {
@ -326,6 +466,9 @@ export default {
getAgencytype(dictType).then((res) => {
this.optionslist = res.data;
// this.taskinfo();
this.formlist.phoneMessageRemind = this.optionslist.find(
(el) => el.dictValue == this.formlist.phoneMessageRemind
)?.dictLabel;
});
},
@ -341,6 +484,9 @@ export default {
var dictType = "redial_times";
getAgencytype(dictType).then((res) => {
this.optionslistS = res.data;
this.formlist.phoneRedialTimes = this.optionslistS.find(
(el) => el.dictValue == this.formlist.phoneRedialTimes
)?.dictLabel;
});
},
//
@ -351,7 +497,7 @@ export default {
timepickerselect(e, index) {
this.questiondata.questionSubjectList[index].fillBlanksAnswer = e;
},
radioGroupChange(e, item) { },
radioGroupChange(e, item) {},
// radio
radioChange(e, item, index) {
console.log(e, item, index, "选中某个单选框时");
@ -383,7 +529,6 @@ export default {
info() {
selectFollowPatientInfo(this.id).then((res) => {
this.list = res.data;
});
},
questioninfo() {
@ -532,10 +677,8 @@ export default {
(this.form.diseaseTypeId = this.formlist.diseaseTypeId),
(this.form.diseaseTypeName = this.formlist.diseaseTypeName),
(this.form.routeHandleRemark = this.formlist.routeHandleRemark);
(this.form.phoneConnectStatus = this.formlist.phoneConnectStatus);
(this.form.phoneMessageRemind = this.formlist.phoneMessageRemind);
this.form.phoneConnectStatus = this.formlist.phoneConnectStatus;
this.form.phoneMessageRemind = this.formlist.phoneMessageRemind;
(this.form.visitRecordId = this.$route.query.visitRecordId),
// console.log(this.form, 'this.form')
@ -680,7 +823,7 @@ export default {
.bottomheader {
overflow-y: scroll;
width: 99%;
height: 67vh;
height: 60vh;
background-color: #fff;
margin: 10px auto;
padding: 10px 20px;