楼盘表相关改动
Showing
10 changed files
with
283 additions
and
32 deletions
src/api/lpb.js
0 → 100644
... | @@ -2,6 +2,8 @@ | ... | @@ -2,6 +2,8 @@ |
2 | padding: 18px; | 2 | padding: 18px; |
3 | padding-top: 0; | 3 | padding-top: 0; |
4 | box-sizing: border-box; | 4 | box-sizing: border-box; |
5 | width: 100%; | ||
6 | height: 100%; | ||
5 | } | 7 | } |
6 | .el-table .success-row { | 8 | .el-table .success-row { |
7 | background:@tablebg; | 9 | background:@tablebg; | ... | ... |
... | @@ -70,6 +70,10 @@ export default { | ... | @@ -70,6 +70,10 @@ export default { |
70 | type: Boolean, | 70 | type: Boolean, |
71 | default: false, | 71 | default: false, |
72 | }, | 72 | }, |
73 | islpb:{ | ||
74 | type: Boolean, | ||
75 | default: false, | ||
76 | } | ||
73 | }, | 77 | }, |
74 | data() { | 78 | data() { |
75 | return { | 79 | return { |
... | @@ -156,9 +160,9 @@ export default { | ... | @@ -156,9 +160,9 @@ export default { |
156 | text-overflow: ellipsis; | 160 | text-overflow: ellipsis; |
157 | white-space: nowrap; | 161 | white-space: nowrap; |
158 | } | 162 | } |
159 | .active_color { | 163 | // .active_color { |
160 | color: #ffffff; | 164 | // color: #ffffff; |
161 | } | 165 | // } |
162 | .reTree_icon { | 166 | .reTree_icon { |
163 | width: 17px; | 167 | width: 17px; |
164 | height: 17px; | 168 | height: 17px; |
... | @@ -206,7 +210,9 @@ export default { | ... | @@ -206,7 +210,9 @@ export default { |
206 | // padding-bottom: 15px; | 210 | // padding-bottom: 15px; |
207 | width: 100%; | 211 | width: 100%; |
208 | padding-left: 40px; | 212 | padding-left: 40px; |
209 | color: #ffffff; | 213 | } |
214 | .white_layer { | ||
215 | color: black!important; | ||
210 | } | 216 | } |
211 | 217 | ||
212 | .second_layer::before { | 218 | .second_layer::before { | ... | ... |
1 | <template> | 1 | <template> |
2 | <div | 2 | <div |
3 | class="content column-start-center reTree_box" | 3 | class="content column-start-center reTree_box" |
4 | :style="{ fontSize: (size || 14) + 'px', lineHeight: (size || 14) + 'px' }" | 4 | :style="{ fontSize: (size || 14) + 'px', lineHeight: (size || 14) + 'px', width: (islpb ? '200':'374') + 'px' }" |
5 | style="width:347px" | ||
6 | > | 5 | > |
7 | <div | 6 | <div |
8 | class="column-start-center basic_layer" | 7 | class="column-start-center basic_layer" |
8 | :class="islpb ? 'white_layer':''" | ||
9 | v-for="(item, index) in formatData" | 9 | v-for="(item, index) in formatData" |
10 | :key="index" | 10 | :key="index" |
11 | > | 11 | > |
... | @@ -14,6 +14,7 @@ | ... | @@ -14,6 +14,7 @@ |
14 | :class="{ | 14 | :class="{ |
15 | active_color: item.expand && item.children.length > 0, | 15 | active_color: item.expand && item.children.length > 0, |
16 | }" | 16 | }" |
17 | @contextmenu.prevent="openMenu($event, item)" | ||
17 | @click="itemClick(item)" | 18 | @click="itemClick(item)" |
18 | > | 19 | > |
19 | <div | 20 | <div |
... | @@ -42,6 +43,7 @@ | ... | @@ -42,6 +43,7 @@ |
42 | :list="item.children" | 43 | :list="item.children" |
43 | :visible="visible" | 44 | :visible="visible" |
44 | :size="size" | 45 | :size="size" |
46 | :islpb="islpb" | ||
45 | ></lineItem> | 47 | ></lineItem> |
46 | </div> | 48 | </div> |
47 | 49 | ||
... | @@ -77,6 +79,10 @@ export default { | ... | @@ -77,6 +79,10 @@ export default { |
77 | type: Number, | 79 | type: Number, |
78 | default: 14, | 80 | default: 14, |
79 | }, | 81 | }, |
82 | islpb:{ | ||
83 | type: Boolean, | ||
84 | default: false, | ||
85 | } | ||
80 | }, | 86 | }, |
81 | components: { lineItem,Create }, | 87 | components: { lineItem,Create }, |
82 | data() { | 88 | data() { |
... | @@ -123,7 +129,6 @@ export default { | ... | @@ -123,7 +129,6 @@ export default { |
123 | }, | 129 | }, |
124 | //添加定着物 | 130 | //添加定着物 |
125 | openCreateDialog(){ | 131 | openCreateDialog(){ |
126 | debugger | ||
127 | this.dialogVisible = true | 132 | this.dialogVisible = true |
128 | this.$store.state.rightClickZdbsm = this.zdData.zdbsm; | 133 | this.$store.state.rightClickZdbsm = this.zdData.zdbsm; |
129 | }, | 134 | }, |
... | @@ -169,6 +174,11 @@ export default { | ... | @@ -169,6 +174,11 @@ export default { |
169 | this.$emit("detailClick", data); | 174 | this.$emit("detailClick", data); |
170 | }, 300); | 175 | }, 300); |
171 | }, | 176 | }, |
177 | //自然幢右键点击事件 | ||
178 | openMenu(e,item){ | ||
179 | console.log(e); | ||
180 | console.log(item); | ||
181 | }, | ||
172 | detailDoubleClick(data) { | 182 | detailDoubleClick(data) { |
173 | clearTimeout(this.timer); | 183 | clearTimeout(this.timer); |
174 | this.selectedDetail = data; | 184 | this.selectedDetail = data; |
... | @@ -261,9 +271,9 @@ export default { | ... | @@ -261,9 +271,9 @@ export default { |
261 | text-overflow: ellipsis; | 271 | text-overflow: ellipsis; |
262 | white-space: nowrap; | 272 | white-space: nowrap; |
263 | } | 273 | } |
264 | .active_color { | 274 | // .active_color { |
265 | color: #ffffff; | 275 | // color: #ffffff; |
266 | } | 276 | // } |
267 | .reTree_box { | 277 | .reTree_box { |
268 | // overflow-y: auto; | 278 | // overflow-y: auto; |
269 | } | 279 | } |
... | @@ -289,6 +299,9 @@ export default { | ... | @@ -289,6 +299,9 @@ export default { |
289 | flex: 1; | 299 | flex: 1; |
290 | } | 300 | } |
291 | } | 301 | } |
302 | .white_layer { | ||
303 | color: black!important; | ||
304 | } | ||
292 | .first_vertical_line { | 305 | .first_vertical_line { |
293 | content: ""; | 306 | content: ""; |
294 | position: absolute; | 307 | position: absolute; |
... | @@ -308,13 +321,6 @@ export default { | ... | @@ -308,13 +321,6 @@ export default { |
308 | cursor: pointer; | 321 | cursor: pointer; |
309 | padding-left: 25px; | 322 | padding-left: 25px; |
310 | } | 323 | } |
311 | .third_layer { | ||
312 | position: relative; | ||
313 | padding-bottom: 15px; | ||
314 | width: 100%; | ||
315 | padding-left: 40px; | ||
316 | color: #ffffff; | ||
317 | } | ||
318 | 324 | ||
319 | .second_layer::before { | 325 | .second_layer::before { |
320 | content: ""; | 326 | content: ""; |
... | @@ -325,15 +331,6 @@ export default { | ... | @@ -325,15 +331,6 @@ export default { |
325 | top: 9px; | 331 | top: 9px; |
326 | background: #c3c5c8; | 332 | background: #c3c5c8; |
327 | } | 333 | } |
328 | .third_layer::before { | ||
329 | content: ""; | ||
330 | position: absolute; | ||
331 | height: 1px; | ||
332 | width: 20px; | ||
333 | left: 9px; | ||
334 | top: 9px; | ||
335 | background: #c3c5c8; | ||
336 | } | ||
337 | 334 | ||
338 | .linkLine_default::after { | 335 | .linkLine_default::after { |
339 | content: ""; | 336 | content: ""; | ... | ... |
... | @@ -408,7 +408,7 @@ export default { | ... | @@ -408,7 +408,7 @@ export default { |
408 | } | 408 | } |
409 | 409 | ||
410 | .el-main { | 410 | .el-main { |
411 | background-color: #f1f4fc; | 411 | background-color: #EAEDF5; |
412 | color: #333; | 412 | color: #333; |
413 | // text-align: center; | 413 | // text-align: center; |
414 | // line-height: 160px; | 414 | // line-height: 160px; | ... | ... |
... | @@ -38,4 +38,22 @@ export default { | ... | @@ -38,4 +38,22 @@ export default { |
38 | watch: {}, | 38 | watch: {}, |
39 | }; | 39 | }; |
40 | </script> | 40 | </script> |
41 | <style scoped lang="less"></style> | 41 | <style scoped lang="less"> |
42 | .content_box{ | ||
43 | .el-tabs{ | ||
44 | width: 100%; | ||
45 | height: 100%; | ||
46 | display: flex; | ||
47 | flex-direction: column; | ||
48 | } | ||
49 | /deep/.el-tabs__content{ | ||
50 | width: 100%; | ||
51 | height: 100%; | ||
52 | flex:1; | ||
53 | } | ||
54 | .el-tab-pane{ | ||
55 | width: 100%; | ||
56 | height: 100%; | ||
57 | } | ||
58 | } | ||
59 | </style> | ... | ... |
src/views/systemZRZ/lpb/detail/index.vue
0 → 100644
1 | <template> | ||
2 | <div class=""></div> | ||
3 | </template> | ||
4 | |||
5 | <script> | ||
6 | export default { | ||
7 | name:"", | ||
8 | components:{}, | ||
9 | props:{}, | ||
10 | data(){ | ||
11 | return { | ||
12 | } | ||
13 | }, | ||
14 | created(){}, | ||
15 | mounted(){}, | ||
16 | methods:{}, | ||
17 | computed: {}, | ||
18 | watch: {}, | ||
19 | } | ||
20 | </script> | ||
21 | <style scoped lang="less"> | ||
22 | </style> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
src/views/systemZRZ/lpb/edit/index.vue
0 → 100644
1 | <template> | ||
2 | <div class="edit"> | ||
3 | <div class="tab-header"> | ||
4 | <div class="searchContent"> | ||
5 | <el-radio-group v-model="radio1"> | ||
6 | <el-radio-button class="radioBtn" label="1" border>实测</el-radio-button> | ||
7 | <el-radio-button class="radioBtn" label="2" border>预测</el-radio-button> | ||
8 | </el-radio-group> | ||
9 | <el-input v-model="bdcdyh" class="searchInput" placeholder="输入不动产单元号"></el-input> | ||
10 | </div> | ||
11 | <div> | ||
12 | <el-button class="radioBtn" label="1" @click="create" border>创建楼盘</el-button> | ||
13 | <el-button class="radioBtn" label="2" border>实预测转换</el-button> | ||
14 | <el-button class="radioBtn" label="3" border>批量户</el-button> | ||
15 | <el-button class="radioBtn" label="4" border>批量层</el-button> | ||
16 | <el-button class="radioBtn" label="5" border>批量室号</el-button> | ||
17 | <el-button class="radioBtn" label="6" border>批量坐落</el-button> | ||
18 | <el-button class="radioBtn" label="7" border>批量单元号</el-button> | ||
19 | </div> | ||
20 | </div> | ||
21 | <div class="tab-content"> | ||
22 | <div class="lp-tree" :class="createFlag ? 'w260':'w0'"> | ||
23 | <LineTree :pd="pd" class="treeData" :islpb = "islpb" ></LineTree> | ||
24 | <p @click="createFlag = false" style="width:20px;position:absolute;top:0;right:0;cursor:pointer;">X</p> | ||
25 | </div> | ||
26 | <div class="lp-overview"> | ||
27 | 楼盘单元格 | ||
28 | </div> | ||
29 | <div class="lp-legend"> | ||
30 | 楼盘图例 | ||
31 | </div> | ||
32 | </div> | ||
33 | </div> | ||
34 | </template> | ||
35 | |||
36 | <script> | ||
37 | import LineTree from "../../../../components/lineTree/lineTree"; | ||
38 | import {getLpbMenuTree} from "../../../../api/lpb" | ||
39 | export default { | ||
40 | name:"", | ||
41 | components:{LineTree}, | ||
42 | props:{}, | ||
43 | data(){ | ||
44 | return { | ||
45 | radio1:'', | ||
46 | radio2:'', | ||
47 | createFlag:false, | ||
48 | bdcdyh:'', | ||
49 | islpb:true, | ||
50 | pd:[], //创建楼盘的树结构数据 | ||
51 | } | ||
52 | }, | ||
53 | created(){}, | ||
54 | mounted(){ | ||
55 | this.getLpbMenuTree('d1b82b27f2a6ab7bf3f0e7708c96e46f') | ||
56 | }, | ||
57 | methods:{ | ||
58 | //创建楼盘 | ||
59 | create(){ | ||
60 | this.createFlag = true | ||
61 | }, | ||
62 | //获取自然幢树结构数据 | ||
63 | getLpbMenuTree(zrzbsm){ | ||
64 | getLpbMenuTree(zrzbsm) | ||
65 | .then((res) => { | ||
66 | this.pd = res.result; | ||
67 | }) | ||
68 | .catch((error) => {}); | ||
69 | }, | ||
70 | }, | ||
71 | computed: {}, | ||
72 | watch: { | ||
73 | }, | ||
74 | } | ||
75 | </script> | ||
76 | <style scoped lang="less"> | ||
77 | .edit{ | ||
78 | height: 100%; | ||
79 | background-color: #EAEDF5; | ||
80 | .tab-header{ | ||
81 | border: 1px solid #DEDEDE; | ||
82 | border-top: 0; | ||
83 | box-sizing: border-box; | ||
84 | padding: 20px 0; | ||
85 | background-color: #ffffff; | ||
86 | margin-bottom: 20px; | ||
87 | .searchContent{ | ||
88 | margin-bottom: 20px; | ||
89 | .searchInput{ | ||
90 | width: 300px; | ||
91 | margin-left: 20px; | ||
92 | display: inline-block; | ||
93 | } | ||
94 | } | ||
95 | .radioBtn{ | ||
96 | margin-left: 20px; | ||
97 | /deep/.el-radio-button__inner{ | ||
98 | border: 1px solid #DCDFE6; | ||
99 | border-radius:4px; | ||
100 | box-shadow: 0 0 0 0 #409EFF!important; | ||
101 | } | ||
102 | } | ||
103 | } | ||
104 | .tab-content{ | ||
105 | height: calc(100% - 161px); | ||
106 | background-color: #ffffff; | ||
107 | display: flex; | ||
108 | div{ | ||
109 | height: 100%; | ||
110 | line-height: 40px; | ||
111 | } | ||
112 | .lp-tree{ | ||
113 | overflow: hidden; | ||
114 | transition: .5s; | ||
115 | position: relative; | ||
116 | .treeData{ | ||
117 | margin-top: 20px; | ||
118 | margin-left: 20px; | ||
119 | } | ||
120 | } | ||
121 | .w0{ | ||
122 | width: 0; | ||
123 | } | ||
124 | .w260{ | ||
125 | width: 260px; | ||
126 | } | ||
127 | .lp-overview{ | ||
128 | flex: 1; | ||
129 | } | ||
130 | .lp-legend{ | ||
131 | width: 200px; | ||
132 | } | ||
133 | } | ||
134 | } | ||
135 | </style> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | <template> | 1 | <template> |
2 | <div class="">楼盘表</div> | 2 | <div class="lpb"> |
3 | <el-tabs v-model="activeName" type="card" @tab-click="handleClick"> | ||
4 | <el-tab-pane label="编辑楼盘" name="edit"> | ||
5 | <edit></edit> | ||
6 | </el-tab-pane> | ||
7 | <el-tab-pane label="预览楼盘" name="preview"> | ||
8 | <preview></preview> | ||
9 | </el-tab-pane> | ||
10 | <el-tab-pane label="详细信息" name="detail"> | ||
11 | <detail></detail> | ||
12 | </el-tab-pane> | ||
13 | </el-tabs> | ||
14 | </div> | ||
3 | </template> | 15 | </template> |
4 | 16 | ||
5 | <script> | 17 | <script> |
18 | import edit from "./edit" | ||
19 | import preview from "./preview" | ||
20 | import detail from "./detail" | ||
6 | export default { | 21 | export default { |
7 | name:"", | 22 | name:"", |
8 | components:{}, | 23 | components:{edit,preview,detail}, |
9 | props:{}, | 24 | props:{}, |
10 | data(){ | 25 | data() { |
11 | return { | 26 | return { |
27 | activeName: 'edit' | ||
28 | }; | ||
29 | }, | ||
30 | methods: { | ||
31 | handleClick(tab, event) { | ||
32 | console.log(tab, event); | ||
12 | } | 33 | } |
13 | }, | 34 | }, |
14 | created(){}, | 35 | created(){}, |
15 | mounted(){}, | 36 | mounted(){}, |
16 | methods:{}, | ||
17 | computed: {}, | 37 | computed: {}, |
18 | watch: {}, | 38 | watch: {}, |
19 | } | 39 | } |
20 | </script> | 40 | </script> |
21 | <style scoped lang="less"> | 41 | <style scoped lang="less"> |
42 | .lpb{ | ||
43 | width: 100%; | ||
44 | height: 100%; | ||
45 | background-color: #fff; | ||
46 | /deep/.el-tabs__header{ | ||
47 | margin-bottom: 0; | ||
48 | } | ||
49 | .el-tabs{ | ||
50 | height: 100%; | ||
51 | display: flex; | ||
52 | flex-direction: column; | ||
53 | } | ||
54 | .el-tab-pane{ | ||
55 | height: 100%; | ||
56 | } | ||
57 | } | ||
22 | </style> | 58 | </style> |
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
src/views/systemZRZ/lpb/preview/index.vue
0 → 100644
1 | <template> | ||
2 | <div class=""></div> | ||
3 | </template> | ||
4 | |||
5 | <script> | ||
6 | export default { | ||
7 | name:"", | ||
8 | components:{}, | ||
9 | props:{}, | ||
10 | data(){ | ||
11 | return { | ||
12 | } | ||
13 | }, | ||
14 | created(){}, | ||
15 | mounted(){}, | ||
16 | methods:{}, | ||
17 | computed: {}, | ||
18 | watch: {}, | ||
19 | } | ||
20 | </script> | ||
21 | <style scoped lang="less"> | ||
22 | </style> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
-
Please register or sign in to post a comment