telephone-clients 3.0.103 → 3.0.104-11
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 +54 -56
- package/src/assets//345/210/240/351/231/244.png +0 -0
- 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/guoxin/Console.vue +9 -0
- package/src/components/guoxin/VisitInfo.vue +0 -11
- package/src/components/pc/NewRepairPaper.vue +370 -370
- package/src/components/pc/RepairsWork.vue +23 -2
- 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/VisitInfo.vue +44 -17
- package/src/components/pc/WorkCenter.vue +1 -1
- package/src/components/pc/WorkCenterList.vue +1 -1
- package/src/components/pc/WorkHistory.vue +20 -2
- package/src/components/pc/WorkListAll.vue +1 -1
- package/src/components/pc/WorkListAllNew.vue +10 -3
- 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/telreport/TrafficClassificationReport.vue +134 -0
- package/src/components/temp/ChangemeterInfo.vue +75 -87
- package/src/components/temp/DeviceInfo.vue +80 -82
- package/src/components/temp/HandplanInfo.vue +14 -3
- package/src/components/temp/InfoTable.vue +5 -2
- package/src/components/temp/MetereadInfo.vue +1 -4
- package/src/components/temp/OldRepairList.vue +100 -0
- package/src/components/temp/RepairList.vue +2 -2
- package/src/components/weinan/Console.vue +1 -1
- package/src/components/weinan/RecordList.vue +2 -2
- 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 +826 -826
- package/src/components/workorder/PhoneStandWork.vue +354 -354
- package/src/components/workorder/PhoneUpDetail.vue +3 -0
- package/src/components/workorder/RepairDetails.vue +12 -2
- package/src/components/workorder/RepairFirstV.vue +1 -1
- package/src/components/workorder/RepairOrderV.vue +1446 -1446
- package/src/filiale/furuike/pc/ComplainWork.vue +348 -348
- package/src/filiale/furuike/pc/Seekwork.vue +352 -352
- package/src/filiale/gongyi/android/RepairOrderV.vue +1415 -1415
- package/src/filiale/hanzhong/telephone.js +1 -1
- package/src/filiale/kelai/android/AppTakePic.vue +143 -0
- package/src/filiale/kelai/android/PhoneVentilationLeave.vue +176 -0
- 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/kelai/telephoneAndroid.js +3 -1
- package/src/filiale/liaoyuan/android/RepairOrderV.vue +831 -831
- package/src/filiale/qianneng/android/FaultAll.vue +883 -883
- package/src/filiale/qianneng/android/MaterIialOne.vue +123 -123
- package/src/filiale/qianneng/android/RepairOrderV.vue +874 -874
- package/src/filiale/qianneng/android/TemporarySingle.vue +25 -0
- package/src/filiale/qianneng/android/chargesList.vue +161 -161
- package/src/filiale/qianneng/pc/MaterialDetailed.vue +15 -3
- package/src/filiale/qianneng/pc/MaterialStatistics.vue +144 -0
- package/src/filiale/qianneng/pc/NewRepairPaper.vue +467 -467
- package/src/filiale/qianneng/pc/RepairsWork.vue +992 -982
- package/src/filiale/qianneng/pc/WorkHistory.vue +2 -2
- package/src/filiale/qianneng/pc/WorkListAllNew.vue +53 -5
- package/src/filiale/qianneng/pc/changetable.vue +273 -0
- package/src/filiale/qianneng/telephone.js +2 -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/rizhao/telephone.js +1 -1
- package/src/filiale/rongcheng/CliWorkListAll.vue +442 -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/pc/WorkList.vue +1 -1
- package/src/filiale/shanxian/telephone.js +13 -12
- 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 +847 -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/QueryVisitHistory.vue +237 -0
- package/src/filiale/shexian/pc/TelAgentVoiceReport.vue +271 -0
- package/src/filiale/shexian/pc/TelByOrderManCount.vue +10 -2
- package/src/filiale/shexian/pc/WorkList.vue +782 -740
- package/src/filiale/shexian/pc/WorkListAllNew.vue +75 -67
- package/src/filiale/shexian/telephone.js +21 -18
- package/src/filiale/shexian/telephoneAndroid.js +32 -26
- package/src/filiale/tongchuan/android/RepairDetails.vue +623 -0
- package/src/filiale/tongchuan/android/TicketDetails.vue +3 -0
- package/src/filiale/tongchuan/pc/UserWork.vue +805 -805
- package/src/filiale/tongchuan/pc/WorkOrderStatistics.vue +2 -2
- package/src/filiale/tongchuan/telephone.js +52 -52
- package/src/filiale/tongchuan/telephoneAndroid.js +23 -22
- package/src/filiale/wenxi/android/FailureShow.vue +61 -0
- package/src/filiale/wenxi/android/PhoneUpUserinfo.vue +1053 -0
- package/src/filiale/wenxi/android/RepairInfo.vue +158 -74
- package/src/filiale/wenxi/android/RepairOrderV.vue +805 -1419
- package/src/filiale/wenxi/android/RepairUserInfo.vue +532 -0
- package/src/filiale/wenxi/android/ZHihuanFirst.vue +502 -0
- package/src/filiale/wenxi/pc/DistributeWork.vue +107 -121
- package/src/filiale/wenxi/pc/FailureEdit.vue +1 -1
- package/src/filiale/wenxi/pc/GasWork.vue +747 -0
- package/src/filiale/wenxi/pc/MetereadInfo.vue +82 -0
- package/src/filiale/wenxi/pc/RepairsWork.vue +15 -0
- package/src/filiale/wenxi/pc/TelFindUser.vue +213 -116
- package/src/filiale/wenxi/pc/WorkListAll.vue +348 -297
- package/src/filiale/wenxi/telephone.js +4 -5
- package/src/filiale/wenxi/telephoneAndroid.js +4 -1
- package/src/filiale/wuan/android/RepairOrderV.vue +1384 -1384
- package/src/filiale/wuhai/telephone.js +1 -1
- package/src/filiale/yuncheng/pc/TelFindUser.vue +302 -0
- package/src/filiale/yuncheng/telephone.js +12 -0
- package/src/filiale/zhongsheng/android/FaultAll.vue +741 -0
- package/src/filiale/zhongsheng/android/RepairOrderV.vue +1430 -1430
- package/src/filiale/zhongsheng/android/RepairUserInfo.vue +241 -214
- package/src/filiale/zhongsheng/pc/RepairsWork.vue +775 -775
- package/src/filiale/zhongsheng/telephone.js +23 -23
- package/src/filiale/zhongsheng/telephoneAndroid.js +2 -1
- package/src/main.js +1 -1
- package/src/telephone.js +17 -1
- package/src/weinan.js +6 -0
|
@@ -375,6 +375,9 @@
|
|
|
375
375
|
ename: Vue.user.ename
|
|
376
376
|
}, user: null, callObj: null
|
|
377
377
|
}
|
|
378
|
+
if(data.model.failure){
|
|
379
|
+
data.model.f_json = this.trouble(data.model.failure)
|
|
380
|
+
}
|
|
378
381
|
if(this.model.f_handlingtype=='转维修员'){
|
|
379
382
|
data.toRepair = '一级派单'
|
|
380
383
|
this.model.f_meetunit = Vue.user.deps
|
|
@@ -427,6 +430,28 @@
|
|
|
427
430
|
failure.push({"f_failure_type": val[i], "failurecase": []})
|
|
428
431
|
}
|
|
429
432
|
this.model.failure=JSON.stringify(failure)
|
|
433
|
+
},
|
|
434
|
+
trouble (val) {
|
|
435
|
+
let failureall=''
|
|
436
|
+
let failure = JSON.parse(val)
|
|
437
|
+
for (let i = 0; i <failure.length; i++) {
|
|
438
|
+
if (failure[i].failurecase.length>0){
|
|
439
|
+
failureall+=failure[i].f_failure_type+":"
|
|
440
|
+
for (let j = 0; j < failure[i].failurecase.length; j++) {
|
|
441
|
+
failureall+=failure[i].failurecase[j]
|
|
442
|
+
if (j+1!=failure[i].failurecase.length){
|
|
443
|
+
failureall+=","
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
|
|
447
|
+
}else{
|
|
448
|
+
failureall+=failure[i].f_failure_type
|
|
449
|
+
}
|
|
450
|
+
if (i+1!=failure.length){
|
|
451
|
+
failureall+=';'
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
return failureall
|
|
430
455
|
}
|
|
431
456
|
},
|
|
432
457
|
ready(){
|
|
@@ -1,161 +1,161 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div id="tel-charges-list">
|
|
3
|
-
|
|
4
|
-
<div class="list" v-show="changeModel">
|
|
5
|
-
<div style="display: flex;justify-content: center;">
|
|
6
|
-
<button type="button" name="button" class="btn btn-primary btn-sm fr btn-img-cl" @click="open()" style="margin: 5px ">
|
|
7
|
-
新增收费
|
|
8
|
-
</button>
|
|
9
|
-
</div>
|
|
10
|
-
<div>
|
|
11
|
-
<data-grid partial='list' v-ref:grid :model="model" class="list_area table_sy">
|
|
12
|
-
<template partial='body'>
|
|
13
|
-
<td style="text-align: center;">
|
|
14
|
-
<nobr>{{ row.f_payment }}</nobr>
|
|
15
|
-
</td>
|
|
16
|
-
<td style="text-align: center;">
|
|
17
|
-
<nobr>¥{{ row.f_collection }}</nobr>
|
|
18
|
-
</td>
|
|
19
|
-
<td style="text-align: center;">
|
|
20
|
-
<nobr><button @click="$parent.$parent.getAllMaterial(row)">查看</button></nobr>
|
|
21
|
-
</td>
|
|
22
|
-
</template>
|
|
23
|
-
</data-grid>
|
|
24
|
-
</div>
|
|
25
|
-
<div class="">
|
|
26
|
-
<data-grid partial='list' v-ref:grid :model="material" class="list_area table_sy">
|
|
27
|
-
<template partial='head'>
|
|
28
|
-
<tr>
|
|
29
|
-
<th>
|
|
30
|
-
<nobr>品名规格</nobr>
|
|
31
|
-
</th>
|
|
32
|
-
<th>
|
|
33
|
-
<nobr>型号</nobr>
|
|
34
|
-
</th>
|
|
35
|
-
<th>
|
|
36
|
-
<nobr>单价</nobr>
|
|
37
|
-
</th>
|
|
38
|
-
<th>
|
|
39
|
-
<nobr>数量</nobr>
|
|
40
|
-
</th>
|
|
41
|
-
</tr>
|
|
42
|
-
</template>
|
|
43
|
-
<template partial='body'>
|
|
44
|
-
<td style="text-align: center;">
|
|
45
|
-
<nobr>{{row.f_material_name }}</nobr>
|
|
46
|
-
</td>
|
|
47
|
-
<td style="text-align: center;">
|
|
48
|
-
<nobr>{{ row.f_typenumber }}</nobr>
|
|
49
|
-
</td>
|
|
50
|
-
<td style="text-align: center;">
|
|
51
|
-
<nobr>{{ row.f_material_price }}</nobr>
|
|
52
|
-
</td>
|
|
53
|
-
<td style="text-align: center;">
|
|
54
|
-
<nobr>{{ row.f_material_number }}</nobr>
|
|
55
|
-
</td>
|
|
56
|
-
</template>
|
|
57
|
-
</data-grid>
|
|
58
|
-
</div>
|
|
59
|
-
</div>
|
|
60
|
-
<div class="material_service" v-show="!changeModel">
|
|
61
|
-
<appinstallation-material v-if="!changeModel" :selectdata = "selectdata" @valueChange="change" @aftersave="aftersave()"></appinstallation-material>
|
|
62
|
-
</div>
|
|
63
|
-
</div>
|
|
64
|
-
</template>
|
|
65
|
-
|
|
66
|
-
<script>
|
|
67
|
-
import Vue from 'vue'
|
|
68
|
-
import {HttpResetClass} from 'vue-client'
|
|
69
|
-
import QRCode from 'qrcodejs2'
|
|
70
|
-
import {isEmpty} from '../../../components/Util'
|
|
71
|
-
import AppInstallationMaterial from './AppInstallationMaterial'
|
|
72
|
-
import FailureEdit from 'telephone-clients/src/filiale/qianneng/pc/FailureEdit'
|
|
73
|
-
export default {
|
|
74
|
-
title: '材料添加',
|
|
75
|
-
props: {
|
|
76
|
-
selectdata: {
|
|
77
|
-
type: Object
|
|
78
|
-
}
|
|
79
|
-
},
|
|
80
|
-
data() {
|
|
81
|
-
return {
|
|
82
|
-
model:{rows:[]},
|
|
83
|
-
material:{rows:[]},
|
|
84
|
-
showmaterial:false,
|
|
85
|
-
changeModel:true
|
|
86
|
-
}
|
|
87
|
-
},
|
|
88
|
-
ready() {
|
|
89
|
-
this.getAllOthercharge()
|
|
90
|
-
// this.getmaterial()
|
|
91
|
-
// this.getmaterialTYPE()
|
|
92
|
-
|
|
93
|
-
},
|
|
94
|
-
methods: {
|
|
95
|
-
open(){
|
|
96
|
-
this.changeModel=false
|
|
97
|
-
},
|
|
98
|
-
aftersave(){
|
|
99
|
-
this.getAllOthercharge()
|
|
100
|
-
this.changeModel=true
|
|
101
|
-
},
|
|
102
|
-
getAllOthercharge(){
|
|
103
|
-
new HttpResetClass().load('POST',this.$androidUtil.getProxyUrl() +`/rs/sql/tel_singleTable_OrderBy?pageNo=1&pageSize=10`, {data: {
|
|
104
|
-
items: '*',
|
|
105
|
-
tablename: 't_othercharge',
|
|
106
|
-
condition: ` f_voucher_number='${this.selectdata.f_process_id}' and f_state='有效'`,
|
|
107
|
-
orderitem: 'id desc'
|
|
108
|
-
}},{resolveMsg:null,rejectMsg:null}).then(res=>{
|
|
109
|
-
console.log(res)
|
|
110
|
-
this.model.rows=res.data
|
|
111
|
-
}).catch((e)=>{
|
|
112
|
-
console.log("933",e)
|
|
113
|
-
})
|
|
114
|
-
},
|
|
115
|
-
getAllMaterial(row){
|
|
116
|
-
new HttpResetClass().load('POST',this.$androidUtil.getProxyUrl() +`/rs/sql/tel_singleTable_OrderBy?pageNo=1&pageSize=100`, {data: {
|
|
117
|
-
items: '*',
|
|
118
|
-
tablename: 't_material_service',
|
|
119
|
-
condition: ` f_othercharge_id='${row.id}'`,
|
|
120
|
-
orderitem: 'id desc'
|
|
121
|
-
}},{resolveMsg:null,rejectMsg:null}).then(res=>{
|
|
122
|
-
console.log(res)
|
|
123
|
-
this.material.rows=res.data
|
|
124
|
-
}).catch((e)=>{
|
|
125
|
-
console.log("933",e)
|
|
126
|
-
})
|
|
127
|
-
},
|
|
128
|
-
},
|
|
129
|
-
events: {},
|
|
130
|
-
computed: {},
|
|
131
|
-
watch: {},
|
|
132
|
-
components: {
|
|
133
|
-
'appinstallation-material': AppInstallationMaterial
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
</script>
|
|
137
|
-
<style lang="less" scoped>
|
|
138
|
-
.head-but {
|
|
139
|
-
margin-left: 5px;
|
|
140
|
-
height: 34px;
|
|
141
|
-
/*background-color: #6aa6e2;*/
|
|
142
|
-
border-radius: 4px;
|
|
143
|
-
font-family: PingFang;
|
|
144
|
-
color: #ffffff;
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
/*清除model中的浮动*/
|
|
148
|
-
.clearfix:after, .clearfix:before {
|
|
149
|
-
display: table;
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
.clearfix:after {
|
|
153
|
-
clear: both;
|
|
154
|
-
}
|
|
155
|
-
#tel-charges-list{
|
|
156
|
-
.list{
|
|
157
|
-
display: flex;
|
|
158
|
-
flex-direction: column;
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
</style>
|
|
1
|
+
<template>
|
|
2
|
+
<div id="tel-charges-list">
|
|
3
|
+
|
|
4
|
+
<div class="list" v-show="changeModel">
|
|
5
|
+
<div style="display: flex;justify-content: center;">
|
|
6
|
+
<button type="button" name="button" class="btn btn-primary btn-sm fr btn-img-cl" @click="open()" style="margin: 5px ">
|
|
7
|
+
新增收费
|
|
8
|
+
</button>
|
|
9
|
+
</div>
|
|
10
|
+
<div>
|
|
11
|
+
<data-grid partial='list' v-ref:grid :model="model" class="list_area table_sy">
|
|
12
|
+
<template partial='body'>
|
|
13
|
+
<td style="text-align: center;">
|
|
14
|
+
<nobr>{{ row.f_payment }}</nobr>
|
|
15
|
+
</td>
|
|
16
|
+
<td style="text-align: center;">
|
|
17
|
+
<nobr>¥{{ row.f_collection }}</nobr>
|
|
18
|
+
</td>
|
|
19
|
+
<td style="text-align: center;">
|
|
20
|
+
<nobr><button @click="$parent.$parent.getAllMaterial(row)">查看</button></nobr>
|
|
21
|
+
</td>
|
|
22
|
+
</template>
|
|
23
|
+
</data-grid>
|
|
24
|
+
</div>
|
|
25
|
+
<div class="">
|
|
26
|
+
<data-grid partial='list' v-ref:grid :model="material" class="list_area table_sy">
|
|
27
|
+
<template partial='head'>
|
|
28
|
+
<tr>
|
|
29
|
+
<th>
|
|
30
|
+
<nobr>品名规格</nobr>
|
|
31
|
+
</th>
|
|
32
|
+
<th>
|
|
33
|
+
<nobr>型号</nobr>
|
|
34
|
+
</th>
|
|
35
|
+
<th>
|
|
36
|
+
<nobr>单价</nobr>
|
|
37
|
+
</th>
|
|
38
|
+
<th>
|
|
39
|
+
<nobr>数量</nobr>
|
|
40
|
+
</th>
|
|
41
|
+
</tr>
|
|
42
|
+
</template>
|
|
43
|
+
<template partial='body'>
|
|
44
|
+
<td style="text-align: center;">
|
|
45
|
+
<nobr>{{row.f_material_name }}</nobr>
|
|
46
|
+
</td>
|
|
47
|
+
<td style="text-align: center;">
|
|
48
|
+
<nobr>{{ row.f_typenumber }}</nobr>
|
|
49
|
+
</td>
|
|
50
|
+
<td style="text-align: center;">
|
|
51
|
+
<nobr>{{ row.f_material_price }}</nobr>
|
|
52
|
+
</td>
|
|
53
|
+
<td style="text-align: center;">
|
|
54
|
+
<nobr>{{ row.f_material_number }}</nobr>
|
|
55
|
+
</td>
|
|
56
|
+
</template>
|
|
57
|
+
</data-grid>
|
|
58
|
+
</div>
|
|
59
|
+
</div>
|
|
60
|
+
<div class="material_service" v-show="!changeModel">
|
|
61
|
+
<appinstallation-material v-if="!changeModel" :selectdata = "selectdata" @valueChange="change" @aftersave="aftersave()"></appinstallation-material>
|
|
62
|
+
</div>
|
|
63
|
+
</div>
|
|
64
|
+
</template>
|
|
65
|
+
|
|
66
|
+
<script>
|
|
67
|
+
import Vue from 'vue'
|
|
68
|
+
import {HttpResetClass} from 'vue-client'
|
|
69
|
+
import QRCode from 'qrcodejs2'
|
|
70
|
+
import {isEmpty} from '../../../components/Util'
|
|
71
|
+
import AppInstallationMaterial from './AppInstallationMaterial'
|
|
72
|
+
import FailureEdit from 'telephone-clients/src/filiale/qianneng/pc/FailureEdit'
|
|
73
|
+
export default {
|
|
74
|
+
title: '材料添加',
|
|
75
|
+
props: {
|
|
76
|
+
selectdata: {
|
|
77
|
+
type: Object
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
data() {
|
|
81
|
+
return {
|
|
82
|
+
model:{rows:[]},
|
|
83
|
+
material:{rows:[]},
|
|
84
|
+
showmaterial:false,
|
|
85
|
+
changeModel:true
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
ready() {
|
|
89
|
+
this.getAllOthercharge()
|
|
90
|
+
// this.getmaterial()
|
|
91
|
+
// this.getmaterialTYPE()
|
|
92
|
+
|
|
93
|
+
},
|
|
94
|
+
methods: {
|
|
95
|
+
open(){
|
|
96
|
+
this.changeModel=false
|
|
97
|
+
},
|
|
98
|
+
aftersave(){
|
|
99
|
+
this.getAllOthercharge()
|
|
100
|
+
this.changeModel=true
|
|
101
|
+
},
|
|
102
|
+
getAllOthercharge(){
|
|
103
|
+
new HttpResetClass().load('POST',this.$androidUtil.getProxyUrl() +`/rs/sql/tel_singleTable_OrderBy?pageNo=1&pageSize=10`, {data: {
|
|
104
|
+
items: '*',
|
|
105
|
+
tablename: 't_othercharge',
|
|
106
|
+
condition: ` f_voucher_number='${this.selectdata.f_process_id}' and f_state='有效'`,
|
|
107
|
+
orderitem: 'id desc'
|
|
108
|
+
}},{resolveMsg:null,rejectMsg:null}).then(res=>{
|
|
109
|
+
console.log(res)
|
|
110
|
+
this.model.rows=res.data
|
|
111
|
+
}).catch((e)=>{
|
|
112
|
+
console.log("933",e)
|
|
113
|
+
})
|
|
114
|
+
},
|
|
115
|
+
getAllMaterial(row){
|
|
116
|
+
new HttpResetClass().load('POST',this.$androidUtil.getProxyUrl() +`/rs/sql/tel_singleTable_OrderBy?pageNo=1&pageSize=100`, {data: {
|
|
117
|
+
items: '*',
|
|
118
|
+
tablename: 't_material_service',
|
|
119
|
+
condition: ` f_othercharge_id='${row.id}'`,
|
|
120
|
+
orderitem: 'id desc'
|
|
121
|
+
}},{resolveMsg:null,rejectMsg:null}).then(res=>{
|
|
122
|
+
console.log(res)
|
|
123
|
+
this.material.rows=res.data
|
|
124
|
+
}).catch((e)=>{
|
|
125
|
+
console.log("933",e)
|
|
126
|
+
})
|
|
127
|
+
},
|
|
128
|
+
},
|
|
129
|
+
events: {},
|
|
130
|
+
computed: {},
|
|
131
|
+
watch: {},
|
|
132
|
+
components: {
|
|
133
|
+
'appinstallation-material': AppInstallationMaterial
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
</script>
|
|
137
|
+
<style lang="less" scoped>
|
|
138
|
+
.head-but {
|
|
139
|
+
margin-left: 5px;
|
|
140
|
+
height: 34px;
|
|
141
|
+
/*background-color: #6aa6e2;*/
|
|
142
|
+
border-radius: 4px;
|
|
143
|
+
font-family: PingFang;
|
|
144
|
+
color: #ffffff;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
/*清除model中的浮动*/
|
|
148
|
+
.clearfix:after, .clearfix:before {
|
|
149
|
+
display: table;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
.clearfix:after {
|
|
153
|
+
clear: both;
|
|
154
|
+
}
|
|
155
|
+
#tel-charges-list{
|
|
156
|
+
.list{
|
|
157
|
+
display: flex;
|
|
158
|
+
flex-direction: column;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
</style>
|
|
@@ -98,9 +98,10 @@
|
|
|
98
98
|
</div>
|
|
99
99
|
<div class="form-group col-sm-3">
|
|
100
100
|
<label class="font_normal_body">部  门:</label>
|
|
101
|
-
<
|
|
102
|
-
|
|
103
|
-
|
|
101
|
+
<v-select :value.sync="model.f_department"
|
|
102
|
+
v-model="model.f_department"
|
|
103
|
+
:options='$parent.$parent.f_departments' placeholder='部门'
|
|
104
|
+
close-on-select condition="ms.f_department like '%{}%'"></v-select>
|
|
104
105
|
</div>
|
|
105
106
|
</div>
|
|
106
107
|
</div>
|
|
@@ -110,7 +111,9 @@
|
|
|
110
111
|
<tr>
|
|
111
112
|
<th>序号</th>
|
|
112
113
|
<th>工单编号</th>
|
|
114
|
+
<th>客户编号</th>
|
|
113
115
|
<th>客户名称</th>
|
|
116
|
+
<th>客户电话</th>
|
|
114
117
|
<th>地址</th>
|
|
115
118
|
<th>故障明细</th>
|
|
116
119
|
<th>用户类型</th>
|
|
@@ -134,9 +137,15 @@
|
|
|
134
137
|
<td style="text-align: center;">
|
|
135
138
|
<nobr><font>{{row.f_service_id}}</font></nobr>
|
|
136
139
|
</td>
|
|
140
|
+
<td style="text-align: center;">
|
|
141
|
+
<nobr><font>{{row.f_userinfo_code}}</font></nobr>
|
|
142
|
+
</td>
|
|
137
143
|
<td style="text-align: center;">
|
|
138
144
|
<nobr><font>{{row.f_user_name}}</font></nobr>
|
|
139
145
|
</td>
|
|
146
|
+
<td style="text-align: center;">
|
|
147
|
+
<nobr><font>{{row.f_contact_phone}}</font></nobr>
|
|
148
|
+
</td>
|
|
140
149
|
<td style="text-align: center;">
|
|
141
150
|
<nobr><font>{{row.f_address}}</font></nobr>
|
|
142
151
|
</td>
|
|
@@ -192,10 +201,13 @@ export default {
|
|
|
192
201
|
data () {
|
|
193
202
|
return {
|
|
194
203
|
model: new PagedList('rs/sql/getmaterialservice', 30, null),
|
|
204
|
+
f_departments:[{label:"全部",value:""},...this.$appdata.getParam('部门')],
|
|
195
205
|
criteriaShow: false,
|
|
196
206
|
getfield: {
|
|
197
207
|
'f_service_id': '工单编号',
|
|
208
|
+
'f_userinfo_code': '客户编号',
|
|
198
209
|
'f_user_name': '客户名称',
|
|
210
|
+
'f_contact_phone': '客户电话',
|
|
199
211
|
'f_address': '地址',
|
|
200
212
|
'f_json': '故障明细',
|
|
201
213
|
'f_user_type': '用户类型',
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="flex-row">
|
|
3
|
+
<div style="height: 95%" class="basic-main" >
|
|
4
|
+
<criteria-paged :model="model" v-ref:cp>
|
|
5
|
+
<criteria partial='criteria' @condition-changed='$parent.searchCondition' v-ref:cri>
|
|
6
|
+
<div class="form-horizontal select-overspread container-fluid auto" style="margin-bottom: 10px" partial>
|
|
7
|
+
<div class="row">
|
|
8
|
+
<div class="col-sm-6 form-group form-input-group" style="width: 40%">
|
|
9
|
+
<role-selector-tel
|
|
10
|
+
role-name="维修员"
|
|
11
|
+
role-lable="维 修 员"
|
|
12
|
+
@re-res="$parent.$parent.getRes"
|
|
13
|
+
:value.sync="model.f_checker_id"
|
|
14
|
+
v-model="model.f_checker_id"
|
|
15
|
+
condition="f_order_man = '{}'">
|
|
16
|
+
</role-selector-tel>
|
|
17
|
+
</div>
|
|
18
|
+
<div class="col-sm-3 form-group form-input-group" style="width: 20%">
|
|
19
|
+
<label class="font_normal_body" style="width: 40%">操作时间</label>
|
|
20
|
+
<datepicker placeholder="起始操作时间"
|
|
21
|
+
:value.sync="model.f_created_date"
|
|
22
|
+
v-model="model.f_created_date"
|
|
23
|
+
:format="'yyyy-MM-dd 00:00:00'"
|
|
24
|
+
condition="f_date >= '{}'"
|
|
25
|
+
></datepicker>
|
|
26
|
+
</div>
|
|
27
|
+
<div class="col-sm-3 form-group form-input-group" style="width: 20%">
|
|
28
|
+
<label class="font_normal_body" style="width: 40%">操作时间</label>
|
|
29
|
+
<datepicker placeholder="终止操作时间"
|
|
30
|
+
:value.sync="model.f_created_enddate"
|
|
31
|
+
v-model="model.f_created_enddate"
|
|
32
|
+
:format="'yyyy-MM-dd 23:59:59'"
|
|
33
|
+
condition="f_date <= '{}'"
|
|
34
|
+
></datepicker>
|
|
35
|
+
</div>
|
|
36
|
+
<div class="form-group col-sm-3 button-range">
|
|
37
|
+
<button class="button_search button_spacing" @click="$parent.$parent.search()" v-el:cx>查询</button>
|
|
38
|
+
<button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
|
|
39
|
+
<export-excel :data="$parent.$parent.getCondition"
|
|
40
|
+
:field="$parent.$parent.getfield"
|
|
41
|
+
sqlurl="rs/logic/telephoneExport"
|
|
42
|
+
sql-name="getMaterialStatistics"
|
|
43
|
+
template-name='材料汇总导出'
|
|
44
|
+
:choose-col="true"></export-excel>
|
|
45
|
+
</div>
|
|
46
|
+
</div>
|
|
47
|
+
</div>
|
|
48
|
+
</criteria>
|
|
49
|
+
<data-grid :model="model" partial='list' v-ref:grid style="overflow: auto" class="list_area table_sy">
|
|
50
|
+
<template partial='head'>
|
|
51
|
+
<tr>
|
|
52
|
+
<th>序号</th>
|
|
53
|
+
<th>维修员</th>
|
|
54
|
+
<th>材料名称</th>
|
|
55
|
+
<th>材料型号</th>
|
|
56
|
+
<th>数量</th>
|
|
57
|
+
<th>金额(元)</th>
|
|
58
|
+
</tr>
|
|
59
|
+
</template>
|
|
60
|
+
<template partial='body'>
|
|
61
|
+
<tr >
|
|
62
|
+
<td style="text-align: center;">
|
|
63
|
+
<nobr><font>{{$index+1}}</font></nobr>
|
|
64
|
+
</td>
|
|
65
|
+
<td style="text-align: center;">
|
|
66
|
+
<nobr><font>{{row.f_repair_man}}</font></nobr>
|
|
67
|
+
</td>
|
|
68
|
+
<td style="text-align: center;">
|
|
69
|
+
<nobr><font>{{row.f_material_name}}</font></nobr>
|
|
70
|
+
</td>
|
|
71
|
+
<td style="text-align: center;">
|
|
72
|
+
<nobr><font>{{row.f_material_type}}</font></nobr>
|
|
73
|
+
</td>
|
|
74
|
+
<td style="text-align: center;">
|
|
75
|
+
<nobr><font>{{row.f_count}}</font></nobr>
|
|
76
|
+
</td>
|
|
77
|
+
<td style="text-align: center;">
|
|
78
|
+
<nobr><font>{{row.f_money}}</font></nobr>
|
|
79
|
+
</td>
|
|
80
|
+
</tr>
|
|
81
|
+
</template>
|
|
82
|
+
</data-grid>
|
|
83
|
+
</criteria-paged>
|
|
84
|
+
</div>
|
|
85
|
+
|
|
86
|
+
</div>
|
|
87
|
+
</template>
|
|
88
|
+
|
|
89
|
+
<script>
|
|
90
|
+
import {PagedList} from 'vue-client'
|
|
91
|
+
export default {
|
|
92
|
+
title: '材料汇总',
|
|
93
|
+
data () {
|
|
94
|
+
return {
|
|
95
|
+
model: new PagedList('rs/sql/getMaterialStatistics', 30, null),
|
|
96
|
+
criteriaShow: false,
|
|
97
|
+
getfield: {
|
|
98
|
+
'f_repair_man': '维修员',
|
|
99
|
+
'f_material_name': '材料名称',
|
|
100
|
+
'f_material_type': '材料型号',
|
|
101
|
+
'f_count': '数量',
|
|
102
|
+
'f_money': '金额(元)',
|
|
103
|
+
},
|
|
104
|
+
f_filialeids: ''
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
ready () {
|
|
108
|
+
// 调用查询
|
|
109
|
+
this.search()
|
|
110
|
+
},
|
|
111
|
+
methods: {
|
|
112
|
+
clear () {
|
|
113
|
+
Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
|
|
114
|
+
this.$refs.cp.$refs.cri.model[key] = ''
|
|
115
|
+
})
|
|
116
|
+
},
|
|
117
|
+
searchCondition (args) {
|
|
118
|
+
if (this.f_filialeids) {
|
|
119
|
+
args.condition += ` and t2.f_filiale_id in ${this.f_filialeids}`
|
|
120
|
+
} else {
|
|
121
|
+
args.condition += ` and t2.f_filiale_id = '${this.$login.f.orgid}'`
|
|
122
|
+
}
|
|
123
|
+
this.model.search(args.condition, args.model)
|
|
124
|
+
},
|
|
125
|
+
// 查询
|
|
126
|
+
search () {
|
|
127
|
+
this.$refs.cp.$refs.cri.search()
|
|
128
|
+
},
|
|
129
|
+
getRes (obj) {
|
|
130
|
+
this.f_filialeids = this.$login.convertToIn(obj.resids)
|
|
131
|
+
},
|
|
132
|
+
},
|
|
133
|
+
computed: {
|
|
134
|
+
getCondition () {
|
|
135
|
+
return {
|
|
136
|
+
condition: this.model.condition
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
</script>
|
|
142
|
+
|
|
143
|
+
<style scoped>
|
|
144
|
+
</style>
|