修改高度

This commit is contained in:
闫晓茹 2024-07-01 10:21:01 +08:00
parent faf455c369
commit 2a7e7ad2d5
7 changed files with 884 additions and 429 deletions

View File

@ -306,7 +306,7 @@
</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" style="width: 100px"> <el-select v-model="form.taskStatus" style="width: 150px">
<el-option <el-option
v-for="item in taskStatusDictList" v-for="item in taskStatusDictList"
:key="item.id" :key="item.id"
@ -361,7 +361,7 @@
style="width: 100%" style="width: 100%"
:nodeContent="form.nodeContent" :nodeContent="form.nodeContent"
@on-nodeContent="onNodeContent" @on-nodeContent="onNodeContent"
v-show=" v-if="
form.taskSubdivisiontemplateType != 'QUESTIONNAIRE' && form.taskSubdivisiontemplateType != 'QUESTIONNAIRE' &&
form.taskSubdivisiontemplateType != 'PROPAGANDA' && form.taskSubdivisiontemplateType != 'PROPAGANDA' &&
form.taskSubdivisiontemplateType != 'SCRIPT' form.taskSubdivisiontemplateType != 'SCRIPT'
@ -370,7 +370,7 @@
/> />
<div <div
class="card" class="card"
v-show="form.taskSubdivisiontemplateType != 'SCRIPT'" v-if="form.taskSubdivisiontemplateType != 'SCRIPT'"
> >
<div class="flex"> <div class="flex">
<div class="pushMethod"> <div class="pushMethod">
@ -398,7 +398,7 @@
</div> </div>
<div <div
class="card" class="card"
v-show="form.taskSubdivisiontemplateType != 'SCRIPT'" v-if="form.taskSubdivisiontemplateType != 'SCRIPT'"
> >
<div class="flex"> <div class="flex">
<div class="pushMethod"> <div class="pushMethod">
@ -429,7 +429,7 @@
</div> </div>
<div <div
class="card" class="card"
v-show="form.taskSubdivisiontemplateType != 'SCRIPT'" v-if="form.taskSubdivisiontemplateType != 'SCRIPT'"
> >
<div class="flex"> <div class="flex">
<div class="pushMethod"> <div class="pushMethod">
@ -461,7 +461,7 @@
<div <div
class="card" class="card"
style="height: 250px" style="height: 250px"
v-show="form.taskSubdivisiontemplateType == 'SCRIPT'" v-if="form.taskSubdivisiontemplateType == 'SCRIPT'"
> >
<div class="flex"> <div class="flex">
<div class="pushMethod"> <div class="pushMethod">
@ -968,7 +968,8 @@ export default indexjs;
.topform { .topform {
padding: 15px 0 0 15px; padding: 15px 0 0 15px;
height: 150px; // height: 150px;
background: #fff;
.form { .form {
::v-deep .el-input__inner { ::v-deep .el-input__inner {
@ -1004,7 +1005,7 @@ export default indexjs;
.title { .title {
display: flex; display: flex;
margin-left: 100px; margin-left: 100px;
height: 7vh; // height: 6vh;
.select { .select {
font-weight: 550; font-weight: 550;
// margin-left: 10%; // margin-left: 10%;
@ -1024,7 +1025,7 @@ export default indexjs;
// padding: 20px; // padding: 20px;
// } // }
.listment { .listment {
margin: 12px auto; margin: 6px auto;
width: 100%; width: 100%;
// height: 60vh; // height: 60vh;
// height: calc(100% - 220px); // height: calc(100% - 220px);
@ -1037,7 +1038,7 @@ export default indexjs;
width: 25%; width: 25%;
background-color: #fff; background-color: #fff;
padding: 0 20px 20px; padding: 0 20px 20px;
height: calc(100vh - 350px); height: calc(100vh - 347px);
overflow: scroll; overflow: scroll;
@ -1056,16 +1057,16 @@ export default indexjs;
.texts { .texts {
width: 73%; width: 73%;
height: calc(100vh - 350px); height: calc(100vh - 347px);
overflow: scroll; overflow: scroll;
background-color: #fff; background-color: #fff;
} }
} }
.list { .list {
// margin: 12px auto; margin: 6px auto;
width: 100%; width: 100%;
height: 69vh; // height: 70vh;
// height: calc(100% - 80px); // height: calc(100% - 80px);
background-color: #f2f4f5; background-color: #f2f4f5;
display: flex; display: flex;
@ -1076,7 +1077,7 @@ export default indexjs;
width: 25%; width: 25%;
background-color: #fff; background-color: #fff;
padding: 0 20px 20px; padding: 0 20px 20px;
// height: calc(100vh - 350px); height: calc(100vh - 273px);
overflow: scroll; overflow: scroll;
@ -1095,7 +1096,7 @@ export default indexjs;
.texts { .texts {
width: 73%; width: 73%;
// height: calc(100vh - 350px); height: calc(100vh - 273px);
overflow: scroll; overflow: scroll;
background-color: #fff; background-color: #fff;

View File

@ -1,25 +1,53 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-button size="small" @click="classificationOpen = true" <el-button
style="width: 200px;font-size:14px;text-align:left;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;" size="small"
:style="handleselectName ? 'color:black' : 'color:#C0C4CC'">{{ handleselectName ? handleselectName : '选择短信模板' @click="classificationOpen = true"
}}</el-button> style="
<el-dialog title="短信库模板选择" :visible.sync="classificationOpen" width="70%" :before-close="classificationOpenfalse"> width: 200px;
font-size: 14px;
text-align: left;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
"
:style="handleselectName ? 'color:black' : 'color:#C0C4CC'"
>{{ handleselectName ? handleselectName : "选择短信模板" }}</el-button
>
<el-dialog
title="短信库模板选择"
:visible.sync="classificationOpen"
width="70%"
:before-close="classificationOpenfalse"
>
<el-row :gutter="20"> <el-row :gutter="20">
<!--部门数据--> <!--部门数据-->
<el-col :span="6" :xs="24"> <el-col :span="6" :xs="24">
<div class="leftmessage" ref="box"> <div class="leftmessage" ref="box">
<div class="name">科室名称</div> <div class="name">科室名称</div>
<div> <div>
<el-input v-model="name" placeholder="请输入科室名称" clearable @keyup.enter.native="handleQuery" /> <el-input
v-model="name"
placeholder="请输入科室名称"
clearable
@keyup.enter.native="handleQuery"
/>
</div> </div>
<div class="listitem"> <div class="listitem">
<div :class="itemname == null ? 'allactive' : 'all'" @click="itemdata()"> <div
:class="itemname == null ? 'allactive' : 'all'"
@click="itemdata()"
>
全部 全部
</div> </div>
<span class="count">{{ count }}</span> <span class="count">{{ count }}</span>
</div> </div>
<div class="listitem" v-for="(item, index) in DepartmentoList" :key="index" @click="itemdata(item)"> <div
class="listitem"
v-for="(item, index) in DepartmentoList"
:key="index"
@click="itemdata(item)"
>
<div :class="itemname == item.id ? 'allactive' : 'all'"> <div :class="itemname == item.id ? 'allactive' : 'all'">
{{ item.departmentName }} {{ item.departmentName }}
</div> </div>
@ -29,84 +57,182 @@
</el-col> </el-col>
<!--用户数据--> <!--用户数据-->
<el-col :span="18" :xs="24"> <el-col :span="18" :xs="24">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" <el-form
label-width="68px"> :model="queryParams"
<el-form-item label="短信模板名称" prop="textMessageName" label-width="100px"> ref="queryForm"
<el-input v-model="queryParams.textMessageName" placeholder="请输入模版名称" clearable size="small"
@keyup.enter.native="handleQuery" /> :inline="true"
v-show="showSearch"
label-width="68px"
>
<el-form-item
label="短信模板名称"
prop="textMessageName"
label-width="100px"
>
<el-input
v-model="queryParams.textMessageName"
placeholder="请输入模版名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
<el-form-item label="模板ID" prop="textMessageId"> <el-form-item label="模板ID" prop="textMessageId">
<el-input v-model="queryParams.textMessageId" placeholder="请输入模板ID" clearable <el-input
@keyup.enter.native="handleQuery" /> v-model="queryParams.textMessageId"
placeholder="请输入模板ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</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-item>
</el-form> </el-form>
<el-table v-loading="loading" :data="templateList" @row-dblclick="handleselect"> <el-table
<el-table-column type="index" width="55" align="center" label="序号" /> v-loading="loading"
<el-table-column label="短信模板名称" align="center" prop="textMessageName" :show-overflow-tooltip="true" /> :data="templateList"
<el-table-column label="短信ID" align="center" prop="textMessageId" /> @row-dblclick="handleselect"
<el-table-column label="短信内容" align="center" prop="textMessageContent" :show-overflow-tooltip="true" /> >
<el-table-column :show-overflow-tooltip="true" label="适用任务类型" align="center" prop="suitTaskTypeName"> <el-table-column
type="index"
width="55"
align="center"
label="序号"
/>
<el-table-column
label="短信模板名称"
align="center"
prop="textMessageName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="短信ID"
align="center"
prop="textMessageId"
/>
<el-table-column
label="短信内容"
align="center"
prop="textMessageContent"
:show-overflow-tooltip="true"
/>
<el-table-column
:show-overflow-tooltip="true"
label="适用任务类型"
align="center"
prop="suitTaskTypeName"
>
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.suitTaskTypeName != "null" ? scope.row.suitTaskTypeName : '' }} {{
scope.row.suitTaskTypeName != "null"
? scope.row.suitTaskTypeName
: ""
}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="短信通道" align="center" prop="textMessageChannel"> <el-table-column
label="短信通道"
align="center"
prop="textMessageChannel"
>
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.textMessageChannel == "WATER_DROPLET_PLATFORM" ? "水滴平台" : "" }} {{
scope.row.textMessageChannel == "WATER_DROPLET_PLATFORM"
? "水滴平台"
: ""
}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="病种名称" align="center" prop="diseaseTypeName" /> <el-table-column
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> label="病种名称"
align="center"
prop="diseaseTypeName"
/>
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" @click="handleselect(scope.row)" <el-button
v-if="handleselectId != scope.row.id">选择</el-button> size="mini"
<el-button size="mini" type="text" @click="nohandleselect(scope.row)" type="text"
v-if="handleselectId == scope.row.id">取消选择</el-button> @click="handleselect(scope.row)"
v-if="handleselectId != scope.row.id"
>选择</el-button
>
<el-button
size="mini"
type="text"
@click="nohandleselect(scope.row)"
v-if="handleselectId == scope.row.id"
>取消选择</el-button
>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</el-col> </el-col>
</el-row> </el-row>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" <pagination
@pagination="getList" /> v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
<script> <script>
import { listMessage, getMessage, delMessage, addMessage, updateMessage, listMessageNum } from "@/api/manage/message"; import {
listMessage,
getMessage,
delMessage,
addMessage,
updateMessage,
listMessageNum,
} from "@/api/manage/message";
import { typelist } from "@/api/manage/template"; import { typelist } from "@/api/manage/template";
import { department, listDisease } from "@/api/manage/script"; import { department, listDisease } from "@/api/manage/script";
export default { export default {
props: ['templateId', 'templateName'], props: ["templateId", "templateName"],
name: "Template", name: "Template",
data() { data() {
return { return {
handleselectName: '', handleselectName: "",
handleselectId: '', handleselectId: "",
classificationOpen: false, classificationOpen: false,
itemname: null, itemname: null,
departmentName: null, departmentName: null,
diseaseTypeName: null, diseaseTypeName: null,
name: '', name: "",
departmentId: null, departmentId: null,
count: '',// count: "", //
DepartmentoList: [],// DepartmentoList: [], //
// //
querydepartmen: { querydepartmen: {
departmentName: "", departmentName: "",
// pageNum: 1, // pageNum: 1,
// pageSize: 10, // pageSize: 10,
}, },
options: [{ options: [
value: 'WATER_DROPLET_PLATFORM', {
label: '水滴平台' value: "WATER_DROPLET_PLATFORM",
},], label: "水滴平台",
},
],
// //
loading: false, loading: false,
// //
@ -143,7 +269,7 @@ export default {
}, },
watch: { watch: {
name(val) { name(val) {
this.querydepartmen.departmentName = val this.querydepartmen.departmentName = val;
this.Departmentlist(); this.Departmentlist();
}, },
templateId(newValue, oldValue) { templateId(newValue, oldValue) {
@ -151,7 +277,7 @@ export default {
}, },
templateName(newValue, oldValue) { templateName(newValue, oldValue) {
this.handleselectName = newValue; this.handleselectName = newValue;
} },
}, },
mounted() { mounted() {
this.handleselectId = this.templateId; this.handleselectId = this.templateId;
@ -162,27 +288,34 @@ export default {
this.Departmentlist(); this.Departmentlist();
}, },
methods: { methods: {
nohandleselect() { nohandleselect() {
this.handleselectId = '' this.handleselectId = "";
this.handleselectName = '' this.handleselectName = "";
this.$emit("on-template", { templateId: '', templateName: '', templateContent: "" }); this.$emit("on-template", {
templateId: "",
templateName: "",
templateContent: "",
});
}, },
handleselect(item) { handleselect(item) {
console.log(item.id, 'id') console.log(item.id, "id");
this.handleselectId = item.id this.handleselectId = item.id;
this.handleselectName = item.textMessageName this.handleselectName = item.textMessageName;
this.$emit("on-template", { templateId: item.id, templateName: item.textMessageName, templateContent: item.templateContent }); this.$emit("on-template", {
this.classificationOpen = false templateId: item.id,
templateName: item.textMessageName,
templateContent: item.templateContent,
});
this.classificationOpen = false;
}, },
classificationOpenfalse() { classificationOpenfalse() {
this.classificationOpen = false this.classificationOpen = false;
}, },
/** 查询微信模板信息列表 */ /** 查询微信模板信息列表 */
getList() { getList() {
this.loading = true; this.loading = true;
this.queryParams.textMessageStatus = "GROUNDING" this.queryParams.textMessageStatus = "GROUNDING";
listMessage(this.queryParams).then(response => { listMessage(this.queryParams).then((response) => {
this.templateList = response.rows; this.templateList = response.rows;
this.total = response.total; this.total = response.total;
this.loading = false; this.loading = false;
@ -191,8 +324,8 @@ export default {
// //
Departmentlist() { Departmentlist() {
this.loading = true; this.loading = true;
this.querydepartmen.textMessageStatus = "GROUNDING" this.querydepartmen.textMessageStatus = "GROUNDING";
listMessageNum(this.querydepartmen).then(response => { listMessageNum(this.querydepartmen).then((response) => {
this.DepartmentoList = response.data; this.DepartmentoList = response.data;
let sum = 0; let sum = 0;
this.DepartmentoList.forEach((item) => { this.DepartmentoList.forEach((item) => {
@ -207,15 +340,15 @@ export default {
// //
itemdata(item) { itemdata(item) {
if (item) { if (item) {
this.itemname = item.id this.itemname = item.id;
this.departmentName = item.departmentName this.departmentName = item.departmentName;
this.loading = true; this.loading = true;
this.queryParams.departmentId = item.id this.queryParams.departmentId = item.id;
this.getList() this.getList();
} else { } else {
this.queryParams.departmentId = '' this.queryParams.departmentId = "";
this.itemname = null this.itemname = null;
this.getList() this.getList();
} }
}, },
/** 搜索按钮操作 */ /** 搜索按钮操作 */
@ -230,13 +363,14 @@ export default {
this.resetForm("queryForm"); this.resetForm("queryForm");
this.handleQuery(); this.handleQuery();
}, },
} },
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.app-container { .app-container {
display: inline-block; display: inline-block;
padding: 0 !important; padding: 0 !important;
height: 42px;
} }
::v-deep .el-dialog__body { ::v-deep .el-dialog__body {

View File

@ -1,294 +1,414 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-button size="small" @click="classificationOpen = true" <el-button
style="width: 200px;font-size:14px;text-align:left;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;" size="small"
:style="handleselectName ? 'color:black' : 'color:#C0C4CC'">{{ handleselectName ? handleselectName : @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="left" 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="left" 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="68px"> <div class="listitem">
<el-form-item label="微信模版名称" prop="wechatTemplateName" label-width="100px"> <div
<el-input v-model="queryParams.wechatTemplateName" placeholder="请输入模版名称" clearable :class="itemname == null ? 'allactive' : 'all'"
@keyup.enter.native="handleQuery" /> @click="itemdata()"
</el-form-item> >
<el-form-item label="模板ID" prop="templateId"> 全部
<el-input v-model="queryParams.templateId" placeholder="请输入模板ID" clearable </div>
@keyup.enter.native="handleQuery" /> <span class="count">{{ count }}</span>
</el-form-item> </div>
<el-form-item> <div
<el-button type="primary" icon="el-icon-search" size="mini" class="listitem"
@click="handleQuery">搜索</el-button> v-for="(item, index) in DepartmentoList"
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> :key="index"
</el-form-item> @click="itemdata(item)"
</el-form> >
<el-table v-loading="loading" :data="templateList" @row-dblclick="handleselect"> <div :class="itemname == item.id ? 'allactive' : 'all'">
<el-table-column type="index" width="55" align="center" label="序号" /> {{ item.departmentName }}
<el-table-column label="微信模版名称" align="center" prop="wechatTemplateName" /> </div>
<el-table-column label="模板ID" align="center" prop="templateId" /> <span class="count">{{ item.countNum }}</span>
<el-table-column label="模板来源" align="center" prop="templateSource"> </div>
<template slot-scope="scope"> </div>
{{ scope.row.templateSource == "WE_CHAT_APPLET" ? "小程序" : "" }} </el-col>
{{ scope.row.templateSource == "WE_CHAT_OFFICIAL_ACCOUNT" ? "公众号" : "" }} <!--用户数据-->
</template> <el-col :span="18" :xs="24">
</el-table-column> <el-form
<el-table-column label="适用任务类型" align="center" prop="suitTaskTypeName" :model="queryParams"
:show-overflow-tooltip="true" /> ref="queryForm"
<el-table-column label="病种名称" align="center" prop="diseaseTypeName" /> size="small"
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> :inline="true"
<template slot-scope="scope"> v-show="showSearch"
<el-button size="mini" type="text" @click="handleselect(scope.row)" label-width="68px"
v-if="handleselectId != scope.row.templateId">选择</el-button> >
<el-button size="mini" type="text" @click="nohandleselect(scope.row)" <el-form-item
v-if="handleselectId == scope.row.templateId">取消选择</el-button> label="微信模版名称"
</template> prop="wechatTemplateName"
</el-table-column> label-width="100px"
</el-table> >
</el-col> <el-input
</el-row> v-model="queryParams.wechatTemplateName"
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" placeholder="请输入模版名称"
:limit.sync="queryParams.pageSize" @pagination="getList" /> clearable
</el-dialog> @keyup.enter.native="handleQuery"
</div> />
</el-form-item>
<el-form-item label="模板ID" prop="templateId">
<el-input
v-model="queryParams.templateId"
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="templateList"
@row-dblclick="handleselect"
>
<el-table-column
type="index"
width="55"
align="center"
label="序号"
/>
<el-table-column
label="微信模版名称"
align="center"
prop="wechatTemplateName"
/>
<el-table-column label="模板ID" align="center" prop="templateId" />
<el-table-column
label="模板来源"
align="center"
prop="templateSource"
>
<template slot-scope="scope">
{{
scope.row.templateSource == "WE_CHAT_APPLET" ? "小程序" : ""
}}
{{
scope.row.templateSource == "WE_CHAT_OFFICIAL_ACCOUNT"
? "公众号"
: ""
}}
</template>
</el-table-column>
<el-table-column
label="适用任务类型"
align="center"
prop="suitTaskTypeName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="病种名称"
align="center"
prop="diseaseTypeName"
/>
<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.templateId"
>选择</el-button
>
<el-button
size="mini"
type="text"
@click="nohandleselect(scope.row)"
v-if="handleselectId == scope.row.templateId"
>取消选择</el-button
>
</template>
</el-table-column>
</el-table>
</el-col>
</el-row>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</el-dialog>
</div>
</template> </template>
<script> <script>
import { listTemplate, getTemplate, delTemplate, addTemplate, updateTemplate, listWechatTemplateNum, typelist } from "@/api/manage/template"; import {
listTemplate,
getTemplate,
delTemplate,
addTemplate,
updateTemplate,
listWechatTemplateNum,
typelist,
} from "@/api/manage/template";
export default { export default {
props: ['templateId', 'templateName'], props: ["templateId", "templateName"],
name: "miniProgram", name: "miniProgram",
data() { data() {
return { return {
handleselectName: '', handleselectName: "",
handleselectId: '', handleselectId: "",
classificationOpen: false, classificationOpen: false,
count: '',// count: "", //
itemname: null, itemname: null,
departmentName: null, departmentName: null,
diseaseTypeName: null, diseaseTypeName: null,
name: '', name: "",
departmentId: null, departmentId: null,
DepartmentoList: [],// DepartmentoList: [], //
// //
querydepartmen: { querydepartmen: {
departmentName: "", departmentName: "",
}, },
options: [{ options: [
value: 'WE_CHAT_APPLET', {
label: '小程序' value: "WE_CHAT_APPLET",
}, { label: "小程序",
value: 'WE_CHAT_OFFICIAL_ACCOUNT',
label: '公众号'
},],
//
loading: false,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
//
templateList: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNum: 1,
pageSize: 10,
wechatTemplateName: null,
departmentId: null,
departmentName: null,
diseaseTypeId: null,
diseaseTypeName: null,
templateId: null,
templateContent: null,
templateSource: null,
templateSort: null,
templateRemark: null,
},
};
},
watch: {
name(val) {
this.querydepartmen.departmentName = val
this.Departmentlist();
}, },
templateId(newValue, oldValue) { {
this.handleselectId = newValue; value: "WE_CHAT_OFFICIAL_ACCOUNT",
label: "公众号",
}, },
templateName(newValue, oldValue) { ],
this.handleselectName = newValue; //
} loading: false,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
//
templateList: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNum: 1,
pageSize: 10,
wechatTemplateName: null,
departmentId: null,
departmentName: null,
diseaseTypeId: null,
diseaseTypeName: null,
templateId: null,
templateContent: null,
templateSource: null,
templateSort: null,
templateRemark: null,
},
};
},
watch: {
name(val) {
this.querydepartmen.departmentName = val;
this.Departmentlist();
}, },
mounted() { templateId(newValue, oldValue) {
this.handleselectId = this.templateId; this.handleselectId = newValue;
this.handleselectName = this.templateName;
}, },
created() { templateName(newValue, oldValue) {
this.handleselectName = newValue;
},
},
mounted() {
this.handleselectId = this.templateId;
this.handleselectName = this.templateName;
},
created() {
this.getList();
this.Departmentlist();
},
methods: {
classificationOpenfalse() {
this.classificationOpen = false;
},
nohandleselect() {
this.handleselectId = "";
this.handleselectName = "";
this.$emit("on-template", {
templateId: "",
templateName: "",
templateContent: "",
});
},
handleselect(item) {
this.handleselectId = item.id;
this.handleselectName = item.wechatTemplateName;
this.$emit("on-template", {
templateId: item.id,
templateName: item.wechatTemplateName,
templateContent: item.textMessageContent,
});
this.classificationOpen = false;
},
/** 查询微信模板信息列表 */
getList() {
this.loading = true;
this.queryParams.templateSource = "WE_CHAT_APPLET";
listTemplate(this.queryParams).then((response) => {
this.templateList = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
Departmentlist() {
this.loading = true;
this.querydepartmen.templateSource = "WE_CHAT_APPLET";
listWechatTemplateNum(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();
}
}, },
methods: { /** 搜索按钮操作 */
classificationOpenfalse() { handleQuery() {
this.classificationOpen = false this.queryParams.pageNum = 1;
}, this.getList();
nohandleselect() { },
this.handleselectId = '' /** 重置按钮操作 */
this.handleselectName = '' resetQuery() {
this.$emit("on-template", { templateId: '', templateName: '', templateContent: "" }); this.queryParams.departmentId = null;
}, this.itemname = null;
handleselect(item) { this.resetForm("queryForm");
this.handleselectId = item.id this.handleQuery();
this.handleselectName = item.wechatTemplateName },
this.$emit("on-template", { templateId: item.id, templateName: item.wechatTemplateName, templateContent: item.textMessageContent }); },
this.classificationOpen = false
},
/** 查询微信模板信息列表 */
getList() {
this.loading = true;
this.queryParams.templateSource = "WE_CHAT_APPLET"
listTemplate(this.queryParams).then(response => {
this.templateList = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
Departmentlist() {
this.loading = true;
this.querydepartmen.templateSource = "WE_CHAT_APPLET"
listWechatTemplateNum(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()
} else {
this.queryParams.departmentId = ''
this.itemname = null
this.getList()
}
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.queryParams.departmentId = null;
this.itemname = null;
this.resetForm("queryForm");
this.handleQuery();
},
}
}; };
</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;
} }
::v-deep .el-dialog__body { ::v-deep .el-dialog__body {
padding-bottom: 60px; padding-bottom: 60px;
} }
.app-container { .app-container {
display: inline-block; display: inline-block;
padding: 0 !important; padding: 0 !important;
height: 42px;
} }
.left { .left {
height: 530px; height: 530px;
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

@ -243,6 +243,7 @@ export default {
.app-container { .app-container {
display: inline-block; display: inline-block;
padding: 0 !important; padding: 0 !important;
height: 42px;
} }
.left { .left {

View File

@ -208,6 +208,8 @@ export default {
.app-container { .app-container {
padding: 0 !important; padding: 0 !important;
display: inline-block; display: inline-block;
// background: red;
height: 42px;
} }
.left { .left {

View File

@ -282,6 +282,8 @@ export default {
.app-container { .app-container {
display: inline-block; display: inline-block;
padding: 0 !important; padding: 0 !important;
// background: red;
height: 42px;
} }
::v-deep .el-textarea__inner { ::v-deep .el-textarea__inner {

View File

@ -8,8 +8,17 @@
</div> </div>
<div class="select"> <div class="select">
<span> 适用范围 </span> <span> 适用范围 </span>
<el-select v-model="updata.suitRange" placeholder="请选择" @change="changeoptions"> <el-select
<el-option v-for="item in options" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue"> v-model="updata.suitRange"
placeholder="请选择"
@change="changeoptions"
>
<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>
@ -21,30 +30,59 @@
<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" style="width: 100px"> <el-select v-model="item.routeNodeName" style="width: 100px">
<el-option v-for="item in parentDictCodelist" :key="item.dictValue" :label="item.dictLabel" <el-option
:value="item.dictValue"> v-for="item in parentDictCodelist"
:key="item.dictValue"
:label="item.dictLabel"
:value="item.dictValue"
>
</el-option> </el-option>
</el-select> </el-select>
<el-input v-model="item.routeNodeDay" style="width: 70px" type="number" :min="0"></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
v-for="(uitem, uindex) in item.list"
:key="uitem.id"
@click.native="bottomclickevent(uitem, index, uindex)" @click.native="bottomclickevent(uitem, index, uindex)"
: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 v-if="uitem.routeCheckStatus == 'AGREE'" class="routeCheckStatus">已审核</el-tag> <el-tag
<el-tag v-else-if="uitem.routeCheckStatus == 'DISAGREE'" type="danger" v-if="uitem.routeCheckStatus == 'AGREE'"
class="routeCheckStatus">不同意</el-tag> class="routeCheckStatus"
<el-tag v-else type="warning" class="routeCheckStatus">未审核</el-tag> >已审核</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>
@ -54,49 +92,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" 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" style="width: 110px" @change="changetaskSubdivision"> <el-select
<el-option v-for="item in taskPartitionList" :key="item.taskPartitionCode" v-model="form.taskSubdivision"
:label="item.taskPartitionName" :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" style="width: 110px"> <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" style="width: 110px" disabled></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.executionTime" style="width: 120px" placeholder="选择时间" disabled> <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 label="问卷库模板选择" prop="" v-if="form.taskSubdivisiontemplateType == 'QUESTIONNAIRE'"> <el-form-item
<question @on-template="questionontemplate" :templateId="form.templateId" label="问卷库模板选择"
:templateName="form.templateName"></question> prop=""
v-if="form.taskSubdivisiontemplateType == 'QUESTIONNAIRE'"
>
<question
@on-template="questionontemplate"
:templateId="form.templateId"
:templateName="form.templateName"
></question>
</el-form-item> </el-form-item>
<el-form-item label="宣教库模板选择" prop="" v-if="form.taskSubdivisiontemplateType == 'PROPAGANDA'"> <el-form-item
<propaganda @on-template="propagandaontemplate" :templateId="form.templateId" label="宣教库模板选择"
:templateName="form.templateName"></propaganda> prop=""
v-if="form.taskSubdivisiontemplateType == 'PROPAGANDA'"
>
<propaganda
@on-template="propagandaontemplate"
:templateId="form.templateId"
:templateName="form.templateName"
></propaganda>
</el-form-item> </el-form-item>
</el-form> </el-form>
</div> </div>
<div class="bottomform"> <div class="bottomform">
<wangeditor style="width: 100%" :nodeContent="form.nodeContent" @on-nodeContent="onNodeContent" v-show="form.taskSubdivisiontemplateType != 'QUESTIONNAIRE' && <wangeditor
form.taskSubdivisiontemplateType != 'PROPAGANDA' && style="width: 100%"
form.taskSubdivisiontemplateType != 'SCRIPT' :nodeContent="form.nodeContent"
" ref="wangeditor" /> @on-nodeContent="onNodeContent"
<div class="card" v-show="form.taskSubdivisiontemplateType != 'SCRIPT'"> v-show="
form.taskSubdivisiontemplateType != 'QUESTIONNAIRE' &&
form.taskSubdivisiontemplateType != 'PROPAGANDA' &&
form.taskSubdivisiontemplateType != 'SCRIPT'
"
ref="wangeditor"
/>
<div
class="card"
v-show="form.taskSubdivisiontemplateType != 'SCRIPT'"
>
<div class="flex"> <div class="flex">
<div class="pushMethod"> <div class="pushMethod">
推送方式 推送方式
@ -104,11 +195,19 @@
</div> </div>
<div class="pushMethod"> <div class="pushMethod">
模板 模板
<message @on-template="messageontemplate" :templateId="form.messageTemplateId" <message
:templateName="form.messageTemplateName"></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" active-color="#13ce66" active-value="1" inactive-value="0"> <el-switch
v-model="form.messagePushSign"
active-color="#13ce66"
active-value="1"
inactive-value="0"
>
</el-switch> </el-switch>
</div> </div>
</div> </div>
@ -117,7 +216,10 @@
<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" v-show="form.taskSubdivisiontemplateType != 'SCRIPT'"> <div
class="card"
v-show="form.taskSubdivisiontemplateType != 'SCRIPT'"
>
<div class="flex"> <div class="flex">
<div class="pushMethod"> <div class="pushMethod">
推送方式 推送方式
@ -126,13 +228,21 @@
<div class="pushMethod"> <div class="pushMethod">
模板 模板
<span> <span>
<officialAccount @on-template="officialAccountontemplate" :templateId="form.officialTemplateId" <officialAccount
:templateName="form.officialTemplateName"> @on-template="officialAccountontemplate"
:templateId="form.officialTemplateId"
:templateName="form.officialTemplateName"
>
</officialAccount> </officialAccount>
</span> </span>
</div> </div>
<div class="pushMethod"> <div class="pushMethod">
<el-switch v-model="form.officialPushSign" active-color="#13ce66" active-value="1" inactive-value="0"> <el-switch
v-model="form.officialPushSign"
active-color="#13ce66"
active-value="1"
inactive-value="0"
>
</el-switch> </el-switch>
</div> </div>
</div> </div>
@ -141,7 +251,10 @@
<el-input v-model="form.officialRemindContent" class="textarea" disabled></el-input> <el-input v-model="form.officialRemindContent" class="textarea" disabled></el-input>
</div> --> </div> -->
</div> </div>
<div class="card" v-show="form.taskSubdivisiontemplateType != 'SCRIPT'"> <div
class="card"
v-show="form.taskSubdivisiontemplateType != 'SCRIPT'"
>
<div class="flex"> <div class="flex">
<div class="pushMethod"> <div class="pushMethod">
推送方式 推送方式
@ -150,13 +263,21 @@
<div class="pushMethod"> <div class="pushMethod">
模板 模板
<span> <span>
<miniProgram @on-template="miniProgramtemplate" :templateId="form.appletTemplateId" <miniProgram
:templateName="form.appletTemplateName"> @on-template="miniProgramtemplate"
:templateId="form.appletTemplateId"
:templateName="form.appletTemplateName"
>
</miniProgram> </miniProgram>
</span> </span>
</div> </div>
<div class="pushMethod"> <div class="pushMethod">
<el-switch v-model="form.appletPushSign" active-color="#13ce66" active-value="1" inactive-value="0"> <el-switch
v-model="form.appletPushSign"
active-color="#13ce66"
active-value="1"
inactive-value="0"
>
</el-switch> </el-switch>
</div> </div>
</div> </div>
@ -169,7 +290,11 @@
<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 class="card" style="height: 250px" v-show="form.taskSubdivisiontemplateType == 'SCRIPT'"> <div
class="card"
style="height: 250px"
v-show="form.taskSubdivisiontemplateType == 'SCRIPT'"
>
<div class="flex"> <div class="flex">
<div class="pushMethod"> <div class="pushMethod">
推送方式 推送方式
@ -183,27 +308,47 @@
<div class="pushMethod"> <div class="pushMethod">
话术模板 话术模板
<span class="spanname" v-if="form.templateId"> <span class="spanname" v-if="form.templateId">
<scripts @on-template="messageontemplateword" :templateId="form.phoneTemplateId" <scripts
:templateName="form.phoneTemplateName"></scripts> @on-template="messageontemplateword"
:templateId="form.phoneTemplateId"
:templateName="form.phoneTemplateName"
></scripts>
</span> </span>
<span v-else> <span v-else>
<scripts @on-template="messageontemplateword" :templateId="form.phoneTemplateId" <scripts
:templateName="form.phoneTemplateName"></scripts> @on-template="messageontemplateword"
:templateId="form.phoneTemplateId"
:templateName="form.phoneTemplateName"
></scripts>
</span> </span>
</div> </div>
<div class="pushMethod" v-if="form.phoneDialMethod == 'COMMON' || !form.phoneDialMethod"> <div
class="pushMethod"
v-if="form.phoneDialMethod == 'COMMON' || !form.phoneDialMethod"
>
问卷模板 问卷模板
<span class="spanname" v-if="form.phoneTemplateId"> <span class="spanname" v-if="form.phoneTemplateId">
<question @on-template="questionontemplate" :templateId="form.templateId" <question
:templateName="form.templateName"></question> @on-template="questionontemplate"
:templateId="form.templateId"
:templateName="form.templateName"
></question>
</span> </span>
<span v-else> <span v-else>
<question @on-template="questionontemplate" :templateId="form.templateId" <question
:templateName="form.templateName"></question> @on-template="questionontemplate"
:templateId="form.templateId"
:templateName="form.templateName"
></question>
</span> </span>
</div> </div>
<div class="pushMethod"> <div class="pushMethod">
<el-switch v-model="form.phonePushSign" active-color="#13ce66" active-value="1" inactive-value="0"> <el-switch
v-model="form.phonePushSign"
active-color="#13ce66"
active-value="1"
inactive-value="0"
>
</el-switch> </el-switch>
</div> </div>
</div> </div>
@ -211,9 +356,16 @@
<div class="pushMethod"> <div class="pushMethod">
重播次数 重播次数
<span> <span>
<el-select v-model="form.phoneRedialTimes" style="width: 100px"> <el-select
<el-option v-for="item in optionslistS" :key="item.dictValue" :label="item.dictLabel" v-model="form.phoneRedialTimes"
:value="item.dictValue"> style="width: 100px"
>
<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>
@ -221,8 +373,11 @@
<div class="pushMethod"> <div class="pushMethod">
时间间隔: 时间间隔:
<span> <span>
<el-input v-model.number="form.phoneTimeInterval" oninput="value=value.replace(/[^\d]/g,'')" <el-input
style="width: 100px"> v-model.number="form.phoneTimeInterval"
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"
@ -235,21 +390,39 @@
</div> </div>
<div class="pushMethod"> <div class="pushMethod">
短信提醒 短信提醒
<el-select v-model="form.phoneMessageRemind" style="width: 150px"> <el-select
<el-option v-for="item in optionslist" :key="item.dictValue" :label="item.dictLabel" v-model="form.phoneMessageRemind"
:value="item.dictValue"> style="width: 150px"
>
<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 class="spanname" v-if="form.phoneMessageRemind == 'NOT_SEND_MESSAGE'"> <span
<message style="width: 200px" @on-template="messageontemplateMESSAGE" class="spanname"
:templateId="form.phoneMessageTemplateId" :templateName="form.phoneMessageTemplateName"></message> v-if="form.phoneMessageRemind == 'NOT_SEND_MESSAGE'"
>
<message
style="width: 200px"
@on-template="messageontemplateMESSAGE"
:templateId="form.phoneMessageTemplateId"
:templateName="form.phoneMessageTemplateName"
></message>
</span> </span>
<span v-else> <span v-else>
<message style="width: 200px" @on-template="messageontemplateMESSAGE" <message
:templateId="form.phoneMessageTemplateId" :templateName="form.phoneMessageTemplateName"></message> style="width: 200px"
@on-template="messageontemplateMESSAGE"
:templateId="form.phoneMessageTemplateId"
:templateName="form.phoneMessageTemplateName"
></message>
</span> </span>
</div> </div>
</div> </div>
@ -259,18 +432,41 @@
</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 type="primary" @click="dialogVisible = true" v-if="form.specialDiseaseNodeId">审核完成 {{ agreeNumber ? <el-button
agreeNumber : "0" }} / type="primary"
{{ totalNumber ? totalNumber : "0" }}</el-button> @click="dialogVisible = true"
v-if="form.specialDiseaseNodeId"
>审核完成 {{ agreeNumber ? agreeNumber : "0" }} /
{{ totalNumber ? totalNumber : "0" }}</el-button
>
</div> </div>
<el-dialog title="提交审核完成" :visible.sync="dialogVisible" width="30%" :before-close="handleClose"> <el-dialog
<el-form ref="routeform" :model="routeform" label-width="120px" :rules="rules"> title="提交审核完成"
: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> <el-radio v-model="routeform.routeCheckStatus" label="AGREE"
<el-radio v-model="routeform.routeCheckStatus" label="DISAGREE">不同意</el-radio> >同意</el-radio
>
<el-radio v-model="routeform.routeCheckStatus" label="DISAGREE"
>不同意</el-radio
>
</el-form-item> </el-form-item>
<el-form-item label="节点审核备注"> <el-form-item label="节点审核备注">
<el-input type="textarea" :rows="2" placeholder="请输入节点审核备注" v-model="routeform.routeCheckRemark"> <el-input
type="textarea"
:rows="2"
placeholder="请输入节点审核备注"
v-model="routeform.routeCheckRemark"
>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -376,7 +572,7 @@ export default {
this.infolistword(); this.infolistword();
this.infolistMESSAGE(); this.infolistMESSAGE();
}, },
beforeDestroy() { }, beforeDestroy() {},
watch: { watch: {
"form.phoneMessageRemind": { "form.phoneMessageRemind": {
handler(newValue, oldValue) { handler(newValue, oldValue) {
@ -398,7 +594,7 @@ export default {
// phoneTemplateId // phoneTemplateId
}, },
}, },
mounted() { }, mounted() {},
methods: { methods: {
infolistword() { infolistword() {
var dictType = "text_message_remind"; var dictType = "text_message_remind";
@ -610,10 +806,10 @@ export default {
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; el.routeNodeDay = e.routeNodeDay;
el.routeNodeName = e.routeNodeName; el.routeNodeName = e.routeNodeName;
this.updata.specialDiseaseNodeList.push(el); this.updata.specialDiseaseNodeList.push(el);
}) })
: ""; : "";
}); });
// this.updata.specialDiseaseNodeList = // this.updata.specialDiseaseNodeList =
@ -962,7 +1158,6 @@ export default {
.topform { .topform {
padding: 15px 0 0 15px; padding: 15px 0 0 15px;
height: 200px;
.form { .form {
::v-deep .el-input__inner { ::v-deep .el-input__inner {