telephone-clients 3.0.104-64 → 3.0.104-66
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/components/pc/TelLossList.vue +264 -264
- package/src/components/telreport/RepairsDetailsReport.vue +98 -98
- package/src/components/telreport/TrafficClassificationReport.vue +134 -135
- package/src/components/telreport/Trafficassess.vue +121 -121
- package/src/filiale/yuncheng/android/LdapHelper.js +75 -0
- package/src/filiale/yuncheng/android/RightTree.vue +217 -0
- package/src/filiale/yuncheng/android/TemporarySingle.vue +524 -0
- package/src/filiale/yuncheng/telephoneAndroid.js +14 -0
package/package.json
CHANGED
|
@@ -1,264 +1,264 @@
|
|
|
1
|
-
<template >
|
|
2
|
-
<div class="flex-row">
|
|
3
|
-
<div id="stand-work-list" class="flex bg-white p-10 basic-main" style="flex-direction: row">
|
|
4
|
-
<div style="width: 40%;height: 100%" v-show="leftShow">
|
|
5
|
-
<div class="row" style="height: 10%;width: 50%">
|
|
6
|
-
<div class="form-group form-input-group" style="display: flex;justify-content: flex-start">
|
|
7
|
-
<label class="font_normal_body" style="width: 40%">查询日期</label>
|
|
8
|
-
<datepicker placeholder="查询日期"
|
|
9
|
-
:value.sync="searchDate"
|
|
10
|
-
v-model="searchDate"
|
|
11
|
-
:format="'yyyy-MM-dd
|
|
12
|
-
></datepicker>
|
|
13
|
-
<button type="button" name="button"
|
|
14
|
-
class="button_search button_spacing" style="z-index: 2" @click="searchEcharts()">查询</button>
|
|
15
|
-
</div>
|
|
16
|
-
</div>
|
|
17
|
-
<div style="height: 45%;" id="husunzhexian1"></div>
|
|
18
|
-
<div style="height: 45%;" id="husunzhexian2"></div>
|
|
19
|
-
</div>
|
|
20
|
-
<div class="span" style="width: 60%;overflow: auto">
|
|
21
|
-
<visit-info v-if="showVisit" :phone="wavflie" :idwavfile="idwavfile" :outltime="outltime" @show-obj="watchShow"></visit-info>
|
|
22
|
-
<criteria-paged :model="model" v-else v-ref:paged>
|
|
23
|
-
<criteria partial='criteria' v-ref:criteria @condition-changed='$parent.search'>
|
|
24
|
-
<div novalidate class="form-inline" partial>
|
|
25
|
-
<div class="row">
|
|
26
|
-
<div class="col-sm-3 form-group form-input-group">
|
|
27
|
-
<label class="font_normal_body" style="width: 35%">电话号码</label>
|
|
28
|
-
<input type="text" class="input_search" v-model="model.telnum" placeholder='电话号码'
|
|
29
|
-
condition="telnum like '%{}%'"
|
|
30
|
-
:size="model.telnum ? model.telnum.length : 7">
|
|
31
|
-
</div>
|
|
32
|
-
|
|
33
|
-
<div class="col-sm-3 form-group form-input-group">
|
|
34
|
-
<label class="font_normal_body" style="width: 40%">来电时间</label>
|
|
35
|
-
<datepicker placeholder="来电时间"
|
|
36
|
-
:value.sync="model.f_date"
|
|
37
|
-
v-model="model.f_date"
|
|
38
|
-
:format="'yyyy-MM-dd
|
|
39
|
-
condition="outltime > '{}'"
|
|
40
|
-
></datepicker>
|
|
41
|
-
</div>
|
|
42
|
-
<div class="col-sm-3 form-group form-input-group">
|
|
43
|
-
<label class="font_normal_body" style="width: 35%">回访状态</label>
|
|
44
|
-
<v-select :value.sync="model.f_flghuifang"
|
|
45
|
-
:options='$parent.$parent.huifangs'
|
|
46
|
-
:value-single="true"
|
|
47
|
-
placeholder='请选择回访状态'
|
|
48
|
-
close-on-select
|
|
49
|
-
style="width: 60%"
|
|
50
|
-
></v-select>
|
|
51
|
-
</div>
|
|
52
|
-
<div style="float: right;" class="form-group span">
|
|
53
|
-
<button type="button" name="button"
|
|
54
|
-
class="button_search button_spacing" @click="search(),$dispatch('search')" style="z-index: 2">查询</button>
|
|
55
|
-
<export-excel-tel
|
|
56
|
-
:data="$parent.$parent.searchData"
|
|
57
|
-
:field="$parent.$parent.excelHeaders"
|
|
58
|
-
sqlurl="rs/logic/telephoneExport" sql-name="tel_singleTable_OrderBy" template-name='呼损记录导出'
|
|
59
|
-
:choose-col="false">
|
|
60
|
-
</export-excel-tel>
|
|
61
|
-
</div>
|
|
62
|
-
</div>
|
|
63
|
-
</div>
|
|
64
|
-
</criteria>
|
|
65
|
-
<data-grid partial='list' v-ref:grid :model="model" class="list_area table_sy">
|
|
66
|
-
<template partial='head'>
|
|
67
|
-
<tr>
|
|
68
|
-
<th><nobr>电话号码</nobr></th>
|
|
69
|
-
<th><nobr>来电时间</nobr></th>
|
|
70
|
-
<th><nobr>操作</nobr></th>
|
|
71
|
-
</tr>
|
|
72
|
-
</template>
|
|
73
|
-
<template partial='body'>
|
|
74
|
-
<td style="text-align: center">{{row.telnum}}</td>
|
|
75
|
-
<td style="text-align: center">{{row.outltime}}</td>
|
|
76
|
-
<td style="text-align: center">
|
|
77
|
-
<button-link v-show="!row.f_flghuifang" type="button" class="btn btn-link" @click="$parent.$parent.$parent.playWav(row.telnum,row.id)">回拨</button-link>
|
|
78
|
-
</td>
|
|
79
|
-
</template>
|
|
80
|
-
</data-grid>
|
|
81
|
-
</criteria-paged>
|
|
82
|
-
</div>
|
|
83
|
-
</div>
|
|
84
|
-
</div>
|
|
85
|
-
<!-- <modal :show.sync="showVisit" v-ref:modal backdrop="false">-->
|
|
86
|
-
<!-- <header slot="modal-header" class="modal-header">-->
|
|
87
|
-
<!-- </header>-->
|
|
88
|
-
<!-- <article slot="modal-body" class="modal-body">-->
|
|
89
|
-
<!-- <visit-info v-if="showVisit" :phone="wavflie" :idwavfile="idwavfile" :outltime="outltime" @show-obj="watchShow"></visit-info>-->
|
|
90
|
-
<!-- </article>-->
|
|
91
|
-
<!-- <footer slot="modal-footer" class="modal-footer">-->
|
|
92
|
-
<!-- </footer>-->
|
|
93
|
-
<!-- </modal>-->
|
|
94
|
-
</template>
|
|
95
|
-
|
|
96
|
-
<script>
|
|
97
|
-
import {HttpResetClass, PagedList} from 'vue-client'
|
|
98
|
-
import * as Util from '../Util'
|
|
99
|
-
import {addDate} from "../Util";
|
|
100
|
-
export default {
|
|
101
|
-
title: '呼损记录',
|
|
102
|
-
data () {
|
|
103
|
-
return {
|
|
104
|
-
model: new PagedList('rs/sql/tel_singleTable_OrderBy', 20, {items: "'*'", tablename: "'t_records'", orderitem: "'outltime desc'" }),
|
|
105
|
-
row: null,
|
|
106
|
-
show: false,
|
|
107
|
-
wavflie : '',
|
|
108
|
-
idwavfile:'',
|
|
109
|
-
leftShow:true,
|
|
110
|
-
searchDate:Util.toStandardDateString(),
|
|
111
|
-
orderMan: '',
|
|
112
|
-
msgs: [],
|
|
113
|
-
huifangs:[{label:"全部",value:""},{label:"已回访",value:"已回访"},{label:"未回访",value:"未回访"}],
|
|
114
|
-
service: Object,
|
|
115
|
-
pendingCount: 0,
|
|
116
|
-
serobj:Object,
|
|
117
|
-
showVisit:false,
|
|
118
|
-
outltime:this.getNowFormatDate(),
|
|
119
|
-
searchData:{
|
|
120
|
-
items: "*",
|
|
121
|
-
tablename: "t_records",
|
|
122
|
-
orderitem: "outltime desc",
|
|
123
|
-
condition: '1=1'
|
|
124
|
-
},
|
|
125
|
-
excelHeaders: {
|
|
126
|
-
'telnum': '电话号码',
|
|
127
|
-
'outltime': '来电时间',
|
|
128
|
-
},
|
|
129
|
-
}
|
|
130
|
-
},
|
|
131
|
-
ready () {
|
|
132
|
-
this.$refs.paged.$refs.criteria.model.f_flghuifang = '未回访'
|
|
133
|
-
this.leftShow = (this.$parent.leftShow == undefined ? true : this.$parent.leftShow)
|
|
134
|
-
this.renderEcharts(Util.toStandardDateString())
|
|
135
|
-
// this.selfSearch()
|
|
136
|
-
|
|
137
|
-
},
|
|
138
|
-
methods: {
|
|
139
|
-
searchEcharts(){
|
|
140
|
-
console.log("9334",this.searchDate)
|
|
141
|
-
this.renderEcharts(this.searchDate)
|
|
142
|
-
},
|
|
143
|
-
//获取当前日期
|
|
144
|
-
renderEcharts(date){
|
|
145
|
-
console.log("933",Util.addDate(3,date),Util.addDate(-3),date)
|
|
146
|
-
new HttpResetClass().load("post",'rs/sql/getLossPhoneByTime',{
|
|
147
|
-
data:{
|
|
148
|
-
groupitem:'SUBSTRING(outltime, 0, 11)',
|
|
149
|
-
condition:`outltime>='${Util.addDate(-3,date)} 00:00:00' and outltime<='${Util.addDate(3,date)} 23:59:59'`
|
|
150
|
-
}
|
|
151
|
-
},{resolveMsg:null,rejectMsg:null}).then(res=>{
|
|
152
|
-
let myChart1 = this.$echarts.init(document.getElementById(("husunzhexian1")))
|
|
153
|
-
myChart1.setOption(this.getAOptions("呼损日分析表",res.data))
|
|
154
|
-
})
|
|
155
|
-
|
|
156
|
-
new HttpResetClass().load("post",'rs/sql/getLossPhoneByTime',{
|
|
157
|
-
data:{
|
|
158
|
-
groupitem:"SUBSTRING(outltime, 12, 2)+':00'",
|
|
159
|
-
condition:`outltime>='${Util.toStandardDateString(date)} 08:00:00' and outltime<='${Util.toStandardDateString(date)} 18:59:59'`
|
|
160
|
-
}
|
|
161
|
-
},{resolveMsg:null,rejectMsg:null}).then(res=>{
|
|
162
|
-
let myChart1 = this.$echarts.init(document.getElementById(("husunzhexian2")))
|
|
163
|
-
myChart1.setOption(this.getAOptions("呼损时分析表",res.data))
|
|
164
|
-
})
|
|
165
|
-
},
|
|
166
|
-
getAOptions(title,arr){
|
|
167
|
-
|
|
168
|
-
return {
|
|
169
|
-
color: ['rgb(155,214,129)', '#73c0de'],
|
|
170
|
-
title: {
|
|
171
|
-
text: title
|
|
172
|
-
},
|
|
173
|
-
tooltip: {
|
|
174
|
-
trigger: 'axis'
|
|
175
|
-
},
|
|
176
|
-
legend: {
|
|
177
|
-
data: ['忙线', '未接']
|
|
178
|
-
},
|
|
179
|
-
grid: {
|
|
180
|
-
left: '3%',
|
|
181
|
-
right: '4%',
|
|
182
|
-
bottom: '3%',
|
|
183
|
-
containLabel: true
|
|
184
|
-
},
|
|
185
|
-
toolbox: {
|
|
186
|
-
feature: {
|
|
187
|
-
saveAsImage: {}
|
|
188
|
-
}
|
|
189
|
-
},
|
|
190
|
-
xAxis: {
|
|
191
|
-
type: 'category',
|
|
192
|
-
boundaryGap: false,
|
|
193
|
-
data: arr.map(item=>{
|
|
194
|
-
if(title === '呼损日分析表'){
|
|
195
|
-
return item.timearea.substr(5,5)
|
|
196
|
-
}
|
|
197
|
-
return item.timearea
|
|
198
|
-
})
|
|
199
|
-
},
|
|
200
|
-
yAxis: {
|
|
201
|
-
type: 'value'
|
|
202
|
-
},
|
|
203
|
-
series: [
|
|
204
|
-
{
|
|
205
|
-
name: '未接',
|
|
206
|
-
type: 'line',
|
|
207
|
-
stack: 'Total',
|
|
208
|
-
data: arr.map(item=>item.weijie)
|
|
209
|
-
},
|
|
210
|
-
{
|
|
211
|
-
name: '忙线',
|
|
212
|
-
type: 'line',
|
|
213
|
-
stack: 'Total',
|
|
214
|
-
data: arr.map(item=>item.zhanxian)
|
|
215
|
-
},
|
|
216
|
-
]
|
|
217
|
-
}
|
|
218
|
-
},
|
|
219
|
-
getNowFormatDate() {
|
|
220
|
-
var date = new Date();
|
|
221
|
-
var seperator1 = "-";
|
|
222
|
-
var month = date.getMonth() + 1;
|
|
223
|
-
var strDate = date.getDate();
|
|
224
|
-
if (month >= 1 && month <= 9) {
|
|
225
|
-
month = "0" + month;
|
|
226
|
-
}
|
|
227
|
-
if (strDate >= 0 && strDate <= 9) {
|
|
228
|
-
strDate = "0" + strDate;
|
|
229
|
-
}
|
|
230
|
-
var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate + ' 23:59:59'
|
|
231
|
-
return currentdate;
|
|
232
|
-
},
|
|
233
|
-
watchShow(val){
|
|
234
|
-
this.showVisit = val
|
|
235
|
-
},
|
|
236
|
-
clearVisit(){
|
|
237
|
-
this.show = false
|
|
238
|
-
},
|
|
239
|
-
playWav(val,val1){
|
|
240
|
-
if (!this.leftShow){
|
|
241
|
-
this.$parent.setUserPhone(val)
|
|
242
|
-
}
|
|
243
|
-
this.wavflie=val;
|
|
244
|
-
this.idwavfile=val1
|
|
245
|
-
this.showVisit = true
|
|
246
|
-
},
|
|
247
|
-
closemodel () {
|
|
248
|
-
this.showVisit = false
|
|
249
|
-
},
|
|
250
|
-
search(args) {
|
|
251
|
-
if(args.model.f_flghuifang){
|
|
252
|
-
if(args.model.f_flghuifang==='已回访'){
|
|
253
|
-
args.condition += ` and f_flghuifang = '已回访'`
|
|
254
|
-
}else{
|
|
255
|
-
args.condition += ` and f_flghuifang is null`
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
args.condition += " AND isnull(starttime,'') = '' AND isnull(findtime,'') != ''"
|
|
259
|
-
this.searchData.condition = args.condition
|
|
260
|
-
this.model.search(args.condition)
|
|
261
|
-
},
|
|
262
|
-
},
|
|
263
|
-
}
|
|
264
|
-
</script>
|
|
1
|
+
<template >
|
|
2
|
+
<div class="flex-row">
|
|
3
|
+
<div id="stand-work-list" class="flex bg-white p-10 basic-main" style="flex-direction: row">
|
|
4
|
+
<div style="width: 40%;height: 100%" v-show="leftShow">
|
|
5
|
+
<div class="row" style="height: 10%;width: 50%">
|
|
6
|
+
<div class="form-group form-input-group" style="display: flex;justify-content: flex-start">
|
|
7
|
+
<label class="font_normal_body" style="width: 40%">查询日期</label>
|
|
8
|
+
<datepicker placeholder="查询日期"
|
|
9
|
+
:value.sync="searchDate"
|
|
10
|
+
v-model="searchDate"
|
|
11
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
12
|
+
></datepicker>
|
|
13
|
+
<button type="button" name="button"
|
|
14
|
+
class="button_search button_spacing" style="z-index: 2" @click="searchEcharts()">查询</button>
|
|
15
|
+
</div>
|
|
16
|
+
</div>
|
|
17
|
+
<div style="height: 45%;" id="husunzhexian1"></div>
|
|
18
|
+
<div style="height: 45%;" id="husunzhexian2"></div>
|
|
19
|
+
</div>
|
|
20
|
+
<div class="span" style="width: 60%;overflow: auto">
|
|
21
|
+
<visit-info v-if="showVisit" :phone="wavflie" :idwavfile="idwavfile" :outltime="outltime" @show-obj="watchShow"></visit-info>
|
|
22
|
+
<criteria-paged :model="model" v-else v-ref:paged>
|
|
23
|
+
<criteria partial='criteria' v-ref:criteria @condition-changed='$parent.search'>
|
|
24
|
+
<div novalidate class="form-inline" partial>
|
|
25
|
+
<div class="row">
|
|
26
|
+
<div class="col-sm-3 form-group form-input-group">
|
|
27
|
+
<label class="font_normal_body" style="width: 35%">电话号码</label>
|
|
28
|
+
<input type="text" class="input_search" v-model="model.telnum" placeholder='电话号码'
|
|
29
|
+
condition="telnum like '%{}%'"
|
|
30
|
+
:size="model.telnum ? model.telnum.length : 7">
|
|
31
|
+
</div>
|
|
32
|
+
|
|
33
|
+
<div class="col-sm-3 form-group form-input-group">
|
|
34
|
+
<label class="font_normal_body" style="width: 40%">来电时间</label>
|
|
35
|
+
<datepicker placeholder="来电时间"
|
|
36
|
+
:value.sync="model.f_date"
|
|
37
|
+
v-model="model.f_date"
|
|
38
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
39
|
+
condition="outltime > '{}'"
|
|
40
|
+
></datepicker>
|
|
41
|
+
</div>
|
|
42
|
+
<div class="col-sm-3 form-group form-input-group">
|
|
43
|
+
<label class="font_normal_body" style="width: 35%">回访状态</label>
|
|
44
|
+
<v-select :value.sync="model.f_flghuifang"
|
|
45
|
+
:options='$parent.$parent.huifangs'
|
|
46
|
+
:value-single="true"
|
|
47
|
+
placeholder='请选择回访状态'
|
|
48
|
+
close-on-select
|
|
49
|
+
style="width: 60%"
|
|
50
|
+
></v-select>
|
|
51
|
+
</div>
|
|
52
|
+
<div style="float: right;" class="form-group span">
|
|
53
|
+
<button type="button" name="button"
|
|
54
|
+
class="button_search button_spacing" @click="search(),$dispatch('search')" style="z-index: 2">查询</button>
|
|
55
|
+
<export-excel-tel
|
|
56
|
+
:data="$parent.$parent.searchData"
|
|
57
|
+
:field="$parent.$parent.excelHeaders"
|
|
58
|
+
sqlurl="rs/logic/telephoneExport" sql-name="tel_singleTable_OrderBy" template-name='呼损记录导出'
|
|
59
|
+
:choose-col="false">
|
|
60
|
+
</export-excel-tel>
|
|
61
|
+
</div>
|
|
62
|
+
</div>
|
|
63
|
+
</div>
|
|
64
|
+
</criteria>
|
|
65
|
+
<data-grid partial='list' v-ref:grid :model="model" class="list_area table_sy">
|
|
66
|
+
<template partial='head'>
|
|
67
|
+
<tr>
|
|
68
|
+
<th><nobr>电话号码</nobr></th>
|
|
69
|
+
<th><nobr>来电时间</nobr></th>
|
|
70
|
+
<th><nobr>操作</nobr></th>
|
|
71
|
+
</tr>
|
|
72
|
+
</template>
|
|
73
|
+
<template partial='body'>
|
|
74
|
+
<td style="text-align: center">{{row.telnum}}</td>
|
|
75
|
+
<td style="text-align: center">{{row.outltime}}</td>
|
|
76
|
+
<td style="text-align: center">
|
|
77
|
+
<button-link v-show="!row.f_flghuifang" type="button" class="btn btn-link" @click="$parent.$parent.$parent.playWav(row.telnum,row.id)">回拨</button-link>
|
|
78
|
+
</td>
|
|
79
|
+
</template>
|
|
80
|
+
</data-grid>
|
|
81
|
+
</criteria-paged>
|
|
82
|
+
</div>
|
|
83
|
+
</div>
|
|
84
|
+
</div>
|
|
85
|
+
<!-- <modal :show.sync="showVisit" v-ref:modal backdrop="false">-->
|
|
86
|
+
<!-- <header slot="modal-header" class="modal-header">-->
|
|
87
|
+
<!-- </header>-->
|
|
88
|
+
<!-- <article slot="modal-body" class="modal-body">-->
|
|
89
|
+
<!-- <visit-info v-if="showVisit" :phone="wavflie" :idwavfile="idwavfile" :outltime="outltime" @show-obj="watchShow"></visit-info>-->
|
|
90
|
+
<!-- </article>-->
|
|
91
|
+
<!-- <footer slot="modal-footer" class="modal-footer">-->
|
|
92
|
+
<!-- </footer>-->
|
|
93
|
+
<!-- </modal>-->
|
|
94
|
+
</template>
|
|
95
|
+
|
|
96
|
+
<script>
|
|
97
|
+
import {HttpResetClass, PagedList} from 'vue-client'
|
|
98
|
+
import * as Util from '../Util'
|
|
99
|
+
import {addDate} from "../Util";
|
|
100
|
+
export default {
|
|
101
|
+
title: '呼损记录',
|
|
102
|
+
data () {
|
|
103
|
+
return {
|
|
104
|
+
model: new PagedList('rs/sql/tel_singleTable_OrderBy', 20, {items: "'*'", tablename: "'t_records'", orderitem: "'outltime desc'" }),
|
|
105
|
+
row: null,
|
|
106
|
+
show: false,
|
|
107
|
+
wavflie : '',
|
|
108
|
+
idwavfile:'',
|
|
109
|
+
leftShow:true,
|
|
110
|
+
searchDate:Util.toStandardDateString(),
|
|
111
|
+
orderMan: '',
|
|
112
|
+
msgs: [],
|
|
113
|
+
huifangs:[{label:"全部",value:""},{label:"已回访",value:"已回访"},{label:"未回访",value:"未回访"}],
|
|
114
|
+
service: Object,
|
|
115
|
+
pendingCount: 0,
|
|
116
|
+
serobj:Object,
|
|
117
|
+
showVisit:false,
|
|
118
|
+
outltime:this.getNowFormatDate(),
|
|
119
|
+
searchData:{
|
|
120
|
+
items: "*",
|
|
121
|
+
tablename: "t_records",
|
|
122
|
+
orderitem: "outltime desc",
|
|
123
|
+
condition: '1=1'
|
|
124
|
+
},
|
|
125
|
+
excelHeaders: {
|
|
126
|
+
'telnum': '电话号码',
|
|
127
|
+
'outltime': '来电时间',
|
|
128
|
+
},
|
|
129
|
+
}
|
|
130
|
+
},
|
|
131
|
+
ready () {
|
|
132
|
+
this.$refs.paged.$refs.criteria.model.f_flghuifang = '未回访'
|
|
133
|
+
this.leftShow = (this.$parent.leftShow == undefined ? true : this.$parent.leftShow)
|
|
134
|
+
this.renderEcharts(Util.toStandardDateString())
|
|
135
|
+
// this.selfSearch()
|
|
136
|
+
|
|
137
|
+
},
|
|
138
|
+
methods: {
|
|
139
|
+
searchEcharts(){
|
|
140
|
+
console.log("9334",this.searchDate)
|
|
141
|
+
this.renderEcharts(this.searchDate)
|
|
142
|
+
},
|
|
143
|
+
//获取当前日期
|
|
144
|
+
renderEcharts(date){
|
|
145
|
+
console.log("933",Util.addDate(3,date),Util.addDate(-3),date)
|
|
146
|
+
new HttpResetClass().load("post",'rs/sql/getLossPhoneByTime',{
|
|
147
|
+
data:{
|
|
148
|
+
groupitem:'SUBSTRING(outltime, 0, 11)',
|
|
149
|
+
condition:`outltime>='${Util.addDate(-3,date)} 00:00:00' and outltime<='${Util.addDate(3,date)} 23:59:59'`
|
|
150
|
+
}
|
|
151
|
+
},{resolveMsg:null,rejectMsg:null}).then(res=>{
|
|
152
|
+
let myChart1 = this.$echarts.init(document.getElementById(("husunzhexian1")))
|
|
153
|
+
myChart1.setOption(this.getAOptions("呼损日分析表",res.data))
|
|
154
|
+
})
|
|
155
|
+
|
|
156
|
+
new HttpResetClass().load("post",'rs/sql/getLossPhoneByTime',{
|
|
157
|
+
data:{
|
|
158
|
+
groupitem:"SUBSTRING(outltime, 12, 2)+':00'",
|
|
159
|
+
condition:`outltime>='${Util.toStandardDateString(date)} 08:00:00' and outltime<='${Util.toStandardDateString(date)} 18:59:59'`
|
|
160
|
+
}
|
|
161
|
+
},{resolveMsg:null,rejectMsg:null}).then(res=>{
|
|
162
|
+
let myChart1 = this.$echarts.init(document.getElementById(("husunzhexian2")))
|
|
163
|
+
myChart1.setOption(this.getAOptions("呼损时分析表",res.data))
|
|
164
|
+
})
|
|
165
|
+
},
|
|
166
|
+
getAOptions(title,arr){
|
|
167
|
+
|
|
168
|
+
return {
|
|
169
|
+
color: ['rgb(155,214,129)', '#73c0de'],
|
|
170
|
+
title: {
|
|
171
|
+
text: title
|
|
172
|
+
},
|
|
173
|
+
tooltip: {
|
|
174
|
+
trigger: 'axis'
|
|
175
|
+
},
|
|
176
|
+
legend: {
|
|
177
|
+
data: ['忙线', '未接']
|
|
178
|
+
},
|
|
179
|
+
grid: {
|
|
180
|
+
left: '3%',
|
|
181
|
+
right: '4%',
|
|
182
|
+
bottom: '3%',
|
|
183
|
+
containLabel: true
|
|
184
|
+
},
|
|
185
|
+
toolbox: {
|
|
186
|
+
feature: {
|
|
187
|
+
saveAsImage: {}
|
|
188
|
+
}
|
|
189
|
+
},
|
|
190
|
+
xAxis: {
|
|
191
|
+
type: 'category',
|
|
192
|
+
boundaryGap: false,
|
|
193
|
+
data: arr.map(item=>{
|
|
194
|
+
if(title === '呼损日分析表'){
|
|
195
|
+
return item.timearea.substr(5,5)
|
|
196
|
+
}
|
|
197
|
+
return item.timearea
|
|
198
|
+
})
|
|
199
|
+
},
|
|
200
|
+
yAxis: {
|
|
201
|
+
type: 'value'
|
|
202
|
+
},
|
|
203
|
+
series: [
|
|
204
|
+
{
|
|
205
|
+
name: '未接',
|
|
206
|
+
type: 'line',
|
|
207
|
+
stack: 'Total',
|
|
208
|
+
data: arr.map(item=>item.weijie)
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
name: '忙线',
|
|
212
|
+
type: 'line',
|
|
213
|
+
stack: 'Total',
|
|
214
|
+
data: arr.map(item=>item.zhanxian)
|
|
215
|
+
},
|
|
216
|
+
]
|
|
217
|
+
}
|
|
218
|
+
},
|
|
219
|
+
getNowFormatDate() {
|
|
220
|
+
var date = new Date();
|
|
221
|
+
var seperator1 = "-";
|
|
222
|
+
var month = date.getMonth() + 1;
|
|
223
|
+
var strDate = date.getDate();
|
|
224
|
+
if (month >= 1 && month <= 9) {
|
|
225
|
+
month = "0" + month;
|
|
226
|
+
}
|
|
227
|
+
if (strDate >= 0 && strDate <= 9) {
|
|
228
|
+
strDate = "0" + strDate;
|
|
229
|
+
}
|
|
230
|
+
var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate + ' 23:59:59'
|
|
231
|
+
return currentdate;
|
|
232
|
+
},
|
|
233
|
+
watchShow(val){
|
|
234
|
+
this.showVisit = val
|
|
235
|
+
},
|
|
236
|
+
clearVisit(){
|
|
237
|
+
this.show = false
|
|
238
|
+
},
|
|
239
|
+
playWav(val,val1){
|
|
240
|
+
if (!this.leftShow){
|
|
241
|
+
this.$parent.setUserPhone(val)
|
|
242
|
+
}
|
|
243
|
+
this.wavflie=val;
|
|
244
|
+
this.idwavfile=val1
|
|
245
|
+
this.showVisit = true
|
|
246
|
+
},
|
|
247
|
+
closemodel () {
|
|
248
|
+
this.showVisit = false
|
|
249
|
+
},
|
|
250
|
+
search(args) {
|
|
251
|
+
if(args.model.f_flghuifang){
|
|
252
|
+
if(args.model.f_flghuifang==='已回访'){
|
|
253
|
+
args.condition += ` and f_flghuifang = '已回访'`
|
|
254
|
+
}else{
|
|
255
|
+
args.condition += ` and f_flghuifang is null`
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
args.condition += " AND isnull(starttime,'') = '' AND isnull(findtime,'') != ''"
|
|
259
|
+
this.searchData.condition = args.condition
|
|
260
|
+
this.model.search(args.condition)
|
|
261
|
+
},
|
|
262
|
+
},
|
|
263
|
+
}
|
|
264
|
+
</script>
|