safecheck-client 3.0.34-65 → 3.0.34-66
Sign up to get free protection for your applications and to get access to all the features.
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "safecheck-client",
|
3
3
|
"//": "主分支版本别乱升,测试包的版本直接发包(建议使用1.XX.XX-XXX格式作为测试包,不要频繁升级第三位版本号),别提交版本号。切了分支切记把主分支版本升了,保证主分支始终是最高版本!!!!!",
|
4
|
-
"version": "3.0.34-
|
4
|
+
"version": "3.0.34-66",
|
5
5
|
"description": "安检模块 前端组件",
|
6
6
|
"author": "丁新 <417755458@qq.com>",
|
7
7
|
"license": "ISC",
|
@@ -0,0 +1,502 @@
|
|
1
|
+
<style scoped>
|
2
|
+
.bg {
|
3
|
+
background-color: blue;
|
4
|
+
height: 1px;
|
5
|
+
border: 0;
|
6
|
+
}
|
7
|
+
|
8
|
+
.app-row {
|
9
|
+
background-color: white;
|
10
|
+
padding: 10px 10px 0 10px;
|
11
|
+
border-bottom: 1px solid rgba(235, 235, 235, 0.5);
|
12
|
+
}
|
13
|
+
|
14
|
+
.search_input {
|
15
|
+
border: 0;
|
16
|
+
outline: none;
|
17
|
+
}
|
18
|
+
|
19
|
+
.font {
|
20
|
+
font: 15px PingFang-SC-Medium;
|
21
|
+
color: #666666;
|
22
|
+
}
|
23
|
+
|
24
|
+
.input-font {
|
25
|
+
font: 15px PingFang-SC-Medium;
|
26
|
+
color: #333333;
|
27
|
+
}
|
28
|
+
|
29
|
+
.btn-font {
|
30
|
+
font: 600 16px PingFang-SC-Bold;
|
31
|
+
color: #499EDF;
|
32
|
+
}
|
33
|
+
|
34
|
+
.btn-color {
|
35
|
+
background-color: #FFFFFF;
|
36
|
+
border-radius: 10px;
|
37
|
+
border: 1px solid #499EDF;
|
38
|
+
}
|
39
|
+
|
40
|
+
.app-text {
|
41
|
+
font-size: 12px;
|
42
|
+
}
|
43
|
+
|
44
|
+
.panel-self {
|
45
|
+
border-radius: 10px;
|
46
|
+
border: 1px solid #499EDF;
|
47
|
+
background-color: #F8F8F8;
|
48
|
+
}
|
49
|
+
|
50
|
+
.yybtn-color {
|
51
|
+
background-color: #499edf;
|
52
|
+
border-radius: 4px;
|
53
|
+
border: 1px solid #499EDF;
|
54
|
+
color: #FFFFFF;
|
55
|
+
font: 14px PingFang-SC-Bold;
|
56
|
+
}
|
57
|
+
|
58
|
+
.qxbtn-color {
|
59
|
+
background-color: #FFFFFF;
|
60
|
+
border-radius: 4px;
|
61
|
+
color: #499edf;
|
62
|
+
font: 14px PingFang-SC-Bold;
|
63
|
+
border: 1px solid #499EDF;
|
64
|
+
}
|
65
|
+
|
66
|
+
.button_shrink_top {
|
67
|
+
width: 35px;
|
68
|
+
height: 35px;
|
69
|
+
background-size: 100%;
|
70
|
+
background-image: url("../../../static/newStyle/stretch_top.png")
|
71
|
+
}
|
72
|
+
|
73
|
+
.button_shrink_bottom {
|
74
|
+
width: 35px;
|
75
|
+
height: 35px;
|
76
|
+
background-size: 100%;
|
77
|
+
background-image: url("../../../static/newStyle/stretch_bottom.png")
|
78
|
+
}
|
79
|
+
|
80
|
+
.button_shrink_left {
|
81
|
+
width: 35px;
|
82
|
+
height: 35px;
|
83
|
+
background-size: 100%;
|
84
|
+
background-image: url("../../../static/newStyle/stretch_left.png")
|
85
|
+
}
|
86
|
+
|
87
|
+
.button_shrink_right {
|
88
|
+
width: 35px;
|
89
|
+
height: 35px;
|
90
|
+
background-size: 100%;
|
91
|
+
background-image: url("../../../static/newStyle/stretch_right.png")
|
92
|
+
}
|
93
|
+
</style>
|
94
|
+
<template>
|
95
|
+
<div style="height: auto;width: 100%">
|
96
|
+
<criteria-paged :model="model" v-ref:paged :pager="false">
|
97
|
+
<list :model="model" partial='list'>
|
98
|
+
<div partial>
|
99
|
+
<div class="auto app-text" style="margin-top: 5px;">
|
100
|
+
<div class="panel" style="padding: 10px 10px 5px 10px;">
|
101
|
+
<div class="panel-body panel-self">
|
102
|
+
<div class="col-xs-12">
|
103
|
+
<p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户编号:</b></p>
|
104
|
+
<p class="panel-title col-xs-5 text-left input-font" style="width: 74%">{{ row.f_userinfo_code }}</p>
|
105
|
+
</div>
|
106
|
+
<div class="col-xs-12">
|
107
|
+
<p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户名称:</b></p>
|
108
|
+
<p class="panel-title col-xs-7 text-left input-font" style="width: 79%">{{ row.f_user_name }}</p>
|
109
|
+
</div>
|
110
|
+
<div class="col-xs-12">
|
111
|
+
<p class="panel-title text-left font" style="width: 23%;float: left"><b>用户电话:</b></p>
|
112
|
+
<p class="panel-title text-left input-font" style="width: 77%">{{ row.f_user_phone }}</p>
|
113
|
+
</div>
|
114
|
+
<div class="col-xs-12">
|
115
|
+
<p class="panel-title text-left font" style="width: 23%;float: left"><b>安检时间:</b></p>
|
116
|
+
<p class="panel-title text-left input-font" style="width: 77%">{{ row.f_create_time }}</p>
|
117
|
+
</div>
|
118
|
+
<div class="col-xs-12">
|
119
|
+
<p class="panel-title text-left font" style="width: 21%;float: left"><b>用户地址:</b></p>
|
120
|
+
<p class="panel-title text-left input-font" style="width: 79%">{{ row.f_address }}</p>
|
121
|
+
</div>
|
122
|
+
<div class="col-xs-12">
|
123
|
+
<p class="panel-title text-left font" style="width: 21%;float: left"><b>所属安检:</b></p>
|
124
|
+
<p class="panel-title text-left input-font" style="width: 79%">{{ row.f_checker_name }}</p>
|
125
|
+
</div>
|
126
|
+
<div class="col-xs-6">
|
127
|
+
<p class="panel-title col-xs-5 text-left font"><b>检 查 项:</b></p>
|
128
|
+
<p class="panel-title col-xs-7 text-left input-font">{{ row.f_device_type }}</p>
|
129
|
+
</div>
|
130
|
+
<div class="col-xs-6">
|
131
|
+
<p class="panel-title col-xs-5 text-left font"><b>隐 患 项:</b></p>
|
132
|
+
<p class="panel-title col-xs-7 text-left input-font">{{ row.f_item_name }}</p>
|
133
|
+
</div>
|
134
|
+
<div class="col-xs-12">
|
135
|
+
<p class="panel-title col-xs-5 text-left font"><b>备注:</b></p>
|
136
|
+
<p class="panel-title col-xs-7 text-left input-font">{{ row.f_comments }}</p>
|
137
|
+
</div>
|
138
|
+
<div class="col-xs-12">
|
139
|
+
<p class="panel-title col-xs-5 text-left font"><b>隐患原因:</b></p>
|
140
|
+
<p class="panel-title col-xs-7 text-left input-font">{{ row.f_item_value }}</p>
|
141
|
+
</div>
|
142
|
+
|
143
|
+
<div class="col-xs-12">
|
144
|
+
<button type="button" name="button" class="btn btn-primary"
|
145
|
+
style="background-color:#499edf;float: right"
|
146
|
+
@click="$parent.$parent.$parent.openshowModal(row)">查看
|
147
|
+
</button>
|
148
|
+
<button type="button" name="button" class="btn btn-primary"
|
149
|
+
style="background-color:#499edf;float: right;margin-right:10px;"
|
150
|
+
@click="$parent.$parent.$parent.openshowModal1(row)">处理
|
151
|
+
</button>
|
152
|
+
<!--<button type="button" class="btn btn-default" @click="$parent.$parent.$parent.ceshi">确认2</button>-->
|
153
|
+
</div>
|
154
|
+
</div>
|
155
|
+
</div>
|
156
|
+
</div>
|
157
|
+
</div>
|
158
|
+
</list>
|
159
|
+
</criteria-paged>
|
160
|
+
</div>
|
161
|
+
<modal :show.sync="showModal">
|
162
|
+
<div slot="modal-header" class="modal-header">
|
163
|
+
<h4 class="modal-title">
|
164
|
+
隐患照片
|
165
|
+
</h4>
|
166
|
+
</div>
|
167
|
+
<div slot="modal-body" class="modal-body">
|
168
|
+
<div class="from-group">
|
169
|
+
<div class="row">
|
170
|
+
<div class="col-md-6">
|
171
|
+
<img-self v-if="row.f_path" :src="`${this.$androidUtil.getProxyUrl()}/rs/image/file/`+row.f_path" width="300" height="400"></img-self>
|
172
|
+
<img-self v-if="row.f_p1_path" :src="`${this.$androidUtil.getProxyUrl()}/rs/image/file/`+row.f_p1_path" width="300" height="400"></img-self>
|
173
|
+
<img-self v-if="row.f_p2_path" :src="`${this.$androidUtil.getProxyUrl()}/rs/image/file/`+row.f_p2_path" width="300" height="400"></img-self>
|
174
|
+
</div>
|
175
|
+
</div>
|
176
|
+
</div>
|
177
|
+
</div>
|
178
|
+
<div slot="modal-footer" class="modal-footer">
|
179
|
+
<button type="button" class="btn btn-default" @click="closeshowModal">确认</button>
|
180
|
+
</div>
|
181
|
+
</modal>
|
182
|
+
<modal :show.sync="showModal1">
|
183
|
+
<div slot="modal-header" class="modal-header">
|
184
|
+
<h4 class="modal-title">
|
185
|
+
处理结果
|
186
|
+
</h4>
|
187
|
+
</div>
|
188
|
+
<div slot="modal-body" class="modal-body">
|
189
|
+
<div class="row" style="margin-bottom: 10px">
|
190
|
+
<p class="panel-title col-xs-3 text-left font"><b>隐 患 项:</b></p>
|
191
|
+
<p class="panel-title col-xs-9 text-left input-font">{{ deal.result.f_item_name }}</p>
|
192
|
+
</div>
|
193
|
+
<div class="row" style="margin-bottom: 10px">
|
194
|
+
<p class="panel-title col-xs-3 text-left font"><b>隐患原因:</b></p>
|
195
|
+
<p class="panel-title col-xs-9 text-left input-font">{{ deal.result.f_item_value }}</p>
|
196
|
+
</div>
|
197
|
+
<div class="form-group col-sm-12">
|
198
|
+
<div class="auto">
|
199
|
+
<div class="panel" style="padding: 10px 10px 5px 10px;">
|
200
|
+
<div class="panel-body panel-self"
|
201
|
+
style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
|
202
|
+
<img-self :src="deal.f_deal_path" alt="整改照片" :width="140" :height="170" capture="camera"
|
203
|
+
type="file"></img-self>
|
204
|
+
<div class="row text-right div-photo" style="height: 50px;margin-top: -30px">
|
205
|
+
<img src="../../assets/remove.png" @click="delfile('f_deal_path', deal.f_deal_path)"></img>
|
206
|
+
<button type="button" name="button" class="btn btn-primary btn-photo"
|
207
|
+
@click="takePic('f_deal_path','整改照片')">拍照
|
208
|
+
</button>
|
209
|
+
</div>
|
210
|
+
</div>
|
211
|
+
<div class="panel-body panel-self"
|
212
|
+
style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
|
213
|
+
<img-self :src="deal.f_other_dealpath1" alt="整改照片" :width="140" :height="170" capture="camera"
|
214
|
+
type="file"></img-self>
|
215
|
+
<div class="row text-right div-photo" style="height: 50px;margin-top: -30px">
|
216
|
+
<img src="../../assets/remove.png" @click="delfile('f_other_dealpath1', deal.f_other_dealpath1)"></img>
|
217
|
+
<button type="button" name="button" class="btn btn-primary btn-photo"
|
218
|
+
@click="takePic('f_other_dealpath1','整改照片')">拍照
|
219
|
+
</button>
|
220
|
+
</div>
|
221
|
+
</div>
|
222
|
+
<div class="panel-body panel-self"
|
223
|
+
style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
|
224
|
+
<img-self :src="deal.f_other_dealpath2" alt="整改照片" :width="140" :height="170" capture="camera"
|
225
|
+
type="file"></img-self>
|
226
|
+
<div class="row text-right div-photo" style="height: 50px;margin-top: -30px">
|
227
|
+
<img src="../../assets/remove.png" @click="delfile('f_other_dealpath2', deal.f_other_dealpath2)"></img>
|
228
|
+
<button type="button" name="button" class="btn btn-primary btn-photo"
|
229
|
+
@click="takePic('f_other_dealpath2','整改照片')">拍照
|
230
|
+
</button>
|
231
|
+
</div>
|
232
|
+
</div>
|
233
|
+
</div>
|
234
|
+
</div>
|
235
|
+
</div>
|
236
|
+
<div class="form-group col-sm-12" v-if="isNeedDealSign">
|
237
|
+
<p class="panel-title text-left font" style="text-align: center">用户签名:</p>
|
238
|
+
<div class="auto">
|
239
|
+
<div class="panel" style="padding: 10px 10px 5px 10px;">
|
240
|
+
<div class="panel-body panel-self"
|
241
|
+
style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
|
242
|
+
<img :src="deal.f_dealsign_path" :width="200" :height="150"/>
|
243
|
+
<div class="row text-right div-photo" style="height: 50px;margin-top: 60px">
|
244
|
+
<button type="button" name="button" class="btn btn-primary btn-photo" @click="sign">签名</button>
|
245
|
+
</div>
|
246
|
+
</div>
|
247
|
+
</div>
|
248
|
+
</div>
|
249
|
+
</div>
|
250
|
+
<div class="row">
|
251
|
+
<div class="col-xs-2">
|
252
|
+
<p class="panel-title text-left font" style="text-align: center">处理结果</p>
|
253
|
+
</div>
|
254
|
+
<div class="col-xs-9">
|
255
|
+
<textarea class="input-font " v-model=deal.f_deal_remark style="width: 100%"></textarea>
|
256
|
+
</div>
|
257
|
+
</div>
|
258
|
+
<div v-if="isCancelLimitGas" style="display: flex;align-items: end;height: 30px;gap: 10px;padding-left: 16px;">
|
259
|
+
<input type="checkbox" v-model="deletebacklistisselect"/>
|
260
|
+
<div style="height: 18px">取消限制该用户购气</div>
|
261
|
+
</div>
|
262
|
+
</div>
|
263
|
+
<div slot="modal-footer" class="modal-footer">
|
264
|
+
<button type="button" class="btn btn-default" @click="commitDealDefect">确认</button>
|
265
|
+
<button type="button" class="btn btn-default" @click="closeshowModal1">取消</button>
|
266
|
+
</div>
|
267
|
+
</modal>
|
268
|
+
</template>
|
269
|
+
|
270
|
+
<script>
|
271
|
+
import Vue from 'vue'
|
272
|
+
import {HttpResetClass, PagedList} from 'vue-client'
|
273
|
+
import * as Util from '../Util'
|
274
|
+
|
275
|
+
export default {
|
276
|
+
props:['row'],
|
277
|
+
title: '无计划安检查询',
|
278
|
+
data() {
|
279
|
+
return {
|
280
|
+
row:{},
|
281
|
+
showModal: false,
|
282
|
+
showModal1: false,
|
283
|
+
showimg: '',
|
284
|
+
deal: {
|
285
|
+
result: {},
|
286
|
+
f_deal_path: '',
|
287
|
+
f_other_dealpath1: '',
|
288
|
+
f_other_dealpath2: '',
|
289
|
+
f_deal_remark: '',
|
290
|
+
f_dealsign_path: '', //签名
|
291
|
+
f_dealer: Vue.user.name,
|
292
|
+
f_dealer_id: Vue.user.id
|
293
|
+
},
|
294
|
+
user_types: [
|
295
|
+
{label: '请选择用户类型', value: ''},
|
296
|
+
{label: '民用', value: '民用'},
|
297
|
+
{label: '非民用', value: '非民用'},
|
298
|
+
],
|
299
|
+
f_filialeids: '',
|
300
|
+
model: new PagedList(`${this.$androidUtil.getProxyUrl()}/rs/sql/AndroidDealWith`, 20, {
|
301
|
+
condition: 'this.condition',
|
302
|
+
f_filialeids: `'${Vue.user.orgid}'`,
|
303
|
+
f_checker_id: `'${Vue.user.id}'`
|
304
|
+
}),
|
305
|
+
criteriaShow: false,
|
306
|
+
isNeedDealSign: this.$appdata.getSingleValue('隐患处理是否需要签名') == 'true',
|
307
|
+
isCancelLimitGas: this.$appdata.getSingleValue('隐患处理-取消限制购气') == '是',
|
308
|
+
deletebacklistisselect: false
|
309
|
+
}
|
310
|
+
},
|
311
|
+
ready() {
|
312
|
+
debugger
|
313
|
+
this.selfSearch()
|
314
|
+
},
|
315
|
+
methods: {
|
316
|
+
async deletebacklist() {
|
317
|
+
////tag)
|
318
|
+
let http = new HttpResetClass()
|
319
|
+
////tag
|
320
|
+
let res1 = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {
|
321
|
+
data: {
|
322
|
+
items: "*",
|
323
|
+
tablename: "t_userinfo",
|
324
|
+
condition: `f_userinfo_code = ${this.deal.result.f_userinfo_code}`,
|
325
|
+
orderitem: "f_userinfo_code"
|
326
|
+
}
|
327
|
+
}, {resolveMsg: null, rejectMsg: null})
|
328
|
+
////tag)
|
329
|
+
////tag
|
330
|
+
let res2 = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/logic/backlistOperate`, {
|
331
|
+
data: {
|
332
|
+
"f_operat_type": "取消拉黑",
|
333
|
+
"f_state": "有效",
|
334
|
+
"f_user_name": this.deal.result.f_user_name,
|
335
|
+
"f_comments": '',
|
336
|
+
"f_operator": Vue.user.name,
|
337
|
+
"f_operatorid": Vue.user.id,
|
338
|
+
"f_orgid": Vue.user.orgid,
|
339
|
+
"f_orgname": Vue.user.orgs,
|
340
|
+
"f_depid": Vue.user.depids,
|
341
|
+
"f_depname": Vue.user.deps,
|
342
|
+
"f_describe": `${Vue.user.name}对用户${this.deal.result.f_user_name}进行取消拉黑`,
|
343
|
+
"f_userinfo_id": {
|
344
|
+
"f_userinfo_id": res1.data[0].f_userinfo_id,
|
345
|
+
"f_user_state": "正常",
|
346
|
+
"version": res1.data[0].version
|
347
|
+
},
|
348
|
+
"f_limit_times":"",
|
349
|
+
"f_limit_value":""
|
350
|
+
}
|
351
|
+
}, {resolveMsg: null, rejectMsg: null})
|
352
|
+
},
|
353
|
+
// 签名回调
|
354
|
+
signCallback(prop, fileName) {
|
355
|
+
console.log("签名回调地址" + fileName)
|
356
|
+
// HostApp.alert('绑定属性:' + prop + ' 文件全路径如file:///storage/sdcard0/safecheck/abc.jpg:' + fullFileName)
|
357
|
+
HostApp.__this__.$set('deal.f_dealsign_path', fileName)
|
358
|
+
HostApp.__callback__ = null
|
359
|
+
HostApp.__this__ = null
|
360
|
+
},
|
361
|
+
// 用户签名
|
362
|
+
sign() {
|
363
|
+
if (!this.deal.f_deal_path) {
|
364
|
+
this.$showMessage('请先拍摄处理后照片!!!')
|
365
|
+
return
|
366
|
+
}
|
367
|
+
this.delAudioFile('f_dealsign_path', this.deal.f_dealsign_path)
|
368
|
+
let prop = 'f_dealsign_path'
|
369
|
+
let idx = 'aofeng'
|
370
|
+
let fileName
|
371
|
+
if (!this.deal.f_dealsign_path) {
|
372
|
+
fileName = Util.guid() + '-valve-' + idx + '-' + prop + '.jpg'
|
373
|
+
} else {
|
374
|
+
fileName = Util.getFileName(this.deal.f_dealsign_path)
|
375
|
+
}
|
376
|
+
HostApp.__callback__ = this.signCallback
|
377
|
+
HostApp.__this__ = this
|
378
|
+
HostApp.getSignature({
|
379
|
+
file: fileName,
|
380
|
+
requestCode: 111,
|
381
|
+
callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");'
|
382
|
+
})
|
383
|
+
},
|
384
|
+
delAudioFile(prop, fileName) {
|
385
|
+
if (!fileName)
|
386
|
+
return
|
387
|
+
else {
|
388
|
+
HostApp.delfile(fileName)
|
389
|
+
this.deal[prop] = null
|
390
|
+
}
|
391
|
+
},
|
392
|
+
commitDealDefect() {
|
393
|
+
//tag
|
394
|
+
//tag)
|
395
|
+
// if (!this.deal.f_deal_path) {
|
396
|
+
// this.$showMessage('处理后照片必须上传')
|
397
|
+
// return
|
398
|
+
// }
|
399
|
+
if (this.isNeedDealSign && !this.deal.f_dealsign_path) {
|
400
|
+
this.$showMessage('签名必须上传')
|
401
|
+
return
|
402
|
+
}
|
403
|
+
if (this.deletebacklistisselect){
|
404
|
+
this.deletebacklist()
|
405
|
+
}
|
406
|
+
this.deal.f_other_dealpath = this.deal.f_deal_path
|
407
|
+
HostApp.__this__ = this
|
408
|
+
HostApp.logicWithHint({
|
409
|
+
'logic': 'safe_dealWithDefect', 'callback': 'javascript: HostApp.__this__.commitCallBack()',
|
410
|
+
'data': this.deal, 'backresult': 1
|
411
|
+
})
|
412
|
+
},
|
413
|
+
commitCallBack(jo) {
|
414
|
+
//tag
|
415
|
+
//tag)
|
416
|
+
if (jo.state == 'ok') {
|
417
|
+
let ress = JSON.parse(jo.result)
|
418
|
+
if (ress.code == 200) {
|
419
|
+
this.$showMessage(ress.msg)
|
420
|
+
this.closeshowModal1()
|
421
|
+
} else {
|
422
|
+
this.$showMessage(ress.msg)
|
423
|
+
}
|
424
|
+
} else {
|
425
|
+
this.$showMessage('本地服务调用失败')
|
426
|
+
}
|
427
|
+
},
|
428
|
+
delfile(prop, fileName) {
|
429
|
+
if (fileName == Vue.nopic)
|
430
|
+
return
|
431
|
+
else {
|
432
|
+
HostApp.delfile(fileName)
|
433
|
+
this.deal[prop] = Vue.nopic
|
434
|
+
}
|
435
|
+
},
|
436
|
+
openshowModal(val) {
|
437
|
+
this.row = val
|
438
|
+
this.showModal = true
|
439
|
+
},
|
440
|
+
closeshowModal() {
|
441
|
+
this.showimg = ''
|
442
|
+
this.showModal = false
|
443
|
+
},
|
444
|
+
openshowModal1(val) {
|
445
|
+
this.deal.result = val
|
446
|
+
//tag
|
447
|
+
//tag
|
448
|
+
this.deletebacklistisselect = false
|
449
|
+
this.showModal1 = true
|
450
|
+
},
|
451
|
+
closeshowModal1() {
|
452
|
+
this.deal = {
|
453
|
+
result: {},
|
454
|
+
f_deal_path: '',
|
455
|
+
f_other_dealpath1: '',
|
456
|
+
f_other_dealpath2: '',
|
457
|
+
f_deal_remark: '',
|
458
|
+
f_dealsign_path: '', //签名
|
459
|
+
f_dealer: Vue.user.name,
|
460
|
+
f_dealer_id: Vue.user.id
|
461
|
+
}
|
462
|
+
this.showModal1 = false
|
463
|
+
this.selfSearch()
|
464
|
+
},
|
465
|
+
cameraCallBack(prop, fileName) {
|
466
|
+
HostApp.__this__.$set( 'deal.'+prop+'', fileName)
|
467
|
+
HostApp.__callback__ = null
|
468
|
+
HostApp.__this__ = null
|
469
|
+
},
|
470
|
+
takePic(prop, title) {
|
471
|
+
HostApp.__callback__ = this.cameraCallBack
|
472
|
+
HostApp.__this__ = this
|
473
|
+
let fileName
|
474
|
+
if (!this.deal[prop] || this.deal[prop].includes("nopic.png")) {
|
475
|
+
fileName = Util.guid() + '-' + prop + '.jpg'
|
476
|
+
} else {
|
477
|
+
fileName = Util.getFileName(this.deal[prop])
|
478
|
+
}
|
479
|
+
//tag
|
480
|
+
//tag
|
481
|
+
HostApp._open_a_page({
|
482
|
+
type: 'boomerang',
|
483
|
+
page: 'com.aofeng.hybrid.android.peripheral.CameraActivity',
|
484
|
+
param: {
|
485
|
+
file: fileName,
|
486
|
+
requestCode: 111,
|
487
|
+
callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");',
|
488
|
+
watermark: title + '\t时间:' + Util.toStandardTimeString() + '\t' + Vue.user.name
|
489
|
+
}
|
490
|
+
})
|
491
|
+
},
|
492
|
+
selfSearch() {
|
493
|
+
let condition = `tcp.f_userinfo_code = '${this.row.f_userinfo_code}'`
|
494
|
+
this.model.search(condition)
|
495
|
+
},
|
496
|
+
|
497
|
+
hidden() {
|
498
|
+
this.criteriaShow = !this.criteriaShow
|
499
|
+
}
|
500
|
+
}
|
501
|
+
}
|
502
|
+
</script>
|
@@ -261,7 +261,7 @@
|
|
261
261
|
<div class="col-xs-12">
|
262
262
|
<button type="button" name="button" class="btn btn-primary"
|
263
263
|
style="background-color:#499edf;float: right"
|
264
|
-
@click="$parent.$parent.$parent.
|
264
|
+
@click="$parent.$parent.$parent.inspectRepair (row)">处理</button>
|
265
265
|
</div>
|
266
266
|
</div>
|
267
267
|
</div>
|
@@ -368,6 +368,36 @@ export default {
|
|
368
368
|
window.removeEventListener('popstate', this.fun, false)
|
369
369
|
},
|
370
370
|
methods: {
|
371
|
+
inspectRepair(row){
|
372
|
+
var _this = this
|
373
|
+
let http = new HttpResetClass()
|
374
|
+
http.load('POST',`${this.$androidUtil.getProxyUrl()}/rs/sql/AndroidDealWith`, {data: {condition: `tcp.f_userinfo_code = '${row.f_userinfo_code}'`,f_filialeids:Vue.user.orgid}},
|
375
|
+
{resolveMsg: null, rejectMsg: null}).then(resp=>{
|
376
|
+
if (resp.data.length>0){
|
377
|
+
this.$showMessage('该用户有隐患未处理,是否先处理隐患?', ['cancel', 'confirm']).then(
|
378
|
+
(response) => {
|
379
|
+
if (response === 'confirm') {
|
380
|
+
var pardate = {
|
381
|
+
_this:_this,
|
382
|
+
title:'隐患处理',
|
383
|
+
safe:true
|
384
|
+
}
|
385
|
+
_this.$dispatch('gotoson',pardate)
|
386
|
+
_this.$goto('android-defect-deal-before-safe', {row: row}, 'self', function () {
|
387
|
+
_this.inspect(row)
|
388
|
+
})
|
389
|
+
}else {
|
390
|
+
this.inspect(row)
|
391
|
+
}
|
392
|
+
}
|
393
|
+
)
|
394
|
+
}else {
|
395
|
+
this.inspect(row)
|
396
|
+
}
|
397
|
+
}).catch(()=>{
|
398
|
+
this.inspect(row)
|
399
|
+
})
|
400
|
+
},
|
371
401
|
scan() {
|
372
402
|
HostApp.__this__ = this,
|
373
403
|
HostApp.scanCode({ callback: "javascript:HostApp.__this__.getCode();" })
|
@@ -0,0 +1,446 @@
|
|
1
|
+
<template>
|
2
|
+
<div class="auto">
|
3
|
+
<criteria-paged :model="model" v-ref:paged>
|
4
|
+
<criteria partial='criteria' @condition-changed='search' v-ref:cri>
|
5
|
+
<div partial>
|
6
|
+
<form>
|
7
|
+
<div class="row app-row">
|
8
|
+
<div class="col-xs-4">
|
9
|
+
<img src="../../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
|
10
|
+
<label class="font text-left">用户编号:</label>
|
11
|
+
</div>
|
12
|
+
<div class="col-xs-8" >
|
13
|
+
<input class="search_input input-font"
|
14
|
+
v-model=model.f_userinfo_code condition="f_userinfo_code = '{}'" placeholder="请输入用户编号" />
|
15
|
+
</div>
|
16
|
+
</div>
|
17
|
+
<div class="row app-row">
|
18
|
+
<div class="col-xs-4">
|
19
|
+
<img src="../../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
|
20
|
+
<label class="font text-left">表 号:</label>
|
21
|
+
</div>
|
22
|
+
<div class="col-xs-8" >
|
23
|
+
<input class="search_input input-font"
|
24
|
+
v-model=model.f_meternumber condition="f_meternumber = '{}'" style="width: 70%" placeholder="请输入表号" />
|
25
|
+
<button type="button" name="button" class="btn btn-primary" style="width: 25%" @click="$parent.$parent.scan">扫码</button>
|
26
|
+
</div>
|
27
|
+
</div>
|
28
|
+
<div class="row app-row">
|
29
|
+
<div class="col-xs-4">
|
30
|
+
<img src="../../../assets/用户姓名.png" style="width: 20px;margin-bottom: 5px" alt="">
|
31
|
+
<label class="font text-left">用户名称:</label>
|
32
|
+
</div>
|
33
|
+
<div class="col-xs-8" >
|
34
|
+
<input class="search_input input-font" v-model="model.f_username" placeholder="请输入用户名称(可模糊查询)">
|
35
|
+
</div>
|
36
|
+
</div>
|
37
|
+
<div class="row app-row">
|
38
|
+
<div class="col-xs-4">
|
39
|
+
<img src="../../../assets/用户类型.png" style="width: 20px;margin-bottom: 5px" alt="">
|
40
|
+
<label class="font text-left">用户类型:</label>
|
41
|
+
</div>
|
42
|
+
<div class="col-xs-8" >
|
43
|
+
<v-select :value.sync="$parent.$parent.model.f_user_type" class="input-font"
|
44
|
+
:options='$parent.$parent.user_types' placeholder='请选择用户类型' :value-single="true"
|
45
|
+
v-model="$parent.$parent.model.f_user_type" close-on-select clear-button></v-select>
|
46
|
+
</div>
|
47
|
+
</div>
|
48
|
+
<div class="row app-row">
|
49
|
+
<div class="col-xs-4">
|
50
|
+
<img src="../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
|
51
|
+
<label class="font text-left">小区名称:</label>
|
52
|
+
</div>
|
53
|
+
<div class="col-xs-8" >
|
54
|
+
<input style="width: 100%" class="search_input input-font" v-model="model.f_districtname" placeholder="请输入用户小区(可模糊查询)">
|
55
|
+
</div>
|
56
|
+
</div>
|
57
|
+
<div class="row app-row">
|
58
|
+
<div class="col-xs-4">
|
59
|
+
<img src="../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
|
60
|
+
<label class="font text-left">楼 号:</label>
|
61
|
+
</div>
|
62
|
+
<div class="col-xs-8" >
|
63
|
+
<input style="width: 100%" class="search_input input-font" v-model="model.f_building" placeholder="请输入用户楼号">
|
64
|
+
</div>
|
65
|
+
</div>
|
66
|
+
<div class="row app-row">
|
67
|
+
<div class="col-xs-4">
|
68
|
+
<img src="../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
|
69
|
+
<label class="font text-left">单 元:</label>
|
70
|
+
</div>
|
71
|
+
<div class="col-xs-8" >
|
72
|
+
<input style="width: 100%" class="search_input input-font" v-model="model.f_unit" placeholder="请输入用户单元">
|
73
|
+
</div>
|
74
|
+
</div>
|
75
|
+
<div class="row app-row">
|
76
|
+
<div class="col-xs-4">
|
77
|
+
<img src="../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
|
78
|
+
<label class="font text-left">用户地址:</label>
|
79
|
+
</div>
|
80
|
+
<div class="col-xs-8" >
|
81
|
+
<input style="width: 100%" class="search_input input-font" v-model="model.f_address" placeholder="请输入用户地址(可模糊查询)">
|
82
|
+
</div>
|
83
|
+
</div>
|
84
|
+
<div class="row app-row">
|
85
|
+
<div class="col-xs-4">
|
86
|
+
<img src="../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
|
87
|
+
<label class="font text-left">表 封 号:</label>
|
88
|
+
</div>
|
89
|
+
<div class="col-xs-8" >
|
90
|
+
<input style="width: 100%" class="search_input input-font" v-model="model.f_metertitles" placeholder="请输入表封号" condition="uf.f_metertitles='{}'">
|
91
|
+
</div>
|
92
|
+
</div>
|
93
|
+
<div class="row app-row">
|
94
|
+
<div class="col-xs-4">
|
95
|
+
<img src="../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
|
96
|
+
<label class="font text-left">电 话 号:</label>
|
97
|
+
</div>
|
98
|
+
<div class="col-xs-8" >
|
99
|
+
<input style="width: 100%" class="search_input input-font" v-model="model.f_user_phone" placeholder="请输入电话号" condition="ui.f_user_phone like '%{}%'">
|
100
|
+
</div>
|
101
|
+
</div>
|
102
|
+
<div class="row app-row">
|
103
|
+
<div class="col-xs-4">
|
104
|
+
<img src="../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
|
105
|
+
<label class="font text-left">卡 号:</label>
|
106
|
+
</div>
|
107
|
+
<div class="col-xs-8" >
|
108
|
+
<input style="width: 100%" class="search_input input-font" v-model="model.f_card_id" placeholder="请输入卡号" condition="uf.f_card_id like '%{}%'">
|
109
|
+
</div>
|
110
|
+
</div>
|
111
|
+
<div class="row app-row">
|
112
|
+
<div class="col-xs-4">
|
113
|
+
<img src="../../../assets/安检状态.png" style="width: 20px;margin-bottom: 5px" alt="">
|
114
|
+
<label class="font text-left">抄 表 册:</label>
|
115
|
+
</div>
|
116
|
+
<div class="col-xs-8" >
|
117
|
+
<v-select class="input-font"
|
118
|
+
placeholder='请选择抄表册'
|
119
|
+
:value.sync="model.f_meter_book_num"
|
120
|
+
v-model="model.f_meter_book_num"
|
121
|
+
:options='$parent.$parent.cbc'
|
122
|
+
condition="uf.f_meter_book_num='{}'"
|
123
|
+
close-on-select clear-button></v-select>
|
124
|
+
</div>
|
125
|
+
</div>
|
126
|
+
<div class="row text-center" style="margin-top: 20px;">
|
127
|
+
<button type="button" class="btn btn-lg btn-font btn-color" style="width: 45%;" @click="search">查询</button>
|
128
|
+
</div>
|
129
|
+
<div style="height:30px;"></div>
|
130
|
+
</form>
|
131
|
+
</div>
|
132
|
+
</criteria>
|
133
|
+
|
134
|
+
<list :model="model" partial='list'>
|
135
|
+
<div partial>
|
136
|
+
<div @click="$parent.$parent.$parent.inspectRepair(row)" class="auto app-text" style="margin-top: 5px;">
|
137
|
+
<div class="panel" style="padding: 10px 10px 5px 10px;">
|
138
|
+
<div class="panel-body panel-self">
|
139
|
+
<div class="row">
|
140
|
+
<p class="panel-title col-xs-4 text-left font">用户编号</p>
|
141
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_userinfo_code }}</p>
|
142
|
+
</div>
|
143
|
+
<div class="row">
|
144
|
+
<p class="panel-title col-xs-4 text-left font">用户名称</p>
|
145
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_user_name }}</p>
|
146
|
+
</div>
|
147
|
+
<div class="row">
|
148
|
+
<p class="panel-title col-xs-4 text-left font">表号</p>
|
149
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_meternumber }}</p>
|
150
|
+
</div>
|
151
|
+
<div class="row">
|
152
|
+
<p class="panel-title col-xs-4 text-left font">用户类型</p>
|
153
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_user_type }}</p>
|
154
|
+
</div>
|
155
|
+
<div class="row">
|
156
|
+
<p class="panel-title col-xs-4 text-left font">用户电话</p>
|
157
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_user_phone2 ? row.f_user_phone2 : row.f_user_phone }}</p>
|
158
|
+
</div>
|
159
|
+
|
160
|
+
<div class="row">
|
161
|
+
<p class="panel-title col-xs-4 text-left font">小区名称</p>
|
162
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_residential_area }}</p>
|
163
|
+
</div>
|
164
|
+
<div class="row">
|
165
|
+
<p class="panel-title col-xs-4 text-left font">用户地址</p>
|
166
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_address }}</p>
|
167
|
+
</div>
|
168
|
+
<div class="row">
|
169
|
+
<p class="panel-title col-xs-4 text-left font">最后安检日期</p>
|
170
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_last_check_date }}</p>
|
171
|
+
</div>
|
172
|
+
<div class="row">
|
173
|
+
<p class="panel-title col-xs-4 text-left font">最后安检状态</p>
|
174
|
+
<p class="panel-title col-xs-8 text-left input-font">{{ row.f_last_check_state }}</p>
|
175
|
+
</div>
|
176
|
+
</div>
|
177
|
+
</div>
|
178
|
+
|
179
|
+
</div>
|
180
|
+
</div>
|
181
|
+
</list>
|
182
|
+
</criteria-paged>
|
183
|
+
<!--<back-page :need-back='true' @flag="$back()"></back-page>-->
|
184
|
+
</div>
|
185
|
+
</template>
|
186
|
+
|
187
|
+
<script>
|
188
|
+
import {HttpResetClass, PagedList} from 'vue-client'
|
189
|
+
import Vue from 'vue'
|
190
|
+
import * as Util from '../../Util'
|
191
|
+
|
192
|
+
export default {
|
193
|
+
title: '安检员B',
|
194
|
+
data () {
|
195
|
+
let model = new PagedList(`${this.$androidUtil.getProxyUrl()}/rs/sql/提取用户档案`, 20, { groupitem: '""', orderitem: '"f_residential_area,CAST(build as int),f_unit,CAST(floor1 as int),f_room"',f_check_type:'this.f_check_type[0]',
|
196
|
+
f_user_name:'this.model.f_username',myCycle: 'this.myCycle',fyCycle: 'this.fyCycle', f_user_type:'this.f_user_type',f_sign: 'this.f_sign[0]', f_residential_area:'this.model.f_districtname', f_address:'this.model.f_address',f_user_state: 'this.f_user_state[0]',f_orgids:'this.f_orgids',f_unit:'this.model.f_unit',f_building:'this.model.f_building',f_filialeid:'this.f_filialeid'})
|
197
|
+
model.f_sign = ['']
|
198
|
+
model.f_user_type = ''
|
199
|
+
model.f_user_state =['']
|
200
|
+
model.f_check_type =['']
|
201
|
+
model.myCycle = 0
|
202
|
+
model.fyCycle = 0
|
203
|
+
model.f_filialeid = Vue.user.orgid
|
204
|
+
//model.f_filialeid = 287
|
205
|
+
return {
|
206
|
+
model: model,
|
207
|
+
cbc:[],
|
208
|
+
showModal:false,
|
209
|
+
signs: [
|
210
|
+
{label:'请选择录入状态', value:''},
|
211
|
+
{label:'录入', value:'1'},
|
212
|
+
{label:'非录入', value:'0'},
|
213
|
+
],
|
214
|
+
ischecks: [
|
215
|
+
],
|
216
|
+
user_types: [
|
217
|
+
{label: '请选择用户类型', value: ''},
|
218
|
+
{label: '民用', value: '民用'},
|
219
|
+
{label: '非民用', value: '非民用'},
|
220
|
+
],
|
221
|
+
f_user_states: [
|
222
|
+
{label:'请选择档案状态', value:''},
|
223
|
+
{label:'正常', value:'正常'},
|
224
|
+
{label:'点火', value:'点火'},
|
225
|
+
],
|
226
|
+
f_check_types: [
|
227
|
+
{label:'请选择安检类型', value:''},
|
228
|
+
{label:'应检', value:'应检'},
|
229
|
+
{label:'超期', value:'超期'},
|
230
|
+
],
|
231
|
+
}
|
232
|
+
},
|
233
|
+
ready () {
|
234
|
+
// this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/logic/getSafeCheckCycle`,{},{resolveMsg: null, rejectMsg: null}).then((res) => {
|
235
|
+
// //tag)
|
236
|
+
// if(res.data.code == 200){
|
237
|
+
// this.model.myCycle = res.data.civil.value
|
238
|
+
// this.model.fyCycle = res.data.civilian.value
|
239
|
+
// }else{
|
240
|
+
// //this.$showMessage(res.data.msg)
|
241
|
+
// }
|
242
|
+
//
|
243
|
+
// })
|
244
|
+
// this.getCheckTime()
|
245
|
+
// this.Mreadibook()
|
246
|
+
},
|
247
|
+
computed: {
|
248
|
+
reload(){
|
249
|
+
this.$refs.paged.loadPage(this.$refs.paged.model.pageIndex)
|
250
|
+
},
|
251
|
+
selected () {
|
252
|
+
return this.$refs.paged.$refs.grid.selected
|
253
|
+
}
|
254
|
+
},
|
255
|
+
methods:{
|
256
|
+
inspectRepair(row){
|
257
|
+
var _this = this
|
258
|
+
let http = new HttpResetClass()
|
259
|
+
http.load('POST',`${this.$androidUtil.getProxyUrl()}/rs/sql/AndroidDealWith`, {data: {condition: `tcp.f_userinfo_code = '${row.f_userinfo_code}'`,f_filialeids:Vue.user.orgid}},
|
260
|
+
{resolveMsg: null, rejectMsg: null}).then(resp=>{
|
261
|
+
if (resp.data.length>0){
|
262
|
+
this.$showMessage('该用户有隐患未处理,是否先处理隐患?', ['cancel', 'confirm']).then(
|
263
|
+
(response) => {
|
264
|
+
if (response === 'confirm') {
|
265
|
+
var pardate = {
|
266
|
+
_this:_this,
|
267
|
+
title:'隐患处理',
|
268
|
+
safe:true
|
269
|
+
}
|
270
|
+
_this.$dispatch('gotoson',pardate)
|
271
|
+
_this.$goto('android-defect-deal-before-safe', {row: row}, 'self', function () {
|
272
|
+
_this.inspect(row)
|
273
|
+
})
|
274
|
+
}else {
|
275
|
+
this.inspect(row)
|
276
|
+
}
|
277
|
+
}
|
278
|
+
)
|
279
|
+
}else {
|
280
|
+
this.inspect(row)
|
281
|
+
}
|
282
|
+
}).catch(()=>{
|
283
|
+
this.inspect(row)
|
284
|
+
})
|
285
|
+
},
|
286
|
+
scan(){
|
287
|
+
HostApp.__this__=this,
|
288
|
+
HostApp.scanCode({callback:"javascript:HostApp.__this__.getCode();"})
|
289
|
+
},
|
290
|
+
getCode(){
|
291
|
+
let datapa = HostApp.getCode().data;
|
292
|
+
let indexnum = datapa.indexOf("]C1")
|
293
|
+
if(indexnum != -1){
|
294
|
+
datapa = datapa.substring(indexnum+3,datapa.length)
|
295
|
+
}
|
296
|
+
this.$refs.paged.$refs.cri.model.f_meternumber=datapa
|
297
|
+
},
|
298
|
+
getCheckTime(){
|
299
|
+
//tag
|
300
|
+
new HttpResetClass().load('post',`${this.$androidUtil.getProxyUrl()}/rs/sql/tel_singleTable_OrderBy`,{data: {
|
301
|
+
items: 'f_circle,f_start_time',
|
302
|
+
tablename: 't_safe_circle',
|
303
|
+
condition: `f_filialeid = '${Vue.user.orgid}'`,
|
304
|
+
orderitem: 'id'
|
305
|
+
}}).then(res=>{
|
306
|
+
//tag)
|
307
|
+
let nocheck=''
|
308
|
+
let ischeck=''
|
309
|
+
if (res.data[0]){
|
310
|
+
if (res.data[0].f_circle=='1'){
|
311
|
+
nocheck=`(ua.f_last_check_date<'${res.data[0].f_start_time}' or ua.f_last_check_date is null)`
|
312
|
+
ischeck=`ua.f_last_check_date>'${res.data[0].f_start_time}'`
|
313
|
+
|
314
|
+
}else{
|
315
|
+
let addtime= (Util.toStandardTimeString().substring(0,4)-res.data[0].f_start_time.substring(0,4))%res.data[0].f_circle
|
316
|
+
//tag
|
317
|
+
let time =(Util.toStandardTimeString().substring(0,4)-addtime)+'-01-01 00:00:00'
|
318
|
+
//tag
|
319
|
+
nocheck=`(ua.f_last_check_date<'${time}' or ua.f_last_check_date is null)`
|
320
|
+
ischeck=`ua.f_last_check_date>'${time}'`
|
321
|
+
}
|
322
|
+
//tag
|
323
|
+
this.ischecks=[
|
324
|
+
{label: '全部', value: ''},
|
325
|
+
{label: '已检', value: ischeck },
|
326
|
+
{label: '未检', value: nocheck},
|
327
|
+
]
|
328
|
+
//tag
|
329
|
+
}else{
|
330
|
+
this.$showMessage("未配置安检周期")
|
331
|
+
}
|
332
|
+
|
333
|
+
})
|
334
|
+
//tag
|
335
|
+
},
|
336
|
+
inspect (info){
|
337
|
+
if(info.f_last_check_date){
|
338
|
+
this.$showMessage("该用户最后一次安检时间为 "+info.f_last_check_date+" 是否继续对该用户进行安检",['confirm', 'cancel']).then((butt)=>{
|
339
|
+
if(butt=="confirm"){
|
340
|
+
info.id = ''
|
341
|
+
info.f_state = '未检'
|
342
|
+
info.f_no_checkplan = '无计划安检'
|
343
|
+
//tag
|
344
|
+
this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/查询计划项表信息`,{data:{f_userid:info.f_userinfo_id}}).then((response)=>{
|
345
|
+
//tag)
|
346
|
+
info['f_plan_meters'] = response.data
|
347
|
+
var pardate = {
|
348
|
+
_this:this,
|
349
|
+
tittle:'安检详情',
|
350
|
+
safe:true
|
351
|
+
}
|
352
|
+
this.$dispatch('gotoson',pardate)
|
353
|
+
this.$goto('safecheck-order-v', {item: info, role: 'inspect',parentPage:'AddPlanItem'}, 'self', this.reload)
|
354
|
+
|
355
|
+
})
|
356
|
+
}
|
357
|
+
})
|
358
|
+
}else{
|
359
|
+
info.id = ''
|
360
|
+
info.f_state = '未检'
|
361
|
+
info.f_no_checkplan = '无计划安检'
|
362
|
+
//tag
|
363
|
+
this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/查询计划项表信息`,{data:{f_userid:info.f_userinfo_id}}).then((response)=>{
|
364
|
+
//tag)
|
365
|
+
info['f_plan_meters'] = response.data
|
366
|
+
var pardate = {
|
367
|
+
_this:this,
|
368
|
+
tittle:'安检详情',
|
369
|
+
safe:true
|
370
|
+
}
|
371
|
+
this.$dispatch('gotoson',pardate)
|
372
|
+
this.$goto('safecheck-order-v', {item: info, role: 'inspect',parentPage:'AddPlanItem'}, 'self', this.reload)
|
373
|
+
|
374
|
+
})
|
375
|
+
}
|
376
|
+
},
|
377
|
+
Mreadibook(){
|
378
|
+
this.cbc=[]
|
379
|
+
let http = new HttpResetClass()
|
380
|
+
http.load('POST',`${this.$androidUtil.getProxyUrl()}/rs/logic/getMeterBooksData`,
|
381
|
+
{data: {f_orgid: "('"+Vue.user.orgid+"')"}},
|
382
|
+
{resolveMsg: null, rejectMsg: '获取失败!!!'}).then((getMeterReadingBooks)=>{
|
383
|
+
this.cbc = [{label: '全部', value: ''}]
|
384
|
+
//tag
|
385
|
+
//tag)
|
386
|
+
//tag
|
387
|
+
getMeterReadingBooks.data.meterbooks.forEach((res) => {
|
388
|
+
this.cbc.push({label: res.f_book_name, value: res.id})
|
389
|
+
/*if(res.f_book_slice_area){
|
390
|
+
if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
|
391
|
+
this.sliceArea.push(res.f_book_slice_area)
|
392
|
+
}
|
393
|
+
}*/
|
394
|
+
})
|
395
|
+
})
|
396
|
+
|
397
|
+
|
398
|
+
}
|
399
|
+
}
|
400
|
+
}
|
401
|
+
</script>
|
402
|
+
<style scoped>
|
403
|
+
.app-row {
|
404
|
+
background-color: white;
|
405
|
+
padding: 10px 10px 0 10px;
|
406
|
+
border-bottom: 1px solid rgba(235, 235, 235, 0.5);
|
407
|
+
}
|
408
|
+
.search_input {
|
409
|
+
border: 0;
|
410
|
+
outline: none;
|
411
|
+
}
|
412
|
+
.font{
|
413
|
+
font: 15px PingFang-SC-Medium;
|
414
|
+
color: #666666;
|
415
|
+
}
|
416
|
+
.input-font{
|
417
|
+
font: 15px PingFang-SC-Medium;
|
418
|
+
color: #333333;
|
419
|
+
}
|
420
|
+
.btn-font{
|
421
|
+
font:600 16px PingFang-SC-Bold;
|
422
|
+
color: #499EDF;
|
423
|
+
}
|
424
|
+
.btn-color{
|
425
|
+
background-color: #FFFFFF;
|
426
|
+
border-radius: 10px ;
|
427
|
+
border: 1px solid #499EDF;
|
428
|
+
}
|
429
|
+
.app-text {
|
430
|
+
font-size: 12px;
|
431
|
+
}
|
432
|
+
.panel-self{
|
433
|
+
border-radius: 10px;
|
434
|
+
border:1px solid #499EDF;
|
435
|
+
background-color: #F8F8F8;
|
436
|
+
}
|
437
|
+
.yybtn-color{
|
438
|
+
border-radius: 4px ;
|
439
|
+
border: 1px solid #499EDF;
|
440
|
+
}
|
441
|
+
.qxbtn-color{
|
442
|
+
background-color: #FFFFFF;
|
443
|
+
border-radius: 4px ;
|
444
|
+
border: 1px solid #499EDF;
|
445
|
+
}
|
446
|
+
</style>
|
@@ -1,11 +1,12 @@
|
|
1
|
-
// 分公司特殊组件页面注册
|
2
|
-
import Vue from "vue";
|
3
|
-
|
4
|
-
// 手机特殊目录注册到该文件中
|
5
|
-
let specialComp = {
|
6
|
-
'phone-record-info': (resolve) => { require(['./android/PhoneRecordInfo.vue'], resolve) },
|
7
|
-
'safecheck-userinfo': (resolve) => { require(['./android/SafecheckUserInfo.vue'], resolve) },
|
8
|
-
}
|
9
|
-
|
10
|
-
|
11
|
-
|
1
|
+
// 分公司特殊组件页面注册
|
2
|
+
import Vue from "vue";
|
3
|
+
|
4
|
+
// 手机特殊目录注册到该文件中
|
5
|
+
let specialComp = {
|
6
|
+
'phone-record-info': (resolve) => { require(['./android/PhoneRecordInfo.vue'], resolve) },
|
7
|
+
'safecheck-userinfo': (resolve) => { require(['./android/SafecheckUserInfo.vue'], resolve) },
|
8
|
+
'add-plan-item': (resolve) => { require(['./android/AddPlanItem'], resolve) },
|
9
|
+
}
|
10
|
+
|
11
|
+
exports.specialComp = specialComp
|
12
|
+
|
package/src/safecheck-android.js
CHANGED
@@ -200,6 +200,7 @@ export default function (filiale) {
|
|
200
200
|
// 安检用户信息查看
|
201
201
|
Vue.component('safecheck-userinfo', (resolve) => { require(['./components/android/userinfo/SafecheckUserInfo'], resolve) })
|
202
202
|
Vue.component('android-defect-deal', (resolve) => { require(['./components/android/AndroidDefectDeal'], resolve) })
|
203
|
+
Vue.component('android-defect-deal-before-safe', (resolve) => { require(['./components/android/AndroidDefectDealBeforeSafe'], resolve) })
|
203
204
|
// 在线用户档案核对
|
204
205
|
//Vue.component('user-safe-app', (resolve) => { require(['../examples/UserFiles/App'], resolve) })
|
205
206
|
//手机报表查询
|