safecheck-client 3.0.33-104 → 3.0.33-107
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/App.vue +31 -31
- package/src/filiale/bayan/android/CheckPlanDown.vue +249 -0
- package/src/filiale/bayan/android/SafecheckOrderV.vue +2855 -2855
- package/src/filiale/bayan/android/SafecheckUserInfo.vue +863 -863
- package/src/filiale/bayan/android.js +18 -17
- package/src/filiale/bayan/pc/CheckDetail.vue +205 -0
- package/src/filiale/bayan/pc/CheckPlan.vue +59 -0
- package/src/filiale/bayan/pc/CheckPlanAreaList.vue +565 -0
- package/src/filiale/bayan/pc/CheckSearchUser.vue +1065 -0
- package/src/filiale/bayan/pc/DefectPaperNew.vue +1218 -1205
- package/src/filiale/bayan/pc/HiddenSituation.vue +256 -0
- package/src/filiale/bayan/pc/NewCheckpaper.vue +20 -0
- package/src/filiale/bayan/pc/PaperList.vue +7 -4
- package/src/filiale/bayan/pc/PlanManage.vue +960 -939
- package/src/filiale/bayan/pc/SelectCheckPlan.vue +333 -0
- package/src/filiale/bayan/pc.js +21 -16
- package/src/filiale/weinan/android/PaperFeedback.vue +1410 -1410
- package/src/filiale/weinan/android/SafecheckOrderV.vue +3335 -3325
@@ -1,17 +1,18 @@
|
|
1
|
-
// 分公司特殊组件页面注册
|
2
|
-
import Vue from "vue";
|
3
|
-
|
4
|
-
// 手机特殊目录注册到该文件中
|
5
|
-
let specialComp = {
|
6
|
-
'current-create': (resolve) => { require(['./android/CurrentCreate'], resolve) },
|
7
|
-
'add-plan-item': (resolve) => { require(['./android/AddPlanItem'], resolve) },
|
8
|
-
'paper-feedback': (resolve) => { require(['./android/PaperFeedback'], resolve) },
|
9
|
-
'safecheck-devices': (resolve) => { require(['./android/SafecheckDevices'], resolve) },
|
10
|
-
'PhoneUpUserinfo': (resolve) => { require(['./android/PhoneUpUserinfo'], resolve) },
|
11
|
-
'safecheck-userinfo': (resolve) => { require(['./android/SafecheckUserInfo'], resolve) },
|
12
|
-
'safecheck-order-v': (resolve) => { require(['./android/SafecheckOrderV'], resolve) },
|
13
|
-
'
|
14
|
-
}
|
15
|
-
|
16
|
-
|
17
|
-
|
1
|
+
// 分公司特殊组件页面注册
|
2
|
+
import Vue from "vue";
|
3
|
+
|
4
|
+
// 手机特殊目录注册到该文件中
|
5
|
+
let specialComp = {
|
6
|
+
'current-create': (resolve) => { require(['./android/CurrentCreate'], resolve) },
|
7
|
+
'add-plan-item': (resolve) => { require(['./android/AddPlanItem'], resolve) },
|
8
|
+
'paper-feedback': (resolve) => { require(['./android/PaperFeedback'], resolve) },
|
9
|
+
'safecheck-devices': (resolve) => { require(['./android/SafecheckDevices'], resolve) },
|
10
|
+
'PhoneUpUserinfo': (resolve) => { require(['./android/PhoneUpUserinfo'], resolve) },
|
11
|
+
'safecheck-userinfo': (resolve) => { require(['./android/SafecheckUserInfo'], resolve) },
|
12
|
+
'safecheck-order-v': (resolve) => { require(['./android/SafecheckOrderV'], resolve) },
|
13
|
+
'check-plan-down': (resolve) => { require(['./android/CheckPlanDown'], resolve) },
|
14
|
+
'edit': (resolve) => { require(['./android/Edit'], resolve) }
|
15
|
+
}
|
16
|
+
|
17
|
+
exports.specialComp = specialComp
|
18
|
+
|
@@ -0,0 +1,205 @@
|
|
1
|
+
<template>
|
2
|
+
<div>
|
3
|
+
<criteria-paged :model="model" v-ref:paged>
|
4
|
+
<criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:criteria>
|
5
|
+
<div partial>
|
6
|
+
<!-- <p class="text-center" style="padding: 7px;"><b>安检计划项明细</b></p>-->
|
7
|
+
<ul class="nav nav-tabs">
|
8
|
+
<li role="presentation" class="active"><a style=" color: #5ac0d9 !important;">安检计划项明细</a></li>
|
9
|
+
</ul>
|
10
|
+
<div class="row">
|
11
|
+
<div class="form-group col-sm-4" >
|
12
|
+
<label class="font_normal_body">安检状态</label>
|
13
|
+
<v-select style="width:60% "
|
14
|
+
class="select select_list"
|
15
|
+
:value.sync="$parent.$parent.f_state"
|
16
|
+
v-model="$parent.$parent.f_state"
|
17
|
+
:options='$parent.$parent.checkState'
|
18
|
+
placeholder='安检状态'
|
19
|
+
close-on-select
|
20
|
+
value-single
|
21
|
+
>
|
22
|
+
</v-select>
|
23
|
+
</div>
|
24
|
+
<div class="form-group col-sm-4" >
|
25
|
+
<v-select style="width:60% "
|
26
|
+
v-if="$parent.$parent.f_state=='未入户'"
|
27
|
+
class="select select_list"
|
28
|
+
:value.sync="$parent.$parent.f_noruhu"
|
29
|
+
v-model="$parent.$parent.f_noruhu"
|
30
|
+
:options='$parent.$parent.noChecks'
|
31
|
+
placeholder='请选择状态'
|
32
|
+
:multiple="true"
|
33
|
+
>
|
34
|
+
</v-select>
|
35
|
+
</div>
|
36
|
+
<div class="form-group col-sm-4 button-range" >
|
37
|
+
<button class="button_search" style="margin-right: 10px" @click="search()">查询</button>
|
38
|
+
<export-excel-safe :data="$parent.$parent.exportParameter"
|
39
|
+
:field="$parent.$parent.excelHeaders"
|
40
|
+
sqlurl="rs/logic/SafeExportExcel" sql-name="planItem"
|
41
|
+
template-name='安检计划明细' :choose-col="true">
|
42
|
+
</export-excel-safe>
|
43
|
+
<!--<export-excel-safe-->
|
44
|
+
<!--:data="{condition: $parent.$parent.condition}"-->
|
45
|
+
<!--:field="$parent.$parent.getfield"-->
|
46
|
+
<!--sqlurl="rs/logic/saleExport" sql-name="getGasUser" :template-name="$parent.$parent.pricename+'气价使用人'"-->
|
47
|
+
<!--:choose-col="true"></export-excel-safe>-->
|
48
|
+
|
49
|
+
</div>
|
50
|
+
</div>
|
51
|
+
</div>
|
52
|
+
</criteria>
|
53
|
+
<data-grid :model="model" partial='list' class="table_sy">
|
54
|
+
|
55
|
+
<template partial='head'>
|
56
|
+
<tr>
|
57
|
+
<th><nobr>计划名称</nobr></th>
|
58
|
+
<th><nobr>用户编号</nobr></th>
|
59
|
+
<th><nobr>用户名称</nobr></th>
|
60
|
+
<th><nobr>小区名称</nobr></th>
|
61
|
+
<th><nobr>地址</nobr></th>
|
62
|
+
<th><nobr>安检状态</nobr></th>
|
63
|
+
<th><nobr>是否安检</nobr></th>
|
64
|
+
</tr>
|
65
|
+
</template>
|
66
|
+
<template partial='body'>
|
67
|
+
<td style="text-align: center"><nobr>{{row.f_plan_name}}</nobr></td>
|
68
|
+
<td style="text-align: center"><nobr>{{row.f_userinfo_code}}</nobr></td>
|
69
|
+
<td style="text-align: center"><nobr>{{row.f_user_name}}</nobr></td>
|
70
|
+
<td style="text-align: center"><nobr>{{row.f_residential_area}}</nobr></td>
|
71
|
+
<td style="text-align: center"><nobr>{{row.f_address}}</nobr></td>
|
72
|
+
<td style="text-align: center"><nobr>{{row.f_last_check_state}}</nobr></td>
|
73
|
+
<td style="text-align: center"><nobr>{{row.f_state}}</nobr></td>
|
74
|
+
</template>
|
75
|
+
</data-grid>
|
76
|
+
</criteria-paged>
|
77
|
+
</div>
|
78
|
+
</template>
|
79
|
+
|
80
|
+
<script>
|
81
|
+
import { PagedList } from 'vue-client'
|
82
|
+
|
83
|
+
export default {
|
84
|
+
title: '安检计划项列表',
|
85
|
+
data () {
|
86
|
+
return {
|
87
|
+
model: new PagedList('rs/sql/planItem', 20),
|
88
|
+
checkState:[{label:'全部',value:''},{label:'入户',value:'入户'},{label:'未入户',value:'未入户'}],
|
89
|
+
noChecks:[{label:'未检',value:'未检'},{label:'到访不遇',value:'到访不遇'},{label:'拒检',value:'拒检'}],
|
90
|
+
excelHeaders: {
|
91
|
+
//用户编号 用户名称 用户电话 安检次数 用户类型 小区名称 地址 安检日期 安检状态 安检结果
|
92
|
+
|
93
|
+
'f_userinfo_code': '用户编号',
|
94
|
+
'f_user_name': '用户名称',
|
95
|
+
'f_user_phone': '用户电话',
|
96
|
+
//'count_item':'安检次数',
|
97
|
+
'f_user_type': '用户类型',
|
98
|
+
'f_residential_area': '小区名称',
|
99
|
+
'f_address':'地址',
|
100
|
+
'f_last_check_date':'安检日期',
|
101
|
+
'f_last_check_state': '安检状态',
|
102
|
+
'f_state':'是否已检',
|
103
|
+
'f_last_check_result':'安检结果'
|
104
|
+
},
|
105
|
+
f_state:'',
|
106
|
+
f_noruhu:''
|
107
|
+
}
|
108
|
+
},
|
109
|
+
props: [ 'check','checkstatus','checkstart','checkend' ],
|
110
|
+
watch: {
|
111
|
+
'check' (val) {
|
112
|
+
let condition
|
113
|
+
//tag
|
114
|
+
condition = `tt.f_checker_name='${this.check.f_checker}' and i.f_state!='作废' and c.f_issued='是'`
|
115
|
+
if(this.checkstatus){
|
116
|
+
condition += ` and cp.f_entry_status = '${this.checkstatus}'`
|
117
|
+
}
|
118
|
+
if (this.checkstart) {
|
119
|
+
condition += ` AND f_plan_year >= ${this.checkstart.substr(0,4)} `
|
120
|
+
condition += ` AND f_plan_month >= ${this.checkstart.substr(5,2)} `
|
121
|
+
}
|
122
|
+
if (this.checkend) {
|
123
|
+
condition += ` AND f_plan_year <= ${this.checkend.substr(0,4)} `
|
124
|
+
condition += ` AND f_plan_month <= ${this.checkend.substr(5,2)} `
|
125
|
+
}
|
126
|
+
this.f_noruhu=[]
|
127
|
+
this.f_state=''
|
128
|
+
this.model.search(condition, {})
|
129
|
+
|
130
|
+
}
|
131
|
+
},
|
132
|
+
|
133
|
+
ready () {
|
134
|
+
//tag
|
135
|
+
if (this.check) {
|
136
|
+
let condition
|
137
|
+
//tag
|
138
|
+
condition = `tt.f_checker_name='${this.check.f_checker}' and i.f_state!='作废' and c.f_issued='是'`
|
139
|
+
if(this.checkstatus){
|
140
|
+
condition += ` and cp.f_entry_status = '${this.checkstatus}'`
|
141
|
+
}
|
142
|
+
if (this.checkstart) {
|
143
|
+
condition += ` AND f_plan_year >= ${this.checkstart.substr(0,4)} `
|
144
|
+
condition += ` AND f_plan_month >= ${this.checkstart.substr(5,2)} `
|
145
|
+
}
|
146
|
+
if (this.checkend) {
|
147
|
+
condition += ` AND f_plan_year <= ${this.checkend.substr(0,4)} `
|
148
|
+
condition += ` AND f_plan_month <= ${this.checkend.substr(5,2)} `
|
149
|
+
}
|
150
|
+
|
151
|
+
this.model.search(condition, {})
|
152
|
+
}
|
153
|
+
},
|
154
|
+
methods:{
|
155
|
+
selfSearch(args){
|
156
|
+
if (this.check) {
|
157
|
+
args.condition = `tt.f_checker_name='${this.check.f_checker}' and i.f_state!='作废' and c.f_issued='是'`
|
158
|
+
if(this.checkstatus){
|
159
|
+
args.condition += ` and cp.f_entry_status = '${this.checkstatus}'`
|
160
|
+
}
|
161
|
+
if (this.checkstart) {
|
162
|
+
args.condition += ` AND f_plan_year >= ${this.checkstart.substr(0,4)} `
|
163
|
+
args.condition += ` AND f_plan_month >= ${this.checkstart.substr(5,2)} `
|
164
|
+
}
|
165
|
+
if (this.checkend) {
|
166
|
+
args.condition += ` AND f_plan_year <= ${this.checkend.substr(0,4)} `
|
167
|
+
args.condition += ` AND f_plan_month <= ${this.checkend.substr(5,2)} `
|
168
|
+
}
|
169
|
+
if( this.f_state){
|
170
|
+
if(this.f_state=='入户'){
|
171
|
+
args.condition=args.condition+" and i.f_state='已检' and f_last_check_state='入户'"
|
172
|
+
}else if(this.f_state=='未入户'){
|
173
|
+
if(this.f_noruhu && this.f_noruhu.length==1){
|
174
|
+
args.condition += this.f_noruhu[0]=='未检'?" and i.f_state='未检'":` and i.f_state='已检' and f_last_check_state='${this.f_noruhu[0]}'`
|
175
|
+
}else if(this.f_noruhu && this.f_noruhu.length==2){
|
176
|
+
if(this.f_noruhu.indexOf('未检')!=-1){
|
177
|
+
if(this.f_noruhu.indexOf('到访不遇')!=-1){
|
178
|
+
args.condition=args.condition+" and (i.f_state='未检' or (i.f_state='已检' and f_last_check_state='到访不遇'))"
|
179
|
+
}else{
|
180
|
+
args.condition=args.condition+" and (i.f_state='未检' or (i.f_state='已检' and f_last_check_state='拒检'))"
|
181
|
+
}
|
182
|
+
}else{
|
183
|
+
args.condition=args.condition+" and (i.f_state='已检' and (f_last_check_state='到访不遇' or f_last_check_state='拒检'))"
|
184
|
+
}
|
185
|
+
}else{
|
186
|
+
args.condition=args.condition+" and (i.f_state='未检' or (i.f_state='已检' and (f_last_check_state='到访不遇' or f_last_check_state='拒检')))"
|
187
|
+
}
|
188
|
+
|
189
|
+
}
|
190
|
+
|
191
|
+
}
|
192
|
+
this.model.search(args.condition, args.model)
|
193
|
+
}
|
194
|
+
}
|
195
|
+
},
|
196
|
+
computed: {
|
197
|
+
// 导出到Excel的条件构造
|
198
|
+
exportParameter() {
|
199
|
+
return {
|
200
|
+
condition: this.$refs.paged.model.condition
|
201
|
+
}
|
202
|
+
}
|
203
|
+
},
|
204
|
+
}
|
205
|
+
</script>
|
@@ -0,0 +1,59 @@
|
|
1
|
+
<template>
|
2
|
+
<div id="unit" class="flex-row" :class="{'binary':showItem}">
|
3
|
+
<!-- <section>-->
|
4
|
+
|
5
|
+
<div :class="{'basic-main':!showItem,'binary-left':showItem}" >
|
6
|
+
<select-check-plan @select-changed="selected" :style="style" :style2="style2" @checkstatus-changed="checkstatusChange" v-ref:check></select-check-plan>
|
7
|
+
</div>
|
8
|
+
<div class="binary-right" v-show="showItem">
|
9
|
+
<div class="flex">
|
10
|
+
<check-detail v-if='$refs.check && $refs.check.selected' :check='$refs.check.selected' :checkstatus="checkstatus" :checkstart="$refs.check.f_check_start" :checkend="$refs.check.f_check_end"
|
11
|
+
v-ref:detail></check-detail>
|
12
|
+
</div>
|
13
|
+
</div>
|
14
|
+
|
15
|
+
<!-- </section>-->
|
16
|
+
</div>
|
17
|
+
</template>
|
18
|
+
|
19
|
+
<script>
|
20
|
+
import SelectCheckPlan from './SelectCheckPlan'
|
21
|
+
import CheckDetail from './CheckDetail'
|
22
|
+
|
23
|
+
export default {
|
24
|
+
title: '安检员考核',
|
25
|
+
props: ['f'],
|
26
|
+
components: {SelectCheckPlan, CheckDetail},
|
27
|
+
data() {
|
28
|
+
return {
|
29
|
+
showItem: false,
|
30
|
+
checkstatus: null,
|
31
|
+
style:'col-sm-2 form-group',
|
32
|
+
style2:'col-sm-4 form-group'
|
33
|
+
}
|
34
|
+
},
|
35
|
+
methods: {
|
36
|
+
selected(row) {
|
37
|
+
// //tag
|
38
|
+
this.showItem = true
|
39
|
+
},
|
40
|
+
checkstatusChange(val){
|
41
|
+
this.checkstatus = val
|
42
|
+
}
|
43
|
+
}
|
44
|
+
}
|
45
|
+
</script>
|
46
|
+
<style>
|
47
|
+
.form-input-group label {
|
48
|
+
text-align: right;
|
49
|
+
width: auto;
|
50
|
+
}
|
51
|
+
|
52
|
+
.datapanel {
|
53
|
+
color: #333;
|
54
|
+
background-color: white;
|
55
|
+
box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
|
56
|
+
padding: 5px 7px 5px 7px;
|
57
|
+
border-radius: 10px;
|
58
|
+
}
|
59
|
+
</style>
|