safecheck-client 3.0.34-51 → 3.0.34-53
Sign up to get free protection for your applications and to get access to all the features.
- package/package.json +1 -1
- package/src/App.vue +31 -31
- package/src/components/android/AreaSelect.vue +208 -208
- package/src/components/android/BuildingSelect.vue +217 -217
- package/src/components/android/CheckPlanSelect.vue +248 -248
- package/src/components/android/PaperFeedback.vue +1514 -1514
- package/src/components/android/QRCode/QRCodeBinding.vue +294 -294
- package/src/components/rongcheng/AddPlanItem.vue +1 -1
- package/src/components/rongcheng/PhoneUpUserinfo.vue +0 -92
- package/src/filiale/bayan/pc/PaperList.vue +900 -899
- package/src/filiale/siyang/pc/CheckPlanAreaList.vue +512 -512
- package/src/filiale/siyang/pc/HiddenSituation.vue +167 -167
- package/src/filiale/siyang/pc/checkPlanList.vue +367 -367
- package/src/filiale/siyang/pc.js +21 -21
- package/src/filiale/weinan/pc/CheckBookSearchUserList.vue +20 -5
- package/src/filiale/weinan/pc/CheckDetail.vue +11 -11
- package/src/filiale/weinan/pc/checkUserList.vue +20 -5
- package/src/main.js +33 -33
- package/src/safecheck-android.js +303 -303
@@ -1,167 +1,167 @@
|
|
1
|
-
<template>
|
2
|
-
<div id='app' class="basic-main" style="height: 100%">
|
3
|
-
<criteria-paged :model="model" :pager='false'>
|
4
|
-
<criteria partial='criteria' @condition-changed='$parent.search' class="search_area">
|
5
|
-
<div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
|
6
|
-
<div class="row">
|
7
|
-
<div class="col-sm-4 form-group">
|
8
|
-
<role-selector-safe role-name="安检员" role-lable="安 检 员" @re-res="$parent.$parent.getRes"
|
9
|
-
:value.sync="model.f_checker_id" v-model="model.f_checker_id" condition="f_checker_name like '%{}%'">
|
10
|
-
</role-selector-safe>
|
11
|
-
</div>
|
12
|
-
<div class="col-sm-2 form-group">
|
13
|
-
<label for="startDate" class="font_normal_body">开始日期:</label>
|
14
|
-
<datepicker id="startDate" placeholder="开始日期" v-model="model.startDate" :value.sync="model.startDate"
|
15
|
-
style="width: 60%;" :disabled-days-of-Week="[]" :format="'yyyy-MM-dd 00:00:00'"
|
16
|
-
:show-reset-button="reset">
|
17
|
-
</datepicker>
|
18
|
-
</div>
|
19
|
-
<div class="col-sm-2 form-group">
|
20
|
-
<label for="endDate" class="font_normal_body">结束日期:</label>
|
21
|
-
<datepicker id="endDate" placeholder="结束日期" v-model="model.endDate" :value.sync="model.endDate"
|
22
|
-
:disabled-days-of-Week="[]" style="width: 60%;" :format="'yyyy-MM-dd 23:59:59'"
|
23
|
-
:show-reset-button="reset">
|
24
|
-
</datepicker>
|
25
|
-
</div>
|
26
|
-
<div class="col-sm-4 form-group" style="margin-top: 8px">
|
27
|
-
<button class="button_search button_spacing" @click="search()">查询</button>
|
28
|
-
<report-print class="button_export button_spacing" style="width:28%" id='shexian'></report-print>
|
29
|
-
<report-excel class="button_export button_spacing" style="width:28%" id='shexian'></report-excel>
|
30
|
-
</div>
|
31
|
-
</div>
|
32
|
-
<div class="row">
|
33
|
-
<div class="col-sm-2 form-group">
|
34
|
-
<label class="font_normal_body">用气性质</label>
|
35
|
-
<v-select class="select_list select" placeholder='用气性质' style="width: 60%" v-model='model.userType'
|
36
|
-
:value.sync="model.userType" :options='$parent.$parent.userTypes' condition="tuf.f_gasproperties in {} "
|
37
|
-
:multiple="true"></v-select>
|
38
|
-
</div>
|
39
|
-
<div class="col-sm-2 form-group">
|
40
|
-
<label class="font_normal_body">气表类型</label>
|
41
|
-
<v-select class="select_list select" placeholder='气表类型' style="width: 60%" v-model='model.tableType'
|
42
|
-
:value.sync="model.tableType" :options='$parent.$parent.tableTypes'
|
43
|
-
condition="tuf.f_meter_classify = '{}'" :value-single="true" close-on-select clear-button></v-select>
|
44
|
-
</div>
|
45
|
-
<div class="col-sm-2 form-group">
|
46
|
-
<label class="font_normal_body">气表品牌</label>
|
47
|
-
<v-select class="select_list select" placeholder='气表类型' style="width: 60%" v-model='model.tableBrand'
|
48
|
-
:value.sync="model.tableBrand" :options='$parent.$parent.tableBrands'
|
49
|
-
condition="gb.f_meter_brand = '{}'" :value-single="true" close-on-select clear-button></v-select>
|
50
|
-
</div>
|
51
|
-
</div>
|
52
|
-
</div>
|
53
|
-
</criteria>
|
54
|
-
<div partial='list' id='shexian' class="list_area" style="overflow-y: scroll">
|
55
|
-
<table class='tableprint' style="margin: 0px auto">
|
56
|
-
<thead>
|
57
|
-
<tr>
|
58
|
-
<th colspan='5' style="font-weight: normal; text-align: left;">
|
59
|
-
<h3 style="text-align: center">隐患报表</h3>
|
60
|
-
</th>
|
61
|
-
</tr>
|
62
|
-
<tr>
|
63
|
-
<th colspan='5' style="font-weight: normal; text-align: center;">
|
64
|
-
隐患户数:{{ $parent.hiddenHouseholds }}
|
65
|
-
隐患发生数:{{ $parent.hiddenNumber }}
|
66
|
-
开始时间:{{ model.model.startDate }}
|
67
|
-
结束时间:{{ model.model.endDate }}
|
68
|
-
</th>
|
69
|
-
</tr>
|
70
|
-
</thead>
|
71
|
-
<tr>
|
72
|
-
<th colspan='5' style="font-weight: normal;">
|
73
|
-
{{{ model.data.substring(26, model.data.length - 8) }}}
|
74
|
-
</th>
|
75
|
-
</tr>
|
76
|
-
</table>
|
77
|
-
</div>
|
78
|
-
</criteria-paged>
|
79
|
-
</div>
|
80
|
-
|
81
|
-
</template>
|
82
|
-
|
83
|
-
<script>
|
84
|
-
import { DataModel, HttpResetClass } from 'vue-client'
|
85
|
-
|
86
|
-
export default {
|
87
|
-
title: '隐患报表',
|
88
|
-
data() {
|
89
|
-
|
90
|
-
let model = new DataModel('rs/report/hiddensituation', {
|
91
|
-
startDate: 'this.model.startDate',
|
92
|
-
endDate: 'this.model.endDate',
|
93
|
-
f_filialeid: 'this.f_filialeid'
|
94
|
-
})
|
95
|
-
model.f_filialeid = '(' + this.$login.f.orgid + ')'
|
96
|
-
return {
|
97
|
-
userTypes: [{ label: '全部', value: '' }, ...this.$appdata.getParam('用气性质')],
|
98
|
-
tableTypes: [{ label: '全部', value: '' }, ...this.$appdata.getParam('气表类型')],
|
99
|
-
tableBrands: [{ label: '全部', value: '' }],
|
100
|
-
filialeNameStr: '',
|
101
|
-
hiddenNumber: '',
|
102
|
-
hiddenHouseholds: '',
|
103
|
-
filialeCodeStr: '',
|
104
|
-
userid: this.$login.f.id,
|
105
|
-
source: `tool.getFullTree(this.getRights().where(row.getType() != $zone$).where(row.getType() == $organization$))`,
|
106
|
-
model: model
|
107
|
-
}
|
108
|
-
},
|
109
|
-
methods: {
|
110
|
-
search(args) {
|
111
|
-
this.model.search(args.condition, args.model)
|
112
|
-
let dateCondition
|
113
|
-
if (args.model.startDate && args.model.endDate) {
|
114
|
-
dateCondition = `f_offsite_time BETWEEN '${args.model.startDate}' AND '${args.model.endDate}'`
|
115
|
-
} else if (args.model.startDate) {
|
116
|
-
dateCondition = `f_offsite_time >= '${args.model.startDate}'`
|
117
|
-
} else if (args.model.endDate) {
|
118
|
-
dateCondition = `f_offsite_time <= '${args.model.endDate}'`
|
119
|
-
}
|
120
|
-
if (dateCondition){
|
121
|
-
this.getHiddenNumber(dateCondition)
|
122
|
-
this.getHiddenHouseholds(dateCondition)
|
123
|
-
}
|
124
|
-
},
|
125
|
-
getRes(obj) {
|
126
|
-
this.model.f_filialeid = this.$login.convertToIn(obj.resids)
|
127
|
-
},
|
128
|
-
getHiddenNumber(condition) {
|
129
|
-
new HttpResetClass().load("POST", `/rs/sql/defectDetails`,
|
130
|
-
{ data: { condition: condition } },
|
131
|
-
{ resolveMsg: null, rejectMsg: null }).then(resp => {
|
132
|
-
this.$set('hiddenNumber',resp.data.length)
|
133
|
-
})
|
134
|
-
},
|
135
|
-
getHiddenHouseholds(condition) {
|
136
|
-
new HttpResetClass().load("POST", `/rs/sql/safe_singleTable_GroupBy`,
|
137
|
-
{ data: { items: "f_userinfoid", tablename: "t_check_paper", groupitem: "f_userinfoid", condition: ` f_defect_content LIKE '%有隐患%' and ${condition}` } },
|
138
|
-
{ resolveMsg: null, rejectMsg: null }).then(resp => {
|
139
|
-
this.$set('hiddenHouseholds',resp.data.length)
|
140
|
-
})
|
141
|
-
},
|
142
|
-
getTableBrands() {
|
143
|
-
new HttpResetClass().load("POST", `/rs/sql/safe_singleTable_OrderBy`,
|
144
|
-
{ data: { items: "*", tablename: "t_gasbrand", orderitem: "id", condition: ` 1=1 ` } },
|
145
|
-
{ resolveMsg: null, rejectMsg: null }).then((resp) => {
|
146
|
-
resp.data.forEach((result) => {
|
147
|
-
this.tableBrands.push({ label: result.f_meter_brand, value: result.f_meter_brand })
|
148
|
-
})
|
149
|
-
})
|
150
|
-
},
|
151
|
-
},
|
152
|
-
ready() {
|
153
|
-
this.getTableBrands()
|
154
|
-
},
|
155
|
-
computed: {
|
156
|
-
selected() {
|
157
|
-
return this.$refs.grid.selected
|
158
|
-
}
|
159
|
-
// outlets () {
|
160
|
-
// return [{label: '全部', value: ''}, ...AppData.getParam('营业网点')]
|
161
|
-
// },
|
162
|
-
// operator () {
|
163
|
-
// return [{label: '全部', value: ''}, ...AppData.getParam('操作员')]
|
164
|
-
// }
|
165
|
-
}
|
166
|
-
}
|
167
|
-
</script>
|
1
|
+
<template>
|
2
|
+
<div id='app' class="basic-main" style="height: 100%">
|
3
|
+
<criteria-paged :model="model" :pager='false'>
|
4
|
+
<criteria partial='criteria' @condition-changed='$parent.search' class="search_area">
|
5
|
+
<div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
|
6
|
+
<div class="row">
|
7
|
+
<div class="col-sm-4 form-group">
|
8
|
+
<role-selector-safe role-name="安检员" role-lable="安 检 员" @re-res="$parent.$parent.getRes"
|
9
|
+
:value.sync="model.f_checker_id" v-model="model.f_checker_id" condition="f_checker_name like '%{}%'">
|
10
|
+
</role-selector-safe>
|
11
|
+
</div>
|
12
|
+
<div class="col-sm-2 form-group">
|
13
|
+
<label for="startDate" class="font_normal_body">开始日期:</label>
|
14
|
+
<datepicker id="startDate" placeholder="开始日期" v-model="model.startDate" :value.sync="model.startDate"
|
15
|
+
style="width: 60%;" :disabled-days-of-Week="[]" :format="'yyyy-MM-dd 00:00:00'"
|
16
|
+
:show-reset-button="reset">
|
17
|
+
</datepicker>
|
18
|
+
</div>
|
19
|
+
<div class="col-sm-2 form-group">
|
20
|
+
<label for="endDate" class="font_normal_body">结束日期:</label>
|
21
|
+
<datepicker id="endDate" placeholder="结束日期" v-model="model.endDate" :value.sync="model.endDate"
|
22
|
+
:disabled-days-of-Week="[]" style="width: 60%;" :format="'yyyy-MM-dd 23:59:59'"
|
23
|
+
:show-reset-button="reset">
|
24
|
+
</datepicker>
|
25
|
+
</div>
|
26
|
+
<div class="col-sm-4 form-group" style="margin-top: 8px">
|
27
|
+
<button class="button_search button_spacing" @click="search()">查询</button>
|
28
|
+
<report-print class="button_export button_spacing" style="width:28%" id='shexian'></report-print>
|
29
|
+
<report-excel class="button_export button_spacing" style="width:28%" id='shexian'></report-excel>
|
30
|
+
</div>
|
31
|
+
</div>
|
32
|
+
<div class="row">
|
33
|
+
<div class="col-sm-2 form-group">
|
34
|
+
<label class="font_normal_body">用气性质</label>
|
35
|
+
<v-select class="select_list select" placeholder='用气性质' style="width: 60%" v-model='model.userType'
|
36
|
+
:value.sync="model.userType" :options='$parent.$parent.userTypes' condition="tuf.f_gasproperties in {} "
|
37
|
+
:multiple="true"></v-select>
|
38
|
+
</div>
|
39
|
+
<div class="col-sm-2 form-group">
|
40
|
+
<label class="font_normal_body">气表类型</label>
|
41
|
+
<v-select class="select_list select" placeholder='气表类型' style="width: 60%" v-model='model.tableType'
|
42
|
+
:value.sync="model.tableType" :options='$parent.$parent.tableTypes'
|
43
|
+
condition="tuf.f_meter_classify = '{}'" :value-single="true" close-on-select clear-button></v-select>
|
44
|
+
</div>
|
45
|
+
<div class="col-sm-2 form-group">
|
46
|
+
<label class="font_normal_body">气表品牌</label>
|
47
|
+
<v-select class="select_list select" placeholder='气表类型' style="width: 60%" v-model='model.tableBrand'
|
48
|
+
:value.sync="model.tableBrand" :options='$parent.$parent.tableBrands'
|
49
|
+
condition="gb.f_meter_brand = '{}'" :value-single="true" close-on-select clear-button></v-select>
|
50
|
+
</div>
|
51
|
+
</div>
|
52
|
+
</div>
|
53
|
+
</criteria>
|
54
|
+
<div partial='list' id='shexian' class="list_area" style="overflow-y: scroll">
|
55
|
+
<table class='tableprint' style="margin: 0px auto">
|
56
|
+
<thead>
|
57
|
+
<tr>
|
58
|
+
<th colspan='5' style="font-weight: normal; text-align: left;">
|
59
|
+
<h3 style="text-align: center">隐患报表</h3>
|
60
|
+
</th>
|
61
|
+
</tr>
|
62
|
+
<tr>
|
63
|
+
<th colspan='5' style="font-weight: normal; text-align: center;">
|
64
|
+
隐患户数:{{ $parent.hiddenHouseholds }}
|
65
|
+
隐患发生数:{{ $parent.hiddenNumber }}
|
66
|
+
开始时间:{{ model.model.startDate }}
|
67
|
+
结束时间:{{ model.model.endDate }}
|
68
|
+
</th>
|
69
|
+
</tr>
|
70
|
+
</thead>
|
71
|
+
<tr>
|
72
|
+
<th colspan='5' style="font-weight: normal;">
|
73
|
+
{{{ model.data.substring(26, model.data.length - 8) }}}
|
74
|
+
</th>
|
75
|
+
</tr>
|
76
|
+
</table>
|
77
|
+
</div>
|
78
|
+
</criteria-paged>
|
79
|
+
</div>
|
80
|
+
|
81
|
+
</template>
|
82
|
+
|
83
|
+
<script>
|
84
|
+
import { DataModel, HttpResetClass } from 'vue-client'
|
85
|
+
|
86
|
+
export default {
|
87
|
+
title: '隐患报表',
|
88
|
+
data() {
|
89
|
+
|
90
|
+
let model = new DataModel('rs/report/hiddensituation', {
|
91
|
+
startDate: 'this.model.startDate',
|
92
|
+
endDate: 'this.model.endDate',
|
93
|
+
f_filialeid: 'this.f_filialeid'
|
94
|
+
})
|
95
|
+
model.f_filialeid = '(' + this.$login.f.orgid + ')'
|
96
|
+
return {
|
97
|
+
userTypes: [{ label: '全部', value: '' }, ...this.$appdata.getParam('用气性质')],
|
98
|
+
tableTypes: [{ label: '全部', value: '' }, ...this.$appdata.getParam('气表类型')],
|
99
|
+
tableBrands: [{ label: '全部', value: '' }],
|
100
|
+
filialeNameStr: '',
|
101
|
+
hiddenNumber: '',
|
102
|
+
hiddenHouseholds: '',
|
103
|
+
filialeCodeStr: '',
|
104
|
+
userid: this.$login.f.id,
|
105
|
+
source: `tool.getFullTree(this.getRights().where(row.getType() != $zone$).where(row.getType() == $organization$))`,
|
106
|
+
model: model
|
107
|
+
}
|
108
|
+
},
|
109
|
+
methods: {
|
110
|
+
search(args) {
|
111
|
+
this.model.search(args.condition, args.model)
|
112
|
+
let dateCondition
|
113
|
+
if (args.model.startDate && args.model.endDate) {
|
114
|
+
dateCondition = `f_offsite_time BETWEEN '${args.model.startDate}' AND '${args.model.endDate}'`
|
115
|
+
} else if (args.model.startDate) {
|
116
|
+
dateCondition = `f_offsite_time >= '${args.model.startDate}'`
|
117
|
+
} else if (args.model.endDate) {
|
118
|
+
dateCondition = `f_offsite_time <= '${args.model.endDate}'`
|
119
|
+
}
|
120
|
+
if (dateCondition){
|
121
|
+
this.getHiddenNumber(dateCondition)
|
122
|
+
this.getHiddenHouseholds(dateCondition)
|
123
|
+
}
|
124
|
+
},
|
125
|
+
getRes(obj) {
|
126
|
+
this.model.f_filialeid = this.$login.convertToIn(obj.resids)
|
127
|
+
},
|
128
|
+
getHiddenNumber(condition) {
|
129
|
+
new HttpResetClass().load("POST", `/rs/sql/defectDetails`,
|
130
|
+
{ data: { condition: condition } },
|
131
|
+
{ resolveMsg: null, rejectMsg: null }).then(resp => {
|
132
|
+
this.$set('hiddenNumber',resp.data.length)
|
133
|
+
})
|
134
|
+
},
|
135
|
+
getHiddenHouseholds(condition) {
|
136
|
+
new HttpResetClass().load("POST", `/rs/sql/safe_singleTable_GroupBy`,
|
137
|
+
{ data: { items: "f_userinfoid", tablename: "t_check_paper", groupitem: "f_userinfoid", condition: ` f_defect_content LIKE '%有隐患%' and ${condition}` } },
|
138
|
+
{ resolveMsg: null, rejectMsg: null }).then(resp => {
|
139
|
+
this.$set('hiddenHouseholds',resp.data.length)
|
140
|
+
})
|
141
|
+
},
|
142
|
+
getTableBrands() {
|
143
|
+
new HttpResetClass().load("POST", `/rs/sql/safe_singleTable_OrderBy`,
|
144
|
+
{ data: { items: "*", tablename: "t_gasbrand", orderitem: "id", condition: ` 1=1 ` } },
|
145
|
+
{ resolveMsg: null, rejectMsg: null }).then((resp) => {
|
146
|
+
resp.data.forEach((result) => {
|
147
|
+
this.tableBrands.push({ label: result.f_meter_brand, value: result.f_meter_brand })
|
148
|
+
})
|
149
|
+
})
|
150
|
+
},
|
151
|
+
},
|
152
|
+
ready() {
|
153
|
+
this.getTableBrands()
|
154
|
+
},
|
155
|
+
computed: {
|
156
|
+
selected() {
|
157
|
+
return this.$refs.grid.selected
|
158
|
+
}
|
159
|
+
// outlets () {
|
160
|
+
// return [{label: '全部', value: ''}, ...AppData.getParam('营业网点')]
|
161
|
+
// },
|
162
|
+
// operator () {
|
163
|
+
// return [{label: '全部', value: ''}, ...AppData.getParam('操作员')]
|
164
|
+
// }
|
165
|
+
}
|
166
|
+
}
|
167
|
+
</script>
|