safecheck-client 4.0.2-2 → 4.0.2-20
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 +1 -1
- package/src/components/NewDefectList/DefectPaperNew.vue +1184 -1184
- package/src/components/android/PhoneUpUserinfo.vue +1249 -1249
- package/src/components/android/SafeRightTree.vue +218 -218
- package/src/components/android/SafecheckDevices.vue +1340 -1340
- package/src/components/android/week/CheckResultSimple.vue +222 -0
- package/src/components/android/week/FirstWeekCheck.vue +236 -0
- package/src/components/android/week/StepHeaderBar.vue +323 -0
- package/src/components/android/week/WeekCheck.vue +151 -0
- package/src/components/android/week/WeekCheckPaper.vue +151 -0
- package/src/components/checkplan/SelectCheckPlan.vue +39 -0
- package/src/components/paper/safetyledger.vue +194 -0
- package/src/components/pc/CheckBook.vue +303 -303
- package/src/components/pc/CheckBookArea.vue +146 -146
- package/src/components/pc/CheckBookCompany.vue +144 -144
- package/src/components/pc/CheckBookDetails.vue +161 -161
- package/src/components/pc/CheckBookEntry.vue +60 -60
- package/src/components/pc/CheckBookSearchArea.vue +560 -560
- package/src/components/pc/CheckBookSearchUnit.vue +229 -229
- package/src/components/pc/CheckBookSearchUser.vue +659 -659
- package/src/components/pc/CheckBookSearchUserList.vue +674 -674
- package/src/components/planmanage/PlanManage.vue +10 -1
- package/src/components/planmanage/checkUserList.vue +1 -1
- package/src/components/querycheckpaper/CheckSearchUser.vue +2 -1
- package/src/components/report/CheckByPlan.vue +1 -1
- package/src/components/report/CheckPlanAreaList.vue +45 -2
- package/src/filiale/jinhong/android/CurrentCreate.vue +1313 -1313
- package/src/filiale/jinhong/android/PhoneInsurancePurchaseDetail.vue +27 -3
- package/src/filiale/jinhong/pc/CheckBookList.vue +4 -0
- package/src/filiale/jinhong/pc/PaperList.vue +1 -1
- package/src/filiale/meihekou/android/CheckPlanList.vue +198 -198
- package/src/filiale/meihekou/android/CheckPlanListArea.vue +190 -190
- package/src/filiale/meihekou/android/PaperFeedback.vue +1542 -1542
- package/src/filiale/meihekou/android/SafecheckDevices.vue +1343 -1340
- package/src/filiale/meihekou/android/SafecheckOrderV.vue +9 -8
- package/src/filiale/meihekou/android.js +22 -22
- package/src/filiale/meihekou/pc/CheckDetail.vue +208 -0
- package/src/filiale/meihekou/pc/CheckPlan.vue +52 -0
- package/src/filiale/meihekou/pc/CheckPlanAreaList.vue +504 -0
- package/src/filiale/meihekou/pc/NewCheckpaperNew.vue +2050 -2050
- package/src/filiale/meihekou/pc/SelectCheckPlan.vue +262 -0
- package/src/filiale/meihekou/pc.js +3 -0
- package/src/filiale/qingjian/pc/SecurityCheckCoordinates.vue +2 -2
- package/src/filiale/xinkang/android/SafecheckOrderV.vue +1 -1
- package/src/filiale/xinliansihui/pc/PaperList.vue +814 -0
- package/src/filiale/xinliansihui/pc/PaperVisitMain.vue +206 -0
- package/src/filiale/xinliansihui/pc.js +13 -0
- package/src/safecheck-android.js +326 -316
- package/src/safecheck.js +3 -0
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="auto clearfix">
|
|
3
|
+
<work-busy :is-busy="isbusy"></work-busy>
|
|
3
4
|
<div class="row app-row col-xs-12 col-sm-6 col-md-6">
|
|
4
5
|
<div class="col-xs-4 col-sm-4 col-md-4">
|
|
5
6
|
<img alt="" src="../../../assets/add.png" style="width: 20px;margin-bottom: 5px">
|
|
@@ -190,7 +191,7 @@
|
|
|
190
191
|
</div>
|
|
191
192
|
</div>
|
|
192
193
|
<div class="col-xs-12 text-center app-row">
|
|
193
|
-
<button class="btn btn-lg btn-font btn-color" style="width: 22%;" type="button" @click="
|
|
194
|
+
<button class="btn btn-lg btn-font btn-color" style="width: 22%;" type="button" @click="check()">提交</button>
|
|
194
195
|
</div>
|
|
195
196
|
</div>
|
|
196
197
|
</template>
|
|
@@ -204,7 +205,7 @@ export default {
|
|
|
204
205
|
data() {
|
|
205
206
|
return {
|
|
206
207
|
create_date: Util.getNowDate(),
|
|
207
|
-
|
|
208
|
+
isbusy: false,
|
|
208
209
|
insurance_types: [{label: '请选择', value: ''}, ...this.$appdata.getParam('险种')],
|
|
209
210
|
insurance_companys: [{label: '请选择', value: ''}, ...this.$appdata.getParam('保险公司')],
|
|
210
211
|
payTypes: [{label: '请选择', value: ''}, ...this.$appdata.getParam('付款方式')],
|
|
@@ -269,6 +270,27 @@ export default {
|
|
|
269
270
|
this.model.f_id_type = '身份证'
|
|
270
271
|
},
|
|
271
272
|
methods: {
|
|
273
|
+
//查询是否在今天已经操作过了
|
|
274
|
+
async check() {
|
|
275
|
+
let http = new HttpResetClass()
|
|
276
|
+
// 获取今天的开始和结束时间
|
|
277
|
+
let startOfDay =Util.toStartDateString() + ' 00:00:00'
|
|
278
|
+
let endOfDay =Util.toEndDateString() + ' 23:59:59'
|
|
279
|
+
http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
|
|
280
|
+
data: {
|
|
281
|
+
items: 'id',
|
|
282
|
+
tablename: 't_userfees',
|
|
283
|
+
condition: `f_userinfo_id= '${this.model.f_userinfo_id}' and f_state='有效' and f_operat_type='保险收费' and f_operate_date >= '${startOfDay}' and f_operate_date <= '${endOfDay}'`,
|
|
284
|
+
orderitem: 'id'
|
|
285
|
+
}
|
|
286
|
+
}, { resolveMsg: null, rejectMsg: null }).then((res) => {
|
|
287
|
+
if (res.data.length > 0) {
|
|
288
|
+
this.$showMessage('今天已经进行了保险收费,请勿重复操作。')
|
|
289
|
+
} else {
|
|
290
|
+
this.commit()
|
|
291
|
+
}
|
|
292
|
+
})
|
|
293
|
+
},
|
|
272
294
|
async commit() {
|
|
273
295
|
if (!this.model.f_payment) {
|
|
274
296
|
this.$showMessage('收款方式未选择,请选择后重新尝试。')
|
|
@@ -353,6 +375,7 @@ export default {
|
|
|
353
375
|
return
|
|
354
376
|
}
|
|
355
377
|
}
|
|
378
|
+
this.isbusy= true
|
|
356
379
|
commit_data.f_receivable = this.model.f_money
|
|
357
380
|
commit_data.f_operate_date = Util.toStandardTimeString()
|
|
358
381
|
commit_data.f_state = '有效'
|
|
@@ -362,10 +385,11 @@ export default {
|
|
|
362
385
|
commit_data.f_depname = Vue.user.deps
|
|
363
386
|
await new HttpResetClass().load('post', `${this.$androidUtil.getProxyUrl()}/api/af-revenue/logic/saveInsInfo`, {data: commit_data})
|
|
364
387
|
this.$showMessage('提交成功')
|
|
388
|
+
this.isbusy= false
|
|
365
389
|
this.$back()
|
|
366
390
|
} catch (error) {
|
|
367
391
|
this.$showMessage('提交失败')
|
|
368
|
-
this.
|
|
392
|
+
this.isbusy= false
|
|
369
393
|
}
|
|
370
394
|
},
|
|
371
395
|
changeExpirationDate() {
|
|
@@ -129,6 +129,9 @@
|
|
|
129
129
|
<th>
|
|
130
130
|
<nobr>未下发</nobr>
|
|
131
131
|
</th>
|
|
132
|
+
<th>
|
|
133
|
+
<nobr>最后下发时间</nobr>
|
|
134
|
+
</th>
|
|
132
135
|
<!-- <th>
|
|
133
136
|
<nobr>已检</nobr>
|
|
134
137
|
</th>
|
|
@@ -150,6 +153,7 @@
|
|
|
150
153
|
<td style="text-align: center;"><button @click.stop="$parent.$parent.$parent.details(row)" class="btn btn-link"><b>{{row.num}}</b></button></td>
|
|
151
154
|
<td style="text-align: center;">{{ row.xiafa }}</td>
|
|
152
155
|
<td style="text-align: center;">{{ row.f_user_type =='民用'?row.num-row.xiafa:row.num4-row.xiafa }}</td>
|
|
156
|
+
<td style="text-align: center;">{{ row.last_check_time }}</td>
|
|
153
157
|
<!-- <td style="text-align: center;">{{ row.yijian }}</td>
|
|
154
158
|
<td style="text-align: center;">{{ row.weijian }}</td>-->
|
|
155
159
|
<!-- <td v-show="row.f_check_book_type!='小区'" style="text-align: center;"><button class="button_spacing button_search-1" @click.stop='$parent.$parent.$parent.send(row)'>下发</button></td>-->
|
|
@@ -1,198 +1,198 @@
|
|
|
1
|
-
<style scoped>
|
|
2
|
-
.bg {
|
|
3
|
-
background-color: blue;
|
|
4
|
-
height: 1px;
|
|
5
|
-
border: 0;
|
|
6
|
-
}
|
|
7
|
-
.app-row {
|
|
8
|
-
background-color: white;
|
|
9
|
-
padding: 10px 10px 0 10px;
|
|
10
|
-
border-bottom: 1px solid rgba(235, 235, 235, 0.5);
|
|
11
|
-
}
|
|
12
|
-
.search_input {
|
|
13
|
-
border: 0;
|
|
14
|
-
outline: none;
|
|
15
|
-
}
|
|
16
|
-
.font{
|
|
17
|
-
font: 15px PingFang-SC-Medium;
|
|
18
|
-
color: #666666;
|
|
19
|
-
}
|
|
20
|
-
.input-font{
|
|
21
|
-
font: 15px PingFang-SC-Medium;
|
|
22
|
-
color: #333333;
|
|
23
|
-
}
|
|
24
|
-
.btn-font{
|
|
25
|
-
font:600 16px PingFang-SC-Bold;
|
|
26
|
-
color: #499EDF;
|
|
27
|
-
}
|
|
28
|
-
.btn-color{
|
|
29
|
-
background-color: #FFFFFF;
|
|
30
|
-
border-radius: 10px ;
|
|
31
|
-
border: 1px solid #499EDF;
|
|
32
|
-
}
|
|
33
|
-
.app-text {
|
|
34
|
-
font-size: 12px;
|
|
35
|
-
}
|
|
36
|
-
.panel-self{
|
|
37
|
-
border-radius: 10px;
|
|
38
|
-
border:1px solid #499EDF;
|
|
39
|
-
background-color: #F8F8F8;
|
|
40
|
-
}
|
|
41
|
-
.yybtn-color{
|
|
42
|
-
background-color:#499edf;
|
|
43
|
-
border-radius: 4px ;
|
|
44
|
-
border: 1px solid #499EDF;
|
|
45
|
-
color: #FFFFFF;
|
|
46
|
-
font: 14px PingFang-SC-Bold;
|
|
47
|
-
}
|
|
48
|
-
.qxbtn-color{
|
|
49
|
-
background-color: #FFFFFF;
|
|
50
|
-
border-radius: 4px ;
|
|
51
|
-
color: #499edf;
|
|
52
|
-
font: 14px PingFang-SC-Bold;
|
|
53
|
-
border: 1px solid #499EDF;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
.button_shrink_top {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_top.png")}
|
|
57
|
-
.button_shrink_bottom {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_bottom.png")}
|
|
58
|
-
.button_shrink_left {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_left.png")}
|
|
59
|
-
.button_shrink_right {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_right.png")}
|
|
60
|
-
</style>
|
|
61
|
-
<template>
|
|
62
|
-
<div style="height: auto;width: 100%">
|
|
63
|
-
<criteria-paged :model="model" v-ref:paged>
|
|
64
|
-
<criteria partial='criteria' @condition-changed='search' v-ref:cri>
|
|
65
|
-
<div partial>
|
|
66
|
-
<form>
|
|
67
|
-
<div class="row app-row">
|
|
68
|
-
<div class="col-xs-4">
|
|
69
|
-
<img src="../../../assets/安检状态.png" style="width: 20px;margin-bottom: 5px" alt="">
|
|
70
|
-
<label class="font text-left">计划名称:</label>
|
|
71
|
-
</div>
|
|
72
|
-
<div class="col-xs-8" >
|
|
73
|
-
<input class="search_input input-font" v-model=model.f_plan_name condition="f_plan_name like '%{}%'" />
|
|
74
|
-
</div>
|
|
75
|
-
</div>
|
|
76
|
-
<div class="row text-center" style="margin-top: 20px;">
|
|
77
|
-
<button type="button" class="btn btn-lg btn-font btn-color" style="width: 25%;" @click="$parent.$parent.selfSearch">查询</button>
|
|
78
|
-
<img style="float: right;margin-right: 3% " @click="$parent.$parent.getNewOrder" src="../../../assets/shuaxindaiban1.png" style="width: 40px;padding: 5px; float:right">
|
|
79
|
-
<!-- <div style="float: right;margin-right: 3% " class="button_spacing" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}" @click="$parent.$parent.hidden()"></div>-->
|
|
80
|
-
</div>
|
|
81
|
-
<div style="height:30px;"></div>
|
|
82
|
-
</form>
|
|
83
|
-
</div>
|
|
84
|
-
</criteria>
|
|
85
|
-
<list :model="model" partial='list'>
|
|
86
|
-
<div partial>
|
|
87
|
-
<div class="auto app-text" style="margin-top: 5px;">
|
|
88
|
-
<div class="panel" style="padding: 10px 10px 5px 10px;">
|
|
89
|
-
<div class="panel-body panel-self" @click="$parent.$parent.$parent.toPlanItem(row.f_plan_name)">
|
|
90
|
-
<div class="col-xs-12">
|
|
91
|
-
<p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>计划名称:</b></p>
|
|
92
|
-
<p class="panel-title col-xs-7 text-left input-font" style="width: 74%">{{ row.f_plan_name }}</p>
|
|
93
|
-
</div>
|
|
94
|
-
<div class="col-xs-12">
|
|
95
|
-
<p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>计划时间:</b></p>
|
|
96
|
-
<p class="panel-title col-xs-7 text-left input-font" style="width: 79%">{{ row.f_create_time }}</p>
|
|
97
|
-
</div>
|
|
98
|
-
<div class="col-xs-6">
|
|
99
|
-
<p class="panel-title col-xs-5 text-left font"><b>入户:</b></p>
|
|
100
|
-
<p class="panel-title col-xs-7 text-left input-font">{{ row.checked }}
|
|
101
|
-
</p>
|
|
102
|
-
</div>
|
|
103
|
-
<div class="col-xs-6">
|
|
104
|
-
<p class="panel-title col-xs-5 text-left font"><b>到访不遇:</b></p>
|
|
105
|
-
<p class="panel-title col-xs-7 text-left input-font">{{ row.daofang }}
|
|
106
|
-
</p>
|
|
107
|
-
</div>
|
|
108
|
-
<div class="col-xs-6">
|
|
109
|
-
<p class="panel-title col-xs-5 text-left font"><b>拒检:</b></p>
|
|
110
|
-
<p class="panel-title col-xs-7 text-left input-font">{{ row.jujian }}
|
|
111
|
-
</p>
|
|
112
|
-
</div>
|
|
113
|
-
<div class="col-xs-6">
|
|
114
|
-
<p class="panel-title col-xs-5 text-left font"><b>未检:</b></p>
|
|
115
|
-
<p class="panel-title col-xs-7 text-left input-font">{{ row.no_check }}</p>
|
|
116
|
-
</div>
|
|
117
|
-
<div class="col-xs-6">
|
|
118
|
-
<p class="panel-title col-xs-5 text-left font"><b>总数:</b></p>
|
|
119
|
-
<p class="panel-title col-xs-7 text-left input-font">{{ row.checked + row.no_check + row.daofang + row.jujian }}</p>
|
|
120
|
-
</div>
|
|
121
|
-
<div class="col-xs-6">
|
|
122
|
-
<p class="panel-title col-xs-5 text-left font"><b>完成率:</b></p>
|
|
123
|
-
<p class="panel-title col-xs-7 text-left input-font">
|
|
124
|
-
{{((((row.checked+ row.daofang + row.jujian) / (row.checked + row.no_check+ row.daofang + row.jujian))) * 100).toFixed(0) + '%' }}
|
|
125
|
-
</p>
|
|
126
|
-
</div>
|
|
127
|
-
</div>
|
|
128
|
-
</div>
|
|
129
|
-
</div>
|
|
130
|
-
</div>
|
|
131
|
-
</list>
|
|
132
|
-
</criteria-paged>
|
|
133
|
-
</div>
|
|
134
|
-
</template>
|
|
135
|
-
|
|
136
|
-
<script>
|
|
137
|
-
|
|
138
|
-
import Vue from 'vue'
|
|
139
|
-
import LocalPagedList from "../../../components/android/LocalPagedList";
|
|
140
|
-
|
|
141
|
-
export default {
|
|
142
|
-
title: '安检计划列表',
|
|
143
|
-
data() {
|
|
144
|
-
return {
|
|
145
|
-
f_orgid: Vue.user.orgid,
|
|
146
|
-
model:new LocalPagedList( `androidCheckPlanList`,20, {condition:'this.condition'}),
|
|
147
|
-
criteriaShow: false
|
|
148
|
-
}
|
|
149
|
-
},
|
|
150
|
-
ready(){
|
|
151
|
-
},
|
|
152
|
-
methods: {
|
|
153
|
-
search(args) {
|
|
154
|
-
// args.condition += ` and tu.f_orgid in ${Vue.user.orgid}`
|
|
155
|
-
this.model.search(args.condition, args.model)
|
|
156
|
-
},
|
|
157
|
-
selfSearch () {
|
|
158
|
-
let condition = "1=1 "
|
|
159
|
-
if(this.$refs.paged.$refs.cri.model.f_plan_name){
|
|
160
|
-
if(this.$refs.paged.$refs.cri.model.f_plan_name.toString().trim()){
|
|
161
|
-
condition += " and f_plan_name like '%"+this.$refs.paged.$refs.cri.model.f_plan_name+"%'"
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
console.log('condition ===> '+ condition)
|
|
165
|
-
this.model.search(condition)
|
|
166
|
-
},
|
|
167
|
-
toPlanItem(planName) {
|
|
168
|
-
this.$dispatch('gotoson', {
|
|
169
|
-
_this: this,
|
|
170
|
-
title: '计划列表',
|
|
171
|
-
safe: false
|
|
172
|
-
})
|
|
173
|
-
this.$goto('check-plan-list-area', {planName},'self')
|
|
174
|
-
},
|
|
175
|
-
getNewOrder(){
|
|
176
|
-
HostApp.__this__ = this
|
|
177
|
-
HostApp.logicWithHint({
|
|
178
|
-
// logic别名,key必须为logic
|
|
179
|
-
'logic': 'SafeCheckServiceTimeOut',
|
|
180
|
-
// 回调执行方法名,key必须为callback
|
|
181
|
-
'callback': 'javascript:HostApp.__this__.getNewOrderCallBack()',
|
|
182
|
-
// logic执行需要的业务参数
|
|
183
|
-
'data': {params: ''},
|
|
184
|
-
// 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
|
|
185
|
-
// 执行回调方法传入key为backresult
|
|
186
|
-
// 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
|
|
187
|
-
'backresult': 1
|
|
188
|
-
})
|
|
189
|
-
},
|
|
190
|
-
getNewOrderCallBack() {
|
|
191
|
-
this.selfSearch()
|
|
192
|
-
},
|
|
193
|
-
hidden() {
|
|
194
|
-
this.criteriaShow = !this.criteriaShow
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
</script>
|
|
1
|
+
<style scoped>
|
|
2
|
+
.bg {
|
|
3
|
+
background-color: blue;
|
|
4
|
+
height: 1px;
|
|
5
|
+
border: 0;
|
|
6
|
+
}
|
|
7
|
+
.app-row {
|
|
8
|
+
background-color: white;
|
|
9
|
+
padding: 10px 10px 0 10px;
|
|
10
|
+
border-bottom: 1px solid rgba(235, 235, 235, 0.5);
|
|
11
|
+
}
|
|
12
|
+
.search_input {
|
|
13
|
+
border: 0;
|
|
14
|
+
outline: none;
|
|
15
|
+
}
|
|
16
|
+
.font{
|
|
17
|
+
font: 15px PingFang-SC-Medium;
|
|
18
|
+
color: #666666;
|
|
19
|
+
}
|
|
20
|
+
.input-font{
|
|
21
|
+
font: 15px PingFang-SC-Medium;
|
|
22
|
+
color: #333333;
|
|
23
|
+
}
|
|
24
|
+
.btn-font{
|
|
25
|
+
font:600 16px PingFang-SC-Bold;
|
|
26
|
+
color: #499EDF;
|
|
27
|
+
}
|
|
28
|
+
.btn-color{
|
|
29
|
+
background-color: #FFFFFF;
|
|
30
|
+
border-radius: 10px ;
|
|
31
|
+
border: 1px solid #499EDF;
|
|
32
|
+
}
|
|
33
|
+
.app-text {
|
|
34
|
+
font-size: 12px;
|
|
35
|
+
}
|
|
36
|
+
.panel-self{
|
|
37
|
+
border-radius: 10px;
|
|
38
|
+
border:1px solid #499EDF;
|
|
39
|
+
background-color: #F8F8F8;
|
|
40
|
+
}
|
|
41
|
+
.yybtn-color{
|
|
42
|
+
background-color:#499edf;
|
|
43
|
+
border-radius: 4px ;
|
|
44
|
+
border: 1px solid #499EDF;
|
|
45
|
+
color: #FFFFFF;
|
|
46
|
+
font: 14px PingFang-SC-Bold;
|
|
47
|
+
}
|
|
48
|
+
.qxbtn-color{
|
|
49
|
+
background-color: #FFFFFF;
|
|
50
|
+
border-radius: 4px ;
|
|
51
|
+
color: #499edf;
|
|
52
|
+
font: 14px PingFang-SC-Bold;
|
|
53
|
+
border: 1px solid #499EDF;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.button_shrink_top {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_top.png")}
|
|
57
|
+
.button_shrink_bottom {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_bottom.png")}
|
|
58
|
+
.button_shrink_left {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_left.png")}
|
|
59
|
+
.button_shrink_right {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_right.png")}
|
|
60
|
+
</style>
|
|
61
|
+
<template>
|
|
62
|
+
<div style="height: auto;width: 100%">
|
|
63
|
+
<criteria-paged :model="model" v-ref:paged>
|
|
64
|
+
<criteria partial='criteria' @condition-changed='search' v-ref:cri>
|
|
65
|
+
<div partial>
|
|
66
|
+
<form>
|
|
67
|
+
<div class="row app-row">
|
|
68
|
+
<div class="col-xs-4">
|
|
69
|
+
<img src="../../../assets/安检状态.png" style="width: 20px;margin-bottom: 5px" alt="">
|
|
70
|
+
<label class="font text-left">计划名称:</label>
|
|
71
|
+
</div>
|
|
72
|
+
<div class="col-xs-8" >
|
|
73
|
+
<input class="search_input input-font" v-model=model.f_plan_name condition="f_plan_name like '%{}%'" />
|
|
74
|
+
</div>
|
|
75
|
+
</div>
|
|
76
|
+
<div class="row text-center" style="margin-top: 20px;">
|
|
77
|
+
<button type="button" class="btn btn-lg btn-font btn-color" style="width: 25%;" @click="$parent.$parent.selfSearch">查询</button>
|
|
78
|
+
<img style="float: right;margin-right: 3% " @click="$parent.$parent.getNewOrder" src="../../../assets/shuaxindaiban1.png" style="width: 40px;padding: 5px; float:right">
|
|
79
|
+
<!-- <div style="float: right;margin-right: 3% " class="button_spacing" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}" @click="$parent.$parent.hidden()"></div>-->
|
|
80
|
+
</div>
|
|
81
|
+
<div style="height:30px;"></div>
|
|
82
|
+
</form>
|
|
83
|
+
</div>
|
|
84
|
+
</criteria>
|
|
85
|
+
<list :model="model" partial='list'>
|
|
86
|
+
<div partial>
|
|
87
|
+
<div class="auto app-text" style="margin-top: 5px;">
|
|
88
|
+
<div class="panel" style="padding: 10px 10px 5px 10px;">
|
|
89
|
+
<div class="panel-body panel-self" @click="$parent.$parent.$parent.toPlanItem(row.f_plan_name)">
|
|
90
|
+
<div class="col-xs-12">
|
|
91
|
+
<p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>计划名称:</b></p>
|
|
92
|
+
<p class="panel-title col-xs-7 text-left input-font" style="width: 74%">{{ row.f_plan_name }}</p>
|
|
93
|
+
</div>
|
|
94
|
+
<div class="col-xs-12">
|
|
95
|
+
<p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>计划时间:</b></p>
|
|
96
|
+
<p class="panel-title col-xs-7 text-left input-font" style="width: 79%">{{ row.f_create_time }}</p>
|
|
97
|
+
</div>
|
|
98
|
+
<div class="col-xs-6">
|
|
99
|
+
<p class="panel-title col-xs-5 text-left font"><b>入户:</b></p>
|
|
100
|
+
<p class="panel-title col-xs-7 text-left input-font">{{ row.checked }}
|
|
101
|
+
</p>
|
|
102
|
+
</div>
|
|
103
|
+
<div class="col-xs-6">
|
|
104
|
+
<p class="panel-title col-xs-5 text-left font"><b>到访不遇:</b></p>
|
|
105
|
+
<p class="panel-title col-xs-7 text-left input-font">{{ row.daofang }}
|
|
106
|
+
</p>
|
|
107
|
+
</div>
|
|
108
|
+
<div class="col-xs-6">
|
|
109
|
+
<p class="panel-title col-xs-5 text-left font"><b>拒检:</b></p>
|
|
110
|
+
<p class="panel-title col-xs-7 text-left input-font">{{ row.jujian }}
|
|
111
|
+
</p>
|
|
112
|
+
</div>
|
|
113
|
+
<div class="col-xs-6">
|
|
114
|
+
<p class="panel-title col-xs-5 text-left font"><b>未检:</b></p>
|
|
115
|
+
<p class="panel-title col-xs-7 text-left input-font">{{ row.no_check }}</p>
|
|
116
|
+
</div>
|
|
117
|
+
<div class="col-xs-6">
|
|
118
|
+
<p class="panel-title col-xs-5 text-left font"><b>总数:</b></p>
|
|
119
|
+
<p class="panel-title col-xs-7 text-left input-font">{{ row.checked + row.no_check + row.daofang + row.jujian }}</p>
|
|
120
|
+
</div>
|
|
121
|
+
<div class="col-xs-6">
|
|
122
|
+
<p class="panel-title col-xs-5 text-left font"><b>完成率:</b></p>
|
|
123
|
+
<p class="panel-title col-xs-7 text-left input-font">
|
|
124
|
+
{{((((row.checked+ row.daofang + row.jujian) / (row.checked + row.no_check+ row.daofang + row.jujian))) * 100).toFixed(0) + '%' }}
|
|
125
|
+
</p>
|
|
126
|
+
</div>
|
|
127
|
+
</div>
|
|
128
|
+
</div>
|
|
129
|
+
</div>
|
|
130
|
+
</div>
|
|
131
|
+
</list>
|
|
132
|
+
</criteria-paged>
|
|
133
|
+
</div>
|
|
134
|
+
</template>
|
|
135
|
+
|
|
136
|
+
<script>
|
|
137
|
+
|
|
138
|
+
import Vue from 'vue'
|
|
139
|
+
import LocalPagedList from "../../../components/android/LocalPagedList";
|
|
140
|
+
|
|
141
|
+
export default {
|
|
142
|
+
title: '安检计划列表',
|
|
143
|
+
data() {
|
|
144
|
+
return {
|
|
145
|
+
f_orgid: Vue.user.orgid,
|
|
146
|
+
model:new LocalPagedList( `androidCheckPlanList`,20, {condition:'this.condition'}),
|
|
147
|
+
criteriaShow: false
|
|
148
|
+
}
|
|
149
|
+
},
|
|
150
|
+
ready(){
|
|
151
|
+
},
|
|
152
|
+
methods: {
|
|
153
|
+
search(args) {
|
|
154
|
+
// args.condition += ` and tu.f_orgid in ${Vue.user.orgid}`
|
|
155
|
+
this.model.search(args.condition, args.model)
|
|
156
|
+
},
|
|
157
|
+
selfSearch () {
|
|
158
|
+
let condition = "1=1 "
|
|
159
|
+
if(this.$refs.paged.$refs.cri.model.f_plan_name){
|
|
160
|
+
if(this.$refs.paged.$refs.cri.model.f_plan_name.toString().trim()){
|
|
161
|
+
condition += " and f_plan_name like '%"+this.$refs.paged.$refs.cri.model.f_plan_name+"%'"
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
console.log('condition ===> '+ condition)
|
|
165
|
+
this.model.search(condition)
|
|
166
|
+
},
|
|
167
|
+
toPlanItem(planName) {
|
|
168
|
+
this.$dispatch('gotoson', {
|
|
169
|
+
_this: this,
|
|
170
|
+
title: '计划列表',
|
|
171
|
+
safe: false
|
|
172
|
+
})
|
|
173
|
+
this.$goto('check-plan-list-area', {planName},'self')
|
|
174
|
+
},
|
|
175
|
+
getNewOrder(){
|
|
176
|
+
HostApp.__this__ = this
|
|
177
|
+
HostApp.logicWithHint({
|
|
178
|
+
// logic别名,key必须为logic
|
|
179
|
+
'logic': 'SafeCheckServiceTimeOut',
|
|
180
|
+
// 回调执行方法名,key必须为callback
|
|
181
|
+
'callback': 'javascript:HostApp.__this__.getNewOrderCallBack()',
|
|
182
|
+
// logic执行需要的业务参数
|
|
183
|
+
'data': {params: ''},
|
|
184
|
+
// 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
|
|
185
|
+
// 执行回调方法传入key为backresult
|
|
186
|
+
// 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
|
|
187
|
+
'backresult': 1
|
|
188
|
+
})
|
|
189
|
+
},
|
|
190
|
+
getNewOrderCallBack() {
|
|
191
|
+
this.selfSearch()
|
|
192
|
+
},
|
|
193
|
+
hidden() {
|
|
194
|
+
this.criteriaShow = !this.criteriaShow
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
</script>
|