telephone-clients 3.0.103-7 → 3.0.103-71
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 +3 -3
- package/src/App.vue +5 -3
- package/src/components/Util/RightTreeSafe.vue +2 -2
- package/src/components/Util/RightTreeSafeDep.vue +350 -0
- package/src/components/android/AddMyTask.vue +7 -0
- package/src/components/pc/RepairsWork.vue +19 -0
- package/src/components/pc/RoleSelectorDep.vue +158 -0
- package/src/components/pc/TelFindUser.vue +1 -1
- package/src/components/pc/TelListener.vue +47 -16
- package/src/components/pc/WorkCenter.vue +1 -1
- package/src/components/pc/WorkCenterList.vue +1 -1
- package/src/components/pc/WorkHistory.vue +560 -548
- package/src/components/pc/WorkListAllNew.vue +1 -1
- package/src/components/pc/WorkListNew.vue +9 -3
- package/src/components/pc/olddata/OldWorkList.vue +193 -0
- package/src/components/telreport/RepairsDetailsReport.vue +98 -0
- package/src/components/telreport/TableFaultReport.vue +96 -0
- package/src/components/telreport/Traffic.vue +3 -3
- package/src/components/temp/InfoTable.vue +5 -2
- package/src/components/temp/OldRepairList.vue +100 -0
- package/src/components/weinan/SiteSend.vue +2 -2
- package/src/components/weinan/SiteSendWeixiu.vue +7 -16
- package/src/components/weinan/StandWorkWeixiu.vue +1 -1
- package/src/components/weinan/WorkList.vue +73 -0
- package/src/components/weinan/WorkListAll.vue +90 -14
- package/src/components/weinan/WorkListWeixiu.vue +1 -1
- package/src/components/workorder/CompletedRepair.vue +269 -183
- package/src/components/workorder/FaultAll.vue +9 -9
- package/src/components/workorder/PhoneUpDetail.vue +3 -0
- package/src/components/workorder/RepairFirstV.vue +1 -1
- package/src/filiale/kelai/pc/WorkCenterList.vue +20 -3
- package/src/filiale/kelai/pc/WorkListAllNew.vue +47 -9
- package/src/filiale/kelai/pc/serviceDeleteOrder.vue +55 -0
- package/src/filiale/kelai/telephone.js +9 -8
- package/src/filiale/qianneng/android/FaultAll.vue +1 -1
- package/src/filiale/qianneng/android/TemporarySingle.vue +25 -0
- package/src/filiale/qianneng/pc/MaterialDetailed.vue +10 -0
- package/src/filiale/qianneng/pc/MaterialStatistics.vue +144 -0
- package/src/filiale/qianneng/pc/NewRepairPaper.vue +2 -2
- package/src/filiale/qianneng/pc/RepairsWork.vue +12 -2
- package/src/filiale/qianneng/pc/WorkHistory.vue +2 -2
- package/src/filiale/qianneng/pc/WorkListAllNew.vue +53 -5
- package/src/filiale/qianneng/telephone.js +1 -0
- package/src/filiale/rizhao/pc/DispatchMan.vue +3 -3
- package/src/filiale/rizhao/pc/DispatchWork.vue +3 -3
- package/src/filiale/rizhao/pc/Traffic.vue +3 -3
- package/src/filiale/rizhao/pc/WorkListAllNew.vue +8 -3
- package/src/filiale/rongcheng/CliWorkListAll.vue +440 -407
- package/src/filiale/rongcheng/FaultAll.vue +3 -3
- package/src/filiale/rongcheng/RepairOrderV.vue +1445 -0
- package/src/filiale/rongcheng/telephoneAndroid.js +3 -1
- package/src/filiale/shanxian/android/RepairFirstV.vue +5 -1
- package/src/filiale/shanxian/pc/RepairsWork.vue +826 -0
- package/src/filiale/shanxian/telephone.js +2 -1
- package/src/filiale/shexian/android/AddMyTask.vue +7 -0
- package/src/filiale/shexian/android/CompletedRepair.vue +280 -0
- package/src/filiale/shexian/android/FaultAll.vue +16 -0
- package/src/filiale/shexian/android/Outlay.vue +182 -165
- package/src/filiale/shexian/android/RepairFirstV.vue +16 -2
- package/src/filiale/shexian/android/RepairInfo.vue +1 -0
- package/src/filiale/shexian/pc/TelByOrderManCount.vue +10 -2
- package/src/filiale/shexian/pc/WorkList.vue +25 -1
- package/src/filiale/shexian/pc/WorkListAllNew.vue +65 -61
- package/src/filiale/shexian/telephoneAndroid.js +3 -0
- package/src/filiale/tongchuan/android/TicketDetails.vue +3 -0
- package/src/filiale/tongchuan/pc/WorkOrderStatistics.vue +2 -2
- package/src/filiale/wenxi/pc/FailureEdit.vue +1 -1
- package/src/filiale/wenxi/pc/RepairsWork.vue +15 -0
- package/src/filiale/wenxi/pc/WorkListAll.vue +5 -2
- package/src/filiale/wenxi/telephone.js +1 -7
- package/src/filiale/yuncheng/pc/TelFindUser.vue +302 -0
- package/src/filiale/yuncheng/telephone.js +12 -0
- package/src/filiale/zhongsheng/android/FaultAll.vue +830 -0
- package/src/filiale/zhongsheng/telephoneAndroid.js +2 -1
- package/src/main.js +1 -1
- package/src/telephone.js +746 -733
- package/src/weinan.js +6 -0
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
<div class="col-sm-3 form-group form-input-group" style="width: 20%">
|
|
9
9
|
<label class="font_normal_body" style="width: 40%">工单编号</label>
|
|
10
10
|
<input type="text" class="input_search" v-model="model.f_service_id" placeholder='工单编号'
|
|
11
|
-
condition="f_service_id like '%{}%'"
|
|
11
|
+
condition="tswo.f_service_id like '%{}%'"
|
|
12
12
|
:size="model.f_service_id ? model.f_service_id.length : 6">
|
|
13
13
|
</div>
|
|
14
14
|
<div class="col-sm-3 form-group form-input-group" style="width: 20%">
|
|
@@ -232,8 +232,10 @@
|
|
|
232
232
|
在线抢修照片
|
|
233
233
|
</header>
|
|
234
234
|
<article slot="modal-body" class="modal-body">
|
|
235
|
-
<div class="from-group">
|
|
236
|
-
<img-self :src="imgfilename" width="
|
|
235
|
+
<div class="from-group" style="display: flex">
|
|
236
|
+
<img-self :src="'rs/image/file/'+imgfilename" width="220" height="300"></img-self>
|
|
237
|
+
<img-self v-if="imgfilename1" :src="'rs/image/file/'+imgfilename1" style="margin-left: 10px" width="220" height="300"></img-self>
|
|
238
|
+
<img-self v-if="imgfilename2" :src="'rs/image/file/'+imgfilename2" style="margin-left: 10px" width="220" height="300"></img-self>
|
|
237
239
|
</div>
|
|
238
240
|
</article>
|
|
239
241
|
<footer slot="modal-footer" class="modal-footer">
|
|
@@ -374,6 +376,8 @@ export default {
|
|
|
374
376
|
service: Object,
|
|
375
377
|
pendingCount: 0,
|
|
376
378
|
imgfilename: '',
|
|
379
|
+
imgfilename1: '',
|
|
380
|
+
imgfilename2: '',
|
|
377
381
|
select: {
|
|
378
382
|
defname: ''
|
|
379
383
|
},
|
|
@@ -650,7 +654,9 @@ export default {
|
|
|
650
654
|
//tag
|
|
651
655
|
//tag)
|
|
652
656
|
this.imgshow = true
|
|
653
|
-
this.imgfilename =
|
|
657
|
+
this.imgfilename = val.f_single_path
|
|
658
|
+
this.imgfilename1 = val.f_singlea_path
|
|
659
|
+
this.imgfilename2 = val.f_singleb_path
|
|
654
660
|
},
|
|
655
661
|
search (args) {
|
|
656
662
|
this.serlist = []
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="flex">
|
|
3
|
+
<criteria-paged :model="model" v-ref:paged >
|
|
4
|
+
<criteria partial='criteria' v-ref:criteria @condition-changed='$parent.search'>
|
|
5
|
+
<div novalidate class="select-overspread form-horizontal" partial>
|
|
6
|
+
<div class="row" >
|
|
7
|
+
<div class="col-sm-3 form-group form-input-group" style="width: 20%">
|
|
8
|
+
<label class="font_normal_body" style="width: 40%">用户编号</label>
|
|
9
|
+
<input type="text" class="form-control" v-model="model.f_userid" placeholder='用户编号'
|
|
10
|
+
condition="f_userid like '%{}%'"
|
|
11
|
+
:size="model.f_userid ? model.f_userid.length : 7">
|
|
12
|
+
</div>
|
|
13
|
+
<div class="col-sm-3 form-group form-input-group" style="width: 20%">
|
|
14
|
+
<label class="font_normal_body" style="width: 40%">用户姓名</label>
|
|
15
|
+
<input type="text" class="form-control" v-model="model.f_username" placeholder='用户姓名'
|
|
16
|
+
condition="f_username like '%{}%'"
|
|
17
|
+
:size="model.f_username ? model.f_username.length : 7">
|
|
18
|
+
</div>
|
|
19
|
+
<div class="col-sm-3 form-group form-input-group" style="width: 20%">
|
|
20
|
+
<label class="font_normal_body" style="width: 40%">来电电话</label>
|
|
21
|
+
<input type="text" class="form-control" v-model="model.f_linktype" placeholder='来电电话'
|
|
22
|
+
condition="f_linktype like '%{}%'"
|
|
23
|
+
:size="model.f_linktype ? model.f_linktype.length : 7">
|
|
24
|
+
</div>
|
|
25
|
+
<div class="col-sm-3 form-group form-input-group" style="width: 20%">
|
|
26
|
+
<label class="font_normal_body" style="width: 40%">用户电话</label>
|
|
27
|
+
<input type="text" class="form-control" v-model="model.f_phone" placeholder='用户电话'
|
|
28
|
+
condition="f_phone like '%{}%'"
|
|
29
|
+
:size="model.f_phone ? model.f_phone.length : 7">
|
|
30
|
+
</div>
|
|
31
|
+
<div style="float: right;" class="form-group span">
|
|
32
|
+
<button type="button" name="button"
|
|
33
|
+
class="button_search button_spacing" @click="search(),$dispatch('search')">查询</button>
|
|
34
|
+
<button type="button" name="button" style="background-color: #5ac0d9;border-radius: 4px;"
|
|
35
|
+
class="button_spacing button_search" @click="$parent.$parent.clearmsg">清空</button>
|
|
36
|
+
<div style="float: right;" class="button_spacing button_search"
|
|
37
|
+
:class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
|
|
38
|
+
@click="$parent.$parent.hidden()"></div>
|
|
39
|
+
</div>
|
|
40
|
+
|
|
41
|
+
<div class="col-sm-3 form-group form-input-group" style="width: 20%" v-if="$parent.$parent.criteriaShow">
|
|
42
|
+
<label class="font_normal_body" style="width: 40%">开始时间</label>
|
|
43
|
+
<datepicker placeholder="来电开始时间"
|
|
44
|
+
:value.sync="model.f_created_startdate"
|
|
45
|
+
v-model="model.f_created_startdate"
|
|
46
|
+
:format="'yyyy-MM-dd 00:00:00'"
|
|
47
|
+
condition="f_reporttime > '{}'"
|
|
48
|
+
></datepicker>
|
|
49
|
+
</div>
|
|
50
|
+
<div class="col-sm-3 form-group form-input-group" style="width: 20%" v-if="$parent.$parent.criteriaShow">
|
|
51
|
+
<label class="font_normal_body" style="width: 40%">结束时间</label>
|
|
52
|
+
<datepicker placeholder="来电结束时间"
|
|
53
|
+
:value.sync="model.f_created_enddate"
|
|
54
|
+
v-model="model.f_created_enddate"
|
|
55
|
+
:format="'yyyy-MM-dd 23:59:59'"
|
|
56
|
+
condition="f_reporttime < '{}'"
|
|
57
|
+
></datepicker>
|
|
58
|
+
</div>
|
|
59
|
+
<div class="col-sm-3 form-group form-input-group" style="width: 20%">
|
|
60
|
+
<label class="font_normal_body" style="width: 40%">表  号</label>
|
|
61
|
+
<input type="text" class="form-control" v-model="model.f_meternumber" placeholder='表号'
|
|
62
|
+
condition="f_meternumber like '%{}%'"
|
|
63
|
+
:size="model.f_meternumber ? model.f_meternumber.length : 7">
|
|
64
|
+
</div>
|
|
65
|
+
<div class="col-sm-3 form-group form-input-group" style="width: 20%" >
|
|
66
|
+
<label class="font_normal_body" style="width: 40%" title="用户类型">用户类型</label>
|
|
67
|
+
<v-select :value.sync="model.f_usertype" :value-single="true"
|
|
68
|
+
v-model="model.f_usertype"
|
|
69
|
+
condition="f_usertype ='{}'"
|
|
70
|
+
:options='$parent.$parent.usertypes' placeholder='用户类型'
|
|
71
|
+
close-on-select >
|
|
72
|
+
</v-select>
|
|
73
|
+
</div>
|
|
74
|
+
<div class="col-sm-3 form-group form-input-group" style="width: 20%" >
|
|
75
|
+
<label class="font_normal_body" style="width: 40%" title="旧报修类型">报修类型</label>
|
|
76
|
+
<v-select :value.sync="model.f_repairtype" :value-single="true"
|
|
77
|
+
v-model="model.f_repairtype"
|
|
78
|
+
condition="f_repairtype ='{}'"
|
|
79
|
+
:options='$parent.$parent.repairtypes' placeholder='报修类型'
|
|
80
|
+
close-on-select >
|
|
81
|
+
</v-select>
|
|
82
|
+
</div>
|
|
83
|
+
<div class="col-sm-3 form-group form-input-group" style="width: 20%">
|
|
84
|
+
<label class="font_normal_body" style="width: 40%">话 务 员</label>
|
|
85
|
+
<input type="text" class="form-control" v-model="model.f_operator" placeholder='话务员'
|
|
86
|
+
condition="f_operator like '%{}%'"
|
|
87
|
+
:size="model.f_operator ? model.f_operator.length : 7">
|
|
88
|
+
</div>
|
|
89
|
+
<div class="col-sm-3 form-group form-input-group" style="width: 20%">
|
|
90
|
+
<label class="font_normal_body" style="width: 40%">接 单 员</label>
|
|
91
|
+
<input type="text" class="form-control" v-model="model.f_accepter" placeholder='接单员'
|
|
92
|
+
condition="f_accepter like '%{}%'"
|
|
93
|
+
:size="model.f_accepter ? model.f_accepter.length : 7">
|
|
94
|
+
</div>
|
|
95
|
+
|
|
96
|
+
</div>
|
|
97
|
+
|
|
98
|
+
</div>
|
|
99
|
+
</criteria>
|
|
100
|
+
<data-grid partial='list' v-ref:grid :model="model" class="list_area table_sy">
|
|
101
|
+
<template partial='head'>
|
|
102
|
+
<tr>
|
|
103
|
+
<th><nobr>用户编号</nobr></th>
|
|
104
|
+
<th><nobr>用户信息</nobr></th>
|
|
105
|
+
<th><nobr>来电电话</nobr></th>
|
|
106
|
+
<th><nobr>来电时间</nobr></th>
|
|
107
|
+
<th><nobr>表信息</nobr></th>
|
|
108
|
+
<th><nobr>累够</nobr></th>
|
|
109
|
+
<th><nobr>来电方式</nobr></th>
|
|
110
|
+
<th><nobr>报修类型</nobr></th>
|
|
111
|
+
<th><nobr>话务员信息</nobr></th>
|
|
112
|
+
<th><nobr>维修备注</nobr></th>
|
|
113
|
+
<th><nobr>工单编号</nobr></th>
|
|
114
|
+
<th><nobr>处理方式</nobr></th>
|
|
115
|
+
<th><nobr>是否处理</nobr></th>
|
|
116
|
+
<th><nobr>派单人</nobr></th>
|
|
117
|
+
<th><nobr>派单时间</nobr></th>
|
|
118
|
+
<th><nobr>接单人信息</nobr></th>
|
|
119
|
+
<th><nobr>维修信息</nobr></th>
|
|
120
|
+
<th><nobr>完成状态</nobr></th>
|
|
121
|
+
<th><nobr>是否回访</nobr></th>
|
|
122
|
+
<th><nobr>回访人</nobr></th>
|
|
123
|
+
<th><nobr>用户意见</nobr>
|
|
124
|
+
</tr>
|
|
125
|
+
</template>
|
|
126
|
+
<template partial='body' >
|
|
127
|
+
<td>{{row.f_userid}}</td>
|
|
128
|
+
<td>{{row.f_username}} {{row.f_address}} {{row.f_phone}}</td>
|
|
129
|
+
<td>{{row.f_linktype}}</td>
|
|
130
|
+
<td>{{row.f_reporttime}}</td>
|
|
131
|
+
<td>{{row.f_meternumber}} {{row.f_metertype}} {{row.f_aroundmeter}}</td>
|
|
132
|
+
<td>{{row.f_metergasnums}}</td>
|
|
133
|
+
<td>{{row.f_teltype}}</td>
|
|
134
|
+
<td>{{row.f_repairtype}}</td>
|
|
135
|
+
<td>{{row.f_operator}} {{row.f_department}}</td>
|
|
136
|
+
<td>{{row.f_repairreason}}</td>
|
|
137
|
+
<td>{{row.f_cucode}}</td>
|
|
138
|
+
<td>{{row.f_dealtype}}</td>
|
|
139
|
+
<td>{{row.f_havadeal}}</td>
|
|
140
|
+
<td>{{row.f_sender}}</td>
|
|
141
|
+
<td>{{row.f_senddate}}</td>
|
|
142
|
+
<td>{{row.f_accepter}} {{row.f_acceptertel}}</td>
|
|
143
|
+
<td>{{row.f_smwxjl}}</td>
|
|
144
|
+
<td>{{row.f_havacomplete}}</td>
|
|
145
|
+
<td>{{row.f_ifvisit}}</td>
|
|
146
|
+
<td>{{row.f_visitren}}</td>
|
|
147
|
+
<td>{{row.f_consumeroption}}</td>
|
|
148
|
+
</template>
|
|
149
|
+
</data-grid>
|
|
150
|
+
</criteria-paged>
|
|
151
|
+
</div>
|
|
152
|
+
|
|
153
|
+
</template>
|
|
154
|
+
|
|
155
|
+
<script>
|
|
156
|
+
import {HttpResetClass, PagedList} from "vue-client";
|
|
157
|
+
|
|
158
|
+
export default {
|
|
159
|
+
title: "旧工单列表",
|
|
160
|
+
data () {
|
|
161
|
+
return {
|
|
162
|
+
criteriaShow: false,
|
|
163
|
+
model: new PagedList('rs/sql/tel_singleTable_OrderBy', 8, {items: '"*"', tablename: '"t_oldserviceworkorder"', orderitem: '"f_reporttime desc"'}),
|
|
164
|
+
row: null,
|
|
165
|
+
}
|
|
166
|
+
},
|
|
167
|
+
ready () {
|
|
168
|
+
},
|
|
169
|
+
methods: {
|
|
170
|
+
hidden () {
|
|
171
|
+
this.criteriaShow = !this.criteriaShow
|
|
172
|
+
},
|
|
173
|
+
search(args) {
|
|
174
|
+
this.model.search(args.condition, args.model)
|
|
175
|
+
},
|
|
176
|
+
clearmsg(){
|
|
177
|
+
this.$refs.paged.$refs.criteria.model={}
|
|
178
|
+
},
|
|
179
|
+
},
|
|
180
|
+
computed: {
|
|
181
|
+
usertypes(){
|
|
182
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
|
|
183
|
+
},
|
|
184
|
+
repairtypes(){
|
|
185
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('旧报修类型')]
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
</script>
|
|
190
|
+
|
|
191
|
+
<style lang="less">
|
|
192
|
+
|
|
193
|
+
</style>
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div id='app' class="basic-main" style="height: 100%">
|
|
3
|
+
<criteria-paged :model="model" :pager='false' v-ref:paged>
|
|
4
|
+
<criteria partial='criteria' @condition-changed='$parent.search' class="search_area" v-ref:criteria>
|
|
5
|
+
<div novalidate class="form-inline auto" partial>
|
|
6
|
+
<div class="row">
|
|
7
|
+
<div class="col-sm-2 form-group">
|
|
8
|
+
<label for="startDate" class="font_normal_body">开始日期:</label>
|
|
9
|
+
<datepicker id="startDate" placeholder="开始日期"
|
|
10
|
+
v-model="model.startDate"
|
|
11
|
+
:value.sync="model.startDate"
|
|
12
|
+
style="width: 60%;"
|
|
13
|
+
:disabled-days-of-Week="[]"
|
|
14
|
+
:format="'yyyy-MM-dd'"
|
|
15
|
+
:show-reset-button="reset">
|
|
16
|
+
</datepicker>
|
|
17
|
+
</div>
|
|
18
|
+
<div class="col-sm-2 form-group">
|
|
19
|
+
<label for="endDate" class="font_normal_body">结束日期:</label>
|
|
20
|
+
<datepicker id="endDate" placeholder="结束日期"
|
|
21
|
+
v-model="model.endDate"
|
|
22
|
+
:value.sync="model.endDate"
|
|
23
|
+
:disabled-days-of-Week="[]"
|
|
24
|
+
style="width: 60%;"
|
|
25
|
+
:format="'yyyy-MM-dd'"
|
|
26
|
+
:show-reset-button="reset">
|
|
27
|
+
</datepicker>
|
|
28
|
+
</div>
|
|
29
|
+
<div class="col-sm-3 form-group" style="margin-top: 8px">
|
|
30
|
+
<button class="button_search button_spacing" @click="search()">查询</button>
|
|
31
|
+
<report-print class="button_export button_spacing" style="width:28%" ></report-print>
|
|
32
|
+
<report-excel class="button_export button_spacing" style="width:28%" ></report-excel>
|
|
33
|
+
</div>
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
</criteria>
|
|
37
|
+
<div partial='list' class="list_area" style="overflow-y: scroll;position:relative">
|
|
38
|
+
<table class='tableprint' style="margin: 0px auto">
|
|
39
|
+
<thead>
|
|
40
|
+
<tr>
|
|
41
|
+
<th colspan='5' style="font-weight: normal; text-align: left;">
|
|
42
|
+
<h3 style="text-align: center">维修报表统计</h3>
|
|
43
|
+
</th>
|
|
44
|
+
</tr>
|
|
45
|
+
</thead>
|
|
46
|
+
<tr>
|
|
47
|
+
<th colspan='5' style="font-weight: normal;">
|
|
48
|
+
{{{ model.data.substring(26,model.data.length-8) }}}
|
|
49
|
+
</th>
|
|
50
|
+
</tr>
|
|
51
|
+
</table>
|
|
52
|
+
</div>
|
|
53
|
+
</criteria-paged>
|
|
54
|
+
</div>
|
|
55
|
+
|
|
56
|
+
</template>
|
|
57
|
+
|
|
58
|
+
<script>
|
|
59
|
+
import {DataModel} from 'vue-client'
|
|
60
|
+
|
|
61
|
+
export default {
|
|
62
|
+
title: '维修报表',
|
|
63
|
+
data() {
|
|
64
|
+
let model = new DataModel('rs/telephone/report/repairsDetailsReport')
|
|
65
|
+
return {
|
|
66
|
+
filialeNameStr: '',
|
|
67
|
+
filialeCodeStr: '',
|
|
68
|
+
userid: this.$login.f.id,
|
|
69
|
+
source: `tool.getFullTree(this.getRights().where(row.getType() != $zone$).where(row.getType() == $organization$))`,
|
|
70
|
+
model: model
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
methods: {
|
|
74
|
+
getRes(obj) {
|
|
75
|
+
this.model.f_filialeid = this.$login.convertToIn(obj.resids);
|
|
76
|
+
},
|
|
77
|
+
search(args){
|
|
78
|
+
let condition = ' and 1 = 1 '
|
|
79
|
+
if (args.model.startDate){
|
|
80
|
+
condition += ` and ts1.f_date_leave >= '${args.model.startDate} 00:00:00' `
|
|
81
|
+
}
|
|
82
|
+
if (args.model.endDate){
|
|
83
|
+
condition += ` and ts1.f_date_leave <= '${args.model.endDate} 23:59:59' `
|
|
84
|
+
}
|
|
85
|
+
this.model.search(condition,args.model)
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
ready() {
|
|
89
|
+
},
|
|
90
|
+
computed: {
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
</script>
|
|
94
|
+
<style>
|
|
95
|
+
th>tr>td {
|
|
96
|
+
width: 200px;
|
|
97
|
+
}
|
|
98
|
+
</style>
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div id='app' class="basic-main" style="height: 100%">
|
|
3
|
+
<criteria-paged :model="model" :pager='false' v-ref:paged>
|
|
4
|
+
<criteria partial='criteria' @condition-changed='$parent.search' class="search_area" v-ref:criteria>
|
|
5
|
+
<div novalidate class="form-inline auto" partial>
|
|
6
|
+
<div class="row">
|
|
7
|
+
<div class="col-sm-2 form-group">
|
|
8
|
+
<label for="startDate" class="font_normal_body">开始日期:</label>
|
|
9
|
+
<datepicker id="startDate" placeholder="开始日期"
|
|
10
|
+
v-model="model.startDate"
|
|
11
|
+
:value.sync="model.startDate"
|
|
12
|
+
style="width: 60%;"
|
|
13
|
+
:disabled-days-of-Week="[]"
|
|
14
|
+
:format="'yyyy-MM-dd'"
|
|
15
|
+
:show-reset-button="reset">
|
|
16
|
+
</datepicker>
|
|
17
|
+
</div>
|
|
18
|
+
<div class="col-sm-2 form-group">
|
|
19
|
+
<label for="endDate" class="font_normal_body">结束日期:</label>
|
|
20
|
+
<datepicker id="endDate" placeholder="结束日期"
|
|
21
|
+
v-model="model.endDate"
|
|
22
|
+
:value.sync="model.endDate"
|
|
23
|
+
:disabled-days-of-Week="[]"
|
|
24
|
+
style="width: 60%;"
|
|
25
|
+
:format="'yyyy-MM-dd'"
|
|
26
|
+
:show-reset-button="reset">
|
|
27
|
+
</datepicker>
|
|
28
|
+
</div>
|
|
29
|
+
<div class="col-sm-3 form-group" style="margin-top: 8px">
|
|
30
|
+
<button class="button_search button_spacing" @click="search()">查询</button>
|
|
31
|
+
<report-print class="button_export button_spacing" style="width:28%" ></report-print>
|
|
32
|
+
<report-excel class="button_export button_spacing" style="width:28%" ></report-excel>
|
|
33
|
+
</div>
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
</criteria>
|
|
37
|
+
<div partial='list' class="list_area" style="overflow-y: scroll">
|
|
38
|
+
<table class='tableprint' style="margin: 0px auto">
|
|
39
|
+
<thead>
|
|
40
|
+
<tr>
|
|
41
|
+
<th colspan='5' style="font-weight: normal; text-align: left;">
|
|
42
|
+
<h3 style="text-align: center">表具故障统计</h3>
|
|
43
|
+
</th>
|
|
44
|
+
</tr>
|
|
45
|
+
</thead>
|
|
46
|
+
<tr>
|
|
47
|
+
<th colspan='5' style="font-weight: normal;">
|
|
48
|
+
{{{ model.data.substring(26,model.data.length-8) }}}
|
|
49
|
+
</th>
|
|
50
|
+
</tr>
|
|
51
|
+
</table>
|
|
52
|
+
</div>
|
|
53
|
+
</criteria-paged>
|
|
54
|
+
</div>
|
|
55
|
+
|
|
56
|
+
</template>
|
|
57
|
+
|
|
58
|
+
<script>
|
|
59
|
+
import {DataModel} from 'vue-client'
|
|
60
|
+
|
|
61
|
+
export default {
|
|
62
|
+
title: '表具故障统计',
|
|
63
|
+
data() {
|
|
64
|
+
let model = new DataModel('rs/telephone/report/tableFaultReport')
|
|
65
|
+
return {
|
|
66
|
+
filialeNameStr: '',
|
|
67
|
+
filialeCodeStr: '',
|
|
68
|
+
userid: this.$login.f.id,
|
|
69
|
+
source: `tool.getFullTree(this.getRights().where(row.getType() != $zone$).where(row.getType() == $organization$))`,
|
|
70
|
+
model: model
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
methods: {
|
|
74
|
+
getRes(obj) {
|
|
75
|
+
this.model.f_filialeid = this.$login.convertToIn(obj.resids);
|
|
76
|
+
},
|
|
77
|
+
search(args){
|
|
78
|
+
let condition = ' 1 = 1 '
|
|
79
|
+
if (args.model.startDate){
|
|
80
|
+
condition += ` and tf.f_failure_date >= '${args.model.startDate} 00:00:00' `
|
|
81
|
+
}
|
|
82
|
+
if (args.model.endDate){
|
|
83
|
+
condition += ` and tf.f_failure_date <= '${args.model.endDate} 23:59:59' `
|
|
84
|
+
}
|
|
85
|
+
this.model.search(condition,args.model)
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
ready() {
|
|
89
|
+
},
|
|
90
|
+
computed: {
|
|
91
|
+
selected() {
|
|
92
|
+
return this.$refs.grid.selected
|
|
93
|
+
},
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
</script>
|
|
@@ -24,14 +24,14 @@
|
|
|
24
24
|
<!-- <input type="text" class="form-control" v-model="model.f_single_man"-->
|
|
25
25
|
<!-- placeholder='操作员'>-->
|
|
26
26
|
<button class="btn btn-default" @click="search()">查询</button>
|
|
27
|
-
<export-excel class="button_search button_spacing"
|
|
27
|
+
<export-excel-tel class="button_search button_spacing"
|
|
28
28
|
:data="{startDate: this.model.startDate,endDate: this.model.endDate}"
|
|
29
29
|
:field="{'cetime':'时段','hwzl':'话务总量','weijie':'未接数',
|
|
30
30
|
'yijie':'已接数','jtl':'接听率(%)',
|
|
31
31
|
'zthsc':'总通话时长(分)'}"
|
|
32
32
|
style="margin-top: 20px"
|
|
33
|
-
sqlurl="rs/logic/
|
|
34
|
-
:choose-col="true"></export-excel>
|
|
33
|
+
sqlurl="rs/logic/telephoneExport" sql-name="getTraffic" template-name='话务量报表导出'
|
|
34
|
+
:choose-col="true"></export-excel-tel>
|
|
35
35
|
</div>
|
|
36
36
|
</div>
|
|
37
37
|
</criteria>
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
<li ><a :style="selectFiled == '指令查看'?'color:#333333!important;':'color:#666666!important;'" :class="{'tel_voiceActive':selectFiled == '指令查看','tel_f_size':selectFiled != '指令查看'}" href="javascript:void(0)" @click="setField('指令查看')">指令查看</a></li>
|
|
20
20
|
<li ><a :style="selectFiled == '上报查询'?'color:#333333!important;':'color:#666666!important;'" :class="{'tel_voiceActive':selectFiled == '上报查询','tel_f_size':selectFiled != '上报查询'}" href="javascript:void(0)" @click="setField('上报查询')">上报查询</a></li>
|
|
21
21
|
<li ><a :style="selectFiled == '停用信息'?'color:#333333!important;':'color:#666666!important;'" :class="{'tel_voiceActive':selectFiled == '停用信息','tel_f_size':selectFiled != '停用信息'}" href="javascript:void(0)" @click="setField('停用信息')">停用信息</a></li>
|
|
22
|
+
<li v-if="oldshow"><a :style="selectFiled == '旧单信息'?'color:#333333!important;':'color:#666666!important;'" :class="{'tel_voiceActive':selectFiled == '旧单信息','tel_f_size':selectFiled != '旧单信息'}" href="javascript:void(0)" @click="setField('旧单信息')">旧单信息</a></li>
|
|
22
23
|
</ul>
|
|
23
24
|
<div class="tab-content span">
|
|
24
25
|
<sell-info v-if="selectFiled=='购气记录'" :user="user" :clearflg="clearflg" style="font-size: 12px"></sell-info>
|
|
@@ -31,7 +32,7 @@
|
|
|
31
32
|
<tel-meteread-info v-if="selectFiled=='上报查询'" :user="user" :clearflg="clearflg" style="font-size: 12px"></tel-meteread-info>
|
|
32
33
|
<disable-information v-if="selectFiled=='停用信息'" :user="user" :clearflg="clearflg" style="font-size: 12px"></disable-information>
|
|
33
34
|
<repair-list v-if="selectFiled=='来电记录'" :user="user" :clearflg="clearflg" style="font-size: 12px"></repair-list>
|
|
34
|
-
|
|
35
|
+
<old-repair-list v-if="selectFiled=='旧单信息'" :user="user" :clearflg="clearflg" style="font-size: 12px"></old-repair-list>
|
|
35
36
|
</div>
|
|
36
37
|
|
|
37
38
|
</div>
|
|
@@ -81,12 +82,14 @@ export default {
|
|
|
81
82
|
},
|
|
82
83
|
|
|
83
84
|
ready () {
|
|
85
|
+
this.oldshow = this.$appdata.getSingleValue('旧工单信息显示') ? true : false
|
|
84
86
|
//tag
|
|
85
87
|
},
|
|
86
88
|
data () {
|
|
87
89
|
return {
|
|
88
90
|
a:'tabs-one',
|
|
89
|
-
selectFiled:'购气记录'
|
|
91
|
+
selectFiled:'购气记录',
|
|
92
|
+
oldshow:false
|
|
90
93
|
}
|
|
91
94
|
},
|
|
92
95
|
methods :{
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div id="pc-finduser-page">
|
|
3
|
+
<criteria-paged :model="model" v-ref:paged :simple="true">
|
|
4
|
+
<data-grid :model="model" partial='list' v-ref:grid
|
|
5
|
+
class="list_area table_sy">
|
|
6
|
+
<template partial='head'>
|
|
7
|
+
<tr>
|
|
8
|
+
<th><nobr>用户编号</nobr></th>
|
|
9
|
+
<th><nobr>用户信息</nobr></th>
|
|
10
|
+
<th><nobr>来电电话</nobr></th>
|
|
11
|
+
<th><nobr>来电时间</nobr></th>
|
|
12
|
+
<th><nobr>表信息</nobr></th>
|
|
13
|
+
<th><nobr>累够</nobr></th>
|
|
14
|
+
<th><nobr>来电方式</nobr></th>
|
|
15
|
+
<th><nobr>报修类型</nobr></th>
|
|
16
|
+
<th><nobr>话务员信息</nobr></th>
|
|
17
|
+
<th><nobr>维修备注</nobr></th>
|
|
18
|
+
<th><nobr>工单编号</nobr></th>
|
|
19
|
+
<th><nobr>处理方式</nobr></th>
|
|
20
|
+
<th><nobr>是否处理</nobr></th>
|
|
21
|
+
<th><nobr>派单人</nobr></th>
|
|
22
|
+
<th><nobr>派单时间</nobr></th>
|
|
23
|
+
<th><nobr>接单人信息</nobr></th>
|
|
24
|
+
<th><nobr>维修信息</nobr></th>
|
|
25
|
+
<th><nobr>完成状态</nobr></th>
|
|
26
|
+
<th><nobr>是否回访</nobr></th>
|
|
27
|
+
<th><nobr>回访人</nobr></th>
|
|
28
|
+
<th><nobr>用户意见</nobr>
|
|
29
|
+
</tr>
|
|
30
|
+
</template>
|
|
31
|
+
<template partial='body'>
|
|
32
|
+
<td>{{row.f_userid}}</td>
|
|
33
|
+
<td>{{row.f_username}} {{row.f_address}} {{row.f_phone}}</td>
|
|
34
|
+
<td>{{row.f_linktype}}</td>
|
|
35
|
+
<td>{{row.f_reporttime}}</td>
|
|
36
|
+
<td>{{row.f_meternumber}} {{row.f_metertype}} {{row.f_aroundmeter}}</td>
|
|
37
|
+
<td>{{row.f_metergasnums}}</td>
|
|
38
|
+
<td>{{row.f_teltype}}</td>
|
|
39
|
+
<td>{{row.f_repairtype}}</td>
|
|
40
|
+
<td>{{row.f_operator}} {{row.f_department}}</td>
|
|
41
|
+
<td>{{row.f_repairreason}}</td>
|
|
42
|
+
<td>{{row.f_cucode}}</td>
|
|
43
|
+
<td>{{row.f_dealtype}}</td>
|
|
44
|
+
<td>{{row.f_havadeal}}</td>
|
|
45
|
+
<td>{{row.f_sender}}</td>
|
|
46
|
+
<td>{{row.f_senddate}}</td>
|
|
47
|
+
<td>{{row.f_accepter}} {{row.f_acceptertel}}</td>
|
|
48
|
+
<td>{{row.f_smwxjl}}</td>
|
|
49
|
+
<td>{{row.f_havacomplete}}</td>
|
|
50
|
+
<td>{{row.f_ifvisit}}</td>
|
|
51
|
+
<td>{{row.f_visitren}}</td>
|
|
52
|
+
<td>{{row.f_consumeroption}}</td>
|
|
53
|
+
</template>
|
|
54
|
+
|
|
55
|
+
</data-grid>
|
|
56
|
+
</criteria-paged>
|
|
57
|
+
</div>
|
|
58
|
+
</template>
|
|
59
|
+
|
|
60
|
+
<script>
|
|
61
|
+
/**
|
|
62
|
+
*用户档案相关信息组件
|
|
63
|
+
*/
|
|
64
|
+
import { PagedList } from 'vue-client'
|
|
65
|
+
export default {
|
|
66
|
+
title: '历史维修记录',
|
|
67
|
+
data () {
|
|
68
|
+
return {
|
|
69
|
+
model: new PagedList( 'rs/sql/tel_singleTable_OrderBy', 5,{items: '"*"', tablename: '"t_oldserviceworkorder"', orderitem: '"f_reporttime desc"'}),
|
|
70
|
+
show:false,
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
props: {
|
|
74
|
+
user: {
|
|
75
|
+
type: Object
|
|
76
|
+
},
|
|
77
|
+
callObj:{
|
|
78
|
+
type: Object
|
|
79
|
+
},
|
|
80
|
+
clearflg:0
|
|
81
|
+
},
|
|
82
|
+
methods: {
|
|
83
|
+
},
|
|
84
|
+
watch : {
|
|
85
|
+
'user' (val) {
|
|
86
|
+
this.model.rows = []
|
|
87
|
+
this.model.search(`f_userid = '${this.user.f_userinfo_code}'`)
|
|
88
|
+
|
|
89
|
+
},
|
|
90
|
+
'clearflg'(){
|
|
91
|
+
this.model.rows = []
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
ready () {
|
|
95
|
+
if (this.user && this.user.f_userinfo_code) {
|
|
96
|
+
this.model.search(`f_userid = '${this.user.f_userinfo_code}'`)
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
</script>
|
|
@@ -199,7 +199,7 @@ export default {
|
|
|
199
199
|
resolveMsg: null,
|
|
200
200
|
rejectMsg: null
|
|
201
201
|
}).then((res) => {
|
|
202
|
-
let result = res.data.filter(res=>res.depids==Vue.user.depids)
|
|
202
|
+
let result = res.data.filter(res=>res.depids==Vue.user.depids && res.state == '在职')
|
|
203
203
|
result.forEach((item) => {
|
|
204
204
|
this.repairers.push({label: `${item.name} ${item.f_user_telephone}`, value: item.name})
|
|
205
205
|
|
|
@@ -213,7 +213,7 @@ export default {
|
|
|
213
213
|
}
|
|
214
214
|
http.load('POST', '/rs/search', {data: val}, {resolveMsg: null, rejectMsg: null}).then((res) => {
|
|
215
215
|
|
|
216
|
-
let result = res.data.filter(res=>res.depids==this.$login.f.depids)
|
|
216
|
+
let result = res.data.filter(res=>res.depids==this.$login.f.depids && res.state == '在职')
|
|
217
217
|
|
|
218
218
|
result.forEach((item) => {
|
|
219
219
|
this.repairers.push({label: `${item.name} ${item.f_user_telephone}`, value: item.name})
|