sale-client 3.6.112 → 3.6.114
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/FilesManage/UserDeviceInfoTest.vue +1 -1
- package/src/components/revenue/comprehen/SpecialUser/BlackList/BlackListList.vue +8 -0
- package/src/filiale/kelai/GarbageAdd.vue +61 -0
- package/src/filiale/kelai/GarbageEditManage.vue +136 -0
- package/src/filiale/kelai/GarbageList.vue +466 -0
- package/src/filiale/kelai/GarbageMain.vue +45 -0
- package/src/filiale/kelai/GarbageOperateMain.vue +180 -0
- package/src/filiale/kelai/sale.js +11 -0
- package/src/filiale/liaoyuan/NewPriceAdjustment.vue +1 -1
- package/src/filiale/liaoyuan/NewPriceAdjustmentWebmeter.vue +1 -1
- package/src/filiale/shanxian/components/revenue/CardMeterCenter.vue +40 -1
- package/src/filiale/wuhai/FileUserAddress.vue +9 -10
package/package.json
CHANGED
|
@@ -344,7 +344,7 @@ export default {
|
|
|
344
344
|
condition: `1=1`,
|
|
345
345
|
orderitem: 'id'
|
|
346
346
|
}
|
|
347
|
-
let res = await http.load('post', 'rs/sql/saleSingleTable', {data: data}, {resolveMsg: null, rejectMsg:
|
|
347
|
+
let res = await http.load('post', 'rs/sql/saleSingleTable', {data: data}, {resolveMsg: null, rejectMsg: null})
|
|
348
348
|
this.brands = []
|
|
349
349
|
for (let row of res.data) {
|
|
350
350
|
this.brands.push({label: row.f_brand, value: `${row.id}`})
|
|
@@ -111,6 +111,12 @@
|
|
|
111
111
|
condition="f_parameter_value >= '{} 00:00:00'"
|
|
112
112
|
></datepicker>
|
|
113
113
|
</div>
|
|
114
|
+
<div class="form-group" :class="{'col-sm-2':!$parent.$parent.$parent.isdetail, 'col-sm-3':$parent.$parent.$parent.isdetail}">
|
|
115
|
+
<label class="font_normal_body">操 作 人</label>
|
|
116
|
+
<input :size="model.f_operator ? model.f_operator.length * 2 : 4" class="input_search" condition="f_operator like '%{}%'" placeholder='操作人' style="width:60%"
|
|
117
|
+
type="text"
|
|
118
|
+
v-model="model.f_operator">
|
|
119
|
+
</div>
|
|
114
120
|
</div>
|
|
115
121
|
|
|
116
122
|
</div>
|
|
@@ -127,6 +133,7 @@
|
|
|
127
133
|
<th style="text-align: center;">地址</th>
|
|
128
134
|
<th style="text-align: center;" v-show='!$parent.$parent.$parent.$parent.isdetail'>安检日期</th>
|
|
129
135
|
<th style="text-align: center;" v-show='!$parent.$parent.$parent.$parent.isdetail'>限购日期</th>
|
|
136
|
+
<th style="text-align: center;" v-show='!$parent.$parent.$parent.$parent.isdetail'>操作人</th>
|
|
130
137
|
<th style="text-align: center;" v-show='!$parent.$parent.$parent.$parent.isdetail'>限购原因</th>
|
|
131
138
|
</tr>
|
|
132
139
|
</template>
|
|
@@ -141,6 +148,7 @@
|
|
|
141
148
|
<td style="text-align: center;">{{row.f_address}}</td>
|
|
142
149
|
<td style="text-align: center;" v-show='!$parent.$parent.$parent.$parent.isdetail'>{{row.f_offsite_time}}</td>
|
|
143
150
|
<td style="text-align: center;" v-show='!$parent.$parent.$parent.$parent.isdetail'>{{row.f_parameter_value}}</td>
|
|
151
|
+
<td style="text-align: center;" v-show='!$parent.$parent.$parent.$parent.isdetail'>{{row.f_operator}}</td>
|
|
144
152
|
<td style="text-align: center;" v-show='!$parent.$parent.$parent.$parent.isdetail'>{{row.f_comments}}</td>
|
|
145
153
|
</template>
|
|
146
154
|
<template partial='foot'></template>
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="auto">
|
|
3
|
+
<validator name='v'>
|
|
4
|
+
<form novalidate class="form-horizontal">
|
|
5
|
+
<p class="bg-info text-center" style="padding: 8px;font-size: 20px">操作记录</p>
|
|
6
|
+
<!-- <data-grid :model="inData" v-ref:grid partial='list'>
|
|
7
|
+
<template partial='head'>-->
|
|
8
|
+
<table class="list_area table_sy" style="width: 600px">
|
|
9
|
+
<tr>
|
|
10
|
+
<th style="text-align: center">序号</th>
|
|
11
|
+
<th style="text-align: center">修改内容</th>
|
|
12
|
+
<th style="text-align: center">变更前</th>
|
|
13
|
+
<th style="text-align: center">变更后</th>
|
|
14
|
+
<th style="text-align: center">状态</th>
|
|
15
|
+
<th style="text-align: center">修改时间</th>
|
|
16
|
+
<th style="text-align: center">操作人</th>
|
|
17
|
+
</tr>
|
|
18
|
+
|
|
19
|
+
<tr v-for="row in recordlist">
|
|
20
|
+
<td style="text-align: center;">{{$index + 1}}</td>
|
|
21
|
+
<td style="text-align: center;">{{row.chinesename}}</td>
|
|
22
|
+
<td style="text-align: center;">{{row.oldvalue}}</td>
|
|
23
|
+
<td style="text-align: center;">{{row.newvalue}}</td>
|
|
24
|
+
<td style="text-align: center;">{{row.state}}</td>
|
|
25
|
+
<td style="text-align: center;">{{row.modifitime}}</td>
|
|
26
|
+
<td style="text-align: center;">{{row.operator}}</td>
|
|
27
|
+
</tr>
|
|
28
|
+
</table>
|
|
29
|
+
</form>
|
|
30
|
+
|
|
31
|
+
</validator>
|
|
32
|
+
</div>
|
|
33
|
+
</template>
|
|
34
|
+
|
|
35
|
+
<script>
|
|
36
|
+
export default {
|
|
37
|
+
name: 'addwarehouse',
|
|
38
|
+
|
|
39
|
+
data () {
|
|
40
|
+
return {
|
|
41
|
+
inData: [],
|
|
42
|
+
obj: {},
|
|
43
|
+
userid: this.$login.f.id
|
|
44
|
+
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
props: {
|
|
48
|
+
recordlist: Array
|
|
49
|
+
},
|
|
50
|
+
created () {
|
|
51
|
+
},
|
|
52
|
+
ready () {
|
|
53
|
+
},
|
|
54
|
+
methods: {
|
|
55
|
+
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
</script>
|
|
59
|
+
|
|
60
|
+
<style lang="less">
|
|
61
|
+
</style>
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div id="unit" class="row" :class="{'binary':showItem}">
|
|
3
|
+
<div :class="{'basic-main':!showItem,'binary-left':showItem}" style="height:98%">
|
|
4
|
+
<garbage-list @select-changed="idsearch" :showMessage.sync="showAddMssage" v-if="stepControl"
|
|
5
|
+
v-ref:stocklist></garbage-list>
|
|
6
|
+
</div>
|
|
7
|
+
<div class="binary-right" v-show="showItem">
|
|
8
|
+
<garbage-main :recordlist="recordlist" :model="model" :oldmodel="oldmodel" v-show="showItem"
|
|
9
|
+
:f_distribution_state="f_distribution_state" :row="row" :rowsdata="rowsdata1"
|
|
10
|
+
:warehousename="warehousename"></garbage-main>
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
13
|
+
|
|
14
|
+
</template>
|
|
15
|
+
|
|
16
|
+
<script>
|
|
17
|
+
import {HttpResetClass} from 'vue-client'
|
|
18
|
+
export default {
|
|
19
|
+
title: '垃圾费费记录维护',
|
|
20
|
+
name: 'GarbageManage',
|
|
21
|
+
data () {
|
|
22
|
+
return {
|
|
23
|
+
showupload: false,
|
|
24
|
+
recordlist: [],
|
|
25
|
+
model: {},
|
|
26
|
+
oldmodel: {},
|
|
27
|
+
showAddMssage: false,
|
|
28
|
+
// 分配状态z
|
|
29
|
+
f_distribution_state: '',
|
|
30
|
+
// 单选数据
|
|
31
|
+
row: {},
|
|
32
|
+
// 多选数据
|
|
33
|
+
rowsdata: [],
|
|
34
|
+
rowsdata1: {},
|
|
35
|
+
stepControl: true,
|
|
36
|
+
warehousename: '',
|
|
37
|
+
showItem: false
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
created () {
|
|
41
|
+
},
|
|
42
|
+
ready () {
|
|
43
|
+
this.arrAddFun()
|
|
44
|
+
},
|
|
45
|
+
methods: {
|
|
46
|
+
arrAddFun () {
|
|
47
|
+
// 拓展数组去空值的方法
|
|
48
|
+
Array.prototype.removeEmpty = function () {
|
|
49
|
+
for (var i = 0; i < this.length; i++) {
|
|
50
|
+
if (this[i] == '' || typeof (this[i]) == 'undefined') {
|
|
51
|
+
this.splice(i, 1)
|
|
52
|
+
i--
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return this
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
// 合并二维数组并去空
|
|
59
|
+
mergeRowData (rowsdata) {
|
|
60
|
+
let data = []
|
|
61
|
+
// 合并
|
|
62
|
+
for (let array of rowsdata) {
|
|
63
|
+
data.push.apply(data, array)
|
|
64
|
+
}
|
|
65
|
+
// 去空
|
|
66
|
+
data = data.removeEmpty()
|
|
67
|
+
this.rowsdata = data
|
|
68
|
+
},
|
|
69
|
+
selected (row) {
|
|
70
|
+
this.row = row.val
|
|
71
|
+
},
|
|
72
|
+
join (rowsdata) {
|
|
73
|
+
},
|
|
74
|
+
idsearch (row) {
|
|
75
|
+
this.$refs.stocklist.editList = true
|
|
76
|
+
this.showAddMssage = true
|
|
77
|
+
this.showItem = true
|
|
78
|
+
this.model = JSON.parse(JSON.stringify(row.val))
|
|
79
|
+
this.oldmodel = JSON.parse(JSON.stringify(row.val))
|
|
80
|
+
this.getGroupData()
|
|
81
|
+
},
|
|
82
|
+
getGroupData () {
|
|
83
|
+
let data = {}
|
|
84
|
+
let condition = ' garbage_id= ' + this.model.id
|
|
85
|
+
condition += " and tablename='t_flotsamprice'"
|
|
86
|
+
data.condition = condition
|
|
87
|
+
let http = new HttpResetClass()
|
|
88
|
+
http.load('POST', 'rs/logic/OperationRecord',
|
|
89
|
+
{data: data},
|
|
90
|
+
{resolveMsg: null, rejectMsg: null}).then((res) => {
|
|
91
|
+
this.recordlist = res.data
|
|
92
|
+
})
|
|
93
|
+
}
|
|
94
|
+
},
|
|
95
|
+
events: {
|
|
96
|
+
'change-state' (state) {
|
|
97
|
+
this.f_distribution_state = state
|
|
98
|
+
this.rowsdata1 = {}
|
|
99
|
+
},
|
|
100
|
+
'getwarehouse' (a) {
|
|
101
|
+
this.warehousename = a
|
|
102
|
+
},
|
|
103
|
+
'change-receive' (state) {
|
|
104
|
+
this.f_distribution_state = state
|
|
105
|
+
},
|
|
106
|
+
'change-state1' (state) {
|
|
107
|
+
console.log('选择分配状态', state)
|
|
108
|
+
this.rowsdata1 = {}
|
|
109
|
+
},
|
|
110
|
+
'select' (rowsdata) {
|
|
111
|
+
this.mergeRowData(rowsdata)
|
|
112
|
+
},
|
|
113
|
+
'join' (rowsdata) {
|
|
114
|
+
this.rowsdata1 = Object.assign({}, rowsdata)
|
|
115
|
+
console.log('111:', this.rowsdata1)
|
|
116
|
+
},
|
|
117
|
+
// 重新查询
|
|
118
|
+
'refresh' () {
|
|
119
|
+
},
|
|
120
|
+
'close' () {
|
|
121
|
+
this.$refs.stocklist.editList = false
|
|
122
|
+
this.showItem = false
|
|
123
|
+
this.$refs.stocklist.$refs.paged.$refs.criteria.search()
|
|
124
|
+
console.log('this.$refs', this.$refs)
|
|
125
|
+
console.log('showitem', this.showItem)
|
|
126
|
+
},
|
|
127
|
+
// 调拨组件选择调出仓库,根据选择仓库进行查询
|
|
128
|
+
'idsearch' (f_warehouse_id) {
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
</script>
|
|
133
|
+
|
|
134
|
+
<style lang="less">
|
|
135
|
+
|
|
136
|
+
</style>
|
|
@@ -0,0 +1,466 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<div style="flex: 1.5" class="flex">
|
|
4
|
+
<div class="flex">
|
|
5
|
+
<criteria-paged :model="model" v-ref:paged @sort="sort">
|
|
6
|
+
<criteria partial='criteria' v-ref:criteria @condition-changed="$parent.selfSearch"
|
|
7
|
+
v-show="$parent.searchshow">
|
|
8
|
+
<div novalidate class="form-inline auto" partial>
|
|
9
|
+
<div class="row">
|
|
10
|
+
<res-select-group :style="$parent.$parent.editList?'col-sm-4 form-group':'col-sm-2 form-group'" :initres="$parent.$parent.initres" :show-component="['company']" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
|
|
11
|
+
<div
|
|
12
|
+
:class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
|
|
13
|
+
class="form-group">
|
|
14
|
+
<label class="font_normal_body">用户编号</label>
|
|
15
|
+
<input type="text" class="input_search" style="width: 60%" v-model="model.f_userinfo_code"
|
|
16
|
+
condition="f_userinfo_code like '%{}%'" placeholder='用户编号'>
|
|
17
|
+
</div>
|
|
18
|
+
<div style="float:right;margin-top: 8px" class="span">
|
|
19
|
+
<!-- <button class="button_spacing button_search" @click="$parent.$parent.updateAll()">批量维护</button>-->
|
|
20
|
+
<button class="button_spacing button_search" @click="search()">查 询</button>
|
|
21
|
+
<export-excel v-if="$parent.$parent.excelTable"
|
|
22
|
+
class="auto"
|
|
23
|
+
:data="{condition: $parent.$parent.condition}"
|
|
24
|
+
:field="$parent.$parent.getfield"
|
|
25
|
+
sqlurl="rs/logic/saleExport" progress="saleGetExportProgress" sql-name="getGarbageRecords"
|
|
26
|
+
template-name='垃圾费记录'
|
|
27
|
+
:choose-col="true"></export-excel>
|
|
28
|
+
<div
|
|
29
|
+
:class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
|
|
30
|
+
@click="$parent.$parent.hidden()"
|
|
31
|
+
class="button_spacing"
|
|
32
|
+
style="float: right"></div>
|
|
33
|
+
</div>
|
|
34
|
+
</div>
|
|
35
|
+
<div class="row" v-if="$parent.$parent.criteriaShow">
|
|
36
|
+
<div
|
|
37
|
+
:class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
|
|
38
|
+
class="form-group">
|
|
39
|
+
<label class="font_normal_body">用户姓名</label>
|
|
40
|
+
<input type="text" class="input_search" style="width: 60%" v-model="model.f_user_name"
|
|
41
|
+
condition="f_user_name = '{}'" placeholder='用户姓名'>
|
|
42
|
+
</div>
|
|
43
|
+
<div
|
|
44
|
+
:class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
|
|
45
|
+
class="form-group">
|
|
46
|
+
<label class="font_normal_body">开始日期</label>
|
|
47
|
+
<datepicker placeholder="开始日期" v-model="model.startDate" :value.sync="model.startDate" style="width:60%"
|
|
48
|
+
:format="'yyyy-MM-dd 00:00:00'" condition="f_operate_date >= '{}'">
|
|
49
|
+
</datepicker>
|
|
50
|
+
</div>
|
|
51
|
+
<div
|
|
52
|
+
:class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
|
|
53
|
+
class="form-group">
|
|
54
|
+
<label class="font_normal_body">结束日期</label>
|
|
55
|
+
<datepicker placeholder="结束日期" v-model="model.endDate" :value.sync="model.endDate" style="width:60%"
|
|
56
|
+
:format="'yyyy-MM-dd 23:59:59'" condition="f_operate_date <= '{}'">
|
|
57
|
+
</datepicker>
|
|
58
|
+
</div>
|
|
59
|
+
</div>
|
|
60
|
+
</div>
|
|
61
|
+
</criteria>
|
|
62
|
+
<data-grid :model="model" v-ref:grid class="list_area table_sy" partial='list'>
|
|
63
|
+
<template partial='head'>
|
|
64
|
+
<tr>
|
|
65
|
+
<!-- <th>-->
|
|
66
|
+
<!-- <nobr>全选</nobr>-->
|
|
67
|
+
<!-- <input @keyup.enter="search" style="width:60%" type="checkbox" v-model='checked1' :checked="$parent.$parent.$parent.checked1"-->
|
|
68
|
+
<!-- @click="$parent.$parent.$parent.checkedALL()"></th>-->
|
|
69
|
+
<th><nobr>序号</nobr></th>
|
|
70
|
+
<th><nobr>用户编号</nobr></th>
|
|
71
|
+
<th><nobr>用户姓名</nobr></th>
|
|
72
|
+
<th><nobr>单价</nobr></th>
|
|
73
|
+
<th><nobr>金额</nobr></th>
|
|
74
|
+
<th><nobr>付款方式</nobr></th>
|
|
75
|
+
<th><nobr>跨月数</nobr></th>
|
|
76
|
+
<th><nobr>所属日期</nobr></th>
|
|
77
|
+
<th><nobr>操作时间</nobr></th>
|
|
78
|
+
<th><nobr>操作员</nobr></th>
|
|
79
|
+
<th><nobr>所属部门</nobr></th>
|
|
80
|
+
<th><nobr>所属公司</nobr></th>
|
|
81
|
+
|
|
82
|
+
</tr>
|
|
83
|
+
</template>
|
|
84
|
+
<template partial='body'>
|
|
85
|
+
<!-- <td style="text-align: center;">-->
|
|
86
|
+
<!-- <input @keyup.enter="search" style="width:60%" type="checkbox" checked="checked" name="opertioninput"-->
|
|
87
|
+
<!-- @click="$parent.$parent.$parent.checked(row)"></td>-->
|
|
88
|
+
<td style="text-align: center;">{{ $index + 1 }}</td>
|
|
89
|
+
<td style="text-align: center;"><nobr>{{row.f_userinfo_code}}</nobr></td>
|
|
90
|
+
<td style="text-align: center;"><nobr>{{row.f_user_name}}</nobr></td>
|
|
91
|
+
<td style="text-align: center;"><nobr>{{row.f_price}}</nobr></td>
|
|
92
|
+
<td style="text-align: center;"><nobr>{{row.f_money}}</nobr></td>
|
|
93
|
+
<td style="text-align: center;"><nobr>{{row.f_payment}}</nobr></td>
|
|
94
|
+
<td style="text-align: center;"><nobr>{{row.f_month}}</nobr></td>
|
|
95
|
+
<td style="text-align: center;"><nobr>{{row.f_hand_date}}</nobr></td>
|
|
96
|
+
<td style="text-align: center;"><nobr>{{row.f_operate_date}}</nobr></td>
|
|
97
|
+
<td style="text-align: center;"><nobr>{{row.f_operator}}</nobr></td>
|
|
98
|
+
<td style="text-align: center;"><nobr>{{row.f_depname}}</nobr></td>
|
|
99
|
+
<td style="text-align: center;"><nobr>{{row.f_orgname}}</nobr></td>
|
|
100
|
+
</template>
|
|
101
|
+
</data-grid>
|
|
102
|
+
</criteria-paged>
|
|
103
|
+
</div>
|
|
104
|
+
</div>
|
|
105
|
+
</div>
|
|
106
|
+
<modal :show.sync="updateall" width="1200px" backdrop="true">
|
|
107
|
+
<header slot="modal-header" class="modal-header">
|
|
108
|
+
<h3 style="color:black" class="modal-title">批量维护</h3>
|
|
109
|
+
</header>
|
|
110
|
+
<article slot="modal-body" class="modal-body">
|
|
111
|
+
<validator name='v'>
|
|
112
|
+
<form class="form-horizontal select-overspread">
|
|
113
|
+
<div class="row">
|
|
114
|
+
<div class="col-sm-6 form-input-group">
|
|
115
|
+
<label class="font_normal_body col-sm-3">付款方式</label>
|
|
116
|
+
<v-select :disabled=false
|
|
117
|
+
:options='$parent.$parent.f_payment'
|
|
118
|
+
:value-single="true"
|
|
119
|
+
:value.sync="model.f_payment"
|
|
120
|
+
close-on-select
|
|
121
|
+
placeholder='请选择'
|
|
122
|
+
v-model="model.f_payment"
|
|
123
|
+
search=fasle
|
|
124
|
+
>
|
|
125
|
+
</v-select>
|
|
126
|
+
</div>
|
|
127
|
+
</div>
|
|
128
|
+
</form>
|
|
129
|
+
</validator>
|
|
130
|
+
</article>
|
|
131
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
132
|
+
<button class="button_search btn-gn" @click="confirm">确认</button>
|
|
133
|
+
<button class="button_clear btn-gn" @click="cancel">取消</button>
|
|
134
|
+
</footer>
|
|
135
|
+
</modal>
|
|
136
|
+
</template>
|
|
137
|
+
|
|
138
|
+
<script>
|
|
139
|
+
import {PagedList} from 'vue-client'
|
|
140
|
+
const myMap = new Map()
|
|
141
|
+
|
|
142
|
+
export default {
|
|
143
|
+
'title': '收费记录维护',
|
|
144
|
+
data () {
|
|
145
|
+
return {
|
|
146
|
+
usertypes: this.$appdata.getParam('客户类型') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('客户类型')] : [],
|
|
147
|
+
f_payment: this.$appdata.getParam('付款方式查询') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('付款方式查询')] : [],
|
|
148
|
+
model: new PagedList('rs/sql/getGarbageRecords', 20,{}),
|
|
149
|
+
// model: new PagedList('rs/sql/singleTable_OrderBy', 20, {items: '"s.*,ui.f_userinfo_code"', tablename: '"t_sellinggas s left join t_userinfo ui on s.f_userinfo_id=ui.f_userinfo_id"', orderitem: '"f_delivery_date"'}),
|
|
150
|
+
// 排序
|
|
151
|
+
orderitem: 'f_operate_date desc',
|
|
152
|
+
orderFields: {
|
|
153
|
+
f_operate_date: 'no'
|
|
154
|
+
},
|
|
155
|
+
// 控制查询条件显示
|
|
156
|
+
searchshow: true,
|
|
157
|
+
criteriaShow: false,
|
|
158
|
+
// 控制样式
|
|
159
|
+
editList: false,
|
|
160
|
+
// 公司下拉
|
|
161
|
+
curorgid: [this.$login.f.orgid],
|
|
162
|
+
excelTable: true,
|
|
163
|
+
condition: '',
|
|
164
|
+
getfield: {
|
|
165
|
+
'f_userinfo_code': '用户编号',
|
|
166
|
+
'f_user_name': '用户姓名',
|
|
167
|
+
'f_price': '单价',
|
|
168
|
+
'f_money': '金额',
|
|
169
|
+
'f_payment': '收费形式',
|
|
170
|
+
'f_month': '跨月数',
|
|
171
|
+
'f_hand_date': '所属时间',
|
|
172
|
+
'f_operate_date': '收费时间',
|
|
173
|
+
'f_operator': '操作员',
|
|
174
|
+
'f_depname': '所属部门',
|
|
175
|
+
'f_orgname': '所属公司'
|
|
176
|
+
},
|
|
177
|
+
f_orgid: '',
|
|
178
|
+
checked1: true,
|
|
179
|
+
map: new Map(),
|
|
180
|
+
updateall:false,
|
|
181
|
+
da: {
|
|
182
|
+
rows: []
|
|
183
|
+
},
|
|
184
|
+
initres: {
|
|
185
|
+
org: [this.$login.f.orgid],
|
|
186
|
+
dep: [],
|
|
187
|
+
user: []
|
|
188
|
+
},
|
|
189
|
+
orgCondtionStr: '',
|
|
190
|
+
f_meternumber: '',
|
|
191
|
+
updatemodel:{
|
|
192
|
+
f_accounting_date: this.$login.toStandardTimeString()
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
},
|
|
196
|
+
ready () {
|
|
197
|
+
this.$refs.paged.$refs.criteria.model.startDate = this.$login.toStandardDateString() + ' 00:00:00'
|
|
198
|
+
this.$refs.paged.$refs.criteria.model.endDate = this.$login.toStandardDateString() + ' 23:59:59'
|
|
199
|
+
// this.search()
|
|
200
|
+
// this.getwarehouse()
|
|
201
|
+
},
|
|
202
|
+
events: {
|
|
203
|
+
'showfiles' (val) {
|
|
204
|
+
console.log(val)
|
|
205
|
+
}
|
|
206
|
+
},
|
|
207
|
+
props: ['showMessage'],
|
|
208
|
+
methods: {
|
|
209
|
+
updateAll(){
|
|
210
|
+
this.updateall = true
|
|
211
|
+
},
|
|
212
|
+
cancel(){
|
|
213
|
+
this.updateall = false
|
|
214
|
+
this.updatemodel = {
|
|
215
|
+
f_accounting_date: this.$login.toStandardTimeString()
|
|
216
|
+
}
|
|
217
|
+
},
|
|
218
|
+
async getRes(condition,obj) {
|
|
219
|
+
this.orgCondtionStr = condition
|
|
220
|
+
this.orgname = obj.orgnames[0]
|
|
221
|
+
this.depname = obj.depnames[0]
|
|
222
|
+
|
|
223
|
+
},
|
|
224
|
+
// async confirm(){
|
|
225
|
+
// let array = []
|
|
226
|
+
// this.map.forEach((value, key, map) => {
|
|
227
|
+
// array.push(map.get(key))
|
|
228
|
+
// })
|
|
229
|
+
// console.log('asdasd',array)
|
|
230
|
+
// if (array.length>0){
|
|
231
|
+
// let condition = `id in (''`
|
|
232
|
+
// array.forEach((row) => {
|
|
233
|
+
// condition = condition+`,'${row.id}'`
|
|
234
|
+
// })
|
|
235
|
+
// condition = condition+ `)`
|
|
236
|
+
//
|
|
237
|
+
// console.log('asdasd',condition)
|
|
238
|
+
// await this.$resetpost('rs/logic/updatesellinggas',{updatemodel:this.updatemodel,condition:condition})
|
|
239
|
+
// this.search()
|
|
240
|
+
// this.cancel()
|
|
241
|
+
// } else{
|
|
242
|
+
// this.$showMessage('当前未勾选用户,将为所有查询出来的用户添加限购,确定要操作吗?', ['confirm', 'cancel']).then(async (res) => {
|
|
243
|
+
// if (res === 'confirm') {
|
|
244
|
+
// await this.$resetpost('rs/logic/updatesellinggas',{updatemodel:this.updatemodel,condition:this.condition})
|
|
245
|
+
// this.search()
|
|
246
|
+
// this.cancel()
|
|
247
|
+
// }
|
|
248
|
+
// })
|
|
249
|
+
//
|
|
250
|
+
// }
|
|
251
|
+
// },
|
|
252
|
+
checkedALL () {
|
|
253
|
+
this.checked1 = !this.checked1
|
|
254
|
+
let box = document.getElementsByName('opertioninput')
|
|
255
|
+
for (var i = 0; i < box.length; i++) {
|
|
256
|
+
box[i].checked = this.checked1
|
|
257
|
+
}
|
|
258
|
+
},
|
|
259
|
+
checked (val) {
|
|
260
|
+
let id = val.id
|
|
261
|
+
if (this.map.has(id)) {
|
|
262
|
+
this.map.delete(id)
|
|
263
|
+
} else {
|
|
264
|
+
this.map.set(id, {id: id})
|
|
265
|
+
}
|
|
266
|
+
},
|
|
267
|
+
mapset (array) {
|
|
268
|
+
this.map.clear()
|
|
269
|
+
for (let i = 0; i < array.length; i++) {
|
|
270
|
+
let id = array[i].id
|
|
271
|
+
this.map.set(id, {id: id})
|
|
272
|
+
}
|
|
273
|
+
},
|
|
274
|
+
hidden () {
|
|
275
|
+
this.criteriaShow = !this.criteriaShow
|
|
276
|
+
},
|
|
277
|
+
getorg (val) {
|
|
278
|
+
this.f_orgid = this.$login.convertToIn(val)
|
|
279
|
+
this.f_filialeid = val[0]
|
|
280
|
+
},
|
|
281
|
+
view (row) {
|
|
282
|
+
this.$parent.showupload = true
|
|
283
|
+
this.$parent.row = row
|
|
284
|
+
},
|
|
285
|
+
init () {
|
|
286
|
+
this.f_meternumber = ''
|
|
287
|
+
this.da.rows = []
|
|
288
|
+
myMap.clear()
|
|
289
|
+
},
|
|
290
|
+
cancelSet () {
|
|
291
|
+
this.showSetModal = false
|
|
292
|
+
this.init()
|
|
293
|
+
},
|
|
294
|
+
|
|
295
|
+
jump () {
|
|
296
|
+
this.joinshow2 = false
|
|
297
|
+
this.showSetModal = true
|
|
298
|
+
},
|
|
299
|
+
async getwarehouse () {
|
|
300
|
+
|
|
301
|
+
},
|
|
302
|
+
|
|
303
|
+
join1 (row) {
|
|
304
|
+
this.joinrow = row
|
|
305
|
+
this.joinshow = true
|
|
306
|
+
},
|
|
307
|
+
|
|
308
|
+
joinclose () {
|
|
309
|
+
this.joinshow = false
|
|
310
|
+
},
|
|
311
|
+
joinclose2 () {
|
|
312
|
+
this.joinshow2 = false
|
|
313
|
+
},
|
|
314
|
+
|
|
315
|
+
sort (field, rule) {
|
|
316
|
+
// 将所有排序方式设为不排序,实现相互排斥
|
|
317
|
+
for (let key in this.orderFields) {
|
|
318
|
+
if (key === field) {
|
|
319
|
+
this.orderFields[key] = rule
|
|
320
|
+
} else {
|
|
321
|
+
this.orderFields[key] = 'no'
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
// 如果新规则不排序,还原为默认排序
|
|
325
|
+
if (rule === 'no') {
|
|
326
|
+
this.model.paramSource.orderitem = `'${this.orderitem}'`
|
|
327
|
+
} else {
|
|
328
|
+
this.model.paramSource.orderitem = `'${field} ${rule}'`
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
this.search()
|
|
332
|
+
},
|
|
333
|
+
search () {
|
|
334
|
+
this.$refs.paged.$refs.criteria.search()
|
|
335
|
+
},
|
|
336
|
+
importFile () {
|
|
337
|
+
this.show = true
|
|
338
|
+
},
|
|
339
|
+
selfSearch (args) {
|
|
340
|
+
if (!this.$refs.paged.$refs.criteria.model.startDate) {
|
|
341
|
+
this.$refs.paged.$refs.criteria.model.startDate = this.$login.toStandardDateString() + ' 00:00:00'
|
|
342
|
+
}
|
|
343
|
+
if (!this.$refs.paged.$refs.criteria.model.endDate) {
|
|
344
|
+
this.$refs.paged.$refs.criteria.model.endDate = this.$login.toStandardDateString() + ' 23:59:59'
|
|
345
|
+
}
|
|
346
|
+
if (!this.orgCondtionStr) {
|
|
347
|
+
args.condition = `${args.condition}` + ' and f_orgid = ' + this.$login.f.orgid
|
|
348
|
+
} else {
|
|
349
|
+
args.condition = `${args.condition}` + this.orgCondtionStr
|
|
350
|
+
}
|
|
351
|
+
this.model.search(args.condition, args.model)
|
|
352
|
+
this.condition = args.condition
|
|
353
|
+
},
|
|
354
|
+
mergeRowData (joinrows) {
|
|
355
|
+
|
|
356
|
+
},
|
|
357
|
+
// 多选框初始化
|
|
358
|
+
selectInit () {
|
|
359
|
+
this.rowsdata = []
|
|
360
|
+
this.all = []
|
|
361
|
+
this.radio = []
|
|
362
|
+
},
|
|
363
|
+
select () {
|
|
364
|
+
let index = this.model1.pageIndex - 1
|
|
365
|
+
console.log('全选', this.all[index])
|
|
366
|
+
if (!this.radio[index]) {
|
|
367
|
+
this.radio.$set(index, [])
|
|
368
|
+
}
|
|
369
|
+
if (this.all[index]) {
|
|
370
|
+
// 数据
|
|
371
|
+
this.rowsdata[index] = Object.assign([], this.model1.rows)
|
|
372
|
+
// 勾选
|
|
373
|
+
for (var i = 0; i < this.model1.rows.length; i++) {
|
|
374
|
+
this.radio[index].$set(i, true)
|
|
375
|
+
}
|
|
376
|
+
} else {
|
|
377
|
+
// 数据
|
|
378
|
+
this.rowsdata[index] = []
|
|
379
|
+
// 不勾选
|
|
380
|
+
for (var i = 0; i < this.model1.rows.length; i++) {
|
|
381
|
+
this.radio[index].$set(i, false)
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
},
|
|
385
|
+
selectOne (event, row, i) {
|
|
386
|
+
console.log('单选', event.target.checked)
|
|
387
|
+
let index = this.model1.pageIndex - 1
|
|
388
|
+
if (!this.rowsdata[index]) {
|
|
389
|
+
this.rowsdata[index] = []
|
|
390
|
+
}
|
|
391
|
+
if (!this.radio[index]) {
|
|
392
|
+
this.radio.$set(index, [])
|
|
393
|
+
}
|
|
394
|
+
if (event.target.checked) {
|
|
395
|
+
// 数据
|
|
396
|
+
this.rowsdata[index][i] = row
|
|
397
|
+
// 勾选
|
|
398
|
+
this.radio[index].$set(i, true)
|
|
399
|
+
// 判断是否全部选中
|
|
400
|
+
var allState = true
|
|
401
|
+
if (this.model1.rows.length != this.radio[index].length) {
|
|
402
|
+
allState = false
|
|
403
|
+
}
|
|
404
|
+
for (var state of this.radio[index]) {
|
|
405
|
+
if (!state) {
|
|
406
|
+
allState = false
|
|
407
|
+
}
|
|
408
|
+
}
|
|
409
|
+
if (allState) {
|
|
410
|
+
this.all.$set(index, true)
|
|
411
|
+
} else {
|
|
412
|
+
this.all.$set(index, false)
|
|
413
|
+
}
|
|
414
|
+
} else {
|
|
415
|
+
// 数据
|
|
416
|
+
this.rowsdata[index][i] = []
|
|
417
|
+
// 不勾选
|
|
418
|
+
this.radio[index].$set(i, false)
|
|
419
|
+
// 任意取消一个则全选状态设为false
|
|
420
|
+
this.all.$set(index, false)
|
|
421
|
+
}
|
|
422
|
+
}
|
|
423
|
+
},
|
|
424
|
+
computed: {
|
|
425
|
+
ischecked () {
|
|
426
|
+
return function (index, i) {
|
|
427
|
+
// console.log("计算属性")
|
|
428
|
+
if (!this.radio[index]) {
|
|
429
|
+
return false
|
|
430
|
+
}
|
|
431
|
+
return this.radio[index][i]
|
|
432
|
+
}
|
|
433
|
+
},
|
|
434
|
+
distributionstate () {
|
|
435
|
+
return [{label: '全部', value: ''}, {label: '待分配', value: 'is null'}, {label: '已入库', value: 'is not null'}]
|
|
436
|
+
}
|
|
437
|
+
},
|
|
438
|
+
watch: {
|
|
439
|
+
'model.pageIndex' () {
|
|
440
|
+
this.checked1 = false
|
|
441
|
+
this.mapset(this.model.rows)
|
|
442
|
+
this.checkedALL()
|
|
443
|
+
},
|
|
444
|
+
'model.rows' () {
|
|
445
|
+
this.checked1 = false
|
|
446
|
+
this.mapset(this.model.rows)
|
|
447
|
+
this.checkedALL()
|
|
448
|
+
},
|
|
449
|
+
'checked1' (val) {
|
|
450
|
+
if (val) {
|
|
451
|
+
this.mapset(this.model.rows)
|
|
452
|
+
} else {
|
|
453
|
+
this.map.clear()
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
</script>
|
|
459
|
+
<style>
|
|
460
|
+
.datapanel {
|
|
461
|
+
color: #333;
|
|
462
|
+
background-color: white;
|
|
463
|
+
padding: 10px 20px;
|
|
464
|
+
border-radius: 15px;
|
|
465
|
+
}
|
|
466
|
+
</style>
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div style="padding-right:25px;padding-left: 20px;">
|
|
3
|
+
<!--分配状态是全部-->
|
|
4
|
+
<tabset >
|
|
5
|
+
<tab header="具体信息">
|
|
6
|
+
<garbage-operate-main :model="model" :oldmodel="oldmodel"></garbage-operate-main>
|
|
7
|
+
</tab>
|
|
8
|
+
<tab header="操作记录">
|
|
9
|
+
<garbage-add :recordlist="recordlist"></garbage-add>
|
|
10
|
+
</tab>
|
|
11
|
+
</tabset>
|
|
12
|
+
</div>
|
|
13
|
+
</template>
|
|
14
|
+
<script>
|
|
15
|
+
export default {
|
|
16
|
+
name: 'WareHouseOperation',
|
|
17
|
+
data () {
|
|
18
|
+
return {
|
|
19
|
+
showupload: false
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
props: {
|
|
23
|
+
recordlist: Array,
|
|
24
|
+
// row: Object,
|
|
25
|
+
model: Object,
|
|
26
|
+
oldmodel: Object
|
|
27
|
+
},
|
|
28
|
+
created () {
|
|
29
|
+
},
|
|
30
|
+
ready () {
|
|
31
|
+
|
|
32
|
+
},
|
|
33
|
+
methods: {
|
|
34
|
+
},
|
|
35
|
+
events: {
|
|
36
|
+
'showfiles' (val) {
|
|
37
|
+
console.log('events!!!!!!!!!!!!!', val)
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
</script>
|
|
42
|
+
|
|
43
|
+
<style lang="less">
|
|
44
|
+
|
|
45
|
+
</style>
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="auto">
|
|
3
|
+
<validator name='a' @valid="addressValid(true)" @invalid="addressValid(false)">
|
|
4
|
+
<form class="form-horizontal">
|
|
5
|
+
<div class="row">
|
|
6
|
+
<div class="col-sm-4 form-group">
|
|
7
|
+
<label class="font_normal_body">用户姓名</label>
|
|
8
|
+
<input type="text" v-model="model.f_user_name" disabled=disabled style="width: 60%" class="input_search">
|
|
9
|
+
</div>
|
|
10
|
+
<div class="col-sm-4 form-group">
|
|
11
|
+
<label class="font_normal_body" title="参数:收费状态">收费状态</label>
|
|
12
|
+
<input type="text" v-model="model.f_state" disabled=disabled style="width: 60%" class="input_search">
|
|
13
|
+
</div>
|
|
14
|
+
<div class="col-sm-4 form-group">
|
|
15
|
+
<label class="font_normal_body" title="参数:付款方式查询">付款方式</label>
|
|
16
|
+
<v-select :value.sync="model.f_payment" v-model="model.f_payment"
|
|
17
|
+
:options='payments' placeholder='付款方式'
|
|
18
|
+
:value-single="true"
|
|
19
|
+
:search="false"
|
|
20
|
+
close-on-select>
|
|
21
|
+
</v-select>
|
|
22
|
+
</div>
|
|
23
|
+
<div class="col-sm-4 form-group">
|
|
24
|
+
<label class="font_normal_body">购买单价</label>
|
|
25
|
+
<input type="text" v-model="model.f_price" disabled=disabled style="width: 60%" class="input_search">
|
|
26
|
+
</div>
|
|
27
|
+
<div class="col-sm-4 form-group">
|
|
28
|
+
<label class="font_normal_body">收款金额</label>
|
|
29
|
+
<input type="text" v-model="model.f_money" disabled=disabled style="width: 60%" class="input_search">
|
|
30
|
+
</div>
|
|
31
|
+
<div class="col-sm-4 form-group">
|
|
32
|
+
<label class="font_normal_body">所跨月数</label>
|
|
33
|
+
<input type="text" v-model="model.f_month" disabled=disabled style="width: 60%" class="input_search">
|
|
34
|
+
</div>
|
|
35
|
+
<div class="col-sm-6 form-group">
|
|
36
|
+
<label class="form-group">所属日期</label>
|
|
37
|
+
<input type="text" v-model="model.f_hand_date" disabled=disabled style="width: 60%" class="input_search">
|
|
38
|
+
</div>
|
|
39
|
+
<div class="col-sm-6 form-group">
|
|
40
|
+
<label class="form-group">操作日期</label>
|
|
41
|
+
<input type="text" v-model="model.f_operate_date" disabled=disabled style="width: 60%" class="input_search">
|
|
42
|
+
</div>
|
|
43
|
+
<!--<div class="col-sm-4 form-group">-->
|
|
44
|
+
<!--<label class="font_normal_body">收据类型</label>-->
|
|
45
|
+
<!--<input type="text" v-model="model.f_bill_style" style="width: 60%" class="input_search">-->
|
|
46
|
+
<!--</div>-->
|
|
47
|
+
</div>
|
|
48
|
+
|
|
49
|
+
<div class="row">
|
|
50
|
+
<div class="col-sm-4 form-group">
|
|
51
|
+
<label class="font_normal_body" title="参数:操作人员查询">操作人员</label>
|
|
52
|
+
<input type="text" v-model="model.f_operator" disabled=disabled style="width: 60%" class="input_search">
|
|
53
|
+
|
|
54
|
+
<!-- <v-select :value.sync="model.f_operator"-->
|
|
55
|
+
<!-- v-model="model.f_operator"-->
|
|
56
|
+
<!-- :value-single="true" @change="selectoperator()"-->
|
|
57
|
+
<!-- :options='foperator'-->
|
|
58
|
+
<!-- close-on-select></v-select>-->
|
|
59
|
+
<!-- @click="selectoperator"-->
|
|
60
|
+
</div>
|
|
61
|
+
<div class="col-sm-4 form-group">
|
|
62
|
+
<label class="font_normal_body">所属部门</label>
|
|
63
|
+
<input type="text" v-model="model.f_depname" disabled=disabled style="width: 60%" class="input_search">
|
|
64
|
+
</div>
|
|
65
|
+
<div class="col-sm-4 form-group">
|
|
66
|
+
<label class="font_normal_body">所属公司</label>
|
|
67
|
+
<input type="text" v-model="model.f_orgname" disabled=disabled style="width: 60%" class="input_search">
|
|
68
|
+
</div>
|
|
69
|
+
</div>
|
|
70
|
+
</form>
|
|
71
|
+
<div style="float: right">
|
|
72
|
+
<button class="button_search" @click="save">保存</button>
|
|
73
|
+
<button class="button_clear" @click="cancel">取消</button>
|
|
74
|
+
</div>
|
|
75
|
+
</validator>
|
|
76
|
+
</div>
|
|
77
|
+
</template>
|
|
78
|
+
<script>
|
|
79
|
+
import Vue from 'vue'
|
|
80
|
+
import {HttpResetClass} from 'vue-client'
|
|
81
|
+
import * as Util from "../../Util";
|
|
82
|
+
var data
|
|
83
|
+
export default {
|
|
84
|
+
title: '基本信息',
|
|
85
|
+
|
|
86
|
+
data () {
|
|
87
|
+
return {
|
|
88
|
+
equipmentType: this.$appdata.getParam('打印格式') ? [{label: '', value: ''}, ...this.$appdata.getParam('打印格式')] : [],
|
|
89
|
+
// 构建数组来存储对象
|
|
90
|
+
editbank: true,
|
|
91
|
+
uploadText: '收费',
|
|
92
|
+
showfiles: false,
|
|
93
|
+
recordList: [],
|
|
94
|
+
fileNameSet: {
|
|
95
|
+
'f_payment': '收费形式',
|
|
96
|
+
'f_serial_id': '流水号'
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
props: {
|
|
101
|
+
oldmodel: Object,
|
|
102
|
+
model: Object
|
|
103
|
+
},
|
|
104
|
+
|
|
105
|
+
ready () {
|
|
106
|
+
if (this.$login.r.includes('维护银行转账信息')) {
|
|
107
|
+
this.editbank = true
|
|
108
|
+
}
|
|
109
|
+
this.oldmodel = JSON.parse(JSON.stringify(this.model))
|
|
110
|
+
this.model.f_bill_state = [this.oldmodel]
|
|
111
|
+
console.log('看看收费id', this.oldmodel)
|
|
112
|
+
},
|
|
113
|
+
created () {
|
|
114
|
+
},
|
|
115
|
+
methods: {
|
|
116
|
+
|
|
117
|
+
cancel () {
|
|
118
|
+
this.$dispatch('close')
|
|
119
|
+
},
|
|
120
|
+
uploadFiles () {
|
|
121
|
+
this.showfiles = !this.showfiles
|
|
122
|
+
},
|
|
123
|
+
addressValid (val) {
|
|
124
|
+
},
|
|
125
|
+
save () {
|
|
126
|
+
this.recordList = []
|
|
127
|
+
for (var item in this.model) {
|
|
128
|
+
if (this.model.f_payment != this.oldmodel.f_payment && item==='f_payment' ) {
|
|
129
|
+
var car = {
|
|
130
|
+
chinesename: this.fileNameSet[item],
|
|
131
|
+
fieldname: item,
|
|
132
|
+
tablename: 't_flotsamprice',
|
|
133
|
+
oldvalue: this.oldmodel[item],
|
|
134
|
+
newvalue: this.model[item],
|
|
135
|
+
state: '有效',
|
|
136
|
+
modifitime: Util.toStandardTimeString(),
|
|
137
|
+
operator: this.$login.f.name,
|
|
138
|
+
garbage_id: this.model.id,
|
|
139
|
+
f_operator : this.$login.f.name,
|
|
140
|
+
f_operatorid : this.$login.f.id,
|
|
141
|
+
f_orgid : this.$login.f.orgid,
|
|
142
|
+
f_orgname : this.$login.f.orgs,
|
|
143
|
+
f_depid : this.$login.f.depids,
|
|
144
|
+
f_depname : this.$login.f.deps
|
|
145
|
+
|
|
146
|
+
}
|
|
147
|
+
this.recordList.push(car)
|
|
148
|
+
// 该方法并未对chinesename fieldname operator等进行判断赋值,此暂写为定值
|
|
149
|
+
console.log('看看car的值', car)
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
this.$resetpost('rs/logic/saveGarbage', {data: {recordlist: this.recordList, newData: this.model}}).then((res) => {
|
|
154
|
+
console.log('this.model', this.model)
|
|
155
|
+
})
|
|
156
|
+
this.$dispatch('close')
|
|
157
|
+
}
|
|
158
|
+
},
|
|
159
|
+
computed: {
|
|
160
|
+
foperator () {
|
|
161
|
+
return [...this.$appdata.getParam('操作人员')]
|
|
162
|
+
},
|
|
163
|
+
positions () {
|
|
164
|
+
return this.$appdata.getParam('收费状态')
|
|
165
|
+
},
|
|
166
|
+
payments () {
|
|
167
|
+
return this.$appdata.getParam('付款方式查询')
|
|
168
|
+
},
|
|
169
|
+
writeCards () {
|
|
170
|
+
return this.$appdata.getParam('写卡状态')
|
|
171
|
+
},
|
|
172
|
+
billStyles () {
|
|
173
|
+
return this.$appdata.getParam('收据类型')
|
|
174
|
+
}
|
|
175
|
+
},
|
|
176
|
+
watch: {
|
|
177
|
+
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
</script>
|
|
@@ -36,4 +36,15 @@ export default function () {
|
|
|
36
36
|
Vue.component('charge-modal', (resolve) => { require(['./ChargeModal'], resolve) })
|
|
37
37
|
// 业务操作组件
|
|
38
38
|
Vue.component('charge-oper', (resolve) => { require(['./ChargeOper'], resolve) })
|
|
39
|
+
//垃圾费维护主页面
|
|
40
|
+
Vue.component('garbage-edit-manage', (resolve) => { require(['./GarbageEditManage'], resolve) })
|
|
41
|
+
//垃圾费查询列表
|
|
42
|
+
Vue.component('garbage-list', (resolve) => { require(['./GarbageList'], resolve) })
|
|
43
|
+
//垃圾费右侧
|
|
44
|
+
Vue.component('garbage-main', (resolve) => { require(['./GarbageMain'], resolve) })
|
|
45
|
+
//垃圾费右侧
|
|
46
|
+
Vue.component('garbage-operate-main', (resolve) => { require(['./GarbageOperateMain'], resolve) })
|
|
47
|
+
//垃圾费右侧
|
|
48
|
+
Vue.component('garbage-add', (resolve) => { require(['./GarbageAdd'], resolve) })
|
|
49
|
+
|
|
39
50
|
}
|
|
@@ -388,7 +388,7 @@
|
|
|
388
388
|
let rs = []
|
|
389
389
|
for (let i = 0; i < res.data.length; i++) {
|
|
390
390
|
let temp = {
|
|
391
|
-
label: res.data[i].f_price_name
|
|
391
|
+
label: res.data[i].f_price_name+`(${res.data[i].id})`,
|
|
392
392
|
type:res.data[i].f_price_type,
|
|
393
393
|
flage: res.data[i].f_user_type,
|
|
394
394
|
value: res.data[i].id
|
|
@@ -318,7 +318,7 @@
|
|
|
318
318
|
let rs = []
|
|
319
319
|
for (let i = 0; i < res.data.length; i++) {
|
|
320
320
|
let temp = {
|
|
321
|
-
label: res.data[i].f_price_name
|
|
321
|
+
label: res.data[i].f_price_name+`(${res.data[i].id})`,
|
|
322
322
|
type:res.data[i].f_price_type,
|
|
323
323
|
flage: res.data[i].f_user_type,
|
|
324
324
|
value: res.data[i].id
|
|
@@ -565,11 +565,16 @@
|
|
|
565
565
|
privilegeList: [{label: '无优惠', value: '0'}],
|
|
566
566
|
BankTransfer: false,
|
|
567
567
|
// 小数是否支持,导致划价产生的多余气量,金额
|
|
568
|
-
dymoney: 0
|
|
568
|
+
dymoney: 0,
|
|
569
|
+
timeDate: this.$appdata.getSingleValue('卡表缴费间隔'),
|
|
570
|
+
timeShijian: 0
|
|
569
571
|
}
|
|
570
572
|
},
|
|
571
573
|
props: ['row', 'cardData'],
|
|
572
574
|
async ready () {
|
|
575
|
+
if (this.timeDate) {
|
|
576
|
+
this.lastPayFee(this.row)
|
|
577
|
+
}
|
|
573
578
|
if (this.authArr.includes('余额写卡限定')) {
|
|
574
579
|
this.paytype = [{label: '余额写卡', value: '余额写卡'}]
|
|
575
580
|
} else {
|
|
@@ -650,6 +655,40 @@
|
|
|
650
655
|
}
|
|
651
656
|
},
|
|
652
657
|
methods: {
|
|
658
|
+
// 最后一次缴费时间
|
|
659
|
+
async lastPayFee (da) {
|
|
660
|
+
let condition = `1=1 and f_state = '有效' and f_userinfo_id = '${da.f_userinfo_id}'`
|
|
661
|
+
let data = {
|
|
662
|
+
items: 'f_operate_date,f_state',
|
|
663
|
+
tablename: 't_sellinggas',
|
|
664
|
+
condition: condition,
|
|
665
|
+
orderitem: 'f_operate_date desc'
|
|
666
|
+
}
|
|
667
|
+
let res = await this.$resetpost('rs/sql/singleTable_OrderBy', {data: data}, {rejectMsg: '缴费记录查询出错', resolveMsg: null})
|
|
668
|
+
if (this.isDate(res.data[0].f_operate_date)) {
|
|
669
|
+
// this.$dispatch('refresh', this.row)
|
|
670
|
+
this.$showAlert('距离上次缴费时间过短,请在' + this.timeShijian + '分钟之后再进行缴费!', 'danger', 0)
|
|
671
|
+
this.$dispatch('cancelclean', this.row)
|
|
672
|
+
}
|
|
673
|
+
},
|
|
674
|
+
isDate (dated) {
|
|
675
|
+
let currentDate = new Date()
|
|
676
|
+
let inputDate = new Date(dated)
|
|
677
|
+
if (inputDate.getFullYear() === currentDate.getFullYear() &&
|
|
678
|
+
inputDate.getMonth() === currentDate.getMonth() &&
|
|
679
|
+
inputDate.getDate() === currentDate.getDate()) {
|
|
680
|
+
let timeDiff = Math.abs(currentDate.getTime() - inputDate.getTime())
|
|
681
|
+
let minutesDiff = Math.floor(timeDiff / (1000 * 60))
|
|
682
|
+
if (minutesDiff < this.timeDate) {
|
|
683
|
+
this.timeShijian = Math.abs(this.timeDate - minutesDiff)
|
|
684
|
+
return true
|
|
685
|
+
} else {
|
|
686
|
+
return false
|
|
687
|
+
}
|
|
688
|
+
} else {
|
|
689
|
+
return false
|
|
690
|
+
}
|
|
691
|
+
},
|
|
653
692
|
// 根据收款金额计算划价信息
|
|
654
693
|
// 需要配置 calculatePreByCollection = true
|
|
655
694
|
async calculatePreByCollection() {
|
|
@@ -12,35 +12,34 @@
|
|
|
12
12
|
<!--单个录入-->
|
|
13
13
|
<div v-if="onedata=='one'" class="row">
|
|
14
14
|
<div class="col-sm-6 form-group "
|
|
15
|
-
:class="[$v.
|
|
15
|
+
:class="[$v.pcd.required ? 'has-error' : 'has-success']">
|
|
16
16
|
<label class="font_normal_body">省 市 区</label>
|
|
17
|
-
<input type="text" style="width:41%" v-show="false" v-model="
|
|
18
|
-
>
|
|
17
|
+
<input type="text" style="width:41%" v-show="false" v-model="$refs.pcd.selectedItems" v-validate:pcd='{required: true }'>
|
|
19
18
|
<v-select :value.sync="model.f_pcd_id" :value-single="true"
|
|
20
19
|
:options='pcdslist' placeholder='请选择'
|
|
21
|
-
close-on-select search="true" @change="pcdChange" :disabled="!usertype">
|
|
20
|
+
close-on-select search="true" @change="pcdChange" :disabled="!usertype" v-ref:pcd>
|
|
22
21
|
</v-select>
|
|
23
22
|
</div>
|
|
24
23
|
|
|
25
24
|
<div class="col-sm-6 form-group " v-if="!usertype"
|
|
26
|
-
:class="[$v.
|
|
25
|
+
:class="[$v.street1.required ? 'has-error' : 'has-success']">
|
|
27
26
|
<label class="font_normal_body">街道名称</label>
|
|
28
|
-
<input type="text" style="width:41%" v-show="false" v-model="
|
|
27
|
+
<input type="text" style="width:41%" v-show="false" v-model="$refs.street1.selectedItems" v-validate:street1='{required: true }'
|
|
29
28
|
>
|
|
30
29
|
<v-select :value.sync="model.f_street_id" :value-single="true"
|
|
31
30
|
:options='streetslist' placeholder='请选择'
|
|
32
|
-
close-on-select search="true" :disabled="!usertype">
|
|
31
|
+
close-on-select search="true" :disabled="!usertype" v-ref:street1>
|
|
33
32
|
</v-select>
|
|
34
33
|
</div>
|
|
35
34
|
<div class="col-sm-6 form-group " v-if="usertype"
|
|
36
|
-
:class="[$v.
|
|
35
|
+
:class="[$v.street2.required ? 'has-error' : 'has-success']">
|
|
37
36
|
<label class="font_normal_body">街道名称</label>
|
|
38
|
-
<input type="text" style="width:41%" v-show="false" v-model="
|
|
37
|
+
<input type="text" style="width:41%" v-show="false" v-model="$refs.street2.selectedItems" v-validate:street2='{required: true }'
|
|
39
38
|
>
|
|
40
39
|
<v-select :value.sync="model.f_street_id" :value-single="true"
|
|
41
40
|
:options='streetslist' placeholder='请选择'
|
|
42
41
|
@change="streetChange"
|
|
43
|
-
close-on-select search="true" :disabled="!usertype">
|
|
42
|
+
close-on-select search="true" :disabled="!usertype" v-ref:street2>
|
|
44
43
|
</v-select>
|
|
45
44
|
</div>
|
|
46
45
|
<div class="col-sm-6 form-group " v-if="!usertype"
|