sale-client 3.6.384 → 3.6.385-2
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/revenue/comprehen/Maintenance/revenue/MeterOperatemain.vue +16 -7
- package/src/filiale/gehua/MeterHistory.vue +74 -0
- package/src/filiale/gehua/WebMeterInfo.vue +80 -0
- package/src/filiale/gehua/WebMeterList.vue +440 -0
- package/src/filiale/gehua/sale.js +3 -0
- package/src/filiale/qingtongxia/MeterOperatemain.vue +16 -8
- package/src/filiale/rongchuang/LimitGas.vue +3 -3
- package/src/main.js +1 -1
package/package.json
CHANGED
|
@@ -46,9 +46,9 @@
|
|
|
46
46
|
close-on-select>
|
|
47
47
|
</v-select>
|
|
48
48
|
</div>
|
|
49
|
-
<div class="col-sm-4 form-group">
|
|
49
|
+
<div class="col-sm-4 form-group" title="修正需权限:【收费记录维护金额权限】">
|
|
50
50
|
<label class="font_normal_body">收款金额</label>
|
|
51
|
-
<input type="text" v-model="model.f_collection" disabled=
|
|
51
|
+
<input type="text" v-model="model.f_collection" :disabled="!editcollection" style="width: 60%" class="input_search">
|
|
52
52
|
</div>
|
|
53
53
|
<!--<div class="col-sm-4 form-group">-->
|
|
54
54
|
<!--<label class="font_normal_body">收据类型</label>-->
|
|
@@ -97,20 +97,21 @@
|
|
|
97
97
|
:show-reset-button="true">
|
|
98
98
|
</datepicker>
|
|
99
99
|
</div>
|
|
100
|
-
<div class="col-sm-4 form-group">
|
|
100
|
+
<div class="col-sm-4 form-group" title="修正需权限:【收费记录维护金额权限】">
|
|
101
101
|
<label class="font_normal_body">购气气量</label>
|
|
102
|
-
<input type="text" v-model="model.f_pregas" disabled=
|
|
102
|
+
<input type="text" v-model="model.f_pregas" :disabled="!editcollection" style="width: 60%" class="input_search">
|
|
103
103
|
</div>
|
|
104
|
-
<div class="col-sm-4 form-group">
|
|
104
|
+
<div class="col-sm-4 form-group" title="修正需权限:【收费记录维护金额权限】">
|
|
105
105
|
<label class="font_normal_body">购气金额</label>
|
|
106
|
-
<input type="text" v-model="model.f_preamount" disabled=
|
|
106
|
+
<input type="text" v-model="model.f_preamount" :disabled="!editcollection" style="width: 60%" class="input_search">
|
|
107
107
|
</div>
|
|
108
108
|
</div>
|
|
109
109
|
<div class="row">
|
|
110
|
-
<div class="col-sm-4 form-group">
|
|
110
|
+
<div class="col-sm-4 form-group" title="修正需权限:【收费记录维护操作员权限】">
|
|
111
111
|
<label class="font_normal_body" title="参数:操作人员">操作人员</label>
|
|
112
112
|
<v-select :value.sync="model.f_operatorid"
|
|
113
113
|
v-model="model.f_operatorid"
|
|
114
|
+
:disabled="!editoperator"
|
|
114
115
|
:value-single="true" @change="selectoperator()"
|
|
115
116
|
:options='foperator'
|
|
116
117
|
close-on-select></v-select>
|
|
@@ -200,6 +201,8 @@ var data
|
|
|
200
201
|
equipmentType: this.$appdata.getParam('打印格式') ? [{label: '', value: ''}, ...this.$appdata.getParam('打印格式')] : [],
|
|
201
202
|
// 构建数组来存储对象
|
|
202
203
|
editbank: true,
|
|
204
|
+
editcollection: false,
|
|
205
|
+
editoperator: false,
|
|
203
206
|
uploadText: '收费',
|
|
204
207
|
showfiles: false,
|
|
205
208
|
recordList: [],
|
|
@@ -240,6 +243,12 @@ var data
|
|
|
240
243
|
if (this.$login.r.includes('维护银行转账信息')) {
|
|
241
244
|
this.editbank = true
|
|
242
245
|
}
|
|
246
|
+
if (this.$login.r.includes('收费记录维护金额权限')) {
|
|
247
|
+
this.editcollection = true
|
|
248
|
+
}
|
|
249
|
+
if (this.$login.r.includes('收费记录维护操作员权限')) {
|
|
250
|
+
this.editoperator = true
|
|
251
|
+
}
|
|
243
252
|
if (this.$login.r.includes('收费记录状态修改')) {
|
|
244
253
|
this.editstate = false
|
|
245
254
|
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="auto" style="height: 500px">
|
|
3
|
+
<data-grid :model="model" class="list_area table_sy" partial='list' v-ref:grid >
|
|
4
|
+
<template partial='head'>
|
|
5
|
+
<tr>
|
|
6
|
+
<th><nobr>操作类型</nobr></th>
|
|
7
|
+
<th><nobr>操作描述</nobr></th>
|
|
8
|
+
<th><nobr>操作备注</nobr></th>
|
|
9
|
+
<th><nobr>公司</nobr></th>
|
|
10
|
+
<th><nobr>部门</nobr></th>
|
|
11
|
+
<th><nobr>操作人</nobr></th>
|
|
12
|
+
<th><nobr>操作日期</nobr></th>
|
|
13
|
+
</tr>
|
|
14
|
+
</template>
|
|
15
|
+
<template partial='body'>
|
|
16
|
+
<tr>
|
|
17
|
+
<td style="text-align:center">{{row.f_type}}</td>
|
|
18
|
+
<td style="text-align:center">{{row.f_describe}}</td>
|
|
19
|
+
<td style="text-align:center">{{row.f_comments}}</td>
|
|
20
|
+
<td style="text-align:center">{{row.f_orgname}}</td>
|
|
21
|
+
<td style="text-align:center">{{row.f_depname}}</td>
|
|
22
|
+
<td style="text-align:center">{{row.f_operator}}</td>
|
|
23
|
+
<td style="text-align:center">{{row.f_operate_date}}</td>
|
|
24
|
+
</tr>
|
|
25
|
+
</template>
|
|
26
|
+
<template partial='foot'></template>
|
|
27
|
+
</data-grid>
|
|
28
|
+
</div>
|
|
29
|
+
</template>
|
|
30
|
+
<script>
|
|
31
|
+
export default {
|
|
32
|
+
title: '详细信息',
|
|
33
|
+
data () {
|
|
34
|
+
return {
|
|
35
|
+
model: {
|
|
36
|
+
rows: []
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
props: ['row', 'id'],
|
|
42
|
+
ready () {
|
|
43
|
+
this.search()
|
|
44
|
+
},
|
|
45
|
+
methods: {
|
|
46
|
+
async search () {
|
|
47
|
+
// 获取这个气价的所有记录
|
|
48
|
+
console.log('气价记录', this.row)
|
|
49
|
+
|
|
50
|
+
let data = {
|
|
51
|
+
tablename: `t_meterinfo_operationlog`,
|
|
52
|
+
items: '*',
|
|
53
|
+
condition: '1=1',
|
|
54
|
+
orderitem: 'id'
|
|
55
|
+
|
|
56
|
+
}
|
|
57
|
+
if (this.id) {
|
|
58
|
+
data.condition = `f_meterinfo_id = '${this.id}'`
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
let res = await this.$resetpost('rs/sql/singleTable_OrderBy', {data: data}, {rejectMsg: '获取气价记录出错', resolveMsg: null})
|
|
62
|
+
|
|
63
|
+
this.model.rows = res.data
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
watch: {
|
|
67
|
+
'row' () {
|
|
68
|
+
this.search()
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
}
|
|
74
|
+
</script>
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div id="unit" class="flex-row">
|
|
3
|
+
<div :class="{'basic-main': !iseditmetetinfo,'binary-left': iseditmetetinfo}" :style="{width:iseditmetetinfo ? '50%' : '100%'}">
|
|
4
|
+
<web-meter-list style="width:auto;" :styles="iseditmetetinfo?'form-group col-sm-3':'form-group col-sm-2'" :showfields="iseditmetetinfo?false:true" v-ref:list @dblclick="showeditinfo"></web-meter-list>
|
|
5
|
+
</div>
|
|
6
|
+
<div class="binary-right" style="width:50%" v-if="iseditmetetinfo" >
|
|
7
|
+
<edit-meter-info :oldmeter="row" v-if="ismeterinfo" :f_filialeid="f_filialeid" @close="closeedit" style="overflow-y: auto;"></edit-meter-info>
|
|
8
|
+
|
|
9
|
+
<use-web-meter :meterinfos="meterinfos" v-if="isUseMeter" @close="closeedit" style="overflow-y: auto;"></use-web-meter>
|
|
10
|
+
<!--<ul class="nav nav-tabs">-->
|
|
11
|
+
<!--<li class="active"><a>操作历史</a></li>-->
|
|
12
|
+
<!--</ul>-->
|
|
13
|
+
<!--<meter-history :id="row.id" @close="closeedit" style="height:30%"></meter-history>-->
|
|
14
|
+
</div>
|
|
15
|
+
</div>
|
|
16
|
+
</template>
|
|
17
|
+
<script>
|
|
18
|
+
import { PagedList } from 'vue-client'
|
|
19
|
+
import * as WebmeterUtil from '../../components/WebmeterUtil'
|
|
20
|
+
import * as webMeterList from './WebMeterList'
|
|
21
|
+
import * as meterHistory from './MeterHistory'
|
|
22
|
+
import Vue from 'vue'
|
|
23
|
+
|
|
24
|
+
export default {
|
|
25
|
+
components: {webMeterList, meterHistory},
|
|
26
|
+
title: '表计信息',
|
|
27
|
+
data () {
|
|
28
|
+
return {
|
|
29
|
+
model: new PagedList('rs/sql/singleTable_OrderBy', 20, {items: '"*"', tablename: '"t_meterinfo"', orderitem: '"id"'}),
|
|
30
|
+
f_filialeid: '',
|
|
31
|
+
iseditmetetinfo: false,
|
|
32
|
+
row: {},
|
|
33
|
+
criteriaShow: false,
|
|
34
|
+
show: false,
|
|
35
|
+
isUseMeter: false,
|
|
36
|
+
meterinfos: [],
|
|
37
|
+
ismeterinfo: false
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
ready () {
|
|
41
|
+
|
|
42
|
+
},
|
|
43
|
+
methods: {
|
|
44
|
+
showeditinfo (obj) {
|
|
45
|
+
console.log('====================obj')
|
|
46
|
+
if (obj) {
|
|
47
|
+
this.row = obj
|
|
48
|
+
this.iseditmetetinfo = true
|
|
49
|
+
this.ismeterinfo = true
|
|
50
|
+
this.isUseMeter = false
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
hidden () {
|
|
54
|
+
this.criteriaShow = !this.criteriaShow
|
|
55
|
+
},
|
|
56
|
+
clearmsg () {
|
|
57
|
+
this.$refs.paged.$refs.criteria.model = {}
|
|
58
|
+
},
|
|
59
|
+
closeedit () {
|
|
60
|
+
this.iseditmetetinfo = false
|
|
61
|
+
this.isUseMeter = false
|
|
62
|
+
this.ismeterinfo = false
|
|
63
|
+
this.$refs.list.search()
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
</script>
|
|
68
|
+
<style>
|
|
69
|
+
.form-input-group label {
|
|
70
|
+
text-align: right;
|
|
71
|
+
width: auto;
|
|
72
|
+
}
|
|
73
|
+
.datapanel {
|
|
74
|
+
color: #333;
|
|
75
|
+
background-color: white;
|
|
76
|
+
box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px ;
|
|
77
|
+
padding: 10px 30px 10px 30px;
|
|
78
|
+
border-radius:15px;
|
|
79
|
+
}
|
|
80
|
+
</style>
|
|
@@ -0,0 +1,440 @@
|
|
|
1
|
+
<template style="position: absolute;">
|
|
2
|
+
<div id="WebMeterList">
|
|
3
|
+
<criteria-paged :model="model" v-ref:paged>
|
|
4
|
+
<criteria partial='criteria' v-ref:criteria @condition-changed='$parent.selfSearch'>
|
|
5
|
+
<div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
|
|
6
|
+
<div class="row" width="100%">
|
|
7
|
+
<div :class="$parent.$parent.styles" >
|
|
8
|
+
<label class=" font_normal_body" > 表钢号</label>
|
|
9
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_meternumber"
|
|
10
|
+
condition="f_meternumber='{}'" placeholder="表钢号" >
|
|
11
|
+
</div>
|
|
12
|
+
<div class="row">
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
<div style="float:right">
|
|
16
|
+
<button class="button_search" @click="search()" v-el:cba>查询</button>
|
|
17
|
+
<button class="button_search" @click="$parent.$parent.addmeter()">新增</button>
|
|
18
|
+
<button class="button_search" @click="$parent.$parent.useMeter()">领用</button>
|
|
19
|
+
<button class="button_export" @click="$parent.$parent.importFile">导入</button>
|
|
20
|
+
<export-excel :data="$parent.$parent.getCondition" :field="$parent.$parent.getfield" :choose-col="true" v-ref:excel attach="webmeterlist"
|
|
21
|
+
sqlurl="rs/logic/saleExport" sql-name="webMeterInfo" template-name='表计信息导出'>
|
|
22
|
+
</export-excel>
|
|
23
|
+
<button class="button_search" style="width: 90px" @click="$parent.$parent.downloadFiles()">模板下载</button>
|
|
24
|
+
<button class="button_search" @click="$parent.$parent.clearmsg">清空</button>
|
|
25
|
+
<div style="float: right" class="button_spacing" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}" @click="$parent.$parent.hidden()"></div>
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
<div class="row" v-show="$parent.$parent.criteriaShow">
|
|
29
|
+
<div :class="$parent.$parent.styles" >
|
|
30
|
+
<label class=" font_normal_body" >表计电话</label>
|
|
31
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_meter_phone"
|
|
32
|
+
condition="f_meter_phone='{}'" placeholder="表计电话">
|
|
33
|
+
</div>
|
|
34
|
+
<div :class="$parent.$parent.styles" >
|
|
35
|
+
<label class=" font_normal_body" > IMEI码</label>
|
|
36
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_imei"
|
|
37
|
+
condition="f_imei='{}'" placeholder="IMEI码">
|
|
38
|
+
</div>
|
|
39
|
+
<res-select-group :show-component="['company']" :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
|
|
40
|
+
<!--<div :class="$parent.$parent.styles">-->
|
|
41
|
+
<!--<label class="font_normal_body">组织机构</label>-->
|
|
42
|
+
<!--<res-select restype='organization'-->
|
|
43
|
+
<!--:is-mul="false"-->
|
|
44
|
+
<!--:initresid="$parent.$parent.curorgid"-->
|
|
45
|
+
<!--@res-select="$parent.$parent.getorgCur">-->
|
|
46
|
+
<!--</res-select>-->
|
|
47
|
+
<!--</div>-->
|
|
48
|
+
<div :class="$parent.$parent.styles" >
|
|
49
|
+
<label class="font_normal_body">气表品牌</label>
|
|
50
|
+
<v-select
|
|
51
|
+
placeholder='气表品牌'
|
|
52
|
+
:value.sync="model.f_meter_brand"
|
|
53
|
+
style="width:60%"
|
|
54
|
+
v-model="model.f_meter_brand"
|
|
55
|
+
:options='$parent.$parent.meterbrand'
|
|
56
|
+
close-on-select
|
|
57
|
+
condition="f_meter_brand='{}'">
|
|
58
|
+
</v-select>
|
|
59
|
+
</div>
|
|
60
|
+
<div :class="$parent.$parent.styles" >
|
|
61
|
+
<label class="font_normal_body">安装状态</label>
|
|
62
|
+
<v-select
|
|
63
|
+
placeholder='安装状态'
|
|
64
|
+
:value.sync="model.aa"
|
|
65
|
+
style="width:60%"
|
|
66
|
+
v-model="model.aa"
|
|
67
|
+
:options='$parent.$parent.azstate'
|
|
68
|
+
close-on-select
|
|
69
|
+
condition="aa='{}'">
|
|
70
|
+
</v-select>
|
|
71
|
+
</div>
|
|
72
|
+
<div :class="$parent.$parent.styles" >
|
|
73
|
+
<label class=" font_normal_body" > 批次 </label>
|
|
74
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_batch_number"
|
|
75
|
+
condition="f_batch_number like '%{}%'" placeholder="批次">
|
|
76
|
+
</div>
|
|
77
|
+
<div :class="$parent.$parent.styles" >
|
|
78
|
+
<label class="font_normal_body">是否领用</label>
|
|
79
|
+
<v-select
|
|
80
|
+
placeholder='是否领用'
|
|
81
|
+
:value.sync="model.f_is_receive"
|
|
82
|
+
style="width:60%"
|
|
83
|
+
v-model="model.f_is_receive"
|
|
84
|
+
:options='$parent.$parent.isreceived'
|
|
85
|
+
close-on-select
|
|
86
|
+
condition="f_is_receive='{}'">
|
|
87
|
+
</v-select>
|
|
88
|
+
</div>
|
|
89
|
+
<div :class="$parent.$parent.styles" >
|
|
90
|
+
<label class=" font_normal_body" > 领用人</label>
|
|
91
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_receive_unit"
|
|
92
|
+
condition="f_receive_unit like '%{}%'" placeholder="领用人">
|
|
93
|
+
</div>
|
|
94
|
+
<div :class="$parent.$parent.styles" >
|
|
95
|
+
<label class=" font_normal_body" >领用电话</label>
|
|
96
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_receive_phone"
|
|
97
|
+
condition="f_receive_phone like '%{}%'" placeholder="领用电话">
|
|
98
|
+
</div>
|
|
99
|
+
<div :class="$parent.$parent.styles">
|
|
100
|
+
<label class="font_normal_body">领用日期</label>
|
|
101
|
+
<datepicker id="startDate" placeholder=""
|
|
102
|
+
v-model="model.f_start_date"
|
|
103
|
+
:value.sync="model.f_start_date"
|
|
104
|
+
:disabled-days-of-Week="[]"
|
|
105
|
+
style="width: 60%"
|
|
106
|
+
:format="'yyyy-MM-dd 00:00:00'"
|
|
107
|
+
condition="f_receive_date >= '{}'">
|
|
108
|
+
</datepicker>
|
|
109
|
+
</div>
|
|
110
|
+
<div :class="$parent.$parent.styles">
|
|
111
|
+
<label class="font_normal_body">  至 </label>
|
|
112
|
+
<datepicker id="endDate" placeholder=""
|
|
113
|
+
v-model="model.f_end_date"
|
|
114
|
+
:value.sync="model.f_end_date"
|
|
115
|
+
style="width: 60%"
|
|
116
|
+
:disabled-days-of-Week="[]"
|
|
117
|
+
:format="'yyyy-MM-dd 23:59:59'"
|
|
118
|
+
condition="f_receive_date <= '{}'">
|
|
119
|
+
</datepicker>
|
|
120
|
+
</div>
|
|
121
|
+
|
|
122
|
+
</div>
|
|
123
|
+
</div>
|
|
124
|
+
</div>
|
|
125
|
+
</criteria>
|
|
126
|
+
<data-grid id="webmeterinfo" :model="model" class="list_area table_sy" partial='list' v-ref:grid>
|
|
127
|
+
<template partial='head'>
|
|
128
|
+
<tr>
|
|
129
|
+
<th>
|
|
130
|
+
<input type="checkbox" @click="$parent.$parent.$parent.addOrRemove()">
|
|
131
|
+
</th>
|
|
132
|
+
<th><nobr>序号</nobr></th>
|
|
133
|
+
<th><nobr>表号</nobr></th>
|
|
134
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>imei码</nobr></th>
|
|
135
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>imsi码</nobr></th>
|
|
136
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>批次</nobr></th>
|
|
137
|
+
<!-- <th><nobr>设备号</nobr></th>-->
|
|
138
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>表计电话</nobr></th>
|
|
139
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>表通道类型</nobr></th>
|
|
140
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>阀控标识</nobr></th>
|
|
141
|
+
<!-- <th><nobr>表通讯序号</nobr></th>-->
|
|
142
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>设备地址</nobr></th>
|
|
143
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>终端名称</nobr></th>
|
|
144
|
+
<!-- <th><nobr>厂商代码</nobr></th>-->
|
|
145
|
+
<th><nobr>状态</nobr></th>
|
|
146
|
+
<th><nobr>气表品牌</nobr></th>
|
|
147
|
+
|
|
148
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>设备号</nobr></th>
|
|
149
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>气表年限</nobr></th>
|
|
150
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>生产日期</nobr></th>
|
|
151
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>批次号</nobr></th>
|
|
152
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>气表厂家</nobr></th>
|
|
153
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>采购人</nobr></th>
|
|
154
|
+
<th v-if="$parent.$parent.$parent.showfields"><nobr>采购时间</nobr></th>
|
|
155
|
+
<th><nobr>是否领用</nobr></th>
|
|
156
|
+
<th><nobr>领用人</nobr></th>
|
|
157
|
+
<th><nobr>领用时间</nobr></th>
|
|
158
|
+
<th><nobr>领用电话</nobr></th>
|
|
159
|
+
</tr>
|
|
160
|
+
</template>
|
|
161
|
+
<template partial='body' >
|
|
162
|
+
<td style="text-align:center">
|
|
163
|
+
<input type="checkbox" v-model="$parent.$parent.$parent.$parent.meterinfos" :disabled="row.f_receive==='已领用'" :value="row" @click="$parent.$parent.$parent.checkboxMeter()" >
|
|
164
|
+
</td>
|
|
165
|
+
<td style="text-align: center;" >{{$index+1}}</td>
|
|
166
|
+
<td style="text-align: center" >{{row.f_meternumber}}</td>
|
|
167
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_imei}}</td>
|
|
168
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_imsi}}</td>
|
|
169
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_batch_number}}</td>
|
|
170
|
+
<!-- <td style="text-align: center" >{{row.f_device_id}}</td>-->
|
|
171
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_meter_phone}}</td>
|
|
172
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_iot_type}}</td>
|
|
173
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_valvemark}}</td>
|
|
174
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_device_address}}</td>
|
|
175
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_terminal_id}}</td>
|
|
176
|
+
<!-- <td style="text-align: center" >{{row.f_vender}}</td>-->
|
|
177
|
+
|
|
178
|
+
<td style="text-align: center" >{{row.aa}}</td>
|
|
179
|
+
<td style="text-align: center" >{{row.f_meter_brand}}</td>
|
|
180
|
+
|
|
181
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_device_id}}</td>
|
|
182
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_years}}</td>
|
|
183
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_manufacture_date}}</td>
|
|
184
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_batch_number}}</td>
|
|
185
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_manufacturers}}</td>
|
|
186
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_purchaser}}</td>
|
|
187
|
+
<td style="text-align: center" v-if="$parent.$parent.$parent.showfields">{{row.f_purchase_date}}</td>
|
|
188
|
+
<td style="text-align: center" >{{row.f_receive}}</td>
|
|
189
|
+
<td style="text-align: center" >{{row.f_receive_unit}}</td>
|
|
190
|
+
<td style="text-align: center" >{{row.f_receive_date}}</td>
|
|
191
|
+
<td style="text-align: center" >{{row.f_receive_date}}</td>
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
</template>
|
|
195
|
+
</data-grid>
|
|
196
|
+
</criteria-paged>
|
|
197
|
+
</div>
|
|
198
|
+
<modal :show.sync="show" width="500px" title="文件导入" v-ref:modal large backdrop="false">
|
|
199
|
+
<article slot="modal-body" class="modal-body">
|
|
200
|
+
<file-upload class="my-file-uploader " name="UploadFile" class="btn btn-success" style="border-radius: 2px;"
|
|
201
|
+
action="rs/file/uploadFile" tagname="导入表计" v-ref:file :headers="headers" multiple></file-upload>
|
|
202
|
+
</article>
|
|
203
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
204
|
+
</footer>
|
|
205
|
+
</modal>
|
|
206
|
+
</template>
|
|
207
|
+
<script>
|
|
208
|
+
import { PagedList } from 'vue-client'
|
|
209
|
+
import * as WebmeterUtil from '../../components/WebmeterUtil'
|
|
210
|
+
import Vue from 'vue'
|
|
211
|
+
|
|
212
|
+
let readyGen = async function (self) {
|
|
213
|
+
await self.$LoadParams.loadParam()
|
|
214
|
+
self.initQueryParam()
|
|
215
|
+
// self.reflash()
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
export default {
|
|
219
|
+
title: '表计管理',
|
|
220
|
+
props:['showfields','styles'],
|
|
221
|
+
data () {
|
|
222
|
+
return {
|
|
223
|
+
getCondition: null,
|
|
224
|
+
getfield: null,
|
|
225
|
+
meterbrand: [],
|
|
226
|
+
azstate: [{label: '全部', value: ''}, {label: '已安装', value: '已安装'}, {label: '未安装', value: '未安装'}],
|
|
227
|
+
isreceived:[{label: '全部', value: ''}, {label: '已领用', value: '是'}, {label: '未领用', value: '否'}],
|
|
228
|
+
// curorgid: [this.$login.f.orgid],
|
|
229
|
+
orgCondtionStr: '',
|
|
230
|
+
// 公司下拉
|
|
231
|
+
initres: {
|
|
232
|
+
org: [],
|
|
233
|
+
dep: [],
|
|
234
|
+
user: []
|
|
235
|
+
},
|
|
236
|
+
model: new PagedList('rs/sql/webMeterInfo', 20, {items: '"*"', tablename: '"t_meterinfo"', orderitem: '"id"'}),
|
|
237
|
+
headers: {'username': Vue.$login.f.name, 'blodid': WebmeterUtil.guid()},
|
|
238
|
+
criteriaShow: false,
|
|
239
|
+
f_orgid: '',
|
|
240
|
+
show: false,
|
|
241
|
+
meterinfos: [],
|
|
242
|
+
isAddOrMove: false
|
|
243
|
+
}
|
|
244
|
+
},
|
|
245
|
+
ready () {
|
|
246
|
+
this.loadGetField()
|
|
247
|
+
this.search()
|
|
248
|
+
readyGen(this)
|
|
249
|
+
this.$parent.meterinfos = []
|
|
250
|
+
console.log('this', this)
|
|
251
|
+
this.$refs.paged.$refs.criteria.model.f_table_state = ['正常']
|
|
252
|
+
this.$refs.paged.$refs.criteria.search()
|
|
253
|
+
},
|
|
254
|
+
|
|
255
|
+
methods: {
|
|
256
|
+
async getRes (condition, obj) {
|
|
257
|
+
this.orgCondtionStr = condition
|
|
258
|
+
},
|
|
259
|
+
loadGetField () {
|
|
260
|
+
this.getfield = {
|
|
261
|
+
'f_meternumber': '表号',
|
|
262
|
+
'f_imei': 'imei码',
|
|
263
|
+
'f_imsi': 'imsi码',
|
|
264
|
+
'f_meter_phone': '表计电话',
|
|
265
|
+
'f_iot_type': '表通道类型',
|
|
266
|
+
'f_valvemark': '阀控标识',
|
|
267
|
+
'f_device_address': '设备地址',
|
|
268
|
+
'f_terminal_id': '终端名称',
|
|
269
|
+
'aa': '状态',
|
|
270
|
+
'f_meter_brand': '气表品牌',
|
|
271
|
+
'f_device_id': '设备号',
|
|
272
|
+
'f_years': '气表年限',
|
|
273
|
+
'f_manufacture_date': '生产日期',
|
|
274
|
+
'f_batch_number': '批次号',
|
|
275
|
+
'f_manufacturers': '气表厂家',
|
|
276
|
+
'f_purchaser': '采购人',
|
|
277
|
+
'f_purchase_date': '采购时间',
|
|
278
|
+
'f_receive': '是否领用',
|
|
279
|
+
'f_receive_unit': '领用人',
|
|
280
|
+
'f_receive_date': '领用时间',
|
|
281
|
+
}
|
|
282
|
+
},
|
|
283
|
+
downloadFiles(){
|
|
284
|
+
let downurl='rs/downloadfile/file?filename=表计导入模板';
|
|
285
|
+
this.$downFile(downurl,'表计导入模板.xlsx')
|
|
286
|
+
},
|
|
287
|
+
addOrRemove () {
|
|
288
|
+
this.$parent.meterinfos = []
|
|
289
|
+
if (this.isAddOrMove) {
|
|
290
|
+
this.$parent.meterinfos = []
|
|
291
|
+
} else {
|
|
292
|
+
this.model.rows.forEach((row) => {
|
|
293
|
+
if (row.f_receive !== '已领用') {
|
|
294
|
+
this.$parent.meterinfos.push(row)
|
|
295
|
+
}
|
|
296
|
+
})
|
|
297
|
+
}
|
|
298
|
+
this.isAddOrMove = !this.isAddOrMove
|
|
299
|
+
},
|
|
300
|
+
useMeter () {
|
|
301
|
+
console.log("meterinfos",this.$parent.meterinfos)
|
|
302
|
+
this.$parent.iseditmetetinfo = true
|
|
303
|
+
this.$parent.isUseMeter = true
|
|
304
|
+
this.$parent.ismeterinfo = false
|
|
305
|
+
console.log("1",this.$parent.iseditmetetinfo)
|
|
306
|
+
console.log("2",this.$parent.ismeterinfo)
|
|
307
|
+
console.log("3",this.$parent.isUseMeter)
|
|
308
|
+
},
|
|
309
|
+
checkboxMeter () {
|
|
310
|
+
console.log("这是当前页的meterinfos",this.meterinfos)
|
|
311
|
+
console.log("这是当前页的meterinfos",this.$parent.meterinfos)
|
|
312
|
+
},
|
|
313
|
+
initQueryParam () {
|
|
314
|
+
let arr = []
|
|
315
|
+
this.$GetSaleParam.getGasbrand().forEach((item) => {
|
|
316
|
+
let temp = {}
|
|
317
|
+
// if(item.value.f_meter_type==='物联网表'){
|
|
318
|
+
temp.label = item.label
|
|
319
|
+
temp.value = item.value.f_meter_brand
|
|
320
|
+
arr.push(temp)
|
|
321
|
+
// }
|
|
322
|
+
})
|
|
323
|
+
this.meterbrand = [{label: '全部', value: ''}, ...arr]
|
|
324
|
+
},
|
|
325
|
+
hidden () {
|
|
326
|
+
this.criteriaShow = !this.criteriaShow
|
|
327
|
+
},
|
|
328
|
+
addmeter () {
|
|
329
|
+
this.$parent.row = {}
|
|
330
|
+
this.$parent.iseditmetetinfo = true
|
|
331
|
+
this.$parent.ismeterinfo = true
|
|
332
|
+
this.$parent.isUseMeter = false
|
|
333
|
+
this.$parent.f_filialeids = this.f_filialeids
|
|
334
|
+
},
|
|
335
|
+
clearmsg () {
|
|
336
|
+
this.$refs.paged.$refs.criteria.model = {}
|
|
337
|
+
},
|
|
338
|
+
search () {
|
|
339
|
+
this.$refs.paged.$refs.criteria.search()
|
|
340
|
+
},
|
|
341
|
+
selfSearch (args) {
|
|
342
|
+
this.$parent.meterinfos = []
|
|
343
|
+
if (!this.f_orgid) {
|
|
344
|
+
this.f_orgid = this.$login.f.orgid
|
|
345
|
+
}
|
|
346
|
+
let f_orgstr = this.orgCondtionStr ? this.orgCondtionStr : "and f_filialeid in ('" + this.f_orgid + "')"
|
|
347
|
+
args.condition = `${args.condition} ` + f_orgstr
|
|
348
|
+
// if (this.f_orgid) {
|
|
349
|
+
// args.condition = `${args.condition} and f_filialeid in ${this.f_orgid}`
|
|
350
|
+
// }
|
|
351
|
+
this.getCondition = {condition: args.condition}
|
|
352
|
+
this.model.search(args.condition, args.model)
|
|
353
|
+
},
|
|
354
|
+
|
|
355
|
+
getorgCur (val) {
|
|
356
|
+
console.log('组织事件返回。。', val[0])
|
|
357
|
+
this.f_orgid = this.$login.convertToIn(val)
|
|
358
|
+
this.f_filialeids = val[0]
|
|
359
|
+
this.$parent.f_filialeid = val[0]
|
|
360
|
+
this.search()
|
|
361
|
+
},
|
|
362
|
+
importFile () {
|
|
363
|
+
this.show = true
|
|
364
|
+
}
|
|
365
|
+
|
|
366
|
+
},
|
|
367
|
+
events: {
|
|
368
|
+
onFileUpload: function (file, res) {
|
|
369
|
+
console.log(this.$login.f, '======')
|
|
370
|
+
console.log(res)
|
|
371
|
+
|
|
372
|
+
let data = {
|
|
373
|
+
tablename: 't_meterinfo',
|
|
374
|
+
filepath: res.f_downloadpath,
|
|
375
|
+
info: {
|
|
376
|
+
f_orgid: this.$login.f.orgid ? this.$login.f.orgid : '',
|
|
377
|
+
f_orgname: this.$login.f.orgs ? this.$login.f.orgs : '',
|
|
378
|
+
f_depid: this.$login.f.depids ? this.$login.f.depids : '',
|
|
379
|
+
f_depname: this.$login.f.deps ? this.$login.f.deps : '',
|
|
380
|
+
f_operator: this.$login.f.name,
|
|
381
|
+
f_operatorid: this.$login.f.id,
|
|
382
|
+
f_filialeid: this.f_orgid === '' ? this.$login.f.orgid : this.f_orgid.replace(/[^0-9]/ig, '')
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
console.log(data, '++++++++++++++++++++++++++')
|
|
387
|
+
this.$resetpost('rs/logic/iot_meterinfo_import', {data: data}, {resolveMsg: null, rejectMsg: '上传失败'}).then((res) => {
|
|
388
|
+
let mes = '成功导入' + res.data.successnum + '条数据 '
|
|
389
|
+
let failedCount = res.data.allnum - res.data.successnum
|
|
390
|
+
|
|
391
|
+
if (failedCount > 0) {
|
|
392
|
+
mes += ',有 ' + failedCount + ' 条数据导入失败'
|
|
393
|
+
|
|
394
|
+
if (res.data.duplicate && res.data.duplicate.length > 0) {
|
|
395
|
+
mes += '。因为表号或IMEI重复而导入失败的数据,信息为:'
|
|
396
|
+
let duplicateInfo = res.data.duplicate.map(item =>
|
|
397
|
+
`行号: ${item.row_number}, 表号: ${item.f_meternumber}, IMEI: ${item.f_imei}`
|
|
398
|
+
).join('\n')
|
|
399
|
+
mes += '\n' + duplicateInfo
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
var link = document.createElement('a')
|
|
403
|
+
let path = '表具导入异常信息.txt'
|
|
404
|
+
let pathName = 'http://' + location.host + '/excel/' + path
|
|
405
|
+
link.href = pathName
|
|
406
|
+
link.download = path
|
|
407
|
+
link.dispatchEvent(new MouseEvent('click'))
|
|
408
|
+
mes += '。请确保气表品牌存在,且表号、IMEI号唯一,详细信息请查看表具导入异常信息.txt'
|
|
409
|
+
}
|
|
410
|
+
this.$showMessage(mes)
|
|
411
|
+
this.search()
|
|
412
|
+
})
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
</script>
|
|
417
|
+
<style lang="less">
|
|
418
|
+
#WebMeterList {
|
|
419
|
+
.form-input-group label {
|
|
420
|
+
text-align: right;
|
|
421
|
+
width: auto;
|
|
422
|
+
}
|
|
423
|
+
.datapanel {
|
|
424
|
+
color: #333;
|
|
425
|
+
background-color: white;
|
|
426
|
+
box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px ;
|
|
427
|
+
padding: 10px 30px 10px 30px;
|
|
428
|
+
border-radius:15px;
|
|
429
|
+
}
|
|
430
|
+
#webmeterinfo {
|
|
431
|
+
tr > td {
|
|
432
|
+
white-space: nowrap;
|
|
433
|
+
}
|
|
434
|
+
}
|
|
435
|
+
#vc-exportexcel-webmeterlist {
|
|
436
|
+
margin: 0;
|
|
437
|
+
}
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
</style>
|
|
@@ -113,4 +113,7 @@ export default function () {
|
|
|
113
113
|
Vue.component('new-price-adjustment-webmeter', (resolve) => { require(['./NewPriceAdjustmentWebmeter'], resolve) })
|
|
114
114
|
Vue.component('new-price-adjustment-manage', (resolve) => { require(['./PriceAdjustmentManage'], resolve) })
|
|
115
115
|
Vue.component('owe-record-query', (resolve) => { require(['./PriceChangeCompensation/OweRecordQuery'], resolve) })
|
|
116
|
+
|
|
117
|
+
// 表计管理
|
|
118
|
+
Vue.component('web-meter-info', (resolve) => { require(['./WebMeterInfo'], resolve) })
|
|
116
119
|
}
|
|
@@ -46,9 +46,9 @@
|
|
|
46
46
|
close-on-select>
|
|
47
47
|
</v-select>
|
|
48
48
|
</div>
|
|
49
|
-
<div class="col-sm-4 form-group">
|
|
49
|
+
<div class="col-sm-4 form-group" title="修正需权限:【收费记录维护金额权限】">
|
|
50
50
|
<label class="font_normal_body">收款金额</label>
|
|
51
|
-
<input type="text" v-model="model.f_collection" disabled=
|
|
51
|
+
<input type="text" v-model="model.f_collection" :disabled="!editcollection" style="width: 60%" class="input_search">
|
|
52
52
|
</div>
|
|
53
53
|
<!--<div class="col-sm-4 form-group">-->
|
|
54
54
|
<!--<label class="font_normal_body">收据类型</label>-->
|
|
@@ -97,21 +97,21 @@
|
|
|
97
97
|
:show-reset-button="true">
|
|
98
98
|
</datepicker>
|
|
99
99
|
</div>
|
|
100
|
-
<div class="col-sm-4 form-group">
|
|
100
|
+
<div class="col-sm-4 form-group" title="修正需权限:【收费记录维护金额权限】">
|
|
101
101
|
<label class="font_normal_body">购气气量</label>
|
|
102
|
-
<input type="text" v-model="model.f_pregas" disabled=
|
|
102
|
+
<input type="text" v-model="model.f_pregas" :disabled="!editcollection" style="width: 60%" class="input_search">
|
|
103
103
|
</div>
|
|
104
|
-
<div class="col-sm-4 form-group">
|
|
104
|
+
<div class="col-sm-4 form-group" title="修正需权限:【收费记录维护金额权限】">
|
|
105
105
|
<label class="font_normal_body">购气金额</label>
|
|
106
|
-
<input type="text" v-model="model.f_preamount" disabled=
|
|
106
|
+
<input type="text" v-model="model.f_preamount" :disabled="!editcollection" style="width: 60%" class="input_search">
|
|
107
107
|
</div>
|
|
108
108
|
</div>
|
|
109
109
|
<div class="row">
|
|
110
|
-
<div class="col-sm-4 form-group">
|
|
110
|
+
<div class="col-sm-4 form-group" title="修正需权限:【收费记录维护操作员权限】">
|
|
111
111
|
<label class="font_normal_body" title="参数:操作人员">操作人员</label>
|
|
112
112
|
<v-select :value.sync="model.f_operatorid"
|
|
113
113
|
v-model="model.f_operatorid"
|
|
114
|
-
disabled=
|
|
114
|
+
:disabled="!editoperator"
|
|
115
115
|
:value-single="true" @change="selectoperator()"
|
|
116
116
|
:options='foperator'
|
|
117
117
|
close-on-select></v-select>
|
|
@@ -201,6 +201,8 @@ var data
|
|
|
201
201
|
equipmentType: this.$appdata.getParam('打印格式') ? [{label: '', value: ''}, ...this.$appdata.getParam('打印格式')] : [],
|
|
202
202
|
// 构建数组来存储对象
|
|
203
203
|
editbank: true,
|
|
204
|
+
editcollection: false,
|
|
205
|
+
editoperator: false,
|
|
204
206
|
uploadText: '收费',
|
|
205
207
|
showfiles: false,
|
|
206
208
|
recordList: [],
|
|
@@ -241,6 +243,12 @@ var data
|
|
|
241
243
|
if (this.$login.r.includes('维护银行转账信息')) {
|
|
242
244
|
this.editbank = true
|
|
243
245
|
}
|
|
246
|
+
if (this.$login.r.includes('收费记录维护金额权限')) {
|
|
247
|
+
this.editcollection = true
|
|
248
|
+
}
|
|
249
|
+
if (this.$login.r.includes('收费记录维护操作员权限')) {
|
|
250
|
+
this.editoperator = true
|
|
251
|
+
}
|
|
244
252
|
if (this.$login.r.includes('收费记录状态修改')) {
|
|
245
253
|
this.editstate = false
|
|
246
254
|
}
|
|
@@ -147,7 +147,7 @@ export default {
|
|
|
147
147
|
return {
|
|
148
148
|
disabled: true,
|
|
149
149
|
model: {
|
|
150
|
-
f_third_pay: '
|
|
150
|
+
f_third_pay: '1',
|
|
151
151
|
f_time_type: '按月',
|
|
152
152
|
f_limit_times: '',
|
|
153
153
|
f_time_value: '',
|
|
@@ -192,7 +192,7 @@ export default {
|
|
|
192
192
|
confirm () {
|
|
193
193
|
this.$dispatch('limit', this.model)
|
|
194
194
|
this.model = {
|
|
195
|
-
f_third_pay: '
|
|
195
|
+
f_third_pay: '1',
|
|
196
196
|
f_time_type: '按月',
|
|
197
197
|
f_limit_times: '',
|
|
198
198
|
f_time_value: '',
|
|
@@ -211,7 +211,7 @@ export default {
|
|
|
211
211
|
}
|
|
212
212
|
await this.$resetpost('rs/logic/runSQL', data)
|
|
213
213
|
this.model = {
|
|
214
|
-
f_third_pay: '
|
|
214
|
+
f_third_pay: '1',
|
|
215
215
|
f_time_type: '按月',
|
|
216
216
|
f_limit_times: '',
|
|
217
217
|
f_time_value: '',
|
package/src/main.js
CHANGED
|
@@ -2,7 +2,7 @@ import Vue from 'vue'
|
|
|
2
2
|
import all from 'vue-client/src/all'
|
|
3
3
|
import App from './App'
|
|
4
4
|
import system from 'system-clients/src/system'
|
|
5
|
-
import FilialeSale from './filiale/
|
|
5
|
+
import FilialeSale from './filiale/rongchuang/sale'
|
|
6
6
|
import sale from './sale'
|
|
7
7
|
import address from 'address-client/src/address'
|
|
8
8
|
import ldap from 'ldap-clients/src/ldap'
|