system-clients 3.1.89-8 → 3.1.90
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/.eslintrc.js +16 -16
- package/build/webpack.base.conf.js +85 -75
- package/package.json +2 -2
- package/src/components/Main.vue +1 -1
- package/src/components/TabButton.vue +201 -0
- package/src/components/Tabs.vue +67 -0
- package/src/components/equipment/EquipmentManage.vue +65 -65
- package/src/components/equipment/PosAdd.vue +322 -299
- package/src/components/equipment/PosList.vue +294 -254
- package/src/components/equipment/PosManage.vue +138 -150
- package/src/components/equipment/PosManageBoth.vue +125 -0
- package/src/components/equipment/PosParamAdd.vue +234 -0
- package/src/components/equipment/PosParamList.vue +121 -0
- package/src/components/equipment/PosParamManage.vue +51 -0
- package/src/components/parammanage/ParamPage.vue +3 -3
- package/src/components/parammanage/SinglePage.vue +2 -2
- package/src/components/server/Login.vue +37 -9
- package/src/components/server/PcdBuildingSelect.vue +241 -0
- package/src/components/server/ResSelect.vue +5 -0
- package/src/components/server/ResSelectGroup.vue +144 -122
- package/src/components/server/RightTree.vue +5 -0
- package/src/styles/less/aofeng/standard.less +444 -58
- package/src/styles/less/aofeng/themeOne/BinaryTemplate.less +13 -13
- package/src/styles/less/tables.less +50 -0
- package/src/styles/less/type.less +15 -2
- package/src/styles/less/variables.less +6 -3
- package/src/system.js +93 -87
- package/static/newStyle/about-us.png +0 -0
- package/yarn-error.log +6896 -0
- package/dist/index.html +0 -3
- package/dist/static/.gitkeep +0 -0
- package/dist/static/1.7881cef2853d833a86ab.js +0 -2
- package/dist/static/10.43c453235f37ff93e693.js +0 -2
- package/dist/static/11.19a73a70ee12abc54e33.js +0 -2
- package/dist/static/12.f48a08201d23a6ab3279.js +0 -2
- package/dist/static/2.ce25203a36db12c135c6.js +0 -2
- package/dist/static/3.b4b918df9846c518e1ad.js +0 -2
- package/dist/static/4.d908e190ef02e4e0422c.js +0 -2
- package/dist/static/5.382f5cb714a4aa05d9d4.js +0 -2
- package/dist/static/6.22643ee9ad70928c5ca2.js +0 -2
- package/dist/static/7.8ece001f2c6f144fb653.js +0 -2
- package/dist/static/8.4944140db91396b9bacd.js +0 -2
- package/dist/static/9.f3242776f89b8c2547ac.js +0 -2
- package/dist/static/PingFangSC-Regular.ttf +0 -0
- package/dist/static/app.css +0 -2
- package/dist/static/app2cf08cb232d85ecf35b8.js +0 -83
- package/dist/static/batchleft.png +0 -0
- package/dist/static/batchright.png +0 -0
- package/dist/static/bluemainbg.jpg +0 -0
- package/dist/static/glyphicons-halflings-regular.eot +0 -0
- package/dist/static/glyphicons-halflings-regular.svg +0 -288
- package/dist/static/glyphicons-halflings-regular.ttf +0 -0
- package/dist/static/glyphicons-halflings-regular.woff +0 -0
- package/dist/static/glyphicons-halflings-regular.woff2 +0 -0
- package/dist/static/huangtengbiaozhi.png +0 -0
- package/dist/static/images/lefticon//345/215/241/346/234/215/345/212/241/347/256/241/347/220/206.png +0 -0
- package/dist/static/images/lefticon//345/221/274/345/217/253/347/263/273/347/273/237.png +0 -0
- package/dist/static/images/lefticon//345/224/256/346/260/224/346/224/266/350/264/271.png +0 -0
- package/dist/static/images/lefticon//345/233/276/345/261/2023/346/213/267/350/264/2354.png +0 -0
- package/dist/static/images/lefticon//345/233/276/345/261/202577.png +0 -0
- package/dist/static/images/lefticon//345/233/276/345/261/2028/346/213/267/350/264/23513.png +0 -0
- package/dist/static/images/lefticon//345/256/211/346/243/200/346/237/245/347/234/213.png +0 -0
- package/dist/static/images/lefticon//345/256/211/346/243/200/350/256/241/345/210/222.png +0 -0
- package/dist/static/images/lefticon//345/276/256/344/277/241/346/234/215/345/212/241.png +0 -0
- package/dist/static/images/lefticon//346/212/245/345/273/272/347/263/273/347/273/237.png +0 -0
- package/dist/static/images/lefticon//346/212/245/350/241/250/346/237/245/350/257/242.png +0 -0
- package/dist/static/images/lefticon//346/227/245/345/270/270/347/256/241/347/220/206.png +0 -0
- package/dist/static/images/lefticon//346/234/272/350/241/250/347/256/241/347/220/206.png +0 -0
- package/dist/static/images/lefticon//346/237/245/350/257/242/345/210/227/350/241/250.png +0 -0
- package/dist/static/images/lefticon//346/241/243/346/241/210/347/256/241/347/220/206.png +0 -0
- package/dist/static/images/lefticon//347/211/251/350/201/224/347/275/221/350/241/250.png +0 -0
- package/dist/static/images/lefticon//347/263/273/347/273/237/347/256/241/347/220/206.png +0 -0
- package/dist/static/images/lefticon//347/263/273/347/273/237/350/256/276/347/275/256.png +0 -0
- package/dist/static/images/lefticon//347/273/217/350/220/245/347/256/241/346/216/247.png +0 -0
- package/dist/static/images/lefticon//347/273/274/345/220/210/344/270/232/345/212/241.png +0 -0
- package/dist/static/images/lefticon//347/273/274/345/220/210/346/237/245/350/257/242.png +0 -0
- package/dist/static/images/lefticon//350/217/234/345/215/225/344/274/270/347/274/251.png +0 -0
- package/dist/static/images/lefticon//351/200/200/345/207/272/347/263/273/347/273/237.png +0 -0
- package/dist/static/login-do.gif +0 -0
- package/dist/static/login-left.png +0 -0
- package/dist/static/login_bg.jpg +0 -0
- package/dist/static/login_title.png +0 -0
- package/dist/static/login_title1.png +0 -0
- package/dist/static/loginbg.gif +0 -0
- package/dist/static/loginbg.jpg +0 -0
- package/dist/static/loginbg1280.gif +0 -0
- package/dist/static/loginbg1366.gif +0 -0
- package/dist/static/loginlogo.png +0 -0
- package/dist/static/main_logo.png +0 -0
- package/dist/static/mainbg.jpg +0 -0
- package/dist/static/menulogo.png +0 -0
- package/dist/static/newStyle/clear.png +0 -0
- package/dist/static/newStyle/fife.png +0 -0
- package/dist/static/newStyle/hidden.png +0 -0
- package/dist/static/newStyle/label-clear.png +0 -0
- package/dist/static/newStyle/left-img.png +0 -0
- package/dist/static/newStyle/list_ok.png +0 -0
- package/dist/static/newStyle/login-check.png +0 -0
- package/dist/static/newStyle/login-con.png +0 -0
- package/dist/static/newStyle/login-do.gif +0 -0
- package/dist/static/newStyle/login-f.png +0 -0
- package/dist/static/newStyle/login-info.png +0 -0
- package/dist/static/newStyle/login-left.png +0 -0
- package/dist/static/newStyle/login-org.png +0 -0
- package/dist/static/newStyle/login-pwd.png +0 -0
- package/dist/static/newStyle/login-user.png +0 -0
- package/dist/static/newStyle/loginbg.gif +0 -0
- package/dist/static/newStyle/loginbg1280.gif +0 -0
- package/dist/static/newStyle/loginbg1366.gif +0 -0
- package/dist/static/newStyle/setting.png +0 -0
- package/dist/static/newStyle/shirk.png +0 -0
- package/dist/static/newStyle/stretch_bottom.png +0 -0
- package/dist/static/newStyle/stretch_left.png +0 -0
- package/dist/static/newStyle/stretch_right.png +0 -0
- package/dist/static/newStyle/stretch_top.png +0 -0
- package/dist/static/newStyle/system-off.png +0 -0
- package/dist/static/newmainbg.jpg +0 -0
- package/dist/static/pingfang-bold.ttf +0 -0
- package/dist/static/pingfang-medium.ttf +0 -0
- package/dist/static/pingfang-regular.ttf +0 -0
- package/dist/static/psicon.png +0 -0
- package/dist/static/singleleft.png +0 -0
- package/dist/static/singleright.png +0 -0
- package/dist/static/treeopen.png +0 -0
- package/dist/static/treeout.png +0 -0
- package/dist/static/treeset.png +0 -0
- package/dist/static/trendstrends.ttf +0 -0
- package/dist/static/usericon.png +0 -0
- package/dist/static/xinxi.png +0 -0
- package/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/gradle/wrapper/gradle-wrapper.properties +0 -5
- package/gradlew +0 -183
- package/gradlew.bat +0 -100
@@ -0,0 +1,121 @@
|
|
1
|
+
<template>
|
2
|
+
<div class="flex">
|
3
|
+
<criteria-paged :model="model" v-ref:paged>
|
4
|
+
<criteria partial='criteria' style="background-color: white" @condition-changed='$parent.selfSearch' v-ref:cri>
|
5
|
+
<div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
|
6
|
+
<div class="row">
|
7
|
+
<div class="col-sm-3 form-group">
|
8
|
+
<label class="font_normal_body">公 司</label>
|
9
|
+
<res-select restype='organization'
|
10
|
+
:is-mul="false"
|
11
|
+
@res-select="$parent.$parent.getorg"
|
12
|
+
:initresid="$parent.$parent.curorgid">
|
13
|
+
</res-select>
|
14
|
+
</div>
|
15
|
+
<div class="col-sm-3 form-group">
|
16
|
+
<label class="font_normal_body">参数名称</label>
|
17
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_param_name"
|
18
|
+
condition="name like '%{}%'" placeholder="参数名称">
|
19
|
+
</div>
|
20
|
+
<div class="span" style="float:right;margin-top: 6px">
|
21
|
+
<button type="button" class="button_search" @click="search()" v-el:cx>查询</button>
|
22
|
+
<button type="button" class="button_search" @click="$parent.$parent.add() " v-el:cx>新增</button>
|
23
|
+
</div>
|
24
|
+
</div>
|
25
|
+
</div>
|
26
|
+
</criteria>
|
27
|
+
<data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
|
28
|
+
<template partial='head'>
|
29
|
+
<tr>
|
30
|
+
<th style="text-align:center;white-space:nowrap;">参数id</th>
|
31
|
+
<th style="text-align:center;white-space:nowrap;">参数名称</th>
|
32
|
+
<th style="text-align:center;white-space:nowrap;">所属分公司</th>
|
33
|
+
<th style="text-align:center;white-space:nowrap;">所属银行</th>
|
34
|
+
<th style="text-align:center;white-space:nowrap;">创建人</th>
|
35
|
+
<th style="text-align:center;white-space:nowrap;">操作</th>
|
36
|
+
</tr>
|
37
|
+
</template>
|
38
|
+
<template partial='body' :model="model">
|
39
|
+
<tr>
|
40
|
+
<td style="text-align:center;white-space:nowrap;">{{ row.f_param_id }}</td>
|
41
|
+
<td style="text-align:center;white-space:nowrap;">{{ row.name }}</td>
|
42
|
+
<td style="text-align:center;white-space:nowrap;">{{ row.f_orgname }}</td>
|
43
|
+
<td style="text-align:center;white-space:nowrap;">{{ row.f_bank_name }}</td>
|
44
|
+
<td style="text-align:center;white-space:nowrap;">{{ row.f_operator }}</td>
|
45
|
+
<td style="text-align:center;white-space:nowrap;">
|
46
|
+
<div class="col-sm-1"></div>
|
47
|
+
<div class="col-sm-4">
|
48
|
+
<button type="button" class="btn button_new" v-if="!row.sum||row.sum ===0 "
|
49
|
+
@click.stop="$parent.$parent.$parent.delete(row)">删除
|
50
|
+
</button>
|
51
|
+
</div>
|
52
|
+
<div class="col-sm-1"></div>
|
53
|
+
<div class="col-sm-4">
|
54
|
+
<button type="button" class="btn button_new"
|
55
|
+
@click.stop="$parent.$parent.$parent.modify(row)">修改
|
56
|
+
</button>
|
57
|
+
</div>
|
58
|
+
<div class="col-sm-1"></div>
|
59
|
+
</td>
|
60
|
+
</tr>
|
61
|
+
</template>
|
62
|
+
</data-grid>
|
63
|
+
</criteria-paged>
|
64
|
+
</div>
|
65
|
+
</template>
|
66
|
+
|
67
|
+
<script>
|
68
|
+
|
69
|
+
import {PagedList} from 'vue-client'
|
70
|
+
|
71
|
+
export default {
|
72
|
+
title: '终端控制',
|
73
|
+
components: {},
|
74
|
+
data() {
|
75
|
+
return {
|
76
|
+
model: new PagedList('rs/sql/get_posParam', 20),
|
77
|
+
curorgid: [this.f_filialeid],
|
78
|
+
}
|
79
|
+
},
|
80
|
+
props: [],
|
81
|
+
ready() {
|
82
|
+
this.search()
|
83
|
+
},
|
84
|
+
watch: {},
|
85
|
+
methods: {
|
86
|
+
getRes(val) {
|
87
|
+
if (val.orgobj.length === 1 && val.orgobj[0].resourcetype === 'user') {
|
88
|
+
this.$refs.paged.$refs.cri.model.f_user_operatorid = val.orgobj[0].userid
|
89
|
+
this.$refs.paged.$refs.cri.model.f_user_operator = val.orgobj[0].name
|
90
|
+
} else {
|
91
|
+
this.$refs.paged.$refs.cri.model.f_user_operatorid = ''
|
92
|
+
this.$refs.paged.$refs.cri.model.f_user_operator = ''
|
93
|
+
}
|
94
|
+
},
|
95
|
+
async delete(row) {
|
96
|
+
await this.$resetpost('rs/logic/deletePosParam', {data: row}, {rejectMsg: null, resolveMsg: null})
|
97
|
+
await this.search()
|
98
|
+
},
|
99
|
+
modify(row) {
|
100
|
+
this.$dispatch('modify', row)
|
101
|
+
},
|
102
|
+
search() {
|
103
|
+
this.$refs.paged.$refs.cri.search()
|
104
|
+
},
|
105
|
+
selfSearch(args) {
|
106
|
+
if (this.f_orgid) {
|
107
|
+
args.condition += ` and f_orgid = ${this.f_orgid} `
|
108
|
+
}
|
109
|
+
this.model.search(args.condition, this.model)
|
110
|
+
},
|
111
|
+
add() {
|
112
|
+
this.$dispatch('add', this.f_filialeid)
|
113
|
+
},
|
114
|
+
getorg(val) {
|
115
|
+
this.f_orgid = val[0]
|
116
|
+
this.f_filialeid = val[0]
|
117
|
+
}
|
118
|
+
},
|
119
|
+
computed: {}
|
120
|
+
}
|
121
|
+
</script>
|
@@ -0,0 +1,51 @@
|
|
1
|
+
<template>
|
2
|
+
<div class="flex-row">
|
3
|
+
<div :class="{'basic-main':!isChange,'binary-left':isChange}">
|
4
|
+
<pos-param-list v-ref:list></pos-param-list>
|
5
|
+
</div>
|
6
|
+
<div class="binary-right" style="margin-left: 10px; width: 40%;" v-if="isChange">
|
7
|
+
<pos-param-add :param_id="param_id" v-ref:add></pos-param-add>
|
8
|
+
</div>
|
9
|
+
</div>
|
10
|
+
</template>
|
11
|
+
<script>
|
12
|
+
|
13
|
+
import PosParamList from './PosParamList'
|
14
|
+
import PosParamAdd from './PosParamAdd'
|
15
|
+
|
16
|
+
export default {
|
17
|
+
title: 'POS终端管理',
|
18
|
+
components: {
|
19
|
+
PosParamList, PosParamAdd
|
20
|
+
},
|
21
|
+
data() {
|
22
|
+
return {
|
23
|
+
isChange: false,
|
24
|
+
param_id: ''
|
25
|
+
}
|
26
|
+
},
|
27
|
+
methods: {},
|
28
|
+
events: {
|
29
|
+
'add'() {
|
30
|
+
this.isChange = true
|
31
|
+
setTimeout(() => {
|
32
|
+
this.$refs.add.initModel()
|
33
|
+
}, 100)
|
34
|
+
},
|
35
|
+
'close'() {
|
36
|
+
this.isChange = false
|
37
|
+
},
|
38
|
+
'research'() {
|
39
|
+
this.$refs.list.search()
|
40
|
+
this.isChange = false
|
41
|
+
},
|
42
|
+
'modify'(row) {
|
43
|
+
this.isChange = true
|
44
|
+
setTimeout(() => {
|
45
|
+
this.$refs.add.curorgid = []
|
46
|
+
this.$refs.add.edit(row.f_param_id)
|
47
|
+
}, 100)
|
48
|
+
}
|
49
|
+
}
|
50
|
+
}
|
51
|
+
</script>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<template>
|
2
2
|
<div class="flex">
|
3
3
|
<p class="bg-info text-center" style="padding: 8px;">参数管理
|
4
|
-
<
|
4
|
+
<button type="button" name="button" class="button_search button_spacing width-60" @click="add('t_parameter')" style="float:right">新增</button>
|
5
5
|
</p>
|
6
6
|
<div class="auto">
|
7
7
|
<form class="form-horizontal" style="margin-bottom: 5px;">
|
@@ -25,7 +25,7 @@
|
|
25
25
|
</form>
|
26
26
|
</div>
|
27
27
|
<div class="span">
|
28
|
-
<data-grid :model="model" v-ref:params @select-changed="selected"
|
28
|
+
<data-grid :model="model" v-ref:params @select-changed="selected">
|
29
29
|
<template partial='head'>
|
30
30
|
<tr>
|
31
31
|
<th>序号</th>
|
@@ -50,7 +50,7 @@
|
|
50
50
|
|
51
51
|
<p v-if="selectItem" class="bg-info text-center" style="padding: 8px;margin: 8px 0px;">
|
52
52
|
{{selectItem.name}}
|
53
|
-
<
|
53
|
+
<button type="button" name="button" class="button_search button_spacing width-60" @click="add('t_paramvalue')" style="float:right">新增</button>
|
54
54
|
</p>
|
55
55
|
<div v-if="selectItem" class="span">
|
56
56
|
<data-grid :model="params" v-ref:selects >
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<div class="flex">
|
3
3
|
<p class="bg-info text-center" style="padding: 8px;">
|
4
4
|
单值管理
|
5
|
-
<
|
5
|
+
<button type="button" name="button" class="button_search button_spacing width-60 " @click="add()" style="float:right">新增</button>
|
6
6
|
</p>
|
7
7
|
<div class="auto">
|
8
8
|
<form class="form-horizontal" style="margin-bottom: 5px;">
|
@@ -27,7 +27,7 @@
|
|
27
27
|
</div>
|
28
28
|
<div class="span">
|
29
29
|
<partial-view v-ref:single-load>
|
30
|
-
<data-grid :model="model" v-ref:grid
|
30
|
+
<data-grid :model="model" v-ref:grid >
|
31
31
|
<template partial='head'>
|
32
32
|
<tr>
|
33
33
|
<th>序号</th>
|
@@ -1,17 +1,30 @@
|
|
1
1
|
<template>
|
2
2
|
<div class="syslogin">
|
3
3
|
<div class="login-title" >
|
4
|
-
<div class="
|
5
|
-
<
|
6
|
-
<
|
7
|
-
|
8
|
-
|
4
|
+
<div class="row auto">
|
5
|
+
<marquee style="width:80%;margin-top:25px"><span style="font-size: 1.8rem;color: white;">{{notice}}</span></marquee>
|
6
|
+
<div class="login-title-chi" style="white-space: nowrap;margin-right:-5%">
|
7
|
+
<img src="../../../static/newStyle/login-info.png"/>
|
8
|
+
<span @click="showus=true">关于我们</span>
|
9
|
+
<!-- <img src="../../../static/newStyle/login-con.png"/>-->
|
10
|
+
<!-- <span>联系我们</span>-->
|
11
|
+
</div>
|
9
12
|
</div>
|
10
13
|
</div>
|
14
|
+
|
15
|
+
<modal :show.sync="showus" backdrop="true" width="50%" style="width:auto;">
|
16
|
+
<article slot="modal-body" class="modal-body" >
|
17
|
+
<img style="height:100%;width:100%" src="../../../static/newStyle/about-us.png"/>
|
18
|
+
</article>
|
19
|
+
<footer slot="modal-footer" class="modal-footer">
|
20
|
+
</footer>
|
21
|
+
</modal>
|
22
|
+
|
23
|
+
|
11
24
|
<div class="logoew" v-if="logoandroid" >
|
12
25
|
<div v-if="logoandroid" class="imglogo"></div>
|
13
|
-
|
14
|
-
|
26
|
+
<p class="logocontent">燃气客服系统Android版</p>
|
27
|
+
<p class="logofooter">(仅浏览器扫描)</p>
|
15
28
|
</div>
|
16
29
|
<!--输入框-->
|
17
30
|
<div class="loginmain">
|
@@ -103,6 +116,7 @@
|
|
103
116
|
import co from 'co'
|
104
117
|
import $ from 'jquery'
|
105
118
|
import Vue from 'vue'
|
119
|
+
import {HttpResetClass} from 'vue-client'
|
106
120
|
|
107
121
|
let saveGen = function *(self) {
|
108
122
|
try {
|
@@ -190,7 +204,19 @@
|
|
190
204
|
}
|
191
205
|
export default {
|
192
206
|
title: '登录',
|
193
|
-
ready () {
|
207
|
+
async ready () {
|
208
|
+
let http = new HttpResetClass()
|
209
|
+
let res = await http.load('POST', 'rs/sql/singleTable',
|
210
|
+
{data:{
|
211
|
+
tablename: 't_changedeclare',
|
212
|
+
condition: ` f_type ='变更通知' `
|
213
|
+
}
|
214
|
+
}, {resolveMsg: null, rejectMsg: '获取通知出错!!'})
|
215
|
+
if(res.data.length>0){
|
216
|
+
console.log("---------------获取通知",res.data[0].f_change_message)
|
217
|
+
this.notice=res.data[0].f_change_message
|
218
|
+
}
|
219
|
+
|
194
220
|
if (this.$login && this.$login.getUrlCompileParames('name') && this.$login.getUrlCompileParames('password')) {
|
195
221
|
this.model.ename = this.$login.getUrlCompileParames('name')
|
196
222
|
this.model.password = this.$login.getUrlCompileParames('password')
|
@@ -228,7 +254,9 @@
|
|
228
254
|
picLyanzhengma: '',
|
229
255
|
// 修改密码弹框展示
|
230
256
|
modifyPwShow: false,
|
231
|
-
logoandroid:false
|
257
|
+
logoandroid:false,
|
258
|
+
showus:false,
|
259
|
+
notice:''
|
232
260
|
}
|
233
261
|
},
|
234
262
|
methods: {
|
@@ -0,0 +1,241 @@
|
|
1
|
+
<template>
|
2
|
+
<div :class="style" v-show="show.pcdShow">
|
3
|
+
<label class="font_normal_body">省 市 区 </label>
|
4
|
+
<v-select :value.sync="model.f_pcd"
|
5
|
+
class="select_list select"
|
6
|
+
enter-push
|
7
|
+
v-model="model.f_pcd"
|
8
|
+
style="width: 60%"
|
9
|
+
:multiple="mul"
|
10
|
+
@change="pcdChange"
|
11
|
+
:options='arrays.pcd' placeholder='选择省市区'
|
12
|
+
close-on-select v-el:cc>
|
13
|
+
</v-select>
|
14
|
+
</div>
|
15
|
+
<div :class="style" v-show="show.streetShow">
|
16
|
+
<label class="font_normal_body">街  道</label>
|
17
|
+
<v-select :value.sync="model.f_street"
|
18
|
+
class="select_list select"
|
19
|
+
enter-push
|
20
|
+
v-model="model.f_street"
|
21
|
+
@change="streetChange"
|
22
|
+
style="width: 60%"
|
23
|
+
:multiple="mul"
|
24
|
+
:options='arrays.street' placeholder='选择街道'
|
25
|
+
close-on-select v-el:cc>
|
26
|
+
</v-select>
|
27
|
+
</div>
|
28
|
+
<div :class="style" v-show="show.areaShow">
|
29
|
+
<label class="font_normal_body">小    区</label>
|
30
|
+
<v-select :value.sync="model.f_residential_area"
|
31
|
+
class="select_list select"
|
32
|
+
enter-push
|
33
|
+
v-model="model.f_residential_area"
|
34
|
+
style="width: 60%"
|
35
|
+
:multiple="mul"
|
36
|
+
@change="areaChange()"
|
37
|
+
:options='arrays.area' placeholder='选择小区'
|
38
|
+
close-on-select v-el:cc>
|
39
|
+
</v-select>
|
40
|
+
</div>
|
41
|
+
<div :class="style" v-show="show.buildingShow">
|
42
|
+
<label class="font_normal_body">楼  栋</label>
|
43
|
+
<v-select :value.sync="model.f_building"
|
44
|
+
class="select_list select"
|
45
|
+
enter-push
|
46
|
+
v-model="model.f_building"
|
47
|
+
style="width: 60%"
|
48
|
+
:multiple="mul"
|
49
|
+
:options='arrays.building' placeholder='选择楼栋'
|
50
|
+
close-on-select v-el:cc>
|
51
|
+
</v-select>
|
52
|
+
</div>
|
53
|
+
</template>
|
54
|
+
<script>
|
55
|
+
import plugin from '../../plugins/GetLoginInfoService'
|
56
|
+
import { HttpResetClass } from 'vue-client'
|
57
|
+
let readyGen = async function (self) {
|
58
|
+
self.showComponent.find((item)=>{
|
59
|
+
switch(item){
|
60
|
+
case 'pcd': self.show.pcdShow=true; break;
|
61
|
+
case 'street': self.show.streetShow=true; break;
|
62
|
+
case 'area': self.show.areaShow=true; break;
|
63
|
+
case 'building': self.show.buildingShow=true; break;
|
64
|
+
}
|
65
|
+
})
|
66
|
+
self.arrays.pcd=[{label:'全部',value:''}]
|
67
|
+
if(self.show.pcdShow){
|
68
|
+
let HttpReset = new HttpResetClass()
|
69
|
+
var pcd = await HttpReset.load('POST', 'rs/sql/singleTable_OrderBy', {
|
70
|
+
data: {
|
71
|
+
items: 'f_pcd',
|
72
|
+
tablename: 't_pcd',
|
73
|
+
condition: `f_pcd is not null group by f_pcd`,
|
74
|
+
orderitem: 'f_pcd'
|
75
|
+
}
|
76
|
+
}, {resolveMsg: null, rejectMsg: '获取省市区出错!'})
|
77
|
+
for(var i=0;i<pcd.data.length;i++){
|
78
|
+
self.arrays.pcd.push({label:pcd.data[i].f_pcd,value:pcd.data[i].f_pcd})
|
79
|
+
}
|
80
|
+
}else if(self.show.streetShow){
|
81
|
+
console.log("------------查街道")
|
82
|
+
let HttpReset = new HttpResetClass()
|
83
|
+
var street = await HttpReset.load('POST', 'rs/sql/singleTable_OrderBy', {
|
84
|
+
data: {
|
85
|
+
items: 'f_street',
|
86
|
+
tablename: 't_street',
|
87
|
+
condition: `f_filialeid = '${self.$login.f.orgid}' and f_street is not null group by f_street`,
|
88
|
+
orderitem: 'f_street'
|
89
|
+
}
|
90
|
+
}, {resolveMsg: null, rejectMsg: '获取街道出错!'})
|
91
|
+
for(var i=0;i<street.data.length;i++){
|
92
|
+
self.arrays.street.push({label:street.data[i].f_street,value:street.data[i].f_street})
|
93
|
+
}
|
94
|
+
}else if(self.show.areaShow){
|
95
|
+
let HttpReset = new HttpResetClass()
|
96
|
+
var area = await HttpReset.load('POST', 'rs/sql/singleTable_OrderBy', {
|
97
|
+
data: {
|
98
|
+
items: 'f_residential_area',
|
99
|
+
tablename: 't_area',
|
100
|
+
condition: `f_filialeid = '${self.$login.f.orgid}' and f_residential_area is not null group by f_residential_area`,
|
101
|
+
orderitem: 'f_residential_area'
|
102
|
+
}
|
103
|
+
}, {resolveMsg: null, rejectMsg: '获取小区出错!'})
|
104
|
+
for(var i=0;i<area.data.length;i++){
|
105
|
+
self.arrays.area.push({label:area.data[i].f_residential_area,value:area.data[i].f_residential_area})
|
106
|
+
}
|
107
|
+
}
|
108
|
+
|
109
|
+
|
110
|
+
}
|
111
|
+
export default {
|
112
|
+
title: '省市区级联选择',
|
113
|
+
props: {
|
114
|
+
style: {
|
115
|
+
type: String,
|
116
|
+
default: 'col-sm-2 form-group'
|
117
|
+
},
|
118
|
+
mul: {
|
119
|
+
type: Boolean,
|
120
|
+
default: false
|
121
|
+
},
|
122
|
+
showComponent:{
|
123
|
+
default:['pcd','street','area','building']
|
124
|
+
}
|
125
|
+
|
126
|
+
},
|
127
|
+
data () {
|
128
|
+
return {
|
129
|
+
condition:'',
|
130
|
+
show:{
|
131
|
+
pcdShow:false,
|
132
|
+
streetShow:false,
|
133
|
+
areaShow:false,
|
134
|
+
buildingShow:false
|
135
|
+
},
|
136
|
+
arrays:{
|
137
|
+
pcd:[{label: '全部', value: ''}],
|
138
|
+
street:[{label: '全部', value: ''}],
|
139
|
+
area:[{label: '全部', value: ''}],
|
140
|
+
building:[{label: '全部', value: ''}]
|
141
|
+
},
|
142
|
+
model:{
|
143
|
+
f_pcd:[],
|
144
|
+
f_street:[],
|
145
|
+
f_residential_area:[],
|
146
|
+
f_building:[]
|
147
|
+
}
|
148
|
+
|
149
|
+
}
|
150
|
+
},
|
151
|
+
ready () {
|
152
|
+
readyGen(this)
|
153
|
+
},
|
154
|
+
methods:{
|
155
|
+
async pcdChange(){
|
156
|
+
this.arrays.street=[{label:'全部',value:''}]
|
157
|
+
var condition = `f_filialeid = '${this.$login.f.orgid}' and f_street is not null group by f_street`
|
158
|
+
let street = await this.$resetpost('rs/sql/singleTable_OrderBy', {
|
159
|
+
data: {
|
160
|
+
items: 'f_street',
|
161
|
+
tablename: 't_street',
|
162
|
+
condition: condition,
|
163
|
+
orderitem: 'f_street'
|
164
|
+
}
|
165
|
+
}, {resolveMsg: null, rejectMsg: '获取街道出错'})
|
166
|
+
for(var i=0;i<street.data.length;i++){
|
167
|
+
this.arrays.street.push({label:street.data[i].f_street,value:street.data[i].f_street})
|
168
|
+
}
|
169
|
+
this.returnCondition()
|
170
|
+
},
|
171
|
+
async streetChange(){
|
172
|
+
this.arrays.area=[{label:'全部',value:''}]
|
173
|
+
var condition = `f_street = '${this.model.f_street?this.model.f_street:null}' and f_residential_area is not null group by f_residential_area`
|
174
|
+
let area = await this.$resetpost('rs/sql/singleTable_OrderBy', {
|
175
|
+
data: {
|
176
|
+
items: 'f_residential_area',
|
177
|
+
tablename: 't_area',
|
178
|
+
condition: condition,
|
179
|
+
orderitem: 'f_residential_area'
|
180
|
+
}
|
181
|
+
}, {resolveMsg: null, rejectMsg: '获取小区出错'})
|
182
|
+
for(var i=0;i<area.data.length;i++){
|
183
|
+
this.arrays.area.push({label:area.data[i].f_residential_area,value:area.data[i].f_residential_area})
|
184
|
+
}
|
185
|
+
this.returnCondition()
|
186
|
+
},
|
187
|
+
async areaChange(){
|
188
|
+
this.building = [{label:'全部',value:''}]
|
189
|
+
var condition=''
|
190
|
+
if(this.show.areaShow){
|
191
|
+
condition = `f_residential_area = '${this.model.f_residential_area?this.model.f_residential_area:null}' and f_building is not null group by f_building`
|
192
|
+
}else{
|
193
|
+
condition = `f_filialeid = '${this.$login.f.orgid}' and f_building is not null group by f_building`
|
194
|
+
}
|
195
|
+
let build = await this.$resetpost('rs/sql/singleTable_OrderBy', {
|
196
|
+
data: {
|
197
|
+
items: 'f_building',
|
198
|
+
tablename: 't_user_address',
|
199
|
+
condition: condition,
|
200
|
+
orderitem: 'f_building'
|
201
|
+
}
|
202
|
+
}, {resolveMsg: null, rejectMsg: '获取楼栋出错'})
|
203
|
+
for(var i=0;i<build.data.length;i++){
|
204
|
+
this.arrays.building.push({label:build.data[i].f_building,value:build.data[i].f_building})
|
205
|
+
}
|
206
|
+
this.returnCondition()
|
207
|
+
},
|
208
|
+
|
209
|
+
returnCondition(){
|
210
|
+
this.condition=''
|
211
|
+
if(this.model.f_pcd){
|
212
|
+
if(this.model.f_pcd.length>0){
|
213
|
+
this.condition+=` and f_pcd = '${this.model.f_pcd[0]}'`
|
214
|
+
}
|
215
|
+
}
|
216
|
+
if(this.model.f_street) {
|
217
|
+
if (this.model.f_street.length > 0) {
|
218
|
+
this.condition += ` and f_street = '${this.model.f_street[0]}'`
|
219
|
+
}
|
220
|
+
}
|
221
|
+
if(this.model.f_area) {
|
222
|
+
if (this.model.f_area.length > 0) {
|
223
|
+
this.condition += ` and f_area = '${this.model.f_area[0]}'`
|
224
|
+
}
|
225
|
+
}
|
226
|
+
if(this.model.f_building) {
|
227
|
+
if (this.model.f_building.length > 0) {
|
228
|
+
this.condition += ` and f_building = '${this.model.f_building[0]}'`
|
229
|
+
}
|
230
|
+
}
|
231
|
+
// this.$parent.setCon(this.condition)
|
232
|
+
this.$dispatch('setcon',this.condition)
|
233
|
+
}
|
234
|
+
},
|
235
|
+
watch: {
|
236
|
+
// 'condition'(val){
|
237
|
+
//
|
238
|
+
// }
|
239
|
+
}
|
240
|
+
}
|
241
|
+
</script>
|
@@ -3,6 +3,7 @@
|
|
3
3
|
:value.sync="selectres"
|
4
4
|
:multiple="isMul"
|
5
5
|
search="true"
|
6
|
+
:disabled="mustselect"
|
6
7
|
:close-on-select="!isMul"
|
7
8
|
@change="resChange"
|
8
9
|
>
|
@@ -33,6 +34,10 @@
|
|
33
34
|
type: Array,
|
34
35
|
default() { return [] },
|
35
36
|
},
|
37
|
+
mustselect: {
|
38
|
+
type: Boolean,
|
39
|
+
default: false
|
40
|
+
},
|
36
41
|
},
|
37
42
|
data () {
|
38
43
|
return {
|