manage-client 3.3.87 → 3.3.89
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/SellReport/BusinessClassify.vue +3 -3
- package/src/components/SellReport/DepartmentPrick.vue +2 -13
- package/src/components/SellReport/ManageHandInputtor.vue +5 -5
- package/src/components/SellReport/ManageSellType.vue +8 -8
- package/src/components/SellReport/ManageUserCount.vue +6 -6
- package/src/components/SellReport/MarketMonth.vue +2 -2
- package/src/components/SellReport/SaleMonthReport.vue +2 -2
- package/src/components/SellReport/UserClassify.vue +8 -8
- package/src/components/sale/common/ResSelect.vue +155 -0
- package/src/components/sale/common/RightTree.vue +348 -0
- package/src/components/sale/config/exportConfig.js +71 -0
- package/src/components/sale/filesquery/GasDeviceQuery.vue +7 -4
- package/src/filiale/tongchuan/GasPrice.vue +8 -8
- package/src/filiale/tongchuan/ManageBusSummary.vue +2 -13
- package/src/filiale/wenxi/GasDeviceQuery.vue +1 -1
- package/src/filiale/wenxi/HandplanQuery.vue +2 -3
- package/src/plugins/LdapHelper.js +75 -0
- package/src/saleManage.js +6 -0
package/package.json
CHANGED
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
</div>
|
|
47
47
|
<div class="col-sm-3 form-group" >
|
|
48
48
|
<label class="font_normal_body" for="org">公  司:</label>
|
|
49
|
-
<right-tree id="org" @re-res="$parent.$parent.getRes" style="width: 60%" v-ref:org></right-tree>
|
|
49
|
+
<manage-right-tree id="org" @re-res="$parent.$parent.getRes" style="width: 60%" v-ref:org></manage-right-tree>
|
|
50
50
|
</div>
|
|
51
51
|
<div class="col-sm-3 form-group">
|
|
52
52
|
<label class="font_normal_body" for="dep" >部  门:</label>
|
|
@@ -226,8 +226,8 @@ let getorg = async function (self) {
|
|
|
226
226
|
console.log('---------------->', this.reportStyle)
|
|
227
227
|
this.printTime = this.$login.toStandardTimeString()
|
|
228
228
|
let orgcondition = '1=1'
|
|
229
|
-
if (this.f_orgid
|
|
230
|
-
orgcondition += ` and f_orgid in (
|
|
229
|
+
if (this.f_orgid) {
|
|
230
|
+
orgcondition += ` and f_orgid in (${this.f_orgid})`
|
|
231
231
|
}
|
|
232
232
|
orgcondition += ' and ' + args.condition
|
|
233
233
|
this.$refs.paged.$refs.criteria.model.f_orgid = orgcondition
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
</div>
|
|
29
29
|
<div class="col-sm-3 form-group" >
|
|
30
30
|
<label class="font_normal_body" for="org">公  司:</label>
|
|
31
|
-
<right-tree id="org" @re-res="$parent.$parent.getRes" style="width: 60%" v-ref:org></right-tree>
|
|
31
|
+
<manage-right-tree id="org" @re-res="$parent.$parent.getRes" style="width: 60%" v-ref:org></manage-right-tree>
|
|
32
32
|
</div>
|
|
33
33
|
<div class="col-sm-3 form-group">
|
|
34
34
|
<label class="font_normal_body" for="dep" >部  门:</label>
|
|
@@ -217,22 +217,11 @@ import {DataModel, HttpResetClass} from 'vue-client'
|
|
|
217
217
|
this.operatorname = this.userresid.filter(x => x.value ==val).map(x=>x.label).toString()
|
|
218
218
|
console.log('dep',this.operatorname )
|
|
219
219
|
},
|
|
220
|
-
getParamStr (array) {
|
|
221
|
-
let stringValue = ''
|
|
222
|
-
for (let i = 0; i < array.length; i++) {
|
|
223
|
-
if (i === array.length - 1) {
|
|
224
|
-
stringValue = stringValue + "'" + array[i] + "'"
|
|
225
|
-
} else {
|
|
226
|
-
stringValue = stringValue + "'" + array[i] + "',"
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
return stringValue
|
|
230
|
-
},
|
|
231
220
|
selfSearch (args) {
|
|
232
221
|
this.printTime = this.$login.toStandardTimeString()
|
|
233
222
|
let orgcondition = '1=1'
|
|
234
223
|
if (this.f_orgid[0]) {
|
|
235
|
-
orgcondition += ` and f_orgid in (${this.
|
|
224
|
+
orgcondition += ` and f_orgid in (${this.f_orgid})`
|
|
236
225
|
}
|
|
237
226
|
|
|
238
227
|
this.$refs.paged.$refs.criteria.model.f_orgid = orgcondition
|
|
@@ -28,26 +28,26 @@
|
|
|
28
28
|
</div>
|
|
29
29
|
<div class="col-sm-4">
|
|
30
30
|
<label class="font_normal_body"> 公司 </label>
|
|
31
|
-
<right-tree @re-res="$parent.$parent.getRes"></right-tree>
|
|
31
|
+
<manage-right-tree @re-res="$parent.$parent.getRes"></manage-right-tree>
|
|
32
32
|
</div>
|
|
33
33
|
<div class="col-sm-4">
|
|
34
34
|
<label class="font_normal_body"> 部门 </label>
|
|
35
|
-
<res-select restype='department'
|
|
35
|
+
<manage-res-select restype='department'
|
|
36
36
|
is-mul="false"
|
|
37
37
|
@res-select="$parent.$parent.getdep"
|
|
38
38
|
:parentresid="$parent.$parent.depresid"
|
|
39
39
|
:initresid='$parent.$parent.depid'>
|
|
40
|
-
</res-select>
|
|
40
|
+
</manage-res-select>
|
|
41
41
|
|
|
42
42
|
</div>
|
|
43
43
|
<div class="col-sm-4">
|
|
44
44
|
<label class="font_normal_body"> 人员 </label>
|
|
45
|
-
<res-select restype='user'
|
|
45
|
+
<manage-res-select restype='user'
|
|
46
46
|
is-mul="false"
|
|
47
47
|
@res-select="$parent.$parent.getuser"
|
|
48
48
|
:parentresid="$parent.$parent.userresid"
|
|
49
49
|
:initresid='$parent.$parent.operatorid'>
|
|
50
|
-
</res-select>
|
|
50
|
+
</manage-res-select>
|
|
51
51
|
</div>
|
|
52
52
|
<div class="col-sm-4 form-group">
|
|
53
53
|
<label class="font_normal_body">抄 表 员</label>
|
|
@@ -28,25 +28,25 @@
|
|
|
28
28
|
</div>
|
|
29
29
|
<div class="col-sm-4 form-group" >
|
|
30
30
|
<label class="font_normal_body" for="org">公  司:</label>
|
|
31
|
-
<right-tree id="org" @re-res="$parent.$parent.getRes"></right-tree>
|
|
31
|
+
<manage-right-tree id="org" @re-res="$parent.$parent.getRes"></manage-right-tree>
|
|
32
32
|
</div>
|
|
33
33
|
<div class="col-sm-4 form-group">
|
|
34
34
|
<label class="font_normal_body" for="dep" >部  门:</label>
|
|
35
|
-
<res-select id="dep" restype='department'
|
|
35
|
+
<manage-res-select id="dep" restype='department'
|
|
36
36
|
@res-select="$parent.$parent.getdep"
|
|
37
37
|
:parentresid="$parent.$parent.depresid"
|
|
38
38
|
:initresid='$parent.$parent.depid' >
|
|
39
|
-
</res-select>
|
|
39
|
+
</manage-res-select>
|
|
40
40
|
|
|
41
41
|
</div>
|
|
42
42
|
<div class="col-sm-4 form-group">
|
|
43
43
|
<label class="font_normal_body" for="oper">人  员:</label>
|
|
44
|
-
<res-select id="oper" restype='user'
|
|
44
|
+
<manage-res-select id="oper" restype='user'
|
|
45
45
|
is-mul="false"
|
|
46
46
|
@res-select="$parent.$parent.getuser"
|
|
47
47
|
:parentresid="$parent.$parent.userresid"
|
|
48
48
|
:initresid='$parent.$parent.operatorid'>
|
|
49
|
-
</res-select>
|
|
49
|
+
</manage-res-select>
|
|
50
50
|
</div>
|
|
51
51
|
<div class="col-sm-4 form-group">
|
|
52
52
|
<label class="font_normal_body">收费状态:</label>
|
|
@@ -201,13 +201,13 @@
|
|
|
201
201
|
this.printTime = this.$login.toStandardTimeString()
|
|
202
202
|
this.orgCondtionStr='1=1'
|
|
203
203
|
if (this.f_orgid[0]) {
|
|
204
|
-
this.orgCondtionStr +=
|
|
204
|
+
this.orgCondtionStr += ' and f_orgid in (' + this.f_orgid + ')'
|
|
205
205
|
}
|
|
206
206
|
if (this.f_depid[0]) {
|
|
207
|
-
this.orgCondtionStr +=
|
|
207
|
+
this.orgCondtionStr += ' and f_depid in (' + this.f_depid.toString() + ')'
|
|
208
208
|
}
|
|
209
209
|
if(this.f_operatorid[0]) {
|
|
210
|
-
this.orgCondtionStr +=
|
|
210
|
+
this.orgCondtionStr += ' and f_operatorid in (' + this.f_operatorid + ')'
|
|
211
211
|
}
|
|
212
212
|
this.$refs.paged.$refs.criteria.model.f_orgid = this.orgCondtionStr.replace('1=1','') + (this.f_state && this.f_state != '' ? " and f_state='" + this.f_state + "' " : '')
|
|
213
213
|
this.$refs.paged.search(args)
|
|
@@ -28,26 +28,26 @@
|
|
|
28
28
|
</div>
|
|
29
29
|
<div class="col-sm-2 form-group" >
|
|
30
30
|
<label class="font_normal_body" for="org">公  司:</label>
|
|
31
|
-
<right-tree id="org" @re-res="$parent.$parent.getRes" style="width: 60%"></right-tree>
|
|
31
|
+
<manage-right-tree id="org" @re-res="$parent.$parent.getRes" style="width: 60%"></manage-right-tree>
|
|
32
32
|
</div>
|
|
33
33
|
<div class="col-sm-2 form-group">
|
|
34
34
|
<label class="font_normal_body" for="dep" >部  门:</label>
|
|
35
|
-
<res-select id="dep" restype='department' style="width: 60%"
|
|
35
|
+
<manage-res-select id="dep" restype='department' style="width: 60%"
|
|
36
36
|
is-mul="false"
|
|
37
37
|
@res-select="$parent.$parent.getdep"
|
|
38
38
|
:parentresid="$parent.$parent.depresid"
|
|
39
39
|
:initresid='$parent.$parent.depid' >
|
|
40
|
-
</res-select>
|
|
40
|
+
</manage-res-select>
|
|
41
41
|
|
|
42
42
|
</div>
|
|
43
43
|
<div class="col-sm-2 form-group">
|
|
44
44
|
<label class="font_normal_body" for="oper">人  员:</label>
|
|
45
|
-
<res-select id="oper" restype='user' style="width: 60%"
|
|
45
|
+
<manage-res-select id="oper" restype='user' style="width: 60%"
|
|
46
46
|
is-mul="false"
|
|
47
47
|
@res-select="$parent.$parent.getuser"
|
|
48
48
|
:parentresid="$parent.$parent.userresid"
|
|
49
49
|
:initresid='$parent.$parent.operatorid'>
|
|
50
|
-
</res-select>
|
|
50
|
+
</manage-res-select>
|
|
51
51
|
</div>
|
|
52
52
|
<div class="col-sm-2 form-group">
|
|
53
53
|
<label class="font_normal_body">用气性质</label>
|
|
@@ -223,7 +223,7 @@
|
|
|
223
223
|
this.printTime = this.$login.toStandardTimeString()
|
|
224
224
|
this.orgCondtionStr='1=1'
|
|
225
225
|
if (this.f_orgid[0]) {
|
|
226
|
-
this.orgCondtionStr += ` and f_orgid in (
|
|
226
|
+
this.orgCondtionStr += ` and f_orgid in (${this.f_orgid})`
|
|
227
227
|
}
|
|
228
228
|
if (this.f_depid[0]) {
|
|
229
229
|
this.orgCondtionStr += ` and f_depid = '${this.f_depid}'`
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
</div>
|
|
49
49
|
<div class="col-sm-3 form-group" >
|
|
50
50
|
<label class="font_normal_body" for="org">公  司:</label>
|
|
51
|
-
<right-tree id="org" @re-res="$parent.$parent.getRes" style="width: 60%" v-ref:org></right-tree>
|
|
51
|
+
<manage-right-tree id="org" @re-res="$parent.$parent.getRes" style="width: 60%" v-ref:org></manage-right-tree>
|
|
52
52
|
</div>
|
|
53
53
|
<div class="col-sm-3 form-group">
|
|
54
54
|
<label class="font_normal_body" for="dep" >部  门:</label>
|
|
@@ -233,7 +233,7 @@ let getorg = async function (self) {
|
|
|
233
233
|
this.printTime = this.$login.toStandardTimeString()
|
|
234
234
|
let orgcondition = '1=1'
|
|
235
235
|
if (this.f_orgid[0]) {
|
|
236
|
-
orgcondition += ` and f_orgid in (
|
|
236
|
+
orgcondition += ` and f_orgid in (${this.f_orgid})`
|
|
237
237
|
}
|
|
238
238
|
orgcondition += ' and ' + args.condition
|
|
239
239
|
this.$refs.paged.$refs.criteria.model.f_orgid = orgcondition
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
</div>
|
|
27
27
|
<div class="col-sm-2">
|
|
28
28
|
<label class="font_normal_body"> 公司 </label>
|
|
29
|
-
<right-tree @re-res="$parent.$parent.getRes"></right-tree>
|
|
29
|
+
<manage-right-tree @re-res="$parent.$parent.getRes"></manage-right-tree>
|
|
30
30
|
</div>
|
|
31
31
|
|
|
32
32
|
</div>
|
|
@@ -121,7 +121,7 @@
|
|
|
121
121
|
this.$refs.paged.$refs.criteria.search()
|
|
122
122
|
},
|
|
123
123
|
selfSearch (args) {
|
|
124
|
-
let orgcondition = `f_orgid in (
|
|
124
|
+
let orgcondition = `f_orgid in (${this.f_orgid})`
|
|
125
125
|
this.$refs.paged.$refs.criteria.model.f_orgid = orgcondition
|
|
126
126
|
this.$refs.paged.search(args)
|
|
127
127
|
},
|
|
@@ -48,26 +48,26 @@
|
|
|
48
48
|
</div>
|
|
49
49
|
<div class="col-sm-3 form-group" >
|
|
50
50
|
<label class="font_normal_body" for="org">公  司:</label>
|
|
51
|
-
<right-tree id="org" @re-res="$parent.$parent.getRes" style="width: 60%"></right-tree>
|
|
51
|
+
<manage-right-tree id="org" @re-res="$parent.$parent.getRes" style="width: 60%"></manage-right-tree>
|
|
52
52
|
</div>
|
|
53
53
|
<div class="col-sm-3 form-group">
|
|
54
54
|
<label class="font_normal_body" for="dep" >部  门:</label>
|
|
55
|
-
<res-select id="dep" restype='department' style="width: 60%"
|
|
55
|
+
<manage-res-select id="dep" restype='department' style="width: 60%"
|
|
56
56
|
is-mul="false"
|
|
57
57
|
@res-select="$parent.$parent.getdep"
|
|
58
58
|
:parentresid="$parent.$parent.depresid"
|
|
59
59
|
:initresid='$parent.$parent.depid' >
|
|
60
|
-
</res-select>
|
|
60
|
+
</manage-res-select>
|
|
61
61
|
|
|
62
62
|
</div>
|
|
63
63
|
<div class="col-sm-3 form-group">
|
|
64
64
|
<label class="font_normal_body" for="oper">人  员:</label>
|
|
65
|
-
<res-select id="oper" restype='user' style="width: 60%"
|
|
65
|
+
<manage-res-select id="oper" restype='user' style="width: 60%"
|
|
66
66
|
is-mul="false"
|
|
67
67
|
@res-select="$parent.$parent.getuser"
|
|
68
68
|
:parentresid="$parent.$parent.userresid"
|
|
69
69
|
:initresid='$parent.$parent.operatorid'>
|
|
70
|
-
</res-select>
|
|
70
|
+
</manage-res-select>
|
|
71
71
|
</div>
|
|
72
72
|
</div>
|
|
73
73
|
<div class="span" style = "float:right;">
|
|
@@ -192,12 +192,12 @@
|
|
|
192
192
|
},
|
|
193
193
|
selfSearch (args) {
|
|
194
194
|
this.printTime = this.$login.toStandardTimeString()
|
|
195
|
-
let orgcondition =
|
|
195
|
+
let orgcondition = ` f_orgid in( ${this.f_orgid})`
|
|
196
196
|
if (this.f_depid[0]) {
|
|
197
|
-
orgcondition += ` and f_depid in (
|
|
197
|
+
orgcondition += ` and f_depid in (${this.f_depid})`
|
|
198
198
|
}
|
|
199
199
|
if(this.f_operatorid[0]) {
|
|
200
|
-
orgcondition += ` and f_operatorid in (
|
|
200
|
+
orgcondition += ` and f_operatorid in (${this.f_operatorid})`
|
|
201
201
|
}
|
|
202
202
|
this.$refs.paged.$refs.criteria.model.f_orgid = orgcondition
|
|
203
203
|
this.$refs.paged.search(args)
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<v-select :options='resoptions' placeholder='请选择'
|
|
3
|
+
:value.sync="selectres"
|
|
4
|
+
:multiple="isMul"
|
|
5
|
+
search="true"
|
|
6
|
+
:disabled="mustselect"
|
|
7
|
+
:close-on-select="!isMul"
|
|
8
|
+
@change="resChange"
|
|
9
|
+
>
|
|
10
|
+
</v-select>
|
|
11
|
+
</template>
|
|
12
|
+
<script>
|
|
13
|
+
import {HttpResetClass} from 'vue-client'
|
|
14
|
+
|
|
15
|
+
export default {
|
|
16
|
+
title: '资源选择',
|
|
17
|
+
props: {
|
|
18
|
+
|
|
19
|
+
//资源类型
|
|
20
|
+
restype:'',
|
|
21
|
+
//资源数据
|
|
22
|
+
resObj:{},
|
|
23
|
+
isMul: {
|
|
24
|
+
type: Boolean,
|
|
25
|
+
default: true
|
|
26
|
+
},
|
|
27
|
+
//资源初始化数据
|
|
28
|
+
initresid: {
|
|
29
|
+
type: Array,
|
|
30
|
+
default() { return [] },
|
|
31
|
+
},
|
|
32
|
+
//父层id
|
|
33
|
+
parentresid: {
|
|
34
|
+
type: Array,
|
|
35
|
+
default() { return [] },
|
|
36
|
+
},
|
|
37
|
+
mustselect: {
|
|
38
|
+
type: Boolean,
|
|
39
|
+
default: false
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
data () {
|
|
43
|
+
return {
|
|
44
|
+
//资源数据
|
|
45
|
+
resObj:{},
|
|
46
|
+
//资源数据列表
|
|
47
|
+
resoptions:[],
|
|
48
|
+
//选中资源数据
|
|
49
|
+
selectres: [],
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
ready () {
|
|
53
|
+
//获取资源列表
|
|
54
|
+
this.getResList()
|
|
55
|
+
},
|
|
56
|
+
methods:{
|
|
57
|
+
//树形结构变成list
|
|
58
|
+
findById(val) {
|
|
59
|
+
if(val){
|
|
60
|
+
if(this.checkidres(val)){
|
|
61
|
+
this.treetoList(val,'')
|
|
62
|
+
}else if(val.children.length>0){
|
|
63
|
+
for (let value of val.children) {
|
|
64
|
+
this.findById(value)
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
//树形结构变成list
|
|
70
|
+
treetoList(val,parentname) {
|
|
71
|
+
for (let value of val.children) {
|
|
72
|
+
this.ergodicList(value,parentname)
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
//找到跟节点
|
|
76
|
+
ergodicList (val,parentname) {
|
|
77
|
+
if(val.children.length > 0 ){
|
|
78
|
+
parentname=parentname+val.name
|
|
79
|
+
this.treetoList(val,parentname)
|
|
80
|
+
}else {
|
|
81
|
+
//截取组织机构【组织机构】
|
|
82
|
+
if(this.restype=='organization'){
|
|
83
|
+
parentname=parentname.replace("组织机构","")
|
|
84
|
+
this.resoptions.push({label: val.name+' - '+parentname, value: `'${ val.id}'`})
|
|
85
|
+
}else{
|
|
86
|
+
this.resoptions.push({label: val.name, value: `'${ val.id}'`})
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
//检查id是否存在
|
|
91
|
+
checkidres(val){
|
|
92
|
+
let flag=false
|
|
93
|
+
//如果没传值得话 不过滤
|
|
94
|
+
if(this.parentresid.length==0&&this.restype=='organization'){
|
|
95
|
+
flag=true
|
|
96
|
+
}
|
|
97
|
+
this.parentresid.forEach((item) => {
|
|
98
|
+
if(item==val.id){
|
|
99
|
+
flag=true
|
|
100
|
+
}
|
|
101
|
+
})
|
|
102
|
+
return flag;
|
|
103
|
+
},
|
|
104
|
+
//资源改变
|
|
105
|
+
resChange(val){
|
|
106
|
+
let orgnames=[]
|
|
107
|
+
Object.keys(this.resoptions).forEach((key) => {
|
|
108
|
+
if(this.selectres.includes(this.resoptions[key].value))
|
|
109
|
+
orgnames.push(this.resoptions[key].label)
|
|
110
|
+
})
|
|
111
|
+
console.log('资源改变。。', val, orgnames)
|
|
112
|
+
this.$dispatch('res-select', this.selectres, orgnames)
|
|
113
|
+
},
|
|
114
|
+
//获取资源数据
|
|
115
|
+
async getResList() {
|
|
116
|
+
|
|
117
|
+
let http = new HttpResetClass()
|
|
118
|
+
|
|
119
|
+
let req = await http.load('POST', '/rs/search', {data: {
|
|
120
|
+
source: `tool.getFullTree(this.getRights().where(row.getType()==$${this.restype}$))`,
|
|
121
|
+
userid: this.$login.f.id
|
|
122
|
+
}}, {resolveMsg: null, rejectMsg: '获取组织结构数据出错'})
|
|
123
|
+
this.resObj=req.data[0]
|
|
124
|
+
this.dealdata()
|
|
125
|
+
},
|
|
126
|
+
dealdata(){
|
|
127
|
+
this.resoptions=[]
|
|
128
|
+
this.findById(this.resObj);
|
|
129
|
+
//赋值资源数据
|
|
130
|
+
let arryselect=[]
|
|
131
|
+
this.resoptions.forEach((item) => {
|
|
132
|
+
if(this.initresid.length>0){
|
|
133
|
+
this.initresid.forEach((init) => {
|
|
134
|
+
if(item.value==init){
|
|
135
|
+
arryselect.push(item.value)
|
|
136
|
+
}
|
|
137
|
+
})
|
|
138
|
+
}
|
|
139
|
+
})
|
|
140
|
+
//赋值资源选中初始值
|
|
141
|
+
this.selectres=arryselect
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
watch: {
|
|
145
|
+
//监听初始化资源id
|
|
146
|
+
'initresid.length'(){
|
|
147
|
+
this.dealdata()
|
|
148
|
+
},
|
|
149
|
+
//监听初始化资源id
|
|
150
|
+
'parentresid'(){
|
|
151
|
+
this.dealdata()
|
|
152
|
+
},
|
|
153
|
+
},
|
|
154
|
+
}
|
|
155
|
+
</script>
|
|
@@ -0,0 +1,348 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<dropdown :model='model' class="auto" id="res-tree" v-if="!islist" v-el:dropdown :style="{width:width}">
|
|
3
|
+
<button type="button" class="btn btn-default dropdown-toggle select-style" data-toggle="dropdown" :disabled="mustselect">
|
|
4
|
+
<span class='btn-content' :style="{textOverflow:'ellipsis',overflow: 'hidden'}">{{ orgnames }}</span>
|
|
5
|
+
<span class="caret"></span>
|
|
6
|
+
</button>
|
|
7
|
+
<div class="dropdown-menu auto" style="width:auto;max-height: 500px;overflow: auto" >
|
|
8
|
+
<input type="text" placeholder="Search"
|
|
9
|
+
placeholder='请输入'
|
|
10
|
+
slot="dropdown-menu"
|
|
11
|
+
v-model="searchText"
|
|
12
|
+
class="form-control" autocomplete="off"
|
|
13
|
+
@keydown.enter="buluer(searchText)">
|
|
14
|
+
<tree :filter="strsign" :model='model' v-ref:tree :is-click="false" role="menu">
|
|
15
|
+
<span partial>
|
|
16
|
+
<span class="glyphicon glyphicon-chevron-down" v-show="row.open&&row.data.children.length>0" style="color:balck;"></span>
|
|
17
|
+
<span class="glyphicon glyphicon-chevron-right" v-show="!row.open&&row.data.children.length>0" style="color:balck;"></span>
|
|
18
|
+
<span class="RightTreeCanSelect" v-if="row.data.hasright" @click.stop="$parent.$parent.$parent.selectclick(row.data)">{{row.data.name}}</span>
|
|
19
|
+
<span class="RightTreeCanNotSelect" v-else>{{row.data.name}}</span>
|
|
20
|
+
<span class="glyphicon glyphicon-ok " v-if="$parent.$parent.$parent.isSelect(row.data.id)" style="color:balck;"></span>
|
|
21
|
+
</span>
|
|
22
|
+
</tree>
|
|
23
|
+
</div>
|
|
24
|
+
|
|
25
|
+
</dropdown>
|
|
26
|
+
<v-select v-if="islist"
|
|
27
|
+
placeholder='请选择'
|
|
28
|
+
:options='childrenOptions'
|
|
29
|
+
:disabled="mustselect"
|
|
30
|
+
@change="selectclick"
|
|
31
|
+
:value-single="true"
|
|
32
|
+
close-on-select></v-select>
|
|
33
|
+
</template>
|
|
34
|
+
<script>
|
|
35
|
+
import Vue from 'vue';
|
|
36
|
+
import co from 'co'
|
|
37
|
+
import { PagedList, HttpResetClass } from 'vue-client'
|
|
38
|
+
import * as ldapHelper from '../../../plugins/LdapHelper'
|
|
39
|
+
let saveGen = function * (self) {
|
|
40
|
+
//获取分公司树
|
|
41
|
+
let data = {
|
|
42
|
+
source: self.source,
|
|
43
|
+
userid: self.userid
|
|
44
|
+
}
|
|
45
|
+
// if(self.$treeorg==null || (self.$treeorg!=null&&self.$treeorg.length==0)){
|
|
46
|
+
let http = new HttpResetClass()
|
|
47
|
+
let ret = yield http.load('POST', `${self.Url}/rs/search`, data, {resolveMsg: null, rejectMsg: null})
|
|
48
|
+
// 去掉前面的两层节点
|
|
49
|
+
ret.data[0].children[0].children.forEach((item) => {
|
|
50
|
+
self.model.push(item)
|
|
51
|
+
})
|
|
52
|
+
Vue.$treeorg = Vue.prototype.$treeorg = self.model;
|
|
53
|
+
// }
|
|
54
|
+
//if(self.$treeorg!=null){
|
|
55
|
+
// self.model = self.$treeorg;
|
|
56
|
+
//}
|
|
57
|
+
// 给资源添加父关系
|
|
58
|
+
ldapHelper.procParent(self.model)
|
|
59
|
+
// 树转列
|
|
60
|
+
// if (self.islist) {
|
|
61
|
+
// self.treetoList(self.model)
|
|
62
|
+
// }
|
|
63
|
+
if(self.initresid.length>0){
|
|
64
|
+
if(self.initresid[0] == ''){
|
|
65
|
+
self.initresid[0] = self.$login.f.orgid;
|
|
66
|
+
}
|
|
67
|
+
}else{
|
|
68
|
+
self.initresid = [];
|
|
69
|
+
self.initresid[0] = self.$login.f.orgid;
|
|
70
|
+
}
|
|
71
|
+
if(self.initresid&&self.initresid.length>0){
|
|
72
|
+
self.isselect = false;
|
|
73
|
+
self.initTreetoList(self.model)
|
|
74
|
+
self.initregion(self.childrenOptions)
|
|
75
|
+
self.childrenOptions.forEach((item) => {
|
|
76
|
+
if(item.id == null && item.value !=null ){
|
|
77
|
+
item = item.value
|
|
78
|
+
}
|
|
79
|
+
if(item.id==self.initresid[0]){
|
|
80
|
+
//默认加载如果已选中的和传入参数相等会取消选择,这种操作不应该被允许
|
|
81
|
+
if(self.orgids==item.id){
|
|
82
|
+
self.initdataone(item);
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
self.selectclick(item);
|
|
86
|
+
self.isselect = true;
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
})
|
|
90
|
+
//如果没有找到公司,说明是选择的是大区
|
|
91
|
+
if(!self.isselect){
|
|
92
|
+
self.childrenregionOption.forEach((item) => {
|
|
93
|
+
if(item.id == null && item.value !=null ){
|
|
94
|
+
item = item.value;
|
|
95
|
+
}
|
|
96
|
+
if(item.id==self.initresid[0]){
|
|
97
|
+
//默认加载如果已选中的和传入参数相等会取消选择,这种操作不应该被允许
|
|
98
|
+
if(self.orgids==item.id){
|
|
99
|
+
self.initdataone(item);
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
self.selectclick(item);
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
})
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
//self.selectRes()
|
|
109
|
+
}
|
|
110
|
+
export default {
|
|
111
|
+
title: '资源树',
|
|
112
|
+
props: {
|
|
113
|
+
searchText:'',
|
|
114
|
+
strsign:'',
|
|
115
|
+
source: {
|
|
116
|
+
type: String,
|
|
117
|
+
require: true,
|
|
118
|
+
default:`tool.getFullTree(this.getRights().where(row.getType() == $organization$))`
|
|
119
|
+
},
|
|
120
|
+
//资源初始化数据
|
|
121
|
+
initresid: {
|
|
122
|
+
type: Array,
|
|
123
|
+
default() { return [] },
|
|
124
|
+
},
|
|
125
|
+
resid: {
|
|
126
|
+
},
|
|
127
|
+
islist: {
|
|
128
|
+
type: Boolean,
|
|
129
|
+
default: false
|
|
130
|
+
},
|
|
131
|
+
//是否有查看上级的权限
|
|
132
|
+
Url:{
|
|
133
|
+
type: String,
|
|
134
|
+
default:''
|
|
135
|
+
},
|
|
136
|
+
mustselect: {
|
|
137
|
+
type: Boolean,
|
|
138
|
+
default: false
|
|
139
|
+
},
|
|
140
|
+
width:{
|
|
141
|
+
type:String,
|
|
142
|
+
default:'60%'
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
data () {
|
|
146
|
+
return {
|
|
147
|
+
resobj:{res:this.$login.f.orgs, resids:this.$login.f.orgid},
|
|
148
|
+
userid: this.$login.f.id,
|
|
149
|
+
resname:[this.$login.f.orgs],
|
|
150
|
+
orgnames : "请选择",
|
|
151
|
+
//单选点击 返回所有子
|
|
152
|
+
orgids : null,
|
|
153
|
+
orgobj:null,
|
|
154
|
+
model: [
|
|
155
|
+
|
|
156
|
+
],
|
|
157
|
+
childrenOptions: [],
|
|
158
|
+
childrenregionOption:[],
|
|
159
|
+
isselect: false
|
|
160
|
+
}
|
|
161
|
+
},
|
|
162
|
+
methods: {
|
|
163
|
+
selectRes () {
|
|
164
|
+
let newobj={
|
|
165
|
+
"res": [this.resname],
|
|
166
|
+
"resids": [this.orgids],
|
|
167
|
+
}
|
|
168
|
+
this.$emit('re-res', newobj)
|
|
169
|
+
},
|
|
170
|
+
//树形结构变成list
|
|
171
|
+
initTreetoList(val) {
|
|
172
|
+
for (let value of val) {
|
|
173
|
+
this.initErgodicList(value)
|
|
174
|
+
}
|
|
175
|
+
},
|
|
176
|
+
//找到跟节点
|
|
177
|
+
initErgodicList (val) {
|
|
178
|
+
if(val.children.length > 0){
|
|
179
|
+
this.childrenOptions.push(val)
|
|
180
|
+
this.treetoList(val.children)
|
|
181
|
+
}else{
|
|
182
|
+
this.childrenOptions.push(val)
|
|
183
|
+
}
|
|
184
|
+
},
|
|
185
|
+
initregion(val){
|
|
186
|
+
if(val ==null ) return;
|
|
187
|
+
val.forEach((item)=>{
|
|
188
|
+
if(item.name != null){
|
|
189
|
+
if(item.name.includes("公司")){
|
|
190
|
+
return;
|
|
191
|
+
}else{
|
|
192
|
+
this.initregion(item.children)
|
|
193
|
+
this.childrenregionOption.push({label:"",value:item})
|
|
194
|
+
//return item;
|
|
195
|
+
}
|
|
196
|
+
}else{
|
|
197
|
+
return;
|
|
198
|
+
}
|
|
199
|
+
})
|
|
200
|
+
|
|
201
|
+
},
|
|
202
|
+
async buluer (val) {
|
|
203
|
+
this.strsign=val
|
|
204
|
+
await new Promise(resolve => {
|
|
205
|
+
this.$nextTick(() => {
|
|
206
|
+
resolve()
|
|
207
|
+
})
|
|
208
|
+
})
|
|
209
|
+
},
|
|
210
|
+
//点击资源的方法
|
|
211
|
+
selectclick (row) {
|
|
212
|
+
if(this.orgids==row.id){
|
|
213
|
+
//取消点击
|
|
214
|
+
this.orgnames="请选择"
|
|
215
|
+
this.orgids=null
|
|
216
|
+
this.orgobj=null
|
|
217
|
+
let newobj={
|
|
218
|
+
"res": [],
|
|
219
|
+
"resids": [],
|
|
220
|
+
"orgobj": [],
|
|
221
|
+
}
|
|
222
|
+
this.$emit('re-res', newobj)
|
|
223
|
+
}else{
|
|
224
|
+
//点中点击
|
|
225
|
+
this.orgnames=row.name
|
|
226
|
+
this.orgids=row.id
|
|
227
|
+
this.orgobj=row
|
|
228
|
+
let objs=[]
|
|
229
|
+
let objids=[]
|
|
230
|
+
let objnames=[]
|
|
231
|
+
this.addResChild(row,objs)
|
|
232
|
+
objs.forEach((item) => {
|
|
233
|
+
objids.push(`'${item.id}'`)
|
|
234
|
+
objnames.push(item.name)
|
|
235
|
+
})
|
|
236
|
+
let newobj={
|
|
237
|
+
"res": objnames,
|
|
238
|
+
"resids": objids,
|
|
239
|
+
"orgobj": objs,
|
|
240
|
+
}
|
|
241
|
+
this.$emit('re-res', newobj)
|
|
242
|
+
}
|
|
243
|
+
},
|
|
244
|
+
initdataone(row){
|
|
245
|
+
//点中点击
|
|
246
|
+
this.orgnames=row.name
|
|
247
|
+
this.orgids=row.id
|
|
248
|
+
this.orgobj=row
|
|
249
|
+
let objs=[]
|
|
250
|
+
let objids=[]
|
|
251
|
+
let objnames=[]
|
|
252
|
+
this.addResChild(row,objs)
|
|
253
|
+
objs.forEach((item) => {
|
|
254
|
+
objids.push(`'${item.id}'`)
|
|
255
|
+
objnames.push(item.name)
|
|
256
|
+
})
|
|
257
|
+
let newobj={
|
|
258
|
+
"res": objnames,
|
|
259
|
+
"resids": objids,
|
|
260
|
+
"orgobj": objs,
|
|
261
|
+
}
|
|
262
|
+
this.$emit('re-res', newobj)
|
|
263
|
+
},
|
|
264
|
+
addResChild(val,objs){
|
|
265
|
+
objs.push(val)
|
|
266
|
+
if(val.children && val.children.length>0){
|
|
267
|
+
Object.keys(val.children).forEach((key) => {
|
|
268
|
+
this.addResChild(val.children[key],objs)
|
|
269
|
+
})
|
|
270
|
+
}
|
|
271
|
+
return objs
|
|
272
|
+
},
|
|
273
|
+
//检查是否显示对勾
|
|
274
|
+
isSelect(val) {
|
|
275
|
+
if(this.orgids==val){
|
|
276
|
+
return true
|
|
277
|
+
}else{
|
|
278
|
+
return false
|
|
279
|
+
}
|
|
280
|
+
},
|
|
281
|
+
//树形结构变成list
|
|
282
|
+
treetoList(val) {
|
|
283
|
+
for (let value of val) {
|
|
284
|
+
this.ergodicList(value)
|
|
285
|
+
}
|
|
286
|
+
},
|
|
287
|
+
//找到跟节点
|
|
288
|
+
ergodicList (val) {
|
|
289
|
+
val.children.length > 0 ? this.treetoList(val.children) : this.childrenOptions.push({label: val.name, value: val})
|
|
290
|
+
},
|
|
291
|
+
//处理显示默认值
|
|
292
|
+
dealResObj (val) {
|
|
293
|
+
try{
|
|
294
|
+
var arr=val.res.split(".")
|
|
295
|
+
//截取最后一个分公司名字
|
|
296
|
+
this.resname=arr[arr.length-1].toString()
|
|
297
|
+
this.orgnames=arr[arr.length-1].toString()
|
|
298
|
+
this.resid = val.resids
|
|
299
|
+
this.orgids = val.resids
|
|
300
|
+
}catch (e){
|
|
301
|
+
this.resname='请选择组织'
|
|
302
|
+
}
|
|
303
|
+
},
|
|
304
|
+
judgBoundary(){
|
|
305
|
+
//判断是否超出边界,超出移动
|
|
306
|
+
if(document.documentElement.offsetWidth< this.$els.dropdown.getBoundingClientRect().right){
|
|
307
|
+
this.left = document.documentElement.offsetWidth - this.$els.dropdown.getBoundingClientRect().right - 25
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
},
|
|
311
|
+
events: {
|
|
312
|
+
|
|
313
|
+
},
|
|
314
|
+
ready () {
|
|
315
|
+
this.dealResObj (this.resobj)
|
|
316
|
+
let gen = saveGen(this)
|
|
317
|
+
return co(gen)
|
|
318
|
+
},
|
|
319
|
+
watch: {
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
</script>
|
|
323
|
+
<style lang="less">
|
|
324
|
+
#res-tree {
|
|
325
|
+
.list-group-item {
|
|
326
|
+
background-color: #FFF;
|
|
327
|
+
color: #000;
|
|
328
|
+
padding: 5px 10px;
|
|
329
|
+
border:0px;
|
|
330
|
+
white-space: nowrap;
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
#res-tree .list-group {
|
|
334
|
+
width: auto;
|
|
335
|
+
min-width: 100%;
|
|
336
|
+
}
|
|
337
|
+
.hide-text-overflow{
|
|
338
|
+
overflow: hidden;
|
|
339
|
+
text-overflow: ellipsis
|
|
340
|
+
}
|
|
341
|
+
.select-style {
|
|
342
|
+
border: 0px;
|
|
343
|
+
/*border-bottom: 2px solid #C9CCCF;*/
|
|
344
|
+
border: 1px solid #93B2D3;
|
|
345
|
+
border-radius: 0px;
|
|
346
|
+
color: #555;
|
|
347
|
+
}
|
|
348
|
+
</style>
|
|
@@ -1114,6 +1114,77 @@ export default{
|
|
|
1114
1114
|
enterpriseGasConfig: {
|
|
1115
1115
|
'f_userinfo_code': '燃气户号', 'f_paper_name': '企业名称', 'f_taxpayer_id': '统一社会信用代码', 'f_orgname': '燃气公司标志',
|
|
1116
1116
|
'f_oughtamount': '用气量', 'f_oughtfee': '用气金额', 'f_whether_pay': '是否缴费', 'f_input_date': '抄表日期'
|
|
1117
|
+
},
|
|
1118
|
+
gasDeviceConfig: {
|
|
1119
|
+
'f_residential_area': '小区名称',
|
|
1120
|
+
'f_user_name': '户主姓名',
|
|
1121
|
+
'f_idnumber': '身份证号',
|
|
1122
|
+
'f_address': '客户地址',
|
|
1123
|
+
'f_user_phone': '联系电话',
|
|
1124
|
+
|
|
1125
|
+
'f_meter_brand': '品牌',
|
|
1126
|
+
'f_meternumber': '表号',
|
|
1127
|
+
'f_meter_type': '类型',
|
|
1128
|
+
'f_meter_style': '型号',
|
|
1129
|
+
'f_aroundmeter': '表向',
|
|
1130
|
+
'f_position': '生产年月',
|
|
1131
|
+
|
|
1132
|
+
'f_createfile_date': '建档日期',
|
|
1133
|
+
'f_contract_id': '供用气合同编号',
|
|
1134
|
+
'f_gas_date': '通气日期',
|
|
1135
|
+
'f_gas_person': '通气人员',
|
|
1136
|
+
'ventilation_years': '通气年限',
|
|
1137
|
+
'f_defendcard': '防盗卡号',
|
|
1138
|
+
|
|
1139
|
+
'f_icgd_brand': '独立式可燃气体探测器品牌',
|
|
1140
|
+
'f_conn_model': '接头型号',
|
|
1141
|
+
'f_icgd_prdate': '生产日期',
|
|
1142
|
+
'f_gssv_brand': '燃气切断电磁阀品牌',
|
|
1143
|
+
'f_gssv_prdate': '生产日期',
|
|
1144
|
+
|
|
1145
|
+
'zaoju_brand': '品牌',
|
|
1146
|
+
'zaoju_make_date': '生产日期',
|
|
1147
|
+
|
|
1148
|
+
'zaoju_pipe_material': '材质',
|
|
1149
|
+
'zaoju_pipe_length': '长度(米)',
|
|
1150
|
+
'zaoju_pipe_prdate': '生产日期',
|
|
1151
|
+
|
|
1152
|
+
'reshui_brand': '品牌',
|
|
1153
|
+
'reshui_filing_date': '备案日期',
|
|
1154
|
+
'reshui_make_date': '生产日期',
|
|
1155
|
+
|
|
1156
|
+
'reshui_pipe_material': '材质',
|
|
1157
|
+
'reshui_pipe_length': '长度(米)',
|
|
1158
|
+
'reshui_pipe_prdate': '生产日期',
|
|
1159
|
+
|
|
1160
|
+
'bigua_brand': '品牌',
|
|
1161
|
+
'bigua_filing_date': '备案日期',
|
|
1162
|
+
'bigua_make_date': '生产日期',
|
|
1163
|
+
|
|
1164
|
+
'bigua_pipe_material': '材质',
|
|
1165
|
+
'bigua_pipe_length': '长度(米)',
|
|
1166
|
+
'bigua_pipe_prdate': '生产日期',
|
|
1167
|
+
|
|
1168
|
+
'f_fee_type': '类型',
|
|
1169
|
+
'f_money': '金额(元)',
|
|
1170
|
+
'fee_operate_date': '日期',
|
|
1171
|
+
|
|
1172
|
+
'f_min_operate_date': '充值时间',
|
|
1173
|
+
'f_preamount': '金额(元)',
|
|
1174
|
+
|
|
1175
|
+
'yeartimes': '充值时间',
|
|
1176
|
+
'f_preamount_all': '金额(元)',
|
|
1177
|
+
|
|
1178
|
+
'f_upload_date': '安检日期',
|
|
1179
|
+
'f_checker_name': '安检人员',
|
|
1180
|
+
'f_total_gas': '用气总量',
|
|
1181
|
+
'f_total_fee': '总充值额',
|
|
1182
|
+
'f_balance_gas': '剩余气量',
|
|
1183
|
+
'f_defect_content': '发现问题',
|
|
1184
|
+
'f_repair_date': '整改日期',
|
|
1185
|
+
|
|
1186
|
+
'f_comments': '备注'
|
|
1187
|
+
|
|
1117
1188
|
}
|
|
1118
1189
|
}
|
|
1119
1190
|
|
|
@@ -45,7 +45,10 @@
|
|
|
45
45
|
<div class="span" style="float:right;">
|
|
46
46
|
<button class="button_search button_spacing" @click="search()">查询</button>
|
|
47
47
|
<button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
|
|
48
|
-
<
|
|
48
|
+
<export-excel :data="$parent.$parent.getCondition"
|
|
49
|
+
:field="$parent.$parent.getExportField"
|
|
50
|
+
sqlurl="rs/easyExcel/gasDeviceExport" sql-name="myGasDeviceQuery" template-name='民用用气设备查询'
|
|
51
|
+
:choose-col="true"></export-excel>
|
|
49
52
|
<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>
|
|
50
53
|
</div>
|
|
51
54
|
</div>
|
|
@@ -302,7 +305,7 @@
|
|
|
302
305
|
<nobr>{{row.f_gssv_brand}}</nobr>
|
|
303
306
|
</td>
|
|
304
307
|
<td style="text-align: center;">
|
|
305
|
-
<nobr>{{row.
|
|
308
|
+
<nobr>{{row.f_gssv_prdate}}</nobr>
|
|
306
309
|
</td>
|
|
307
310
|
<td style="text-align: center;" :class="$parent.$parent.$parent.formatTime(row.alarm_exp_date).indexOf('已过期')!==-1? 'back-red' : 'back-blue'">
|
|
308
311
|
<nobr>{{$parent.$parent.$parent.formatTime(row.alarm_exp_date)}}</nobr>
|
|
@@ -911,7 +914,7 @@
|
|
|
911
914
|
},
|
|
912
915
|
|
|
913
916
|
getCondition() {
|
|
914
|
-
return {condition: this.condition2,orderitem:
|
|
917
|
+
return {condition: this.condition2,orderitem: 'f_userfiles_id desc'}
|
|
915
918
|
},
|
|
916
919
|
getfield() {
|
|
917
920
|
let data = {}
|
|
@@ -931,7 +934,7 @@
|
|
|
931
934
|
return data
|
|
932
935
|
},
|
|
933
936
|
getExportField() {
|
|
934
|
-
return exportConfig.
|
|
937
|
+
return exportConfig.gasDeviceConfig
|
|
935
938
|
},
|
|
936
939
|
addressstate() {
|
|
937
940
|
return [{label: '全部', value: ''}, ...this.$appdata.getParam('地址状态')]
|
|
@@ -26,26 +26,26 @@
|
|
|
26
26
|
</div>
|
|
27
27
|
<div class="col-sm-4">
|
|
28
28
|
<label class="font_normal_body"> 公司 </label>
|
|
29
|
-
<right-tree @re-res="$parent.$parent.getRes"></right-tree>
|
|
29
|
+
<manage-right-tree @re-res="$parent.$parent.getRes"></manage-right-tree>
|
|
30
30
|
</div>
|
|
31
31
|
<div class="col-sm-4">
|
|
32
32
|
<label class="font_normal_body"> 部门 </label>
|
|
33
|
-
<res-select restype='department'
|
|
33
|
+
<manage-res-select restype='department'
|
|
34
34
|
is-mul="false"
|
|
35
35
|
@res-select="$parent.$parent.getdep"
|
|
36
36
|
:parentresid="$parent.$parent.depresid"
|
|
37
37
|
:initresid='$parent.$parent.depid'>
|
|
38
|
-
</res-select>
|
|
38
|
+
</manage-res-select>
|
|
39
39
|
|
|
40
40
|
</div>
|
|
41
41
|
<div class="col-sm-4">
|
|
42
42
|
<label class="font_normal_body"> 人员 </label>
|
|
43
|
-
<res-select restype='user'
|
|
43
|
+
<manage-res-select restype='user'
|
|
44
44
|
is-mul="false"
|
|
45
45
|
@res-select="$parent.$parent.getuser"
|
|
46
46
|
:parentresid="$parent.$parent.userresid"
|
|
47
47
|
:initresid='$parent.$parent.operatorid'>
|
|
48
|
-
</res-select>
|
|
48
|
+
</manage-res-select>
|
|
49
49
|
</div>
|
|
50
50
|
<div class="col-sm-3 form-group">
|
|
51
51
|
<label class="font_normal_body" for="oper1">格式一</label>
|
|
@@ -167,13 +167,13 @@ import {DataModel, HttpResetClass} from 'vue-client'
|
|
|
167
167
|
this.printTime = this.$login.toStandardTimeString()
|
|
168
168
|
let orgcondition = '1=1'
|
|
169
169
|
if (this.f_orgid && this.f_orgid[0]) {
|
|
170
|
-
orgcondition += ` and f_orgid in (
|
|
170
|
+
orgcondition += ` and f_orgid in (${this.f_orgid})`
|
|
171
171
|
}
|
|
172
172
|
if (this.f_depid && this.f_depid[0]) {
|
|
173
|
-
orgcondition += ` and f_depid in (
|
|
173
|
+
orgcondition += ` and f_depid in (${this.f_depid})`
|
|
174
174
|
}
|
|
175
175
|
if (this.f_operatorid && this.f_operatorid[0]) {
|
|
176
|
-
orgcondition += ` and f_operatorid in (
|
|
176
|
+
orgcondition += ` and f_operatorid in (${this.f_operatorid})`
|
|
177
177
|
}
|
|
178
178
|
this.$refs.paged.$refs.criteria.model.f_orgid = orgcondition
|
|
179
179
|
if (this.reportStyle == '1') {
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
</div>
|
|
27
27
|
<div class="col-sm-2 form-group">
|
|
28
28
|
<label class="font_normal_body"> 公司 </label>
|
|
29
|
-
<right-tree @re-res="$parent.$parent.getRes" style="width: 60%"></right-tree>
|
|
29
|
+
<manage-right-tree @re-res="$parent.$parent.getRes" style="width: 60%"></manage-right-tree>
|
|
30
30
|
</div>
|
|
31
31
|
<div class="col-sm-3 form-group">
|
|
32
32
|
<label class="font_normal_body" for="dep" >部  门:</label>
|
|
@@ -189,7 +189,7 @@ export default {
|
|
|
189
189
|
this.printTime = this.$login.toStandardTimeString()
|
|
190
190
|
let orgcondition = ''
|
|
191
191
|
if (this.f_orgid[0]) {
|
|
192
|
-
orgcondition += ` and f_orgid in (${this.
|
|
192
|
+
orgcondition += ` and f_orgid in (${this.f_orgid})`
|
|
193
193
|
}
|
|
194
194
|
if(this.f_state && this.f_state[0]) {
|
|
195
195
|
orgcondition += ` and f_state in('${this.f_state.toString().replace(/,/g,"','")}')`
|
|
@@ -201,17 +201,6 @@ export default {
|
|
|
201
201
|
hidden() {
|
|
202
202
|
this.criteriaShow = !this.criteriaShow
|
|
203
203
|
},
|
|
204
|
-
getParamStr (array) {
|
|
205
|
-
let stringValue = ''
|
|
206
|
-
for (let i = 0; i < array.length; i++) {
|
|
207
|
-
if (i === array.length - 1) {
|
|
208
|
-
stringValue = stringValue + "'" + array[i] + "'"
|
|
209
|
-
} else {
|
|
210
|
-
stringValue = stringValue + "'" + array[i] + "',"
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
return stringValue
|
|
214
|
-
},
|
|
215
204
|
getRes (obj) {
|
|
216
205
|
this.orgname = obj.res[0]
|
|
217
206
|
this.f_orgid = obj.resids
|
|
@@ -190,7 +190,7 @@
|
|
|
190
190
|
<th colspan="6"><nobr>燃气灶具连接管</nobr></th>
|
|
191
191
|
<th colspan="5"><nobr>燃气热水器</nobr></th>
|
|
192
192
|
<th colspan="5"><nobr>燃气壁挂炉</nobr></th>
|
|
193
|
-
<th colspan="
|
|
193
|
+
<th colspan="5"><nobr>燃气保险信息</nobr></th>
|
|
194
194
|
<th colspan="2"><nobr>初次充值信息</nobr></th>
|
|
195
195
|
<!-- <th colspan="2"><nobr>每年充值</nobr></th>-->
|
|
196
196
|
<th colspan="7"><nobr>安检信息</nobr></th>
|
|
@@ -741,6 +741,7 @@
|
|
|
741
741
|
// self.loadMeterBooks()
|
|
742
742
|
self.$refs.paged.$refs.cri.model.startDate = self.data ? self.data.startDate : self.$login.toStandardDateString() + ' 00:00:00'
|
|
743
743
|
self.$refs.paged.$refs.cri.model.endDate = self.data ? self.data.endDate : self.$login.toStandardDateString() + ' 23:59:59'
|
|
744
|
+
self.$refs.paged.$refs.cri.model.f_meter_classify = ['机表']
|
|
744
745
|
// self.$refs.paged.$refs.cri.model.handStartDate = self.$login.toStandardDateString() + ' 00:00:00'
|
|
745
746
|
// self.$refs.paged.$refs.cri.model.handEndDate = self.$login.toStandardDateString() + ' 23:59:59'
|
|
746
747
|
|
|
@@ -825,6 +826,7 @@
|
|
|
825
826
|
inputtores:[{label: '全部',value: ''}], //抄表员
|
|
826
827
|
//表册片区
|
|
827
828
|
bookSlice:[{label: '全部',value: ''}],
|
|
829
|
+
metertypes:[{label: '机表',value: '机表'}],
|
|
828
830
|
imgshow:false,
|
|
829
831
|
imgfilename:'',
|
|
830
832
|
percent:0,
|
|
@@ -1226,9 +1228,6 @@
|
|
|
1226
1228
|
},
|
|
1227
1229
|
computed: {
|
|
1228
1230
|
|
|
1229
|
-
metertypes() {
|
|
1230
|
-
return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('气表类型')]
|
|
1231
|
-
},
|
|
1232
1231
|
banklist() {
|
|
1233
1232
|
return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('银行名称')]
|
|
1234
1233
|
},
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 获得给定资源的名称全路径
|
|
3
|
+
* @param res: 资源
|
|
4
|
+
* @param name: 全路径字段
|
|
5
|
+
*/
|
|
6
|
+
export function getFullName (res, name) {
|
|
7
|
+
let result = ''
|
|
8
|
+
while (res != null) {
|
|
9
|
+
if (result === '') {
|
|
10
|
+
result = res[name]
|
|
11
|
+
} else {
|
|
12
|
+
result = res[name] + '.' + result
|
|
13
|
+
}
|
|
14
|
+
res = res.parent
|
|
15
|
+
}
|
|
16
|
+
return result
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* 给拿到的资源添加父关系
|
|
21
|
+
* @param res
|
|
22
|
+
*/
|
|
23
|
+
export function procParent (reses) {
|
|
24
|
+
for (let value of reses) {
|
|
25
|
+
procInnerParent(value)
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// 给资源res的所有子,添加父关系
|
|
30
|
+
function procInnerParent (res) {
|
|
31
|
+
for (let value of res.children) {
|
|
32
|
+
value.parent = res
|
|
33
|
+
procInnerParent(value)
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* 从给定一批资源中,递归找到给定号码的资源
|
|
39
|
+
* @param model:给定的一批资源
|
|
40
|
+
* @param id:要查找的资源id串
|
|
41
|
+
*/
|
|
42
|
+
export function find (model, id) {
|
|
43
|
+
// 返回最后一个id信息
|
|
44
|
+
let index = id.lastIndexOf('.')
|
|
45
|
+
if (index !== -1) {
|
|
46
|
+
id = id.substr(index + 1)
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
// 子中有,返回子里的
|
|
50
|
+
for (let value of model) {
|
|
51
|
+
let ret = getInnerResourceById(value, id)
|
|
52
|
+
if (ret) {
|
|
53
|
+
return ret
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
return null
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
// 根据id号取资源,自己不是,递归从子中找
|
|
61
|
+
function getInnerResourceById (res, id) {
|
|
62
|
+
if (res.id === id) {
|
|
63
|
+
return res
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
// 子中有,返回子里的
|
|
67
|
+
for (let value of res.children) {
|
|
68
|
+
let ret = getInnerResourceById(value, id)
|
|
69
|
+
if (ret) {
|
|
70
|
+
return ret
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
return null
|
|
75
|
+
}
|
package/src/saleManage.js
CHANGED
|
@@ -65,6 +65,12 @@ export default function () {
|
|
|
65
65
|
Vue.component('print-table-self', (resolve) => {
|
|
66
66
|
require(['./components/sale/common/PrintTableSelf'], resolve)
|
|
67
67
|
})
|
|
68
|
+
Vue.component('manage-res-select', (resolve) => {
|
|
69
|
+
require(['./components/sale/common/ResSelect'], resolve)
|
|
70
|
+
})
|
|
71
|
+
Vue.component('manage-right-tree', (resolve) => {
|
|
72
|
+
require(['./components/sale/common/RightTree'], resolve)
|
|
73
|
+
})
|
|
68
74
|
|
|
69
75
|
// 统计查询
|
|
70
76
|
Vue.component('tongji-manage', (resolve) => {
|