sale-client 3.4.182 → 3.4.183

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.4.182",
3
+ "version": "3.4.183",
4
4
  "description": "收费模块前台组件",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
@@ -87,7 +87,7 @@
87
87
  "style-loader": "^0.20.3",
88
88
  "system-clients": "3.2.0-2",
89
89
  "url-loader": "^0.5.7",
90
- "vue-client": "1.24.49",
90
+ "vue-client": "1.24.51",
91
91
  "vue-clipboard2": "0.3.1",
92
92
  "vue-hot-reload-api": "^1.2.0",
93
93
  "vue-html-loader": "^1.0.0",
@@ -1,23 +1,23 @@
1
- <template>
2
- <div class="auto">
3
- <card-change-fill v-if="row.f_meter_type.includes('卡表') || (row.f_meter_type.includes('物联网表') && row.f_open_type ==='发卡开户')" :row.sync="row"></card-change-fill>
4
- <iot-change-fill v-if="row.f_meter_type.includes('物联网表')&& row.f_open_type !=='发卡开户'" :row.sync="row"></iot-change-fill>
5
- <machine-change-fill v-if="row.f_meter_type.includes('机表')" :row.sync="row"></machine-change-fill>
6
- </div>
7
- </template>
8
- <script>
9
- import IotChangeFill from './IOT/IotChangeFill'
10
- import CardChangeFill from './CardChangeFill'
11
- import MachineChangeFill from './machine/MachineChangeFill'
12
-
13
- export default {
14
- components: {CardChangeFill, IotChangeFill, MachineChangeFill},
15
- title: '换表补气',
16
- data () {
17
- return {
18
-
19
- }
20
- },
21
- props: ['row']
22
- }
23
- </script>
1
+ <template>
2
+ <div class="auto">
3
+ <card-change-fill v-if="row.f_meter_type.includes('卡表')||(row.f_meter_type.includes('物联网表') && row.f_open_type ==='发卡开户')" :row.sync="row"></card-change-fill>
4
+ <iot-change-fill v-if="row.f_meter_type.includes('物联网表')&& row.f_open_type !=='发卡开户'" :row.sync="row"></iot-change-fill>
5
+ <machine-change-fill v-if="row.f_meter_type.includes('机表')" :row.sync="row"></machine-change-fill>
6
+ </div>
7
+ </template>
8
+ <script>
9
+ import IotChangeFill from './IOT/IotChangeFill'
10
+ import CardChangeFill from './CardChangeFill'
11
+ import MachineChangeFill from './machine/MachineChangeFill'
12
+
13
+ export default {
14
+ components: {CardChangeFill, IotChangeFill, MachineChangeFill},
15
+ title: '换表补气',
16
+ data () {
17
+ return {
18
+
19
+ }
20
+ },
21
+ props: ['row']
22
+ }
23
+ </script>
@@ -3,35 +3,62 @@
3
3
  <div class="span" style="overflow-y: auto;min-height: 500px;">
4
4
  <validator name='v'>
5
5
  <form novalidate class="form-horizontal">
6
- <div style="margin-top:10px;" v-for="row in model.otherdetail">
6
+ <!-- <div class="row" style="margin-top:10px;">-->
7
+ <!-- -->
8
+ <!-- </div>-->
9
+ <div style="margin-top:10px;" v-for="(index, row) in model.otherdetail">
7
10
  <div class="row">
8
- <div class="col-sm-4" :class="{'has-success':row.f_device,'select-error':!row.f_device}">
9
- <label for="f_device" class="font_normal_body " title="参数名称:品名及规格">&nbsp;收费类型</label>
10
- <v-select id="f_device"
11
- width="70%"
11
+ <div class="col-sm-4" :class="{'has-success':row.f_brand_spec,'select-error':!row.f_brand_spec}">
12
+ <label for="f_brand_spec" class="font_normal_body " title="参数名称:品名及规格">收费类型</label>
13
+ <v-select id="f_brand_spec"
12
14
  placeholder='请选择'
13
- v-model="row.f_device"
14
- :value.sync="row.f_device"
15
- :options='brandspec' value-single
15
+ v-model="row.f_brand_spec"
16
+ :value.sync="row.f_brand_spec"
17
+ :options='brandspec'
18
+ @change="setTypename"
16
19
  close-on-select clear-button>
17
20
  </v-select>
18
21
  </div>
22
+ <div class="col-sm-4" :class="{'has-success':row.f_typename,'has-error':!row.f_typename}">
23
+ <label for="f_typename" class=" font_normal_body">&nbsp;品名规格</label>
24
+ <v-select
25
+ style="width: 100px"
26
+ v-model="row.f_typename"
27
+ placeholder='请选择'
28
+ :value.sync="row.f_typename"
29
+ :options='gettypename'
30
+ @change="setTypenumber"
31
+ close-on-select clear-button>
32
+ </v-select>
33
+ </div>
34
+ <div class="col-sm-4" :class="{'has-success':row.f_typenumber,'has-error':!row.f_typenumber}">
35
+ <label for="f_typenumber" class=" font_normal_body">&nbsp;型&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;号</label>
36
+ <v-select
37
+ style="width: 100px"
38
+ v-model="row.f_typenumber"
39
+ placeholder='请选择'
40
+ :value.sync="row.f_typenumber"
41
+ :options='gettypenumber'
42
+ @change="setTypeprice(index)"
43
+ close-on-select clear-button>
44
+ </v-select>
45
+ </div>
19
46
  </div>
20
- <div class="row" style="margin-top:15px;">
21
- <div class="col-sm-4" :class="{'has-success':row.f_device.f_unitprice,'has-error':!row.f_device.f_unitprice}">
47
+ <div class="row">
48
+ <div class="col-sm-4" :class="{'has-success':row.f_unitprice,'has-error':!row.f_unitprice}">
22
49
  <label style="" for="f_unitprice" class=" font_normal_body">*单&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;价</label>
23
50
  <input class="input_search" style="width:60%" type="number" min="1" @blur.prevent="getcollection()"
24
51
  v-validate:f_unitprice='{required: true, dctest: [0, ">" ] }'
25
- v-model="row.f_device.f_unitprice"
26
- :value.sync="row.f_device.f_unitprice"
27
- placeholder="单价" v-next-el='sl' disabled>
52
+ v-model="row.f_unitprice"
53
+ :value.sync="row.f_unitprice"
54
+ placeholder="单价" v-next-el='sl'>
28
55
  </div>
29
- <div class="col-sm-4" :class="{'has-success':row.f_device.f_number,'has-error':!row.f_device.f_number}">
56
+ <div class="col-sm-4" :class="{'has-success':row.f_number,'has-error':!row.f_number}">
30
57
  <label style="" for="f_number" class="font_normal_body">*数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;量</label>
31
58
  <input class="input_search" style="width:60%" type="number" min='1' @blur.prevent="getcollection()"
32
59
  v-validate:f_number='{required: true, dctest: [0, ">" ] }'
33
- v-model="row.f_device.f_number"
34
- :value.sync="row.f_device.f_number"
60
+ v-model="row.f_number"
61
+ :value.sync="row.f_number"
35
62
  placeholder="数量" v-next-el='sk' v-el:sl>
36
63
  </div>
37
64
  <div style="padding-top:10px">
@@ -40,6 +67,31 @@
40
67
  <button type="button" class="glyphicon glyphicon-plus btn-success" @click.stop="addadetail()"></button>
41
68
  </div>
42
69
  </div>
70
+ <!-- <div class="row" style="margin-top:10px;" v-if="row.f_brand_spec[0]=='其他费用'">-->
71
+ <!-- <div class="col-sm-4" :class="[$v.f_fee_type.required ? 'has-error' : 'has-success']">-->
72
+ <!-- <input v-validate:f_fee_type='{required: true}' v-model="row.f_fee_type" v-show="false"/>-->
73
+ <!-- <label for="f_fee_type" class="font_normal_body ">其他收费类型</label>-->
74
+ <!-- <v-select id="f_fee_type"-->
75
+ <!-- v-model="row.f_fee_type"-->
76
+ <!-- placeholder='请选择'-->
77
+ <!-- :value.sync="row.f_fee_type"-->
78
+ <!-- :options='feetype'-->
79
+ <!-- close-on-select clear-button>-->
80
+ <!-- </v-select>-->
81
+ <!-- </div>-->
82
+
83
+ <!-- <div class="col-sm-4">-->
84
+ <!-- <label for="f_fee_time" class="font_normal_body">本次购买时间</label>-->
85
+ <!-- <v-select id="f_fee_time"-->
86
+ <!-- v-model="row.f_fee_time"-->
87
+ <!-- placeholder='请选择'-->
88
+ <!-- :value.sync="row.f_fee_time"-->
89
+ <!-- :options='feetime'-->
90
+ <!-- close-on-select clear-button>-->
91
+ <!-- </v-select>-->
92
+ <!-- </div>-->
93
+ <!-- </div>-->
94
+
43
95
  </div>
44
96
 
45
97
 
@@ -217,6 +269,26 @@ let otherChargeGen = async function (self, parameter) {
217
269
  localeSustainMoney = (localeSustainMoney - 0) + (self.model.f_collection - 0)
218
270
  window.localStorage.setItem('sustainMoney', localeSustainMoney)
219
271
  }
272
+ // // 转燃气改装工程单
273
+ // if (self.config.modificationList && parameter) {
274
+ // let printSheet = {
275
+ // f_userinfo_id: self.row.f_userinfo_id,
276
+ // f_charge_id: resid.data,
277
+ // f_state: '有效',
278
+ // f_print_state: '未打印',
279
+ // f_type: '改装单',
280
+ // f_orgid: self.$login.f.orgid ? self.$login.f.orgid : '',
281
+ // f_orgname: self.$login.f.orgs ? self.$login.f.orgs : '',
282
+ // f_depid: self.$login.f.depids ? self.$login.f.depids : '',
283
+ // f_depname: self.$login.f.deps ? self.$login.f.deps : '',
284
+ // f_operator: self.$login.f.name,
285
+ // f_operatorid: self.$login.f.id
286
+ // }
287
+ // await self.$resetpost('rs/logic/savePrintSheet', {data: {printData: printSheet}}, {
288
+ // resolveMsg: '',
289
+ // rejectMsg: '转单失败, 请重试'
290
+ // })
291
+ // }
220
292
  if (self.config.hasPrint && !self.$login.r.includes('不打印发票')) {
221
293
  if (self.model.f_print[0] != '电子发票') {
222
294
  if (self.config.hasBillManage) {
@@ -251,12 +323,13 @@ let asyncOtherCharge = async function (self) {
251
323
  await self.$getConfig(self, 'OtherCharge')
252
324
  self.model.f_print = self.config.printType instanceof Array ? self.config.printType : [self.config.printType]
253
325
  self.model.f_payment = [self.config.payment]
254
- self.model.otherdetail[0].f_device = [self.config.brandspec]
326
+ self.model.otherdetail[0].f_brand_spec = [self.config.brandspec]
255
327
  self.model.f_service_person = [self.config.services]
256
328
 
257
329
  self.model.f_use_type = self.config.billType
258
330
  self.model.f_bill_type = self.model.f_print
259
331
  self.hasValidateBill = self.config.hasBillManage
332
+ self.setTypename(self.model.f_brand_spec[0])
260
333
  }
261
334
  export default {
262
335
  title: '其他收费',
@@ -286,7 +359,7 @@ export default {
286
359
  t_userfees: '',
287
360
  f_fee_type: [],
288
361
  f_fee_time: ['12'],
289
- otherdetail: [{}]
362
+ otherdetail: [{f_brand_spec: ['材料费'], f_unitprice: '', f_number: ''}]
290
363
  },
291
364
  eticket_msg: false,
292
365
  eticket_show: false,
@@ -302,7 +375,10 @@ export default {
302
375
  // 启用发票管理需要对票号进行验证
303
376
  hasValidateBill: false,
304
377
  validateOk: false,
305
- brandspec: [],
378
+ f_typenumber: '',
379
+ typeNameList: [],
380
+ typenumberList: [],
381
+ brandspec: this.$appdata.getParam('品名及规格'),
306
382
  printstyle: this.$appdata.getParam('打印格式'),
307
383
  paytype: this.$appdata.getParam('付款方式'),
308
384
  feetype: this.$appdata.getParam('其他费用'),
@@ -313,7 +389,6 @@ export default {
313
389
  props: ['row'],
314
390
  ready () {
315
391
  // this.model.f_unitprice = this.$appdata.getSingleValue('置换气费')
316
- this.setbrandspec()
317
392
  asyncOtherCharge(this)
318
393
  },
319
394
  watch: {
@@ -324,10 +399,13 @@ export default {
324
399
  }
325
400
  },
326
401
  methods: {
327
- async setbrandspec () {
328
- let data = {f_orgname: this.$login.f.orgs}
329
- let res = await this.$resetpost('rs/logic/getdevice', data, {resolveMsg: null, rejectMsg: null})
330
- this.brandspec = res.data
402
+ setTypeprice (val) {
403
+ if (val && this.model.otherdetail[val] && this.model.otherdetail[val].f_typenumber) {
404
+ let unitprice = this.$appdata.getSingleValue(this.model.otherdetail[val].f_typenumber)
405
+ if (unitprice !== undefined) {
406
+ this.model.otherdetail[val].f_unitprice = unitprice
407
+ }
408
+ }
331
409
  },
332
410
  async createQianfei () {
333
411
  let data = {
@@ -340,11 +418,14 @@ export default {
340
418
  f_address: this.row.f_address,
341
419
  f_user_type: this.row.f_user_type,
342
420
  f_gasproperties: this.row.f_gasproperties,
421
+ // f_number: model.f_number,
422
+ // f_unitprice: model.f_unitprice,
343
423
  f_collection: this.model.f_collection,
344
424
  f_comments: this.model.f_comments,
345
425
  f_payment: this.model.f_payment[0],
346
426
  f_voucher_number: this.model.f_voucher_number,
347
427
  f_bill_style: this.model.f_print[0],
428
+ // f_brand_spec: model.f_brand_spec[0],
348
429
  f_userinfo_id: this.row.f_userinfo_id,
349
430
  f_service_person: this.model.f_service_person[0],
350
431
  f_operat_type: '其他收费欠费登记',
@@ -395,6 +476,29 @@ export default {
395
476
  this.eticket_show = false
396
477
  this.$dispatch('success')
397
478
  },
479
+ async setTypename (val) {
480
+ this.f_typenumber = ''
481
+ this.f_unitprice = ''
482
+ this.typeNameList = this.$appdata.getParam(val)
483
+ let self = this
484
+ if (val == '开卡费') {
485
+ if (this.$appdata.getSingleValue('开卡费')) {
486
+ let money = this.$appdata.getSingleValue('开卡费')
487
+ await this.model.otherdetail.forEach(function (item) {
488
+ self.isflag = false
489
+ if (item.f_brand_spec[0] == '开卡费') {
490
+ item.f_unitprice = money
491
+ item.f_number = 1
492
+ self.isflag = true
493
+ }
494
+ })
495
+ this.getcollection()
496
+ }
497
+ }
498
+ },
499
+ setTypenumber (val) {
500
+ this.typenumberList = this.$appdata.getParam(val)
501
+ },
398
502
  async confirm (parameter) {
399
503
  let res = await this.$showMessage(`确定对客户${this.row.f_user_name}进行其他收费吗?`, ['confirm', 'cancel'])
400
504
  if (res != 'confirm') return
@@ -425,9 +529,9 @@ export default {
425
529
  let money = 0
426
530
  let flag = true
427
531
  this.model.otherdetail.forEach((item) => {
428
- if (!item.f_device.f_number || item.f_device.f_number == '0') flag = false
429
- if (item.f_device.f_unitprice && item.f_device.f_number) {
430
- money += ((item.f_device.f_unitprice - 0) * (item.f_device.f_number - 0)) - 0
532
+ if (!item.f_number || item.f_number == '0') flag = false
533
+ if (item.f_unitprice && item.f_number) {
534
+ money += ((item.f_unitprice - 0) * (item.f_number - 0)) - 0
431
535
  }
432
536
  })
433
537
  if (money != 0) {
@@ -436,7 +540,8 @@ export default {
436
540
  if (!flag) this.model.f_collection = ''
437
541
  },
438
542
  addadetail () {
439
- this.model.otherdetail.push({f_device: ['材料费']})
543
+ this.$set(`model.otherdetail[${this.model.otherdetail.length}]`, {f_brand_spec: ['材料费'], f_unitprice: '', f_number: ''})
544
+ console.log(JSON.stringify(this.model.otherdetail))
440
545
  },
441
546
  delthisdetail (index) {
442
547
  if (this.model.otherdetail.length > 1) {
@@ -460,11 +565,8 @@ export default {
460
565
  if (this.isflag) {
461
566
  if (this.model.f_collection && this.model.f_collection != '') {
462
567
  let collection = (parseFloat(this.model.f_collection - 0)).toFixed(2)
463
- if (collection > 0) {
464
- return !this.isflag
465
- } else {
466
- return !this.$v.valid
467
- }
568
+ if (collection > 0) return !this.isflag
569
+ else return !this.$v.valid
468
570
  } else {
469
571
  return !this.$v.valid
470
572
  }
@@ -483,6 +585,12 @@ export default {
483
585
  console.log('this.$login.r:', this.$login.r)
484
586
  console.log('this.$login.r.includes:', this.$login.r.includes('收费综合导出权限'))
485
587
  return this.$login.r ? this.$login.r : []
588
+ },
589
+ gettypename () {
590
+ return this.typeNameList
591
+ },
592
+ gettypenumber () {
593
+ return this.typenumberList
486
594
  }
487
595
  }
488
596
  }
@@ -59,7 +59,7 @@
59
59
  <td style="text-align: center;"><nobr>{{row.f_pregas}}</nobr></td>
60
60
  <td style="text-align: center;"><nobr>{{row.f_preamount}}</nobr></td>
61
61
  <td style="text-align: center;"><nobr>{{row.f_type }}</nobr></td>
62
- <td style="text-align: center;"><nobr>{{row.f_reason}}</nobr></td>
62
+ <td style="text-align: center;"><nobr>{{row.f_comments}}</nobr></td>
63
63
  <td style="text-align: center;"><nobr>{{row.f_operator}}</nobr></td>
64
64
  <td style="text-align: center;"><nobr>{{row.f_operate_date}}</nobr></td>
65
65
  </tr>