diff --git a/src/api/allDict.js b/src/api/allDict.js
index 25452a2..fa16330 100644
--- a/src/api/allDict.js
+++ b/src/api/allDict.js
@@ -90,3 +90,11 @@
params
})
}
+// 可用状态
+export function getCallWay(params) {
+ return request({
+ url: '/dict/code/callWay',
+ method: 'get',
+ params
+ })
+}
diff --git a/src/api/allDict.js b/src/api/allDict.js
index 25452a2..fa16330 100644
--- a/src/api/allDict.js
+++ b/src/api/allDict.js
@@ -90,3 +90,11 @@
params
})
}
+// 可用状态
+export function getCallWay(params) {
+ return request({
+ url: '/dict/code/callWay',
+ method: 'get',
+ params
+ })
+}
diff --git a/src/api/cti.js b/src/api/cti.js
new file mode 100644
index 0000000..a1e60b8
--- /dev/null
+++ b/src/api/cti.js
@@ -0,0 +1,70 @@
+/**
+ * CTI接口,获取坐席情况
+ */
+import request from '@/utils/request'
+
+// 获取当前正在通话列表
+// {success:true,totalProperty:1,
+// root:[{"Call_pbxName":"spzc_pbx","Call_city":"","Call_isp":"中国联通","Call_number":"18513995803","Call_province":"北京","Call_callStatus":"接通","Call_id":"b7c32570-8acd-11ea-96b3-89e56eb1026b","Call_staySeconds":"8","Call_talkSeconds":"4","Call_ivrName":"座席组--客服","Call_agentName":"888","Call_otherLegNumber":"6001","Call_agentStaffid":"1","Call_sp_entityName":"Call"}]}
+export function getCurrentCalls(params) {
+ return request({
+ url: '/sound/list',
+ // url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/calls.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取全部坐席情况列表
+export function getSeatsState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/agents.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
+// 获取全部分机情况列表
+export function getPhoneState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/extensions.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取排队情况
+export function getQueueState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/queues.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
diff --git a/src/api/allDict.js b/src/api/allDict.js
index 25452a2..fa16330 100644
--- a/src/api/allDict.js
+++ b/src/api/allDict.js
@@ -90,3 +90,11 @@
params
})
}
+// 可用状态
+export function getCallWay(params) {
+ return request({
+ url: '/dict/code/callWay',
+ method: 'get',
+ params
+ })
+}
diff --git a/src/api/cti.js b/src/api/cti.js
new file mode 100644
index 0000000..a1e60b8
--- /dev/null
+++ b/src/api/cti.js
@@ -0,0 +1,70 @@
+/**
+ * CTI接口,获取坐席情况
+ */
+import request from '@/utils/request'
+
+// 获取当前正在通话列表
+// {success:true,totalProperty:1,
+// root:[{"Call_pbxName":"spzc_pbx","Call_city":"","Call_isp":"中国联通","Call_number":"18513995803","Call_province":"北京","Call_callStatus":"接通","Call_id":"b7c32570-8acd-11ea-96b3-89e56eb1026b","Call_staySeconds":"8","Call_talkSeconds":"4","Call_ivrName":"座席组--客服","Call_agentName":"888","Call_otherLegNumber":"6001","Call_agentStaffid":"1","Call_sp_entityName":"Call"}]}
+export function getCurrentCalls(params) {
+ return request({
+ url: '/sound/list',
+ // url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/calls.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取全部坐席情况列表
+export function getSeatsState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/agents.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
+// 获取全部分机情况列表
+export function getPhoneState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/extensions.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取排队情况
+export function getQueueState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/queues.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
diff --git a/src/api/qualityCheck.js b/src/api/qualityCheck.js
index df8ac62..5eaa704 100644
--- a/src/api/qualityCheck.js
+++ b/src/api/qualityCheck.js
@@ -7,7 +7,7 @@
// 查询质检模块
export function getQModulerList(params) {
return request({
- url: '/sound/soundList',
+ url: '/qualityModular/list',
method: 'get',
params
})
diff --git a/src/api/allDict.js b/src/api/allDict.js
index 25452a2..fa16330 100644
--- a/src/api/allDict.js
+++ b/src/api/allDict.js
@@ -90,3 +90,11 @@
params
})
}
+// 可用状态
+export function getCallWay(params) {
+ return request({
+ url: '/dict/code/callWay',
+ method: 'get',
+ params
+ })
+}
diff --git a/src/api/cti.js b/src/api/cti.js
new file mode 100644
index 0000000..a1e60b8
--- /dev/null
+++ b/src/api/cti.js
@@ -0,0 +1,70 @@
+/**
+ * CTI接口,获取坐席情况
+ */
+import request from '@/utils/request'
+
+// 获取当前正在通话列表
+// {success:true,totalProperty:1,
+// root:[{"Call_pbxName":"spzc_pbx","Call_city":"","Call_isp":"中国联通","Call_number":"18513995803","Call_province":"北京","Call_callStatus":"接通","Call_id":"b7c32570-8acd-11ea-96b3-89e56eb1026b","Call_staySeconds":"8","Call_talkSeconds":"4","Call_ivrName":"座席组--客服","Call_agentName":"888","Call_otherLegNumber":"6001","Call_agentStaffid":"1","Call_sp_entityName":"Call"}]}
+export function getCurrentCalls(params) {
+ return request({
+ url: '/sound/list',
+ // url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/calls.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取全部坐席情况列表
+export function getSeatsState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/agents.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
+// 获取全部分机情况列表
+export function getPhoneState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/extensions.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取排队情况
+export function getQueueState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/queues.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
diff --git a/src/api/qualityCheck.js b/src/api/qualityCheck.js
index df8ac62..5eaa704 100644
--- a/src/api/qualityCheck.js
+++ b/src/api/qualityCheck.js
@@ -7,7 +7,7 @@
// 查询质检模块
export function getQModulerList(params) {
return request({
- url: '/sound/soundList',
+ url: '/qualityModular/list',
method: 'get',
params
})
diff --git a/src/layout/components/ivr/chooseExten.vue b/src/layout/components/ivr/chooseExten.vue
index ae8f567..6f4cbed 100644
--- a/src/layout/components/ivr/chooseExten.vue
+++ b/src/layout/components/ivr/chooseExten.vue
@@ -41,7 +41,6 @@
methods: {
// 初始化对话框,type=in表示内呼,out表示外呼
initDialog() {
- this.onKeyEvent()
this.currentExten = ''
this.dialogVisible = true
},
diff --git a/src/api/allDict.js b/src/api/allDict.js
index 25452a2..fa16330 100644
--- a/src/api/allDict.js
+++ b/src/api/allDict.js
@@ -90,3 +90,11 @@
params
})
}
+// 可用状态
+export function getCallWay(params) {
+ return request({
+ url: '/dict/code/callWay',
+ method: 'get',
+ params
+ })
+}
diff --git a/src/api/cti.js b/src/api/cti.js
new file mode 100644
index 0000000..a1e60b8
--- /dev/null
+++ b/src/api/cti.js
@@ -0,0 +1,70 @@
+/**
+ * CTI接口,获取坐席情况
+ */
+import request from '@/utils/request'
+
+// 获取当前正在通话列表
+// {success:true,totalProperty:1,
+// root:[{"Call_pbxName":"spzc_pbx","Call_city":"","Call_isp":"中国联通","Call_number":"18513995803","Call_province":"北京","Call_callStatus":"接通","Call_id":"b7c32570-8acd-11ea-96b3-89e56eb1026b","Call_staySeconds":"8","Call_talkSeconds":"4","Call_ivrName":"座席组--客服","Call_agentName":"888","Call_otherLegNumber":"6001","Call_agentStaffid":"1","Call_sp_entityName":"Call"}]}
+export function getCurrentCalls(params) {
+ return request({
+ url: '/sound/list',
+ // url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/calls.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取全部坐席情况列表
+export function getSeatsState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/agents.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
+// 获取全部分机情况列表
+export function getPhoneState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/extensions.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取排队情况
+export function getQueueState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/queues.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
diff --git a/src/api/qualityCheck.js b/src/api/qualityCheck.js
index df8ac62..5eaa704 100644
--- a/src/api/qualityCheck.js
+++ b/src/api/qualityCheck.js
@@ -7,7 +7,7 @@
// 查询质检模块
export function getQModulerList(params) {
return request({
- url: '/sound/soundList',
+ url: '/qualityModular/list',
method: 'get',
params
})
diff --git a/src/layout/components/ivr/chooseExten.vue b/src/layout/components/ivr/chooseExten.vue
index ae8f567..6f4cbed 100644
--- a/src/layout/components/ivr/chooseExten.vue
+++ b/src/layout/components/ivr/chooseExten.vue
@@ -41,7 +41,6 @@
methods: {
// 初始化对话框,type=in表示内呼,out表示外呼
initDialog() {
- this.onKeyEvent()
this.currentExten = ''
this.dialogVisible = true
},
diff --git a/src/layout/components/ivr/chooseSeats.vue b/src/layout/components/ivr/chooseSeats.vue
index 330c74f..86dfbab 100644
--- a/src/layout/components/ivr/chooseSeats.vue
+++ b/src/layout/components/ivr/chooseSeats.vue
@@ -9,13 +9,16 @@
width="350px"
append-to-body>
-
+
{{ seat.exten }}[{{ seat.name }}]
+
+ 暂无可转移分机
+
diff --git a/src/api/allDict.js b/src/api/allDict.js
index 25452a2..fa16330 100644
--- a/src/api/allDict.js
+++ b/src/api/allDict.js
@@ -90,3 +90,11 @@
params
})
}
+// 可用状态
+export function getCallWay(params) {
+ return request({
+ url: '/dict/code/callWay',
+ method: 'get',
+ params
+ })
+}
diff --git a/src/api/cti.js b/src/api/cti.js
new file mode 100644
index 0000000..a1e60b8
--- /dev/null
+++ b/src/api/cti.js
@@ -0,0 +1,70 @@
+/**
+ * CTI接口,获取坐席情况
+ */
+import request from '@/utils/request'
+
+// 获取当前正在通话列表
+// {success:true,totalProperty:1,
+// root:[{"Call_pbxName":"spzc_pbx","Call_city":"","Call_isp":"中国联通","Call_number":"18513995803","Call_province":"北京","Call_callStatus":"接通","Call_id":"b7c32570-8acd-11ea-96b3-89e56eb1026b","Call_staySeconds":"8","Call_talkSeconds":"4","Call_ivrName":"座席组--客服","Call_agentName":"888","Call_otherLegNumber":"6001","Call_agentStaffid":"1","Call_sp_entityName":"Call"}]}
+export function getCurrentCalls(params) {
+ return request({
+ url: '/sound/list',
+ // url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/calls.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取全部坐席情况列表
+export function getSeatsState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/agents.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
+// 获取全部分机情况列表
+export function getPhoneState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/extensions.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取排队情况
+export function getQueueState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/queues.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
diff --git a/src/api/qualityCheck.js b/src/api/qualityCheck.js
index df8ac62..5eaa704 100644
--- a/src/api/qualityCheck.js
+++ b/src/api/qualityCheck.js
@@ -7,7 +7,7 @@
// 查询质检模块
export function getQModulerList(params) {
return request({
- url: '/sound/soundList',
+ url: '/qualityModular/list',
method: 'get',
params
})
diff --git a/src/layout/components/ivr/chooseExten.vue b/src/layout/components/ivr/chooseExten.vue
index ae8f567..6f4cbed 100644
--- a/src/layout/components/ivr/chooseExten.vue
+++ b/src/layout/components/ivr/chooseExten.vue
@@ -41,7 +41,6 @@
methods: {
// 初始化对话框,type=in表示内呼,out表示外呼
initDialog() {
- this.onKeyEvent()
this.currentExten = ''
this.dialogVisible = true
},
diff --git a/src/layout/components/ivr/chooseSeats.vue b/src/layout/components/ivr/chooseSeats.vue
index 330c74f..86dfbab 100644
--- a/src/layout/components/ivr/chooseSeats.vue
+++ b/src/layout/components/ivr/chooseSeats.vue
@@ -9,13 +9,16 @@
width="350px"
append-to-body>
-
+
{{ seat.exten }}[{{ seat.name }}]
+
+ 暂无可转移分机
+
diff --git a/src/router/modules/qualityCheck.js b/src/router/modules/qualityCheck.js
index e434a52..227c252 100644
--- a/src/router/modules/qualityCheck.js
+++ b/src/router/modules/qualityCheck.js
@@ -29,6 +29,12 @@
name: 'QualityCheckTwice',
component: () => import('@/views/qualityManage/qualitySound/qualityCheckedSound'),
meta: { title: '质检录音复核', icon: '', permission: '/qualityTwiceCheck' }
+ },
+ {
+ path: '/myQualityCheck',
+ name: 'MyQualityCheck',
+ component: () => import('@/views/qualityManage/qualitySound/myQualityChecked'),
+ meta: { title: '我的质检记录', icon: '', permission: '/myQualityCheck' }
}
]
}]
diff --git a/src/api/allDict.js b/src/api/allDict.js
index 25452a2..fa16330 100644
--- a/src/api/allDict.js
+++ b/src/api/allDict.js
@@ -90,3 +90,11 @@
params
})
}
+// 可用状态
+export function getCallWay(params) {
+ return request({
+ url: '/dict/code/callWay',
+ method: 'get',
+ params
+ })
+}
diff --git a/src/api/cti.js b/src/api/cti.js
new file mode 100644
index 0000000..a1e60b8
--- /dev/null
+++ b/src/api/cti.js
@@ -0,0 +1,70 @@
+/**
+ * CTI接口,获取坐席情况
+ */
+import request from '@/utils/request'
+
+// 获取当前正在通话列表
+// {success:true,totalProperty:1,
+// root:[{"Call_pbxName":"spzc_pbx","Call_city":"","Call_isp":"中国联通","Call_number":"18513995803","Call_province":"北京","Call_callStatus":"接通","Call_id":"b7c32570-8acd-11ea-96b3-89e56eb1026b","Call_staySeconds":"8","Call_talkSeconds":"4","Call_ivrName":"座席组--客服","Call_agentName":"888","Call_otherLegNumber":"6001","Call_agentStaffid":"1","Call_sp_entityName":"Call"}]}
+export function getCurrentCalls(params) {
+ return request({
+ url: '/sound/list',
+ // url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/calls.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取全部坐席情况列表
+export function getSeatsState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/agents.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
+// 获取全部分机情况列表
+export function getPhoneState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/extensions.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取排队情况
+export function getQueueState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/queues.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
diff --git a/src/api/qualityCheck.js b/src/api/qualityCheck.js
index df8ac62..5eaa704 100644
--- a/src/api/qualityCheck.js
+++ b/src/api/qualityCheck.js
@@ -7,7 +7,7 @@
// 查询质检模块
export function getQModulerList(params) {
return request({
- url: '/sound/soundList',
+ url: '/qualityModular/list',
method: 'get',
params
})
diff --git a/src/layout/components/ivr/chooseExten.vue b/src/layout/components/ivr/chooseExten.vue
index ae8f567..6f4cbed 100644
--- a/src/layout/components/ivr/chooseExten.vue
+++ b/src/layout/components/ivr/chooseExten.vue
@@ -41,7 +41,6 @@
methods: {
// 初始化对话框,type=in表示内呼,out表示外呼
initDialog() {
- this.onKeyEvent()
this.currentExten = ''
this.dialogVisible = true
},
diff --git a/src/layout/components/ivr/chooseSeats.vue b/src/layout/components/ivr/chooseSeats.vue
index 330c74f..86dfbab 100644
--- a/src/layout/components/ivr/chooseSeats.vue
+++ b/src/layout/components/ivr/chooseSeats.vue
@@ -9,13 +9,16 @@
width="350px"
append-to-body>
-
+
{{ seat.exten }}[{{ seat.name }}]
+
+ 暂无可转移分机
+
diff --git a/src/router/modules/qualityCheck.js b/src/router/modules/qualityCheck.js
index e434a52..227c252 100644
--- a/src/router/modules/qualityCheck.js
+++ b/src/router/modules/qualityCheck.js
@@ -29,6 +29,12 @@
name: 'QualityCheckTwice',
component: () => import('@/views/qualityManage/qualitySound/qualityCheckedSound'),
meta: { title: '质检录音复核', icon: '', permission: '/qualityTwiceCheck' }
+ },
+ {
+ path: '/myQualityCheck',
+ name: 'MyQualityCheck',
+ component: () => import('@/views/qualityManage/qualitySound/myQualityChecked'),
+ meta: { title: '我的质检记录', icon: '', permission: '/myQualityCheck' }
}
]
}]
diff --git a/src/router/modules/statistic.js b/src/router/modules/statistic.js
index 3fcadaf..cab7b7a 100644
--- a/src/router/modules/statistic.js
+++ b/src/router/modules/statistic.js
@@ -107,10 +107,10 @@
meta: { title: '部门效能监察', icon: '', permission: '/deptStatistics' }
},
{
- path: '/callStatisticsAll',
- name: 'CallStatisticsAll',
- component: () => import('@/views/statistic/callStatistic/allStatistic'),
- meta: { title: '坐席效能监察', icon: '', permission: '/seatsStatistic' }
+ path: '/seatStatisticsAll',
+ name: 'seatStatisticsAll',
+ component: () => import('@/views/statistic/seatStatistic/seatStatistic'),
+ meta: { title: '坐席效能监察', icon: '', permission: '/seatStatistics' }
}
]
}
diff --git a/src/api/allDict.js b/src/api/allDict.js
index 25452a2..fa16330 100644
--- a/src/api/allDict.js
+++ b/src/api/allDict.js
@@ -90,3 +90,11 @@
params
})
}
+// 可用状态
+export function getCallWay(params) {
+ return request({
+ url: '/dict/code/callWay',
+ method: 'get',
+ params
+ })
+}
diff --git a/src/api/cti.js b/src/api/cti.js
new file mode 100644
index 0000000..a1e60b8
--- /dev/null
+++ b/src/api/cti.js
@@ -0,0 +1,70 @@
+/**
+ * CTI接口,获取坐席情况
+ */
+import request from '@/utils/request'
+
+// 获取当前正在通话列表
+// {success:true,totalProperty:1,
+// root:[{"Call_pbxName":"spzc_pbx","Call_city":"","Call_isp":"中国联通","Call_number":"18513995803","Call_province":"北京","Call_callStatus":"接通","Call_id":"b7c32570-8acd-11ea-96b3-89e56eb1026b","Call_staySeconds":"8","Call_talkSeconds":"4","Call_ivrName":"座席组--客服","Call_agentName":"888","Call_otherLegNumber":"6001","Call_agentStaffid":"1","Call_sp_entityName":"Call"}]}
+export function getCurrentCalls(params) {
+ return request({
+ url: '/sound/list',
+ // url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/calls.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取全部坐席情况列表
+export function getSeatsState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/agents.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
+// 获取全部分机情况列表
+export function getPhoneState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/extensions.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取排队情况
+export function getQueueState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/queues.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
diff --git a/src/api/qualityCheck.js b/src/api/qualityCheck.js
index df8ac62..5eaa704 100644
--- a/src/api/qualityCheck.js
+++ b/src/api/qualityCheck.js
@@ -7,7 +7,7 @@
// 查询质检模块
export function getQModulerList(params) {
return request({
- url: '/sound/soundList',
+ url: '/qualityModular/list',
method: 'get',
params
})
diff --git a/src/layout/components/ivr/chooseExten.vue b/src/layout/components/ivr/chooseExten.vue
index ae8f567..6f4cbed 100644
--- a/src/layout/components/ivr/chooseExten.vue
+++ b/src/layout/components/ivr/chooseExten.vue
@@ -41,7 +41,6 @@
methods: {
// 初始化对话框,type=in表示内呼,out表示外呼
initDialog() {
- this.onKeyEvent()
this.currentExten = ''
this.dialogVisible = true
},
diff --git a/src/layout/components/ivr/chooseSeats.vue b/src/layout/components/ivr/chooseSeats.vue
index 330c74f..86dfbab 100644
--- a/src/layout/components/ivr/chooseSeats.vue
+++ b/src/layout/components/ivr/chooseSeats.vue
@@ -9,13 +9,16 @@
width="350px"
append-to-body>
-
+
{{ seat.exten }}[{{ seat.name }}]
+
+ 暂无可转移分机
+
diff --git a/src/router/modules/qualityCheck.js b/src/router/modules/qualityCheck.js
index e434a52..227c252 100644
--- a/src/router/modules/qualityCheck.js
+++ b/src/router/modules/qualityCheck.js
@@ -29,6 +29,12 @@
name: 'QualityCheckTwice',
component: () => import('@/views/qualityManage/qualitySound/qualityCheckedSound'),
meta: { title: '质检录音复核', icon: '', permission: '/qualityTwiceCheck' }
+ },
+ {
+ path: '/myQualityCheck',
+ name: 'MyQualityCheck',
+ component: () => import('@/views/qualityManage/qualitySound/myQualityChecked'),
+ meta: { title: '我的质检记录', icon: '', permission: '/myQualityCheck' }
}
]
}]
diff --git a/src/router/modules/statistic.js b/src/router/modules/statistic.js
index 3fcadaf..cab7b7a 100644
--- a/src/router/modules/statistic.js
+++ b/src/router/modules/statistic.js
@@ -107,10 +107,10 @@
meta: { title: '部门效能监察', icon: '', permission: '/deptStatistics' }
},
{
- path: '/callStatisticsAll',
- name: 'CallStatisticsAll',
- component: () => import('@/views/statistic/callStatistic/allStatistic'),
- meta: { title: '坐席效能监察', icon: '', permission: '/seatsStatistic' }
+ path: '/seatStatisticsAll',
+ name: 'seatStatisticsAll',
+ component: () => import('@/views/statistic/seatStatistic/seatStatistic'),
+ meta: { title: '坐席效能监察', icon: '', permission: '/seatStatistics' }
}
]
}
diff --git a/src/store/modules/ivr.js b/src/store/modules/ivr.js
index e1d0509..49c97f3 100644
--- a/src/store/modules/ivr.js
+++ b/src/store/modules/ivr.js
@@ -12,7 +12,7 @@
queue: 'kefu', // 技能组
skill: '1', // 技能组
busyString: '忙碌', // 致忙原因
- autoAcw: '0', // 自动化后
+ autoAcw: '3', // 自动化后
extensionList: [], // 分机列表
wsStatus: false, // websocket连接状态:已连接为true,否则为false
extension: null, // 分机号
@@ -128,7 +128,7 @@
console.log(object)
commit('SET_WEBSOCKET_OBJ', object)
// 根据返回值处理
- const messageType = object.messageType // 消息类型
+ const messageType = object.messageType.trim() // 消息类型
if (messageType === 'event') {
const name = object.name
if (name === 'agent status') { // 坐席状态
@@ -183,13 +183,16 @@
} else if (messageType === 'heartbeat response') { // 心跳回复
// TODO:心跳回复
} else if (messageType === 'command response') { // 命令回复
+ if (object.success && object.success.trim() === 'false') {
+ Message.warning(object.resultText)
+ }
const command = object.command
if (command === 'login') { // 签入结果
if (object.success === 'true') { // 签入成功
Message.success('签入成功')
commit('SET_SIGN_STATUS', true)
} else {
- Message.error(object.resultText)
+ // Message.error(object.resultText)
}
} else if (command === 'logout') { // 签出结果
if (object.success === 'true') {
@@ -372,6 +375,22 @@
pickUp({ dispatch, commit }) {
const strSend = createCommand('pickup')
ivr.state.websocket.send(strSend)
+ },
+ // 分机强插
+ extenInsert({ dispatch, commit }, exten) {
+ const params = {
+ extension: exten
+ }
+ const strSend = createCommand('insertExtension', params)
+ ivr.state.websocket.send(strSend)
+ },
+ // 分机强拆
+ extenCut({ dispatch, commit }, exten) {
+ const params = {
+ extension: exten
+ }
+ const strSend = createCommand('cutExtension', params)
+ ivr.state.websocket.send(strSend)
}
}
diff --git a/src/api/allDict.js b/src/api/allDict.js
index 25452a2..fa16330 100644
--- a/src/api/allDict.js
+++ b/src/api/allDict.js
@@ -90,3 +90,11 @@
params
})
}
+// 可用状态
+export function getCallWay(params) {
+ return request({
+ url: '/dict/code/callWay',
+ method: 'get',
+ params
+ })
+}
diff --git a/src/api/cti.js b/src/api/cti.js
new file mode 100644
index 0000000..a1e60b8
--- /dev/null
+++ b/src/api/cti.js
@@ -0,0 +1,70 @@
+/**
+ * CTI接口,获取坐席情况
+ */
+import request from '@/utils/request'
+
+// 获取当前正在通话列表
+// {success:true,totalProperty:1,
+// root:[{"Call_pbxName":"spzc_pbx","Call_city":"","Call_isp":"中国联通","Call_number":"18513995803","Call_province":"北京","Call_callStatus":"接通","Call_id":"b7c32570-8acd-11ea-96b3-89e56eb1026b","Call_staySeconds":"8","Call_talkSeconds":"4","Call_ivrName":"座席组--客服","Call_agentName":"888","Call_otherLegNumber":"6001","Call_agentStaffid":"1","Call_sp_entityName":"Call"}]}
+export function getCurrentCalls(params) {
+ return request({
+ url: '/sound/list',
+ // url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/calls.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取全部坐席情况列表
+export function getSeatsState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/agents.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
+// 获取全部分机情况列表
+export function getPhoneState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/extensions.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取排队情况
+export function getQueueState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/queues.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
diff --git a/src/api/qualityCheck.js b/src/api/qualityCheck.js
index df8ac62..5eaa704 100644
--- a/src/api/qualityCheck.js
+++ b/src/api/qualityCheck.js
@@ -7,7 +7,7 @@
// 查询质检模块
export function getQModulerList(params) {
return request({
- url: '/sound/soundList',
+ url: '/qualityModular/list',
method: 'get',
params
})
diff --git a/src/layout/components/ivr/chooseExten.vue b/src/layout/components/ivr/chooseExten.vue
index ae8f567..6f4cbed 100644
--- a/src/layout/components/ivr/chooseExten.vue
+++ b/src/layout/components/ivr/chooseExten.vue
@@ -41,7 +41,6 @@
methods: {
// 初始化对话框,type=in表示内呼,out表示外呼
initDialog() {
- this.onKeyEvent()
this.currentExten = ''
this.dialogVisible = true
},
diff --git a/src/layout/components/ivr/chooseSeats.vue b/src/layout/components/ivr/chooseSeats.vue
index 330c74f..86dfbab 100644
--- a/src/layout/components/ivr/chooseSeats.vue
+++ b/src/layout/components/ivr/chooseSeats.vue
@@ -9,13 +9,16 @@
width="350px"
append-to-body>
-
+
{{ seat.exten }}[{{ seat.name }}]
+
+ 暂无可转移分机
+
diff --git a/src/router/modules/qualityCheck.js b/src/router/modules/qualityCheck.js
index e434a52..227c252 100644
--- a/src/router/modules/qualityCheck.js
+++ b/src/router/modules/qualityCheck.js
@@ -29,6 +29,12 @@
name: 'QualityCheckTwice',
component: () => import('@/views/qualityManage/qualitySound/qualityCheckedSound'),
meta: { title: '质检录音复核', icon: '', permission: '/qualityTwiceCheck' }
+ },
+ {
+ path: '/myQualityCheck',
+ name: 'MyQualityCheck',
+ component: () => import('@/views/qualityManage/qualitySound/myQualityChecked'),
+ meta: { title: '我的质检记录', icon: '', permission: '/myQualityCheck' }
}
]
}]
diff --git a/src/router/modules/statistic.js b/src/router/modules/statistic.js
index 3fcadaf..cab7b7a 100644
--- a/src/router/modules/statistic.js
+++ b/src/router/modules/statistic.js
@@ -107,10 +107,10 @@
meta: { title: '部门效能监察', icon: '', permission: '/deptStatistics' }
},
{
- path: '/callStatisticsAll',
- name: 'CallStatisticsAll',
- component: () => import('@/views/statistic/callStatistic/allStatistic'),
- meta: { title: '坐席效能监察', icon: '', permission: '/seatsStatistic' }
+ path: '/seatStatisticsAll',
+ name: 'seatStatisticsAll',
+ component: () => import('@/views/statistic/seatStatistic/seatStatistic'),
+ meta: { title: '坐席效能监察', icon: '', permission: '/seatStatistics' }
}
]
}
diff --git a/src/store/modules/ivr.js b/src/store/modules/ivr.js
index e1d0509..49c97f3 100644
--- a/src/store/modules/ivr.js
+++ b/src/store/modules/ivr.js
@@ -12,7 +12,7 @@
queue: 'kefu', // 技能组
skill: '1', // 技能组
busyString: '忙碌', // 致忙原因
- autoAcw: '0', // 自动化后
+ autoAcw: '3', // 自动化后
extensionList: [], // 分机列表
wsStatus: false, // websocket连接状态:已连接为true,否则为false
extension: null, // 分机号
@@ -128,7 +128,7 @@
console.log(object)
commit('SET_WEBSOCKET_OBJ', object)
// 根据返回值处理
- const messageType = object.messageType // 消息类型
+ const messageType = object.messageType.trim() // 消息类型
if (messageType === 'event') {
const name = object.name
if (name === 'agent status') { // 坐席状态
@@ -183,13 +183,16 @@
} else if (messageType === 'heartbeat response') { // 心跳回复
// TODO:心跳回复
} else if (messageType === 'command response') { // 命令回复
+ if (object.success && object.success.trim() === 'false') {
+ Message.warning(object.resultText)
+ }
const command = object.command
if (command === 'login') { // 签入结果
if (object.success === 'true') { // 签入成功
Message.success('签入成功')
commit('SET_SIGN_STATUS', true)
} else {
- Message.error(object.resultText)
+ // Message.error(object.resultText)
}
} else if (command === 'logout') { // 签出结果
if (object.success === 'true') {
@@ -372,6 +375,22 @@
pickUp({ dispatch, commit }) {
const strSend = createCommand('pickup')
ivr.state.websocket.send(strSend)
+ },
+ // 分机强插
+ extenInsert({ dispatch, commit }, exten) {
+ const params = {
+ extension: exten
+ }
+ const strSend = createCommand('insertExtension', params)
+ ivr.state.websocket.send(strSend)
+ },
+ // 分机强拆
+ extenCut({ dispatch, commit }, exten) {
+ const params = {
+ extension: exten
+ }
+ const strSend = createCommand('cutExtension', params)
+ ivr.state.websocket.send(strSend)
}
}
diff --git a/src/store/modules/user.js b/src/store/modules/user.js
index 742eeba..0480613 100644
--- a/src/store/modules/user.js
+++ b/src/store/modules/user.js
@@ -1,6 +1,5 @@
import { login, logout, getInfo } from '@/api/login'
import { getToken, setToken, removeToken, getSeat, setSeat, removeSeat, getExten, setExten, removeExten } from '@/utils/auth'
-import { getOnline, setOnline, removeOnline } from '@/utils/auth'
import { getProject } from '@/utils/baseConfig'
const user = {
diff --git a/src/api/allDict.js b/src/api/allDict.js
index 25452a2..fa16330 100644
--- a/src/api/allDict.js
+++ b/src/api/allDict.js
@@ -90,3 +90,11 @@
params
})
}
+// 可用状态
+export function getCallWay(params) {
+ return request({
+ url: '/dict/code/callWay',
+ method: 'get',
+ params
+ })
+}
diff --git a/src/api/cti.js b/src/api/cti.js
new file mode 100644
index 0000000..a1e60b8
--- /dev/null
+++ b/src/api/cti.js
@@ -0,0 +1,70 @@
+/**
+ * CTI接口,获取坐席情况
+ */
+import request from '@/utils/request'
+
+// 获取当前正在通话列表
+// {success:true,totalProperty:1,
+// root:[{"Call_pbxName":"spzc_pbx","Call_city":"","Call_isp":"中国联通","Call_number":"18513995803","Call_province":"北京","Call_callStatus":"接通","Call_id":"b7c32570-8acd-11ea-96b3-89e56eb1026b","Call_staySeconds":"8","Call_talkSeconds":"4","Call_ivrName":"座席组--客服","Call_agentName":"888","Call_otherLegNumber":"6001","Call_agentStaffid":"1","Call_sp_entityName":"Call"}]}
+export function getCurrentCalls(params) {
+ return request({
+ url: '/sound/list',
+ // url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/calls.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取全部坐席情况列表
+export function getSeatsState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/agents.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
+// 获取全部分机情况列表
+export function getPhoneState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/extensions.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+// 获取排队情况
+export function getQueueState(params) {
+ return request({
+ url: '/server/invoke',
+ method: 'get',
+ params: {
+ method: '/spcc/interface/json/queues.do.do',
+ type: 'get',
+ params: {
+ username: 'Admin',
+ password: 'admin'
+ }
+ }
+ })
+}
+
diff --git a/src/api/qualityCheck.js b/src/api/qualityCheck.js
index df8ac62..5eaa704 100644
--- a/src/api/qualityCheck.js
+++ b/src/api/qualityCheck.js
@@ -7,7 +7,7 @@
// 查询质检模块
export function getQModulerList(params) {
return request({
- url: '/sound/soundList',
+ url: '/qualityModular/list',
method: 'get',
params
})
diff --git a/src/layout/components/ivr/chooseExten.vue b/src/layout/components/ivr/chooseExten.vue
index ae8f567..6f4cbed 100644
--- a/src/layout/components/ivr/chooseExten.vue
+++ b/src/layout/components/ivr/chooseExten.vue
@@ -41,7 +41,6 @@
methods: {
// 初始化对话框,type=in表示内呼,out表示外呼
initDialog() {
- this.onKeyEvent()
this.currentExten = ''
this.dialogVisible = true
},
diff --git a/src/layout/components/ivr/chooseSeats.vue b/src/layout/components/ivr/chooseSeats.vue
index 330c74f..86dfbab 100644
--- a/src/layout/components/ivr/chooseSeats.vue
+++ b/src/layout/components/ivr/chooseSeats.vue
@@ -9,13 +9,16 @@
width="350px"
append-to-body>
-
+
{{ seat.exten }}[{{ seat.name }}]
+
+ 暂无可转移分机
+
diff --git a/src/router/modules/qualityCheck.js b/src/router/modules/qualityCheck.js
index e434a52..227c252 100644
--- a/src/router/modules/qualityCheck.js
+++ b/src/router/modules/qualityCheck.js
@@ -29,6 +29,12 @@
name: 'QualityCheckTwice',
component: () => import('@/views/qualityManage/qualitySound/qualityCheckedSound'),
meta: { title: '质检录音复核', icon: '', permission: '/qualityTwiceCheck' }
+ },
+ {
+ path: '/myQualityCheck',
+ name: 'MyQualityCheck',
+ component: () => import('@/views/qualityManage/qualitySound/myQualityChecked'),
+ meta: { title: '我的质检记录', icon: '', permission: '/myQualityCheck' }
}
]
}]
diff --git a/src/router/modules/statistic.js b/src/router/modules/statistic.js
index 3fcadaf..cab7b7a 100644
--- a/src/router/modules/statistic.js
+++ b/src/router/modules/statistic.js
@@ -107,10 +107,10 @@
meta: { title: '部门效能监察', icon: '', permission: '/deptStatistics' }
},
{
- path: '/callStatisticsAll',
- name: 'CallStatisticsAll',
- component: () => import('@/views/statistic/callStatistic/allStatistic'),
- meta: { title: '坐席效能监察', icon: '', permission: '/seatsStatistic' }
+ path: '/seatStatisticsAll',
+ name: 'seatStatisticsAll',
+ component: () => import('@/views/statistic/seatStatistic/seatStatistic'),
+ meta: { title: '坐席效能监察', icon: '', permission: '/seatStatistics' }
}
]
}
diff --git a/src/store/modules/ivr.js b/src/store/modules/ivr.js
index e1d0509..49c97f3 100644
--- a/src/store/modules/ivr.js
+++ b/src/store/modules/ivr.js
@@ -12,7 +12,7 @@
queue: 'kefu', // 技能组
skill: '1', // 技能组
busyString: '忙碌', // 致忙原因
- autoAcw: '0', // 自动化后
+ autoAcw: '3', // 自动化后
extensionList: [], // 分机列表
wsStatus: false, // websocket连接状态:已连接为true,否则为false
extension: null, // 分机号
@@ -128,7 +128,7 @@
console.log(object)
commit('SET_WEBSOCKET_OBJ', object)
// 根据返回值处理
- const messageType = object.messageType // 消息类型
+ const messageType = object.messageType.trim() // 消息类型
if (messageType === 'event') {
const name = object.name
if (name === 'agent status') { // 坐席状态
@@ -183,13 +183,16 @@
} else if (messageType === 'heartbeat response') { // 心跳回复
// TODO:心跳回复
} else if (messageType === 'command response') { // 命令回复
+ if (object.success && object.success.trim() === 'false') {
+ Message.warning(object.resultText)
+ }
const command = object.command
if (command === 'login') { // 签入结果
if (object.success === 'true') { // 签入成功
Message.success('签入成功')
commit('SET_SIGN_STATUS', true)
} else {
- Message.error(object.resultText)
+ // Message.error(object.resultText)
}
} else if (command === 'logout') { // 签出结果
if (object.success === 'true') {
@@ -372,6 +375,22 @@
pickUp({ dispatch, commit }) {
const strSend = createCommand('pickup')
ivr.state.websocket.send(strSend)
+ },
+ // 分机强插
+ extenInsert({ dispatch, commit }, exten) {
+ const params = {
+ extension: exten
+ }
+ const strSend = createCommand('insertExtension', params)
+ ivr.state.websocket.send(strSend)
+ },
+ // 分机强拆
+ extenCut({ dispatch, commit }, exten) {
+ const params = {
+ extension: exten
+ }
+ const strSend = createCommand('cutExtension', params)
+ ivr.state.websocket.send(strSend)
}
}
diff --git a/src/store/modules/user.js b/src/store/modules/user.js
index 742eeba..0480613 100644
--- a/src/store/modules/user.js
+++ b/src/store/modules/user.js
@@ -1,6 +1,5 @@
import { login, logout, getInfo } from '@/api/login'
import { getToken, setToken, removeToken, getSeat, setSeat, removeSeat, getExten, setExten, removeExten } from '@/utils/auth'
-import { getOnline, setOnline, removeOnline } from '@/utils/auth'
import { getProject } from '@/utils/baseConfig'
const user = {
diff --git a/src/utils/baseConfig.js b/src/utils/baseConfig.js
index e2b3c4c..d42b853 100644
--- a/src/utils/baseConfig.js
+++ b/src/utils/baseConfig.js
@@ -3,9 +3,10 @@
type: 'callcenter',
// title: '城市协同工作平台',
// type: 'city',
- // ws_ip: '192.170.1.10',
- ws_ip: '124.205.241.254',
- ws_port: '28081'
+ ws_ip: '192.170.1.10',
+ ws_port: '8081'
+ // ws_ip: '124.205.241.254',
+ // ws_port: '28081'
}
export function getProject() {
return project