楼盘表相关改动
Showing
10 changed files
with
284 additions
and
33 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