xg
This commit is contained in:
parent
8fa3fdb4e1
commit
e82143e915
@ -88,7 +88,7 @@ import { questionname } from "@/api/system/taskExecuteRecord";
|
|||||||
import DepartmentList from '../../components/DepartmentList.vue'
|
import DepartmentList from '../../components/DepartmentList.vue'
|
||||||
export default {
|
export default {
|
||||||
name: "Question",
|
name: "Question",
|
||||||
props: ["templateId", "templateName"],
|
props: ["templateId", "templateName", 'node'],
|
||||||
components: {
|
components: {
|
||||||
questionopennew,
|
questionopennew,
|
||||||
DepartmentList
|
DepartmentList
|
||||||
@ -165,6 +165,11 @@ export default {
|
|||||||
this.$emit("on-template", { templateId: "", templateName: "" });
|
this.$emit("on-template", { templateId: "", templateName: "" });
|
||||||
},
|
},
|
||||||
handleselect(item) {
|
handleselect(item) {
|
||||||
|
if (this.node == 'AI') {
|
||||||
|
if (!item.robotPublishId) {
|
||||||
|
return this.$message.error("机器人ID不存在,请维护机器人ID或重新选择模板");
|
||||||
|
}
|
||||||
|
}
|
||||||
this.handleselectId = item.id;
|
this.handleselectId = item.id;
|
||||||
this.handleselectName = item.questionnaireName;
|
this.handleselectName = item.questionnaireName;
|
||||||
questionname(item.id).then((res) => {
|
questionname(item.id).then((res) => {
|
||||||
|
|||||||
@ -90,7 +90,7 @@ import {
|
|||||||
import stationAcatar from "../../system/stationAvatar/index.vue";
|
import stationAcatar from "../../system/stationAvatar/index.vue";
|
||||||
import DepartmentList from '../../components/DepartmentList.vue'
|
import DepartmentList from '../../components/DepartmentList.vue'
|
||||||
export default {
|
export default {
|
||||||
props: ["templateId", "templateName"],
|
props: ["templateId", "templateName", 'node'],
|
||||||
components: { stationAcatar, Scriptpreview, DepartmentList },
|
components: { stationAcatar, Scriptpreview, DepartmentList },
|
||||||
name: "Script",
|
name: "Script",
|
||||||
data() {
|
data() {
|
||||||
@ -190,6 +190,11 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
handleselect(item) {
|
handleselect(item) {
|
||||||
|
if (this.node == 'AI') {
|
||||||
|
if (!item.robotPublishId) {
|
||||||
|
return this.$message.error("机器人ID不存在,请维护机器人ID或重新选择模板");
|
||||||
|
}
|
||||||
|
}
|
||||||
this.handleselectId = item.id;
|
this.handleselectId = item.id;
|
||||||
this.handleselectName = item.commonScriptName;
|
this.handleselectName = item.commonScriptName;
|
||||||
this.$emit("on-template", {
|
this.$emit("on-template", {
|
||||||
|
|||||||
@ -8,18 +8,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="select">
|
<div class="select">
|
||||||
<span> 适用范围 </span>
|
<span> 适用范围 </span>
|
||||||
<el-select
|
<el-select v-model="updata.suitRange" placeholder="请选择" @change="changeoptions" disabled>
|
||||||
v-model="updata.suitRange"
|
<el-option v-for="item in options" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue">
|
||||||
placeholder="请选择"
|
|
||||||
@change="changeoptions"
|
|
||||||
disabled
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in options"
|
|
||||||
:key="item.dictValue"
|
|
||||||
:label="item.dictLabel"
|
|
||||||
:value="item.dictValue"
|
|
||||||
>
|
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</div>
|
</div>
|
||||||
@ -31,59 +21,30 @@
|
|||||||
<i class="el-icon-circle-plus-outline" @click="addlist"></i>
|
<i class="el-icon-circle-plus-outline" @click="addlist"></i>
|
||||||
</div>
|
</div>
|
||||||
<el-timeline>
|
<el-timeline>
|
||||||
<el-timeline-item
|
<el-timeline-item v-for="(item, index) in lists" :key="index" :color="listindex == index ? '#409EFF' : ''">
|
||||||
v-for="(item, index) in lists"
|
|
||||||
:key="index"
|
|
||||||
:color="listindex == index ? '#409EFF' : ''"
|
|
||||||
>
|
|
||||||
<div class="top">
|
<div class="top">
|
||||||
<div class="toptop">
|
<div class="toptop">
|
||||||
<el-select v-model="item.routeNodeName" style="width: 100px">
|
<el-select v-model="item.routeNodeName" style="width: 100px">
|
||||||
<el-option
|
<el-option v-for="item in parentDictCodelist" :key="item.dictValue" :label="item.dictLabel"
|
||||||
v-for="item in parentDictCodelist"
|
:value="item.dictValue">
|
||||||
:key="item.dictValue"
|
|
||||||
:label="item.dictLabel"
|
|
||||||
:value="item.dictValue"
|
|
||||||
>
|
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
<el-input
|
<el-input v-model="item.routeNodeDay" type="number" style="width: 70px" :min="0"></el-input>
|
||||||
v-model="item.routeNodeDay"
|
|
||||||
type="number"
|
|
||||||
style="width: 70px"
|
|
||||||
:min="0"
|
|
||||||
></el-input>
|
|
||||||
<span>天</span>
|
<span>天</span>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<i class="el-icon-delete" @click="delitem(item, index)"></i>
|
<i class="el-icon-delete" @click="delitem(item, index)"></i>
|
||||||
<i
|
<i class="el-icon-circle-plus-outline" @click="additem(item)"></i>
|
||||||
class="el-icon-circle-plus-outline"
|
|
||||||
@click="additem(item)"
|
|
||||||
></i>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-card
|
<el-card v-for="(uitem, uindex) in item.list" :key="uitem.id"
|
||||||
v-for="(uitem, uindex) in item.list"
|
|
||||||
:key="uitem.id"
|
|
||||||
@click.native="bottomclickevent(uitem, index, uindex, item)"
|
@click.native="bottomclickevent(uitem, index, uindex, item)"
|
||||||
:class="listindex == index && itemindex == uindex ? 'cards' : ''"
|
:class="listindex == index && itemindex == uindex ? 'cards' : ''">
|
||||||
>
|
|
||||||
<h3 style="height: 20px">{{ uitem.taskTypeName }}</h3>
|
<h3 style="height: 20px">{{ uitem.taskTypeName }}</h3>
|
||||||
<el-tag
|
<el-tag v-if="uitem.routeCheckStatus == 'AGREE'" class="routeCheckStatus">已审核</el-tag>
|
||||||
v-if="uitem.routeCheckStatus == 'AGREE'"
|
<el-tag v-else-if="uitem.routeCheckStatus == 'DISAGREE'" type="danger"
|
||||||
class="routeCheckStatus"
|
class="routeCheckStatus">不同意</el-tag>
|
||||||
>已审核</el-tag
|
<el-tag v-else type="warning" class="routeCheckStatus">未审核</el-tag>
|
||||||
>
|
|
||||||
<el-tag
|
|
||||||
v-else-if="uitem.routeCheckStatus == 'DISAGREE'"
|
|
||||||
type="danger"
|
|
||||||
class="routeCheckStatus"
|
|
||||||
>不同意</el-tag
|
|
||||||
>
|
|
||||||
<el-tag v-else type="warning" class="routeCheckStatus"
|
|
||||||
>未审核</el-tag
|
|
||||||
>
|
|
||||||
<p style="height: 16px">{{ uitem.taskSubdivisionName }}</p>
|
<p style="height: 16px">{{ uitem.taskSubdivisionName }}</p>
|
||||||
</el-card>
|
</el-card>
|
||||||
</el-timeline-item>
|
</el-timeline-item>
|
||||||
@ -93,43 +54,22 @@
|
|||||||
<div class="topform">
|
<div class="topform">
|
||||||
<el-form ref="form" :inline="true" :model="form" class="form">
|
<el-form ref="form" :inline="true" :model="form" class="form">
|
||||||
<el-form-item label="任务类型" prop="">
|
<el-form-item label="任务类型" prop="">
|
||||||
<el-select
|
<el-select v-model="form.taskType" style="width: 150px" @change="changeTaskType">
|
||||||
v-model="form.taskType"
|
<el-option v-for="item in selectTaskTypeList" :key="item.taskTypeCode" :label="item.taskTypeName"
|
||||||
style="width: 150px"
|
:value="item.taskTypeCode">
|
||||||
@change="changeTaskType"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in selectTaskTypeList"
|
|
||||||
:key="item.taskTypeCode"
|
|
||||||
:label="item.taskTypeName"
|
|
||||||
:value="item.taskTypeCode"
|
|
||||||
>
|
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="任务细分" prop="">
|
<el-form-item label="任务细分" prop="">
|
||||||
<el-select
|
<el-select v-model="form.taskSubdivision" style="width: 150px" @change="changetaskSubdivision">
|
||||||
v-model="form.taskSubdivision"
|
<el-option v-for="item in taskPartitionList" :key="item.taskPartitionCode"
|
||||||
style="width: 150px"
|
:label="item.taskPartitionName" :value="item.taskPartitionCode">
|
||||||
@change="changetaskSubdivision"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in taskPartitionList"
|
|
||||||
:key="item.taskPartitionCode"
|
|
||||||
:label="item.taskPartitionName"
|
|
||||||
:value="item.taskPartitionCode"
|
|
||||||
>
|
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="任务节点类型" prop="">
|
<el-form-item label="任务节点类型" prop="">
|
||||||
<el-select v-model="form.taskNodeType" style="width: 150px">
|
<el-select v-model="form.taskNodeType" style="width: 150px">
|
||||||
<el-option
|
<el-option v-for="item in taskNodeTypeList" :key="item.id" :label="item.name" :value="item.code">
|
||||||
v-for="item in taskNodeTypeList"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.code"
|
|
||||||
>
|
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -141,88 +81,43 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item> -->
|
</el-form-item> -->
|
||||||
<el-form-item label="二级分类描述" prop="">
|
<el-form-item label="二级分类描述" prop="">
|
||||||
<el-input
|
<el-input v-model="form.secondClassifyDescribe" style="width: 110px" disabled></el-input>
|
||||||
v-model="form.secondClassifyDescribe"
|
|
||||||
style="width: 110px"
|
|
||||||
disabled
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="执行时间" prop="">
|
<el-form-item label="执行时间" prop="">
|
||||||
<el-time-select
|
<el-time-select v-model="form.executionTime" style="width: 120px" placeholder="选择时间" disabled>
|
||||||
v-model="form.executionTime"
|
|
||||||
style="width: 120px"
|
|
||||||
placeholder="选择时间"
|
|
||||||
disabled
|
|
||||||
>
|
|
||||||
</el-time-select>
|
</el-time-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item label="问卷库模板选择" prop="" v-if="form.taskNodeType == 'QUESTIONNAIRE_SCALE'">
|
||||||
label="问卷库模板选择"
|
<question @on-template="questionontemplate" :templateId="form.templateId" :node="form.phoneDialMethod"
|
||||||
prop=""
|
:templateName="form.templateName"></question>
|
||||||
v-if="form.taskNodeType == 'QUESTIONNAIRE_SCALE'"
|
|
||||||
>
|
|
||||||
<question
|
|
||||||
@on-template="questionontemplate"
|
|
||||||
:templateId="form.templateId"
|
|
||||||
:templateName="form.templateName"
|
|
||||||
></question>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<span
|
<span style="display: inline-block; width: 10px"
|
||||||
style="display: inline-block; width: 10px"
|
v-if="form.taskNodeType == 'QUESTIONNAIRE_SCALE' && form.templateId">
|
||||||
v-if="
|
|
||||||
form.taskNodeType == 'QUESTIONNAIRE_SCALE' && form.templateId
|
|
||||||
"
|
|
||||||
>
|
|
||||||
<el-button @click.native="looklist">预览</el-button>
|
<el-button @click.native="looklist">预览</el-button>
|
||||||
</span>
|
</span>
|
||||||
<el-form-item
|
<el-form-item label="开启人工随访" v-if="form.taskNodeType == 'QUESTIONNAIRE_SCALE'" style="margin-left: 75px">
|
||||||
label="开启人工随访"
|
<el-switch v-model="form.phoneDialMethod" active-color="#13ce66" active-value="COMMON"
|
||||||
v-if="form.taskNodeType == 'QUESTIONNAIRE_SCALE'"
|
@change="changephoneDialMethod" inactive-value="AI">
|
||||||
style="margin-left: 75px"
|
|
||||||
>
|
|
||||||
<el-switch
|
|
||||||
v-model="form.phoneDialMethod"
|
|
||||||
active-color="#13ce66"
|
|
||||||
active-value="COMMON"
|
|
||||||
inactive-value=" "
|
|
||||||
>
|
|
||||||
</el-switch>
|
</el-switch>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item label="宣教库模板选择" prop="" v-if="form.taskNodeType == 'PROPAGANDA_ARTICLE'">
|
||||||
label="宣教库模板选择"
|
<propaganda @on-template="propagandaontemplate" :templateId="form.templateId"
|
||||||
prop=""
|
:templateName="form.templateName"></propaganda>
|
||||||
v-if="form.taskNodeType == 'PROPAGANDA_ARTICLE'"
|
|
||||||
>
|
|
||||||
<propaganda
|
|
||||||
@on-template="propagandaontemplate"
|
|
||||||
:templateId="form.templateId"
|
|
||||||
:templateName="form.templateName"
|
|
||||||
></propaganda>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<span
|
<span style="display: inline-block; width: 10px" v-if="
|
||||||
style="display: inline-block; width: 10px"
|
form.taskNodeType == 'PROPAGANDA_ARTICLE' && form.templateId
|
||||||
v-if="
|
">
|
||||||
form.taskNodeType == 'PROPAGANDA_ARTICLE' && form.templateId
|
|
||||||
"
|
|
||||||
>
|
|
||||||
<el-button @click="imagepreviews">预览</el-button>
|
<el-button @click="imagepreviews">预览</el-button>
|
||||||
</span>
|
</span>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
<!-- 宣教 -->
|
<!-- 宣教 -->
|
||||||
<el-dialog
|
<el-dialog title="宣教预览" :visible.sync="imageScriptpreviews" width="60%">
|
||||||
title="宣教预览"
|
<div class="imageScriptpreviews" v-if="
|
||||||
:visible.sync="imageScriptpreviews"
|
formview &&
|
||||||
width="60%"
|
form.taskNodeType == 'PROPAGANDA_ARTICLE' &&
|
||||||
>
|
form.templateId
|
||||||
<div
|
">
|
||||||
class="imageScriptpreviews"
|
|
||||||
v-if="
|
|
||||||
formview &&
|
|
||||||
form.taskNodeType == 'PROPAGANDA_ARTICLE' &&
|
|
||||||
form.templateId
|
|
||||||
"
|
|
||||||
>
|
|
||||||
<div class="titletop">文章模板:{{ formview.propagandaTitle }}</div>
|
<div class="titletop">文章模板:{{ formview.propagandaTitle }}</div>
|
||||||
<div class="bodytop">
|
<div class="bodytop">
|
||||||
<div class="titledata">{{ formview.propagandaTitle }}</div>
|
<div class="titledata">{{ formview.propagandaTitle }}</div>
|
||||||
@ -230,48 +125,29 @@
|
|||||||
<img :src="baseUrl + formview.propagandaCoverPath" alt="" />
|
<img :src="baseUrl + formview.propagandaCoverPath" alt="" />
|
||||||
<div class="know">知识卡片</div>
|
<div class="know">知识卡片</div>
|
||||||
<div class="knowlist">
|
<div class="knowlist">
|
||||||
<Editorxj
|
<Editorxj v-model="formview.propagandaContent" :min-height="192" />
|
||||||
v-model="formview.propagandaContent"
|
|
||||||
:min-height="192"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" @click="imageScriptpreviews = false"
|
<el-button type="primary" @click="imageScriptpreviews = false">关闭</el-button>
|
||||||
>关闭</el-button
|
|
||||||
>
|
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<!-- 问卷 -->
|
<!-- 问卷 -->
|
||||||
<el-dialog
|
<el-dialog title="问卷预览" :visible.sync="lookquestionlist" width="40%">
|
||||||
title="问卷预览"
|
|
||||||
:visible.sync="lookquestionlist"
|
|
||||||
width="40%"
|
|
||||||
>
|
|
||||||
<questionopennew :lookitemnew="lookitemnew"></questionopennew>
|
<questionopennew :lookitemnew="lookitemnew"></questionopennew>
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" @click="lookquestionlist = false"
|
<el-button type="primary" @click="lookquestionlist = false">关闭</el-button>
|
||||||
>关闭</el-button
|
|
||||||
>
|
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<div class="bottomform">
|
<div class="bottomform">
|
||||||
<wangeditor
|
<wangeditor v-show="form.taskNodeType != 'QUESTIONNAIRE_SCALE' &&
|
||||||
v-show="
|
form.taskNodeType != 'PROPAGANDA_ARTICLE' &&
|
||||||
form.taskNodeType != 'QUESTIONNAIRE_SCALE' &&
|
form.taskNodeType != 'PHONE_OUTBOUND'
|
||||||
form.taskNodeType != 'PROPAGANDA_ARTICLE' &&
|
" style="width: 100%" :nodeContent="form.nodeContent" :taskPartitionDictId="taskPartitionDictId"
|
||||||
form.taskNodeType != 'PHONE_OUTBOUND'
|
:taskSubdivision="form.taskSubdivision" :specialDiseaseNodeId="form.specialDiseaseNodeId"
|
||||||
"
|
@on-nodeContent="onNodeContent" ref="wangeditor" />
|
||||||
style="width: 100%"
|
|
||||||
:nodeContent="form.nodeContent"
|
|
||||||
:taskPartitionDictId="taskPartitionDictId"
|
|
||||||
:taskSubdivision="form.taskSubdivision"
|
|
||||||
:specialDiseaseNodeId="form.specialDiseaseNodeId"
|
|
||||||
@on-nodeContent="onNodeContent"
|
|
||||||
ref="wangeditor"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<div class="card" v-show="form.taskNodeType != 'PHONE_OUTBOUND'">
|
<div class="card" v-show="form.taskNodeType != 'PHONE_OUTBOUND'">
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
@ -281,19 +157,11 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
模板:
|
模板:
|
||||||
<message
|
<message @on-template="messageontemplate" :templateId="form.messageTemplateId"
|
||||||
@on-template="messageontemplate"
|
:templateName="form.messageTemplateName"></message>
|
||||||
:templateId="form.messageTemplateId"
|
|
||||||
:templateName="form.messageTemplateName"
|
|
||||||
></message>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
<el-switch
|
<el-switch v-model="form.messagePushSign" active-color="#13ce66" active-value="1" inactive-value="0">
|
||||||
v-model="form.messagePushSign"
|
|
||||||
active-color="#13ce66"
|
|
||||||
active-value="1"
|
|
||||||
inactive-value="0"
|
|
||||||
>
|
|
||||||
</el-switch>
|
</el-switch>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -311,21 +179,13 @@
|
|||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
模板:
|
模板:
|
||||||
<span>
|
<span>
|
||||||
<officialAccount
|
<officialAccount @on-template="officialAccountontemplate" :templateId="form.officialTemplateId"
|
||||||
@on-template="officialAccountontemplate"
|
:templateName="form.officialTemplateName">
|
||||||
:templateId="form.officialTemplateId"
|
|
||||||
:templateName="form.officialTemplateName"
|
|
||||||
>
|
|
||||||
</officialAccount>
|
</officialAccount>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
<el-switch
|
<el-switch v-model="form.officialPushSign" active-color="#13ce66" active-value="1" inactive-value="0">
|
||||||
v-model="form.officialPushSign"
|
|
||||||
active-color="#13ce66"
|
|
||||||
active-value="1"
|
|
||||||
inactive-value="0"
|
|
||||||
>
|
|
||||||
</el-switch>
|
</el-switch>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -343,21 +203,13 @@
|
|||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
模板:
|
模板:
|
||||||
<span>
|
<span>
|
||||||
<miniProgram
|
<miniProgram @on-template="miniProgramtemplate" :templateId="form.appletTemplateId"
|
||||||
@on-template="miniProgramtemplate"
|
:templateName="form.appletTemplateName">
|
||||||
:templateId="form.appletTemplateId"
|
|
||||||
:templateName="form.appletTemplateName"
|
|
||||||
>
|
|
||||||
</miniProgram>
|
</miniProgram>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
<el-switch
|
<el-switch v-model="form.appletPushSign" active-color="#13ce66" active-value="1" inactive-value="0">
|
||||||
v-model="form.appletPushSign"
|
|
||||||
active-color="#13ce66"
|
|
||||||
active-value="1"
|
|
||||||
inactive-value="0"
|
|
||||||
>
|
|
||||||
</el-switch>
|
</el-switch>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -370,19 +222,12 @@
|
|||||||
<el-input v-model="form.appletPromptDescription" class="textarea" disabled></el-input>
|
<el-input v-model="form.appletPromptDescription" class="textarea" disabled></el-input>
|
||||||
</div> -->
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div class="card" style="margin-top: -30px" v-show="form.taskNodeType == 'PHONE_OUTBOUND'">
|
||||||
class="card"
|
|
||||||
style="margin-top: -30px"
|
|
||||||
v-show="form.taskNodeType == 'PHONE_OUTBOUND'"
|
|
||||||
>
|
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
推送方式:
|
推送方式:
|
||||||
<span>
|
<span>
|
||||||
<el-radio-group
|
<el-radio-group v-model="form.phoneDialMethod" @change="changephoneDialMethod">
|
||||||
v-model="form.phoneDialMethod"
|
|
||||||
@change="changephoneDialMethod"
|
|
||||||
>
|
|
||||||
<el-radio label="COMMON">人工电话</el-radio>
|
<el-radio label="COMMON">人工电话</el-radio>
|
||||||
<el-radio label="AI">自动外呼</el-radio>
|
<el-radio label="AI">自动外呼</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
@ -392,23 +237,11 @@
|
|||||||
<div class="flexs">
|
<div class="flexs">
|
||||||
<div class="pushMethods">
|
<div class="pushMethods">
|
||||||
话术模板:
|
话术模板:
|
||||||
<span
|
<span :class="form.templateId && form.phoneDialMethod == 'COMMON' ? 'spanname' : ''">
|
||||||
:class="
|
<scripts @on-template="messageontemplateword" :templateId="form.phoneTemplateId"
|
||||||
form.templateId && form.phoneDialMethod == 'COMMON'
|
:node="form.phoneDialMethod" :templateName="form.phoneTemplateName"></scripts>
|
||||||
? 'spanname'
|
|
||||||
: ''
|
|
||||||
"
|
|
||||||
>
|
|
||||||
<scripts
|
|
||||||
@on-template="messageontemplateword"
|
|
||||||
:templateId="form.phoneTemplateId"
|
|
||||||
:templateName="form.phoneTemplateName"
|
|
||||||
></scripts>
|
|
||||||
</span>
|
</span>
|
||||||
<span
|
<span style="display: inline-block; width: 10px" v-if="form.phoneTemplateId">
|
||||||
style="display: inline-block; width: 10px"
|
|
||||||
v-if="form.phoneTemplateId"
|
|
||||||
>
|
|
||||||
<el-button @click="look">预览</el-button>
|
<el-button @click="look">预览</el-button>
|
||||||
</span>
|
</span>
|
||||||
<!-- <br/> -->
|
<!-- <br/> -->
|
||||||
@ -437,17 +270,9 @@
|
|||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
重拨次数:
|
重拨次数:
|
||||||
<span>
|
<span>
|
||||||
<el-select
|
<el-select v-model="form.phoneRedialTimes" style="width: 110px" @change="changephoneRedialTimes">
|
||||||
v-model="form.phoneRedialTimes"
|
<el-option v-for="item in optionslistS" :key="item.dictValue" :label="item.dictLabel"
|
||||||
style="width: 110px"
|
:value="item.dictValue">
|
||||||
@change="changephoneRedialTimes"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in optionslistS"
|
|
||||||
:key="item.dictValue"
|
|
||||||
:label="item.dictLabel"
|
|
||||||
:value="item.dictValue"
|
|
||||||
>
|
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</span>
|
</span>
|
||||||
@ -455,11 +280,8 @@
|
|||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
时间间隔(分):
|
时间间隔(分):
|
||||||
<span>
|
<span>
|
||||||
<el-input
|
<el-input v-model.number="form.phoneTimeInterval" oninput="value=value.replace(/[^\d]/g,'')"
|
||||||
v-model.number="form.phoneTimeInterval"
|
style="width: 100px">
|
||||||
oninput="value=value.replace(/[^\d]/g,'')"
|
|
||||||
style="width: 100px"
|
|
||||||
>
|
|
||||||
<!-- <el-option
|
<!-- <el-option
|
||||||
v-for="item in optionslistS"
|
v-for="item in optionslistS"
|
||||||
:key="item.dictValue"
|
:key="item.dictValue"
|
||||||
@ -472,63 +294,35 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
短信提醒:
|
短信提醒:
|
||||||
<el-select
|
<el-select v-model="form.phoneMessageRemind" style="width: 150px">
|
||||||
v-model="form.phoneMessageRemind"
|
<el-option v-for="item in optionslist" :key="item.dictValue" :label="item.dictLabel"
|
||||||
style="width: 150px"
|
:value="item.dictValue">
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in optionslist"
|
|
||||||
:key="item.dictValue"
|
|
||||||
:label="item.dictLabel"
|
|
||||||
:value="item.dictValue"
|
|
||||||
>
|
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</div>
|
</div>
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
短信模板:
|
短信模板:
|
||||||
<span
|
<span :class="form.phoneMessageRemind == 'NOT_SEND_MESSAGE'
|
||||||
:class="
|
? 'spanname'
|
||||||
form.phoneMessageRemind == 'NOT_SEND_MESSAGE'
|
: ''
|
||||||
? 'spanname'
|
">
|
||||||
: ''
|
<message style="width: 200px" @on-template="messageontemplateMESSAGE"
|
||||||
"
|
:templateId="form.phoneMessageTemplateId" :templateName="form.phoneMessageTemplateName"></message>
|
||||||
>
|
|
||||||
<message
|
|
||||||
style="width: 200px"
|
|
||||||
@on-template="messageontemplateMESSAGE"
|
|
||||||
:templateId="form.phoneMessageTemplateId"
|
|
||||||
:templateName="form.phoneMessageTemplateName"
|
|
||||||
></message>
|
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- 话术模板内容 -->
|
<!-- 话术模板内容 -->
|
||||||
<el-dialog
|
<el-dialog title="话术预览" :visible.sync="lookNodeContent" width="90%">
|
||||||
title="话术预览"
|
<Scriptpreview :phoneNodeContent="phoneNodeContent"></Scriptpreview>
|
||||||
:visible.sync="lookNodeContent"
|
|
||||||
width="90%"
|
|
||||||
>
|
|
||||||
<Scriptpreview
|
|
||||||
:phoneNodeContent="phoneNodeContent"
|
|
||||||
></Scriptpreview>
|
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" @click="lookNodeContent = false"
|
<el-button type="primary" @click="lookNodeContent = false">关闭</el-button>
|
||||||
>关闭</el-button
|
|
||||||
>
|
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<!-- 问卷模板内容 -->
|
<!-- 问卷模板内容 -->
|
||||||
<el-dialog
|
<el-dialog title="问卷预览" :visible.sync="lookquestionname" width="40%">
|
||||||
title="问卷预览"
|
|
||||||
:visible.sync="lookquestionname"
|
|
||||||
width="40%"
|
|
||||||
>
|
|
||||||
<questionopennew :lookitemnew="lookitemnew"></questionopennew>
|
<questionopennew :lookitemnew="lookitemnew"></questionopennew>
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" @click="lookquestionname = false"
|
<el-button type="primary" @click="lookquestionname = false">关闭</el-button>
|
||||||
>关闭</el-button
|
|
||||||
>
|
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</div>
|
</div>
|
||||||
@ -537,42 +331,19 @@
|
|||||||
</div>
|
</div>
|
||||||
<div slot="footer" class="dialog-footer">
|
<div slot="footer" class="dialog-footer">
|
||||||
<el-button @click="TemporaryStorage">暂 存</el-button>
|
<el-button @click="TemporaryStorage">暂 存</el-button>
|
||||||
<el-button
|
<el-button type="primary" @click="dialogVisible = true" v-if="form.specialDiseaseNodeId">审核完成 {{ agreeNumber ?
|
||||||
type="primary"
|
agreeNumber : "0" }} /
|
||||||
@click="dialogVisible = true"
|
{{ totalNumber ? totalNumber : "0" }}</el-button>
|
||||||
v-if="form.specialDiseaseNodeId"
|
|
||||||
>审核完成 {{ agreeNumber ? agreeNumber : "0" }} /
|
|
||||||
{{ totalNumber ? totalNumber : "0" }}</el-button
|
|
||||||
>
|
|
||||||
</div>
|
</div>
|
||||||
<el-dialog
|
<el-dialog title="提交审核完成" :visible.sync="dialogVisible" width="30%" :before-close="handleClose">
|
||||||
title="提交审核完成"
|
<el-form ref="routeform" :model="routeform" label-width="120px" :rules="rules">
|
||||||
:visible.sync="dialogVisible"
|
|
||||||
width="30%"
|
|
||||||
:before-close="handleClose"
|
|
||||||
>
|
|
||||||
<el-form
|
|
||||||
ref="routeform"
|
|
||||||
:model="routeform"
|
|
||||||
label-width="120px"
|
|
||||||
:rules="rules"
|
|
||||||
>
|
|
||||||
<el-form-item label="节点审核状态" prop="routeCheckStatus">
|
<el-form-item label="节点审核状态" prop="routeCheckStatus">
|
||||||
<el-radio v-model="routeform.routeCheckStatus" label="AGREE"
|
<el-radio v-model="routeform.routeCheckStatus" label="AGREE">同意</el-radio>
|
||||||
>同意</el-radio
|
<el-radio v-model="routeform.routeCheckStatus" label="DISAGREE">不同意</el-radio>
|
||||||
>
|
|
||||||
<el-radio v-model="routeform.routeCheckStatus" label="DISAGREE"
|
|
||||||
>不同意</el-radio
|
|
||||||
>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<div class="txxt">
|
<div class="txxt">
|
||||||
<el-form-item label="节点审核备注">
|
<el-form-item label="节点审核备注">
|
||||||
<el-input
|
<el-input type="textarea" :rows="2" placeholder="请输入节点审核备注" v-model="routeform.routeCheckRemark">
|
||||||
type="textarea"
|
|
||||||
:rows="2"
|
|
||||||
placeholder="请输入节点审核备注"
|
|
||||||
v-model="routeform.routeCheckRemark"
|
|
||||||
>
|
|
||||||
</el-input>
|
</el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</div>
|
</div>
|
||||||
@ -743,7 +514,7 @@ export default {
|
|||||||
// phoneTemplateId
|
// phoneTemplateId
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
mounted() {},
|
mounted() { },
|
||||||
methods: {
|
methods: {
|
||||||
//重播次数
|
//重播次数
|
||||||
changephoneRedialTimes(e) {
|
changephoneRedialTimes(e) {
|
||||||
@ -773,24 +544,12 @@ export default {
|
|||||||
},
|
},
|
||||||
// 切换人工和自动
|
// 切换人工和自动
|
||||||
changephoneDialMethod(e) {
|
changephoneDialMethod(e) {
|
||||||
if (e == "AI") {
|
this.form.templateId = "";
|
||||||
// this.form.templateId=''
|
this.form.templateName = "";
|
||||||
// 清空问卷id和名字
|
this.form.phoneTemplateId = "";
|
||||||
this.form.phoneTemplateId = "";
|
this.form.phoneTemplateName = "";
|
||||||
this.form.phoneTemplateName = "";
|
this.form.robotPublishId = "";
|
||||||
// 清空话术和问卷
|
this.lookitemnew = "";
|
||||||
// this.phoneNodeContent = "";
|
|
||||||
this.lookitemnew = "";
|
|
||||||
} else if (e == "COMMON") {
|
|
||||||
// 清空问卷id话术id和对应名字
|
|
||||||
this.form.templateId = "";
|
|
||||||
this.form.templateName = "";
|
|
||||||
this.form.phoneTemplateId = "";
|
|
||||||
this.form.phoneTemplateName = "";
|
|
||||||
// 清空话术和问卷
|
|
||||||
// this.phoneNodeContent = "";
|
|
||||||
this.lookitemnew = "";
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
infolistword() {
|
infolistword() {
|
||||||
var dictType = "text_message_remind";
|
var dictType = "text_message_remind";
|
||||||
@ -1020,6 +779,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.robotPublishId = item.robotPublishId;
|
||||||
this.lists[this.listindex].list[this.itemindex].scriptInfoId =
|
this.lists[this.listindex].list[this.itemindex].scriptInfoId =
|
||||||
item.scriptInfoId;
|
item.scriptInfoId;
|
||||||
this.lists[this.listindex].list[this.itemindex].phoneTemplateId =
|
this.lists[this.listindex].list[this.itemindex].phoneTemplateId =
|
||||||
@ -1057,29 +817,24 @@ export default {
|
|||||||
});
|
});
|
||||||
this.updata.specialDiseaseNodeList = [];
|
this.updata.specialDiseaseNodeList = [];
|
||||||
this.lists.forEach((e) => {
|
this.lists.forEach((e) => {
|
||||||
e.list.length > 0
|
e.list.length > 0 ? e.list.forEach((el) => {
|
||||||
? e.list.forEach((el) => {
|
el.routeNodeDay = e.routeNodeDay;
|
||||||
console.log(el, "el");
|
el.routeNodeName = e.routeNodeName;
|
||||||
|
if (el.phoneDialMethod == "COMMON" && el.templateId) {
|
||||||
// return;
|
el.phonePushSign = "1";
|
||||||
el.routeNodeDay = e.routeNodeDay;
|
el.taskNodeType = "QUESTIONNAIRE_SCALE";
|
||||||
el.routeNodeName = e.routeNodeName;
|
} else if (
|
||||||
if (el.phoneDialMethod == "COMMON" && el.templateId) {
|
el.phoneDialMethod == "COMMON" &&
|
||||||
el.phonePushSign = "1";
|
el.phoneTemplateId
|
||||||
el.taskNodeType = "QUESTIONNAIRE_SCALE";
|
) {
|
||||||
} else if (
|
el.phonePushSign = "1";
|
||||||
el.phoneDialMethod == "COMMON" &&
|
el.taskNodeType = "PHONE_OUTBOUND";
|
||||||
el.phoneTemplateId
|
} else if (el.phoneDialMethod == "AI" && el.phoneTemplateId) {
|
||||||
) {
|
el.taskNodeType = "PHONE_OUTBOUND";
|
||||||
el.phonePushSign = "1";
|
el.phonePushSign = "1";
|
||||||
el.taskNodeType = "PHONE_OUTBOUND";
|
}
|
||||||
} else if (el.phoneDialMethod == "AI" && el.phoneTemplateId) {
|
this.updata.specialDiseaseNodeList.push(el);
|
||||||
el.taskNodeType = "PHONE_OUTBOUND";
|
}) : "";
|
||||||
el.phonePushSign = "1";
|
|
||||||
}
|
|
||||||
this.updata.specialDiseaseNodeList.push(el);
|
|
||||||
})
|
|
||||||
: "";
|
|
||||||
});
|
});
|
||||||
// this.updata.specialDiseaseNodeList =
|
// this.updata.specialDiseaseNodeList =
|
||||||
// this.updata.specialDiseaseNodeList.filter(
|
// this.updata.specialDiseaseNodeList.filter(
|
||||||
@ -1093,7 +848,6 @@ export default {
|
|||||||
// return;
|
// return;
|
||||||
this.updata.specialDiseaseNodeList.forEach((ele) => {
|
this.updata.specialDiseaseNodeList.forEach((ele) => {
|
||||||
loading.close();
|
loading.close();
|
||||||
|
|
||||||
if (ele.taskNodeType == "PHONE_OUTBOUND") {
|
if (ele.taskNodeType == "PHONE_OUTBOUND") {
|
||||||
if (ele.phoneDialMethod == null || ele.phoneDialMethod == "") {
|
if (ele.phoneDialMethod == null || ele.phoneDialMethod == "") {
|
||||||
this.$message.error("请先选择推送方式");
|
this.$message.error("请先选择推送方式");
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user