telephone-clients 4.0.0-1-81 → 4.0.0-1-83

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.
Files changed (27) hide show
  1. package/package.json +120 -120
  2. package/src/components/pc/NewRepairPaper.vue +704 -704
  3. package/src/components/pc/NewRepairTablePaper.vue +442 -442
  4. package/src/components/pc/WorkHistory.vue +650 -650
  5. package/src/components/sendsingle/onlinecharge.vue +424 -424
  6. package/src/components/workorder/ChangeMeterPageNew.vue +663 -663
  7. package/src/components/workorder/ChangeMeterUserInfo.vue +130 -130
  8. package/src/components/workorder/RepairFirstV.vue +736 -736
  9. package/src/components/workorder/RepairInfo.vue +178 -178
  10. package/src/components/workorder/RepairOrderT.vue +713 -713
  11. package/src/components/workorder/oldMeterPage.vue +104 -104
  12. package/src/components/workorder/repairFirstTable.vue +715 -715
  13. package/src/filiale/meihekou/android/Othercharge.vue +454 -454
  14. package/src/filiale/meihekou/android/PhoneStandWorkNew.vue +692 -692
  15. package/src/filiale/meihekou/android/RepairFirstV.vue +888 -887
  16. package/src/filiale/meihekou/android/ServiceOnlineQuery.vue +477 -477
  17. package/src/filiale/meihekou/pc/WorkListAllNew.vue +7 -8
  18. package/src/filiale/meihekou/telephoneAndroid.js +26 -26
  19. package/src/filiale/xinjiangdexin/telephone.js +16 -16
  20. package/src/filiale/xinliansihui/android/FaultAll.vue +923 -923
  21. package/src/filiale/xinliansihui/android/RepairFirstV.vue +734 -734
  22. package/src/filiale/xinliansihui/android/RepairOrderT.vue +713 -713
  23. package/src/main.js +24 -24
  24. package/src/telephone-android.js +425 -425
  25. package/src/telephone.js +796 -796
  26. package/src/components/pc/config/DefaultPrint.js +0 -7
  27. package/src/components/shaoguan/config/DefaultPrint.js +0 -7
@@ -1,887 +1,888 @@
1
- <template>
2
- <div style="height: auto;width: 100%" class="repair-bg">
3
- <div class="bq-parent">
4
- <blockquote style="color: #499edf;border-left-color: #499edf;font-size: 16px">
5
- <p>
6
- 待办工单<span v-if="rows">({{rows.length}}单)</span>
7
- <span v-if="!rows">(暂无待处理工单)</span>
8
- </p>
9
- </blockquote>
10
- </div>
11
-
12
- <div>
13
- <form>
14
- <!-- 查询条件-->
15
- <div class="row app-row">
16
- <div class="col-xs-4">
17
- <img src="../../../assets/用户姓名-蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
18
- <label class="font text-left">用户姓名:</label>
19
- </div>
20
- <div class="col-xs-8" >
21
- <input type="text" v-model="username" placeholder='用户姓名'
22
- class="search_input input-font" />
23
- </div>
24
- </div>
25
- <div class="row app-row">
26
- <div class="col-xs-4">
27
- <img src="../../../assets/用户姓名-蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
28
- <label class="font text-left">用户编号:</label>
29
- </div>
30
- <div class="col-xs-8" >
31
- <input type="text" v-model="f_userinfo_code" placeholder='用户编号'
32
- class="search_input input-font" />
33
- </div>
34
- </div>
35
- <div class="row app-row">
36
- <div class="col-xs-4">
37
- <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
38
- <label class="font text-left">用户地址:</label>
39
- </div>
40
- <div class="col-xs-8" >
41
- <input type="text" class="search_input input-font"
42
- v-model="address" placeholder='用户地址' />
43
- </div>
44
- </div>
45
- <div class="row app-row" v-if="worktype == '报修单'">
46
- <div class="col-xs-4">
47
- <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
48
- <label class="font text-left">所属小区:</label>
49
- </div>
50
- <div class="col-xs-8" >
51
- <v-select :value.sync="f_small_area"
52
- v-model="f_small_area"
53
- :options='areas'
54
- :value-single="true"
55
- placeholder='请选择'
56
- close-on-select
57
- ></v-select>
58
- </div>
59
- </div>
60
- <div class="row app-row" v-if="worktype == '报修单'">
61
- <div class="col-xs-4">
62
- <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
63
- <label class="font text-left">报修类型:</label>
64
- </div>
65
- <div class="col-xs-8" >
66
- <v-select :value.sync="repairtype"
67
- v-model="repairtype"
68
- :options='repairtypes'
69
- placeholder='请选择'
70
- close-on-select
71
- :multiple="true"
72
- ></v-select>
73
- </div>
74
- </div>
75
- <div class="row app-row">
76
- <div class="col-xs-4">
77
- <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
78
- <label class="font text-left">派单时间:</label>
79
- </div>
80
- <div class="col-xs-8" style="display: flex; justify-content: space-between;">
81
- <datepicker id="f_created_date_start"
82
- placeholder= '起始时间'
83
- :value.sync="f_created_date_start"
84
- :disabled-days-of-Week="[]"
85
- v-model="f_created_date_start"
86
- class="input-font"
87
- style="width:60%"
88
- condition="f_created_date > '{}'"
89
- :format="'yyyy-MM-dd 00:00:00'"
90
- :show-reset-button="reset">
91
- </datepicker>
92
- </div>
93
- </div>
94
- <div class="row app-row">
95
- <div class="col-xs-4">
96
- <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
97
- <label class="font text-left">派单时间:</label>
98
- </div>
99
- <div class="col-xs-8" style="display: flex; justify-content: space-between;">
100
- <datepicker id="f_created_date_end"
101
- placeholder= '结束时间'
102
- :value.sync="f_created_date_end"
103
- :disabled-days-of-Week="[]"
104
- v-model="f_created_date_end"
105
- class="input-font"
106
- style="width:60%"
107
- condition="f_created_date < '{}'"
108
- :format="'yyyy-MM-dd 23:59:00'"
109
- :show-reset-button="reset">
110
- </datepicker>
111
- </div>
112
- </div>
113
- <div class="row app-row">
114
- <div class="col-xs-4">
115
- <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
116
- <label class="font text-left">截止时间:</label>
117
- </div>
118
- <div class="col-xs-8" style="display: flex; justify-content: space-between;">
119
- <datepicker id="f_finish_date_start"
120
- placeholder= '起始时间'
121
- :value.sync="f_finish_date_start"
122
- :disabled-days-of-Week="[]"
123
- v-model="f_finish_date_start"
124
- class="input-font"
125
- style="width:60%"
126
- condition="f_finish_date > '{}'"
127
- :format="'yyyy-MM-dd 00:00:00'"
128
- :show-reset-button="reset">
129
- </datepicker>
130
- </div>
131
- </div>
132
- <div class="row app-row">
133
- <div class="col-xs-4">
134
- <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
135
- <label class="font text-left">截止时间:</label>
136
- </div>
137
- <div class="col-xs-8" style="display: flex; justify-content: space-between;">
138
- <datepicker id="f_finish_date_end"
139
- placeholder= '结束时间'
140
- :value.sync="f_finish_date_end"
141
- :disabled-days-of-Week="[]"
142
- v-model="f_finish_date_end"
143
- class="input-font"
144
- style="width:60%"
145
- condition="f_finish_date < '{}'"
146
- :format="'yyyy-MM-dd 23:59:00'"
147
- :show-reset-button="reset">
148
- </datepicker>
149
- </div>
150
- </div>
151
- <div class="row app-row">
152
- <div class="col-xs-4">
153
- <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
154
- <label class="font text-left">故障明细:</label>
155
- </div>
156
- <div class="col-xs-8">
157
- <input class="search_input input-font" v-model="failure" condition="failure like '%{}%'" />
158
- </div>
159
- </div>
160
- <div class="row app-row">
161
- <div class="col-xs-4">
162
- <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
163
- <label class="font text-left">工单备注:</label>
164
- </div>
165
- <div class="col-xs-8">
166
- <input class="search_input input-font" v-model="f_remarks" condition="f_remarks like '%{}%'" />
167
- </div>
168
- </div>
169
- <!-- 分割按钮和条件的高度 -->
170
- <div class="row app-row" style="height: 10px;"></div>
171
- <!-- 按钮 -->
172
- <div class="row text-center app-row">
173
- <button type="button" class="btn btn-lg btn-font btn-color" @click="ifsearch('')" style="min-width: 25%;">查询</button>
174
- <button type="button" class="btn btn-lg btn-font btn-color" @click='ifsearch(" and f_orderstatus!=null ")' style="min-width: 25%;">查询临时保存</button>
175
- <img style="float: right;margin-right: 3%;margin-top: -4px " @click="getNewOrder" src="../../../assets/shuaxindaiban1.png">
176
- </div>
177
- <div style="height:30px;" class="app-row"></div>
178
- </form>
179
- </div>
180
- <!-- 列表 -->
181
- <div class="panel panel-default repair-info-content auto">
182
- <div class="panel-body">
183
- <div class="panel panel-default well panel-blue-border" :class="row.failure.indexOf('漏气') !== -1 ? 'class-a':''" v-for="row in listData.list" >
184
- <div class="panel-body" style="padding: 10px">
185
- <div class="row form-group">
186
- <div class="col-sm-12 col-xs-12 col-md-12">
187
- <div class="row" >
188
- <span v-if="row.state==='延期申请'" style="color: darkred">该工单已提交延期处理请勿操作</span>
189
- <div :class="{'text-danger': row.f_remindersign}" class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
190
- 工单编号: {{row.f_service_id}}<span v-if="row.f_remindersign">(催单 {{row.f_reminderdata}}) </span>
191
- </div>
192
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
193
- 报修类型: {{row.f_repairtype}}
194
- </div>
195
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
196
- 派发时间: {{row.f_created_date}}
197
- </div>
198
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" v-if="row.f_finish_date">
199
- 截止天数: {{Math.floor((new Date(row.f_finish_date.substring(0,10)).getTime() - new Date(row.f_created_date.substring(0,10)).getTime()) / 86400000)}}
200
- </div>
201
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" v-if="row.f_finish_date">
202
- 截止日期: {{row.f_finish_date}}
203
- </div>
204
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" v-if="worktype == '报修单'">
205
- 维修类型: {{row.f_repairtype}}
206
- </div>
207
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" v-if="row.f_userinfo_code">
208
- 用户编号: {{row.f_userinfo_code}}
209
- </div>
210
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" v-if="row.f_enter_number">
211
- 用户证号: {{row.f_enter_number}}
212
- </div>
213
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
214
- 用户姓名: {{row.f_user_name}}
215
- </div>
216
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
217
- 来电电话: {{row.f_phone}}
218
- <img src="../../../assets/telphonesend.png" style="width: 12px;" @click.stop.prevent='makeAPhoneCall(row.f_phone)'>
219
- </div>
220
- <div class="col-sm-12 col-xs-12 col-md-12">
221
- 联系电话: {{row.f_contact_phone}}
222
- <img src="../../../assets/telphonesend.png" style="width: 12px;" @click.stop.prevent='makeAPhoneCall(row.f_contact_phone)'>
223
- </div>
224
- <div class="col-sm-12 col-xs-12 col-md-12">
225
- 备用电话: {{row.f_rent_phone}}
226
- <img src="../../../assets/telphonesend.png" style="width: 12px;" @click.stop.prevent='makeAPhoneCall(row.f_rent_phone)'>
227
- </div>
228
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
229
- 用户地址: {{row.f_address}}
230
- </div>
231
- <div v-show="row.f_advice" class="col-sm-12 col-xs-12 col-md-12" v-if="worktype == '报修单'">
232
- 指导建议: {{row.f_advice}}
233
- </div>
234
- <div v-show="row.f_remarks" class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
235
- 备注信息: {{row.f_remarks}}
236
- </div>
237
- <div v-show="row.f_yuyue_date" class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" v-if="row.f_yuyue_date !=null">
238
- 预约时间: {{row.f_yuyue_date}}
239
- </div>
240
- <div v-show="row.f_subsidiary1_path" class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" >
241
- 附件查看:
242
- <button type="button" name="button" class="btn btn-primary btn-sm" @click="showSubsidiaryPath(row)">查看</button>
243
- </div>
244
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" v-if="worktype == '报修单'">
245
- <failure-show :value='row.failure'>
246
- </failure-show>
247
- </div>
248
- </div>
249
- </div>
250
- <div class="col-sm-12 col-xs-12 col-md-12">
251
- <button type="button" name="button" class="btn btn-primary btn-sm" style="float: right" @click="selected(row)">处理</button>
252
- <button type="button" name="button" class="btn btn-primary btn-sm" style="float: right;margin-right:10px;" @click="sendback(row)">退回</button>
253
- <button type="button" name="button" class="btn btn-primary" style="background-color:#499edf;float: right;margin-right:10px;" @click="moveservice(row)">转单</button>
254
- <button type="button" name="button" class="btn btn-primary btn-sm" style="float: right;margin-right:10px;" v-if="false" @click="infoadd(row)">信息维护</button>
255
- <button type="button" name="button" class="btn btn-primary btn-sm" v-if="false"
256
- style="float: right;margin-right:10px;" @click="showend(row)">无法处理
257
- </button>
258
- </div>
259
- </div>
260
- </div>
261
- </div>
262
- <div style="height:auto;width: 100%;text-align: center">
263
- <a v-if="!listData.isEnd" @click="showMore()">展开更多......</a>
264
- <span v-if="listData.isEnd">到底了......</span>
265
- </div>
266
- </div>
267
- <modal :show.sync="moveshow" v-ref:modal :backdrop="false">
268
- <div slot="modal-header" class="modal-header">
269
- <h4 class="modal-title">
270
- 转单
271
- </h4>
272
- </div>
273
- <div slot="modal-body" class="modal-body">
274
- <div class="row" style="margin-top: 6px">
275
- <label class="col-xs-4 col-md-4 control-label font text-left">接单人</label>
276
- <div class="col-xs-8">
277
- <v-select :value="orderman" :value-single="true"
278
- :options='repairers' placeholder='请选择接单人'
279
- close-on-select v-on:change="repiarmancg"></v-select>
280
- </div>
281
- </div>
282
- <div class="row" style="margin-top: 6px">
283
- <label class="control-label font text-left col-md-4 col-xs-4">备注</label>
284
- <div class="col-xs-8 col-md-8">
285
- <input type="text" v-model="moveselected.f_remarks"/>
286
- </div>
287
- </div>
288
- </div>
289
- <div slot="modal-footer" class="modal-footer">
290
- <button type="button" class="btn btn-default" @click="movedo()">确定</button>
291
- <button type="button" class="btn btn-default" @click="undo()">取消</button>
292
- </div>
293
- </modal>
294
- <modal :show.sync="showinfo" v-ref:infomodal :backdrop="false">
295
- <div slot="modal-header" class="modal-header">
296
- <h4 class="modal-title">
297
- 工单信息维护
298
- </h4>
299
- </div>
300
- <div slot="modal-body" class="modal-body">
301
- <div class="row" style="margin-top: 6px">
302
- <label class="control-label font text-left col-md-4 col-xs-4">维护内容</label>
303
- <div class="col-xs-8 col-md-8">
304
- <input type="text" v-model="information"/>
305
- </div>
306
- </div>
307
- </div>
308
- <div slot="modal-footer" class="modal-footer">
309
- <button type="button" class="btn btn-default" @click="infoaddsure()">确定</button>
310
- <button type="button" class="btn btn-default" @click="infoclose()">取消</button>
311
- </div>
312
- </modal>
313
- <modal :show.sync="editflag" v-ref:infomodal :backdrop="false">
314
- <div slot="modal-header" class="modal-header">
315
- <h4 class="modal-title">
316
- 工单退回
317
- </h4>
318
- </div>
319
- <div slot="modal-body" class="modal-body">
320
- <div class="row" style="margin-top: 6px">
321
- <label class="col-xs-4 col-md-4 control-label font text-left">工单编号:</label>
322
- <span>{{ sendbackmodel.f_service_id }}</span>
323
- </div>
324
- <div class="row" style="margin-top: 6px">
325
- <label class="col-xs-4 col-md-4 control-label font text-left">客户名称:</label>
326
- <span>{{ sendbackmodel.f_user_name }}</span>
327
- </div>
328
- <div class="row" style="margin-top: 6px">
329
- <label class="control-label font text-left col-md-4 col-xs-4">退回原因</label>
330
- <div class="col-xs-8 col-md-8">
331
- <textarea style="width: 60%" name="name" rows="1" class="ver-textarea" type="text" v-model='f_site_back_reason'></textarea>
332
- </div>
333
- </div>
334
-
335
- </div>
336
- <div slot="modal-footer" class="modal-footer">
337
- <button :disabled="isDis" type="button" name="button" class="btn btn-primary btn-photo" @click="WorkBack()">确定</button>
338
- <button type="button" class="btn btn-default" @click="WorkBackclose()">取消</button>
339
- </div>
340
- </modal>
341
- <modal :show.sync="img_show" v-ref:infomodal :backdrop="false">
342
- <div slot="modal-header" class="modal-header">
343
- <h4 class="modal-title">
344
- 附件查看
345
- </h4>
346
- </div>
347
- <div slot="modal-body" class="modal-body">
348
- <div class="from-group">
349
- <div class="row">
350
- <div class="col-md-6" v-if="temp_row.f_subsidiary1_path">
351
- <img-self :width="300" :height="400" alt="无照片!!!" :src="'rs/image/file/'+temp_row.f_subsidiary1_path"></img-self>
352
- </div>
353
- <div class="col-md-6" v-if="temp_row.f_subsidiary2_path">
354
- <img-self :width="300" :height="400" alt="无照片!!!" :src="'rs/image/file/'+temp_row.f_subsidiary2_path"></img-self>
355
- </div>
356
- <div class="col-md-6" v-if="temp_row.f_subsidiary3_path">
357
- <img-self :width="300" :height="400" alt="无照片!!!" :src="'rs/image/file/'+temp_row.f_subsidiary3_path"></img-self>
358
- </div>
359
- </div>
360
- </div>
361
- </div>
362
- <div slot="modal-footer" class="modal-footer">
363
- <button type="button" name="button" class="btn btn-primary btn-photo" @click="img_show = false">确定</button>
364
- </div>
365
- </modal>
366
- </div>
367
- </div>
368
- </template>
369
- <script>
370
- import FailureShow from '../../../components/pc/FailureShow'
371
- import { HttpResetClass } from 'vue-client'
372
- import Vue from 'vue'
373
- // 工作类型对应的各项设置
374
- const config = {
375
- '报修单': {
376
- path: 'getServiceMobile'
377
- },
378
- '置换通气单': {
379
- path: 'getSubstitMobile'
380
- },
381
- '安装单': {
382
- path: 'getInstallMobile'
383
- }
384
- }
385
- export default{
386
- title: '维修员平板首页',
387
- data () {
388
- return {
389
- isDis:false,
390
- img_show:false,
391
- temp_row:{},
392
- // 单条记录
393
- sendbackmodel:{
394
- f_service_id:'',
395
- f_user_name:''
396
- },
397
- f_created_date_start: '',
398
- f_created_date_end: '',
399
- f_finish_date_start: '',
400
- f_finish_date_end: '',
401
- failure: '',
402
- f_remarks: '',
403
- // 退回原因
404
- f_site_back_reason:'',
405
- model: {
406
- serviceacitivity: [{
407
- f_site_back_date: '',
408
- f_site_back_name: '',
409
- serviceid: '',
410
- f_service_acitivity_type: '打回'
411
- }
412
- ]
413
- },
414
-
415
- // rows: Object
416
- rows: [{
417
- f_user_name:'',
418
- f_contact_phone:'',
419
- failure:''
420
- }],
421
- editshow:false,
422
- row:{
423
- type:Object,
424
- default:{
425
- f_user_name:'',
426
- f_contact_phone:'',
427
- failure:''
428
- }
429
- },
430
- repairtype:'',
431
- username:'',
432
- address:'',
433
- f_userinfo_code:'',
434
- f_small_area:'',
435
- areas:[],
436
- moveshow:false,
437
- repairers: [],
438
- repairtypes:this.$appdata.getParam('报修类型')?[{label: '全部', value: ''}, ...this.$appdata.getParam('报修类型')]:[{label: '全部', value: ''}],
439
- moveselected:'',
440
- orderman:'',
441
- number:0,
442
- listData: {
443
- list: [],
444
- isEnd: true,
445
- index: 0
446
- },
447
- loginUser:{
448
- name:Vue.user.name,
449
- ename:Vue.user.ename
450
- },
451
- infoone:'',
452
- showinfo:false,
453
- editflag:false,
454
- information:'',
455
- backservice:false,
456
- // 结案是否显示
457
- endshow:false,
458
- //结案备注
459
- f_caseremarks:'',
460
- // 当前处理的工单
461
- selectone:''
462
- }
463
- },
464
- props: {
465
- worktype:{
466
- type:String,
467
- default:'报修单'
468
- },
469
- sourcet:{
470
- type:String,
471
- default:'横屏'
472
- },
473
- tabname:{
474
- type:String
475
- }
476
- },
477
- methods: {
478
- select_search(){
479
- new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/af-telephone/rs/sql/safe_singleTable_OrderBy`, {data:{items:"*",tablename:"t_area",orderitem:"id",condition:`f_orgid = '${Vue.user.orgid}'`}}, {resolveMsg: null, rejectMsg: null}).then((res)=>{
480
- if(res.data.length>0){
481
- this.areas = []
482
- this.areas.push({label:"全部",value:""})
483
- res.data.forEach((result)=>{
484
- this.areas.push({label:result.f_residential_area,value:result.f_residential_area})
485
- })
486
- }
487
- })
488
- },
489
- showSubsidiaryPath(row){
490
- this.img_show = true
491
- this.temp_row = row
492
- },
493
- // 结案确认
494
- caseok(){
495
- let info = {
496
- id:this.selectone.id_back,
497
- f_state : '',
498
- f_processid: this.selectone.f_processid,
499
- f_orderstatus:'无法处理'
500
- }
501
- // 工单结案操作
502
- let data = {model: info, loginUser: {name: Vue.user.name, ename: Vue.user.ename},f_caseremarks:this.f_caseremarks}
503
- let http = new HttpResetClass()
504
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/af-telephone/rs/logic/serviceCase`, data, {
505
- resolveMsg: null,
506
- rejectMsg: null
507
- }).then(() => {
508
- this.$showMessage('结案成功!')
509
- this.f_caseremarks = ''
510
- // 刷新界面
511
- this.getNewOrder()
512
- })
513
- },
514
- // 结案返回
515
- caseclose(){
516
- this.f_caseremarks = ''
517
- this.editflag = null
518
- },
519
- showend(row){
520
- this.selectone = row
521
- this.endshow = true
522
- },
523
- WorkBack () {
524
- this.isDis=true
525
- this.model=this.sendbackmodel
526
- this.model.serviceacitivity = [{
527
- f_site_back_date: '',
528
- f_site_back_name: '',
529
- serviceid: '',
530
- f_site_back_reason:this.f_site_back_reason,
531
- f_service_acitivity_type: ''
532
- }
533
- ]
534
- if(!this.f_site_back_reason){
535
- this.isDis=false
536
- return this.$showMessage('请填写退回内容!')
537
- }
538
- let data = ''
539
- data = {
540
- model: this.model,
541
- loginUser: {name: Vue.user.name, ename: Vue.user.name, id: Vue.user.id}
542
- }
543
- console.log("退回参数"+JSON.stringify(data))
544
- let http = new HttpResetClass()
545
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/af-telephone/rs/logic/sendBack`, data, {resolveMsg: null, rejectMsg: null}).then(() => {
546
- this.$showMessage('退回成功!!!')
547
- this.isDis=false
548
- this.f_site_back_reason = ''
549
- this.editflag =false
550
- this.getNewOrder()
551
- })
552
- },
553
- WorkBackclose(){
554
- this.editflag = false
555
- },
556
- //信息维护,需要在手机端显示,暂时没有显示的地方,后续需要增加,是否考虑先调用本地logic,信息给本地也存,这样本地才能看到
557
- infoaddsure(){
558
- if(!this.information){
559
- return this.$showMessage('请填写维护内容!',['confirm'])
560
- }
561
- // 组装数据
562
- var data = {
563
- id :this.infoone.id_back,
564
- f_processid:this.infoone.f_processid,
565
- f_content:this.information,
566
- serviceacitivity : [{}]
567
- }
568
- let http = new HttpResetClass()
569
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/af-telephone/rs/logic/telinformation`, {model: data, loginUser: this.loginUser,dotype:'mobile'}, {resolveMsg: null, rejectMsg: null}).then(() => {
570
- this.$showMessage('维护内容添加成功!',['confirm'])
571
- this.information = ''
572
- this.showinfo =false
573
- })
574
- },
575
- infoclose(){
576
- this.showinfo = false
577
- },
578
- infoadd(val){
579
- this.infoone =val
580
- this.showinfo = true
581
- },
582
- repiarmancg(val){
583
- this.orderman = val
584
- },
585
- movedo(){
586
- if(this.orderman == undefined || this.orderman == '' ){
587
- this.$showMessage(`请先选择接单人!`, ['confirm'])
588
- return
589
- }
590
- //tag
591
- //tag)
592
- let result = this.$androidUtil.bzLogic('androidMoveService', {id_back: this.moveselected.id_back, f_reciever: this.orderman,f_remarks:this.moveselected.f_remarks,worktype:this.worktype})
593
- if (result.result === '成功') {
594
- this.$showMessage(`向 ${this.orderman} 转单成功!`, ['confirm'])
595
- this.orderman = ''
596
- this.moveselected = ''
597
- this.moveshow = false
598
- this.ifsearch()
599
- } else {
600
- this.$showMessage(`转单失败,请检查网络异常!`, ['confirm'])
601
- }
602
-
603
- },
604
- undo(){
605
- this.orderman = ''
606
- this.moveselected = ''
607
- this.moveshow = false
608
- },
609
- getEmp () {
610
- // 获取接单人数组
611
- let val = ''
612
- var worktypew = this.worktype == '报修单' ? '维修员':this.worktype == '置换员'?'置换员':'安装员'
613
- let http = new HttpResetClass()
614
- //tag)
615
- val = {source: `this.getParentByType($organization$).getChildByName($${worktypew}$).getUsers()`, userid: `${Vue.user.id}`}
616
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/search`, {data: val}, {resolveMsg: null, rejectMsg: null}).then((res) => {
617
- res.data.forEach((item) => {
618
- if (item.state == '在职' || item.status == 0) {
619
- this.repairers.push({label: `${item.name}`, value: item.name})
620
- }
621
- })
622
- })
623
- },
624
- ifsearch(condition){
625
- this.listData.list = []
626
- this.listData.index = 0
627
- this.listData.isEnd = true
628
- if (!condition) {
629
- condition = ''
630
- }
631
- condition = '1 = 1 ' + condition
632
- if(this.username != ''){
633
- condition += " and f_user_name like '%" + this.username + "%'"
634
- }
635
- if(this.address != ''){
636
- condition += " and f_address like '%" + this.address + "%'"
637
- }
638
- if(this.f_small_area != ''){
639
- condition += " and f_small_area = '" + this.f_small_area + "'"
640
- }
641
- if(this.f_userinfo_code != ''){
642
- condition += " and f_userinfo_code = '" + this.f_userinfo_code + "'"
643
- }
644
- if(this.repairtype.length > 0){
645
- condition += " and f_repairtype in (" + this.repairtype.map(item=>{return `'${item}'`}).join() + ")"
646
- }
647
- if (this.f_created_date_start) {
648
- condition += ` and f_created_date >= '${this.f_created_date_start}'`
649
- }
650
- if (this.f_created_date_end) {
651
- condition += ` and f_created_date <= '${this.f_created_date_end}'`
652
- }
653
- if (this.f_finish_date_start) {
654
- condition += ` and f_finish_date >= '${this.f_finish_date_start}'`
655
- }
656
- if (this.f_finish_date_end) {
657
- condition += ` and f_finish_date <= '${this.f_finish_date_end}'`
658
- }
659
- if (this.failure) {
660
- condition += ` and failure like '%${this.failure}%'`
661
- }
662
- if (this.f_remarks) {
663
- condition += ` and f_remarks like '%${this.f_remarks}%'`
664
- }
665
- //tag
666
- //tag
667
- // 测试环境异步,真实环境同步
668
- if (this.$androidUtil.isTest) {
669
- return this.$androidUtil.path({'alias':`${config[this.worktype].path}`,'data':{condition:condition}}).then((ret) => {
670
- this.rows = ret.data
671
- })
672
- } else {
673
- let result = this.$androidUtil.path({'alias':`${config[this.worktype].path}`,'data':{condition:condition}})
674
- if (result.code === 200) {
675
- this.rows = result.data
676
- } else {
677
- this.$showMessage(`加载数据失败, 返回码: ${result.code}, 错误信息:${result.data}`)
678
- }
679
- }
680
- this.showMore()
681
- },
682
- selected (row) {
683
- var prpdata = {
684
- _this:this,
685
- title:'入户维修',
686
- safe:true
687
- }
688
- this.$dispatch('gotoson',prpdata)
689
- if(this.sourcet == '横屏'){
690
- this.$goto('repair-order', {row: row,worktype:this.worktype},'self',this.ifsearch)
691
- }else{
692
- this.$goto('repair-orderV', {row: row,worktype:this.worktype},'self',this.ifsearch)
693
- }
694
- },
695
- sendback(row){
696
- this.$showMessage('退回后数据不可恢复,确认退回操作吗?', ['confirm', 'cancel'],{resolveMsg: null, rejectMsg: null}).then((res) => {
697
- if (res === 'confirm') {
698
- this.editflag = true
699
- this.sendbackmodel = row
700
- console.log("需要的参数"+JSON.stringify( this.sendbackmodel))
701
- }else {
702
- this.editflag = false
703
- }
704
- })
705
- },
706
- moveservice(row){
707
- this.moveselected = row
708
- this.moveshow = true
709
- },
710
- delayedit (row) {
711
- row.state = '延期申请'
712
- this.$goto('delay-apply', {row:row})
713
- },
714
- search () {
715
- // 测试环境异步,真实环境同步
716
- var condition = '1 = 1'
717
- //tag
718
- if (this.$androidUtil.isTest) {
719
- return this.$androidUtil.path({'alias':`${config[this.worktype].path}`,'data':{condition:condition}}).then((ret) => {
720
- // ret.data.forEach((item) => {
721
- // item.service_version = item.failure.indexOf("漏气") !== -1
722
- // })
723
- this.rows = ret.data
724
- })
725
- } else {
726
- let result = this.$androidUtil.path({'alias':`${config[this.worktype].path}`,'data':{condition:condition}})
727
- if (result.code === 200) {
728
- //tag)
729
- this.rows = result.data
730
- } else {
731
- this.$showMessage(`加载数据失败, 返回码: ${result.code}, 错误信息:${result.data}`)
732
- }
733
- }
734
- },
735
- sumsearch () {
736
- // 测试环境异步,真实环境同步
737
- var condition = '1 = 1'
738
- //tag
739
- if (this.$androidUtil.isTest) {
740
- return this.$androidUtil.path({'alias':`${config[this.worktype].path}`,'data':{condition:condition}}).then((ret) => {
741
- // ret.data.forEach((item) => {
742
- // item.service_version = item.failure.indexOf("漏气") !== -1
743
- // })
744
- var titdata = {
745
- title:this.tabname,
746
- sum:ret.data.length
747
- }
748
- //tag
749
- //tag)
750
- this.$emit('changesum',titdata)
751
- })
752
- } else {
753
- let result = this.$androidUtil.path({'alias':`${config[this.worktype].path}`,'data':{condition:condition}})
754
- if (result.code === 200) {
755
- //tag)
756
- var crv = {
757
- title:this.tabname,
758
- sum:result.data.length
759
- }
760
- //tag
761
- //tag)
762
- this.$emit('changesum',crv)
763
- } else {
764
- this.$showMessage(`加载数据失败, 返回码: ${result.code}, 错误信息:${result.data}`)
765
- }
766
- }
767
- },
768
- makeAPhoneCall(phoneNumber) {
769
- this.$androidUtil.makeAPhoneCall(phoneNumber)
770
- },
771
- upload () {
772
- this.$goto('up-load')
773
- },
774
- back () {
775
- this.$back()
776
- },
777
- getNewOrder(){
778
- HostApp.__this__ = this
779
- HostApp.logicWithHint({
780
- // logic别名,key必须为logic
781
- 'logic': 'TelServiceTimeOut',
782
- // 回调执行方法名,key必须为callback
783
- 'callback': 'javascript:HostApp.__this__.getNewCallBack()',
784
- // logic执行需要的业务参数
785
- 'data': {params: ''},
786
- // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
787
- // 执行回调方法传入key为backresult
788
- // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
789
- 'backresult': 1
790
- })
791
- },
792
- getNewCallBack(obj){
793
- //tag)
794
- this.ifsearch()
795
- },
796
- showMore() {
797
- if (!this.rows) {
798
- return
799
- }
800
- let endIndex = this.listData.index + 10
801
- if (endIndex > this.rows.length) {
802
- endIndex = this.rows.length
803
- }
804
- for (; this.listData.index < endIndex; this.listData.index++) {
805
- this.listData.list.push(this.rows[this.listData.index])
806
- }
807
- if(this.listData.index == this.rows.length){
808
- this.listData.isEnd = true
809
- }else {
810
- this.listData.isEnd = false
811
- }
812
- }
813
- },
814
- ready () {
815
- let backservices
816
- backservices=this.$appdata.getSingleValue('维修转单')
817
- console.log("参数为:::"+backservices)
818
- if(backservices==='true'||backservices===''){
819
- this.backservice = ''
820
- }else {
821
- this.backservice = '是'
822
- }
823
- this.getEmp()
824
- this.ifsearch()
825
- this.select_search()
826
- // var _this = this;
827
- // this.timeoutHandle = window.setInterval(function() {
828
- // _this.sumsearch()
829
- // }, 6000)
830
- },
831
- components: {
832
- FailureShow,
833
- 'failure-show': FailureShow
834
- }
835
- }
836
- </script>
837
- <style scoped>
838
- .searBtn {
839
- background: #FFFFFF;
840
- color: #0096fb;
841
- border: 1px solid #0096fb;
842
- border-radius: 5px;
843
- padding: 8px;
844
- text-align: center;
845
- font-size: 1.2em;
846
- z-index: 10;
847
- opacity:0.5;
848
- bottom: 50px;
849
- margin-top: -10px;
850
- height: 40px;
851
- }
852
- .bg {
853
- background-color: #499edf;
854
- height: 1px;
855
- border: 0;
856
- }
857
- .app-row {
858
- background-color: white;
859
- padding: 10px 10px 0 10px;
860
- border-bottom: 1px solid rgba(235, 235, 235, 0.5);
861
- }
862
- .search_input {
863
- border: 0;
864
- outline: none;
865
- }
866
- .font{
867
- font: 15px PingFang-SC-Medium;
868
- color: #666666;
869
- }
870
- .input-font{
871
- font: 15px PingFang-SC-Medium;
872
- color: #333333;
873
- }
874
- .btn-font{
875
- font:600 16px PingFang-SC-Bold;
876
- color: #499EDF;
877
- }
878
- .btn-color{
879
- background-color: #FFFFFF;
880
- border-radius: 10px ;
881
- border: 1px solid #499EDF;
882
- }
883
- .panel-blue-border {
884
- border: 1px solid #499edf;
885
- border-radius: 5px;
886
- }
887
- </style>
1
+ <template>
2
+ <div style="height: auto;width: 100%" class="repair-bg">
3
+ <div class="bq-parent">
4
+ <blockquote style="color: #499edf;border-left-color: #499edf;font-size: 16px">
5
+ <p>
6
+ 待办工单<span v-if="rows">({{rows.length}}单)</span>
7
+ <span v-if="!rows">(暂无待处理工单)</span>
8
+ </p>
9
+ </blockquote>
10
+ </div>
11
+
12
+ <div>
13
+ <form>
14
+ <!-- 查询条件-->
15
+ <div class="row app-row">
16
+ <div class="col-xs-4">
17
+ <img src="../../../assets/用户姓名-蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
18
+ <label class="font text-left">用户姓名:</label>
19
+ </div>
20
+ <div class="col-xs-8" >
21
+ <input type="text" v-model="username" placeholder='用户姓名'
22
+ class="search_input input-font" />
23
+ </div>
24
+ </div>
25
+ <div class="row app-row">
26
+ <div class="col-xs-4">
27
+ <img src="../../../assets/用户姓名-蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
28
+ <label class="font text-left">用户编号:</label>
29
+ </div>
30
+ <div class="col-xs-8" >
31
+ <input type="text" v-model="f_userinfo_code" placeholder='用户编号'
32
+ class="search_input input-font" />
33
+ </div>
34
+ </div>
35
+ <div class="row app-row">
36
+ <div class="col-xs-4">
37
+ <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
38
+ <label class="font text-left">用户地址:</label>
39
+ </div>
40
+ <div class="col-xs-8" >
41
+ <input type="text" class="search_input input-font"
42
+ v-model="address" placeholder='用户地址' />
43
+ </div>
44
+ </div>
45
+ <div class="row app-row" v-if="worktype == '报修单'">
46
+ <div class="col-xs-4">
47
+ <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
48
+ <label class="font text-left">所属小区:</label>
49
+ </div>
50
+ <div class="col-xs-8" >
51
+ <v-select :value.sync="f_small_area"
52
+ v-model="f_small_area"
53
+ :options='areas'
54
+ :value-single="true"
55
+ placeholder='请选择'
56
+ close-on-select
57
+ ></v-select>
58
+ </div>
59
+ </div>
60
+ <div class="row app-row" v-if="worktype == '报修单'">
61
+ <div class="col-xs-4">
62
+ <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
63
+ <label class="font text-left">报修类型:</label>
64
+ </div>
65
+ <div class="col-xs-8" >
66
+ <v-select :value.sync="repairtype"
67
+ v-model="repairtype"
68
+ :options='repairtypes'
69
+ placeholder='请选择'
70
+ close-on-select
71
+ :multiple="true"
72
+ ></v-select>
73
+ </div>
74
+ </div>
75
+ <div class="row app-row">
76
+ <div class="col-xs-4">
77
+ <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
78
+ <label class="font text-left">派单时间:</label>
79
+ </div>
80
+ <div class="col-xs-8" style="display: flex; justify-content: space-between;">
81
+ <datepicker id="f_created_date_start"
82
+ placeholder= '起始时间'
83
+ :value.sync="f_created_date_start"
84
+ :disabled-days-of-Week="[]"
85
+ v-model="f_created_date_start"
86
+ class="input-font"
87
+ style="width:60%"
88
+ condition="f_created_date > '{}'"
89
+ :format="'yyyy-MM-dd 00:00:00'"
90
+ :show-reset-button="reset">
91
+ </datepicker>
92
+ </div>
93
+ </div>
94
+ <div class="row app-row">
95
+ <div class="col-xs-4">
96
+ <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
97
+ <label class="font text-left">派单时间:</label>
98
+ </div>
99
+ <div class="col-xs-8" style="display: flex; justify-content: space-between;">
100
+ <datepicker id="f_created_date_end"
101
+ placeholder= '结束时间'
102
+ :value.sync="f_created_date_end"
103
+ :disabled-days-of-Week="[]"
104
+ v-model="f_created_date_end"
105
+ class="input-font"
106
+ style="width:60%"
107
+ condition="f_created_date < '{}'"
108
+ :format="'yyyy-MM-dd 23:59:00'"
109
+ :show-reset-button="reset">
110
+ </datepicker>
111
+ </div>
112
+ </div>
113
+ <div class="row app-row">
114
+ <div class="col-xs-4">
115
+ <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
116
+ <label class="font text-left">截止时间:</label>
117
+ </div>
118
+ <div class="col-xs-8" style="display: flex; justify-content: space-between;">
119
+ <datepicker id="f_finish_date_start"
120
+ placeholder= '起始时间'
121
+ :value.sync="f_finish_date_start"
122
+ :disabled-days-of-Week="[]"
123
+ v-model="f_finish_date_start"
124
+ class="input-font"
125
+ style="width:60%"
126
+ condition="f_finish_date > '{}'"
127
+ :format="'yyyy-MM-dd 00:00:00'"
128
+ :show-reset-button="reset">
129
+ </datepicker>
130
+ </div>
131
+ </div>
132
+ <div class="row app-row">
133
+ <div class="col-xs-4">
134
+ <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
135
+ <label class="font text-left">截止时间:</label>
136
+ </div>
137
+ <div class="col-xs-8" style="display: flex; justify-content: space-between;">
138
+ <datepicker id="f_finish_date_end"
139
+ placeholder= '结束时间'
140
+ :value.sync="f_finish_date_end"
141
+ :disabled-days-of-Week="[]"
142
+ v-model="f_finish_date_end"
143
+ class="input-font"
144
+ style="width:60%"
145
+ condition="f_finish_date < '{}'"
146
+ :format="'yyyy-MM-dd 23:59:00'"
147
+ :show-reset-button="reset">
148
+ </datepicker>
149
+ </div>
150
+ </div>
151
+ <div class="row app-row">
152
+ <div class="col-xs-4">
153
+ <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
154
+ <label class="font text-left">故障明细:</label>
155
+ </div>
156
+ <div class="col-xs-8">
157
+ <input class="search_input input-font" v-model="failure" condition="failure like '%{}%'" />
158
+ </div>
159
+ </div>
160
+ <div class="row app-row">
161
+ <div class="col-xs-4">
162
+ <img src="../../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
163
+ <label class="font text-left">工单备注:</label>
164
+ </div>
165
+ <div class="col-xs-8">
166
+ <input class="search_input input-font" v-model="f_remarks" condition="f_remarks like '%{}%'" />
167
+ </div>
168
+ </div>
169
+ <!-- 分割按钮和条件的高度 -->
170
+ <div class="row app-row" style="height: 10px;"></div>
171
+ <!-- 按钮 -->
172
+ <div class="row text-center app-row">
173
+ <button type="button" class="btn btn-lg btn-font btn-color" @click="ifsearch('')" style="min-width: 25%;">查询</button>
174
+ <button type="button" class="btn btn-lg btn-font btn-color" @click='ifsearch(" and f_orderstatus!=null ")' style="min-width: 25%;">查询临时保存</button>
175
+ <img style="float: right;margin-right: 3%;margin-top: -4px " @click="getNewOrder" src="../../../assets/shuaxindaiban1.png">
176
+ </div>
177
+ <div style="height:30px;" class="app-row"></div>
178
+ </form>
179
+ </div>
180
+ <!-- 列表 -->
181
+ <div class="panel panel-default repair-info-content auto">
182
+ <div class="panel-body">
183
+ <div class="panel panel-default well panel-blue-border" :class="row.failure.indexOf('漏气') !== -1 ? 'class-a':''" v-for="row in listData.list" >
184
+ <div class="panel-body" style="padding: 10px">
185
+ <div class="row form-group">
186
+ <div class="col-sm-12 col-xs-12 col-md-12">
187
+ <div class="row" >
188
+ <span v-if="row.state==='延期申请'" style="color: darkred">该工单已提交延期处理请勿操作</span>
189
+ <div :class="{'text-danger': row.f_remindersign}" class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
190
+ 工单编号: {{row.f_service_id}}<span v-if="row.f_remindersign">(催单 {{row.f_reminderdata}}) </span>
191
+ </div>
192
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
193
+ 报修类型: {{row.f_repairtype}}
194
+ </div>
195
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
196
+ 派发时间: {{row.f_created_date}}
197
+ </div>
198
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" v-if="row.f_finish_date">
199
+ 截止天数: {{Math.floor((new Date(row.f_finish_date.substring(0,10)).getTime() - new Date(row.f_created_date.substring(0,10)).getTime()) / 86400000)}}
200
+ </div>
201
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" v-if="row.f_finish_date">
202
+ 截止日期: {{row.f_finish_date}}
203
+ </div>
204
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" v-if="worktype == '报修单'">
205
+ 维修类型: {{row.f_repairtype}}
206
+ </div>
207
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" v-if="row.f_userinfo_code">
208
+ 用户编号: {{row.f_userinfo_code}}
209
+ </div>
210
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" v-if="row.f_enter_number">
211
+ 用户证号: {{row.f_enter_number}}
212
+ </div>
213
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
214
+ 用户姓名: {{row.f_user_name}}
215
+ </div>
216
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
217
+ 来电电话: {{row.f_phone}}
218
+ <img src="../../../assets/telphonesend.png" style="width: 12px;" @click.stop.prevent='makeAPhoneCall(row.f_phone)'>
219
+ </div>
220
+ <div class="col-sm-12 col-xs-12 col-md-12">
221
+ 联系电话: {{row.f_contact_phone}}
222
+ <img src="../../../assets/telphonesend.png" style="width: 12px;" @click.stop.prevent='makeAPhoneCall(row.f_contact_phone)'>
223
+ </div>
224
+ <div class="col-sm-12 col-xs-12 col-md-12">
225
+ 备用电话: {{row.f_rent_phone}}
226
+ <img src="../../../assets/telphonesend.png" style="width: 12px;" @click.stop.prevent='makeAPhoneCall(row.f_rent_phone)'>
227
+ </div>
228
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
229
+ 用户地址: {{row.f_address}}
230
+ </div>
231
+ <div v-show="row.f_advice" class="col-sm-12 col-xs-12 col-md-12" v-if="worktype == '报修单'">
232
+ 指导建议: {{row.f_advice}}
233
+ </div>
234
+ <div v-show="row.f_remarks" class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
235
+ 备注信息: {{row.f_remarks}}
236
+ </div>
237
+ <div v-show="row.f_yuyue_date" class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" v-if="row.f_yuyue_date !=null">
238
+ 预约时间: {{row.f_yuyue_date}}
239
+ </div>
240
+ <div v-show="row.f_subsidiary1_path" class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" >
241
+ 附件查看:
242
+ <button type="button" name="button" class="btn btn-primary btn-sm" @click="showSubsidiaryPath(row)">查看</button>
243
+ </div>
244
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" v-if="worktype == '报修单'">
245
+ <failure-show :value='row.failure'>
246
+ </failure-show>
247
+ </div>
248
+ </div>
249
+ </div>
250
+ <div class="col-sm-12 col-xs-12 col-md-12">
251
+ <button type="button" name="button" class="btn btn-primary btn-sm" style="float: right" @click="selected(row)">处理</button>
252
+ <button type="button" name="button" class="btn btn-primary btn-sm" style="float: right;margin-right:10px;" @click="sendback(row)">退回</button>
253
+ <button type="button" name="button" class="btn btn-primary" style="background-color:#499edf;float: right;margin-right:10px;" @click="moveservice(row)">转单</button>
254
+ <button type="button" name="button" class="btn btn-primary btn-sm" style="float: right;margin-right:10px;" v-if="false" @click="infoadd(row)">信息维护</button>
255
+ <button type="button" name="button" class="btn btn-primary btn-sm" v-if="false"
256
+ style="float: right;margin-right:10px;" @click="showend(row)">无法处理
257
+ </button>
258
+ </div>
259
+ </div>
260
+ </div>
261
+ </div>
262
+ <div style="height:auto;width: 100%;text-align: center">
263
+ <a v-if="!listData.isEnd" @click="showMore()">展开更多......</a>
264
+ <span v-if="listData.isEnd">到底了......</span>
265
+ </div>
266
+ </div>
267
+ <modal :show.sync="moveshow" v-ref:modal :backdrop="false">
268
+ <div slot="modal-header" class="modal-header">
269
+ <h4 class="modal-title">
270
+ 转单
271
+ </h4>
272
+ </div>
273
+ <div slot="modal-body" class="modal-body">
274
+ <div class="row" style="margin-top: 6px">
275
+ <label class="col-xs-4 col-md-4 control-label font text-left">接单人</label>
276
+ <div class="col-xs-8">
277
+ <v-select :value="orderman" :value-single="true"
278
+ :options='repairers' placeholder='请选择接单人'
279
+ close-on-select v-on:change="repiarmancg"></v-select>
280
+ </div>
281
+ </div>
282
+ <div class="row" style="margin-top: 6px">
283
+ <label class="control-label font text-left col-md-4 col-xs-4">备注</label>
284
+ <div class="col-xs-8 col-md-8">
285
+ <input type="text" v-model="moveselected.f_remarks"/>
286
+ </div>
287
+ </div>
288
+ </div>
289
+ <div slot="modal-footer" class="modal-footer">
290
+ <button type="button" class="btn btn-default" @click="movedo()">确定</button>
291
+ <button type="button" class="btn btn-default" @click="undo()">取消</button>
292
+ </div>
293
+ </modal>
294
+ <modal :show.sync="showinfo" v-ref:infomodal :backdrop="false">
295
+ <div slot="modal-header" class="modal-header">
296
+ <h4 class="modal-title">
297
+ 工单信息维护
298
+ </h4>
299
+ </div>
300
+ <div slot="modal-body" class="modal-body">
301
+ <div class="row" style="margin-top: 6px">
302
+ <label class="control-label font text-left col-md-4 col-xs-4">维护内容</label>
303
+ <div class="col-xs-8 col-md-8">
304
+ <input type="text" v-model="information"/>
305
+ </div>
306
+ </div>
307
+ </div>
308
+ <div slot="modal-footer" class="modal-footer">
309
+ <button type="button" class="btn btn-default" @click="infoaddsure()">确定</button>
310
+ <button type="button" class="btn btn-default" @click="infoclose()">取消</button>
311
+ </div>
312
+ </modal>
313
+ <modal :show.sync="editflag" v-ref:infomodal :backdrop="false">
314
+ <div slot="modal-header" class="modal-header">
315
+ <h4 class="modal-title">
316
+ 工单退回
317
+ </h4>
318
+ </div>
319
+ <div slot="modal-body" class="modal-body">
320
+ <div class="row" style="margin-top: 6px">
321
+ <label class="col-xs-4 col-md-4 control-label font text-left">工单编号:</label>
322
+ <span>{{ sendbackmodel.f_service_id }}</span>
323
+ </div>
324
+ <div class="row" style="margin-top: 6px">
325
+ <label class="col-xs-4 col-md-4 control-label font text-left">客户名称:</label>
326
+ <span>{{ sendbackmodel.f_user_name }}</span>
327
+ </div>
328
+ <div class="row" style="margin-top: 6px">
329
+ <label class="control-label font text-left col-md-4 col-xs-4">退回原因</label>
330
+ <div class="col-xs-8 col-md-8">
331
+ <textarea style="width: 60%" name="name" rows="1" class="ver-textarea" type="text" v-model='f_site_back_reason'></textarea>
332
+ </div>
333
+ </div>
334
+
335
+ </div>
336
+ <div slot="modal-footer" class="modal-footer">
337
+ <button :disabled="isDis" type="button" name="button" class="btn btn-primary btn-photo" @click="WorkBack()">确定</button>
338
+ <button type="button" class="btn btn-default" @click="WorkBackclose()">取消</button>
339
+ </div>
340
+ </modal>
341
+ <modal :show.sync="img_show" v-ref:infomodal :backdrop="false">
342
+ <div slot="modal-header" class="modal-header">
343
+ <h4 class="modal-title">
344
+ 附件查看
345
+ </h4>
346
+ </div>
347
+ <div slot="modal-body" class="modal-body">
348
+ <div class="from-group">
349
+ <div class="row">
350
+ <div class="col-md-6" v-if="temp_row.f_subsidiary1_path">
351
+ <img-self :width="300" :height="400" alt="无照片!!!" :src="'rs/image/file/'+temp_row.f_subsidiary1_path"></img-self>
352
+ </div>
353
+ <div class="col-md-6" v-if="temp_row.f_subsidiary2_path">
354
+ <img-self :width="300" :height="400" alt="无照片!!!" :src="'rs/image/file/'+temp_row.f_subsidiary2_path"></img-self>
355
+ </div>
356
+ <div class="col-md-6" v-if="temp_row.f_subsidiary3_path">
357
+ <img-self :width="300" :height="400" alt="无照片!!!" :src="'rs/image/file/'+temp_row.f_subsidiary3_path"></img-self>
358
+ </div>
359
+ </div>
360
+ </div>
361
+ </div>
362
+ <div slot="modal-footer" class="modal-footer">
363
+ <button type="button" name="button" class="btn btn-primary btn-photo" @click="img_show = false">确定</button>
364
+ </div>
365
+ </modal>
366
+ </div>
367
+ </div>
368
+ </template>
369
+ <script>
370
+ import FailureShow from '../../../components/pc/FailureShow'
371
+ import { HttpResetClass } from 'vue-client'
372
+ import Vue from 'vue'
373
+ // 工作类型对应的各项设置
374
+ const config = {
375
+ '报修单': {
376
+ path: 'getServiceMobile'
377
+ },
378
+ '置换通气单': {
379
+ path: 'getSubstitMobile'
380
+ },
381
+ '安装单': {
382
+ path: 'getInstallMobile'
383
+ }
384
+ }
385
+ export default{
386
+ title: '维修员平板首页',
387
+ data () {
388
+ return {
389
+ isDis:false,
390
+ img_show:false,
391
+ temp_row:{},
392
+ // 单条记录
393
+ sendbackmodel:{
394
+ f_service_id:'',
395
+ f_user_name:''
396
+ },
397
+ f_created_date_start: '',
398
+ f_created_date_end: '',
399
+ f_finish_date_start: '',
400
+ f_finish_date_end: '',
401
+ failure: '',
402
+ f_remarks: '',
403
+ // 退回原因
404
+ f_site_back_reason:'',
405
+ model: {
406
+ serviceacitivity: [{
407
+ f_site_back_date: '',
408
+ f_site_back_name: '',
409
+ serviceid: '',
410
+ f_service_acitivity_type: '打回'
411
+ }
412
+ ]
413
+ },
414
+
415
+ // rows: Object
416
+ rows: [{
417
+ f_user_name:'',
418
+ f_contact_phone:'',
419
+ failure:''
420
+ }],
421
+ editshow:false,
422
+ row:{
423
+ type:Object,
424
+ default:{
425
+ f_user_name:'',
426
+ f_contact_phone:'',
427
+ failure:''
428
+ }
429
+ },
430
+ repairtype:'',
431
+ username:'',
432
+ address:'',
433
+ f_userinfo_code:'',
434
+ f_small_area:'',
435
+ areas:[],
436
+ moveshow:false,
437
+ repairers: [],
438
+ repairtypes:this.$appdata.getParam('报修类型')?[{label: '全部', value: ''}, ...this.$appdata.getParam('报修类型')]:[{label: '全部', value: ''}],
439
+ moveselected:'',
440
+ orderman:'',
441
+ number:0,
442
+ listData: {
443
+ list: [],
444
+ isEnd: true,
445
+ index: 0
446
+ },
447
+ loginUser:{
448
+ name:Vue.user.name,
449
+ ename:Vue.user.ename
450
+ },
451
+ infoone:'',
452
+ showinfo:false,
453
+ editflag:false,
454
+ information:'',
455
+ backservice:false,
456
+ // 结案是否显示
457
+ endshow:false,
458
+ //结案备注
459
+ f_caseremarks:'',
460
+ // 当前处理的工单
461
+ selectone:''
462
+ }
463
+ },
464
+ props: {
465
+ worktype:{
466
+ type:String,
467
+ default:'报修单'
468
+ },
469
+ sourcet:{
470
+ type:String,
471
+ default:'横屏'
472
+ },
473
+ tabname:{
474
+ type:String
475
+ }
476
+ },
477
+ methods: {
478
+ select_search(){
479
+ new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/af-telephone/rs/sql/safe_singleTable_OrderBy`, {data:{items:"*",tablename:"t_area",orderitem:"id",condition:`f_orgid = '${Vue.user.orgid}'`}}, {resolveMsg: null, rejectMsg: null}).then((res)=>{
480
+ if(res.data.length>0){
481
+ this.areas = []
482
+ this.areas.push({label:"全部",value:""})
483
+ res.data.forEach((result)=>{
484
+ this.areas.push({label:result.f_residential_area,value:result.f_residential_area})
485
+ })
486
+ }
487
+ })
488
+ },
489
+ showSubsidiaryPath(row){
490
+ this.img_show = true
491
+ this.temp_row = row
492
+ },
493
+ // 结案确认
494
+ caseok(){
495
+ let info = {
496
+ id:this.selectone.id_back,
497
+ f_state : '',
498
+ f_processid: this.selectone.f_processid,
499
+ f_orderstatus:'无法处理'
500
+ }
501
+ // 工单结案操作
502
+ let data = {model: info, loginUser: {name: Vue.user.name, ename: Vue.user.ename},f_caseremarks:this.f_caseremarks}
503
+ let http = new HttpResetClass()
504
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/af-telephone/rs/logic/serviceCase`, data, {
505
+ resolveMsg: null,
506
+ rejectMsg: null
507
+ }).then(() => {
508
+ this.$showMessage('结案成功!')
509
+ this.f_caseremarks = ''
510
+ // 刷新界面
511
+ this.getNewOrder()
512
+ })
513
+ },
514
+ // 结案返回
515
+ caseclose(){
516
+ this.f_caseremarks = ''
517
+ this.editflag = null
518
+ },
519
+ showend(row){
520
+ this.selectone = row
521
+ this.endshow = true
522
+ },
523
+ WorkBack () {
524
+ this.isDis=true
525
+ this.model=this.sendbackmodel
526
+ this.model.serviceacitivity = [{
527
+ f_site_back_date: '',
528
+ f_site_back_name: '',
529
+ serviceid: '',
530
+ f_site_back_reason:this.f_site_back_reason,
531
+ f_service_acitivity_type: ''
532
+ }
533
+ ]
534
+ if(!this.f_site_back_reason){
535
+ this.isDis=false
536
+ return this.$showMessage('请填写退回内容!')
537
+ }
538
+ let data = ''
539
+ data = {
540
+ model: this.model,
541
+ loginUser: {name: Vue.user.name, ename: Vue.user.name, id: Vue.user.id}
542
+ }
543
+ console.log("退回参数"+JSON.stringify(data))
544
+ let http = new HttpResetClass()
545
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/af-telephone/rs/logic/sendBack`, data, {resolveMsg: null, rejectMsg: null}).then(() => {
546
+ this.$showMessage('退回成功!!!')
547
+ this.isDis=false
548
+ this.f_site_back_reason = ''
549
+ this.editflag =false
550
+ this.getNewOrder()
551
+ })
552
+ },
553
+ WorkBackclose(){
554
+ this.editflag = false
555
+ },
556
+ //信息维护,需要在手机端显示,暂时没有显示的地方,后续需要增加,是否考虑先调用本地logic,信息给本地也存,这样本地才能看到
557
+ infoaddsure(){
558
+ if(!this.information){
559
+ return this.$showMessage('请填写维护内容!',['confirm'])
560
+ }
561
+ // 组装数据
562
+ var data = {
563
+ id :this.infoone.id_back,
564
+ f_processid:this.infoone.f_processid,
565
+ f_content:this.information,
566
+ serviceacitivity : [{}]
567
+ }
568
+ let http = new HttpResetClass()
569
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/af-telephone/rs/logic/telinformation`, {model: data, loginUser: this.loginUser,dotype:'mobile'}, {resolveMsg: null, rejectMsg: null}).then(() => {
570
+ this.$showMessage('维护内容添加成功!',['confirm'])
571
+ this.information = ''
572
+ this.showinfo =false
573
+ })
574
+ },
575
+ infoclose(){
576
+ this.showinfo = false
577
+ },
578
+ infoadd(val){
579
+ this.infoone =val
580
+ this.showinfo = true
581
+ },
582
+ repiarmancg(val){
583
+ this.orderman = val
584
+ },
585
+ movedo(){
586
+ if(this.orderman == undefined || this.orderman == '' ){
587
+ this.$showMessage(`请先选择接单人!`, ['confirm'])
588
+ return
589
+ }
590
+ //tag
591
+ //tag)
592
+ let result = this.$androidUtil.bzLogic('androidMoveService', {id_back: this.moveselected.id_back, f_reciever: this.orderman,f_remarks:this.moveselected.f_remarks,worktype:this.worktype})
593
+ if (result.result === '成功') {
594
+ this.$showMessage(`向 ${this.orderman} 转单成功!`, ['confirm'])
595
+ this.orderman = ''
596
+ this.moveselected = ''
597
+ this.moveshow = false
598
+ this.ifsearch()
599
+ } else {
600
+ this.$showMessage(`转单失败,请检查网络异常!`, ['confirm'])
601
+ }
602
+
603
+ },
604
+ undo(){
605
+ this.orderman = ''
606
+ this.moveselected = ''
607
+ this.moveshow = false
608
+ },
609
+ getEmp () {
610
+ // 获取接单人数组
611
+ let val = ''
612
+ var worktypew = this.worktype == '报修单' ? '维修员':this.worktype == '置换员'?'置换员':'安装员'
613
+ let http = new HttpResetClass()
614
+ //tag)
615
+ val = {source: `this.getParentByType($organization$).getChildByName($${worktypew}$).getUsers()`, userid: `${Vue.user.id}`}
616
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/search`, {data: val}, {resolveMsg: null, rejectMsg: null}).then((res) => {
617
+ res.data.forEach((item) => {
618
+ if (item.state == '在职' || item.status == 0) {
619
+ this.repairers.push({label: `${item.name}`, value: item.name})
620
+ }
621
+ })
622
+ })
623
+ },
624
+ ifsearch(condition){
625
+ this.listData.list = []
626
+ this.listData.index = 0
627
+ this.listData.isEnd = true
628
+ if (!condition) {
629
+ condition = ''
630
+ }
631
+ condition = '1 = 1 ' + condition
632
+ condition += ` and f_state != '撤销'`
633
+ if(this.username != ''){
634
+ condition += " and f_user_name like '%" + this.username + "%'"
635
+ }
636
+ if(this.address != ''){
637
+ condition += " and f_address like '%" + this.address + "%'"
638
+ }
639
+ if(this.f_small_area != ''){
640
+ condition += " and f_small_area = '" + this.f_small_area + "'"
641
+ }
642
+ if(this.f_userinfo_code != ''){
643
+ condition += " and f_userinfo_code = '" + this.f_userinfo_code + "'"
644
+ }
645
+ if(this.repairtype.length > 0){
646
+ condition += " and f_repairtype in (" + this.repairtype.map(item=>{return `'${item}'`}).join() + ")"
647
+ }
648
+ if (this.f_created_date_start) {
649
+ condition += ` and f_created_date >= '${this.f_created_date_start}'`
650
+ }
651
+ if (this.f_created_date_end) {
652
+ condition += ` and f_created_date <= '${this.f_created_date_end}'`
653
+ }
654
+ if (this.f_finish_date_start) {
655
+ condition += ` and f_finish_date >= '${this.f_finish_date_start}'`
656
+ }
657
+ if (this.f_finish_date_end) {
658
+ condition += ` and f_finish_date <= '${this.f_finish_date_end}'`
659
+ }
660
+ if (this.failure) {
661
+ condition += ` and failure like '%${this.failure}%'`
662
+ }
663
+ if (this.f_remarks) {
664
+ condition += ` and f_remarks like '%${this.f_remarks}%'`
665
+ }
666
+ //tag
667
+ //tag
668
+ // 测试环境异步,真实环境同步
669
+ if (this.$androidUtil.isTest) {
670
+ return this.$androidUtil.path({'alias':`${config[this.worktype].path}`,'data':{condition:condition}}).then((ret) => {
671
+ this.rows = ret.data
672
+ })
673
+ } else {
674
+ let result = this.$androidUtil.path({'alias':`${config[this.worktype].path}`,'data':{condition:condition}})
675
+ if (result.code === 200) {
676
+ this.rows = result.data
677
+ } else {
678
+ this.$showMessage(`加载数据失败, 返回码: ${result.code}, 错误信息:${result.data}`)
679
+ }
680
+ }
681
+ this.showMore()
682
+ },
683
+ selected (row) {
684
+ var prpdata = {
685
+ _this:this,
686
+ title:'入户维修',
687
+ safe:true
688
+ }
689
+ this.$dispatch('gotoson',prpdata)
690
+ if(this.sourcet == '横屏'){
691
+ this.$goto('repair-order', {row: row,worktype:this.worktype},'self',this.ifsearch)
692
+ }else{
693
+ this.$goto('repair-orderV', {row: row,worktype:this.worktype},'self',this.ifsearch)
694
+ }
695
+ },
696
+ sendback(row){
697
+ this.$showMessage('退回后数据不可恢复,确认退回操作吗?', ['confirm', 'cancel'],{resolveMsg: null, rejectMsg: null}).then((res) => {
698
+ if (res === 'confirm') {
699
+ this.editflag = true
700
+ this.sendbackmodel = row
701
+ console.log("需要的参数"+JSON.stringify( this.sendbackmodel))
702
+ }else {
703
+ this.editflag = false
704
+ }
705
+ })
706
+ },
707
+ moveservice(row){
708
+ this.moveselected = row
709
+ this.moveshow = true
710
+ },
711
+ delayedit (row) {
712
+ row.state = '延期申请'
713
+ this.$goto('delay-apply', {row:row})
714
+ },
715
+ search () {
716
+ // 测试环境异步,真实环境同步
717
+ var condition = '1 = 1'
718
+ //tag
719
+ if (this.$androidUtil.isTest) {
720
+ return this.$androidUtil.path({'alias':`${config[this.worktype].path}`,'data':{condition:condition}}).then((ret) => {
721
+ // ret.data.forEach((item) => {
722
+ // item.service_version = item.failure.indexOf("漏气") !== -1
723
+ // })
724
+ this.rows = ret.data
725
+ })
726
+ } else {
727
+ let result = this.$androidUtil.path({'alias':`${config[this.worktype].path}`,'data':{condition:condition}})
728
+ if (result.code === 200) {
729
+ //tag)
730
+ this.rows = result.data
731
+ } else {
732
+ this.$showMessage(`加载数据失败, 返回码: ${result.code}, 错误信息:${result.data}`)
733
+ }
734
+ }
735
+ },
736
+ sumsearch () {
737
+ // 测试环境异步,真实环境同步
738
+ var condition = '1 = 1'
739
+ //tag
740
+ if (this.$androidUtil.isTest) {
741
+ return this.$androidUtil.path({'alias':`${config[this.worktype].path}`,'data':{condition:condition}}).then((ret) => {
742
+ // ret.data.forEach((item) => {
743
+ // item.service_version = item.failure.indexOf("漏气") !== -1
744
+ // })
745
+ var titdata = {
746
+ title:this.tabname,
747
+ sum:ret.data.length
748
+ }
749
+ //tag
750
+ //tag)
751
+ this.$emit('changesum',titdata)
752
+ })
753
+ } else {
754
+ let result = this.$androidUtil.path({'alias':`${config[this.worktype].path}`,'data':{condition:condition}})
755
+ if (result.code === 200) {
756
+ //tag)
757
+ var crv = {
758
+ title:this.tabname,
759
+ sum:result.data.length
760
+ }
761
+ //tag
762
+ //tag)
763
+ this.$emit('changesum',crv)
764
+ } else {
765
+ this.$showMessage(`加载数据失败, 返回码: ${result.code}, 错误信息:${result.data}`)
766
+ }
767
+ }
768
+ },
769
+ makeAPhoneCall(phoneNumber) {
770
+ this.$androidUtil.makeAPhoneCall(phoneNumber)
771
+ },
772
+ upload () {
773
+ this.$goto('up-load')
774
+ },
775
+ back () {
776
+ this.$back()
777
+ },
778
+ getNewOrder(){
779
+ HostApp.__this__ = this
780
+ HostApp.logicWithHint({
781
+ // logic别名,key必须为logic
782
+ 'logic': 'TelServiceTimeOut',
783
+ // 回调执行方法名,key必须为callback
784
+ 'callback': 'javascript:HostApp.__this__.getNewCallBack()',
785
+ // logic执行需要的业务参数
786
+ 'data': {params: ''},
787
+ // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
788
+ // 执行回调方法传入key为backresult
789
+ // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
790
+ 'backresult': 1
791
+ })
792
+ },
793
+ getNewCallBack(obj){
794
+ //tag)
795
+ this.ifsearch()
796
+ },
797
+ showMore() {
798
+ if (!this.rows) {
799
+ return
800
+ }
801
+ let endIndex = this.listData.index + 10
802
+ if (endIndex > this.rows.length) {
803
+ endIndex = this.rows.length
804
+ }
805
+ for (; this.listData.index < endIndex; this.listData.index++) {
806
+ this.listData.list.push(this.rows[this.listData.index])
807
+ }
808
+ if(this.listData.index == this.rows.length){
809
+ this.listData.isEnd = true
810
+ }else {
811
+ this.listData.isEnd = false
812
+ }
813
+ }
814
+ },
815
+ ready () {
816
+ let backservices
817
+ backservices=this.$appdata.getSingleValue('维修转单')
818
+ console.log("参数为:::"+backservices)
819
+ if(backservices==='true'||backservices===''){
820
+ this.backservice = '否'
821
+ }else {
822
+ this.backservice = '是'
823
+ }
824
+ this.getEmp()
825
+ this.ifsearch()
826
+ this.select_search()
827
+ // var _this = this;
828
+ // this.timeoutHandle = window.setInterval(function() {
829
+ // _this.sumsearch()
830
+ // }, 6000)
831
+ },
832
+ components: {
833
+ FailureShow,
834
+ 'failure-show': FailureShow
835
+ }
836
+ }
837
+ </script>
838
+ <style scoped>
839
+ .searBtn {
840
+ background: #FFFFFF;
841
+ color: #0096fb;
842
+ border: 1px solid #0096fb;
843
+ border-radius: 5px;
844
+ padding: 8px;
845
+ text-align: center;
846
+ font-size: 1.2em;
847
+ z-index: 10;
848
+ opacity:0.5;
849
+ bottom: 50px;
850
+ margin-top: -10px;
851
+ height: 40px;
852
+ }
853
+ .bg {
854
+ background-color: #499edf;
855
+ height: 1px;
856
+ border: 0;
857
+ }
858
+ .app-row {
859
+ background-color: white;
860
+ padding: 10px 10px 0 10px;
861
+ border-bottom: 1px solid rgba(235, 235, 235, 0.5);
862
+ }
863
+ .search_input {
864
+ border: 0;
865
+ outline: none;
866
+ }
867
+ .font{
868
+ font: 15px PingFang-SC-Medium;
869
+ color: #666666;
870
+ }
871
+ .input-font{
872
+ font: 15px PingFang-SC-Medium;
873
+ color: #333333;
874
+ }
875
+ .btn-font{
876
+ font:600 16px PingFang-SC-Bold;
877
+ color: #499EDF;
878
+ }
879
+ .btn-color{
880
+ background-color: #FFFFFF;
881
+ border-radius: 10px ;
882
+ border: 1px solid #499EDF;
883
+ }
884
+ .panel-blue-border {
885
+ border: 1px solid #499edf;
886
+ border-radius: 5px;
887
+ }
888
+ </style>