telephone-clients 3.0.105-4 → 3.0.105-5

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "telephone-clients",
3
- "version": "3.0.105-4",
3
+ "version": "3.0.105-5",
4
4
  "description": "呼叫模块前台组件",
5
5
  "main": "src/index.js",
6
6
  "directories": {
@@ -1,143 +1,146 @@
1
- <template>
2
- <div class="repair-bg auto" id="repair-first" style="padding-bottom:5px;overflow:auto">
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
- <img @click="search" src="../../assets/shuaxindaiban1.png" style="width: 40px;padding: 5px; float:right">
9
- </p>
10
- </blockquote>
11
- </div>
12
- <div class="panel panel-default repair-info-content auto">
13
- <div class="panel-body">
14
- <div class="panel panel-default well" >
15
- <div class="panel-body bg-info" style="padding: 10px">
16
- <div class="row form-group">
17
- <div class="col-sm-12 col-xs-12 col-md-12">
18
- <div class="row" >
19
- <div :class="{'text-danger': row.f_remindersign}" class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
20
- 工单编号: {{row.f_service_id}}<span v-if="row.f_remindersign">(催单)</span>
21
- </div>
22
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
23
- 置换时间: {{row.f_created_date}}
24
- </div>
25
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
26
- 用户姓名: {{row.f_user_name}}
27
- </div>
28
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
29
- 联系电话: {{row.f_contact_phone}}
30
- <img src="../../assets/telphonesend.png" style="width: 12px;" @click.stop.prevent='makeAPhoneCall(row.f_contact_phone)'>
31
- </div>
32
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
33
- 用户地址: {{row.f_address}}
34
- </div>
35
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
36
- 备注信息: {{row.f_remarks}}
37
- </div>
38
- </div>
39
- </div>
40
- <div class="col-sm-12 col-xs-12 col-md-12">
41
- <button type="button" name="button" class="btn btn-primary" style="background-color:#499edf;float: right" @click="selected(row)">立即处理</button>
42
- <!--<button style="margin-top:10px;" type="button" name="button" class="btn btn-primary" @click="delayedit(row)">延期申请</button>-->
43
- </div>
44
- </div>
45
- </div>
46
- </div>
47
- </div>
48
- </div>
49
- </div>
50
- </template>
51
- <script>
52
- import FailureShow from '../pc/FailureShow'
53
- export default{
54
- title: '维修员平板首页',
55
- data () {
56
- return {
57
- // rows: Object
58
- rows: [{
59
- f_user_name:'',
60
- f_contact_phone:'',
61
- failure:''
62
- }],
63
- editshow:false,
64
- row:{
65
- type:Object,
66
- default:{
67
- f_user_name:'',
68
- f_contact_phone:'',
69
- failure:''
70
- }
71
- }
72
- }
73
- },
74
- props: {
75
- worktype:{
76
- type:String,
77
- default:'置换通气单'
78
- },
79
- sourcet:{
80
- type:String,
81
- default:'横屏'
82
- }
83
- },
84
- methods: {
85
- selected (row) {
86
- if(this.sourcet == '横屏'){
87
- this.$goto('repair-order', {row: row,worktype:this.worktype},'self',this.search)
88
- }else{
89
- this.$goto('repair-orderV', {row: row,worktype:this.worktype},'self',this.search)
90
- }
91
- },
92
- delayedit (row) {
93
- row.state = '延期申请'
94
- this.$goto('delay-apply', {row:row})
95
- },
96
- search () {
97
- // 测试环境异步,真实环境同步
98
- //tag
99
- if (this.$androidUtil.isTest) {
100
- return this.$androidUtil.path({'alias':'getSubstitMobile','data':{}}).then((ret) => {
101
- // ret.data.forEach((item) => {
102
- // item.service_version = item.failure.indexOf("漏气") !== -1
103
- // })
104
- this.rows = ret.data
105
- })
106
- } else {
107
- let result = this.$androidUtil.path({'alias':'getSubstitMobile','data':{}})
108
- if (result.code === 200) {
109
- //tag)
110
- this.rows = result.data
111
- } else {
112
- this.$showMessage(`加载数据失败, 返回码: ${result.code}, 错误信息:${result.data}`)
113
- }
114
- }
115
- },
116
- makeAPhoneCall(phoneNumber) {
117
- this.$androidUtil.makeAPhoneCall(phoneNumber)
118
- },
119
- upload () {
120
- this.$goto('up-load')
121
- }
122
- },
123
- ready () {
124
- this.search()
125
- var _this = this;
126
- // this.timeoutHandle = window.setInterval(function() {
127
- // _this.search()
128
- // }, 60000)
129
- },
130
- components: {
131
- FailureShow,
132
- 'failure-show': FailureShow
133
- }
134
- }
135
- </script>
136
- <style>
137
- .class-a{
138
- border:1px solid red;
139
- }
140
- .padd-div-shu{
141
- padding-bottom: 5px;
142
- }
143
- </style>
1
+ <template>
2
+ <div class="repair-bg auto" id="repair-first" style="padding-bottom:5px;overflow:auto">
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
+ <img @click="search" src="../../assets/shuaxindaiban1.png" style="width: 40px;padding: 5px; float:right">
9
+ </p>
10
+ </blockquote>
11
+ </div>
12
+ <div class="panel panel-default repair-info-content auto">
13
+ <div class="panel-body">
14
+ <div class="panel panel-default well" >
15
+ <div class="panel-body bg-info" style="padding: 10px">
16
+ <div class="row form-group">
17
+ <div class="col-sm-12 col-xs-12 col-md-12">
18
+ <div class="row" >
19
+ <div :class="{'text-danger': row.f_remindersign}" class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
20
+ 工单编号: {{row.f_service_id}}<span v-if="row.f_remindersign">(催单)</span>
21
+ </div>
22
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
23
+ 置换时间: {{row.f_created_date}}
24
+ </div>
25
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
26
+ 用户姓名: {{row.f_user_name}}
27
+ </div>
28
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
29
+ 联系电话: {{row.f_contact_phone}}
30
+ <img src="../../assets/telphonesend.png" style="width: 12px;" @click.stop.prevent='makeAPhoneCall(row.f_contact_phone)'>
31
+ </div>
32
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
33
+ 用户地址: {{row.f_address}}
34
+ </div>
35
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
36
+ 备注信息: {{row.f_remarks}}
37
+ </div>
38
+ <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" style="color:red" v-if="row.f_backcase">
39
+ 回退原因: {{row.f_backcase}}
40
+ </div>
41
+ </div>
42
+ </div>
43
+ <div class="col-sm-12 col-xs-12 col-md-12">
44
+ <button type="button" name="button" class="btn btn-primary" style="background-color:#499edf;float: right" @click="selected(row)">立即处理</button>
45
+ <!--<button style="margin-top:10px;" type="button" name="button" class="btn btn-primary" @click="delayedit(row)">延期申请</button>-->
46
+ </div>
47
+ </div>
48
+ </div>
49
+ </div>
50
+ </div>
51
+ </div>
52
+ </div>
53
+ </template>
54
+ <script>
55
+ import FailureShow from '../pc/FailureShow'
56
+ export default{
57
+ title: '维修员平板首页',
58
+ data () {
59
+ return {
60
+ // rows: Object
61
+ rows: [{
62
+ f_user_name:'',
63
+ f_contact_phone:'',
64
+ failure:''
65
+ }],
66
+ editshow:false,
67
+ row:{
68
+ type:Object,
69
+ default:{
70
+ f_user_name:'',
71
+ f_contact_phone:'',
72
+ failure:''
73
+ }
74
+ }
75
+ }
76
+ },
77
+ props: {
78
+ worktype:{
79
+ type:String,
80
+ default:'置换通气单'
81
+ },
82
+ sourcet:{
83
+ type:String,
84
+ default:'横屏'
85
+ }
86
+ },
87
+ methods: {
88
+ selected (row) {
89
+ if(this.sourcet == '横屏'){
90
+ this.$goto('repair-order', {row: row,worktype:this.worktype},'self',this.search)
91
+ }else{
92
+ this.$goto('repair-orderV', {row: row,worktype:this.worktype},'self',this.search)
93
+ }
94
+ },
95
+ delayedit (row) {
96
+ row.state = '延期申请'
97
+ this.$goto('delay-apply', {row:row})
98
+ },
99
+ search () {
100
+ // 测试环境异步,真实环境同步
101
+ //tag
102
+ if (this.$androidUtil.isTest) {
103
+ return this.$androidUtil.path({'alias':'getSubstitMobile','data':{}}).then((ret) => {
104
+ // ret.data.forEach((item) => {
105
+ // item.service_version = item.failure.indexOf("漏气") !== -1
106
+ // })
107
+ this.rows = ret.data
108
+ })
109
+ } else {
110
+ let result = this.$androidUtil.path({'alias':'getSubstitMobile','data':{}})
111
+ if (result.code === 200) {
112
+ //tag)
113
+ this.rows = result.data
114
+ } else {
115
+ this.$showMessage(`加载数据失败, 返回码: ${result.code}, 错误信息:${result.data}`)
116
+ }
117
+ }
118
+ },
119
+ makeAPhoneCall(phoneNumber) {
120
+ this.$androidUtil.makeAPhoneCall(phoneNumber)
121
+ },
122
+ upload () {
123
+ this.$goto('up-load')
124
+ }
125
+ },
126
+ ready () {
127
+ this.search()
128
+ var _this = this;
129
+ // this.timeoutHandle = window.setInterval(function() {
130
+ // _this.search()
131
+ // }, 60000)
132
+ },
133
+ components: {
134
+ FailureShow,
135
+ 'failure-show': FailureShow
136
+ }
137
+ }
138
+ </script>
139
+ <style>
140
+ .class-a{
141
+ border:1px solid red;
142
+ }
143
+ .padd-div-shu{
144
+ padding-bottom: 5px;
145
+ }
146
+ </style>
@@ -1,376 +1,377 @@
1
- <template>
2
- <div class="basic-main" style="height: 100%">
3
- <div class="page-header app-header auto" style="padding: 15px;margin-right: 10px;right: 0%;height: 7%">
4
- <div @click="back()">
5
- <img src="../../../assets/back.png" style="margin: 0px"/>
6
- </div>
7
- </div>
8
- <work-busy :is-busy="loading"></work-busy>
9
- <div class="container-fluid" style="overflow: scroll">
10
- <div class="col-md-5" style="margin-right: 2%;margin-left: 2%;height: 100%;overflow: scroll">
11
- <div style="width: 100%;margin: auto">
12
- <table class="table table-striped table-bordered" style="margin-bottom: 6px">
13
- <thead>
14
- <tr>
15
- <th colspan="6" style="text-align: center;background-color: #dfedfb;color:black;">客户工单信息</th>
16
- </tr>
17
- </thead>
18
- <tbody>
19
- <tr>
20
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">用户名称:</td>
21
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ baseuserinfo.f_user_name }}</td>
22
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">用户编号:</td>
23
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ baseuserinfo.f_userinfo_code }}</td>
24
- </tr>
25
- <tr>
26
- <td colspan="1" style="text-align: center;border: #E9E9E9 solid 1px">详细地址:</td>
27
- <td colspan="3" style="text-align: center;border: #E9E9E9 solid 1px">{{ baseuserinfo.f_address }}</td>
28
- </tr>
29
- <tr v-if="serviceall.f_workorder_type=='报修单'">
30
- <td colspan="1" style="text-align: center;border: #E9E9E9 solid 1px">故障明细:</td>
31
- <td colspan="3" style="text-align: center;border: #E9E9E9 solid 1px">{{ changefailure(serviceall.f_new_failure) }}</td>
32
- </tr>
33
- <tr v-if="serviceall.f_workorder_type=='报修单'">
34
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">{{usermeter.f_collection_type=='按金额'?'累购金额:':'累购气量:'}}</td>
35
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ usermeter.f_collection_type=='按金额'?usermeter.f_total_fee:usermeter.f_total_gas }}</td>
36
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">左&ensp;右&ensp;表:</td>
37
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ usermeter.f_aroundmeter }}</td>
38
- </tr>
39
- <tr v-if="serviceall.f_workorder_type=='报修单'">
40
-
41
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">表&ensp;品&ensp;牌:</td>
42
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ usermeter.f_meter_brand }}</td>
43
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">表&ensp;型&ensp;号:</td>
44
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ usermeter.f_meter_style }}</td>
45
- </tr>
46
- <tr v-if="serviceall.f_workorder_type=='置换通气单'">
47
-
48
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">用户姓名:</td>
49
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ baseuserinfo.f_user_name }}</td>
50
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">用气性质:</td>
51
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ baseuserinfo.f_gasproperties }}</td>
52
- </tr>
53
- <tr v-if="serviceall.f_workorder_type=='置换通气单'">
54
-
55
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">联系电话:</td>
56
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ baseuserinfo.f_user_phone }}</td>
57
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">住户类型:</td>
58
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ baseuserinfo.f_house_type }}</td>
59
- </tr>
60
- <tr v-if="serviceall.f_workorder_type=='置换通气单'">
61
- <td colspan="1" style="text-align: center;border: #E9E9E9 solid 1px">身份证号:</td>
62
- <td colspan="3" style="text-align: center;border: #E9E9E9 solid 1px">{{baseuserinfo.f_shenfenzheng}}</td>
63
- </tr>
64
- <tr v-if="serviceall.f_workorder_type=='置换通气单'">
65
- <td colspan="1" style="text-align: center;border: #E9E9E9 solid 1px">用户地址:</td>
66
- <td colspan="3" style="text-align: center;border: #E9E9E9 solid 1px">{{baseuserinfo.f_address}}</td>
67
- </tr>
68
- <!-- <tr>-->
69
- <!-- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">派单时间:</td>-->
70
- <!-- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ service.f_created_date }}</td>-->
71
- <!-- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">完成时间:</td>-->
72
- <!-- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ service.f_repair_date }}</td>-->
73
- <!-- </tr>-->
74
- <tr>
75
-
76
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">到达时间:</td>
77
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ serviceall.f_date_come }}</td>
78
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">离开时间:</td>
79
- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ serviceall.f_date_leave }}</td>
80
- </tr>
81
- <tr>
82
- <td colspan="1" style="text-align: center;border: #E9E9E9 solid 1px">备注:</td>
83
- <td colspan="3" style="text-align: center;border: #E9E9E9 solid 1px">{{ serviceall.f_remarks }}</td>
84
- </tr>
85
- </tbody>
86
- </table>
87
- <table class="table table-striped table-bordered">
88
- <thead>
89
- <tr>
90
- <th style="text-align: center;background-color: #dfedfb;color:black;">燃气设施全景</th>
91
- </tr>
92
- </thead>
93
- <tbody>
94
- <tr>
95
- <td style="margin: auto;text-align: center">
96
- <div class="container" style="max-width: 550px;background: #FFFFFF">
97
- <div class="img" v-for="img in serviceall.imgs">
98
- <img-self-tel-plus :src="'rs/image/file/'+img.android_file" width="240" height="300"></img-self-tel-plus>
99
- </div>
100
- </div>
101
- </td>
102
- </tr>
103
- </tbody>
104
- </table>
105
- <table class="table table-striped table-bordered">
106
- <thead>
107
- <tr>
108
- <th style="text-align: center;background-color: #dfedfb;color:black;">用户签名照片</th>
109
- </tr>
110
- </thead>
111
- <tr>
112
- <td style="margin: auto;text-align: center">
113
- <div class="container" style="max-width: 500px;background: #FFFFFF">
114
- <div class="img" style="float: none">
115
- <img-self-tel-plus :src="'rs/image/file/'+serviceall.f_signname" width="400" height="300"></img-self-tel-plus>
116
- </div>
117
- </div>
118
- </td>
119
- </tr>
120
- </table>
121
- <table class="table table-striped table-bordered" >
122
- <thead>
123
- <tr>
124
- <th style="text-align: center;background-color: #dfedfb;color:black;">录音文件</th>
125
- </tr>
126
- </thead>
127
- <tr>
128
- <td style="margin: auto;text-align: center">
129
- <div class="container" style="max-width: 500px;background: #FFFFFF">
130
- <a class="button_spacing button_search-1"
131
- :href="'rs/image/file/'+serviceall.f_recording_path" >录音下载</a>
132
- </div>
133
- </td>
134
- </tr>
135
- </table>
136
-
137
- </div>
138
- </div>
139
- <div class style="width: 1%;height: 100%;background-color: #F1F8FF;float: left;"></div>
140
- <div class="col-md-6" style="height: 100%;overflow: scroll">
141
- <div style="width: 95%;margin-left: 5%">
142
- <table class="table table-striped table-bordered" v-for=" serviceone in servicerepair">
143
- <thead>
144
- <tr>
145
- <th style="text-align: center;background-color: #dfedfb;color:black;">{{ serviceone.f_type }}</th>
146
- </tr>
147
- </thead>
148
- <tbody>
149
- <tr v-for="detail in serviceone.details">
150
- <td>
151
- <div class="row">
152
- <div class="col-md-8" style="text-align: center;">{{ detail.f_project }}</div>
153
- <div class="col-md-4" style="text-align: center;" v-if="detail.type!='picture'">
154
- {{ detail.f_content?detail.f_content:'' }}
155
- </div>
156
- <div class="col-md-4" style="text-align: center;" v-if="detail.type=='picture'&&ispicture(serviceone.imgs,detail.f_project)">
157
- <button-link style="color: black" type="button" class="btn btn-link"
158
- @click="showpath(serviceone.imgs,detail.f_project)">查看照片
159
- </button-link>
160
- </div>
161
- <div class="col-md-4" style="text-align: center;" v-if="detail.type=='picture'&&!ispicture(serviceone.imgs,detail.f_project)">
162
- 无照片
163
- </div>
164
- </div>
165
- <div class="row" v-if="detail.f_first_imgname">
166
- <div class="container" style="max-width: 500px;background: #FFFFFF">
167
- <div class="img" style="float: none">
168
- <img-self-tel-plus :src="'rs/image/file/'+detail.f_first_imgname" width="400" height="300"></img-self-tel-plus>
169
- </div>
170
-
171
- </div>
172
- </div>
173
- </td>
174
-
175
-
176
- </tr>
177
- </tbody>
178
- </table>
179
-
180
-
181
- </div>
182
-
183
- </div>
184
- </div>
185
- </div>
186
- <modal :show.sync="imgshow" v-ref:modal backdrop="true">
187
- <header slot="modal-header" class="modal-header">
188
- {{ picturename }}
189
- </header>
190
- <article slot="modal-body" class="modal-body">
191
- <div class="from-group">
192
- <div class="row">
193
- <div class="col-md-6" v-for="item in showimgs">
194
- <img-self-tel-plus :src="item" width="300" height="400"></img-self-tel-plus>
195
- </div>
196
- </div>
197
- </div>
198
- </article>
199
- <footer slot="modal-footer" class="modal-footer" v-show="false">
200
- <button type="button" class="btn btn-success" @click='imgclose'>关闭</button>
201
- </footer>
202
- </modal>
203
- </template>
204
-
205
- <script>
206
- import {HttpResetClass} from 'vue-client'
207
-
208
- export default {
209
- title: '工单详情',
210
- props: ['curActivity', 'service'],
211
- data () {
212
- return {
213
- imgshow:false,
214
- picturename:'',
215
- showimg:'',
216
- baseuserinfo: {},
217
- showimgs:[],
218
- allimgs: [],
219
- servicerepair: [],
220
- serviceall: {},
221
- usermeter:{},
222
- loading: false
223
- }
224
- },
225
- ready () {
226
- this.loading=true
227
- ////tag
228
- ////tag)
229
- let http = new HttpResetClass()
230
- ////tag
231
- http.load('POST', 'rs/path/serviceWork', {data: {id: this.curActivity.id}}, {
232
- resolveMsg: null,
233
- rejectMsg: null
234
- }).then(res => {
235
- ////tag)
236
- for (let i = 0; i < res.data.length; i++) {
237
- if (res.data[i].id == this.curActivity.id) {
238
- this.serviceall = res.data[i]
239
- this.baseuserinfo = res.data[i].baseuserinfo
240
- this.servicerepair = res.data[i].servicerepair
241
- this.allimgs = res.data[i].imgs
242
- http.load('post','rs/sql/getBaseMeterInfo',{data:{f_userinfo_id:this.baseuserinfo.f_userinfo_id}},{
243
- resolveMsg: null,
244
- rejectMsg: null
245
- }).then(res=>{
246
- this.usermeter=res.data[0]
247
- })
248
- }
249
- }
250
-
251
- ////tag)
252
- ////tag)
253
- ////tag)
254
- ////tag)
255
- this.loading=false
256
- })
257
- },
258
- methods: {
259
- openNewWindows(url){
260
- if (url){
261
- let image = new Image()
262
- image.src=url
263
- const imageWindow = window.open(url)
264
- imageWindow.document.write(image.outerHTML)
265
- window.open(url,'_blank')
266
- }
267
- },
268
- changefailure(val){
269
- let failureall=''
270
- // val=[{"f_failure_type":"抽油烟机","failurecase":[],"f_equipment":""},{"f_failure_type":"抽油烟机","failurecase":[],"f_equipment":""},{"f_failure_type":"抽油烟机","failurecase":[],"f_equipment":""}]
271
- let failure = JSON.parse(val)
272
- for (let i = 0; i <failure.length; i++) {
273
- if (failure[i].failurecase.length>0){
274
- failureall+=failure[i].f_failure_type+":"
275
- for (let j = 0; j < failure[i].failurecase.length; j++) {
276
- failureall+=failure[i].failurecase[j]
277
- if (j+1!=failure[i].failurecase.length){
278
- failureall+=","
279
- }
280
- }
281
-
282
- }else{
283
- failureall+=failure[i].f_failure_type
284
- }
285
- if (i+1!=failure.length){
286
- failureall+=';'
287
- }
288
- }
289
- return failureall
290
- },
291
- imgclose(){
292
- this.imgshow=false
293
- },
294
- ispicture(imgs,imgid){
295
- let imgstr=''
296
- let imgpath=''
297
- for (let i = 0; i < imgs.length; i++) {
298
- if (imgs[i].imgpath==imgid){
299
- imgstr=imgs[i].android_file
300
- imgpath=imgs[i].imgpath
301
- }
302
- }
303
- ////tag
304
- ////tag
305
- if (imgstr){
306
- return true
307
- }
308
- return false
309
- },
310
- showpath (imgs,imgid) {
311
- const img = imgs.filter(res => res.imgpath === imgid).map(res => 'rs/image/file/' + res.android_file)
312
- if (img.length > 0) {
313
- this.showimgs = img
314
- this.picturename = imgid
315
- this.imgshow = true
316
- }
317
- },
318
- back () {
319
- this.$back()
320
- }
321
- }
322
- }
323
- </script>
324
-
325
- <style scoped>
326
- .img {
327
- border: 1px solid #9773ed;
328
- width: auto;
329
- height: auto;
330
- float: left;
331
- text-align: center;
332
- margin: 6px;
333
- }
334
-
335
- img {
336
- margin: 6px;
337
- }
338
-
339
-
340
- .container {
341
- margin: 10px auto;
342
- width: 80%;
343
- height: auto;
344
- }
345
-
346
- div::-webkit-scrollbar {
347
- width: 0 !important;
348
- height: 0 !important;
349
- }
350
-
351
- div {
352
- -ms-overflow-style: none;
353
- overflow: -moz-scrollbars-none;
354
- }
355
-
356
- .divmask {
357
- pointer-events: none;
358
- }
359
-
360
- .app-header {
361
- border-radius: 50%;
362
- background: rgba(73, 158, 223, 0.4);
363
- color: #FFF;
364
- padding: 20px;
365
- text-align: center;
366
- font-size: 1.2em;
367
- z-index: 10;
368
- opacity: 0.5;
369
- bottom: 50px;
370
- margin-top: -20px;
371
- position: absolute;
372
- top: 10%;
373
- right: 2%;
374
- height: 8%;
375
- }
376
- </style>
1
+ <template>
2
+ <div class="basic-main" style="height: 100%">
3
+ <div class="page-header app-header auto" style="padding: 15px;margin-right: 10px;right: 0%;height: 7%">
4
+ <div @click="back()">
5
+ <img src="../../../assets/back.png" style="margin: 0px"/>
6
+ </div>
7
+ </div>
8
+ <work-busy :is-busy="loading"></work-busy>
9
+ <div class="container-fluid" style="overflow: scroll">
10
+ <div class="col-md-5" style="margin-right: 2%;margin-left: 2%;height: 100%;overflow: scroll">
11
+ <div style="width: 100%;margin: auto">
12
+ <table class="table table-striped table-bordered" style="margin-bottom: 6px">
13
+ <thead>
14
+ <tr>
15
+ <th colspan="6" style="text-align: center;background-color: #dfedfb;color:black;">客户工单信息</th>
16
+ </tr>
17
+ </thead>
18
+ <tbody>
19
+ <tr>
20
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">用户名称:</td>
21
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ baseuserinfo.f_user_name }}</td>
22
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">用户编号:</td>
23
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ baseuserinfo.f_userinfo_code }}</td>
24
+ </tr>
25
+ <tr>
26
+ <td colspan="1" style="text-align: center;border: #E9E9E9 solid 1px">详细地址:</td>
27
+ <td colspan="3" style="text-align: center;border: #E9E9E9 solid 1px">{{ baseuserinfo.f_address }}</td>
28
+ </tr>
29
+ <tr v-if="serviceall.f_workorder_type=='报修单'">
30
+ <td colspan="1" style="text-align: center;border: #E9E9E9 solid 1px">故障明细:</td>
31
+ <td colspan="3" style="text-align: center;border: #E9E9E9 solid 1px">{{ changefailure(serviceall.f_new_failure) }}</td>
32
+ </tr>
33
+ <tr v-if="serviceall.f_workorder_type=='报修单'">
34
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">{{usermeter.f_collection_type=='按金额'?'累购金额:':'累购气量:'}}</td>
35
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ usermeter.f_collection_type=='按金额'?usermeter.f_total_fee:usermeter.f_total_gas }}</td>
36
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">左&ensp;右&ensp;表:</td>
37
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ usermeter.f_aroundmeter }}</td>
38
+ </tr>
39
+ <tr v-if="serviceall.f_workorder_type=='报修单'">
40
+
41
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">表&ensp;品&ensp;牌:</td>
42
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ usermeter.f_meter_brand }}</td>
43
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">表&ensp;型&ensp;号:</td>
44
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ usermeter.f_meter_style }}</td>
45
+ </tr>
46
+ <tr v-if="serviceall.f_workorder_type=='置换通气单'">
47
+
48
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">用户姓名:</td>
49
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ baseuserinfo.f_user_name }}</td>
50
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">用气性质:</td>
51
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ baseuserinfo.f_gasproperties }}</td>
52
+ </tr>
53
+ <tr v-if="serviceall.f_workorder_type=='置换通气单'">
54
+
55
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">联系电话:</td>
56
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ baseuserinfo.f_user_phone }}</td>
57
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">住户类型:</td>
58
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ baseuserinfo.f_house_type }}</td>
59
+ </tr>
60
+ <tr v-if="serviceall.f_workorder_type=='置换通气单'">
61
+ <td colspan="1" style="text-align: center;border: #E9E9E9 solid 1px">身份证号:</td>
62
+ <td colspan="3" style="text-align: center;border: #E9E9E9 solid 1px">{{baseuserinfo.f_shenfenzheng}}</td>
63
+ </tr>
64
+ <tr v-if="serviceall.f_workorder_type=='置换通气单'">
65
+ <td colspan="1" style="text-align: center;border: #E9E9E9 solid 1px">用户地址:</td>
66
+ <td colspan="3" style="text-align: center;border: #E9E9E9 solid 1px">{{baseuserinfo.f_address}}</td>
67
+ </tr>
68
+ <!-- <tr>-->
69
+
70
+ <!-- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">派单时间:</td>-->
71
+ <!-- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ service.f_created_date }}</td>-->
72
+ <!-- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">完成时间:</td>-->
73
+ <!-- <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ service.f_repair_date }}</td>-->
74
+ <!-- </tr>-->
75
+ <tr>
76
+
77
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">到达时间:</td>
78
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ serviceall.f_date_come }}</td>
79
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 17%">离开时间:</td>
80
+ <td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ serviceall.f_date_leave }}</td>
81
+ </tr>
82
+ <tr>
83
+ <td colspan="1" style="text-align: center;border: #E9E9E9 solid 1px">备注:</td>
84
+ <td colspan="3" style="text-align: center;border: #E9E9E9 solid 1px">{{ serviceall.f_remarks }}</td>
85
+ </tr>
86
+ </tbody>
87
+ </table>
88
+ <table class="table table-striped table-bordered">
89
+ <thead>
90
+ <tr>
91
+ <th style="text-align: center;background-color: #dfedfb;color:black;">燃气设施全景</th>
92
+ </tr>
93
+ </thead>
94
+ <tbody>
95
+ <tr>
96
+ <td style="margin: auto;text-align: center">
97
+ <div class="container" style="max-width: 550px;background: #FFFFFF">
98
+ <div class="img" v-for="img in serviceall.imgs">
99
+ <img-self-tel-plus :src="'rs/image/file/'+img.android_file" width="240" height="300"></img-self-tel-plus>
100
+ </div>
101
+ </div>
102
+ </td>
103
+ </tr>
104
+ </tbody>
105
+ </table>
106
+ <table class="table table-striped table-bordered">
107
+ <thead>
108
+ <tr>
109
+ <th style="text-align: center;background-color: #dfedfb;color:black;">用户签名照片</th>
110
+ </tr>
111
+ </thead>
112
+ <tr>
113
+ <td style="margin: auto;text-align: center">
114
+ <div class="container" style="max-width: 500px;background: #FFFFFF">
115
+ <div class="img" style="float: none">
116
+ <img-self-tel-plus :src="'rs/image/file/'+serviceall.f_signname" width="400" height="300"></img-self-tel-plus>
117
+ </div>
118
+ </div>
119
+ </td>
120
+ </tr>
121
+ </table>
122
+ <table class="table table-striped table-bordered" >
123
+ <thead>
124
+ <tr>
125
+ <th style="text-align: center;background-color: #dfedfb;color:black;">录音文件</th>
126
+ </tr>
127
+ </thead>
128
+ <tr>
129
+ <td style="margin: auto;text-align: center">
130
+ <div class="container" style="max-width: 500px;background: #FFFFFF">
131
+ <a class="button_spacing button_search-1"
132
+ :href="'rs/image/file/'+serviceall.f_recording_path" >录音下载</a>
133
+ </div>
134
+ </td>
135
+ </tr>
136
+ </table>
137
+
138
+ </div>
139
+ </div>
140
+ <div class style="width: 1%;height: 100%;background-color: #F1F8FF;float: left;"></div>
141
+ <div class="col-md-6" style="height: 100%;overflow: scroll">
142
+ <div style="width: 95%;margin-left: 5%">
143
+ <table class="table table-striped table-bordered" v-for=" serviceone in servicerepair">
144
+ <thead>
145
+ <tr>
146
+ <th style="text-align: center;background-color: #dfedfb;color:black;">{{ serviceone.f_type }}</th>
147
+ </tr>
148
+ </thead>
149
+ <tbody>
150
+ <tr v-for="detail in serviceone.details">
151
+ <td>
152
+ <div class="row">
153
+ <div class="col-md-8" style="text-align: center;">{{ detail.f_project }}</div>
154
+ <div class="col-md-4" style="text-align: center;" v-if="detail.type!='picture'">
155
+ {{ detail.f_content?detail.f_content:'无' }}
156
+ </div>
157
+ <div class="col-md-4" style="text-align: center;" v-if="detail.type=='picture'&&ispicture(serviceone.imgs,detail.f_project)">
158
+ <button-link style="color: black" type="button" class="btn btn-link"
159
+ @click="showpath(serviceone.imgs,detail.f_project)">查看照片
160
+ </button-link>
161
+ </div>
162
+ <div class="col-md-4" style="text-align: center;" v-if="detail.type=='picture'&&!ispicture(serviceone.imgs,detail.f_project)">
163
+ 无照片
164
+ </div>
165
+ </div>
166
+ <div class="row" v-if="detail.f_first_imgname">
167
+ <div class="container" style="max-width: 500px;background: #FFFFFF">
168
+ <div class="img" style="float: none">
169
+ <img-self-tel-plus :src="'rs/image/file/'+detail.f_first_imgname" width="400" height="300"></img-self-tel-plus>
170
+ </div>
171
+
172
+ </div>
173
+ </div>
174
+ </td>
175
+
176
+
177
+ </tr>
178
+ </tbody>
179
+ </table>
180
+
181
+
182
+ </div>
183
+
184
+ </div>
185
+ </div>
186
+ </div>
187
+ <modal :show.sync="imgshow" v-ref:modal backdrop="true">
188
+ <header slot="modal-header" class="modal-header">
189
+ {{ picturename }}
190
+ </header>
191
+ <article slot="modal-body" class="modal-body">
192
+ <div class="from-group">
193
+ <div class="row">
194
+ <div class="col-md-6" v-for="item in showimgs">
195
+ <img-self-tel-plus :src="item" width="300" height="400"></img-self-tel-plus>
196
+ </div>
197
+ </div>
198
+ </div>
199
+ </article>
200
+ <footer slot="modal-footer" class="modal-footer" v-show="false">
201
+ <button type="button" class="btn btn-success" @click='imgclose'>关闭</button>
202
+ </footer>
203
+ </modal>
204
+ </template>
205
+
206
+ <script>
207
+ import {HttpResetClass} from 'vue-client'
208
+
209
+ export default {
210
+ title: '工单详情',
211
+ props: ['curActivity', 'service'],
212
+ data () {
213
+ return {
214
+ imgshow:false,
215
+ picturename:'',
216
+ showimg:'',
217
+ baseuserinfo: {},
218
+ showimgs:[],
219
+ allimgs: [],
220
+ servicerepair: [],
221
+ serviceall: {},
222
+ usermeter:{},
223
+ loading: false
224
+ }
225
+ },
226
+ ready () {
227
+ this.loading=true
228
+ ////tag
229
+ ////tag)
230
+ let http = new HttpResetClass()
231
+ ////tag
232
+ http.load('POST', 'rs/path/serviceWork', {data: {id: this.curActivity.id}}, {
233
+ resolveMsg: null,
234
+ rejectMsg: null
235
+ }).then(res => {
236
+ ////tag)
237
+ for (let i = 0; i < res.data.length; i++) {
238
+ if (res.data[i].id == this.curActivity.id) {
239
+ this.serviceall = res.data[i]
240
+ this.baseuserinfo = res.data[i].baseuserinfo
241
+ this.servicerepair = res.data[i].servicerepair
242
+ this.allimgs = res.data[i].imgs
243
+ http.load('post','rs/sql/getBaseMeterInfo',{data:{f_userinfo_id:this.baseuserinfo.f_userinfo_id}},{
244
+ resolveMsg: null,
245
+ rejectMsg: null
246
+ }).then(res=>{
247
+ this.usermeter=res.data[0]
248
+ })
249
+ }
250
+ }
251
+
252
+ ////tag)
253
+ ////tag)
254
+ ////tag)
255
+ ////tag)
256
+ this.loading=false
257
+ })
258
+ },
259
+ methods: {
260
+ openNewWindows(url){
261
+ if (url){
262
+ let image = new Image()
263
+ image.src=url
264
+ const imageWindow = window.open(url)
265
+ imageWindow.document.write(image.outerHTML)
266
+ window.open(url,'_blank')
267
+ }
268
+ },
269
+ changefailure(val){
270
+ let failureall=''
271
+ // val=[{"f_failure_type":"抽油烟机","failurecase":[],"f_equipment":""},{"f_failure_type":"抽油烟机","failurecase":[],"f_equipment":""},{"f_failure_type":"抽油烟机","failurecase":[],"f_equipment":""}]
272
+ let failure = JSON.parse(val)
273
+ for (let i = 0; i <failure.length; i++) {
274
+ if (failure[i].failurecase.length>0){
275
+ failureall+=failure[i].f_failure_type+":"
276
+ for (let j = 0; j < failure[i].failurecase.length; j++) {
277
+ failureall+=failure[i].failurecase[j]
278
+ if (j+1!=failure[i].failurecase.length){
279
+ failureall+=","
280
+ }
281
+ }
282
+
283
+ }else{
284
+ failureall+=failure[i].f_failure_type
285
+ }
286
+ if (i+1!=failure.length){
287
+ failureall+=';'
288
+ }
289
+ }
290
+ return failureall
291
+ },
292
+ imgclose(){
293
+ this.imgshow=false
294
+ },
295
+ ispicture(imgs,imgid){
296
+ let imgstr=''
297
+ let imgpath=''
298
+ for (let i = 0; i < imgs.length; i++) {
299
+ if (imgs[i].imgpath==imgid){
300
+ imgstr=imgs[i].android_file
301
+ imgpath=imgs[i].imgpath
302
+ }
303
+ }
304
+ ////tag
305
+ ////tag
306
+ if (imgstr){
307
+ return true
308
+ }
309
+ return false
310
+ },
311
+ showpath (imgs,imgid) {
312
+ const img = imgs.filter(res => res.imgpath === imgid).map(res => 'rs/image/file/' + res.android_file)
313
+ if (img.length > 0) {
314
+ this.showimgs = img
315
+ this.picturename = imgid
316
+ this.imgshow = true
317
+ }
318
+ },
319
+ back () {
320
+ this.$back()
321
+ }
322
+ }
323
+ }
324
+ </script>
325
+
326
+ <style scoped>
327
+ .img {
328
+ border: 1px solid #9773ed;
329
+ width: auto;
330
+ height: auto;
331
+ float: left;
332
+ text-align: center;
333
+ margin: 6px;
334
+ }
335
+
336
+ img {
337
+ margin: 6px;
338
+ }
339
+
340
+
341
+ .container {
342
+ margin: 10px auto;
343
+ width: 80%;
344
+ height: auto;
345
+ }
346
+
347
+ div::-webkit-scrollbar {
348
+ width: 0 !important;
349
+ height: 0 !important;
350
+ }
351
+
352
+ div {
353
+ -ms-overflow-style: none;
354
+ overflow: -moz-scrollbars-none;
355
+ }
356
+
357
+ .divmask {
358
+ pointer-events: none;
359
+ }
360
+
361
+ .app-header {
362
+ border-radius: 50%;
363
+ background: rgba(73, 158, 223, 0.4);
364
+ color: #FFF;
365
+ padding: 20px;
366
+ text-align: center;
367
+ font-size: 1.2em;
368
+ z-index: 10;
369
+ opacity: 0.5;
370
+ bottom: 50px;
371
+ margin-top: -20px;
372
+ position: absolute;
373
+ top: 10%;
374
+ right: 2%;
375
+ height: 8%;
376
+ }
377
+ </style>
@@ -624,23 +624,23 @@ export default {
624
624
  async getservicework() {
625
625
  let http = new HttpResetClass()
626
626
  ////tag
627
- let res = await http.load('POST', 'rs/path/serviceWork', {data: {id: 4696}}, {
627
+ let res = await http.load('POST', 'rs/logic/tel_getServiceRepair', {data: {serviceid: this.row.f_service_id}}, {
628
628
  resolveMsg: null,
629
629
  rejectMsg: null
630
630
  })
631
- console.log('res========',res)
632
- console.log('this.model.serviceacitivity[0]',this.model.serviceacitivity[0])
631
+ //console.log('res========',res)
632
+ //console.log('this.model.serviceacitivity[0]',this.model.serviceacitivity[0])
633
633
  if(res.data.length>0){
634
634
  res.data[0].servicerepair.forEach((detail)=>{
635
635
  if(detail.hasOwnProperty('id')){
636
- console.log('删除detail.id=='+detail.id)
636
+ //console.log('删除detail.id=='+detail.id)
637
637
  delete detail.id
638
638
  }
639
639
  console.log(detail)
640
640
  if(detail.imgs.length>0){
641
641
  detail.imgs.forEach((img)=>{
642
642
  if(img.hasOwnProperty('id')){
643
- console.log('删除d.id=='+img.id)
643
+ //console.log('删除d.id=='+img.id)
644
644
  delete img.id
645
645
  }
646
646
  console.log(img)
@@ -650,7 +650,7 @@ export default {
650
650
  if(detail.details.length>0){
651
651
  detail.details.forEach((d)=>{
652
652
  if(d.hasOwnProperty('id')){
653
- console.log('删除d.id=='+d.id)
653
+ //console.log('删除d.id=='+d.id)
654
654
  delete d.id
655
655
  }
656
656
  })
@@ -659,7 +659,7 @@ export default {
659
659
  if(res.data[0].imgs.length>0){
660
660
  res.data[0].imgs.forEach((img)=>{
661
661
  if(img.hasOwnProperty('id')){
662
- console.log('删除d.id=='+img.id)
662
+ //console.log('删除d.id=='+img.id)
663
663
  delete img.id
664
664
  }
665
665
  img.path=`${this.$androidUtil.getProxyUrl()}/rs/image/file/${img.android_file}`
@@ -679,7 +679,7 @@ export default {
679
679
  // this.model.serviceacitivity[0].f_signname=res.data[0].f_signname
680
680
  }
681
681
 
682
- console.log('处理数据完成后this.model.serviceacitivity[0]',this.model.serviceacitivity[0])
682
+ //console.log('处理数据完成后this.model.serviceacitivity[0]',this.model.serviceacitivity[0])
683
683
  }
684
684
  },
685
685
  watch: {
@@ -1,146 +0,0 @@
1
- <template>
2
- <div class="repair-bg auto" id="repair-first" style="padding-bottom:5px;overflow:auto">
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
- <img @click="search" src="../../assets/shuaxindaiban1.png" style="width: 40px;padding: 5px; float:right">
9
- </p>
10
- </blockquote>
11
- </div>
12
- <div class="panel panel-default repair-info-content auto">
13
- <div class="panel-body">
14
- <div class="panel panel-default well" >
15
- <div class="panel-body bg-info" style="padding: 10px">
16
- <div class="row form-group">
17
- <div class="col-sm-12 col-xs-12 col-md-12">
18
- <div class="row" >
19
- <div :class="{'text-danger': row.f_remindersign}" class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
20
- 工单编号: {{row.f_service_id}}<span v-if="row.f_remindersign">(催单)</span>
21
- </div>
22
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
23
- 置换时间: {{row.f_created_date}}
24
- </div>
25
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
26
- 用户姓名: {{row.f_user_name}}
27
- </div>
28
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
29
- 联系电话: {{row.f_contact_phone}}
30
- <img src="../../assets/telphonesend.png" style="width: 12px;" @click.stop.prevent='makeAPhoneCall(row.f_contact_phone)'>
31
- </div>
32
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
33
- 用户地址: {{row.f_address}}
34
- </div>
35
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu">
36
- 备注信息: {{row.f_remarks}}
37
- </div>
38
- <div class="col-sm-12 col-xs-12 col-md-12 padd-div-shu" style="color: red" v-if="row.f_backcase">
39
- 退回原因: {{row.f_backcase}}
40
- </div>
41
- </div>
42
- </div>
43
- <div class="col-sm-12 col-xs-12 col-md-12">
44
- <button type="button" name="button" class="btn btn-primary" style="background-color:#499edf;float: right" @click="selected(row)">立即处理</button>
45
- <!--<button style="margin-top:10px;" type="button" name="button" class="btn btn-primary" @click="delayedit(row)">延期申请</button>-->
46
- </div>
47
- </div>
48
- </div>
49
- </div>
50
- </div>
51
- </div>
52
- </div>
53
- </template>
54
- <script>
55
- import FailureShow from '../pc/FailureShow'
56
- export default{
57
- title: '维修员平板首页',
58
- data () {
59
- return {
60
- // rows: Object
61
- rows: [{
62
- f_user_name:'',
63
- f_contact_phone:'',
64
- failure:''
65
- }],
66
- editshow:false,
67
- row:{
68
- type:Object,
69
- default:{
70
- f_user_name:'',
71
- f_contact_phone:'',
72
- failure:''
73
- }
74
- }
75
- }
76
- },
77
- props: {
78
- worktype:{
79
- type:String,
80
- default:'置换通气单'
81
- },
82
- sourcet:{
83
- type:String,
84
- default:'横屏'
85
- }
86
- },
87
- methods: {
88
- selected (row) {
89
- if(this.sourcet == '横屏'){
90
- this.$goto('repair-order', {row: row,worktype:this.worktype},'self',this.search)
91
- }else{
92
- this.$goto('repair-orderV', {row: row,worktype:this.worktype},'self',this.search)
93
- }
94
- },
95
- delayedit (row) {
96
- row.state = '延期申请'
97
- this.$goto('delay-apply', {row:row})
98
- },
99
- search () {
100
- // 测试环境异步,真实环境同步
101
- //tag
102
- if (this.$androidUtil.isTest) {
103
- return this.$androidUtil.path({'alias':'getSubstitMobile','data':{}}).then((ret) => {
104
- // ret.data.forEach((item) => {
105
- // item.service_version = item.failure.indexOf("漏气") !== -1
106
- // })
107
- this.rows = ret.data
108
- })
109
- } else {
110
- let result = this.$androidUtil.path({'alias':'getSubstitMobile','data':{}})
111
- if (result.code === 200) {
112
- //tag)
113
- this.rows = result.data
114
- } else {
115
- this.$showMessage(`加载数据失败, 返回码: ${result.code}, 错误信息:${result.data}`)
116
- }
117
- }
118
- },
119
- makeAPhoneCall(phoneNumber) {
120
- this.$androidUtil.makeAPhoneCall(phoneNumber)
121
- },
122
- upload () {
123
- this.$goto('up-load')
124
- }
125
- },
126
- ready () {
127
- this.search()
128
- var _this = this;
129
- // this.timeoutHandle = window.setInterval(function() {
130
- // _this.search()
131
- // }, 60000)
132
- },
133
- components: {
134
- FailureShow,
135
- 'failure-show': FailureShow
136
- }
137
- }
138
- </script>
139
- <style>
140
- .class-a{
141
- border:1px solid red;
142
- }
143
- .padd-div-shu{
144
- padding-bottom: 5px;
145
- }
146
- </style>