| | |
| | | <template> |
| | | <div class="app-container"> |
| | | <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> |
| | | <el-form |
| | | :model="queryParams" |
| | | ref="queryForm" |
| | | size="small" |
| | | :inline="true" |
| | | v-show="showSearch" |
| | | label-width="68px" |
| | | > |
| | | <el-form-item label="客户姓名" prop="name"> |
| | | <el-input v-model="queryParams.name" placeholder="请输入客户姓名" clearable @keyup.enter.native="handleQuery" /> |
| | | <el-input |
| | | v-model="queryParams.name" |
| | | placeholder="请输入客户姓名" |
| | | clearable |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="体检号" prop="tjNum"> |
| | | <el-input v-model="queryParams.tjNum" placeholder="请输入体检号" clearable @keyup.enter.native="handleQuery" ref="inputName" @blur="handleQuery" /> |
| | | <el-input |
| | | v-model="queryParams.tjNum" |
| | | placeholder="请输入体检号" |
| | | clearable |
| | | @keyup.enter.native="handleQuery" |
| | | ref="inputName" |
| | | @blur="hb" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="登记时间"> |
| | | <el-date-picker clearable v-model="createTimeList" style="width: 240px" value-format="yyyy-MM-dd" |
| | | type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" |
| | | :picker-options="pickerOptions"></el-date-picker> |
| | | <el-date-picker |
| | | clearable |
| | | v-model="createTimeList" |
| | | style="width: 240px" |
| | | value-format="yyyy-MM-dd" |
| | | type="daterange" |
| | | range-separator="-" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | :picker-options="pickerOptions" |
| | | ></el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item label="延期时间"> |
| | | <el-date-picker clearable v-model="finishTimeList" type="daterange" range-separator="-" |
| | | start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="pickerOptions" |
| | | value-format="yyyy-MM-dd" placeholder="请选择体检完成时间" style="width: 240px"> |
| | | <el-date-picker |
| | | clearable |
| | | v-model="finishTimeList" |
| | | type="daterange" |
| | | range-separator="-" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | :picker-options="pickerOptions" |
| | | value-format="yyyy-MM-dd" |
| | | placeholder="请选择体检完成时间" |
| | | style="width: 240px" |
| | | > |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> |
| | | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-search" |
| | | size="mini" |
| | | @click="handleQuery" |
| | | >搜索</el-button |
| | | > |
| | | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" |
| | | >重置</el-button |
| | | > |
| | | </el-form-item> |
| | | </el-form> |
| | | |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button type="primary" size="mini" @click="transmittext" :disabled="multiple">批量发送短信</el-button> |
| | | <el-button type="primary" size="mini" @click="transmit" :disabled="multiple">批量发送邮件</el-button> |
| | | <el-button |
| | | type="primary" |
| | | size="mini" |
| | | @click="transmittext" |
| | | :disabled="multiple" |
| | | >批量发送短信</el-button |
| | | > |
| | | <el-button |
| | | type="primary" |
| | | size="mini" |
| | | @click="transmit" |
| | | :disabled="multiple" |
| | | >批量发送邮件</el-button |
| | | > |
| | | </el-col> |
| | | <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> |
| | | <right-toolbar |
| | | :showSearch.sync="showSearch" |
| | | @queryTable="getList" |
| | | ></right-toolbar> |
| | | </el-row> |
| | | |
| | | <template> |
| | | <el-table border style="margin: 14px; width: 97%" v-loading="loading" :data="extensionList" |
| | | @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55" align="center" height="10px" fixed="left" /> |
| | | <el-table-column label="序号" align="center" prop="newID" width="50px" fixed="left" height="10px" /> |
| | | <el-table-column label="姓名" align="center" prop="cusName" height="10px" /> |
| | | <el-table-column label="性别" align="center" prop="sex" width="55px" height="10px"> |
| | | <el-table |
| | | border |
| | | style="margin: 14px; width: 97%" |
| | | v-loading="loading" |
| | | :data="extensionList" |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table-column |
| | | type="selection" |
| | | width="55" |
| | | align="center" |
| | | height="10px" |
| | | fixed="left" |
| | | /> |
| | | <el-table-column |
| | | label="序号" |
| | | align="center" |
| | | prop="newID" |
| | | width="50px" |
| | | fixed="left" |
| | | height="10px" |
| | | /> |
| | | <el-table-column |
| | | label="姓名" |
| | | align="center" |
| | | prop="cusName" |
| | | height="10px" |
| | | /> |
| | | <el-table-column |
| | | label="性别" |
| | | align="center" |
| | | prop="sex" |
| | | width="55px" |
| | | height="10px" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span v-if="scope.row.sex == '0'">男</span> |
| | | <span v-if="scope.row.sex == '1'">女</span> |
| | |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="年龄" align="center" prop="age" height="10px" /> |
| | | <el-table-column label="电话" align="center" prop="phone" :show-overflow-tooltip="true" height="10px" /> |
| | | <el-table-column |
| | | label="电话" |
| | | align="center" |
| | | prop="phone" |
| | | :show-overflow-tooltip="true" |
| | | height="10px" |
| | | /> |
| | | <!-- <el-table-column label="团队/个人" align="center" prop="tjType" height="10px"> |
| | | <template slot-scope="scope"> |
| | | <span v-if="scope.row.tjType == '1'">个人</span> |
| | | <span v-if="scope.row.tjType == '2'">团队</span> |
| | | </template> |
| | | </el-table-column> --> |
| | | <el-table-column label="延期项目" align="center" prop="names" height="10px" :show-overflow-tooltip="true" /> |
| | | <el-table-column label="创建时间" align="center" prop="updateTime" width="155px" height="10px"> |
| | | <el-table-column |
| | | label="延期项目" |
| | | align="center" |
| | | prop="names" |
| | | height="10px" |
| | | :show-overflow-tooltip="true" |
| | | /> |
| | | <el-table-column |
| | | label="创建时间" |
| | | align="center" |
| | | prop="updateTime" |
| | | width="155px" |
| | | height="10px" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span>{{ parseTime(scope.row.updateTime) }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="延期时间" align="center" prop="yqTime" width="155px" height="10px"> |
| | | <el-table-column |
| | | label="延期时间" |
| | | align="center" |
| | | prop="yqTime" |
| | | width="155px" |
| | | height="10px" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span>{{ parseTime(scope.row.yqTime) }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="短信发送状态" align="center" prop="msgSend" height="10px" |
| | | :show-overflow-tooltip="true"> |
| | | <el-table-column |
| | | label="短信发送状态" |
| | | align="center" |
| | | prop="msgSend" |
| | | height="10px" |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span v-if="scope.row.msgSend == '1'">已发送</span> |
| | | <span v-if="scope.row.msgSend == '0'">未发送</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="邮件发送状态" align="center" prop="emilSend" height="10px" :show-overflow-tooltip="true"> |
| | | <el-table-column |
| | | label="邮件发送状态" |
| | | align="center" |
| | | prop="emilSend" |
| | | height="10px" |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span v-if="scope.row.emilSend == '1'">已发送</span> |
| | | <span v-if="scope.row.emilSend == '0'">未发送</span> |
| | |
| | | |
| | | <div class="pag"> |
| | | <div class="pag1"> |
| | | <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" @pagination="getList" /> |
| | | <pagination |
| | | v-show="total > 0" |
| | | :total="total" |
| | | :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" |
| | | /> |
| | | </div> |
| | | </div> |
| | | |
| | | <el-drawer :title="title" :visible.sync="drawer" size="60%"> |
| | | <el-form :model="querytempType" ref="queryForm" size="small" :inline="true" label-width="68px" |
| | | style="margin:0 20px"> |
| | | <el-form |
| | | :model="querytempType" |
| | | ref="queryForm" |
| | | size="small" |
| | | :inline="true" |
| | | label-width="68px" |
| | | style="margin: 0 20px" |
| | | > |
| | | <el-form-item label="模板类型" prop="tempType"> |
| | | <el-select v-model="querytempType.tempType" filterable placeholder="请选择模板类型" clearable> |
| | | <el-option v-for="dict in dict.type.tj_send_type" :key="dict.value" :label="dict.label" |
| | | :value="dict.value" /> |
| | | <el-select |
| | | v-model="querytempType.tempType" |
| | | filterable |
| | | placeholder="请选择模板类型" |
| | | clearable |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.tj_send_type" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button type="primary" icon="el-icon-search" size="mini" @click="handleTempType">搜索</el-button> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-search" |
| | | size="mini" |
| | | @click="handleTempType" |
| | | >搜索</el-button |
| | | > |
| | | </el-form-item> |
| | | </el-form> |
| | | |
| | | <el-table v-loading="loading" ref="tb" :data="sendTemplateList" @selection-change="handleChange" border |
| | | style="margin:0 20px;width:94%"> |
| | | <el-table |
| | | v-loading="loading" |
| | | ref="tb" |
| | | :data="sendTemplateList" |
| | | @selection-change="handleChange" |
| | | border |
| | | style="margin: 0 20px; width: 94%" |
| | | > |
| | | <el-table-column type="selection" width="45" align="center" /> |
| | | <el-table-column label="编号" align="center" prop="id" width="60" /> |
| | | <el-table-column label="模板标题" align="center" prop="tempTitle" width="100" /> |
| | | <el-table-column |
| | | label="模板标题" |
| | | align="center" |
| | | prop="tempTitle" |
| | | width="100" |
| | | /> |
| | | <el-table-column label="模板内容" align="center" prop="tempContent" /> |
| | | <el-table-column label="模板类型" align="center" prop="tempType" width="100"> |
| | | <el-table-column |
| | | label="模板类型" |
| | | align="center" |
| | | prop="tempType" |
| | | width="100" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <dict-tag :options="dict.type.tj_send_type" :value="scope.row.tempType" /> |
| | | <dict-tag |
| | | :options="dict.type.tj_send_type" |
| | | :value="scope.row.tempType" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <div class="pag"> |
| | | <div class="pag1"> |
| | | <pagination v-show="total > 0" :total="total" :page.sync="querytempType.pageNum" |
| | | :limit.sync="querytempType.pageSize" @pagination="handleTempType" /> |
| | | <pagination |
| | | v-show="total > 0" |
| | | :total="total" |
| | | :page.sync="querytempType.pageNum" |
| | | :limit.sync="querytempType.pageSize" |
| | | @pagination="handleTempType" |
| | | /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div style="margin-left: 89%;"> |
| | | <el-button type="primary" v-if="mail == true" @click="sendingmail">发 送</el-button> |
| | | <el-button type="primary" v-if="mail == false" @click="sendingtext">发 送</el-button> |
| | | <div style="margin-left: 89%"> |
| | | <el-button type="primary" v-if="mail == true" @click="sendingmail" |
| | | >发 送</el-button |
| | | > |
| | | <el-button type="primary" v-if="mail == false" @click="sendingtext" |
| | | >发 送</el-button |
| | | > |
| | | </div> |
| | | </el-drawer> |
| | | |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { getextensionlist,sendMessageOrEmail } from "@/api/hosp/extension"; |
| | | import { listSendTemplate, } from "@/api/hosp/sendTemplate"; |
| | | import { listSendTemplate } from "@/api/hosp/sendTemplate"; |
| | | import ViewPdf from "@/components/ViewPdf"; |
| | | import { queryCompany } from "@/api/team/tuanti"; |
| | | export default { |
| | |
| | | ViewPdf, |
| | | }, |
| | | name: "Order", |
| | | dicts: ['tj_send_type', 'sys_normal_disable'], |
| | | dicts: ["tj_send_type", "sys_normal_disable"], |
| | | data() { |
| | | return { |
| | | mail: true, |
| | |
| | | dialogVisibles() { |
| | | this.$message.error("请连接拨号器!"); |
| | | }, |
| | | handleClick(tab, event) { |
| | | }, |
| | | handleClick(tab, event) {}, |
| | | //处理默认选中当前日期 |
| | | getNowTime() { |
| | | var curDate = new Date().getTime(); |
| | |
| | | var d = time.getDate(); |
| | | return y + "-" + this.add0(m) + "-" + this.add0(d); |
| | | }, |
| | | onSubmit() { |
| | | }, |
| | | |
| | | onSubmit() {}, |
| | | |
| | | /** 查询体检记录列表 */ |
| | | getList() { |
| | | this.loading = true; |
| | | if (this.createTimeList) { |
| | | this.queryParams.djbeginTime = this.createTimeList[0] |
| | | this.queryParams.djendTime = this.createTimeList[1] |
| | | this.queryParams.djbeginTime = this.createTimeList[0]; |
| | | this.queryParams.djendTime = this.createTimeList[1]; |
| | | } else { |
| | | this.queryParams.djbeginTime = null |
| | | this.queryParams.djendTime = null |
| | | this.queryParams.djbeginTime = null; |
| | | this.queryParams.djendTime = null; |
| | | } |
| | | if (this.finishTimeList) { |
| | | this.queryParams.yqbeginTime = this.finishTimeList[0] |
| | | this.queryParams.yqendTime = this.finishTimeList[1] |
| | | this.queryParams.yqbeginTime = this.finishTimeList[0]; |
| | | this.queryParams.yqendTime = this.finishTimeList[1]; |
| | | } else { |
| | | this.queryParams.yqbeginTime = null |
| | | this.queryParams.yqendTime = null |
| | | this.queryParams.yqbeginTime = null; |
| | | this.queryParams.yqendTime = null; |
| | | } |
| | | |
| | | getextensionlist(this.queryParams).then((response) => { |
| | |
| | | // 搜索 |
| | | handleTempType() { |
| | | this.loading = true; |
| | | this.transmit() |
| | | this.transmit(); |
| | | }, |
| | | // 取消按钮 |
| | | cancel() { |
| | |
| | | }; |
| | | this.resetForm("form"); |
| | | }, |
| | | hb() { |
| | | if (this.queryParams.tjNum != null) { |
| | | this.handleQuery(); |
| | | } |
| | | }, |
| | | /** 搜索按钮操作 */ |
| | | handleQuery() { |
| | | this.queryParams.pageNum = 1; |
| | |
| | | this.multiple = !selection.length; |
| | | }, |
| | | handleChange(selection) { |
| | | selection.forEach(item => { |
| | | this.tempId = item.id |
| | | }) |
| | | selection.forEach((item) => { |
| | | this.tempId = item.id; |
| | | }); |
| | | |
| | | if (selection.length > 1) { |
| | | let del_row = selection.shift(); |
| | |
| | | |
| | | // 出现邮件弹框 |
| | | transmit() { |
| | | this.drawer = true |
| | | this.mail = true |
| | | this.title = "选择邮件发送模板" |
| | | this.drawer = true; |
| | | this.mail = true; |
| | | this.title = "选择邮件发送模板"; |
| | | this.loading = true; |
| | | listSendTemplate(this.querytempType).then(response => { |
| | | listSendTemplate(this.querytempType).then((response) => { |
| | | this.sendTemplateList = response.rows; |
| | | this.total = response.total; |
| | | this.loading = false; |
| | |
| | | }, |
| | | // 出现短信弹框 |
| | | transmittext() { |
| | | this.drawer = true |
| | | this.mail = false |
| | | this.title = "选择短信发送模板" |
| | | this.drawer = true; |
| | | this.mail = false; |
| | | this.title = "选择短信发送模板"; |
| | | this.loading = true; |
| | | listSendTemplate(this.querytempType).then(response => { |
| | | listSendTemplate(this.querytempType).then((response) => { |
| | | this.sendTemplateList = response.rows; |
| | | this.total = response.total; |
| | | this.loading = false; |
| | |
| | | let data = { |
| | | yqorderIds: this.ids, |
| | | tempId: this.tempId, |
| | | type:1 |
| | | } |
| | | type: 1, |
| | | }; |
| | | sendMessageOrEmail(data).then((res) => { |
| | | if (res.code === 200) { |
| | | this.$modal.msgSuccess("发送成功"); |
| | | this.getList() |
| | | this.getList(); |
| | | } |
| | | }) |
| | | this.drawer = false |
| | | }); |
| | | this.drawer = false; |
| | | } else { |
| | | this.$modal.msgError("请选择邮件模板"); |
| | | } |
| | | |
| | | }, |
| | | // 发送短信 |
| | | sendingtext() { |
| | |
| | | let data = { |
| | | yqorderIds: this.ids, |
| | | tempId: this.tempId, |
| | | type:2 |
| | | } |
| | | type: 2, |
| | | }; |
| | | sendMessageOrEmail(data).then((res) => { |
| | | if (res.code === 200) { |
| | | this.$modal.msgSuccess("发送成功"); |
| | | this.getList() |
| | | this.getList(); |
| | | } |
| | | }) |
| | | this.drawer = false |
| | | }); |
| | | this.drawer = false; |
| | | } else { |
| | | this.$modal.msgError("请选择短信模板"); |
| | | } |