Kaynağa Gözat

reactor:话务日期统计 区分宜宾自贡和泸州;

zhangchong 6 ay önce
ebeveyn
işleme
d6741b6b37

+ 177 - 3
src/views/statistics/call/detailIndex.vue

@@ -14,6 +14,7 @@
 				:exportParams="requestParams"
 				show-summary
 				:summary-method="getSummaries"
+				v-if="['YiBin'].includes(themeConfig.appScope)"
 			>
 				<template #table-search>
 					<el-form :model="state.queryParams" ref="ruleFormRef" @submit.native.prevent inline>
@@ -44,7 +45,61 @@
 							<el-descriptions-item label="有效接通率">有效接通/接通总量 </el-descriptions-item>
 							<el-descriptions-item label="超时接通量">( 电话开始时间-电话接通时间)>15秒的接通量 </el-descriptions-item>
 							<el-descriptions-item label="超时挂断量"> 呼入时长小于15秒的接通量(和接通秒挂一样) </el-descriptions-item>
-							<el-descriptions-item label="按时接通率"> 一接通总量-(超时挂断量+超时接通量)/接通总量 </el-descriptions-item>
+							<el-descriptions-item label="按时接通率"> 接通总量-(超时挂断量+超时接通量)/接通总量 </el-descriptions-item>
+							<el-descriptions-item label="队列挂断"> 在队列等待中挂断 </el-descriptions-item>
+							<el-descriptions-item label="IVR挂断"> 语音提示等待中挂断 </el-descriptions-item>
+							<el-descriptions-item label="呼出总量"> 呼出接通量+呼出未接通量</el-descriptions-item>
+							<el-descriptions-item label="呼出接通量"> 呼出的接通量 </el-descriptions-item>
+							<el-descriptions-item label="呼出接通率"> 呼出接通量/呼出总量 </el-descriptions-item>
+						</el-descriptions>
+					</el-popover>
+				</template>
+			</ProTable>
+			<ProTable
+				ref="proTableRef"
+				:columns="columns1"
+				:data="state.tableData"
+				@updateTable="queryList"
+				:loading="state.loading"
+				border
+				:pagination="false"
+				:toolButton="['refresh', 'setting', 'exportAll']"
+				:exportMethod="callDetailListExport"
+				:exportParams="requestParams"
+				show-summary
+				:summary-method="getSummaries"
+				v-if="['ZiGong','LuZhou'].includes(themeConfig.appScope)"
+			>
+				<template #table-search>
+					<el-form :model="state.queryParams" ref="ruleFormRef" @submit.native.prevent inline>
+						<el-form-item prop="crTime">
+							<statistical-time v-model="state.queryParams.crTime"	@change="handleQuery" ref="statisticalTimeRef"/>
+						</el-form-item>
+						<el-form-item>
+							<el-button type="primary" @click="handleQuery" :loading="state.loading"> <SvgIcon name="ele-Search" class="mr5" />查询 </el-button>
+							<el-button @click="resetQuery(ruleFormRef)" class="default-button" :loading="state.loading">
+								<SvgIcon name="ele-Refresh" class="mr5" />重置
+							</el-button>
+						</el-form-item>
+					</el-form>
+				</template>
+				<template #description>
+					<el-popover :width="500" trigger="click">
+						<template #reference>
+							<el-button circle title="口径说明"><SvgIcon name="ele-QuestionFilled" /></el-button>
+						</template>
+						<el-descriptions title="" :column="1" border style="max-height: 400px; overflow: auto">
+							<el-descriptions-item label="呼入总量">呼入接通量+呼入未接通量</el-descriptions-item>
+							<el-descriptions-item label="接通总量">呼入接通量</el-descriptions-item>
+							<el-descriptions-item label="挂机量">呼入未接通量</el-descriptions-item>
+							<el-descriptions-item label="接通率"> 接通总量/呼入总量 </el-descriptions-item>
+							<el-descriptions-item label="平均时长"> 呼入总时长/呼入接通量 </el-descriptions-item>
+							<el-descriptions-item label="有效接通"> 呼入时长大于15秒的接通量 </el-descriptions-item>
+							<el-descriptions-item label="接通秒挂"> (无效接通):呼入时长小于15秒的接通量 </el-descriptions-item>
+							<el-descriptions-item label="有效接通率">有效接通/接通总量 </el-descriptions-item>
+							<el-descriptions-item label="超时接通量">( 电话开始时间-电话接通时间)>15秒的接通量 </el-descriptions-item>
+							<el-descriptions-item label="超时挂断量"> 呼入时长小于15秒的接通量(和接通秒挂一样) </el-descriptions-item>
+							<el-descriptions-item label="按时接通率"> 接通总量-(超时挂断量+超时接通量)/接通总量 </el-descriptions-item>
 							<el-descriptions-item label="队列挂断"> 在队列等待中挂断 </el-descriptions-item>
 							<el-descriptions-item label="IVR挂断"> 语音提示等待中挂断 </el-descriptions-item>
 							<el-descriptions-item label="呼出总量"> 呼出接通量+呼出未接通量</el-descriptions-item>
@@ -64,11 +119,14 @@ import { defaultDate } from '@/utils/constants';
 import Other from '@/utils/other';
 import { callDetailList, callDetailListExport, callPeriodBase } from '@/api/statistics/call';
 import { useRouter } from 'vue-router';
-import { formatDate } from '@/utils/formatTime';
 import dayjs from 'dayjs';
+import { useThemeConfig } from '@/stores/themeConfig';
+import { storeToRefs } from 'pinia';
 
 const StatisticalTime = defineAsyncComponent(() => import('@/components/StatisticalTime/index.vue')); // 日期类型选择组件
-// 表格配置项
+const storesThemeConfig = useThemeConfig();
+const { themeConfig } = storeToRefs(storesThemeConfig);
+// 表格配置项 宜宾
 const columns = ref<any[]>([
 	{
 		prop: 'date',
@@ -177,6 +235,122 @@ const columns = ref<any[]>([
 		align: 'center',
 	},
 ]);
+// 表格配置项 自贡 泸州
+const columns1 = ref<any[]>([
+	{
+		prop: 'date',
+		label: '日期',
+		align: 'center',
+		render: (scope) => {
+			return (
+				<el-button type="primary" link onClick={() => linkDetail(scope, 'date')}>
+					{scope.row.date}
+				</el-button>
+			);
+		},
+	},
+	{
+		prop: 'inTotal',
+		label: '呼入总量',
+		align: 'center',
+		render: (scope) => {
+			return (
+				<el-button type="primary" link onClick={() => linkDetail(scope)}>
+					{scope.row.inTotal}
+				</el-button>
+			);
+		},
+	},
+	{
+		prop: 'inConnectionQuantity',
+		label: '接通总量',
+		align: 'center',
+		render: (scope) => {
+			return (
+				<el-button type="primary" link onClick={() => linkDetail(scope)}>
+					{scope.row.inConnectionQuantity}
+				</el-button>
+			);
+		},
+	},
+	{
+		prop: 'inConnectionQuantity',
+		label: '挂机量',
+		align: 'center',
+		render: (scope) => {
+			return (
+				<el-button type="primary" link onClick={() => linkDetail(scope)}>
+					{scope.row.inConnectionQuantity}
+				</el-button>
+			);
+		},
+	},
+	{
+		prop: 'inConnectionRate',
+		label: '接通率',
+		align: 'center',
+	},
+	{
+		prop: 'averageDuration',
+		label: '平均时长',
+		align: 'center',
+	},
+	{
+		prop: 'inAvailableAnswer',
+		label: '有效接通量',
+		align: 'center',
+	},
+	{
+		prop: 'inHangupImmediateWhenAnswered',
+		label: '接通秒挂',
+		align: 'center',
+	},
+	{
+		prop: 'effectiveConnectionRate',
+		label: '有效接通率',
+		align: 'center',
+	},
+	{
+		prop: 'timeoutConnection',
+		label: '超时接通量',
+		align: 'center',
+	},
+	{
+		prop: 'timeoutSuspension',
+		label: '超时挂断量',
+		align: 'center',
+	},
+	{
+		prop: 'onTimeConnectionRate',
+		label: '按时接通率',
+		align: 'center',
+	},
+	{
+		prop: 'queueByeCount',
+		label: '队列挂断',
+		align: 'center',
+	},
+	{
+		prop: 'ivrByeCount',
+		label: 'IVR挂断',
+		align: 'center',
+	},
+	{
+		prop: 'outTotal',
+		label: '呼出总量',
+		align: 'center',
+	},
+	{
+		prop: 'outConnectionQuantity',
+		label: '呼出接通量',
+		align: 'center',
+	},
+	{
+		prop: 'outConnectionRate',
+		label: '呼出接通率',
+		align: 'center',
+	},
+]);
 // 定义变量内容
 const ruleFormRef = ref<RefType>(); // 表单ref
 const state = reactive<any>({

+ 125 - 1
src/views/statistics/call/detailIndexTime.vue

@@ -14,6 +14,7 @@
 				show-summary
 				:summary-method="getSummaries"
         border
+				v-if="['YiBin'].includes(themeConfig.appScope)"
 			>
         <template #table-search>
           <el-form :model="state.queryParams" ref="ruleFormRef" @submit.native.prevent inline>
@@ -31,6 +32,37 @@
           </el-form>
         </template>
 			</ProTable>
+			<ProTable
+				ref="proTableRef"
+				:columns="columns1"
+				:data="state.tableData"
+				@updateTable="queryList"
+				:loading="state.loading"
+				:pagination="false"
+				:toolButton="['refresh', 'setting', 'exportAll']"
+				:exportMethod="callDetailListDateExport"
+				:exportParams="requestParams"
+				show-summary
+				:summary-method="getSummaries"
+				border
+				v-if="['ZiGong','LuZhou'].includes(themeConfig.appScope)"
+			>
+				<template #table-search>
+					<el-form :model="state.queryParams" ref="ruleFormRef" @submit.native.prevent inline>
+						<el-form-item label="热线号码" prop="Keyword">
+							<el-select v-model="state.queryParams.Keyword" placeholder="请选择热线号码" clearable @change="handleQuery">
+								<el-option v-for="item in state.callForwardingSource" :value="item.dicDataValue" :key="item.dicDataValue" :label="item.dicDataName" />
+							</el-select>
+						</el-form-item>
+						<el-form-item>
+							<el-button type="primary" @click="handleQuery" :loading="state.loading"> <SvgIcon name="ele-Search" class="mr5" />查询 </el-button>
+							<el-button @click="resetQuery(ruleFormRef)" class="default-button" :loading="state.loading">
+								<SvgIcon name="ele-Refresh" class="mr5" />重置
+							</el-button>
+						</el-form-item>
+					</el-form>
+				</template>
+			</ProTable>
 		</DIV>
 	</div>
 </template>
@@ -39,8 +71,12 @@ import { onMounted, reactive, ref } from 'vue';
 import { FormInstance } from 'element-plus';
 import { callDateListDate, callDetailListDateExport, callPeriodBase } from '@/api/statistics/call';
 import { useRoute } from 'vue-router';
+import { useThemeConfig } from '@/stores/themeConfig';
+import { storeToRefs } from 'pinia';
 
-// 表格配置项
+const storesThemeConfig = useThemeConfig();
+const { themeConfig } = storeToRefs(storesThemeConfig);
+// 表格配置项 宜宾
 const columns = ref<any[]>([
 	{
 		prop: 'hour',
@@ -128,6 +164,94 @@ const columns = ref<any[]>([
 		align: 'center',
 	},
 ]);
+// 表格配置项 自贡 泸州
+const columns1 = ref<any[]>([
+	{
+		prop: 'hour',
+		label: '时间',
+		align: 'center',
+	},
+	{
+		prop: 'inTotal',
+		label: '呼入总量',
+		align: 'center',
+	},
+	{
+		prop: 'inConnectionQuantity',
+		label: '接通总量',
+		align: 'center',
+	},
+	{
+		prop: 'inConnectionQuantity',
+		label: '挂机量',
+		align: 'center',
+	},
+	{
+		prop: 'inConnectionRate',
+		label: '接通率',
+		align: 'center',
+	},
+	{
+		prop: 'averageDuration',
+		label: '平均时长',
+		align: 'center',
+	},
+	{
+		prop: 'inAvailableAnswer',
+		label: '有效接通量',
+		align: 'center',
+	},
+	{
+		prop: 'inHangupImmediateWhenAnswered',
+		label: '接通秒挂',
+		align: 'center',
+	},
+	{
+		prop: 'effectiveConnectionRate',
+		label: '有效接通率',
+		align: 'center',
+	},
+	{
+		prop: 'timeoutConnection',
+		label: '超时接通量',
+		align: 'center',
+	},
+	{
+		prop: 'timeoutSuspension',
+		label: '超时挂断量',
+		align: 'center',
+	},
+	{
+		prop: 'onTimeConnectionRate',
+		label: '按时接通率',
+		align: 'center',
+	},
+	{
+		prop: 'queueByeCount',
+		label: '队列挂断',
+		align: 'center',
+	},
+	{
+		prop: 'ivrByeCount',
+		label: 'IVR挂断',
+		align: 'center',
+	},
+	{
+		prop: 'outTotal',
+		label: '呼出总量',
+		align: 'center',
+	},
+	{
+		prop: 'outConnectionQuantity',
+		label: '呼出接通量',
+		align: 'center',
+	},
+	{
+		prop: 'outConnectionRate',
+		label: '呼出接通率',
+		align: 'center',
+	},
+]);
 // 定义变量内容
 const ruleFormRef = ref<RefType>(); // 表单ref
 const state = reactive<any>({