sale-client 3.6.384 → 3.6.385

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sale-client",
3
- "version": "3.6.384",
3
+ "version": "3.6.385",
4
4
  "description": "收费模块前台组件",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
@@ -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" >&nbsp;&nbsp;&nbsp;表钢号</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" >&nbsp;&nbsp;&nbsp;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" >&nbsp;&nbsp;&nbsp;批次&nbsp;&nbsp;&nbsp;</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" >&nbsp;&nbsp;&nbsp;领用人</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">&emsp;&emsp;至&emsp;</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
  }