|
|
@@ -1,8 +1,15 @@
|
|
|
<template>
|
|
|
<div class="app-container">
|
|
|
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
|
|
|
- <el-form-item label="所属部门" prop="deptId">
|
|
|
- <treeselect style="width:205.4px" v-model="queryParams.deptId" :options="deptOptions" :show-count="true" placeholder="请选择所属部门" />
|
|
|
+ <el-form-item label="公司" prop="companyId">
|
|
|
+ <el-select filterable style="width:205.4px" v-model="queryParams.companyId" placeholder="请选择公司" clearable size="small">
|
|
|
+ <el-option
|
|
|
+ v-for="item in companys"
|
|
|
+ :key="item.companyId"
|
|
|
+ :label="item.companyName"
|
|
|
+ :value="item.companyId"
|
|
|
+ />
|
|
|
+ </el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="员工姓名" prop="userNickName">
|
|
|
<el-input
|
|
|
@@ -13,14 +20,15 @@
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="主叫" prop="callerPhone">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.callerPhone"
|
|
|
- placeholder="请输入主叫"
|
|
|
- clearable
|
|
|
- size="small"
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
+ <el-form-item label="外呼接口" prop="gatewayId">
|
|
|
+ <el-select filterable style="width:205.4px" v-model="queryParams.gatewayId" placeholder="请选择外呼接口" clearable size="small">
|
|
|
+ <el-option
|
|
|
+ v-for="item in voiceApiOptions"
|
|
|
+ :key="item.apiId"
|
|
|
+ :label="item.apiName"
|
|
|
+ :value="item.apiId"
|
|
|
+ />
|
|
|
+ </el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="被叫" prop="calleePhone">
|
|
|
<el-input
|
|
|
@@ -31,28 +39,6 @@
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="客户来源" prop="source">
|
|
|
- <el-select filterable v-model="queryParams.source" placeholder="请选择客户来源" clearable size="small">
|
|
|
- <el-option
|
|
|
- v-for="item in sourceOptions"
|
|
|
- :key="item.dictValue"
|
|
|
- :label="item.dictLabel"
|
|
|
- :value="item.dictValue"
|
|
|
- />
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
-
|
|
|
-<!-- <el-form-item label="创建时间" prop="createTime">
|
|
|
- <el-date-picker
|
|
|
- style="width:205.4px"
|
|
|
- clearable size="small"
|
|
|
- v-model="dateRange"
|
|
|
- type="daterange"
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
- start-placeholder="开始日期"
|
|
|
- end-placeholder="结束日期">
|
|
|
- </el-date-picker>
|
|
|
- </el-form-item> -->
|
|
|
|
|
|
<el-form-item label="开始时间" prop="startTime">
|
|
|
<el-date-picker v-model="dateRange" size="small" style="width: 240px" value-format="yyyy-MM-dd" type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
|
|
|
@@ -147,17 +133,16 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
-import { treeselect } from "@/api/company/companyDept";
|
|
|
-import Treeselect from "@riophae/vue-treeselect";
|
|
|
-import "@riophae/vue-treeselect/dist/vue-treeselect.css";
|
|
|
+import { getCompanyList } from "@/api/company/company";
|
|
|
+import { getVoiceApiList } from "@/api/company/companyVoiceApi";
|
|
|
import { listCompanyVoiceLogs, getCompanyVoiceLogs, delCompanyVoiceLogs, addCompanyVoiceLogs, updateCompanyVoiceLogs, exportCompanyVoiceLogs } from "@/api/company/companyVoiceLogs";
|
|
|
export default {
|
|
|
name: "CompanyVoiceLogs",
|
|
|
- components: { Treeselect },
|
|
|
data() {
|
|
|
return {
|
|
|
statusOptions:[],
|
|
|
companys:[],
|
|
|
+ voiceApiOptions:[],
|
|
|
// 遮罩层
|
|
|
loading: true,
|
|
|
// 选中数组
|
|
|
@@ -182,28 +167,20 @@ export default {
|
|
|
pageNum: 1,
|
|
|
pageSize: 10,
|
|
|
companyId: null,
|
|
|
+ userNickName: null,
|
|
|
+ gatewayId: null,
|
|
|
voiceTitle: null,
|
|
|
voiceUrl: null,
|
|
|
startTime: null,
|
|
|
endTime: null,
|
|
|
voiceType: null,
|
|
|
- callerPhone: null,
|
|
|
calleePhone: null,
|
|
|
times: null,
|
|
|
moeny: null,
|
|
|
displayCallerNumber: null,
|
|
|
displayCalleeNumber: null,
|
|
|
- source: null,
|
|
|
- },
|
|
|
- userSelect:{
|
|
|
- title:"选择员工",
|
|
|
- open:false,
|
|
|
},
|
|
|
users:[],
|
|
|
- // 部门树选项
|
|
|
- deptOptions: undefined,
|
|
|
- // 部门名称
|
|
|
- deptName: undefined,
|
|
|
sourceOptions:[],
|
|
|
// 表单参数
|
|
|
form: {},
|
|
|
@@ -219,10 +196,21 @@ export default {
|
|
|
this.getDicts("sys_crm_customer_source").then((response) => {
|
|
|
this.sourceOptions = response.data;
|
|
|
});
|
|
|
- this.getTreeselect();
|
|
|
+ this.loadCompanyOptions();
|
|
|
+ this.loadVoiceApiOptions();
|
|
|
this.getList();
|
|
|
},
|
|
|
methods: {
|
|
|
+ loadCompanyOptions() {
|
|
|
+ getCompanyList().then(response => {
|
|
|
+ this.companys = response.data || [];
|
|
|
+ });
|
|
|
+ },
|
|
|
+ loadVoiceApiOptions() {
|
|
|
+ getVoiceApiList().then(response => {
|
|
|
+ this.voiceApiOptions = response.data || [];
|
|
|
+ });
|
|
|
+ },
|
|
|
formatTime(value) {
|
|
|
const hours = Math.floor(value / 3600);
|
|
|
const minutes = Math.floor((value % 3600) / 60);
|
|
|
@@ -241,17 +229,11 @@ export default {
|
|
|
this.loading = true;
|
|
|
|
|
|
listCompanyVoiceLogs(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
|
|
|
- console.log(this.dateRange)
|
|
|
this.companyVoiceLogsList = response.rows;
|
|
|
this.total = response.total;
|
|
|
this.loading = false;
|
|
|
});
|
|
|
},
|
|
|
- getTreeselect() {
|
|
|
- treeselect().then((response) => {
|
|
|
- this.deptOptions = response.data;
|
|
|
- });
|
|
|
- },
|
|
|
// 取消按钮
|
|
|
cancel() {
|
|
|
this.open = false;
|
|
|
@@ -349,7 +331,7 @@ export default {
|
|
|
},
|
|
|
/** 导出按钮操作 */
|
|
|
handleExport() {
|
|
|
- const queryParams = this.queryParams;
|
|
|
+ const queryParams = this.addDateRange(this.queryParams, this.dateRange);
|
|
|
this.$confirm('是否确认导出所有通话记录数据项?', "警告", {
|
|
|
confirmButtonText: "确定",
|
|
|
cancelButtonText: "取消",
|