telephone-clients 3.0.103 → 3.0.104-1

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 (126) hide show
  1. package/package.json +3 -3
  2. package/src/App.vue +7 -9
  3. package/src/assets//345/210/240/351/231/244.png +0 -0
  4. package/src/components/Util/RightTreeSafe.vue +2 -2
  5. package/src/components/Util/RightTreeSafeDep.vue +350 -0
  6. package/src/components/android/AddMyTask.vue +7 -0
  7. package/src/components/guoxin/VisitInfo.vue +0 -11
  8. package/src/components/pc/NewRepairPaper.vue +3 -3
  9. package/src/components/pc/RepairsWork.vue +22 -2
  10. package/src/components/pc/RoleSelectorDep.vue +158 -0
  11. package/src/components/pc/TelFindUser.vue +1 -1
  12. package/src/components/pc/TelListener.vue +47 -16
  13. package/src/components/pc/VisitInfo.vue +0 -10
  14. package/src/components/pc/WorkCenter.vue +1 -1
  15. package/src/components/pc/WorkCenterList.vue +1 -1
  16. package/src/components/pc/WorkHistory.vue +20 -2
  17. package/src/components/pc/WorkListAll.vue +1 -1
  18. package/src/components/pc/WorkListAllNew.vue +10 -3
  19. package/src/components/pc/WorkListNew.vue +712 -706
  20. package/src/components/pc/olddata/OldWorkList.vue +193 -0
  21. package/src/components/telreport/RepairsDetailsReport.vue +98 -0
  22. package/src/components/telreport/TableFaultReport.vue +96 -0
  23. package/src/components/telreport/Traffic.vue +3 -3
  24. package/src/components/telreport/TrafficClassificationReport.vue +134 -0
  25. package/src/components/temp/ChangemeterInfo.vue +75 -87
  26. package/src/components/temp/DeviceInfo.vue +80 -82
  27. package/src/components/temp/HandplanInfo.vue +2 -2
  28. package/src/components/temp/InfoTable.vue +5 -2
  29. package/src/components/temp/MetereadInfo.vue +1 -4
  30. package/src/components/temp/OldRepairList.vue +100 -0
  31. package/src/components/temp/RepairList.vue +2 -2
  32. package/src/components/weinan/Console.vue +1 -1
  33. package/src/components/weinan/RecordList.vue +2 -2
  34. package/src/components/weinan/SiteSend.vue +2 -2
  35. package/src/components/weinan/SiteSendWeixiu.vue +7 -16
  36. package/src/components/weinan/StandWorkWeixiu.vue +1 -1
  37. package/src/components/weinan/WorkList.vue +73 -0
  38. package/src/components/weinan/WorkListAll.vue +90 -14
  39. package/src/components/weinan/WorkListWeixiu.vue +1 -1
  40. package/src/components/workorder/CompletedRepair.vue +269 -183
  41. package/src/components/workorder/FaultAll.vue +826 -826
  42. package/src/components/workorder/PhoneStandWork.vue +354 -354
  43. package/src/components/workorder/PhoneUpDetail.vue +3 -0
  44. package/src/components/workorder/RepairDetails.vue +12 -2
  45. package/src/components/workorder/RepairFirstV.vue +1 -1
  46. package/src/components/workorder/RepairOrderV.vue +1446 -1446
  47. package/src/filiale/furuike/pc/ComplainWork.vue +348 -348
  48. package/src/filiale/furuike/pc/Seekwork.vue +352 -352
  49. package/src/filiale/furuike/pc/WorkHistory.vue +576 -576
  50. package/src/filiale/gongyi/android/RepairOrderV.vue +1415 -1415
  51. package/src/filiale/kelai/android/AppTakePic.vue +143 -0
  52. package/src/filiale/kelai/android/PhoneVentilationLeave.vue +176 -0
  53. package/src/filiale/kelai/pc/WorkCenterList.vue +20 -3
  54. package/src/filiale/kelai/pc/WorkListAllNew.vue +47 -9
  55. package/src/filiale/kelai/pc/serviceDeleteOrder.vue +55 -0
  56. package/src/filiale/kelai/telephone.js +9 -8
  57. package/src/filiale/kelai/telephoneAndroid.js +3 -1
  58. package/src/filiale/liaoyuan/android/RepairOrderV.vue +831 -831
  59. package/src/filiale/qianneng/android/FaultAll.vue +883 -883
  60. package/src/filiale/qianneng/android/MaterIialOne.vue +123 -123
  61. package/src/filiale/qianneng/android/RepairOrderV.vue +874 -874
  62. package/src/filiale/qianneng/android/TemporarySingle.vue +537 -512
  63. package/src/filiale/qianneng/android/chargesList.vue +161 -161
  64. package/src/filiale/qianneng/pc/MaterialDetailed.vue +260 -248
  65. package/src/filiale/qianneng/pc/MaterialStatistics.vue +144 -0
  66. package/src/filiale/qianneng/pc/NewRepairPaper.vue +4 -4
  67. package/src/filiale/qianneng/pc/RepairsWork.vue +12 -2
  68. package/src/filiale/qianneng/pc/WorkHistory.vue +2 -2
  69. package/src/filiale/qianneng/pc/WorkListAllNew.vue +53 -5
  70. package/src/filiale/qianneng/pc/changetable.vue +273 -0
  71. package/src/filiale/qianneng/telephone.js +22 -20
  72. package/src/filiale/rizhao/pc/DispatchMan.vue +3 -3
  73. package/src/filiale/rizhao/pc/DispatchWork.vue +3 -3
  74. package/src/filiale/rizhao/pc/Traffic.vue +3 -3
  75. package/src/filiale/rizhao/pc/WorkListAllNew.vue +8 -3
  76. package/src/filiale/rongcheng/CliWorkListAll.vue +442 -407
  77. package/src/filiale/rongcheng/FaultAll.vue +3 -3
  78. package/src/filiale/rongcheng/RepairOrderV.vue +1445 -0
  79. package/src/filiale/rongcheng/telephoneAndroid.js +3 -1
  80. package/src/filiale/shanxian/android/RepairFirstV.vue +5 -1
  81. package/src/filiale/shanxian/pc/RepairsWork.vue +826 -0
  82. package/src/filiale/shanxian/pc/WorkList.vue +1 -1
  83. package/src/filiale/shanxian/telephone.js +13 -12
  84. package/src/filiale/shexian/android/AddMyTask.vue +7 -0
  85. package/src/filiale/shexian/android/CompletedRepair.vue +280 -0
  86. package/src/filiale/shexian/android/FaultAll.vue +847 -0
  87. package/src/filiale/shexian/android/Outlay.vue +182 -165
  88. package/src/filiale/shexian/android/RepairFirstV.vue +16 -2
  89. package/src/filiale/shexian/android/RepairInfo.vue +1 -0
  90. package/src/filiale/shexian/pc/QueryVisitHistory.vue +237 -0
  91. package/src/filiale/shexian/pc/TelAgentVoiceReport.vue +271 -0
  92. package/src/filiale/shexian/pc/TelByOrderManCount.vue +10 -2
  93. package/src/filiale/shexian/pc/WorkList.vue +782 -740
  94. package/src/filiale/shexian/pc/WorkListAllNew.vue +75 -67
  95. package/src/filiale/shexian/telephone.js +21 -18
  96. package/src/filiale/shexian/telephoneAndroid.js +32 -26
  97. package/src/filiale/tongchuan/android/TicketDetails.vue +3 -0
  98. package/src/filiale/tongchuan/pc/UserWork.vue +805 -805
  99. package/src/filiale/tongchuan/pc/WorkOrderStatistics.vue +2 -2
  100. package/src/filiale/wenxi/android/FailureShow.vue +61 -0
  101. package/src/filiale/wenxi/android/PhoneUpUserinfo.vue +1053 -0
  102. package/src/filiale/wenxi/android/RepairInfo.vue +158 -74
  103. package/src/filiale/wenxi/android/RepairOrderV.vue +805 -1419
  104. package/src/filiale/wenxi/android/RepairUserInfo.vue +532 -0
  105. package/src/filiale/wenxi/android/ZHihuanFirst.vue +502 -0
  106. package/src/filiale/wenxi/pc/DistributeWork.vue +107 -121
  107. package/src/filiale/wenxi/pc/FailureEdit.vue +1 -1
  108. package/src/filiale/wenxi/pc/GasWork.vue +747 -0
  109. package/src/filiale/wenxi/pc/MetereadInfo.vue +82 -0
  110. package/src/filiale/wenxi/pc/RepairsWork.vue +15 -0
  111. package/src/filiale/wenxi/pc/TelFindUser.vue +213 -116
  112. package/src/filiale/wenxi/telephone.js +4 -6
  113. package/src/filiale/wenxi/telephoneAndroid.js +4 -1
  114. package/src/filiale/wuan/android/RepairOrderV.vue +1384 -1384
  115. package/src/filiale/yuncheng/pc/TelFindUser.vue +302 -0
  116. package/src/filiale/yuncheng/telephone.js +12 -0
  117. package/src/filiale/zhongsheng/android/FaultAll.vue +741 -0
  118. package/src/filiale/zhongsheng/android/RepairOrderV.vue +1430 -1430
  119. package/src/filiale/zhongsheng/android/RepairUserInfo.vue +241 -214
  120. package/src/filiale/zhongsheng/pc/RepairsWork.vue +775 -775
  121. package/src/filiale/zhongsheng/telephone.js +23 -23
  122. package/src/filiale/zhongsheng/telephoneAndroid.js +2 -1
  123. package/src/main.js +1 -1
  124. package/src/telephone.js +16 -0
  125. package/src/weinan.js +6 -0
  126. package/src/filiale/wenxi/pc/WorkListAll.vue +0 -647
@@ -16,7 +16,7 @@
16
16
  import * as Util from '../Util'
17
17
 
18
18
  export default {
19
- title: '站点工单',
19
+ title: '维修班工单',
20
20
  data () {
21
21
  return {
22
22
  user: this.$login.f,
@@ -30,6 +30,9 @@
30
30
  <button class="button_search button_spacing" @click="search(),$dispatch('search')"
31
31
  style="margin-right: 9px">查询
32
32
  </button>
33
+ <button class="button_search button_spacing" @click="$parent.$parent.repairSendAll()"
34
+ style="margin-right: 9px">批量下发
35
+ </button>
33
36
 
34
37
  <export-excel-tel
35
38
  :data="$parent.$parent.searchData"
@@ -105,6 +108,7 @@
105
108
  <data-grid partial='list' v-ref:grid :model="model" class="list_area table_sy" :classname="'table tablenew table-bordered table-striped table-hover'">
106
109
  <template partial='head'>
107
110
  <tr>
111
+ <th><nobr><input type="checkbox" v-model="$parent.$parent.$parent.checkAll"/> 全选</nobr></th>
108
112
  <!--<th></th>-->
109
113
  <!--<th>-->
110
114
  <!--预约时间-->
@@ -140,6 +144,7 @@
140
144
  <!--:checked="$parent.$parent.$parent.isInList(row)"-->
141
145
  <!--@click=$parent.$parent.$parent.addInList(row)></td>-->
142
146
  <!--<td>{{row.f_repair_date}}</td>-->
147
+ <td style="text-align: center;white-space:nowrap;"><input type="checkbox" v-if="row.processins.activities[0].defname=='站点接单'" onClick="event.cancelBubble = true" :checked="$parent.$parent.$parent.isChecked(row.id)" @change="$parent.$parent.$parent.setCheckes(row)" /></td>
143
148
  <td
144
149
  :style="Math.floor((new Date().getTime() - new Date(row.f_created_date).getTime())/1000/60/60)>3&&row.processins.activities[0].defname=='站点接单'?'background-color: #f1eecb':''">
145
150
  {{ row.f_workorder_type }}<span style="color: red" v-if="row.f_remindersign==='true'">(催单)</span></td>
@@ -384,6 +389,9 @@ export default {
384
389
  title: '工单列表',
385
390
  data () {
386
391
  return {
392
+ rowlist:[],
393
+ checkes:[],
394
+ checkAll:false,
387
395
  criteriaShow: false,
388
396
  f_complaint_results: '',
389
397
  serlist: [],
@@ -475,6 +483,68 @@ export default {
475
483
  }
476
484
  },
477
485
  methods: {
486
+ isChecked(v) {
487
+ // 如果全选,不在的按选中算,否则,在的按选中算
488
+ if (this.checkAll) {
489
+ return this.checkes.indexOf(v) == -1
490
+ } else {
491
+ return this.checkes.indexOf(v) != -1
492
+ }
493
+ },
494
+ setCheckes(row) {
495
+ if (!this.checkAll){
496
+ let index=this.checkes.indexOf(row.id)
497
+ if(index<0){
498
+ this.checkes.push(row.id)
499
+ this.rowlist.push(row)
500
+ }else{
501
+ this.checkes.splice(index,1)
502
+ this.rowlist.splice(this.rowlist.findIndex(res => {
503
+ return res.id === row.id
504
+ }) , 1)
505
+ }
506
+ }
507
+ },
508
+ async repairSendAll () {
509
+ //tag
510
+ if (!this.$refs.paged.$refs.criteria.model.f_workorder_type){
511
+ this.$showMessage('必须选择工单类型后查询')
512
+ return
513
+ }
514
+ this.selectone={
515
+ f_workorder_type:this.$refs.paged.$refs.criteria.model.f_workorder_type
516
+ }
517
+
518
+ if (this.checkAll){
519
+ //如果全选,根据条件去查询数据
520
+ let data={
521
+ condition:this.model.params.condition,
522
+ userid:this.$login.f.name
523
+ }
524
+ await new HttpResetClass().load('post','rs/sql/operatorService',{data:data},{resolveMsg:null,rejectMsg:null}).then(res=>{
525
+ const results=res.data
526
+ this.rowlist=results.filter(result=>{
527
+ //tag)
528
+ console.log("999",result,JSON.stringify(result).indexOf('站点接单')!=-1)
529
+ return JSON.stringify(result).indexOf('站点接单')!=-1
530
+ })
531
+ console.log(this.rowlist)
532
+ //tag
533
+ this.serlist=JSON.parse(JSON.stringify(this.rowlist))
534
+ this.editflag ='工单下发'
535
+ })
536
+
537
+ }else{
538
+ if (this.rowlist.length===0){
539
+ this.$showMessage('请选择工单')
540
+ return
541
+ }
542
+ //不全选,去取数据
543
+ this.serlist=JSON.parse(JSON.stringify(this.rowlist))
544
+ console.log("752752",this.rowlist)
545
+ this.editflag ='工单下发'
546
+ }
547
+ },
478
548
  hidden () {
479
549
  this.criteriaShow = !this.criteriaShow
480
550
  },
@@ -552,6 +622,7 @@ export default {
552
622
  return checkstr
553
623
  },
554
624
  proc (selectone, type) {
625
+ this.serlist = []
555
626
  this.editflag = type
556
627
  this.selectone = selectone
557
628
  },
@@ -578,6 +649,7 @@ export default {
578
649
  this.imgfilename = 'rs/image/file/' + val.f_single_path
579
650
  },
580
651
  search (args) {
652
+ this.rowlist = []
581
653
  this.serlist = []
582
654
  //tag
583
655
  let data = {}
@@ -589,6 +661,7 @@ export default {
589
661
  },
590
662
  selfSearch () {
591
663
  // 取消编辑状态
664
+ this.rowlist = []
592
665
  this.serlist = []
593
666
  this.editflag = null
594
667
 
@@ -136,6 +136,30 @@
136
136
  condition="{}"
137
137
  close-on-select></v-select>
138
138
  </div>
139
+ <div class="col-sm-6 form-group form-input-group" style="width: 40%">
140
+ <role-selector-safe-dep
141
+ role-name="维修员"
142
+ role-lable="接&nbsp;单&nbsp;员&nbsp;"
143
+ style="width: 60%"
144
+ @re-res="$parent.$parent.getRes"
145
+ @alluser="$parent.$parent.getchecker"
146
+ :value.sync="model.f_order_man"
147
+ v-model="model.f_order_man"
148
+ condition="f_order_man = '{}'">
149
+ </role-selector-safe-dep>
150
+ </div>
151
+ <!-- <div class="col-sm-3 form-group form-input-group" style="width: 20%">-->
152
+ <!-- <label class="font_normal_body">所属部门</label>-->
153
+ <!-- <right-tree width="80%" :source="$parent.$parent.source" @re-res="$parent.$parent.getRes"></right-tree>-->
154
+ <!-- </div>-->
155
+ <!-- <div class="col-sm-3 form-group form-input-group" style="width: 20%">-->
156
+ <!-- <label class="font_normal_body" style="width: 40%">接&ensp;单&ensp;员</label>-->
157
+ <!-- <v-select :value.sync="model.f_order_man" v-model='model.f_order_man'-->
158
+ <!-- :value-single="true"-->
159
+ <!-- :options='$parent.$parent.repairerss' placeholder='接单员'-->
160
+ <!-- close-on-select-->
161
+ <!-- condition="f_order_man = '{}'"></v-select>-->
162
+ <!-- </div>-->
139
163
  <div class="col-sm-3 form-group form-input-group" style="width: 20%">
140
164
  <label class="font_normal_body" style="width: 40%" title="接单站点">接单站点</label>
141
165
  <v-select :value="model.f_outlets" v-model='model.f_outlets'
@@ -147,20 +171,21 @@
147
171
  </div>
148
172
  <div class="col-sm-3 form-group form-input-group" style="width: 20%">
149
173
  <label class="font_normal_body" style="width: 40%">接单班组</label>
150
- <v-select :value.sync="model.f_single_man" v-model='model.f_single_man'
174
+ <v-select :value="model.f_single_man" v-model='model.f_single_man'
151
175
  :value-single="true"
152
176
  :options='$parent.$parent.single_mans' placeholder='接单班组'
177
+ @change="$parent.$parent.getrepair"
153
178
  condition="(f_single_man = '{}' or f_order_man = '{}')"
154
179
  close-on-select></v-select>
155
180
  </div>
156
- <div class="col-sm-3 form-group form-input-group" style="width: 20%">
157
- <label class="font_normal_body" style="width: 40%">接&ensp;单&ensp;员</label>
158
- <v-select :value.sync="model.f_order_man" v-model='model.f_order_man'
159
- :value-single="true"
160
- :options='$parent.$parent.repairers' placeholder='接单员'
161
- close-on-select
162
- condition="f_order_man = '{}'"></v-select>
163
- </div>
181
+ <!-- <div class="col-sm-3 form-group form-input-group" style="width: 20%">-->
182
+ <!-- <label class="font_normal_body" style="width: 40%">接&ensp;单&ensp;员</label>-->
183
+ <!-- <v-select :value.sync="model.f_order_man" v-model='model.f_order_man'-->
184
+ <!-- :value-single="true"-->
185
+ <!-- :options='$parent.$parent.repairerss' placeholder='接单员'-->
186
+ <!-- close-on-select-->
187
+ <!-- condition="f_order_man = '{}'"></v-select>-->
188
+ <!-- </div>-->
164
189
  <div class="col-sm-3 form-group form-input-group" style="width: 20%">
165
190
  <label class="font_normal_body" style="width: 40%">报修类型</label>
166
191
  <v-select :value.sync="model.f_repairtype" v-model='model.f_repairtype'
@@ -363,9 +388,16 @@
363
388
  title: '工单列表',
364
389
  data () {
365
390
  return {
391
+ depname:this.$login.f.deps,
392
+ order_man:'',
393
+ source:'tool.getFullTree(this.getRights().where(row.getType() == $department$))',
394
+ resobjprop: {res: this.$login.f.orgs, resids: this.$login.f.orgid},
366
395
  single_mans:[{label: '全部', value: ''}],
367
396
  f_accept_man:"",
368
397
  repairmans:[],
398
+ curorgid: [this.$login.f.orgid],
399
+ f_orgid:'',
400
+ f_filialeids:'',
369
401
  gongdan:{
370
402
  zixundan:0,
371
403
  tousudan:0,
@@ -395,13 +427,14 @@
395
427
  wavflie : '',
396
428
  selectone: '',
397
429
  repairers:[{label: '全部', value: ''}],
430
+ repairerss:[{label: '全部', value: ''}],
398
431
  model: new PagedList('rs/sql/worklistallnew', 20,{}),
399
432
  row: null,
400
433
  orderMan: '',
401
434
  msgs: [],
402
435
  service: Object,
403
436
  pendingCount: 0,
404
- defnames: [{label: '全部', value: ''},{label: '未完成', value: "state = '未完成'"},{label: '已完成', value: "state = '已完成'"}],
437
+ defnames: [{label: '全部', value: ''},{label: '未完成', value: "state = '未完成'"},{label: '已完成', value: "state = '已完成'"},{label: '撤销', value: "state = '撤销'"}],
405
438
  // 打印
406
439
  all: false,
407
440
  modelval: [],
@@ -485,8 +518,34 @@
485
518
  this.selfSearch()
486
519
  //this.model.search()
487
520
  }
521
+
488
522
  },
489
523
  methods: {
524
+ getchecker(val){
525
+ this.$refs.paged.$refs.criteria.model.f_order_man = ''
526
+ if(val && val.length > 0){
527
+ this.order_man = ''
528
+ val.forEach(user => {
529
+ this.order_man += `'${user.name}',`
530
+ })
531
+ this.order_man = this.order_man.slice(0,this.order_man.length-1)
532
+ }else{
533
+ this.order_man = ''
534
+ }
535
+ },
536
+ //通过参数取
537
+ getrepair(val){
538
+ this.$refs.paged.$refs.criteria.model.f_single_man = val
539
+ // if(val){
540
+ // this.repairerss = this.$appdata.getParam(val) ? [{
541
+ // label: '全部',
542
+ // value: ''
543
+ // }, ...this.$appdata.getParam(val)] : [{label: '全部', value: ''}]
544
+ // }else{
545
+ // this.repairerss = this.repairers
546
+ // }
547
+
548
+ },
490
549
  // 如果接单站点改变,则重组班组下拉值,维修员下拉值改变
491
550
  getsingleman(val){
492
551
  if(val) {
@@ -683,6 +742,9 @@
683
742
  condition1:this.$refs.paged.$refs.criteria.condition,
684
743
  condition2: '1 = 1'
685
744
  }
745
+ if(this.order_man){
746
+ condition.condition1 += ` and (f_order_man in (${this.order_man}) or f_outlets = '${this.depname}') `
747
+ }
686
748
  if(this.f_accept_man){
687
749
  condition.condition2 = ` sender = '${this.f_accept_man}'`
688
750
  condition.condition1 += 'and tt.actcount > 0'
@@ -726,6 +788,9 @@
726
788
  condition1: '1 = 1',
727
789
  condition2: '1 = 1'
728
790
  }
791
+ if(this.order_man){
792
+ condition.condition1 += ` and (f_order_man in (${this.order_man}) or f_outlets = '${this.depname}') `
793
+ }
729
794
  if(this.f_accept_man){
730
795
  condition.condition2 = ` sender = '${this.f_accept_man}'`
731
796
  condition.condition1 += 'and tt.actcount > 0'
@@ -831,10 +896,21 @@
831
896
  this.criteriaShow = !this.criteriaShow
832
897
  },
833
898
  getRes(obj){
834
- //tag
835
- ////tag)
836
- this.f_filialeids = this.$login.convertToIn(obj.resids);
837
- //tag
899
+ this.depname = obj.res[0]
900
+ // if(obj){
901
+ // this.$refs.paged.$refs.criteria.model.f_order_man = ''
902
+ // this.repairerss = [{label: '全部', value: ''}]
903
+ // let val = {source: 'this.getChildUser().where(row.getAttributes().get($rolestr$).indexOf($维修员$)!=-1)', userid: `${obj.resids[0]}`}
904
+ // let http = new HttpResetClass()
905
+ // http.load('POST', '/rs/search', {data: val}, {resolveMsg: null, rejectMsg: null}).then((res) => {
906
+ // this.order_man = ''
907
+ // res.data.forEach((item) => {
908
+ // this.repairerss.push({label: item.name, value: item.name})
909
+ // this.order_man += `'${item.name}',`
910
+ // })
911
+ // this.order_man = this.order_man.slice(0,this.order_man.length-1)
912
+ // })
913
+ // }
838
914
  }
839
915
  },
840
916
  computed: {
@@ -420,7 +420,7 @@ export default {
420
420
  this.serlist = []
421
421
  if (this.picked) {
422
422
  if (this.picked === 'wait') {
423
- this.model.url = 'rs/path/operatorService'
423
+ this.model.url = 'rs/path/pcService'
424
424
  } else if (this.picked === 'done') {
425
425
  this.model.url = 'rs/path/doneService'
426
426
  }