telephone-clients 3.0.74-6 → 3.0.74
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/assets/addnew.png +0 -0
- package/src/assets/doubledown.png +0 -0
- package/src/assets/edit.png +0 -0
- package/src/assets/lingsheng.mp3 +0 -0
- package/src/assets/searchhover.png +0 -0
- package/src/components/ExportExcel.vue +1 -1
- package/src/components/Util/ImgSelfSafePlus.vue +156 -0
- package/src/components/android/CompletedRepair.vue +264 -0
- package/src/components/pc/AllUserNew.vue +1 -1
- package/src/components/pc/Console.vue +2 -0
- package/src/components/pc/NewRepairPaper.vue +1 -1
- package/src/components/pc/RepairsWork.vue +5 -5
- package/src/components/pc/RoleSelector.vue +1 -1
- package/src/components/pc/SiteBack.vue +2 -3
- package/src/components/pc/SiteSend.vue +22 -8
- package/src/components/pc/TelLossList.vue +43 -32
- package/src/components/pc/VisitInfo.vue +2 -2
- package/src/components/pc/WorkCenter.vue +1 -1
- package/src/components/pc/WorkCenterList.vue +277 -298
- package/src/components/pc/WorkHistory.vue +5 -33
- package/src/components/pc/WorkList.vue +38 -70
- package/src/components/pc/WorkListAllNew.vue +685 -679
- package/src/components/pc/WorkListNew.vue +37 -106
- package/src/components/pc/serviceDeleteOrder.vue +4 -8
- package/src/components/pos/Plugin/PosUtil.js +1 -1
- package/src/components/telreport/TelReport.vue +2 -1
- package/src/components/telreport/TelephoneManReport.vue +1 -1
- package/src/components/telreport/Traffic.vue +7 -2
- package/src/components/temp/InfoTable.vue +13 -12
- package/src/components/temp/RepairList.vue +27 -4
- package/src/components/weinan/ExportExcel.vue +1 -1
- package/src/components/weinan/RecordList.vue +19 -6
- package/src/components/weinan/WorkList.vue +7 -0
- package/src/components/workorder/FaultAll.vue +3 -40
- package/src/components/workorder/Othercharge.vue +477 -433
- package/src/components/workorder/PhoneStandWork.vue +5 -5
- package/src/components/workorder/PhoneUpDetail.vue +243 -199
- package/src/components/workorder/PhoneUpUserinfo.vue +469 -357
- package/src/components/workorder/RepairDetails.vue +58 -4
- package/src/components/workorder/RepairFirstV.vue +13 -15
- package/src/components/workorder/RepairOrderV.vue +1 -1
- package/src/filiale/furuike/pc/Auxfunc.vue +1 -1
- package/src/filiale/furuike/pc/ComplainWork.vue +2 -1
- package/src/filiale/furuike/pc/RecordListLeft.vue +1 -1
- package/src/filiale/furuike/pc/ReminderOrder.vue +50 -0
- package/src/filiale/furuike/pc/RepairsWork.vue +7 -1
- package/src/filiale/furuike/pc/Seekwork.vue +2 -1
- package/src/filiale/furuike/pc/TelFindUser.vue +1 -1
- package/src/filiale/furuike/pc/WorkListAllNew.vue +2 -2
- package/src/filiale/furuike/telephone.js +3 -0
- package/src/filiale/gongyi/android/RepairOrderV.vue +1 -1
- package/src/filiale/hanzhong/android/Outlay.vue +30 -1
- package/src/filiale/hanzhong/android/RepairInfo.vue +167 -0
- package/src/filiale/hanzhong/pc/Console.vue +80 -90
- package/src/filiale/hanzhong/pc/RecordInfoRight.vue +5 -5
- package/src/filiale/hanzhong/pc/RecordListLeft.vue +42 -19
- package/src/filiale/hanzhong/pc/message/AllUserNew.vue +1 -1
- package/src/filiale/hanzhong/telephoneAndroid.js +3 -1
- package/src/filiale/kelai/android/RepairFirstV.vue +7 -0
- package/src/filiale/kelai/android/RepairTypeList.vue +170 -0
- package/src/filiale/kelai/pc/WorkCenterList.vue +298 -0
- package/src/filiale/kelai/pc/WorkListAllNew.vue +679 -0
- package/src/filiale/kelai/telephone.js +2 -0
- package/src/filiale/kelai/telephoneAndroid.js +1 -0
- package/src/filiale/liaoyuan/android/RepairOrderV.vue +1 -1
- package/src/filiale/qianneng/android/AppInstallationMaterial.vue +272 -365
- package/src/filiale/qianneng/android/FaultAll.vue +4 -4
- package/src/filiale/qianneng/android/RepairDetails.vue +80 -24
- package/src/filiale/qianneng/android/RepairFirstV.vue +3 -3
- package/src/filiale/qianneng/android/RepairOrderV.vue +3 -2
- package/src/filiale/qianneng/android/RepairUserInfo.vue +1 -1
- package/src/filiale/qianneng/pc/FailureEdit.vue +2 -2
- package/src/filiale/qianneng/pc/NewRepairPaper.vue +53 -1
- package/src/filiale/qianneng/pc/RepairsWork.vue +45 -1
- package/src/filiale/qianneng/pc/WorkHistory.vue +6 -6
- package/src/filiale/qianneng/pc/WorkListAllNew.vue +2 -3
- package/src/filiale/rizhao/android/RepairInfo.vue +11 -2
- package/src/filiale/rizhao/pc/NewRepairPaper.vue +4 -23
- package/src/filiale/rizhao/pc/WorkHistory.vue +2 -2
- package/src/filiale/rizhao/pc/WorkList.vue +1 -1
- package/src/filiale/rizhao/pc/WorkListAllNew.vue +10 -3
- package/src/filiale/rizhao/pc/WxBaobiaoService.vue +1 -1
- package/src/filiale/rizhao/telephone.js +0 -1
- package/src/filiale/rongcheng/ServiceDetails.vue +1 -1
- package/src/filiale/rongcheng/WorkListAll.vue +1 -1
- package/src/filiale/rongcheng/telephone.js +1 -0
- package/src/filiale/shanxian/pc/WorkList.vue +791 -0
- package/src/filiale/shanxian/telephone.js +12 -0
- package/src/filiale/shanxian/telephoneAndroid.js +11 -0
- package/src/filiale/shaoguan/pc/WorkListAllNew.vue +1 -1
- package/src/filiale/tianke/pc/IgnitionVentilationWork.vue +1 -1
- package/src/filiale/tianke/pc/WorkList.vue +1 -1
- package/src/filiale/tongchuan/android/TicketDetails.vue +1 -1
- package/src/filiale/tongchuan/pc/CheckWork.vue +26 -4
- package/src/filiale/tongchuan/pc/DepRepairManCount.vue +2 -2
- package/src/filiale/tongchuan/pc/DistributeWork.vue +2 -0
- package/src/filiale/tongchuan/pc/ExportExcel.vue +1 -1
- package/src/filiale/tongchuan/pc/HiddenSituationWeixiu.vue +8 -5
- package/src/filiale/tongchuan/pc/QueryVisitHistory.vue +2 -2
- package/src/filiale/tongchuan/pc/RecordListLeft.vue +33 -5
- package/src/filiale/tongchuan/pc/RepairWorkReport.vue +24 -10
- package/src/filiale/tongchuan/pc/RepairsWork.vue +2 -0
- package/src/filiale/tongchuan/pc/TelMan.vue +9 -4
- package/src/filiale/tongchuan/pc/Traffic.vue +9 -4
- package/src/filiale/tongchuan/pc/UserWork.vue +805 -0
- package/src/filiale/tongchuan/pc/VisitInfo.vue +29 -22
- package/src/filiale/tongchuan/pc/VisitListWork.vue +251 -0
- package/src/filiale/tongchuan/pc/VoiceServer.vue +7 -0
- package/src/filiale/tongchuan/pc/WorkCenterList.vue +2 -2
- package/src/filiale/tongchuan/pc/WorkHistory.vue +4 -0
- package/src/filiale/tongchuan/pc/WorkList.vue +865 -0
- package/src/filiale/tongchuan/pc/WorkListAll.vue +340 -305
- package/src/filiale/tongchuan/pc/WorkOrderStatistics.vue +86 -19
- package/src/filiale/tongchuan/pc/WorkorderCheckDistributePlan.vue +5 -3
- package/src/filiale/tongchuan/pc/visitPlanList.vue +342 -0
- package/src/filiale/tongchuan/pc/visitPlanManage.vue +599 -0
- package/src/filiale/tongchuan/pc/visitServiceList.vue +285 -0
- package/src/filiale/tongchuan/telephone.js +6 -1
- package/src/filiale/v3new/android/FaultAll.vue +809 -0
- package/src/filiale/v3new/android/RepairFirstV.vue +633 -0
- package/src/filiale/v3new/pc/SiteBack.vue +83 -0
- package/src/filiale/v3new/pc/WorkCenter.vue +104 -0
- package/src/filiale/v3new/pc/WorkCenterList.vue +274 -0
- package/src/filiale/v3new/pc/WorkHistory.vue +537 -0
- package/src/filiale/v3new/pc/WorkList.vue +766 -0
- package/src/filiale/v3new/pc/WorkListNew.vue +706 -0
- package/src/filiale/v3new/pc/serviceDeleteOrder.vue +51 -0
- package/src/filiale/v3new/telephone.js +19 -0
- package/src/filiale/v3new/telephoneAndroid.js +15 -0
- package/src/filiale/weinanct/android/FaultAll.vue +1 -1
- package/src/filiale/weinanct/android/RepairDetails.vue +1 -1
- package/src/filiale/weinanct/android/RepairOrderV.vue +2 -2
- package/src/filiale/wenxi/android/RepairOrderV.vue +1 -1
- package/src/filiale/wuan/android/RepairOrderV.vue +1 -1
- package/src/filiale/wuan/pc/CheckWork.vue +1 -1
- package/src/filiale/wuan/pc/GasWorkSanhu.vue +1 -1
- package/src/filiale/wuhai/pc/TelFindUser.vue +1 -1
- package/src/filiale/yuansheng/android/RepairFirstV.vue +636 -0
- package/src/filiale/yuansheng/android/RepairInfo.vue +166 -0
- package/src/filiale/yuansheng/pc/DistributeWork.vue +177 -0
- package/src/filiale/yuansheng/pc/FailureEdit.vue +189 -0
- package/src/filiale/yuansheng/pc/HandplanInfo.vue +78 -0
- package/src/filiale/yuansheng/pc/MetereadInfo.vue +83 -0
- package/src/filiale/yuansheng/pc/ReservationWork.vue +156 -0
- package/src/filiale/yuansheng/telephone.js +7 -1
- package/src/filiale/yuansheng/telephoneAndroid.js +16 -0
- package/src/filiale/zhongsheng/android/RepairOrderV.vue +1 -1
- package/src/filiale/zhongsheng/pc/IgnitionVentilationWork.vue +1 -1
- package/src/filiale/zhongyi/pc/IgnitionVentilationWork.vue +1 -1
- package/src/filiale/zhongyi/pc/WorkList.vue +1 -1
- package/src/filiale/zhongyi/pc/WorkListAllNew.vue +672 -0
- package/src/filiale/zhongyi/telephone.js +2 -1
- package/src/filiale/zhongyi/telephoneAndroid.js +1 -1
- package/src/filiale/zhoukou/pc/ExportExcel.vue +1 -1
- package/src/plugins/LocalPagedList.js +107 -0
- package/src/telephone-android.js +5 -1
- package/src/telephone.js +2 -2
- package/src/filiale/rizhao/pc/imgmove.vue +0 -194
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "telephone-clients",
|
|
3
|
-
"version": "3.0.74
|
|
3
|
+
"version": "3.0.74",
|
|
4
4
|
"description": "呼叫模块前台组件",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"directories": {
|
|
@@ -94,11 +94,11 @@
|
|
|
94
94
|
"sinon-chai": "^2.8.0",
|
|
95
95
|
"style": "0.0.3",
|
|
96
96
|
"style-loader": "^0.20.3",
|
|
97
|
-
"system-clients": "3.2.
|
|
97
|
+
"system-clients": "3.2.55",
|
|
98
98
|
"system-phone": "1.2.100",
|
|
99
99
|
"terser-webpack-plugin-legacy": "^1.2.5",
|
|
100
100
|
"url-loader": "^0.5.7",
|
|
101
|
-
"vue-client": "1.24.
|
|
101
|
+
"vue-client": "1.24.77",
|
|
102
102
|
"vue-hot-reload-api": "^1.2.0",
|
|
103
103
|
"vue-html-loader": "^1.0.0",
|
|
104
104
|
"vue-loader": "^8.2.1",
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -182,7 +182,7 @@ export default {
|
|
|
182
182
|
if (this.chooseCol === true) {
|
|
183
183
|
this.fields = this.field
|
|
184
184
|
this.show = true;
|
|
185
|
-
//
|
|
185
|
+
//
|
|
186
186
|
if (this.defaultselect != null && this.defaultselect) {
|
|
187
187
|
for (var item in this.defaultselect) {
|
|
188
188
|
this.modelval.push(item)
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<img :src="src" :alt="alt" @click.stop="open()" :width="width" :height="height" title="点击查看图片"
|
|
4
|
+
:id="'vc-imgself-img-'+attach">
|
|
5
|
+
<div class="full-img" v-show="show" @contextmenu.prevent.stop="clearStyle">
|
|
6
|
+
<img :src="src" alt="" class="img-state" :alt="alt || ''" @mousewheel="bigimg(this)" id="image" draggable="false"
|
|
7
|
+
@mousedown.prevent="dropImage" style="position:fixed">
|
|
8
|
+
<div class="btns row">
|
|
9
|
+
<button type="button" name="button" class="btn btn-primary" @click.stop="leftRevolve()">向左旋转</button>
|
|
10
|
+
<button type="button" name="button" class="btn btn-primary" @click.stop="rightRevolve()">向右旋转</button>
|
|
11
|
+
<button type="button" name="button" class="btn btn-primary" @click.stop="close()">关闭</button>
|
|
12
|
+
</div>
|
|
13
|
+
</div>
|
|
14
|
+
</div>
|
|
15
|
+
</template>
|
|
16
|
+
|
|
17
|
+
<script>
|
|
18
|
+
import $ from 'jquery'
|
|
19
|
+
|
|
20
|
+
export default {
|
|
21
|
+
props: {
|
|
22
|
+
src: {
|
|
23
|
+
type: String
|
|
24
|
+
},
|
|
25
|
+
width: {
|
|
26
|
+
default: 60
|
|
27
|
+
},
|
|
28
|
+
height: {
|
|
29
|
+
default: 60
|
|
30
|
+
},
|
|
31
|
+
alt: {
|
|
32
|
+
default: '图片加载失败'
|
|
33
|
+
},
|
|
34
|
+
attach: {
|
|
35
|
+
type: String,
|
|
36
|
+
default: 'name'
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
data() {
|
|
40
|
+
return {
|
|
41
|
+
show: false,
|
|
42
|
+
deg: 0,
|
|
43
|
+
odiv: null,
|
|
44
|
+
powerw: 1.0,
|
|
45
|
+
positionX: null,
|
|
46
|
+
positionY: null,
|
|
47
|
+
powerh: 1.0
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
methods: {
|
|
51
|
+
clearStyle(e){
|
|
52
|
+
if (e === null) {
|
|
53
|
+
return
|
|
54
|
+
}
|
|
55
|
+
this.odiv = document.getElementById('image')
|
|
56
|
+
this.odiv.style.left = 500 + 'px';
|
|
57
|
+
this.odiv.style.top = -150 + 'px';
|
|
58
|
+
},
|
|
59
|
+
bigimg() {
|
|
60
|
+
if (event.wheelDelta > 0) {
|
|
61
|
+
this.powerh = this.powerh * 1.15
|
|
62
|
+
this.powerw = 1.15 * this.powerw
|
|
63
|
+
} else {
|
|
64
|
+
this.powerh = this.powerh * 0.85
|
|
65
|
+
this.powerw = 0.85 * this.powerw
|
|
66
|
+
}
|
|
67
|
+
this.imgState()
|
|
68
|
+
},
|
|
69
|
+
dropImage(e) {
|
|
70
|
+
if (e === null) {
|
|
71
|
+
return
|
|
72
|
+
}
|
|
73
|
+
this.odiv = e.target;
|
|
74
|
+
let disX = e.clientX - this.odiv.offsetLeft;
|
|
75
|
+
let disY = e.clientY - this.odiv.offsetTop;
|
|
76
|
+
document.onmousemove = (e) => {
|
|
77
|
+
let left = e.clientX - disX;
|
|
78
|
+
let top = e.clientY - disY;
|
|
79
|
+
this.positionX = top;
|
|
80
|
+
this.positionY = left;
|
|
81
|
+
this.odiv.style.left = left + 'px';
|
|
82
|
+
this.odiv.style.top = top + 'px';
|
|
83
|
+
};
|
|
84
|
+
document.onmouseup = (e) => {
|
|
85
|
+
document.onmousemove = null;
|
|
86
|
+
document.onmouseup = null;
|
|
87
|
+
};
|
|
88
|
+
},
|
|
89
|
+
open() {
|
|
90
|
+
this.deg = 0
|
|
91
|
+
this.powerw = 0.7
|
|
92
|
+
this.powerh = 0.8
|
|
93
|
+
$('.full-img').css({
|
|
94
|
+
'transform': 'rotate(' + this.deg + 'deg) scale(' + this.powerh + ' ,' + this.powerw + ')'
|
|
95
|
+
})
|
|
96
|
+
$('.container').css({
|
|
97
|
+
'opacity': '1'
|
|
98
|
+
})
|
|
99
|
+
this.show = true
|
|
100
|
+
},
|
|
101
|
+
close() {
|
|
102
|
+
this.show = false
|
|
103
|
+
},
|
|
104
|
+
leftRevolve() {
|
|
105
|
+
//tag
|
|
106
|
+
this.deg -= 90
|
|
107
|
+
this.imgState()
|
|
108
|
+
},
|
|
109
|
+
rightRevolve() {
|
|
110
|
+
//tag
|
|
111
|
+
this.deg += 90
|
|
112
|
+
this.imgState()
|
|
113
|
+
},
|
|
114
|
+
imgState() {
|
|
115
|
+
$('.img-state').css({
|
|
116
|
+
'transform': 'rotate(' + this.deg + 'deg) scale(' + this.powerh + ' ,' + this.powerw + ')'
|
|
117
|
+
})
|
|
118
|
+
|
|
119
|
+
}
|
|
120
|
+
},
|
|
121
|
+
}
|
|
122
|
+
</script>
|
|
123
|
+
<style media="screen" scoped>
|
|
124
|
+
.full-img {
|
|
125
|
+
position: fixed;
|
|
126
|
+
width: 100%;
|
|
127
|
+
height: 1000px;
|
|
128
|
+
overflow: hidden;
|
|
129
|
+
top: 0;
|
|
130
|
+
bottom: 0;
|
|
131
|
+
left: 0;
|
|
132
|
+
right: 0;
|
|
133
|
+
z-index: 20;
|
|
134
|
+
opacity: 1;
|
|
135
|
+
background: rgba(0, 0, 0, 0.8);
|
|
136
|
+
display: flex;
|
|
137
|
+
flex-direction: column;
|
|
138
|
+
justify-content: center;
|
|
139
|
+
align-items: center;
|
|
140
|
+
color: #fff;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
.btns {
|
|
144
|
+
position: fixed;
|
|
145
|
+
bottom: 100px;
|
|
146
|
+
height: auto;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
.btns button {
|
|
150
|
+
margin-right: 20px;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
.img-state {
|
|
154
|
+
|
|
155
|
+
}
|
|
156
|
+
</style>
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div style="height: auto;width: 100%;margin-top: 10px" class="repair-bg">
|
|
3
|
+
<criteria-paged :model="model" v-ref:paged @sort="sort">
|
|
4
|
+
<criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:criteria>
|
|
5
|
+
<div partial>
|
|
6
|
+
<form>
|
|
7
|
+
<div class="row app-row">
|
|
8
|
+
<div class="col-xs-4">
|
|
9
|
+
<img src="../../assets/用户姓名-蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
|
|
10
|
+
<label class="font_normal_body">用户姓名:</label>
|
|
11
|
+
</div>
|
|
12
|
+
<div class="col-xs-8">
|
|
13
|
+
<input class="search_input input-font"
|
|
14
|
+
v-model="model.username" condition="f_user_name like '{}%'" placeholder=" 请输入用户姓名" />
|
|
15
|
+
</div>
|
|
16
|
+
</div>
|
|
17
|
+
<div class="row app-row">
|
|
18
|
+
<div class="col-xs-4">
|
|
19
|
+
<img src="../../assets/小区蓝色.png" style="width: 20px;margin-bottom: 5px" alt="">
|
|
20
|
+
<label class="font_normal_body">用户地址:</label>
|
|
21
|
+
</div>
|
|
22
|
+
<div class="col-xs-8">
|
|
23
|
+
<input type="text" class="search_input input-font" v-model="model.address"
|
|
24
|
+
style="width: 60%" placeholder=" 请输入用户地址" condition="f_address like '{}%'">
|
|
25
|
+
</div>
|
|
26
|
+
</div>
|
|
27
|
+
<div class="row app-row">
|
|
28
|
+
<div class="col-xs-4">
|
|
29
|
+
<img src="../../assets/开始时间.png" style="width: 20px;margin-bottom: 5px" alt="">
|
|
30
|
+
<label class="font_normal_body">开始日期:</label>
|
|
31
|
+
</div>
|
|
32
|
+
<div class="col-xs-8">
|
|
33
|
+
<datepicker
|
|
34
|
+
class="select_list select"
|
|
35
|
+
placeholder='开始日期' style="width: 60%"
|
|
36
|
+
:format="'yyyy-MM-dd'"
|
|
37
|
+
:value.sync="model.startDate"
|
|
38
|
+
v-model="model.startDate"
|
|
39
|
+
condition="tsw.f_date >='{} 00:00:00'">
|
|
40
|
+
</datepicker>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
<div class="row app-row">
|
|
44
|
+
<div class="col-xs-4">
|
|
45
|
+
<img src="../../assets/结束时间.png" style="width: 20px;margin-bottom: 5px" alt="">
|
|
46
|
+
<label class="font_normal_body">结束日期:</label>
|
|
47
|
+
</div>
|
|
48
|
+
<div class="col-xs-8">
|
|
49
|
+
<datepicker
|
|
50
|
+
class="select_list select"
|
|
51
|
+
placeholder='结束日期' style="width: 60%"
|
|
52
|
+
:format="'yyyy-MM-dd'"
|
|
53
|
+
:value.sync="model.endDate"
|
|
54
|
+
v-model="model.endDate"
|
|
55
|
+
condition="tsw.f_date <='{} 00:00:00'">
|
|
56
|
+
</datepicker>
|
|
57
|
+
</div>
|
|
58
|
+
</div>
|
|
59
|
+
<div class="row app-row" style="height: 10px;"></div>
|
|
60
|
+
<div class="row text-center app-row">
|
|
61
|
+
<button type="button" class="btn btn-lg btn-font btn-color" @click="search()" style="min-width: 25%;">查询</button>
|
|
62
|
+
</div>
|
|
63
|
+
<div class="row app-row" style="height: 10px;"></div>
|
|
64
|
+
</form>
|
|
65
|
+
</div>
|
|
66
|
+
</criteria>
|
|
67
|
+
<list :model="model" partial='list' style="background-color: white">
|
|
68
|
+
<div partial>
|
|
69
|
+
<div class="auto app-text" style="margin-top: 5px;">
|
|
70
|
+
<div class="panel" style="padding: 10px 10px 5px 10px;">
|
|
71
|
+
<div class="panel-body panel-self">
|
|
72
|
+
<div class="row1">
|
|
73
|
+
<p class="panel-title col-xs-4 text-left font">工单编号</p>
|
|
74
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_service_id }}</p>
|
|
75
|
+
</div>
|
|
76
|
+
<div class="row1">
|
|
77
|
+
<p class="panel-title col-xs-4 text-left font">故障明细</p>
|
|
78
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.failure ? $parent.$parent.$parent.trouble(row.failure): '无' }}</p>
|
|
79
|
+
</div>
|
|
80
|
+
<div class="row1">
|
|
81
|
+
<p class="panel-title col-xs-4 text-left font">工单来源</p>
|
|
82
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_source }}</p>
|
|
83
|
+
</div>
|
|
84
|
+
<div class="row1">
|
|
85
|
+
<p class="panel-title col-xs-4 text-left font">派单人员</p>
|
|
86
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_single_man }}</p>
|
|
87
|
+
</div>
|
|
88
|
+
<div class="row1">
|
|
89
|
+
<p class="panel-title col-xs-4 text-left font">派单时间</p>
|
|
90
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_created_date }}</p>
|
|
91
|
+
</div>
|
|
92
|
+
<div class="row1">
|
|
93
|
+
<p class="panel-title col-xs-4 text-left font">联系电话</p>
|
|
94
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_contact_phone }}</p>
|
|
95
|
+
</div>
|
|
96
|
+
<div class="row1">
|
|
97
|
+
<p class="panel-title col-xs-4 text-left font">接单人员</p>
|
|
98
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_order_man }}</p>
|
|
99
|
+
</div>
|
|
100
|
+
<div class="row1">
|
|
101
|
+
<p class="panel-title col-xs-4 text-left font">结单时间</p>
|
|
102
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_date }}</p>
|
|
103
|
+
</div>
|
|
104
|
+
</div>
|
|
105
|
+
</div>
|
|
106
|
+
</div>
|
|
107
|
+
</div>
|
|
108
|
+
</list>
|
|
109
|
+
</criteria-paged>
|
|
110
|
+
</div>
|
|
111
|
+
</template>
|
|
112
|
+
<script>
|
|
113
|
+
import Vue from 'vue'
|
|
114
|
+
import {HttpResetClass,PagedList} from "vue-client";
|
|
115
|
+
import co from 'co'
|
|
116
|
+
export default {
|
|
117
|
+
title: '已办工单',
|
|
118
|
+
data() {
|
|
119
|
+
let model = new PagedList(`${this.$androidUtil.getProxyUrl()}/rs/sql/serviceDetails`, 20, {
|
|
120
|
+
f_filialeids:"this.f_filialeid",
|
|
121
|
+
orderitem: "'id desc'"
|
|
122
|
+
})
|
|
123
|
+
return {
|
|
124
|
+
model: model,
|
|
125
|
+
condition: "AND tswo.f_order_man = '" + Vue.user.name + "' AND sa.defname = '维修完成'"
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
props: {
|
|
129
|
+
// 控制工单类型,进行各自工作
|
|
130
|
+
worktype:{
|
|
131
|
+
type:String,
|
|
132
|
+
default:'报修单'
|
|
133
|
+
},
|
|
134
|
+
sourcet:{
|
|
135
|
+
type:String,
|
|
136
|
+
default:'横屏'
|
|
137
|
+
},
|
|
138
|
+
tabname:{
|
|
139
|
+
type:String
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
methods: {
|
|
143
|
+
hidden() {
|
|
144
|
+
this.criteriaShow = !this.criteriaShow
|
|
145
|
+
},
|
|
146
|
+
sort(field, rule) {
|
|
147
|
+
// 将所有排序方式设为不排序,实现相互排斥
|
|
148
|
+
for (let key in this.orderFields) {
|
|
149
|
+
if (key === field) {
|
|
150
|
+
this.orderFields[key] = rule
|
|
151
|
+
} else {
|
|
152
|
+
this.orderFields[key] = 'no'
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
// 如果新规则不排序,还原为默认排序
|
|
156
|
+
if (rule === 'no') {
|
|
157
|
+
this.model.paramSource.orderitem = `'${this.orderDefault}'`
|
|
158
|
+
} else {
|
|
159
|
+
this.model.paramSource.orderitem = `'${field} ${rule}'`
|
|
160
|
+
}
|
|
161
|
+
this.search()
|
|
162
|
+
},
|
|
163
|
+
search() {
|
|
164
|
+
this.$refs.paged.$refs.criteria.search()
|
|
165
|
+
},
|
|
166
|
+
selfSearch(args) {
|
|
167
|
+
console.log(args.condition)
|
|
168
|
+
args.condition += this.condition
|
|
169
|
+
console.log(args.condition)
|
|
170
|
+
////tag
|
|
171
|
+
//args.condition+=" and f_check_type='民用'"
|
|
172
|
+
this.model.search(args.condition, args.model, args.condValue)
|
|
173
|
+
},
|
|
174
|
+
trouble (val) {
|
|
175
|
+
let failureall=''
|
|
176
|
+
// val=[{"f_failure_type":"抽油烟机","failurecase":[],"f_equipment":""},{"f_failure_type":"抽油烟机","failurecase":[],"f_equipment":""},{"f_failure_type":"抽油烟机","failurecase":[],"f_equipment":""}]
|
|
177
|
+
|
|
178
|
+
let failure = JSON.parse(val)
|
|
179
|
+
for (let i = 0; i <failure.length; i++) {
|
|
180
|
+
if (failure[i].failurecase.length>0){
|
|
181
|
+
failureall+=failure[i].f_failure_type+":"
|
|
182
|
+
for (let j = 0; j < failure[i].failurecase.length; j++) {
|
|
183
|
+
failureall+=failure[i].failurecase[j]
|
|
184
|
+
if (j+1!=failure[i].failurecase.length){
|
|
185
|
+
failureall+=","
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
}else{
|
|
190
|
+
failureall+=failure[i].f_failure_type
|
|
191
|
+
}
|
|
192
|
+
if (i+1!=failure.length){
|
|
193
|
+
failureall+=';'
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
return failureall
|
|
197
|
+
},
|
|
198
|
+
},
|
|
199
|
+
ready() {
|
|
200
|
+
this.search()
|
|
201
|
+
// var _this = this;
|
|
202
|
+
// this.timeoutHandle = window.setInterval(function() {
|
|
203
|
+
// _this.sumsearch()
|
|
204
|
+
// }, 60000)
|
|
205
|
+
},
|
|
206
|
+
components: {
|
|
207
|
+
'delay-apply': (resolve) => {
|
|
208
|
+
require(['../../components/workorder/DelayApply'], resolve)
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
}
|
|
213
|
+
</script>
|
|
214
|
+
<style scoped>
|
|
215
|
+
.app-row {
|
|
216
|
+
background-color: white;
|
|
217
|
+
padding: 10px 10px 0 10px;
|
|
218
|
+
border-bottom: 1px solid rgba(235, 235, 235, 0.5);
|
|
219
|
+
}
|
|
220
|
+
.search_input {
|
|
221
|
+
border: 0;
|
|
222
|
+
outline: none;
|
|
223
|
+
}
|
|
224
|
+
.font{
|
|
225
|
+
font: 15px PingFang-SC-Medium;
|
|
226
|
+
color: #666666;
|
|
227
|
+
}
|
|
228
|
+
.input-font{
|
|
229
|
+
font: 15px PingFang-SC-Medium;
|
|
230
|
+
color: #333333;
|
|
231
|
+
}
|
|
232
|
+
.btn-font{
|
|
233
|
+
font:600 16px PingFang-SC-Bold;
|
|
234
|
+
color: #499EDF;
|
|
235
|
+
}
|
|
236
|
+
.btn-color{
|
|
237
|
+
background-color: #FFFFFF;
|
|
238
|
+
border-radius: 10px ;
|
|
239
|
+
border: 1px solid #499EDF;
|
|
240
|
+
}
|
|
241
|
+
.app-text {
|
|
242
|
+
font-size: 12px;
|
|
243
|
+
}
|
|
244
|
+
.panel-self{
|
|
245
|
+
border-radius: 10px;
|
|
246
|
+
border:1px solid #499EDF;
|
|
247
|
+
background-color: #F8F8F8;
|
|
248
|
+
}
|
|
249
|
+
.yybtn-color{
|
|
250
|
+
border-radius: 4px ;
|
|
251
|
+
border: 1px solid #499EDF;
|
|
252
|
+
}
|
|
253
|
+
.qxbtn-color{
|
|
254
|
+
background-color: #FFFFFF;
|
|
255
|
+
border-radius: 4px ;
|
|
256
|
+
border: 1px solid #499EDF;
|
|
257
|
+
}
|
|
258
|
+
.row1 {
|
|
259
|
+
margin: 4px 0;
|
|
260
|
+
display: flex;
|
|
261
|
+
align-items: center;
|
|
262
|
+
height: 25px !important;
|
|
263
|
+
}
|
|
264
|
+
</style>
|
|
@@ -157,6 +157,7 @@
|
|
|
157
157
|
import * as Util from '../Util'
|
|
158
158
|
import {HttpResetClass} from 'vue-client'
|
|
159
159
|
import data from '../../stores/wxconfig'
|
|
160
|
+
import bus from "../../bus";
|
|
160
161
|
|
|
161
162
|
let stateGen = function* (self) {
|
|
162
163
|
let sql = 'tel_singleTable_OrderBy'
|
|
@@ -348,6 +349,7 @@
|
|
|
348
349
|
that.reid = res.data.ReID
|
|
349
350
|
if(res.data.ReID && res.data.callingNo ){
|
|
350
351
|
that.$emit('call-in', {callNum: res.data.callingNo,ext_no: that.ext_no,aId: Util.f.id,RecordsID:res.data.ReID})
|
|
352
|
+
bus.$emit('tongdaohao',this.aChannel)
|
|
351
353
|
}
|
|
352
354
|
}
|
|
353
355
|
// 如果有按键返回信息
|
|
@@ -120,7 +120,7 @@
|
|
|
120
120
|
</td>
|
|
121
121
|
</tr>
|
|
122
122
|
</table>
|
|
123
|
-
<table class="table table-striped table-bordered"
|
|
123
|
+
<table class="table table-striped table-bordered" v-if="serviceall.f_recording_path">
|
|
124
124
|
<thead>
|
|
125
125
|
<tr>
|
|
126
126
|
<th style="text-align: center;background-color: #dfedfb;color:black;">录音文件</th>
|
|
@@ -296,7 +296,6 @@
|
|
|
296
296
|
ready() {
|
|
297
297
|
// 获取sendType.json配置信息 获取派单类型 转站点,转维修员,自选模式
|
|
298
298
|
getSendType(this)
|
|
299
|
-
this.getEmp()
|
|
300
299
|
|
|
301
300
|
},
|
|
302
301
|
methods: {
|
|
@@ -469,7 +468,11 @@
|
|
|
469
468
|
}, {resolveMsg: null, rejectMsg: null}
|
|
470
469
|
)
|
|
471
470
|
},
|
|
472
|
-
setModifyOrder() {
|
|
471
|
+
async setModifyOrder() {
|
|
472
|
+
this.meading = this.modifyOrder.f_handlingtype
|
|
473
|
+
if(this.meading === '转维修员' ){
|
|
474
|
+
await this.getEmp('维修员')
|
|
475
|
+
}
|
|
473
476
|
this.model = Object.assign({}, this.model, this.modifyOrder)
|
|
474
477
|
},
|
|
475
478
|
assignObj() {
|
|
@@ -587,9 +590,6 @@
|
|
|
587
590
|
if(this.operType == '报修'){
|
|
588
591
|
data.model.f_attendant = this.loginUser.name
|
|
589
592
|
}
|
|
590
|
-
//tag)
|
|
591
|
-
// // 获得数据发送地址
|
|
592
|
-
// let url = config[this.operType].url
|
|
593
593
|
// 获得数据发送地址
|
|
594
594
|
let url = ''
|
|
595
595
|
if(this.meading === '转站点'){
|
|
@@ -4,16 +4,15 @@
|
|
|
4
4
|
<label style="margin-left: 20px;">工单编号:</label><span>{{ row.f_service_id }}</span>
|
|
5
5
|
</div>
|
|
6
6
|
<div class="row">
|
|
7
|
-
<label style="margin-left: 20px;"
|
|
7
|
+
<label style="margin-left: 20px;">退回原因:</label>
|
|
8
8
|
<textarea style="width: 30%" name="name" rows="2" class="ver-textarea" class="form-control" v-model='model.serviceacitivity[0].f_site_back_reason'></textarea>
|
|
9
|
-
<!-- <input type="text" class="form-control" v-model='model.serviceacitivity[0].f_site_back_reason'>-->
|
|
10
9
|
</div>
|
|
11
10
|
<div class="row">
|
|
12
11
|
<button style="float: right;" type="button" name="button" class="button_search button_spacing"
|
|
13
12
|
@click="$emit('cancel')">取消
|
|
14
13
|
</button>
|
|
15
14
|
<button style="float: right;" type="button" name="button" class="button_search button_spacing"
|
|
16
|
-
@click="WorkBack()"
|
|
15
|
+
@click="WorkBack()">退回
|
|
17
16
|
</button>
|
|
18
17
|
</div>
|
|
19
18
|
</div>
|
|
@@ -54,7 +54,8 @@ export default {
|
|
|
54
54
|
type: Object
|
|
55
55
|
},
|
|
56
56
|
rowlist: [],
|
|
57
|
-
source: ''
|
|
57
|
+
source: '',
|
|
58
|
+
search_source: ''
|
|
58
59
|
},
|
|
59
60
|
data () {
|
|
60
61
|
return {
|
|
@@ -232,7 +233,8 @@ export default {
|
|
|
232
233
|
let http = new HttpResetClass()
|
|
233
234
|
if (this.source == 'mobile') {
|
|
234
235
|
val = {
|
|
235
|
-
|
|
236
|
+
// `this.getResourceById($${this.$login.f.orgid}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($维修员$)!=-1)`,
|
|
237
|
+
source: this.search_source?this.search_source:`this.getResourceById($${this.$login.f.depids}$,$department$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($维修员$)!=-1)`,
|
|
236
238
|
userid: `${Vue.user.id}`
|
|
237
239
|
}
|
|
238
240
|
http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/search`, {data: val}, {
|
|
@@ -242,22 +244,34 @@ export default {
|
|
|
242
244
|
// let result = res.data.filter(res=>res.depids==Vue.user.depids)
|
|
243
245
|
res.data.forEach((item) => {
|
|
244
246
|
this.repairers.push({label: item.name, value: item.name})
|
|
245
|
-
|
|
246
247
|
})
|
|
247
|
-
|
|
248
|
+
let temp = []
|
|
249
|
+
this.repairers = this.repairers.filter(item=>{
|
|
250
|
+
if (!temp.includes(item.label)){
|
|
251
|
+
temp.push(item.label)
|
|
252
|
+
return true
|
|
253
|
+
}
|
|
254
|
+
return false
|
|
255
|
+
})
|
|
248
256
|
})
|
|
249
257
|
} else {
|
|
250
258
|
val = {
|
|
251
|
-
source:
|
|
259
|
+
source: this.search_source?this.search_source:`this.getResourceById($${this.$login.f.depids}$,$department$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($维修员$)!=-1)`,
|
|
252
260
|
userid: `${this.$login.f.id}`
|
|
253
261
|
}
|
|
254
262
|
http.load('POST', '/rs/search', {data: val}, {resolveMsg: null, rejectMsg: null}).then((res) => {
|
|
255
|
-
debugger
|
|
256
|
-
// let result = res.data.filter(res=>res.depids==this.$login.f.depids)
|
|
257
263
|
|
|
264
|
+
// let result = res.data.filter(res=>res.depids==this.$login.f.depids)
|
|
258
265
|
res.data.forEach((item) => {
|
|
259
266
|
this.repairers.push({label: item.name, value: item.name})
|
|
260
|
-
|
|
267
|
+
})
|
|
268
|
+
let temp = []
|
|
269
|
+
this.repairers = this.repairers.filter(item=>{
|
|
270
|
+
if (!temp.includes(item.label)){
|
|
271
|
+
temp.push(item.label)
|
|
272
|
+
return true
|
|
273
|
+
}
|
|
274
|
+
return false
|
|
261
275
|
})
|
|
262
276
|
})
|
|
263
277
|
}
|