sale-client 3.6.288 → 3.6.289

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.288",
3
+ "version": "3.6.289",
4
4
  "description": "收费模块前台组件",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
@@ -92,6 +92,7 @@
92
92
  <tr>
93
93
  <th>序号</th>
94
94
  <th>用户编号</th>
95
+ <th>用户姓名</th>
95
96
  <th>银行名称</th>
96
97
  <th>燃气方订单号</th>
97
98
  <th>银行方订单号</th>
@@ -107,6 +108,7 @@
107
108
  <template partial='body'>
108
109
  <td style="text-align: center;">{{$index+1}}</td>
109
110
  <td>{{row.f_userinfo_code}}</td>
111
+ <td>{{row.f_user_name}}</td>
110
112
  <th>{{row.f_bank_name?row.f_bank_name:row.bankname}}</th>
111
113
  <td>{{row.f_serial_id}}</td>
112
114
  <td>{{row.f_trade_number}}</td>
@@ -180,8 +182,8 @@
180
182
  f_orgid: this.$login.f.orgid,
181
183
  curorgid: [this.$login.f.orgid],
182
184
  model: new PagedList('rs/sql/bankPayment', 20, {bankname: 'this.model.f_bank_name[0]', startDate: 'this.model.startDate', endDate: 'this.model.endDate', orderitem: '"delivery_date DESC "'}, {f_collection: '', f_total_charge: ''}),
183
- bodydata: ['f_userinfo_code', 'f_bank_name', 'f_serial_id', 'f_trade_number', 'f_collection', 'f_total_charge', 'f_operate_date', 'f_state', 'msg'],
184
- header: ['用户编号', '银行名称', '燃气方流水号', '银行流水号', '燃气方金额', '银行金额', '燃气方日期', '银行日期', '燃气方记录是否有效', '对账信息']
185
+ bodydata: ['f_userinfo_code', 'f_user_name', 'f_bank_name', 'f_serial_id', 'f_trade_number', 'f_collection', 'f_total_charge', 'f_operate_date', 'f_state', 'msg'],
186
+ header: ['用户编号', '用户姓名', '银行名称', '燃气方流水号', '银行流水号', '燃气方金额', '银行金额', '燃气方日期', '银行日期', '燃气方记录是否有效', '对账信息']
185
187
 
186
188
  }
187
189
  },
@@ -1,9 +1,9 @@
1
1
  <template>
2
- <div>
3
- <div class="col-sm-6">
2
+ <div class="binary">
3
+ <div class="binary-left">
4
4
  <all-user-files v-ref:alluser :row="row" @select-changed="selected"></all-user-files>
5
5
  </div>
6
- <div class="col-sm-6">
6
+ <div class="binary-right">
7
7
  <div class="flex">
8
8
  <strong class="bg-info text-center">可选择的分表信息</strong>
9
9
  <split-list v-ref:split :data="row" @refresh="refreshView"></split-list>
@@ -134,6 +134,7 @@
134
134
  <th>审核人</th>
135
135
  <th>审核状态</th>
136
136
  <th>审核时间</th>
137
+ <th>审核原因</th>
137
138
  <th>操作</th>
138
139
  </tr>
139
140
  </template>
@@ -166,6 +167,7 @@
166
167
  <td style="text-align:center" v-if="row.f_hand_state !== '有效'">未通过</td>
167
168
  <td style="text-align:center" v-if="row.f_meter_state === '已抄表' && row.f_hand_state === '有效'">已通过</td>
168
169
  <td style="text-align:center">{{ row.f_audit_date }}</td>
170
+ <td style="text-align:center">{{ row.f_examinereason }}</td>
169
171
  <td style="text-align: center" v-if="row.f_meter_state === '待审核' && row.f_hand_state === '有效'">
170
172
  <button type="button" class="button_search button_spacing width-60"
171
173
  v-if="row.f_last_tablebase === row.f_meter_base"
@@ -233,7 +235,9 @@ export default {
233
235
  label: '未通过',
234
236
  value: ` f_hand_state = '无效'`
235
237
  }, {label: '已通过', value: `f_meter_state = '已抄表' and f_hand_state ='有效'`}],
236
- meterbooks: [{label: '全部', value: ''}]
238
+ meterbooks: [{label: '全部', value: ''}],
239
+ //待更新不通过原因的人的id
240
+ update_f_examinereason_id : ''
237
241
  }
238
242
  },
239
243
  ready () {
@@ -343,12 +347,20 @@ export default {
343
347
  // this.row = row
344
348
  // this.pushdata.openid = row.f_open_id
345
349
  // this.show = true
350
+ // 1、不通过操作执行
346
351
  let sql = `UPDATE t_handplan SET f_hand_state = '无效',f_audit_person = '${this.$login.f.name}',f_audit_date = getDate() WHERE id = ${row.id}`
347
352
  await this.$resetpost('rs/logic/runSQL', {sql: sql}, {resolveMsg: '操作成功', rejectMsg: '操作失败'})
348
353
  this.search()
354
+ // 2、不通过原因弹窗
355
+ this.show = true
356
+ this.update_f_examinereason_id = row.id
349
357
  }
350
358
  },
351
359
  async confirm () {
360
+ //更新不通过原因
361
+ let update = `UPDATE t_handplan SET f_examinereason ='${this.pushdata.cause}' where id = ${this.update_f_examinereason_id}`
362
+ await this.$resetpost('rs/logic/runSQL', {sql: update}, {resolveMsg: '原因提交成功', rejectMsg: '操作失败'})
363
+ console.log(update)
352
364
  await this.$resetpost('rs/logic/weixinHanPlanAudit', this.row, {resolveMsg: '操作成功', rejectMsg: '操作失败'})
353
365
  await this.$resetpost('http://www.hunanhongdaranqi.com/weixin/rs/logic/meterReadFailed', this.pushdata, {
354
366
  resolveMsg: null,
@@ -0,0 +1,603 @@
1
+ <template>
2
+ <div class="auto">
3
+ <div class="auto form-group-new row">
4
+ <div class="col-sm-6" style="height:auto;width:49%;">
5
+ <p style="font-weight: bold;margin: 0"><img src="../../../static/mainicon/矩形1828.png"/>&nbsp;&nbsp;基本信息</p>
6
+ <!-- 第一行数据-->
7
+ <div class="col-sm-4">
8
+ <label class="font_normal_body_new">客户编号</label>
9
+ <input class="input-underline" style="width:60%" :value="row.f_userinfo_code" readonly>
10
+ </div>
11
+ <div class="col-sm-4">
12
+ <label class="font_normal_body_new">客户姓名</label>
13
+ <input class="input-underline" style="width:60%" :value="row.f_user_name" readonly>
14
+ </div>
15
+ <div class="col-sm-4">
16
+ <label class="font_normal_body_new">用户状态</label>
17
+ <input class="input-underline" style="width:60%" :value="row.f_user_state" readonly>
18
+ </div>
19
+ <div class="col-sm-8">
20
+ <label class="font_normal_body_new">客户地址</label>
21
+ <input class="input-underline" style="width:80%" :value="row.f_address" readonly>
22
+ </div>
23
+ <div class="col-sm-4">
24
+ <label class="font_normal_body_new">客户电话</label>
25
+ <input class="input-underline" style="width:60%" :value="row.f_user_phone" readonly>
26
+ </div>
27
+ <div class="col-sm-4">
28
+ <label class="font_normal_body_new">客户类型</label>
29
+ <input class="input-underline" style="width:60%" :value="row.f_user_type" readonly>
30
+ </div>
31
+ <div class="col-sm-4">
32
+ <label class="font_normal_body_new">用气性质</label>
33
+ <input class="input-underline" style="width:60%" :value="row.f_gasproperties" readonly>
34
+ </div>
35
+ <div class="col-sm-4">
36
+ <label class="font_normal_body_new">证件类型</label>
37
+ <input class="input-underline" style="width:60%" :value="row.f_credentials" readonly>
38
+ </div>
39
+ <div class="col-sm-8">
40
+ <label class="font_normal_body_new">证件号码</label>
41
+ <input class="input-underline" style="width:80%" :value="row.f_idnumber" readonly>
42
+ </div>
43
+ <div class="col-sm-4">
44
+ <label class="font_normal_body_new">用户状态</label>
45
+ <input class="input-underline" style="width:60%" :value="row.f_user_state" readonly>
46
+ </div>
47
+ <div class="col-sm-4">
48
+ <label class="font_normal_body_new">账户余额</label>
49
+ <input class="input-underline" style="width:60%" :value="row.f_balance" readonly>
50
+ </div>
51
+ <div class="col-sm-4">
52
+ <label class="font_normal_body_new">人&ensp;口&ensp;数</label>
53
+ <input class="input-underline" style="width:60%" :value="row.f_people_num" readonly>
54
+ </div>
55
+
56
+ </div>
57
+ <div class="col-sm-6" style="height:auto;width:49%;">
58
+ <p style="font-weight: bold;margin: 0"><img src="../../../static/mainicon/矩形1828.png"/>&nbsp;&nbsp;表具信息</p>
59
+ <div class="col-sm-4">
60
+ <label class="font_normal_body_new">表&emsp;号&emsp;</label>
61
+ <input class="input-underline" style="width:60%" :value="row.f_meternumber" readonly>
62
+ </div>
63
+ <div class="col-sm-4">
64
+ <label class="font_normal_body_new">气表状态</label>
65
+ <input class="input-underline" style="width:60%" :value="row.f_table_state" readonly>
66
+ </div>
67
+ <div class="col-sm-4">
68
+ <label class="font_normal_body_new">当前底数</label>
69
+ <input class="input-underline" style="width:60%" :value="row.f_meter_base" readonly>
70
+ </div>
71
+
72
+ <div class="col-sm-4">
73
+ <label class="font_normal_body_new">气表品牌</label>
74
+ <input class="input-underline" style="width:60%" :value="row.f_meter_brand" readonly>
75
+ </div>
76
+
77
+ <div class="col-sm-4">
78
+ <label class="font_normal_body_new">气价名称</label>
79
+ <input class="input-underline" style="width:60%" :value="row.f_price_name" readonly>
80
+ </div>
81
+ <div class="col-sm-4">
82
+ <label class="font_normal_body_new">气价类型</label>
83
+ <input class="input-underline" style="width:60%" :value="row.f_price_type" readonly>
84
+ </div>
85
+ <div class="col-sm-4">
86
+ <label class="font_normal_body_new">价格详情</label>
87
+ <input class="input-underline" style="width:60%" :value="row.f_detailprice" readonly>
88
+ </div>
89
+ <div class="col-sm-4">
90
+ <label class="font_normal_body_new">用&ensp;气&ensp;点</label>
91
+ <input class="input-underline" style="width:60%" :value="row.f_userfiles_address" readonly>
92
+ </div>
93
+ <div class="col-sm-4">
94
+ <label class="font_normal_body_new" title="最后上报时间">上报时间</label>
95
+ <input class="input-underline" style="width:60%" :value="row.f_meteread_date ? row.f_meteread_date : '暂无'"
96
+ readonly>
97
+ </div>
98
+ <div v-if="row.f_collection_type == '按金额'" class="col-sm-4">
99
+ <label class="font_normal_body_new">累购金额</label>
100
+ <input class="input-underline" style="width:60%" :value="row.total_fee" readonly>
101
+ </div>
102
+ <div v-if="row.f_collection_type == '按气量'">
103
+ <div class="col-sm-4">
104
+ <label class="font_normal_body_new">累购气量</label>
105
+ <input class="input-underline" style="width:60%" :value="row.f_total_gas" readonly>
106
+ </div>
107
+ <div class="col-sm-4">
108
+ <label class="font_normal_body_new">最后结算时间</label>
109
+ <input class="input-underline" style="width:45%" :value="row.f_hand_date ? row.f_hand_date :'暂无'" readonly>
110
+ </div>
111
+ </div>
112
+ <div v-if="row.f_meter_type.includes('物联网表')">
113
+ <div class="col-sm-4">
114
+ <label class="font_normal_body_new">物联网次数</label>
115
+ <input class="input-underline" style="width:55%" :value="row.f_iot_times" readonly>
116
+ </div>
117
+ <div class="col-sm-4">
118
+ <label class="font_normal_body_new">表剩余金额</label>
119
+ <input class="input-underline" style="width:55%" :value="row.f_balance_amount" readonly>
120
+ </div>
121
+ <div class="col-sm-4">
122
+ <label class="font_normal_body_new">阀门状态</label>
123
+ <input class="input-underline" style="width:60%" :value="row.f_valvestate == 0 ? '已开阀' : '已关阀'" readonly>
124
+ </div>
125
+ <div class="col-sm-4">
126
+ <label class="font_normal_body_new">累计上报次数</label>
127
+ <input class="input-underline" style="width:45%" :value="row.f_meteread_number ? row.f_meteread_number : 0"
128
+ readonly>
129
+ </div>
130
+ <div class="col-sm-4">
131
+ <label class="font_normal_body_new">阀控状态</label>
132
+ <input class="input-underline" style="width:50%" :value="row.f_network_valve == '1' ? '手动' : '自动'" readonly>
133
+ <span v-if="row.f_network_valve" @click.stop="openModal"
134
+ class=" glyphicon glyphicon-pencil clickchange" title="修改阀控状态">
135
+ </span>
136
+ </div>
137
+ </div>
138
+ <div v-if="row.f_collection_type == '按气量'">
139
+ <div class="col-sm-4" v-if="!row.f_calculation.includes('表端结算')">
140
+ <label class="font_normal_body_new">表剩余气量</label>
141
+ <input class="input-underline" style="width:55%" :value="row.f_balance_gas" readonly>
142
+ </div>
143
+ <div class="col-sm-4" v-if="row.f_meter_type.includes('表端结算')">
144
+ <label class="font_normal_body_new">表剩余气量</label>
145
+ <input class="input-underline" style="width:55%" :value="row.f_jval" readonly>
146
+ </div>
147
+ <div class="col-sm-4">
148
+ <label class="font_normal_body_new">累计用气金额</label>
149
+ <input class="input-underline" style="width:45%" :value="row.f_total_usegas_amount" readonly>
150
+ </div>
151
+ </div>
152
+ <div class="col-sm-4">
153
+ <label class="font_normal_body_new">写卡次数</label>
154
+ <input class="input-underline" style="width:45%" :value="row.f_times" readonly>
155
+ </div>
156
+ <div class="col-sm-4">
157
+ <label class="font_normal_body_new">抄表册名</label>
158
+ <input class="input-underline" style="width:45%"
159
+ :value="(row.f_book_code!=null ? '['+row.f_book_code + '] ' : '') + (row.f_book_name!=null ? row.f_book_name:'')"
160
+ readonly>
161
+ </div>
162
+ <div class="col-sm-4">
163
+ <label class="font_normal_body_new">抄表册册序号</label>
164
+ <input class="input-underline" style="width:45%" :value="row.f_meter_book_sort" readonly>
165
+ </div>
166
+ </div>
167
+ <div class="auto" style="float: right;">
168
+ <button class="button_clear " @click="cancelmain()">返回</button>
169
+ <button class="button_search" v-show="buttonshow" type="button" @click="goChargeManage">去收费</button>
170
+ <button v-if="row.f_meter_brand.includes('西美')&&row.f_meter_type.includes('物联网表')"
171
+ class="button_search" type="button" @click="clearBarrier">清除障碍
172
+ </button>
173
+ <button v-if="row.f_meter_type.includes('物联网表')"
174
+ class="button_search" type="button" @click="openUser">开户
175
+ </button>
176
+ <button v-if="row.f_meter_type.includes('物联网表') && valveLimit && row.f_network_valve === '1'"
177
+ class="button_search" type="button" @click="valvecontrol">开关阀
178
+ </button>
179
+ <button v-if="row.f_meter_type.includes('物联网表') && autoValveLimit"
180
+ class="button_search" type="button" @click="zdfk">开关自动阀控
181
+ </button>
182
+ <div
183
+ :class="{'button_shrink_top':criteriaShow,'button_shrink_bottom':!criteriaShow}"
184
+ @click="criteriaShow=!criteriaShow"
185
+ class="button_spacing"
186
+ style="float: right"></div>
187
+ </div>
188
+ </div>
189
+
190
+ <div class="auto row">
191
+ <div class="col-sm-6" style="width:49%;"></div>
192
+ <div class="auto form-group-new">
193
+ <div class="col-sm-6" style="height:auto;width:49%;" v-show="criteriaShow">
194
+ <div class="col-sm-4">
195
+ <label class="font_normal_body_new">气表型号</label>
196
+ <input class="input-underline" style="width:60%" :value="row.f_meter_style" readonly>
197
+ </div>
198
+ <div class="col-sm-4">
199
+ <label class="font_normal_body_new">气表类型</label>
200
+ <input class="input-underline" style="width:60%" :value="row.f_meter_type" readonly>
201
+ </div>
202
+ <div class="col-sm-4">
203
+ <label class="font_normal_body_new">初始底数</label>
204
+ <input class="input-underline" style="width:60%" :value="row.f_initial_base" readonly>
205
+ </div>
206
+ <div class="col-sm-4">
207
+ <label class="font_normal_body_new">左&ensp;右&ensp;表</label>
208
+ <input class="input-underline" style="width:60%" :value="row.f_aroundmeter" readonly>
209
+ </div>
210
+ <div class="col-sm-4">
211
+ <label class="font_normal_body_new">建表日期</label>
212
+ <input class="input-underline" style="width:60%" :value="row.f_input_date.substring(0,7)" readonly>
213
+ </div>
214
+ <div v-if="devices.length > 0" v-show="false" style="height: auto">
215
+ <p style="font-weight: bold;margin: 0">设备信息</p>
216
+ <div class="panel-heading" style="height: 30px">
217
+ <h4 style="display:inline-block;margin-top: auto">设备信息</h4>
218
+ </div>
219
+ <div v-for="device in devices">
220
+
221
+ <form class="form-horizontal">
222
+ <div class="col-sm-4">
223
+ <label class="font_normal_body_new">设备类型</label>
224
+ <input class="input-underline" style="width:60%" :value="device.f_devices_type" readonly>
225
+ </div>
226
+ <div class="col-sm-4">
227
+ <label class="font_normal_body_new">设备品牌</label>
228
+ <input class="input-underline" style="width:60%" :value="device.f_brand" readonly>
229
+ </div>
230
+ <div class="col-sm-4">
231
+ <label class="font_normal_body_new">设备型号</label>
232
+ <input class="input-underline" style="width:60%" :value="device.f_devices_model" readonly>
233
+ </div>
234
+ <div class="col-sm-4">
235
+ <label class="font_normal_body_new">设备数量</label>
236
+ <input class="input-underline" style="width:60%" :value="device.f_devices_num" readonly>
237
+ </div>
238
+ </form>
239
+ </div>
240
+ </div>
241
+ </div>
242
+ </div>
243
+ </div>
244
+ <!--阀控管理弹框-->
245
+ <modal :show.sync="valve">
246
+ <header slot="modal-header" class="modal-header">
247
+ <button type="button" class="close" @click="close()"><span>&times;</span></button>
248
+ <h4 class="modal-title" align="center">阀控管理</h4>
249
+ </header>
250
+ <article slot="modal-body" class="modal-body">
251
+ <div class="form-group " style="padding-left: 8px">
252
+ <label class="font_normal_body" :class="operateReason?'text-info':'text-danger'">操作原因</label>
253
+ <textarea class="form-control" style="width:80%" v-model="operateReason" rows="3"
254
+ placeholder="请填写操作原因"></textarea>
255
+ </div>
256
+ </article>
257
+ <footer slot="modal-footer" class="modal-footer">
258
+ <button type="button" class="button_search btn-ln fr" :disabled="!operateReason" @click='valveoperate(true)'>
259
+ 开阀
260
+ </button>
261
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
262
+ <button type="button" class="btn btn-info btn-ln fr" :disabled="!operateReason" @click='valveoperate(false)'>
263
+ 关阀
264
+ </button>
265
+ </footer>
266
+ </modal>
267
+
268
+ <modal :show.sync="showModal" v-ref:modal backdrop="false">
269
+ <header slot="modal-header" class="modal-header">
270
+ <h4 class="modal-title">修改阀控状态</h4>
271
+ </header>
272
+ <article slot="modal-body" class="modal-body">
273
+ <validator name='v'>
274
+ <form class="form-horizontal select-overspread">
275
+ <div class="row">
276
+ <div class="form-group">
277
+ <label class=" col-sm-3 control-label">阀控状态:</label>
278
+ <div class="col-sm-4">
279
+ <v-select v-model="f_network_valve"
280
+ placeholder='请选择'
281
+ :value.sync="disableModel.f_network_valve"
282
+ :options='f_network_valve'
283
+ :value-single="true"
284
+ close-on-select clear-button>
285
+ </v-select>
286
+ </div>
287
+ </div>
288
+ <div>
289
+ <label class=" col-sm-3 control-label">操作原因:</label>
290
+ <div class="col-sm-8">
291
+ <textarea class="form-control" v-model="disableModel.f_othereason" rows="3"
292
+ placeholder="多行输入"></textarea>
293
+ </div>
294
+ </div>
295
+ </div>
296
+ </form>
297
+ </validator>
298
+ </article>
299
+ <footer slot="modal-footer" class="modal-footer">
300
+ <button type="button" class="button_search" @click='confirm()'>提交</button>
301
+ <button type="button" class="button_clear" @click='close1'>取消</button>
302
+ </footer>
303
+ </modal>
304
+ </div>
305
+
306
+ </template>
307
+
308
+ <script>
309
+ import {HttpResetClass} from 'vue-client'
310
+ import Vue from 'vue'
311
+
312
+ export default {
313
+ title: '基本信息',
314
+ props: {
315
+ row: {
316
+ type: Object,
317
+ default: undefined
318
+ },
319
+ buttonshow: {
320
+ type: Boolean,
321
+ default: true
322
+ }
323
+ },
324
+ data () {
325
+ return {
326
+ showModal: false,
327
+ disableModel: {
328
+ f_othereason: '',
329
+ f_network_valve: ''
330
+ },
331
+ criteriaShow: false,
332
+ devices: [],
333
+ valveLimit: false,
334
+ autoValveLimit: false,
335
+ // 开关阀操作原因
336
+ operateReason: '',
337
+ valve: false,
338
+ showselectncuserinfo: false,
339
+ f_network_valve: this.$appdata.getParam('阀控状态') ? [{
340
+ // label: '全部',
341
+ value: ''
342
+ }, ...this.$appdata.getParam('阀控状态')] : []
343
+ }
344
+ },
345
+
346
+ ready () {
347
+ this.getDevice()
348
+ this.valveLimit = this.$login.r.includes('开关阀权限')
349
+ this.autoValveLimit = this.$login.r.includes('自动阀控权限')
350
+ },
351
+ methods: {
352
+ // 发送请求去数据
353
+ async getDevice () {
354
+ if (this.row) {
355
+ let http = new HttpResetClass()
356
+ let condition = `f_userinfo_id = '${this.row.f_userinfo_id}'`
357
+ let getDevices = await http.load('POST', 'rs/sql/sale_GetDevicesInfo', {data: {condition: condition}}, {
358
+ rejectMsg: '获取设备信息出错!!',
359
+ resolveMsg: null
360
+ })
361
+ this.devices = getDevices.data
362
+ }
363
+ },
364
+ openModal () {
365
+ this.showModal = true
366
+ },
367
+ async confirm () {
368
+
369
+ let operInfo = {
370
+ f_operator: this.$login.f.name,
371
+ f_operatorid: this.$login.f.id,
372
+ f_orgid: this.$login.f.orgid,
373
+ f_orgname: this.$login.f.orgs,
374
+ f_depid: this.$login.f.depids,
375
+ f_depname: this.$login.f.deps,
376
+ f_network_valve: this.disableModel.f_network_valve,
377
+ f_othereason: this.disableModel.f_othereason
378
+ }
379
+
380
+ let userlist = [
381
+ {
382
+ f_userinfo_id: this.row.f_userinfo_id,
383
+ f_user_name: this.row.f_user_name,
384
+ f_userfiles_id: this.row.f_userfiles_id,
385
+ f_table_state: this.row.f_table_state
386
+ }
387
+
388
+ ]
389
+
390
+ let param = {
391
+ userlist,
392
+ operInfo
393
+ }
394
+
395
+ console.log(param)
396
+
397
+ await this.$resetpost('rs/logic/importNetworkValve', {data: param}, {
398
+ rejectMsg: '同步失败',
399
+ resolveMsg: '同步成功'
400
+ })
401
+ this.$emit('search-main')
402
+
403
+ this.showModal = false
404
+ },
405
+
406
+ close1 () {
407
+ // 关闭对话框的逻辑
408
+ this.showModal = false
409
+ },
410
+ // 返回
411
+ cancelmain () {
412
+ this.$emit('cancel-main')
413
+ },
414
+ clearBarrier () {
415
+ // 地址
416
+ // 127.0.0.1:8445
417
+ // 参数
418
+ let datas = {
419
+ moduleName: 'XiMeiSystem', // 固定值
420
+ content: {
421
+ tradeCode: '3015', // 固定值
422
+ appid: 'yysf', // 固定值
423
+ partner: 'cqsemay_bcts', // 固定值
424
+ version: 'v1', // 固定值
425
+ tasked: this.getuuid(), // 任务id
426
+ notifyUrl: 'http://192.168.2.10:8445/webmeter/rs/logic/XiMeiSystemCallBack', // 固定值
427
+ meterNo: this.row.f_meternumber, // 表号
428
+ signType: ' MD5' // 固定值
429
+ },
430
+ title: '清除异常', // 固定值
431
+ type: '清除异常', // 固定值
432
+ inputtor: this.row.f_operator, // 操作人
433
+ userId: this.row.f_userfiles_id, // 表档案ID
434
+ dataId: null // 操作记录ID
435
+ }
436
+ this.$resetpost('/webmeter/rs/logic/syncSaveSetParamsTemplate', {data: datas}, {
437
+ resolveMsg: `清理成功`,
438
+ rejectMsg: `清理失败`
439
+ }).then(res => {
440
+ })
441
+ },
442
+ getuuid () {
443
+ let uuidA = ''
444
+ var s = []
445
+ var hexDigits = '0123456789abcdef'
446
+ for (var i = 0; i < 36; i++) {
447
+ s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1)
448
+ }
449
+ s[14] = '4'
450
+ s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1)
451
+ s[8] = s[13] = s[18] = s[23] = '-'
452
+ uuidA = s.join('')
453
+ return uuidA
454
+ },
455
+ async goChargeManage () {
456
+ await this.$copyText(this.row.f_userinfo_code)
457
+ this.$showAlert(`用户编号已复制到剪切板!`, 'success', 2000)
458
+ if (this.row.parentname === 'charge-manage') {
459
+ this.$emit('cancel-re')
460
+ } else {
461
+ try {
462
+ this.$goto('charge-manage', {f: this.$login.f}, 'main')
463
+ } catch (e) {
464
+ }
465
+ try {
466
+ window.parent.dispatchEvent(new CustomEvent('gotoChargeManage', {detail: 'Hello from iframe'}))
467
+ } catch (e) {
468
+ }
469
+ }
470
+ },
471
+ openUser () {
472
+ this.$showMessage(`是否需要给用户进行开户?`, ['confirm', 'cancel']).then(async (res) => {
473
+ if (res === 'confirm') {
474
+ let data = {
475
+ f_userfiles_id: this.row.f_userfiles_id
476
+ }
477
+ this.$resetpost('rs/logic/startup', data)
478
+ }
479
+ })
480
+ },
481
+ // 阀控管理
482
+ zdfk () {
483
+ let data = {
484
+ inputtor: Vue.$login.f.name,
485
+ inputtorid: Vue.$login.f.id,
486
+ meterBrandName: this.row.f_alias,
487
+ f_userfiles_id: this.row.f_userfiles_id
488
+ }
489
+ if (this.row.f_network_valve !== '1') {
490
+ this.$resetpost('rs/logic/openzdfk', data, {resolveMsg: '关闭自动阀控成功。', rejectMsg: '关闭自动阀控失败!!!'})
491
+ this.row.f_network_valve = '1'
492
+ } else {
493
+ this.$resetpost('rs/logic/closezdfk', data, {resolveMsg: '开启自动阀控成功。', rejectMsg: '开启自动阀控失败!!!'})
494
+ this.row.f_network_valve = null
495
+ }
496
+ },
497
+ // 阀控管理
498
+ valvecontrol () {
499
+ if (this.$login.r.includes('开关阀')) {
500
+ this.valve = true
501
+ } else {
502
+ this.$showAlert('您没有开关阀权限,请联系管理员!!', 'warning', 3000)
503
+ }
504
+ },
505
+ close () {
506
+ this.valve = false
507
+ this.operateReason = ''
508
+ },
509
+ // 开关阀操作
510
+ async valveoperate (oper) {
511
+ let msg = oper ? '开阀' : '关阀'
512
+ let datas = {
513
+ instructType: '阀门控制',
514
+ instructTitle: `手动${msg}`,
515
+ condition: `t_userfiles.f_userfiles_id='${this.row.f_userfiles_id}'`,
516
+ meterBrandName: this.row.f_alias,
517
+ f_instruct_state: '待发送',
518
+ inputtor: Vue.$login.f.name,
519
+ inputtorid: Vue.$login.f.id,
520
+ reasonInfo: this.operateReason,
521
+ meternumberf: this.row.f_meternumber,
522
+ contentData: {isOpen: oper ? 1 : 0}
523
+ }
524
+ let _this = this
525
+ await this.$resetpost('rs/sql/iot_searchInstruct', {data: datas},
526
+ {warnMsg: null, resolveMsg: null}).then(res => {
527
+ if (res.data.length === 0) {
528
+ _this.$resetpost('rs/logic/iot_saveInstruct', {data: datas},
529
+ {warnMsg: `确定要进行${msg}操作吗?`, resolveMsg: `${msg}成功`, rejectMsg: `${msg}失败`}).then(res => {
530
+ _this.valve = false
531
+ _this.operateReason = ''
532
+ })
533
+ } else {
534
+ this.$showAlert('存在开关阀待发送的指令,系统不生成同样的待发送指令', 'warning', 3000)
535
+ _this.valve = false
536
+ _this.operateReason = ''
537
+ }
538
+ })
539
+ }
540
+ },
541
+ watch: {
542
+ 'row' () {
543
+ this.getDevice()
544
+ }
545
+
546
+ }
547
+ }
548
+ </script>
549
+ <style scoped lang="less">
550
+ .form-group-new > div {
551
+ height: 3% !important;
552
+
553
+ }
554
+
555
+ .datapanel {
556
+ color: #333;
557
+ background-color: white;
558
+ box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
559
+ padding: 10px 30px 10px 30px;
560
+ height: auto;
561
+ border-radius: 15px;
562
+ }
563
+
564
+ .text-info {
565
+ color: lightskyblue;
566
+ }
567
+
568
+ .text-danger {
569
+ color: red;
570
+ }
571
+
572
+ .input-underline {
573
+ border-bottom: 1px solid #dbdbdb;
574
+ border-top: 0px;
575
+ border-left: 0px;
576
+ border-right: 0px;
577
+ }
578
+
579
+ .font_normal_body_new {
580
+ font-weight: 100;
581
+ float: left;
582
+ margin-top: 0px;
583
+ font-size: 1.4rem !important;
584
+ line-height: 30px;
585
+ }
586
+
587
+ .col-sm-4, .col-sm-8 {
588
+ display: flex;
589
+ align-items: center;
590
+ margin: 7px 0;
591
+
592
+ label {
593
+ line-height: unset;
594
+ margin-bottom: 0;
595
+ }
596
+ }
597
+
598
+ .clickchange:hover {
599
+ color: #3592ef;
600
+ cursor: pointer;
601
+ }
602
+
603
+ </style>
@@ -13,4 +13,5 @@ export default function () {
13
13
  Vue.component('sale-userinfo', (resolve) => { require(['./Userinfo'], resolve) })
14
14
  Vue.component('card-meter-center', (resolve) => { require(['./CardMeterCenter'], resolve) })
15
15
  // Vue.component('machine-meter-center', (resolve) => { require(['./MachineMeterCenter'], resolve) })
16
+ Vue.component('user-base-info-new', (resolve) => { require(['./UserBaseInfoNew'], resolve) })
16
17
  }
@@ -260,6 +260,11 @@
260
260
  close-on-select
261
261
  condition="f_bank_name = '{}'"></v-select>
262
262
  </div>
263
+ <div class="col-sm-2 form-group">
264
+ <label class="font_normal_body">表前阀状态</label>
265
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_bqf_state"
266
+ condition="f_bqf_state like '%{}%'" placeholder="表前阀状态">
267
+ </div>
263
268
  <div class="col-sm-2 form-group">
264
269
  <label for="startDate" class="font_normal_body">收费日期</label>
265
270
  <datepicker id="handStartDate" placeholder="开始日期" style="width:60%"
@@ -317,6 +322,9 @@
317
322
  <th>
318
323
  <nobr>表号</nobr>
319
324
  </th>
325
+ <th>
326
+ <nobr>表前阀状态</nobr>
327
+ </th>
320
328
  <th>
321
329
  <nobr>数据年月</nobr>
322
330
  </th>
@@ -487,6 +495,9 @@
487
495
  <td style="text-align: center;">
488
496
  <nobr>{{row.f_meternumber}}</nobr>
489
497
  </td>
498
+ <td style="text-align: center;">
499
+ <nobr>{{row.f_bqf_state}}</nobr>
500
+ </td>
490
501
  <td style="text-align: center;">
491
502
  <nobr>{{row.ym_data}}</nobr>
492
503
  </td>