apply-clients 5.0.35-9 → 5.0.35-92
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/.eslintrc.js +16 -16
- package/package.json +3 -3
- package/src/AndroidApp.vue +28 -28
- package/src/android.js +18 -18
- package/src/apply.js +15 -1
- package/src/components/app_apply/ApplyDownList.vue +168 -168
- package/src/components/app_apply/ApplyInfo.vue +56 -56
- package/src/components/app_apply/ApplyListUpload.vue +268 -268
- package/src/components/app_apply/ApplyToDoList.vue +312 -243
- package/src/components/app_apply/Gongcheng.vue +3631 -0
- package/src/components/app_apply/OneToMany.vue +194 -0
- package/src/components/app_apply/PlaceControler.vue +299 -284
- package/src/components/app_apply/ServiceControl.vue +687 -341
- package/src/components/app_apply/ServiceView.vue +383 -383
- package/src/components/app_apply/ezhou/FeiMinYongV.vue +109 -109
- package/src/components/app_apply/ezhou/FeiMinYongVV.vue +100 -100
- package/src/components/app_apply/ezhou/MinYong.vue +92 -92
- package/src/components/app_apply/ezhou/ServiceView.vue +745 -616
- package/src/components/image/doc.jpg +0 -0
- package/src/components/image/dwg.png +0 -0
- package/src/components/image/dxf.png +0 -0
- package/src/components/image/excel.jpg +0 -0
- package/src/components/image/pdf.jpg +0 -0
- package/src/components/product/Common/ApplyValidateBill.vue +13 -6
- package/src/components/product/Common/PrintBill.vue +7 -6
- package/src/components/product/EngineeringManagement/EngineerUpload.vue +304 -0
- package/src/components/product/EngineeringManagement/EngineeringManagement.vue +137 -0
- package/src/components/product/EngineeringManagement/EngineeringSelect.vue +586 -0
- package/src/components/product/EngineeringSupervisory/EngineeringApplyStopInfo.vue +281 -0
- package/src/components/product/EngineeringSupervisory/EngineeringSupervisoryControl.vue +132 -0
- package/src/components/product/EngineeringSupervisory/EngineeringSupervisoryList.vue +340 -0
- package/src/components/product/EngineeringSupervisory/EngineeringSupervisoryServiceControl.vue +490 -0
- package/src/components/product/Function/InstallInfoSelect.vue +3 -2
- package/src/components/product/Function/Service/FunctionServiceControl.vue +37 -1
- package/src/components/product/Function/functions/ApplyUpload.vue +556 -0
- package/src/components/product/Function/functions/BuyerMessage.vue +1 -1
- package/src/components/product/Function/functions/InstallFee.vue +1161 -919
- package/src/components/product/Function/functions/InstallFeeInfo.vue +6 -1
- package/src/components/product/Process/ExplorationSelect.vue +9 -5
- package/src/components/product/Process/Processes/CustomerRecordMessage.vue +2 -5
- package/src/components/product/Process/Processes/Service/ApplyChargeSearch.vue +126 -39
- package/src/components/product/Process/Processes/Service/PaperTicketBill.vue +85 -0
- package/src/components/product/Process/Processes/Service/ServiceControl.vue +368 -21
- package/src/components/product/ServiceView.vue +16 -6
- package/src/components/product/Supervisory/Service/SupervisoryServiceControl.vue +57 -10
- package/src/components/product/Supervisory/SupervisoryList.vue +72 -12
- package/src/components/product/applyReport/ApplyReport.vue +205 -0
- package/src/components/product/applyReport/PrintApplyReport.vue +116 -0
- package/src/components/product/stopInfo/ApplyStopInfo.vue +2 -1
- package/src/ezhouAndroid.js +48 -45
- package/src/index.js +8 -8
- package/src/main.js +32 -32
- package/src/plugins/commonService.js +11 -7
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
</template>
|
|
21
21
|
<script>
|
|
22
22
|
import {HttpResetClass} from 'vue-client'
|
|
23
|
+
import Vue from "vue";
|
|
23
24
|
export default {
|
|
24
25
|
title: '报建监控控制层',
|
|
25
26
|
props: ['selectdata'],
|
|
@@ -36,6 +37,45 @@
|
|
|
36
37
|
},
|
|
37
38
|
// json配置数据处理 比如下拉框的options
|
|
38
39
|
async initializtion() {
|
|
40
|
+
// onetomany 数据获取
|
|
41
|
+
if (this.data.onetomany) {
|
|
42
|
+
console.log('判断是onetomany,this.data.onetomany的数据为=>' + JSON.stringify(this.data.onetomany))
|
|
43
|
+
for (let index = 0; index < this.data.onetomany.length; index++) {
|
|
44
|
+
let http = new HttpResetClass()
|
|
45
|
+
let data = {}
|
|
46
|
+
if (this.data.onetomany[index].tables[0] == 't_charge_record') {
|
|
47
|
+
data = {
|
|
48
|
+
tablename: this.data.onetomany[index].tables[0],
|
|
49
|
+
condition: `f_apply_num = '${this.selectdata.f_apply_num}' and f_process_id='${this.selectdata.f_process_id}' and f_charging_status != '作废'`
|
|
50
|
+
}
|
|
51
|
+
} else {
|
|
52
|
+
data = {
|
|
53
|
+
tablename: this.data.onetomany[index].tables[0],
|
|
54
|
+
condition: `f_process_id='${this.selectdata.f_process_id}'`
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
let res = await http.load('POST', 'rs/sql/singleTable', {data: data}, {
|
|
58
|
+
resolveMsg: null,
|
|
59
|
+
rejectMsg: 'onetomany查询失败'
|
|
60
|
+
})
|
|
61
|
+
// 初始化 onetomany
|
|
62
|
+
let rows = []
|
|
63
|
+
console.log('查询返回结果res.data=>' + JSON.stringify(res.data))
|
|
64
|
+
this.data.onetomany[index].rows = res.data
|
|
65
|
+
// console.log(JSON.stringify('this.data.onetomany[index].rows=>' + JSON.stringify(this.data.onetomany[index].rows)))
|
|
66
|
+
|
|
67
|
+
// 初始化onetomany中的fields
|
|
68
|
+
for (let j = 0; j < this.data.onetomany[index].fields.length; j++) {
|
|
69
|
+
// 如果配置类型为select,优先从参数列表获取options
|
|
70
|
+
if (this.data.onetomany[index].fields[j].type === 'select') {
|
|
71
|
+
let temp = Vue.$appdata.getParam(this.data.onetomany[index].fields[j].label)
|
|
72
|
+
if (temp && temp.length > 0) {
|
|
73
|
+
this.data.onetomany[index].fields[j].options = Vue.$appdata.getParam(this.data.onetomany[index].fields[j].label)
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
39
79
|
// selectdata 填充 data
|
|
40
80
|
if (this.selectdata.f_survey_name) {
|
|
41
81
|
let buyerinfos = []
|
|
@@ -93,11 +133,11 @@
|
|
|
93
133
|
}
|
|
94
134
|
this.data.fields[i].readonly = true
|
|
95
135
|
this.data.fields[i].disabled = true
|
|
96
|
-
if(this.$login.r.find(value => value == '报建流程修改') && this
|
|
136
|
+
if(this.$login.r.find(value => value == '报建流程修改') && this.$login.r.includes('报建流程修改')){
|
|
97
137
|
this.data.fields[i].readonly = false
|
|
98
138
|
this.data.fields[i].disabled = false
|
|
99
139
|
}
|
|
100
|
-
if(this.$login.r.find(value => value == '集体报建流程修改')
|
|
140
|
+
if(this.$login.r.find(value => value == '集体报建流程修改') && this.$login.r.includes('报建流程修改')){
|
|
101
141
|
this.data.fields[i].readonly = false
|
|
102
142
|
this.data.fields[i].disabled = false
|
|
103
143
|
}
|
|
@@ -117,7 +157,7 @@
|
|
|
117
157
|
}
|
|
118
158
|
}
|
|
119
159
|
this.data.buttons = null
|
|
120
|
-
if( this.$login.r.find(value => value == '报建流程修改')
|
|
160
|
+
if( this.$login.r.find(value => value == '报建流程修改') ){
|
|
121
161
|
// 仅留保存按钮
|
|
122
162
|
this.data.buttons = [
|
|
123
163
|
{
|
|
@@ -125,7 +165,7 @@
|
|
|
125
165
|
}
|
|
126
166
|
]
|
|
127
167
|
}
|
|
128
|
-
if(this
|
|
168
|
+
if(this.$login.r.includes('集体报建流程修改')){
|
|
129
169
|
// 仅留保存按钮
|
|
130
170
|
this.data.buttons = [
|
|
131
171
|
{
|
|
@@ -133,11 +173,6 @@
|
|
|
133
173
|
}
|
|
134
174
|
]
|
|
135
175
|
}
|
|
136
|
-
// 完成时间和完成人,部门,分公司
|
|
137
|
-
this.data.filiale = this.selectdata.f_filiale
|
|
138
|
-
this.data.f_parentname = this.selectdata.f_parentname
|
|
139
|
-
this.data.operate_date = this.selectdata.finishtime
|
|
140
|
-
this.data.operator = this.selectdata.sender
|
|
141
176
|
}
|
|
142
177
|
},
|
|
143
178
|
events:{
|
|
@@ -393,7 +428,19 @@
|
|
|
393
428
|
if (sum == 1) {
|
|
394
429
|
this.data = jsonData
|
|
395
430
|
this.initializtion()
|
|
396
|
-
|
|
431
|
+
// 完成时间和完成人,部门,分公司
|
|
432
|
+
if(this.selectdata.defname =='完工'){ this.data.filiale = this.selectdata.f_filiale
|
|
433
|
+
this.data.f_parentname = this.selectdata.f_parentname
|
|
434
|
+
this.data.operate_date = this.selectdata.sendtime
|
|
435
|
+
this.data.operator = this.selectdata.sender
|
|
436
|
+
this.showview = true
|
|
437
|
+
}else{
|
|
438
|
+
this.data.f_parentname = this.selectdata.f_parentname
|
|
439
|
+
this.data.operate_date = this.selectdata.finishtime
|
|
440
|
+
this.data.operator = this.selectdata.person
|
|
441
|
+
this.showview = true
|
|
442
|
+
}
|
|
443
|
+
|
|
397
444
|
} else if (sum == 0) {
|
|
398
445
|
this.$showMessage(`没有在JSON配置文件中找到活动名为:(${this.selectdata.defname})的节点配置`)
|
|
399
446
|
} else {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="d1">
|
|
3
|
-
<div class="left col-sm-12">
|
|
3
|
+
<div class="left col-sm-12" style="height:90%;">
|
|
4
4
|
<criteria-paged :model="model" v-ref:cp>
|
|
5
5
|
<criteria partial='criteria' @condition-changed='search' v-ref:cri style="padding: 20px;background-color: #f6f6f6;">
|
|
6
6
|
<form novalidate class="" partial>
|
|
@@ -53,7 +53,15 @@
|
|
|
53
53
|
</v-select>
|
|
54
54
|
</div>
|
|
55
55
|
</div>
|
|
56
|
-
|
|
56
|
+
<div class="col-sm-2" >
|
|
57
|
+
<label class="col-sm-4 control-label">支付账户</label>
|
|
58
|
+
<div class="col-sm-8">
|
|
59
|
+
<v-select style="min-width: 100%;" @change="$dispatch('setQueryCondition',model)" :options="[{label:'全部',value:''},{label:'安泰',value:'安泰'},{label:'欣泰',value:'欣泰'}]"
|
|
60
|
+
condition="f_payment_account = '{}'" placeholder='支付账户'
|
|
61
|
+
v-model="model.f_payment_account" :value.sync="model.f_payment_account" close-on-select>
|
|
62
|
+
</v-select>
|
|
63
|
+
</div>
|
|
64
|
+
</div>
|
|
57
65
|
</div>
|
|
58
66
|
<div class="col-sm-12" style="margin-top:5px;">
|
|
59
67
|
<div class="col-sm-2">
|
|
@@ -113,14 +121,14 @@
|
|
|
113
121
|
<div class="col-sm-2" style="float: left">
|
|
114
122
|
<label class="col-sm-4 control-label">报装来源</label>
|
|
115
123
|
<div class="col-sm-8">
|
|
116
|
-
<v-select style="min-width: 100%;" @change="$dispatch('setQueryCondition',model)" :options="[{label:'全部',value:''},{label:'燃气系统',value:'燃气系统'},{label:'微信',value:'微信'}]"
|
|
124
|
+
<v-select style="min-width: 100%;" @change="$dispatch('setQueryCondition',model)" :options="[{label:'全部',value:''},{label:'燃气系统',value:'燃气系统'},{label:'微信',value:'微信'},{label:'住建局',value:'住建局'}]"
|
|
117
125
|
condition="f_apply_source = '{}'" placeholder='报装来源'
|
|
118
126
|
v-model="model.f_apply_source" :value.sync="model.f_apply_source" close-on-select>
|
|
119
127
|
</v-select>
|
|
120
128
|
</div>
|
|
121
129
|
</div>
|
|
122
130
|
<div class="col-sm-1" style="margin-left:20px;">
|
|
123
|
-
<button style="margin-left:5%;" class="btn btn-primary btn-sm width-80 button_spacing" type="button" @click="search(),$parent.$parent.
|
|
131
|
+
<button style="margin-left:5%;" class="btn btn-primary btn-sm width-80 button_spacing" type="button" @click="search(),$parent.$parent.cleaner()">
|
|
124
132
|
<span class="glyphicon glyphicon-search"></span>查询
|
|
125
133
|
</button>
|
|
126
134
|
<button class="btn-primary btn btn-sm button_spacing" @click.prevent="$parent.$parent.clear()">清空</button>
|
|
@@ -164,6 +172,15 @@
|
|
|
164
172
|
<th>
|
|
165
173
|
<nobr>报建类型</nobr>
|
|
166
174
|
</th>
|
|
175
|
+
<th>
|
|
176
|
+
<nobr>应缴金额</nobr>
|
|
177
|
+
</th>
|
|
178
|
+
<th>
|
|
179
|
+
<nobr>已缴金额</nobr>
|
|
180
|
+
</th>
|
|
181
|
+
<th>
|
|
182
|
+
<nobr>未缴金额</nobr>
|
|
183
|
+
</th>
|
|
167
184
|
<th>
|
|
168
185
|
<nobr>报建日期</nobr>
|
|
169
186
|
</th>
|
|
@@ -204,6 +221,15 @@
|
|
|
204
221
|
<td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
|
|
205
222
|
<nobr>{{row.f_apply_type}}</nobr>
|
|
206
223
|
</td>
|
|
224
|
+
<td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
|
|
225
|
+
<nobr>{{row.f_total_cost}}</nobr>
|
|
226
|
+
</td>
|
|
227
|
+
<td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
|
|
228
|
+
<nobr>{{row.f_cumulative_money}}</nobr>
|
|
229
|
+
</td>
|
|
230
|
+
<td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
|
|
231
|
+
<nobr>{{row.f_unaccounts_money}}</nobr>
|
|
232
|
+
</td>
|
|
207
233
|
<td @click="$parent.$parent.$parent.check(row)" style="text-align: center;">
|
|
208
234
|
<nobr>{{row.f_apply_date}}</nobr>
|
|
209
235
|
</td>
|
|
@@ -212,6 +238,15 @@
|
|
|
212
238
|
</data-grid>
|
|
213
239
|
</criteria-paged>
|
|
214
240
|
</div>
|
|
241
|
+
<div class="flex" style="height: 10%;width: 100%;">
|
|
242
|
+
<div novalidate class="form-inline auto" partial>
|
|
243
|
+
<p class="bg-info text-center" style="padding: 8px;font-size: 20px">合计收费记录共
|
|
244
|
+
<span style="color: red">{{modeluse.rows.length}}</span>笔,
|
|
245
|
+
合计应缴总金额<span style="color: red">{{price.rows[0].f_total_cost}}</span>元,
|
|
246
|
+
已缴<span style="color: red">{{price.rows[0].f_cumulative_money}}</span>元,未缴<span style="color: red">{{price.rows[0].f_unaccounts_money}}</span>元
|
|
247
|
+
</p>
|
|
248
|
+
</div>
|
|
249
|
+
</div>
|
|
215
250
|
</div>
|
|
216
251
|
</template>
|
|
217
252
|
<script>
|
|
@@ -246,9 +281,18 @@
|
|
|
246
281
|
model: new PagedList('rs/sql/supervisory', 20, {
|
|
247
282
|
data: {
|
|
248
283
|
id: `${this.$login.f.name}`,
|
|
249
|
-
fengongsi: `${this.$login.f.f_fengongsi}
|
|
284
|
+
fengongsi: `${this.$login.f.f_fengongsi}`,
|
|
285
|
+
f_product_id :0
|
|
286
|
+
}
|
|
287
|
+
}),
|
|
288
|
+
modeluse: new PagedList('rs/sql/supervisory', 999999, {
|
|
289
|
+
data: {
|
|
290
|
+
id: `${this.$login.f.name}`,
|
|
291
|
+
fengongsi: `${this.$login.f.f_fengongsi}`,
|
|
292
|
+
f_product_id :0
|
|
250
293
|
}
|
|
251
294
|
}),
|
|
295
|
+
price: new PagedList('rs/sql/getChargeAllSum', 999999, {orderitem: '`f_total_cost`'}),
|
|
252
296
|
condition: '',
|
|
253
297
|
select: '',
|
|
254
298
|
alloptions:[]
|
|
@@ -257,10 +301,26 @@
|
|
|
257
301
|
ready() {
|
|
258
302
|
this.$refs.cp.$refs.cri.model.startDate = Util.toStandardDateString() + ' 00:00:00'
|
|
259
303
|
this.$refs.cp.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
|
|
260
|
-
this
|
|
304
|
+
this.search()
|
|
261
305
|
this.getConfig();
|
|
262
306
|
},
|
|
263
307
|
methods: {
|
|
308
|
+
search () {
|
|
309
|
+
let startDate = Util.toStandardDateString() + ' 00:00:00'
|
|
310
|
+
let endDate = Util.toStandardDateString() + ' 23:59:59'
|
|
311
|
+
this.$refs.cp.$refs.cri.search()
|
|
312
|
+
},
|
|
313
|
+
cleaner () {
|
|
314
|
+
Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
|
|
315
|
+
this.$refs.cp.$refs.cri.model[key] = ''
|
|
316
|
+
})
|
|
317
|
+
console.log('condition2:', this.$refs.cp.$refs.cri.condition)
|
|
318
|
+
let condition = this.$refs.cp.$refs.cri.condition
|
|
319
|
+
this.modeluse.search(condition)
|
|
320
|
+
let condition1 = condition
|
|
321
|
+
this.price.search(condition1)
|
|
322
|
+
this.$dispatch('close')
|
|
323
|
+
},
|
|
264
324
|
clear(){
|
|
265
325
|
Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
|
|
266
326
|
this.$refs.cp.$refs.cri.model[key] = []
|
|
@@ -336,12 +396,12 @@
|
|
|
336
396
|
}
|
|
337
397
|
</script>
|
|
338
398
|
<style>
|
|
339
|
-
label {
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
}
|
|
399
|
+
/*label {*/
|
|
400
|
+
/* display: flex;*/
|
|
401
|
+
/* justify-content:center;*/
|
|
402
|
+
/* align-items:Center;*/
|
|
403
|
+
/* padding-top: 8px;*/
|
|
404
|
+
/*}*/
|
|
345
405
|
tr.title {
|
|
346
406
|
background-color: #6666ff;
|
|
347
407
|
}
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="d1 flex">
|
|
3
|
+
<div class="left col-sm-12">
|
|
4
|
+
<criteria-paged :model="model" v-ref:cp>
|
|
5
|
+
<criteria partial='criteria' @condition-changed='search' v-ref:cri style="padding: 20px;background-color: #f6f6f6;">
|
|
6
|
+
<form novalidate class="" partial>
|
|
7
|
+
<div class="row">
|
|
8
|
+
<button type="button" class="btn btn-success" @click='$parent.$parent.showQuery=!$parent.$parent.showQuery'>
|
|
9
|
+
打印
|
|
10
|
+
</button>
|
|
11
|
+
<export-excel :data="$parent.$parent.getCondition"
|
|
12
|
+
:field="$parent.$parent.getfield"
|
|
13
|
+
sqlurl="rs/logic/saleExport" sql-name="checkuserReport" template-name='报装统计导出' :choose-col="true"></export-excel>
|
|
14
|
+
<button class="btn btn-primary btn-sm" type="button" @click="$parent.$parent.search(),$parent.$parent.showpager()" style="margin-left:10%">
|
|
15
|
+
<span class="glyphicon glyphicon-search"></span>查询
|
|
16
|
+
</button>
|
|
17
|
+
</div>
|
|
18
|
+
</form>
|
|
19
|
+
</criteria>
|
|
20
|
+
<data-grid :model="model" partial='list' v-ref:grid class="list_area" is-fixed='false'>
|
|
21
|
+
<template partial='head'>
|
|
22
|
+
<tr>
|
|
23
|
+
<th colspan="7"><h4>报装人员勘察 安装 通气 统计查询</h4></th>
|
|
24
|
+
</tr>
|
|
25
|
+
<tr>
|
|
26
|
+
<th colspan="1" rowspan="2">报装人员</th>
|
|
27
|
+
<th colspan="2">个人报建</th>
|
|
28
|
+
<th colspan="4">集体报建</th>
|
|
29
|
+
</tr>
|
|
30
|
+
<tr class="title">
|
|
31
|
+
<th>
|
|
32
|
+
<nobr>踏勘</nobr>
|
|
33
|
+
</th>
|
|
34
|
+
<th>
|
|
35
|
+
<nobr>安装</nobr>
|
|
36
|
+
</th>
|
|
37
|
+
<th>
|
|
38
|
+
<nobr>踏勘</nobr>
|
|
39
|
+
</th>
|
|
40
|
+
<th>
|
|
41
|
+
<nobr>安装</nobr>
|
|
42
|
+
</th>
|
|
43
|
+
<th>
|
|
44
|
+
<nobr>验收</nobr>
|
|
45
|
+
</th>
|
|
46
|
+
<th>
|
|
47
|
+
<nobr>通气</nobr>
|
|
48
|
+
</th>
|
|
49
|
+
</tr>
|
|
50
|
+
</template>
|
|
51
|
+
<template partial='body'>
|
|
52
|
+
<tr>
|
|
53
|
+
<td style="text-align: center;">
|
|
54
|
+
<nobr>{{row.username}}</nobr>
|
|
55
|
+
</td>
|
|
56
|
+
<td style="text-align: center;">
|
|
57
|
+
<nobr>{{row.gsurvey_name}}</nobr>
|
|
58
|
+
</td>
|
|
59
|
+
<td style="text-align: center;">
|
|
60
|
+
<nobr>{{row.gconstruction_unit}}</nobr>
|
|
61
|
+
</td>
|
|
62
|
+
<td style="text-align: center;">
|
|
63
|
+
<nobr>{{row.jsurvey_name}}</nobr>
|
|
64
|
+
</td>
|
|
65
|
+
<td style="text-align: center;">
|
|
66
|
+
<nobr>{{row.jconstruction_unit}}</nobr>
|
|
67
|
+
</td>
|
|
68
|
+
<td style="text-align: center;">
|
|
69
|
+
<nobr>{{row.checking_name}}</nobr>
|
|
70
|
+
</td>
|
|
71
|
+
<td style="text-align: center;">
|
|
72
|
+
<nobr>{{row.jgas_name}}</nobr>
|
|
73
|
+
</td>
|
|
74
|
+
</tr>
|
|
75
|
+
</template>
|
|
76
|
+
</data-grid>
|
|
77
|
+
</criteria-paged>
|
|
78
|
+
<div class="flex" style="height: 10%">
|
|
79
|
+
<div novalidate class="form-inline auto" partial>
|
|
80
|
+
<p class="bg-info text-center" style="padding: 8px;font-size: 20px">个体报建
|
|
81
|
+
勘踏合计:<span style="color: red">{{total.rows[0].sumgname}}</span>次,安装合计:<span style="color: red">{{total.rows[0].sumgunit}}</span>次,
|
|
82
|
+
集体报建 勘踏合计:<span style="color: red">{{total.rows[0].sumname}}</span>次,安装合计:<span style="color: red">{{total.rows[0].sumjunit}}</span>次,
|
|
83
|
+
验收合计:<span style="color: red">{{total.rows[0].sumgcname}}</span>次,
|
|
84
|
+
通气合计:<span style="color: red">{{total.rows[0].sunjname}}</span>次
|
|
85
|
+
</p>
|
|
86
|
+
</div>
|
|
87
|
+
</div>
|
|
88
|
+
</div>
|
|
89
|
+
<modal :show.sync="showQuery" v-ref:modal :large="true" :backdrop="false" title="打印预览">
|
|
90
|
+
<header slot="modal-header" class="modal-header">
|
|
91
|
+
<button type="button" class="close" @click="showQuery = !showQuery"><span>×</span></button>
|
|
92
|
+
<h4 class="modal-title">打印预览</h4>
|
|
93
|
+
</header>
|
|
94
|
+
<article slot="modal-body" class="modal-body clearfix">
|
|
95
|
+
<print-report-order :purchase-records="purchaseRecords" :report="model.rows" v-ref:print></print-report-order>
|
|
96
|
+
</article>
|
|
97
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
98
|
+
<button type="button" class="btn btn-primary" @click="print()">打印</button>
|
|
99
|
+
</footer>
|
|
100
|
+
</modal>
|
|
101
|
+
</div>
|
|
102
|
+
</template>
|
|
103
|
+
<script>
|
|
104
|
+
Date.prototype.Format = function (fmt) {
|
|
105
|
+
var o = {
|
|
106
|
+
"M+": this.getMonth() + 1, //月份
|
|
107
|
+
"d+": this.getDate(), //日
|
|
108
|
+
"H+": this.getHours(), //小时
|
|
109
|
+
"m+": this.getMinutes(), //分
|
|
110
|
+
"s+": this.getSeconds(), //秒
|
|
111
|
+
"q+": Math.floor((this.getMonth() + 3) / 3), //季度
|
|
112
|
+
"S": this.getMilliseconds() //毫秒
|
|
113
|
+
};
|
|
114
|
+
if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
|
|
115
|
+
for (var k in o)
|
|
116
|
+
if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
|
|
117
|
+
return fmt;
|
|
118
|
+
}
|
|
119
|
+
import {
|
|
120
|
+
PagedList
|
|
121
|
+
} from 'vue-client'
|
|
122
|
+
import * as Util from '../../Util'
|
|
123
|
+
|
|
124
|
+
export default {
|
|
125
|
+
title: '报建统计报表',
|
|
126
|
+
data() {
|
|
127
|
+
return {
|
|
128
|
+
usertype: this.$appdata.getParam('用户类型'),
|
|
129
|
+
showbtn: false,
|
|
130
|
+
model: new PagedList('rs/sql/checkuserReport', 20, {
|
|
131
|
+
data: {
|
|
132
|
+
id: this.$login.f.id,
|
|
133
|
+
fengongsi: this.$login.f.f_fengongsi,
|
|
134
|
+
}
|
|
135
|
+
}),
|
|
136
|
+
condition: '',
|
|
137
|
+
showQuery:false,
|
|
138
|
+
total: new PagedList('rs/sql/checkuserReportTotal', 999999, {orderitem: '`sumname`'}),
|
|
139
|
+
showstopinfoflag:false,
|
|
140
|
+
stopremarks:"",
|
|
141
|
+
getfield: {
|
|
142
|
+
'username': '报装人员',
|
|
143
|
+
'gsurvey_name': '个体报建踏勘次数',
|
|
144
|
+
'gconstruction_unit': '个体报建安装次数',
|
|
145
|
+
'jsurvey_name': '集体报建踏勘次数',
|
|
146
|
+
'jconstruction_unit': '集体报建安装次数',
|
|
147
|
+
'checking_name': '集体报建验收次数',
|
|
148
|
+
'jgas_name': '集体报建通气次数'
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
},
|
|
152
|
+
ready() {
|
|
153
|
+
this.$refs.cp.$refs.cri.model.startDate = Util.toStandardDateString() + ' 00:00:00'
|
|
154
|
+
this.$refs.cp.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
|
|
155
|
+
this.search()
|
|
156
|
+
|
|
157
|
+
},
|
|
158
|
+
methods: {
|
|
159
|
+
print () {
|
|
160
|
+
this.$refs.print.$refs.print.PrintTable()
|
|
161
|
+
},
|
|
162
|
+
stopinfoshow(index){
|
|
163
|
+
this.showstopinfoflag = true;
|
|
164
|
+
let remakrs = this.model.rows[index].f_stop_remarks;
|
|
165
|
+
console.log(JSON.stringify(remakrs))
|
|
166
|
+
console.log(remakrs)
|
|
167
|
+
|
|
168
|
+
this.stopremarks= remakrs;
|
|
169
|
+
},
|
|
170
|
+
clifun(row) {
|
|
171
|
+
this.$refs.cp.$refs.grid.model.rows = [row]
|
|
172
|
+
this.$refs.cp.pager = false
|
|
173
|
+
this.$dispatch('showbtn', row)
|
|
174
|
+
},
|
|
175
|
+
search () {
|
|
176
|
+
let condition = "1=1"
|
|
177
|
+
// debugger
|
|
178
|
+
// let condition = args.condition
|
|
179
|
+
debugger
|
|
180
|
+
this.model.search()
|
|
181
|
+
this.total.search()
|
|
182
|
+
},
|
|
183
|
+
showpager() {
|
|
184
|
+
this.$refs.cp.pager = true
|
|
185
|
+
this.$dispatch('hiddenbtn')
|
|
186
|
+
},
|
|
187
|
+
closestopinfo(){
|
|
188
|
+
this.showstopinfoflag = close;
|
|
189
|
+
}
|
|
190
|
+
},
|
|
191
|
+
computed: {
|
|
192
|
+
getCondition() {
|
|
193
|
+
return {condition: `1=1`}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
</script>
|
|
198
|
+
<style scoped>
|
|
199
|
+
label {
|
|
200
|
+
display: flex;
|
|
201
|
+
justify-content:center;
|
|
202
|
+
align-items:Center;
|
|
203
|
+
padding-top: 8px;
|
|
204
|
+
}
|
|
205
|
+
</style>
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<style id="style">
|
|
3
|
+
td{
|
|
4
|
+
height: 30px;
|
|
5
|
+
padding: 0px;
|
|
6
|
+
text-align: center;
|
|
7
|
+
}
|
|
8
|
+
.cen{
|
|
9
|
+
text-align: center;
|
|
10
|
+
}
|
|
11
|
+
table{
|
|
12
|
+
margin: auto;
|
|
13
|
+
width: 100%;
|
|
14
|
+
border-collapse:collapse;
|
|
15
|
+
border: 1px solid black;
|
|
16
|
+
}
|
|
17
|
+
h1,h2,h3,h4,h5,h6 {
|
|
18
|
+
text-align: center;
|
|
19
|
+
}
|
|
20
|
+
</style>
|
|
21
|
+
<div id="print">
|
|
22
|
+
<table border="1">
|
|
23
|
+
<tr>
|
|
24
|
+
<th colspan="7"><h4>报装人员勘察 安装 通气 统计查询</h4></th>
|
|
25
|
+
</tr>
|
|
26
|
+
<tr>
|
|
27
|
+
<th colspan="1" rowspan="2" class="cen">报装人员</th>
|
|
28
|
+
<th colspan="2" class="cen">个人报建</th>
|
|
29
|
+
<th colspan="4" class="cen">集体报建</th>
|
|
30
|
+
</tr>
|
|
31
|
+
<tr class="title">
|
|
32
|
+
<th class="cen">
|
|
33
|
+
<nobr>踏勘</nobr>
|
|
34
|
+
</th>
|
|
35
|
+
<th class="cen">
|
|
36
|
+
<nobr>安装</nobr>
|
|
37
|
+
</th>
|
|
38
|
+
<th class="cen">
|
|
39
|
+
<nobr>踏勘</nobr>
|
|
40
|
+
</th>
|
|
41
|
+
<th class="cen">
|
|
42
|
+
<nobr>安装</nobr>
|
|
43
|
+
</th>
|
|
44
|
+
<th class="cen">
|
|
45
|
+
<nobr>验收</nobr>
|
|
46
|
+
</th>
|
|
47
|
+
<th class="cen">
|
|
48
|
+
<nobr>通气</nobr>
|
|
49
|
+
</th>
|
|
50
|
+
</tr>
|
|
51
|
+
<tr v-for="item in report">
|
|
52
|
+
<td>{{item.username}}</td>
|
|
53
|
+
<td>{{ item.gsurvey_name }}</td>
|
|
54
|
+
<td>{{ item.gconstruction_unit }}</td>
|
|
55
|
+
<td>{{ item.jsurvey_name }}</td>
|
|
56
|
+
<td>{{ item.jconstruction_unit }}</td>
|
|
57
|
+
<td>{{ item.checking_name }}</td>
|
|
58
|
+
<td>{{ item.jgas_name }}</td>
|
|
59
|
+
</tr>
|
|
60
|
+
<tr v-for="item in supplement">
|
|
61
|
+
<td></td>
|
|
62
|
+
<td></td>
|
|
63
|
+
<td></td>
|
|
64
|
+
<td></td>
|
|
65
|
+
<td></td>
|
|
66
|
+
<td></td>
|
|
67
|
+
<td></td>
|
|
68
|
+
</tr>
|
|
69
|
+
</table>
|
|
70
|
+
</div>
|
|
71
|
+
|
|
72
|
+
<print-element v-show="false" v-ref:print id='print' styleid='style'
|
|
73
|
+
top='10' left='60' width='100%' height='100%'>
|
|
74
|
+
</print-element>
|
|
75
|
+
</template>
|
|
76
|
+
|
|
77
|
+
<script>
|
|
78
|
+
Date.prototype.Format = function (fmt) {
|
|
79
|
+
var o = {
|
|
80
|
+
"M+": this.getMonth() + 1, //月份
|
|
81
|
+
"d+": this.getDate(), //日
|
|
82
|
+
"H+": this.getHours(), //小时
|
|
83
|
+
"m+": this.getMinutes(), //分
|
|
84
|
+
"s+": this.getSeconds(), //秒
|
|
85
|
+
"q+": Math.floor((this.getMonth() + 3) / 3), //季度
|
|
86
|
+
"S": this.getMilliseconds() //毫秒
|
|
87
|
+
};
|
|
88
|
+
if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
|
|
89
|
+
for (var k in o)
|
|
90
|
+
if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
|
|
91
|
+
return fmt;
|
|
92
|
+
}
|
|
93
|
+
export default {
|
|
94
|
+
title: '打印统计单',
|
|
95
|
+
props: ['report'],
|
|
96
|
+
data () {
|
|
97
|
+
return {}
|
|
98
|
+
},
|
|
99
|
+
ready () {
|
|
100
|
+
},
|
|
101
|
+
methods: {
|
|
102
|
+
},
|
|
103
|
+
computed: {
|
|
104
|
+
supplement () {
|
|
105
|
+
if (this.material.length < 10) {
|
|
106
|
+
return 10 - this.material.length
|
|
107
|
+
}
|
|
108
|
+
return 0
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
</script>
|
|
113
|
+
|
|
114
|
+
<style scoped>
|
|
115
|
+
|
|
116
|
+
</style>
|