患者信息详预览+任务记录
This commit is contained in:
parent
7b75ee9ce3
commit
4879faaaee
@ -8,11 +8,18 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="select">
|
<div class="select">
|
||||||
<span> 适用范围 </span>
|
<span> 适用范围 </span>
|
||||||
<el-select v-model="updata.suitRange" disabled>
|
<el-select
|
||||||
<el-option label="在院" value="IN_THE_HOSPITAL" />
|
v-model="updata.suitRange"
|
||||||
<el-option label="出院" value="DISCHARGE" />
|
placeholder="请选择"
|
||||||
<el-option label="门诊" value="OUTPATIENT_SERVICE" />
|
@change="changeoptions"
|
||||||
<el-option label="门诊+出院" value="OUTPATIENT_SERVICE_DISCHARGE" />
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in options"
|
||||||
|
:key="item.dictValue"
|
||||||
|
:label="item.dictLabel"
|
||||||
|
:value="item.dictValue"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -23,32 +30,69 @@
|
|||||||
<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 v-for="(item, index) in lists" :key="index" :color="listindex == index ? '#409EFF' : ''">
|
<el-timeline-item
|
||||||
|
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" disabled style="width: 87px">
|
<el-select v-model="item.routeNodeName" style="width: 100px">
|
||||||
<el-option label="出院后" value="AFTER_DISCHARGE" />
|
<el-option
|
||||||
|
v-for="item in parentDictCodelist"
|
||||||
|
:key="item.dictValue"
|
||||||
|
:label="item.dictLabel"
|
||||||
|
:value="item.dictValue"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
|
<!-- <el-option label="出院后" value="AFTER_DISCHARGE" />
|
||||||
<el-option label="入院后" value="AFTER_ADMISSION" />
|
<el-option label="入院后" value="AFTER_ADMISSION" />
|
||||||
<el-option label="就诊后" value="AFTER_CONSULTATION" />
|
<el-option label="就诊后" value="AFTER_CONSULTATION" />
|
||||||
<el-option label="就诊/出院后" value="AFTER_VISIT_DISCHARGE" />
|
<el-option
|
||||||
|
label="就诊/出院后"
|
||||||
|
value="AFTER_VISIT_DISCHARGE"
|
||||||
|
/>
|
||||||
<el-option label="术前" value="PREOPERATIVE" />
|
<el-option label="术前" value="PREOPERATIVE" />
|
||||||
<el-option label="术后" value="POSTOPERATIVE" />
|
<el-option label="术后" value="POSTOPERATIVE" /> -->
|
||||||
</el-select>
|
</el-select>
|
||||||
<el-input v-model="item.routeNodeDay" disabled style="width: 50px"></el-input>
|
<el-input
|
||||||
|
v-model="item.routeNodeDay"
|
||||||
|
style="width: 70px"
|
||||||
|
type="number"
|
||||||
|
: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 class="el-icon-circle-plus-outline" @click="additem(item)"></i>
|
<i
|
||||||
|
class="el-icon-circle-plus-outline"
|
||||||
|
@click="additem(item)"
|
||||||
|
></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-card v-for="(uitem, uindex) in item.list" :key="uitem.id"
|
<el-card
|
||||||
@click.native="bottomclickevent(uitem, index, uindex, item)"
|
v-for="(uitem, uindex) in item.list"
|
||||||
:class="listindex == index && itemindex == uindex ? 'cards' : ''">
|
:key="uitem.id"
|
||||||
|
@click.native="bottomclickevent(uitem, index, uindex)"
|
||||||
|
:class="listindex == index && itemindex == uindex ? 'cards' : ''"
|
||||||
|
>
|
||||||
<h3 style="height: 20px">{{ uitem.taskTypeName }}</h3>
|
<h3 style="height: 20px">{{ uitem.taskTypeName }}</h3>
|
||||||
<el-tag v-if="uitem.nodeExecuteStatus == 'EXECUTED'" class="routeCheckStatus">已执行</el-tag>
|
<el-tag
|
||||||
<el-tag v-else type="warning" class="routeCheckStatus">未执行</el-tag>
|
v-if="uitem.routeCheckStatus == 'AGREE'"
|
||||||
<p style="height: 16px">{{ uitem.taskPartitionDictName }}</p>
|
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>
|
||||||
</el-card>
|
</el-card>
|
||||||
</el-timeline-item>
|
</el-timeline-item>
|
||||||
</el-timeline>
|
</el-timeline>
|
||||||
@ -57,82 +101,102 @@
|
|||||||
<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 v-model="form.taskType" disabled style="width: 110px" @change="changeTaskType">
|
<el-select
|
||||||
<el-option v-for="item in selectTaskTypeList" :key="item.taskTypeCode" :label="item.taskTypeName"
|
v-model="form.taskType"
|
||||||
:value="item.taskTypeCode">
|
style="width: 110px"
|
||||||
|
@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 v-model="form.taskSubdivision" disabled style="width: 110px" @change="changetaskSubdivision">
|
<el-select
|
||||||
<el-option v-for="item in taskPartitionList" :key="item.taskPartitionCode" :label="item.taskTypeName"
|
v-model="form.taskSubdivision"
|
||||||
:value="item.taskPartitionCode">
|
style="width: 110px"
|
||||||
|
@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.taskStatus" disabled style="width: 100px">
|
<el-select v-model="form.taskStatus" style="width: 110px">
|
||||||
<el-option v-for="item in taskStatusDictList" :key="item.id" :label="item.taskStatusName"
|
<el-option
|
||||||
:value="item.taskStatusCode">
|
v-for="item in taskStatusDictList"
|
||||||
|
:key="item.id"
|
||||||
|
:label="item.taskStatusName"
|
||||||
|
:value="item.taskStatusCode"
|
||||||
|
>
|
||||||
</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-input v-model="form.secondClassifyDescribe" disabled style="width: 100px"></el-input>
|
<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 v-model="form.executeTime" disabled style="width: 120px" placeholder="选择时间">
|
<el-time-select
|
||||||
|
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="问卷库模板选择"
|
label="问卷库模板选择"
|
||||||
prop=""
|
prop=""
|
||||||
v-if="form.taskSubdivisiontemplateType == 'QUESTIONNAIRE'"
|
v-if="form.taskSubdivisiontemplateType == 'QUESTIONNAIRE'"
|
||||||
>
|
>
|
||||||
<el-input
|
<question
|
||||||
v-model="form.templateName"
|
@on-template="questionontemplate"
|
||||||
disabled
|
:templateId="form.templateId"
|
||||||
style="width: 200px"
|
:templateName="form.templateName"
|
||||||
></el-input>
|
></question>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="宣教库模板选择"
|
label="宣教库模板选择"
|
||||||
prop=""
|
prop=""
|
||||||
v-if="form.taskSubdivisiontemplateType == 'PROPAGANDA'"
|
v-if="form.taskSubdivisiontemplateType == 'PROPAGANDA'"
|
||||||
>
|
>
|
||||||
<el-input
|
<propaganda
|
||||||
v-model="form.templateName"
|
@on-template="propagandaontemplate"
|
||||||
disabled
|
:templateId="form.templateId"
|
||||||
style="width: 200px"
|
:templateName="form.templateName"
|
||||||
></el-input>
|
></propaganda>
|
||||||
</el-form-item> -->
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
<div class="bottomform">
|
<div class="bottomform">
|
||||||
<!-- 问卷预览弹框 -->
|
<wangeditor
|
||||||
<questionopennew style="width: 100%; background: #fff" ref="question" :lookitemnew="lookitemnew"
|
style="width: 100%;background-color: red;"
|
||||||
v-if="form.templateType == 'QUESTIONNAIRE'"></questionopennew>
|
:nodeContent="form.nodeContent"
|
||||||
<div class="propaganda" v-else-if="form.templateType == 'PROPAGANDA'">
|
@on-nodeContent="onNodeContent"
|
||||||
<div class="titletop">
|
v-show="
|
||||||
文章模板:{{ lookitemnew.propagandaTitle }}
|
form.taskSubdivisiontemplateType != 'QUESTIONNAIRE' &&
|
||||||
</div>
|
form.taskSubdivisiontemplateType != 'PROPAGANDA' &&
|
||||||
<div class="bodytop">
|
form.taskSubdivisiontemplateType != 'SCRIPT'
|
||||||
<div class="titledata">{{ lookitemnew.propagandaTitle }}</div>
|
"
|
||||||
<div>
|
ref="wangeditor"
|
||||||
<img :src="baseUrl + lookitemnew.propagandaCoverPath" alt="" />
|
/>
|
||||||
<div class="know">知识卡片</div>
|
<div
|
||||||
<div class="knowlist">
|
class="card"
|
||||||
<Editorxj v-model="lookitemnew.propagandaContent" :min-height="192" />
|
v-show="form.taskSubdivisiontemplateType != 'SCRIPT'"
|
||||||
</div>
|
>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div v-else>
|
|
||||||
<wangeditor style="width: 100%"
|
|
||||||
v-show="form.taskSubdivisiontemplateType != 'QUESTIONNAIRE' && form.taskSubdivisiontemplateType != 'PROPAGANDA'"
|
|
||||||
:nodeContent="form.nodeContent" @on-nodeContent="onNodeContent" ref="wangeditor" />
|
|
||||||
</div>
|
|
||||||
<div class="card">
|
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
推送方式:
|
推送方式:
|
||||||
@ -140,20 +204,31 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
模板:
|
模板:
|
||||||
<el-input v-model="form.messageTemplateName" disabled style="width: 200px"></el-input>
|
<message
|
||||||
|
@on-template="messageontemplate"
|
||||||
|
:templateId="form.messageTemplateId"
|
||||||
|
:templateName="form.messageTemplateName"
|
||||||
|
></message>
|
||||||
</div>
|
</div>
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
<el-switch v-model="form.messagePushSign" disabled active-color="#13ce66" active-value="1"
|
<el-switch
|
||||||
inactive-value="0">
|
v-model="form.messagePushSign"
|
||||||
|
active-color="#13ce66"
|
||||||
|
active-value="1"
|
||||||
|
inactive-value="0"
|
||||||
|
>
|
||||||
</el-switch>
|
</el-switch>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flextwo">
|
<!-- <div class="flextwo">
|
||||||
<div class="text">短信预览:</div>
|
<div class="text">短信预览:</div>
|
||||||
<el-input class="textarea" v-model="form.messagePreview" disabled></el-input>
|
<el-input class="textarea" v-model="form.messagePreview" disabled></el-input>
|
||||||
</div>
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
<div class="card">
|
<div
|
||||||
|
class="card"
|
||||||
|
v-show="form.taskSubdivisiontemplateType != 'SCRIPT'"
|
||||||
|
>
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
推送方式:
|
推送方式:
|
||||||
@ -162,21 +237,33 @@
|
|||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
模板:
|
模板:
|
||||||
<span>
|
<span>
|
||||||
<el-input v-model="form.officialTemplateName" disabled style="width: 200px"></el-input>
|
<officialAccount
|
||||||
|
@on-template="officialAccountontemplate"
|
||||||
|
:templateId="form.officialTemplateId"
|
||||||
|
:templateName="form.officialTemplateName"
|
||||||
|
>
|
||||||
|
</officialAccount>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
<el-switch v-model="form.officialPushSign" disabled active-color="#13ce66" active-value="1"
|
<el-switch
|
||||||
inactive-value="0">
|
v-model="form.officialPushSign"
|
||||||
|
active-color="#13ce66"
|
||||||
|
active-value="1"
|
||||||
|
inactive-value="0"
|
||||||
|
>
|
||||||
</el-switch>
|
</el-switch>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flextwo">
|
<!-- <div class="flextwo">
|
||||||
<div class="text">提醒内容:</div>
|
<div class="text">提醒内容:</div>
|
||||||
<el-input v-model="form.officialRemindContent" disabled class="textarea"></el-input>
|
<el-input v-model="form.officialRemindContent" class="textarea" disabled></el-input>
|
||||||
</div>
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
<div class="card">
|
<div
|
||||||
|
class="card"
|
||||||
|
v-show="form.taskSubdivisiontemplateType != 'SCRIPT'"
|
||||||
|
>
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
推送方式:
|
推送方式:
|
||||||
@ -185,89 +272,136 @@
|
|||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
模板:
|
模板:
|
||||||
<span>
|
<span>
|
||||||
<el-input v-model="form.appletTemplateName" disabled style="width: 200px"></el-input>
|
<miniProgram
|
||||||
|
@on-template="miniProgramtemplate"
|
||||||
|
:templateId="form.appletTemplateId"
|
||||||
|
:templateName="form.appletTemplateName"
|
||||||
|
>
|
||||||
|
</miniProgram>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="pushMethod">
|
<div class="pushMethod">
|
||||||
<el-switch v-model="form.appletPushSign" disabled active-color="#13ce66" active-value="1"
|
<el-switch
|
||||||
inactive-value="0">
|
v-model="form.appletPushSign"
|
||||||
|
active-color="#13ce66"
|
||||||
|
active-value="1"
|
||||||
|
inactive-value="0"
|
||||||
|
>
|
||||||
</el-switch>
|
</el-switch>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flextwo">
|
<!-- <div class="flextwo">
|
||||||
<div class="text">提醒内容:</div>
|
<div class="text">提醒内容:</div>
|
||||||
<el-input v-model="form.appletRemindContent" disabled class="textarea"></el-input>
|
<el-input v-model="form.appletRemindContent" class="textarea" disabled></el-input>
|
||||||
</div>
|
</div>
|
||||||
<div class="flextwo">
|
<div class="flextwo">
|
||||||
<div class="text">提示说明:</div>
|
<div class="text">提示说明:</div>
|
||||||
<el-input v-model="form.appletPromptDescription" disabled class="textarea"></el-input>
|
<el-input v-model="form.appletPromptDescription" class="textarea" disabled></el-input>
|
||||||
|
</div> -->
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
class="card"
|
||||||
|
style="height: 250px"
|
||||||
|
v-show="form.taskSubdivisiontemplateType == 'SCRIPT'"
|
||||||
|
>
|
||||||
|
<div class="flex">
|
||||||
|
<div class="pushMethod">
|
||||||
|
推送方式:
|
||||||
|
<span> 人工电话 </span>
|
||||||
|
</div>
|
||||||
|
<div class="pushMethod">
|
||||||
|
模板:
|
||||||
|
<scripts
|
||||||
|
@on-template="messageontemplateword"
|
||||||
|
:templateId="form.phoneTemplateId"
|
||||||
|
:templateName="form.phoneTemplateName"
|
||||||
|
></scripts>
|
||||||
|
</div>
|
||||||
|
<div class="pushMethod">
|
||||||
|
<el-switch
|
||||||
|
v-model="form.phonePushSign"
|
||||||
|
active-color="#13ce66"
|
||||||
|
active-value="1"
|
||||||
|
inactive-value="0"
|
||||||
|
>
|
||||||
|
</el-switch>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex">
|
||||||
|
<div class="pushMethod">
|
||||||
|
重播次数:
|
||||||
|
<span>
|
||||||
|
<el-select
|
||||||
|
v-model="form.phoneRedialTimes"
|
||||||
|
style="width: 100px"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in optionslistS"
|
||||||
|
:key="item.dictValue"
|
||||||
|
:label="item.dictLabel"
|
||||||
|
:value="item.dictValue"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<div class="pushMethod">
|
||||||
|
时间间隔:
|
||||||
|
<span>
|
||||||
|
<el-input
|
||||||
|
v-model.number="form.phoneTimeInterval"
|
||||||
|
oninput="value=value.replace(/[^\d]/g,'')"
|
||||||
|
style="width: 100px"
|
||||||
|
>
|
||||||
|
<!-- <el-option
|
||||||
|
v-for="item in optionslistS"
|
||||||
|
:key="item.dictValue"
|
||||||
|
:label="item.dictLabel"
|
||||||
|
:value="item.dictValue"
|
||||||
|
>
|
||||||
|
</el-option> -->
|
||||||
|
</el-input>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<div class="pushMethod">
|
||||||
|
短信提醒:
|
||||||
|
<el-select
|
||||||
|
v-model="form.phoneMessageRemind"
|
||||||
|
style="width: 150px"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in optionslist"
|
||||||
|
:key="item.dictValue"
|
||||||
|
:label="item.dictLabel"
|
||||||
|
:value="item.dictValue"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
<div class="pushMethod">
|
||||||
|
短信模板:
|
||||||
|
<span
|
||||||
|
class="spanname"
|
||||||
|
v-if="form.phoneMessageRemind == 'NOT_SEND_MESSAGE'"
|
||||||
|
>
|
||||||
|
<message
|
||||||
|
style="width: 200px"
|
||||||
|
@on-template="messageontemplateMESSAGE"
|
||||||
|
:templateId="form.phoneMessageTemplateId"
|
||||||
|
:templateName="form.phoneMessageTemplateName"
|
||||||
|
></message>
|
||||||
|
</span>
|
||||||
|
<span v-else>
|
||||||
|
<message
|
||||||
|
style="width: 200px"
|
||||||
|
@on-template="messageontemplateMESSAGE"
|
||||||
|
:templateId="form.phoneMessageTemplateId"
|
||||||
|
:templateName="form.phoneMessageTemplateName"
|
||||||
|
></message>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- <div class="card" style="height: 250px;">
|
|
||||||
<div class="flex">
|
|
||||||
<div class="pushMethod">
|
|
||||||
推送方式:
|
|
||||||
<span>
|
|
||||||
AI电话
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
<div class="pushMethod">
|
|
||||||
模板:
|
|
||||||
<span>
|
|
||||||
<el-select v-model="value" style="width:200px;">
|
|
||||||
<el-option v-for="item in taskStatusDictList" :key="item.id" style="color:black"
|
|
||||||
:label="item.taskStatusName" :value="item.id">
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
<div class="pushMethod">
|
|
||||||
<el-switch v-model="form.value" active-color="#13ce66" active-value="1"
|
|
||||||
inactive-value="0">
|
|
||||||
</el-switch>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="flextwo">
|
|
||||||
<div class="text">
|
|
||||||
机构名称:
|
|
||||||
</div>
|
|
||||||
<div class="text">
|
|
||||||
我是
|
|
||||||
</div>
|
|
||||||
<el-input v-model="form.input" placeholder="" style="width:150px;padding:0 10px"></el-input>
|
|
||||||
<div class="text">
|
|
||||||
的工作人员
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="flextwo">
|
|
||||||
<div class="text">
|
|
||||||
重播次数:
|
|
||||||
</div>
|
|
||||||
<el-input v-model="form.input" placeholder="" style="width:200px;"></el-input>
|
|
||||||
<div class="text" style="padding-left: 100px;">
|
|
||||||
时间间隔:
|
|
||||||
</div>
|
|
||||||
<el-input v-model="form.input" placeholder="" style="width:200px;"></el-input>
|
|
||||||
</div>
|
|
||||||
<div class="flextwo">
|
|
||||||
<div class="text">
|
|
||||||
短信提醒:
|
|
||||||
</div>
|
|
||||||
<el-select v-model="value" style="width:200px;">
|
|
||||||
<el-option v-for="item in taskStatusDictList" :key="item.id" style="color:black"
|
|
||||||
:label="item.taskStatusName" :value="item.id">
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
<div class="text" style="padding-left: 100px;">
|
|
||||||
短信模板:
|
|
||||||
</div>
|
|
||||||
<el-select v-model="value" style="width:200px;">
|
|
||||||
<el-option v-for="item in taskStatusDictList" :key="item.id" style="color:black"
|
|
||||||
:label="item.taskStatusName" :value="item.id">
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</div>
|
|
||||||
</div> -->
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -281,18 +415,24 @@ import message from '@/views/system/components/message.vue'
|
|||||||
import propaganda from '@/views/system/components/propaganda.vue'
|
import propaganda from '@/views/system/components/propaganda.vue'
|
||||||
import officialAccount from '@/views/system/components/officialAccount.vue'
|
import officialAccount from '@/views/system/components/officialAccount.vue'
|
||||||
import miniProgram from '@/views/system/components/miniProgram.vue'
|
import miniProgram from '@/views/system/components/miniProgram.vue'
|
||||||
|
import scripts from '@/views/system/components/script.vue'
|
||||||
|
|
||||||
import {
|
import {
|
||||||
selectTaskTypeList, taskPartitionList, taskStatusDictList, specialDiseaseNode, selectSpecialDiseasenew, updateRouteCheckStatus, getById
|
selectTaskTypeList, taskPartitionList, taskStatusDictList, specialDiseaseNode, selectSpecialDiseasenew, updateRouteCheckStatus, getById, selectSpecialDisease,
|
||||||
} from '@/api/system/specialDiseaseNode'
|
} from '@/api/system/specialDiseaseNode'
|
||||||
import questionopennew from '../components/questionopennew.vue';
|
import questionopennew from '../components/questionopennew.vue';
|
||||||
import Editorxj from "../../system/Editorxj/index.vue";
|
import Editorxj from "../../system/Editorxj/index.vue";
|
||||||
|
import { getAgencytype } from "@/api/system/agency";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: { wangeditor, question, propaganda, message, officialAccount, miniProgram, questionopennew, Editorxj },
|
components: { wangeditor, question, propaganda, message, officialAccount, miniProgram, questionopennew, Editorxj, scripts,},
|
||||||
props: ['lookitem'],
|
props: ['lookitem'],
|
||||||
name: "specialDiseaseNodeopen",
|
name: "specialDiseaseNodeopen",
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
options: [],
|
||||||
|
optionslist: [],
|
||||||
|
optionslistS: [],
|
||||||
show: false,
|
show: false,
|
||||||
baseUrl: process.env.VUE_APP_BASE_API,
|
baseUrl: process.env.VUE_APP_BASE_API,
|
||||||
dialogVisible: false,
|
dialogVisible: false,
|
||||||
@ -308,6 +448,7 @@ export default {
|
|||||||
totalNumber: 0,
|
totalNumber: 0,
|
||||||
agreeNumber: 0,
|
agreeNumber: 0,
|
||||||
updata: {
|
updata: {
|
||||||
|
specialDiseaseRouteId: "",
|
||||||
manageRouteId: '',
|
manageRouteId: '',
|
||||||
suitRange: '',
|
suitRange: '',
|
||||||
routeName: '',
|
routeName: '',
|
||||||
@ -325,7 +466,7 @@ export default {
|
|||||||
executionTime: '',
|
executionTime: '',
|
||||||
appletPushSign: '0',
|
appletPushSign: '0',
|
||||||
officialPushSign: '0',
|
officialPushSign: '0',
|
||||||
messagePushSign: '0',
|
messagePushSign: 0,
|
||||||
taskSubdivisiontemplateType: '',
|
taskSubdivisiontemplateType: '',
|
||||||
officialRemindContent: '',
|
officialRemindContent: '',
|
||||||
messagePreview: '',
|
messagePreview: '',
|
||||||
@ -338,18 +479,25 @@ export default {
|
|||||||
lookitemnew: {},
|
lookitemnew: {},
|
||||||
value: '',
|
value: '',
|
||||||
input: '',
|
input: '',
|
||||||
|
parentDictCode: "",
|
||||||
//任务类型
|
//任务类型
|
||||||
selectTaskTypeList: [],
|
selectTaskTypeList: [],
|
||||||
//任务状态
|
//任务状态
|
||||||
taskStatusDictList: [],
|
taskStatusDictList: [],
|
||||||
//任务细分
|
//任务细分
|
||||||
taskPartitionList: [],
|
taskPartitionList: [],
|
||||||
|
parentDictCodelist: [],
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.updata = this.lookitem
|
this.updata = this.lookitem
|
||||||
|
console.log(this.updata)
|
||||||
this.updata.manageRouteId = this.lookitem.manageRouteId
|
this.updata.manageRouteId = this.lookitem.manageRouteId
|
||||||
|
this.updata.specialDiseaseRouteId =this.updata.id
|
||||||
this.taskinfo();
|
this.taskinfo();
|
||||||
|
this.infolistword();
|
||||||
|
this.infolistMESSAGE();
|
||||||
|
this.infolist();
|
||||||
},
|
},
|
||||||
beforeDestroy() { },
|
beforeDestroy() { },
|
||||||
watch: {
|
watch: {
|
||||||
@ -362,25 +510,115 @@ export default {
|
|||||||
mounted() {
|
mounted() {
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
infolistword() {
|
||||||
|
var dictType = "text_message_remind";
|
||||||
|
getAgencytype(dictType).then((res) => {
|
||||||
|
this.optionslist = res.data;
|
||||||
|
// this.taskinfo();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
infolistMESSAGE() {
|
||||||
|
var dictType = "redial_times";
|
||||||
|
getAgencytype(dictType).then((res) => {
|
||||||
|
this.optionslistS = res.data;
|
||||||
|
// this.taskinfo();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
infolist() {
|
||||||
|
var dictType = "suit_range";
|
||||||
|
getAgencytype(dictType).then((res) => {
|
||||||
|
this.options = res.data;
|
||||||
|
this.taskinfo();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
changeoptions(e) {
|
||||||
|
this.parentDictCode = this.options.find(
|
||||||
|
(el) => el.dictValue == e
|
||||||
|
)?.dictCode;
|
||||||
|
this.changelisy();
|
||||||
|
},
|
||||||
|
changelisy() {
|
||||||
|
list(this.parentDictCode).then((res) => {
|
||||||
|
this.parentDictCodelist = res.rows;
|
||||||
|
});
|
||||||
|
},
|
||||||
info() {
|
info() {
|
||||||
selectSpecialDiseasenew(this.updata.manageRouteId).then(res => {
|
const loading = this.$loading({
|
||||||
this.agreeNumber = res.data.agreeNumber
|
lock: true,
|
||||||
this.totalNumber = res.data.totalNumber
|
text: "数据加载中",
|
||||||
res.data.forEach(e => {
|
spinner: "el-icon-loading",
|
||||||
e.messagePushSign = '' + e.messagePushSign
|
background: "rgba(0, 0, 0, 0.7)",
|
||||||
e.officialPushSign = '' + e.officialPushSign
|
});
|
||||||
e.appletPushSign = '' + e.appletPushSign
|
this.lists = [];
|
||||||
})
|
if (this.$route.query) {
|
||||||
this.lists = this.handleData(res.data, 'routeNodeDay', 'routeNodeName')
|
this.parentDictCode = this.options.find(
|
||||||
getById(this.lists[0].list[0].id).then(res => {
|
(el) => el.dictValue == this.updata.suitRange
|
||||||
this.form = res.data
|
)?.dictCode;
|
||||||
this.lookitemnew = res.data.detailInfo
|
// this.changelisy();
|
||||||
|
this.updata.routeName = this.$route.query.routeName;
|
||||||
|
// this.updata.specialDiseaseRouteId = this.$route.query.id;
|
||||||
|
selectSpecialDisease(this.updata.id).then((res) => {
|
||||||
|
loading.close();
|
||||||
|
this.agreeNumber = res.data.agreeNumber;
|
||||||
|
this.totalNumber = res.data.totalNumber;
|
||||||
|
res.data.specialDiseaseNodeList.forEach((e) => {
|
||||||
|
console.log(e, "eeeeeeeeeeeeeeeee");
|
||||||
|
if(e.messagePushSign){
|
||||||
|
e.messagePushSign = "" + e.messagePushSign;
|
||||||
|
|
||||||
|
}if( e.officialPushSign ){
|
||||||
|
e.officialPushSign = "" + e.officialPushSign;
|
||||||
|
|
||||||
|
}
|
||||||
|
if(e.appletPushSign){
|
||||||
|
e.appletPushSign = "" + e.appletPushSign;
|
||||||
|
|
||||||
|
}
|
||||||
|
if(e.phonePushSign){
|
||||||
|
e.phonePushSign = ""+e.phonePushSign
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.lists = this.handleData(
|
||||||
|
res.data.specialDiseaseNodeList,
|
||||||
|
"routeNodeDay",
|
||||||
|
"routeNodeName"
|
||||||
|
);
|
||||||
|
this.form = this.lists[0].list[0];
|
||||||
if (this.form.taskType) {
|
if (this.form.taskType) {
|
||||||
this.changeTaskType(this.form.taskType, this.form.taskSubdivision)
|
this.changeTaskType(this.form.taskType, this.form.taskSubdivision);
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
this.$refs.wangeditor.disable();
|
} else {
|
||||||
})
|
loading.close();
|
||||||
|
this.lists.push({
|
||||||
|
routeNodeName: "",
|
||||||
|
routeNodeDay: "",
|
||||||
|
list: [
|
||||||
|
{
|
||||||
|
nodeContent: "<p></p>",
|
||||||
|
templateId: "",
|
||||||
|
templateName: "",
|
||||||
|
taskType: "",
|
||||||
|
taskSubdivision: "",
|
||||||
|
taskSubdivisionName: "",
|
||||||
|
taskStatus: "",
|
||||||
|
secondClassifyDescribe: "",
|
||||||
|
executionTime: "",
|
||||||
|
appletPushSign: "0",
|
||||||
|
officialPushSign: "0",
|
||||||
|
messagePushSign: "0",
|
||||||
|
messagePreview: "",
|
||||||
|
officialRemindContent: "",
|
||||||
|
taskSubdivisiontemplateType: "",
|
||||||
|
appletRemindContent: "",
|
||||||
|
appletPromptDescription: "",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
});
|
||||||
|
this.form = this.lists[0].list[0];
|
||||||
|
console.log(this.form, "6555555555555555");
|
||||||
|
}
|
||||||
},
|
},
|
||||||
handleData(list, key, keytwo) {
|
handleData(list, key, keytwo) {
|
||||||
//得到数据的主键列表
|
//得到数据的主键列表
|
||||||
@ -447,6 +685,18 @@ export default {
|
|||||||
this.form.templateId = item.templateId
|
this.form.templateId = item.templateId
|
||||||
this.form.templateName = item.templateName
|
this.form.templateName = item.templateName
|
||||||
},
|
},
|
||||||
|
// 短信
|
||||||
|
messageontemplateMESSAGE(item) {
|
||||||
|
this.form.phoneMessageTemplateId = item.templateId;
|
||||||
|
this.form.phoneMessageTemplateName = item.templateName;
|
||||||
|
this.form.messagePreview = item.templateContent;
|
||||||
|
},
|
||||||
|
// 话术
|
||||||
|
messageontemplateword(item) {
|
||||||
|
this.form.phoneTemplateId = item.templateId;
|
||||||
|
this.form.phoneTemplateName = item.templateName;
|
||||||
|
// this.form.messagePreview = item.templateContent;
|
||||||
|
},
|
||||||
//宣教传值
|
//宣教传值
|
||||||
propagandaontemplate(item) {
|
propagandaontemplate(item) {
|
||||||
this.form.templateId = item.templateId
|
this.form.templateId = item.templateId
|
||||||
@ -516,31 +766,39 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
addlist() {
|
addlist() {
|
||||||
|
list(this.parentDictCode).then((res) => {
|
||||||
|
// this.parentDictCodelist = res.rows;
|
||||||
|
res.rows.forEach((e) => {
|
||||||
|
this.lists.forEach((el) => {
|
||||||
|
el.routeNodeName = e.dictLabel;
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
this.lists.push({
|
this.lists.push({
|
||||||
routeNodeName: "",
|
routeNodeName: "",
|
||||||
routeNodeDay: '',
|
routeNodeDay: "",
|
||||||
list: [
|
list: [
|
||||||
{
|
{
|
||||||
nodeContent: '<p></p>',
|
nodeContent: "<p></p>",
|
||||||
templateId: '',
|
templateId: "",
|
||||||
templateName: '',
|
templateName: "",
|
||||||
taskType: '',
|
taskType: "",
|
||||||
officialRemindContent: '',
|
officialRemindContent: "",
|
||||||
taskSubdivision: '',
|
taskSubdivision: "",
|
||||||
taskSubdivisionName: '',
|
taskSubdivisionName: "",
|
||||||
appletRemindContent: '',
|
appletRemindContent: "",
|
||||||
appletPromptDescription: '',
|
appletPromptDescription: "",
|
||||||
taskStatus: '',
|
taskStatus: "",
|
||||||
secondClassifyDescribe: '',
|
secondClassifyDescribe: "",
|
||||||
executionTime: '',
|
executionTime: "",
|
||||||
appletPushSign: '0',
|
appletPushSign: "0",
|
||||||
officialPushSign: '0',
|
officialPushSign: "0",
|
||||||
messagePushSign: '0',
|
messagePushSign: "0",
|
||||||
messagePreview: '',
|
messagePreview: "",
|
||||||
taskSubdivisiontemplateType: '',
|
taskSubdivisiontemplateType: "",
|
||||||
},
|
},
|
||||||
]
|
],
|
||||||
})
|
});
|
||||||
},
|
},
|
||||||
additem(item) {
|
additem(item) {
|
||||||
item.list.push({
|
item.list.push({
|
||||||
@ -691,8 +949,6 @@ export default {
|
|||||||
padding: 20px 50px 0px 20px;
|
padding: 20px 50px 0px 20px;
|
||||||
|
|
||||||
.flextwo {
|
.flextwo {
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin-top: 20px;
|
margin-top: 20px;
|
||||||
|
|
||||||
.text {
|
.text {
|
||||||
@ -700,6 +956,12 @@ export default {
|
|||||||
color: #64666a;
|
color: #64666a;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
::v-deep .el-input__inner {
|
||||||
|
color: black !important;
|
||||||
|
background-color: #fff !important;
|
||||||
|
cursor: default !important;
|
||||||
|
}
|
||||||
|
|
||||||
.textarea {
|
.textarea {
|
||||||
width: 90%;
|
width: 90%;
|
||||||
padding: 0 10px;
|
padding: 0 10px;
|
||||||
@ -728,15 +990,20 @@ export default {
|
|||||||
|
|
||||||
.flex {
|
.flex {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
width: 100%;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
// background: red;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
|
|
||||||
.pushMethod {
|
.pushMethod {
|
||||||
height: 30px;
|
height: 30px;
|
||||||
|
margin-top: 30px;
|
||||||
line-height: 30px;
|
line-height: 30px;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
color: #64666a;
|
color: #64666a;
|
||||||
|
.spanname {
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
::v-deep .el-input__inner {
|
::v-deep .el-input__inner {
|
||||||
color: black;
|
color: black;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
|
|||||||
@ -332,7 +332,7 @@
|
|||||||
<el-form-item label="短信模板:" prop="phone">
|
<el-form-item label="短信模板:" prop="phone">
|
||||||
<span class="spanname">
|
<span class="spanname">
|
||||||
<message
|
<message
|
||||||
style="width: 200px"
|
style="width: 200px;height: 10px;"
|
||||||
@on-template="messageontemplateMESSAGE"
|
@on-template="messageontemplateMESSAGE"
|
||||||
:templateId="formlist.phoneMessageTemplateId"
|
:templateId="formlist.phoneMessageTemplateId"
|
||||||
:templateName="formlist.phoneMessageTemplateName"
|
:templateName="formlist.phoneMessageTemplateName"
|
||||||
@ -692,8 +692,9 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.bottomheader {
|
.bottomheader {
|
||||||
overflow: auto;
|
overflow-y: scroll;
|
||||||
width: 99%;
|
width: 99%;
|
||||||
|
height: 67vh;
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
margin: 10px auto;
|
margin: 10px auto;
|
||||||
padding: 10px 20px;
|
padding: 10px 20px;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user