+
+
+
@@ -45,10 +47,12 @@
import AppContainer from '../../../components/layout/AppContainer'
import DeptSelect from '../../../components/DeptSelect/index'
import { deptStatistics } from '@/api/statistics'
+import ChartTools from '../components/chartTools'
+import BorderFrame from '../../../components/frame/borderFrame'
export default {
name: 'CaseStatisticYear',
- components: { DeptSelect, AppContainer, SearchItem, SearchArea, NormalTable },
+ components: { BorderFrame, ChartTools, DeptSelect, AppContainer, SearchItem, SearchArea, NormalTable },
data() {
return {
listQuery: {
@@ -147,15 +151,14 @@
deptStatistics(this.listQuery).then(response => {
if (response.code === 200) {
this.listLoading = false
- this.data = response.data.rows
- this.total = response.data.total
- this.data = [
- { deptName: '社管局', caseTotalCount: 20, delayOneCount: 0, delayTwoCount: 0, normalfinished: 20, delayfinished: 0, onCount: 0, delayUnfinishedCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 },
- { deptName: '城管执法分局', caseTotalCount: 21, delayOneCount: 0, delayTwoCount: 0, normalfinished: 21, delayfinished: 0, onCount: 0, delayUnfinishedCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 },
- { deptName: '蓉江新区交通大队', caseTotalCount: 10, delayOneCount: 0, delayTwoCount: 0, normalfinished: 10, delayfinished: 0, onCount: 0, delayUnfinishedCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 },
- { deptName: '环卫所', caseTotalCount: 5, delayOneCount: 0, delayTwoCount: 0, normalfinished: 5, delayfinished: 0, onCount: 0, delayUnfinishedCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 },
- { deptName: '住建局', caseTotalCount: 3, delayOneCount: 0, delayTwoCount: 0, normalfinished: 3, delayfinished: 0, onCount: 0, delayUnfinishedCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 }
- ]
+ this.data = response.data
+ // this.data = [
+ // { deptName: '社管局', caseTotalCount: 20, delayOneCount: 0, delayTwoCount: 0, normalfinished: 20, delayfinished: 0, onCount: 0, delayUnfinishedCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 },
+ // { deptName: '城管执法分局', caseTotalCount: 21, delayOneCount: 0, delayTwoCount: 0, normalfinished: 21, delayfinished: 0, onCount: 0, delayUnfinishedCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 },
+ // { deptName: '蓉江新区交通大队', caseTotalCount: 10, delayOneCount: 0, delayTwoCount: 0, normalfinished: 10, delayfinished: 0, onCount: 0, delayUnfinishedCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 },
+ // { deptName: '环卫所', caseTotalCount: 5, delayOneCount: 0, delayTwoCount: 0, normalfinished: 5, delayfinished: 0, onCount: 0, delayUnfinishedCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 },
+ // { deptName: '住建局', caseTotalCount: 3, delayOneCount: 0, delayTwoCount: 0, normalfinished: 3, delayfinished: 0, onCount: 0, delayUnfinishedCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 }
+ // ]
}
})
},
@@ -168,6 +171,9 @@
this.listQuery.offset = val.page
}
this.fetchData()
+ },
+ changeTime(val) {
+ this.timeRange = val
}
}
}
diff --git a/src/views/statistic/seatStatistic/components/callTimeLine.vue b/src/views/statistic/seatStatistic/components/callTimeLine.vue
new file mode 100644
index 0000000..ffd0d55
--- /dev/null
+++ b/src/views/statistic/seatStatistic/components/callTimeLine.vue
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/statistic/seatStatistic/components/callTotalBar.vue b/src/views/statistic/seatStatistic/components/callTotalBar.vue
new file mode 100644
index 0000000..8bcd3f7
--- /dev/null
+++ b/src/views/statistic/seatStatistic/components/callTotalBar.vue
@@ -0,0 +1,84 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/statistic/seatStatistic/seatStatistic.vue b/src/views/statistic/seatStatistic/seatStatistic.vue
index 5e4f1c8..3ea412b 100644
--- a/src/views/statistic/seatStatistic/seatStatistic.vue
+++ b/src/views/statistic/seatStatistic/seatStatistic.vue
@@ -7,6 +7,7 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -40,12 +53,15 @@
import SearchArea from '../../../components/SearchArea/SearchArea'
import SearchItem from '../../../components/SearchArea/SearchItem'
import AppContainer from '../../../components/layout/AppContainer'
-import DeptSelect from '../../../components/DeptSelect/index'
-import { deptStatistics } from '@/api/statistics'
+import { seatStatistics } from '@/api/statistics'
+import ChartTools from '../components/chartTools'
+import CallTotalBar from './components/callTotalBar'
+import BorderFrame from '../../../components/frame/borderFrame'
+import CallTimeLine from './components/callTimeLine'
export default {
name: 'CaseStatisticYear',
- components: { DeptSelect, AppContainer, SearchItem, SearchArea, NormalTable },
+ components: { CallTimeLine, BorderFrame, CallTotalBar, ChartTools, AppContainer, SearchItem, SearchArea, NormalTable },
data() {
return {
listQuery: {
@@ -84,7 +100,7 @@
value: 'directReplyCount'
},
{
- text: '交办数',
+ text: '协同申请数',
value: 'assignCount'
},
{
@@ -93,14 +109,10 @@
},
{
text: '回访重办数',
- value: 'returnDoCount'
+ value: 'onLineInTime'
},
{
- text: '会签数',
- value: 'countersignCount'
- },
- {
- text: '在线接入时长(分)',
+ text: '在线呼入时长(分)',
value: 'onLineInTime'
},
{
@@ -116,12 +128,20 @@
value: 'redoOneCount'
},
{
- text: '总忙置时长(分)',
- value: 'onLineFreeTime'
+ text: '总置忙时长(分)',
+ value: 'busyTotalTime'
},
{
text: '总签入时长(分)',
- value: 'onLineFreeTime'
+ value: 'callInTotalTime'
+ },
+ {
+ text: '平均呼入时长(分)',
+ value: 'callInAvgTime'
+ },
+ {
+ text: '平均呼出时长(分)',
+ value: 'callOutAvgTime'
}
], // 显示列
data: [], // 列表数据
@@ -153,17 +173,16 @@
},
fetchData() {
this.listLoading = true
- deptStatistics(this.listQuery).then(response => {
+ seatStatistics(this.listQuery).then(response => {
if (response.code === 200) {
this.listLoading = false
this.data = response.data.rows
this.total = response.data.total
this.data = [
- { userName: '社管局', seat: 20, delayOneCount: 0, delayTwoCount: 0, normalfinished: 20, delayfinished: 0, onCount: 0, acceptCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 },
- { userName: '城管执法分局', seat: 21, delayOneCount: 0, delayTwoCount: 0, normalfinished: 21, delayfinished: 0, onCount: 0, acceptCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 },
- { userName: '蓉江新区交通大队', seat: 10, delayOneCount: 0, delayTwoCount: 0, normalfinished: 10, delayfinished: 0, onCount: 0, acceptCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 },
- { userName: '环卫所', seat: 5, delayOneCount: 0, delayTwoCount: 0, normalfinished: 5, delayfinished: 0, onCount: 0, acceptCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 },
- { userName: '住建局', seat: 3, delayOneCount: 0, delayTwoCount: 0, normalfinished: 3, delayfinished: 0, onCount: 0, acceptCount: 0, feedBackCount: 0, delayOneUrgeCount: 0, delayTwoUrgeCount: 0, delayTwoMoreUrgeCount: 0, redoOneCount: 0, redoTwoCount: 0 }
+ { userName: '坐席1', seat: '001', callInCount: 0, callOutCount: 0, callTotalCount: 20, acceptCount: 0, directReplyCount: 0, assignCount: 0, storagyCount: 0, onLineInTime: 0, onLineFreeTime: 0, redoOneCount: 0, redoTwoCount: 0 },
+ { userName: '坐席2', seat: '002', callInCount: 0, callOutCount: 0, callTotalCount: 21, acceptCount: 0, directReplyCount: 0, assignCount: 0, storagyCount: 0, onLineInTime: 0, onLineFreeTime: 0, redoOneCount: 0, redoTwoCount: 0 },
+ { userName: '坐席3', seat: '003', callInCount: 0, callOutCount: 0, callTotalCount: 10, acceptCount: 0, directReplyCount: 0, assignCount: 0, storagyCount: 0, onLineInTime: 0, onLineFreeTime: 0, redoOneCount: 0, redoTwoCount: 0 },
+ { userName: '坐席4', seat: '004', callInCount: 0, callOutCount: 0, callTotalCount: 5, acceptCount: 0, directReplyCount: 0, assignCount: 0, storagyCount: 0, onLineInTime: 0, onLineFreeTime: 0, redoOneCount: 0, redoTwoCount: 0 }
]
}
})
@@ -177,6 +196,9 @@
this.listQuery.offset = val.page
}
this.fetchData()
+ },
+ changeTime(val) {
+ this.timeRange = val
}
}
}