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

This commit is contained in:
2024-06-17 09:38:01 +08:00
commit ae39e7e89e
4 changed files with 584 additions and 324 deletions

View File

@ -1,14 +1,22 @@
import request from '@/utils/request' import request from '@/utils/request'
export function selectFollowPatientInfo(id) { export function selectFollowPatientInfo(id) {
return request({ return request({
url: '/manage/signroute/selectFollowPatientInfo/'+id, url: '/manage/signroute/selectFollowPatientInfo/' + id,
method: 'get', method: 'get',
}) })
} }
export function selectPhonePush(manageRouteNodeId) {
return request({
url: `/manage/signroute/selectPhonePush?manageRouteNodeId=${manageRouteNodeId}`,
method: 'get',
})
}
// 问卷量表 // 问卷量表
export function question(id) { export function question(id) {
return request({ return request({
url: '/system/question/'+id, url: '/system/question/' + id,
method: 'get', method: 'get',
}) })
} }

View File

@ -1,306 +1,451 @@
<template> <template>
<div class="app-container"> <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
:style="handleselectName ? 'color:black' : 'color:#C0C4CC'">{{ handleselectName ? handleselectName : size="small"
'请选择' @click="classificationOpen = true"
}}</el-button> style="
<el-dialog title="话书库模板选择" :visible.sync="classificationOpen" width="70%" width: 200px;
:before-close="classificationOpenfalse"> font-size: 14px;
<el-row :gutter="20"> text-align: left;
<!--部门数据--> white-space: nowrap;
<el-col :span="6" :xs="24"> text-overflow: ellipsis;
<div class="leftscript" ref="box"> overflow: hidden;
<div class="name">科室名称</div> "
<div> :style="handleselectName ? 'color:black' : 'color:#C0C4CC'"
<el-input v-model="name" placeholder="请输入科室名称" clearable >{{ handleselectName ? handleselectName : "请选择" }}</el-button
@keyup.enter.native="handleQuery" /> >
</div> <el-dialog
<div class="listitem"> title="话书库模板选择"
<div :class="itemname == null ? 'allactive' : 'all'" @click="itemdata()"> :visible.sync="classificationOpen"
全部 width="70%"
</div> :before-close="classificationOpenfalse"
<span class="count">{{ count }}</span> >
</div> <el-row :gutter="20">
<div class="listitem" v-for="(item, index) in DepartmentoList" :key="index" <!--部门数据-->
@click="itemdata(item)"> <el-col :span="6" :xs="24">
<div :class="itemname == item.id ? 'allactive' : 'all'"> <div class="leftscript" ref="box">
{{ item.departmentName }} <div class="name">科室名称</div>
</div> <div>
<span class="count">{{ item.countNum }}</span> <el-input
</div> v-model="name"
</div> placeholder="请输入科室名称"
</el-col> clearable
<!--用户数据--> @keyup.enter.native="handleQuery"
<el-col :span="18" :xs="24"> />
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" </div>
label-width="100px"> <div class="listitem">
<el-form-item label="通用话术名称" prop="commonScriptName"> <div
<el-input v-model="queryParams.commonScriptName" placeholder="请输入通用话术名称" clearable :class="itemname == null ? 'allactive' : 'all'"
@keyup.enter.native="handleQuery" /> @click="itemdata()"
</el-form-item> >
<el-form-item label="话术名称" prop="scriptName"> 全部
<el-input v-model="queryParams.scriptName" placeholder="请输入话术名称" clearable </div>
@keyup.enter.native="handleQuery" /> <span class="count">{{ count }}</span>
</el-form-item> </div>
<el-form-item label="话术ID" prop="scriptId"> <div
<el-input v-model="queryParams.scriptId" placeholder="请输入话术ID" clearable class="listitem"
@keyup.enter.native="handleQuery" /> v-for="(item, index) in DepartmentoList"
</el-form-item> :key="index"
<el-form-item label="平台ID" prop="platformId"> @click="itemdata(item)"
<el-input v-model="queryParams.platformId" placeholder="请输入平台ID" clearable >
@keyup.enter.native="handleQuery" /> <div :class="itemname == item.id ? 'allactive' : 'all'">
</el-form-item> {{ item.departmentName }}
<el-form-item> </div>
<el-button type="primary" icon="el-icon-search" size="mini" <span class="count">{{ item.countNum }}</span>
@click="handleQuery">搜索</el-button> </div>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> </div>
</el-form-item> </el-col>
</el-form> <!--用户数据-->
<el-table v-loading="loading" :data="scriptList" @row-dblclick="handleselect"> <el-col :span="18" :xs="24">
<el-table-column label="序号" align="center" prop="sort" type="index" /> <el-form
<el-table-column label="通用话术名称" align="center" prop="commonScriptName" :model="queryParams"
:show-overflow-tooltip="true" /> ref="queryForm"
<el-table-column label="话术名称" align="center" prop="scriptName" :show-overflow-tooltip="true" /> size="small"
<el-table-column label="话术ID" align="center" prop="scriptId" :show-overflow-tooltip="true" /> :inline="true"
<el-table-column label="平台ID" align="center" prop="platformId" :show-overflow-tooltip="true" /> v-show="showSearch"
<el-table-column label="话术简介" align="center" prop="scriptIntroduction" label-width="100px"
:show-overflow-tooltip="true" /> >
<el-table-column label="病种名称" align="center" prop="diseaseTypeName" <el-form-item label="通用话术名称" prop="commonScriptName">
:show-overflow-tooltip="true" /> <el-input
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> v-model="queryParams.commonScriptName"
<template slot-scope="scope"> placeholder="请输入通用话术名称"
<el-button size="mini" type="text" @click="handleselect(scope.row)" clearable
v-if="handleselectId != scope.row.textMessageId">选择</el-button> @keyup.enter.native="handleQuery"
<el-button size="mini" type="text" @click="nohandleselect(scope.row)" />
v-if="handleselectId == scope.row.textMessageId">取消选择</el-button> </el-form-item>
</template> <el-form-item label="话术名称" prop="scriptName">
</el-table-column> <el-input
</el-table> v-model="queryParams.scriptName"
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" placeholder="请输入话术名称"
:limit.sync="queryParams.pageSize" @pagination="getList" /> clearable
</el-col> @keyup.enter.native="handleQuery"
</el-row> />
</el-dialog> </el-form-item>
</div> <el-form-item label="话术ID" prop="scriptId">
<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-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-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"
>
<template slot-scope="scope">
<el-button
size="mini"
type="text"
@click="handleselect(scope.row)"
v-if="handleselectId != scope.row.textMessageId"
>选择</el-button
>
<el-button
size="mini"
type="text"
@click="nohandleselect(scope.row)"
v-if="handleselectId == scope.row.textMessageId"
>取消选择</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>
</el-dialog>
</div>
</template> </template>
<script> <script>
import { listScript, getScript, delScript, addScript, updateScript, departmentDisease, department, listDisease, listScriptNum } from "@/api/manage/script"; import {
listScript,
getScript,
delScript,
addScript,
updateScript,
departmentDisease,
department,
listDisease,
listScriptNum,
} from "@/api/manage/script";
import stationAcatar from "../../system/stationAvatar/index.vue"; import stationAcatar from "../../system/stationAvatar/index.vue";
export default { export default {
components: { stationAcatar }, props: ["templateId", "templateName"],
name: "Script", components: { stationAcatar },
data() { name: "Script",
return { data() {
handleselectName: '', return {
handleselectId: '', handleselectName: "",
classificationOpen: false, handleselectId: "",
itemname: null, classificationOpen: false,
departmentName: null, itemname: null,
diseaseTypeName: null, departmentName: null,
name: '', diseaseTypeName: null,
departmentId: null, name: "",
count: '',// departmentId: null,
// count: "", //
loading: true, //
// loading: true,
ids: [], //
// ids: [],
single: true, //
// single: true,
multiple: true, //
// multiple: true,
showSearch: true, //
// showSearch: true,
total: 0, //
// total: 0,
scriptList: [], //
DepartmentoList: [], scriptList: [],
// DepartmentoList: [],
title: "", //
// title: "",
open: false, //
// open: false,
// //
queryParams: { //
pageNum: 1, queryParams: {
pageSize: 10, pageNum: 1,
departmentId: null, pageSize: 10,
departmentName: null, departmentId: null,
diseaseTypeId: null, departmentName: null,
diseaseTypeName: null, diseaseTypeId: null,
commonScriptName: null, diseaseTypeName: null,
scriptName: null, commonScriptName: null,
scriptId: null, scriptName: null,
platformId: null, scriptId: null,
scriptStatus: "NORMAL", platformId: null,
scriptIntroduction: null, scriptStatus: "NORMAL",
scriptSort: null, scriptIntroduction: null,
scriptRemark: null, scriptSort: null,
}, scriptRemark: null,
querydepartmen: { },
departmentName: "", querydepartmen: {
// pageNum: 1, departmentName: "",
// pageSize: 10, // pageNum: 1,
}, // pageSize: 10,
}; },
};
},
created() {
this.getList();
this.Departmentlist();
},
mounted() {
this.handleselectId = this.templateId;
this.handleselectName = this.templateName;
},
watch: {
name(val) {
this.querydepartmen.departmentName = val;
this.Departmentlist();
}, },
created() { templateName(newValue, oldValue) {
console.log(newValue, "newValuenewValue");
this.handleselectName = newValue;
},
templateId(newValue, oldValue) {
console.log(
newValue,
"newValuenewValuenewValuenewValuenewValuenewValuenewValuenewValue"
);
this.handleselectId = newValue;
},
},
methods: {
nohandleselect() {
this.handleselectId = "";
this.handleselectName = "";
this.$emit("on-template", {
templateId: "",
templateName: "",
templateContent: "",
});
},
handleselect(item) {
this.handleselectId = item.id;
this.handleselectName = item.commonScriptName;
console.log(this.handleselectName, "this.handleselectName");
this.$emit("on-template", {
templateId: item.id,
templateName: item.commonScriptName,
templateContent: item.scriptIntroduction,
});
this.classificationOpen = false;
},
classificationOpenfalse() {
this.classificationOpen = false;
},
//
Departmentlist() {
this.loading = true;
this.querydepartmen.scriptStatus = "NORMAL";
listScriptNum(this.querydepartmen).then((response) => {
this.DepartmentoList = response.data;
//
let sum = 0;
this.DepartmentoList.forEach((item) => {
if (item.countNum != null) {
sum += item.countNum;
}
this.count = sum;
});
this.loading = false;
});
},
//
itemdata(item) {
if (item) {
this.itemname = item.id;
this.departmentName = item.departmentName;
this.loading = true;
this.queryParams.departmentId = item.id;
this.getList(); this.getList();
this.Departmentlist(); } else {
this.queryParams.departmentId = "";
this.itemname = null;
this.getList();
}
}, },
watch: { /** 查询话术信息列表 */
name(val) { getList() {
this.querydepartmen.departmentName = val this.loading = true;
this.Departmentlist(); this.queryParams.scriptStatus = "NORMAL";
} listScript(this.queryParams).then((response) => {
this.scriptList = response.rows;
this.total = response.total;
this.loading = false;
});
}, },
methods: { /** 搜索按钮操作 */
nohandleselect() { handleQuery() {
this.handleselectId = '' this.queryParams.pageNum = 1;
this.handleselectName = '' this.getList();
this.$emit("on-template", { templateId: '', templateName: '', templateContent: "" }); },
}, /** 重置按钮操作 */
handleselect(item) { resetQuery() {
this.handleselectId = item.id this.queryParams.departmentId = null;
this.handleselectName = item.commonScriptName this.itemname = null;
this.$emit("on-template", { templateId: item.id, templateName: item.commonScriptName, templateContent: item.scriptIntroduction }); this.queryParams = {
this.classificationOpen = false pageNum: 1,
}, pageSize: 10,
classificationOpenfalse() { departmentId: null,
this.classificationOpen = false departmentName: null,
}, diseaseTypeId: null,
// diseaseTypeName: null,
Departmentlist() { commonScriptName: null,
this.loading = true; scriptName: null,
this.querydepartmen.scriptStatus = "NORMAL" scriptId: null,
listScriptNum(this.querydepartmen).then(response => { platformId: null,
this.DepartmentoList = response.data; scriptStatus: "NORMAL",
// scriptIntroduction: null,
let sum = 0; scriptSort: null,
this.DepartmentoList.forEach((item) => { scriptRemark: null,
if (item.countNum != null) { };
sum += item.countNum; this.resetForm("queryForm");
} this.getList();
this.count = sum; },
}); },
this.loading = false;
});
},
//
itemdata(item) {
if (item) {
this.itemname = item.id
this.departmentName = item.departmentName
this.loading = true;
this.queryParams.departmentId = item.id
this.getList()
} else {
this.queryParams.departmentId = ''
this.itemname = null
this.getList()
}
},
/** 查询话术信息列表 */
getList() {
this.loading = true;
this.queryParams.scriptStatus = "NORMAL"
listScript(this.queryParams).then(response => {
this.scriptList = response.rows;
this.total = response.total;
this.loading = false;
});
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.queryParams.departmentId = null;
this.itemname = null;
this.queryParams = {
pageNum: 1,
pageSize: 10,
departmentId: null,
departmentName: null,
diseaseTypeId: null,
diseaseTypeName: null,
commonScriptName: null,
scriptName: null,
scriptId: null,
platformId: null,
scriptStatus: 'NORMAL',
scriptIntroduction: null,
scriptSort: null,
scriptRemark: null,
}
this.resetForm("queryForm");
this.getList();
},
}
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
::v-deep .el-input-number .el-input__inner { ::v-deep .el-input-number .el-input__inner {
text-align: left; text-align: left;
} }
.app-container { .app-container {
display: inline-block; display: inline-block;
padding: 0 !important; padding: 0 !important;
} }
::v-deep .el-textarea__inner { ::v-deep .el-textarea__inner {
width: 206px; width: 206px;
} }
.leftscript { .leftscript {
// width: 30%; // width: 30%;
height: 650px; height: 650px;
overflow: auto; overflow: auto;
.name { .name {
font-weight: 700; font-weight: 700;
margin-bottom: 10px; margin-bottom: 10px;
}
.listitem {
width: 100%;
height: 50px;
border-bottom: 1px solid #dcdfe6;
position: relative;
.count {
display: inline-block;
position: absolute;
left: 210px;
color: #a4a6aa;
top: 10px;
font-size: 13px;
} }
.listitem { .all {
width: 100%; height: 50px;
height: 50px; line-height: 50px;
border-bottom: 1px solid #dcdfe6; padding-left: 13px;
position: relative;
.count {
display: inline-block;
position: absolute;
left: 210px;
color: #a4a6aa;
top: 10px;
font-size: 13px;
}
.all {
height: 50px;
line-height: 50px;
padding-left: 13px;
}
.allactive {
background: #e8f4ff;
height: 50px;
line-height: 50px;
padding-left: 13px;
border-left: 3px solid #4d9de7;
}
} }
.allactive {
background: #e8f4ff;
height: 50px;
line-height: 50px;
padding-left: 13px;
border-left: 3px solid #4d9de7;
}
}
} }
.button { .button {
display: inline-block; display: inline-block;
position: relative; position: relative;
left: 20px; left: 20px;
top: -11px; top: -11px;
} }
</style> </style>

View File

@ -244,20 +244,24 @@
:inline="true" :inline="true"
:rules="rulesphone" :rules="rulesphone"
> >
<el-form-item label="话术名称" prop="scriptName"> <!-- <el-form-item label="话术名称" prop="scriptName">
<el-radio v-model="radio" label="1">备选项</el-radio>
<el-radio v-model="radio" label="2">备选项</el-radio>
</el-form-item>
<br />
<el-form-item label="通用话术名称" prop="commonScriptName">
<el-input <el-input
disabled disabled
v-model="formlist.commonScriptName" v-model="formlist.scriptName"
placeholder="请输入话术名称"
/>
</el-form-item> -->
<!-- <br /> -->
<el-form-item label="通用话术名称" prop="phoneTemplateName">
<el-input
disabled
v-model="formlist.phoneTemplateName"
placeholder="请输入通用话术名称" placeholder="请输入通用话术名称"
/> />
</el-form-item> </el-form-item>
<br /> <!-- <br /> -->
<el-form-item label="话术简介" prop="scriptIntroduction"> <!-- <el-form-item label="话术简介" prop="scriptIntroduction">
<el-input <el-input
disabled disabled
type="textarea" type="textarea"
@ -265,7 +269,6 @@
placeholder="请输入话术简介" placeholder="请输入话术简介"
/> />
</el-form-item> </el-form-item>
<br />
<el-form-item label="任务处理信息" prop="routeHandleRemark"> <el-form-item label="任务处理信息" prop="routeHandleRemark">
<el-input <el-input
@ -273,7 +276,85 @@
v-model="formlist.routeHandleRemark" v-model="formlist.routeHandleRemark"
placeholder="请输入任务处理信息" placeholder="请输入任务处理信息"
/> />
</el-form-item> -->
<!-- <br /> -->
<el-form-item label="电话外呼" prop="phonePushSign">
<!-- <el-input
type="textarea"
v-model="formlist.routeHandleRemark"
placeholder="请输入任务处理信息"
/> -->
<el-switch
v-model="formlist.phonePushSign"
active-color="#13ce66"
active-value="1"
inactive-value="0"
>
</el-switch>
</el-form-item> </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"
style="width: 200px"
>
<el-option
v-for="item in optionslistS"
:key="item.dictValue"
:label="item.dictLabel"
:value="item.dictValue"
>
</el-option>
</el-select>
</el-form-item>
<!-- <br /> -->
<el-form-item label="发送短信" prop="phone">
<el-input
style="width: 200px"
v-model="formlist.phone"
placeholder="请输入电话"
/>
</el-form-item>
<!-- <br /> -->
<el-form-item label="是否接通" prop="phone">
<el-radio v-model="radio" label="1">备选项</el-radio>
<el-radio v-model="radio" label="2">备选项</el-radio>
</el-form-item>
<!-- <br /> -->
<el-form-item label="是否发送短信" prop="phone">
<el-radio v-model="radio" label="1">备选项</el-radio>
<el-radio v-model="radio" label="2">备选项</el-radio>
</el-form-item>
<el-form-item label="话术图" prop="phone">
<img src="@/assets/images/dark.svg" style="width:250px;height:200px" alt="dark" />
</el-form-item>
<span class="pushMethod">
短信模板
<message
style="width: 200px"
@on-template="messageontemplateMESSAGE"
:templateId="formlist.phoneMessageTemplateId"
:templateName="formlist.phoneMessageTemplateName"
></message>
</span>
<!-- <br/> -->
<!-- <br /> -->
<!-- </div> -->
</el-form> </el-form>
</div> </div>
</div> </div>
@ -283,15 +364,24 @@
</template> </template>
<script> <script>
import message from "../components/message.vue";
import { import {
selectFollowPatientInfo, selectFollowPatientInfo,
question, question,
addPatientQuestionResult, addPatientQuestionResult,
selectPhonePush
} from "@/api/system/followupsee"; } from "@/api/system/followupsee";
import { getScript } from "@/api/manage/script"; import { getScript } from "@/api/manage/script";
import Cookies from "js-cookie"; import Cookies from "js-cookie";
import { getAgencytype } from "@/api/system/agency";
export default { export default {
components: {
message,
},
name: "patientdetails", name: "patientdetails",
data() { data() {
return { return {
obj: {}, obj: {},
@ -299,6 +389,7 @@ export default {
checkList: [], checkList: [],
checked: false, checked: false,
formlist: {}, formlist: {},
optionslistS: [],
form: { form: {
taskType: this.$route.query.taskType, taskType: this.$route.query.taskType,
routeHandleId: Cookies.get("userId"), routeHandleId: Cookies.get("userId"),
@ -338,15 +429,17 @@ export default {
}; };
}, },
created() { created() {
// this.infolist()
this.id = this.$route.query.manageRouteId; this.id = this.$route.query.manageRouteId;
this.info(); this.info();
this.infolistMESSAGE();
if ( if (
this.$route.query.taskType == "QUESTIONNAIRE_SCALE" || this.$route.query.taskType == "QUESTIONNAIRE_SCALE" ||
this.$route.query.taskType == "ARTIFICIAL_FOLLOW_UP" this.$route.query.taskType == "ARTIFICIAL_FOLLOW_UP"
) { ) {
this.questioninfo(); this.questioninfo();
} else { } else {
getScript(this.$route.query.templateId).then((response) => { selectPhonePush(this.$route.query.manageRouteNodeId).then((response) => {
if (response.data) { if (response.data) {
this.formlist = response.data; this.formlist = response.data;
} }
@ -354,6 +447,25 @@ export default {
} }
}, },
methods: { methods: {
// infolist(){
// console.log(this.form.manageRouteNodeId,'manageRouteNodeId')
// selectPhonePush(this.form.manageRouteNodeId).then(res=>{
// console.log(res,'red')
// })
// },
//
messageontemplateMESSAGE(item) {
console.log(item, "2222222");
this.formlist.phoneMessageTemplateId = item.templateId;
this.formlist.phoneMessageTemplateName = item.templateName;
// this.form.messagePreview = item.templateContent;
},
infolistMESSAGE() {
var dictType = "redial_times";
getAgencytype(dictType).then((res) => {
this.optionslistS = res.data;
});
},
// //
timepicker(e, index) { timepicker(e, index) {
this.questiondata.questionSubjectList[index].fillBlanksAnswer = e; this.questiondata.questionSubjectList[index].fillBlanksAnswer = e;
@ -665,8 +777,9 @@ export default {
} }
.bottomheader { .bottomheader {
overflow: auto; overflow: scroll;
width: 99%; width: 99%;
height: 100vh;
background-color: #fff; background-color: #fff;
margin: 10px auto; margin: 10px auto;
padding: 10px 20px; padding: 10px 20px;

View File

@ -370,7 +370,7 @@
<div class="flex"> <div class="flex">
<div class="pushMethod"> <div class="pushMethod">
推送方式 推送方式
<span> AI电话 </span> <span> 人工电话 </span>
</div> </div>
<div class="pushMethod"> <div class="pushMethod">
模板 模板
@ -431,7 +431,6 @@
<el-select <el-select
v-model="form.phoneMessageRemind" v-model="form.phoneMessageRemind"
style="width: 150px" style="width: 150px"
@change="changelist"
> >
<el-option <el-option
v-for="item in optionslist" v-for="item in optionslist"
@ -449,7 +448,6 @@
v-if="form.phoneMessageRemind == 'NOT_SEND_MESSAGE'" v-if="form.phoneMessageRemind == 'NOT_SEND_MESSAGE'"
> >
<message <message
ref="refname"
style="width: 200px" style="width: 200px"
@on-template="messageontemplateMESSAGE" @on-template="messageontemplateMESSAGE"
:templateId="form.phoneMessageTemplateId" :templateId="form.phoneMessageTemplateId"
@ -613,24 +611,32 @@ export default {
this.infolistMESSAGE(); this.infolistMESSAGE();
}, },
beforeDestroy() {}, beforeDestroy() {},
watch: {}, watch: {
"form.phoneMessageRemind": {
handler(newValue, oldValue) {
console.log(newValue, "2222221111122");
if (newValue == "NOT_SEND_MESSAGE") {
this.form.phoneMessageTemplateId = "";
this.form.phoneMessageTemplateName = "";
}
},
deep: true,
},
"form.phoneTemplateId": {
handler(newValue, oldValue) {
console.log(newValue, "phoneTemplateId");
// if (newValue == "NOT_SEND_MESSAGE") {
this.form.phoneTemplateId = newValue;
// this.form.phoneMessageTemplateName = "";
// }
},
deep: true,
// phoneTemplateId
},
},
mounted() {}, mounted() {},
methods: { methods: {
changelist(e) {
console.log(e, "e");
if (e == "NOT_SEND_MESSAGE ") {
console.log(this.form,'this.form')
this.$refs.refname.listDisease()
// this.form.phoneMessageTemplateId
// this.form.phoneMessageTemplateId = "";
// this.form.phoneMessageTemplateName = "";
}
},
listDisease(){
this.form.phoneMessageTemplateId = "";
this.form.phoneMessageTemplateName = "";
},
infolistword() { infolistword() {
var dictType = "text_message_remind"; var dictType = "text_message_remind";
getAgencytype(dictType).then((res) => { getAgencytype(dictType).then((res) => {
@ -685,9 +691,11 @@ export default {
this.agreeNumber = res.data.agreeNumber; this.agreeNumber = res.data.agreeNumber;
this.totalNumber = res.data.totalNumber; this.totalNumber = res.data.totalNumber;
res.data.specialDiseaseNodeList.forEach((e) => { res.data.specialDiseaseNodeList.forEach((e) => {
console.log(e, "eeeeeeeeeeeeeeeee");
e.messagePushSign = "" + e.messagePushSign; e.messagePushSign = "" + e.messagePushSign;
e.officialPushSign = "" + e.officialPushSign; e.officialPushSign = "" + e.officialPushSign;
e.appletPushSign = "" + e.appletPushSign; e.appletPushSign = "" + e.appletPushSign;
e.phonePushSign = "" + e.phonePushSign;
}); });
this.lists = this.handleData( this.lists = this.handleData(
res.data.specialDiseaseNodeList, res.data.specialDiseaseNodeList,
@ -713,15 +721,6 @@ export default {
taskSubdivision: "", taskSubdivision: "",
taskSubdivisionName: "", taskSubdivisionName: "",
taskStatus: "", taskStatus: "",
phoneAgencyName: null,
phoneRedialTimes: null,
phoneTimeInterval: null,
phoneMessageRemind: null,
phoneMessageTemplateId: null,
phoneMessageTemplateName: null,
phonePushSign: "0",
phoneTemplateId: "",
phoneTemplateName: "",
secondClassifyDescribe: "", secondClassifyDescribe: "",
executionTime: "", executionTime: "",
appletPushSign: "0", appletPushSign: "0",
@ -806,7 +805,7 @@ export default {
messageontemplateword(item) { messageontemplateword(item) {
this.form.phoneTemplateId = item.templateId; this.form.phoneTemplateId = item.templateId;
this.form.phoneTemplateName = item.templateName; this.form.phoneTemplateName = item.templateName;
this.form.messagePreview = item.templateContent; // this.form.messagePreview = item.templateContent;
}, },
// //
officialAccountontemplate(item) { officialAccountontemplate(item) {
@ -903,11 +902,6 @@ export default {
this.info(); this.info();
}); });
}, },
//
changephoneMessageRemind(e) {
console.log(e, "e");
// if
},
// //
changeTaskType(code, taskSubdivision) { changeTaskType(code, taskSubdivision) {
let id = this.selectTaskTypeList?.find((e) => e.taskTypeCode == code)?.id; let id = this.selectTaskTypeList?.find((e) => e.taskTypeCode == code)?.id;