Merge remote-tracking branch 'origin/master'
# Conflicts: # src/api/zd.js
Showing
5 changed files
with
286 additions
and
82 deletions
| 1 | import request from '@/plugin/axios' | 1 | import request from "@/plugin/axios"; |
| 2 | 2 | ||
| 3 | /** | 3 | /** |
| 4 | * 保存面积分摊表 | 4 | * 保存面积分摊表 |
| ... | @@ -7,21 +7,20 @@ import request from '@/plugin/axios' | ... | @@ -7,21 +7,20 @@ import request from '@/plugin/axios' |
| 7 | */ | 7 | */ |
| 8 | export function savemjft(data) { | 8 | export function savemjft(data) { |
| 9 | return request({ | 9 | return request({ |
| 10 | url: '/zd/qjGygyzdmjft/insertQjGygyzdmjft', | 10 | url: "/zd/qjGygyzdmjft/insertQjGygyzdmjft", |
| 11 | method: 'post', | 11 | method: "post", |
| 12 | data: data, | 12 | data: data, |
| 13 | }) | 13 | }); |
| 14 | } | 14 | } |
| 15 | |||
| 16 | /** | 15 | /** |
| 17 | * 新增宗地基本信息 | 16 | * 新增宗地基本信息 |
| 18 | */ | 17 | */ |
| 19 | export function insertQjZdjbxx (data) { | 18 | export function insertQjZdjbxx(data) { |
| 20 | return request({ | 19 | return request({ |
| 21 | url: 'zd/qjZdjbxx/insertQjZdjbxx', | 20 | url: "zd/qjZdjbxx/insertQjZdjbxx", |
| 22 | method: 'post', | 21 | method: "post", |
| 23 | data: data, | 22 | data: data, |
| 24 | }) | 23 | }); |
| 25 | } | 24 | } |
| 26 | 25 | ||
| 27 | /** | 26 | /** |
| ... | @@ -37,3 +36,15 @@ export function getBdcdyh (dpdm,dptype) { | ... | @@ -37,3 +36,15 @@ export function getBdcdyh (dpdm,dptype) { |
| 37 | } | 36 | } |
| 38 | }) | 37 | }) |
| 39 | } | 38 | } |
| 39 | /** | ||
| 40 | * 查询界址点 | ||
| 41 | */ | ||
| 42 | export function queryjzd(glBsm) { | ||
| 43 | return request({ | ||
| 44 | url: "/zd/qjJzd/getQjJzdListByGlBsm", | ||
| 45 | method: "get", | ||
| 46 | params: { | ||
| 47 | glBsm, | ||
| 48 | }, | ||
| 49 | }); | ||
| 50 | } | ... | ... |
| ... | @@ -2,45 +2,51 @@ | ... | @@ -2,45 +2,51 @@ |
| 2 | <div class="tree_item_box"> | 2 | <div class="tree_item_box"> |
| 3 | <div | 3 | <div |
| 4 | class="column-start-start linkLine_default" | 4 | class="column-start-start linkLine_default" |
| 5 | v-for="(item,s_index) in list" | 5 | v-for="(item, s_index) in list" |
| 6 | :key="s_index" | 6 | :key="s_index" |
| 7 | :class="{ | 7 | :class="{ |
| 8 | 'linkLine_first': s_index===0&list.length>1, | 8 | linkLine_first: (s_index === 0) & (list.length > 1), |
| 9 | 'linkLine_half_top': s_index===0&&list.length===1, | 9 | linkLine_half_top: s_index === 0 && list.length === 1, |
| 10 | 'linkLine_last': (s_index===(list.length-1)&&s_index!==0), | 10 | linkLine_last: s_index === list.length - 1 && s_index !== 0, |
| 11 | 'third_layer':!item.children, | 11 | third_layer: !item.children, |
| 12 | 'second_layer':item.children | 12 | second_layer: item.children, |
| 13 | }" | 13 | }" |
| 14 | > | 14 | > |
| 15 | <div | 15 | <div |
| 16 | class="row-flex-start basic_banner" | 16 | class="row-flex-start basic_banner" |
| 17 | @click="itemClick(item)" | 17 | @click="itemClick(item)" |
| 18 | :class="{ | 18 | :class="{ |
| 19 | 'active_color': item.expand | 19 | active_color: item.expand, |
| 20 | }" | 20 | }" |
| 21 | > | 21 | > |
| 22 | <div | 22 | <div |
| 23 | v-if="item.children" | 23 | v-if="item.children" |
| 24 | class="reTree_icon" | 24 | class="reTree_icon" |
| 25 | :style="{height: (size||14*1.2) +'px',width: (size||14*1.2) +'px'}" | 25 | :style="{ |
| 26 | height: (size || 14 * 1.2) + 'px', | ||
| 27 | width: (size || 14 * 1.2) + 'px', | ||
| 28 | }" | ||
| 26 | :class="{ | 29 | :class="{ |
| 27 | 'reTree_default_icon': item.children.length===0, | 30 | reTree_default_icon: item.children.length === 0, |
| 28 | 'reTree_collapse_icon': item.expand && item.children.length>0, | 31 | reTree_collapse_icon: item.expand && item.children.length > 0, |
| 29 | 'reTree_expand_icon': !item.expand && item.children.length>0, | 32 | reTree_expand_icon: !item.expand && item.children.length > 0, |
| 30 | }" | 33 | }" |
| 31 | ></div> | 34 | ></div> |
| 32 | <div | 35 | <div |
| 33 | class="layer_text nowrap" | 36 | class="layer_text nowrap" |
| 37 | @contextmenu.prevent="openMenu($event, item)" | ||
| 34 | :class="{ | 38 | :class="{ |
| 35 | 'active_color': item.expand | 39 | active_color: item.expand, |
| 36 | }" | 40 | }" |
| 37 | >{{item.label}}</div> | 41 | > |
| 42 | {{ item.label }} | ||
| 43 | </div> | ||
| 38 | </div> | 44 | </div> |
| 39 | <line-item | 45 | <line-item |
| 40 | :list="item.children" | 46 | :list="item.children" |
| 41 | v-on="$listeners" | 47 | v-on="$listeners" |
| 42 | :size="size" | 48 | :size="size" |
| 43 | v-if="item.expand&&item.children&&item.children.length>0" | 49 | v-if="item.expand && item.children && item.children.length > 0" |
| 44 | ></line-item> | 50 | ></line-item> |
| 45 | </div> | 51 | </div> |
| 46 | </div> | 52 | </div> |
| ... | @@ -53,12 +59,16 @@ export default { | ... | @@ -53,12 +59,16 @@ export default { |
| 53 | type: Array, | 59 | type: Array, |
| 54 | default: () => { | 60 | default: () => { |
| 55 | return []; | 61 | return []; |
| 56 | } | 62 | }, |
| 57 | }, | 63 | }, |
| 58 | size: { | 64 | size: { |
| 59 | type: Number, | 65 | type: Number, |
| 60 | default: 14 | 66 | default: 14, |
| 61 | } | 67 | }, |
| 68 | visible: { | ||
| 69 | type: Boolean, | ||
| 70 | default: false, | ||
| 71 | }, | ||
| 62 | }, | 72 | }, |
| 63 | methods: { | 73 | methods: { |
| 64 | itemClick(item) { | 74 | itemClick(item) { |
| ... | @@ -67,11 +77,37 @@ export default { | ... | @@ -67,11 +77,37 @@ export default { |
| 67 | if (!item.children) { | 77 | if (!item.children) { |
| 68 | this.$emit("valClick", item); | 78 | this.$emit("valClick", item); |
| 69 | } | 79 | } |
| 80 | }, | ||
| 81 | openMenu(e, item) { | ||
| 82 | if (item.isZD!=undefined) { | ||
| 83 | var x = e.pageX; | ||
| 84 | var y = e.pageY; | ||
| 85 | this.$emit("changeIsZD", item.isZD); | ||
| 86 | this.$emit("changeTop", y); | ||
| 87 | this.$emit("changeLeft", x); | ||
| 88 | this.$emit("changeVisible", true); | ||
| 70 | } | 89 | } |
| 90 | // this.top = y; | ||
| 91 | // this.left = x; | ||
| 92 | // this.visible = true; | ||
| 93 | }, | ||
| 94 | closeMenu() { | ||
| 95 | this.$emit("changeVisible", false); | ||
| 96 | // this.visible = false; | ||
| 97 | }, | ||
| 98 | }, | ||
| 99 | watch: { | ||
| 100 | visible(value) { | ||
| 101 | if (value) { | ||
| 102 | document.body.addEventListener("click", this.closeMenu); | ||
| 103 | } else { | ||
| 104 | document.body.removeEventListener("click", this.closeMenu); | ||
| 71 | } | 105 | } |
| 106 | }, | ||
| 107 | }, | ||
| 72 | }; | 108 | }; |
| 73 | </script> | 109 | </script> |
| 74 | <style lang='less'> | 110 | <style lang="less"> |
| 75 | .content { | 111 | .content { |
| 76 | height: 100%; | 112 | height: 100%; |
| 77 | width: 100%; | 113 | width: 100%; |
| ... | @@ -115,7 +151,7 @@ export default { | ... | @@ -115,7 +151,7 @@ export default { |
| 115 | .basic_layer { | 151 | .basic_layer { |
| 116 | width: 100%; | 152 | width: 100%; |
| 117 | position: relative; | 153 | position: relative; |
| 118 | color: #FFFFFF; | 154 | color: #ffffff; |
| 119 | cursor: pointer; | 155 | cursor: pointer; |
| 120 | .layer_text { | 156 | .layer_text { |
| 121 | flex: 1; | 157 | flex: 1; |
| ... | @@ -145,7 +181,7 @@ export default { | ... | @@ -145,7 +181,7 @@ export default { |
| 145 | // padding-bottom: 15px; | 181 | // padding-bottom: 15px; |
| 146 | width: 100%; | 182 | width: 100%; |
| 147 | padding-left: 40px; | 183 | padding-left: 40px; |
| 148 | color: #FFFFFF; | 184 | color: #ffffff; |
| 149 | } | 185 | } |
| 150 | 186 | ||
| 151 | .second_layer::before { | 187 | .second_layer::before { |
| ... | @@ -206,22 +242,26 @@ export default { | ... | @@ -206,22 +242,26 @@ export default { |
| 206 | background: #c3c5c8; | 242 | background: #c3c5c8; |
| 207 | } | 243 | } |
| 208 | .reTree_collapse_icon { | 244 | .reTree_collapse_icon { |
| 209 | background: url("../../assets/images/reTree_collapse_.svg") no-repeat center center; | 245 | background: url("../../assets/images/reTree_collapse_.svg") no-repeat center |
| 246 | center; | ||
| 210 | background-size: contain; | 247 | background-size: contain; |
| 211 | } | 248 | } |
| 212 | 249 | ||
| 213 | .reTree_default_icon { | 250 | .reTree_default_icon { |
| 214 | background: url("../../assets/images/reTree_default_.svg") no-repeat center center; | 251 | background: url("../../assets/images/reTree_default_.svg") no-repeat center |
| 252 | center; | ||
| 215 | background-size: contain; | 253 | background-size: contain; |
| 216 | } | 254 | } |
| 217 | 255 | ||
| 218 | .reTree_expand_icon { | 256 | .reTree_expand_icon { |
| 219 | background: url("../../assets/images/reTree_expand_.svg") no-repeat center center; | 257 | background: url("../../assets/images/reTree_expand_.svg") no-repeat center |
| 258 | center; | ||
| 220 | background-size: contain; | 259 | background-size: contain; |
| 221 | } | 260 | } |
| 222 | 261 | ||
| 223 | .reTree_focus_icon { | 262 | .reTree_focus_icon { |
| 224 | background: url("../../assets/images/reTree_focus_.svg") no-repeat center center; | 263 | background: url("../../assets/images/reTree_focus_.svg") no-repeat center |
| 264 | center; | ||
| 225 | background-size: contain; | 265 | background-size: contain; |
| 226 | } | 266 | } |
| 227 | </style> | 267 | </style> | ... | ... |
| 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' }" |
| 5 | style="width:347px" | 5 | style="width:347px" |
| 6 | > | 6 | > |
| 7 | <div class="column-start-center basic_layer" v-for="(item,index) in formatData" :key="index"> | 7 | <div |
| 8 | class="column-start-center basic_layer" | ||
| 9 | v-for="(item, index) in formatData" | ||
| 10 | :key="index" | ||
| 11 | > | ||
| 8 | <div | 12 | <div |
| 9 | class="row-flex-start basic_banner" | 13 | class="row-flex-start basic_banner" |
| 10 | :class="{ | 14 | :class="{ |
| 11 | 'active_color': item.expand && item.children.length>0, | 15 | active_color: item.expand && item.children.length > 0, |
| 12 | |||
| 13 | }" | 16 | }" |
| 14 | @click="itemClick(item)" | 17 | @click="itemClick(item)" |
| 15 | > | 18 | > |
| 16 | <div | 19 | <div |
| 17 | class="reTree_icon" | 20 | class="reTree_icon" |
| 18 | :style="{height: (size||14*1.2 )+'px',width: (size||14*1.2) +'px'}" | 21 | :style="{ |
| 22 | height: (size || 14 * 1.2) + 'px', | ||
| 23 | width: (size || 14 * 1.2) + 'px', | ||
| 24 | }" | ||
| 19 | :class="{ | 25 | :class="{ |
| 20 | 'reTree_default_icon': item.children.length===0, | 26 | reTree_default_icon: item.children.length === 0, |
| 21 | 'reTree_collapse_icon': item.expand && item.children.length>0, | 27 | reTree_collapse_icon: item.expand && item.children.length > 0, |
| 22 | 'reTree_expand_icon': !item.expand && item.children.length>0, | 28 | reTree_expand_icon: !item.expand && item.children.length > 0, |
| 23 | }" | 29 | }" |
| 24 | ></div> | 30 | ></div> |
| 25 | <div class="layer_text nowrap">{{item.label}}</div> | 31 | <div class="layer_text nowrap">{{ item.label }}</div> |
| 26 | </div> | 32 | </div> |
| 27 | 33 | ||
| 28 | <lineItem v-if="item.expand&&item.children.length>0" v-on="$listeners" :list="item.children" :size="size"></lineItem> | 34 | <lineItem |
| 35 | v-if="item.expand && item.children.length > 0" | ||
| 36 | v-on="$listeners" | ||
| 37 | @changeTop="changeTop" | ||
| 38 | @changeLeft="changeLeft" | ||
| 39 | @changeVisible="changeVisible" | ||
| 40 | @changeIsZD="changeIsZD" | ||
| 41 | :list="item.children" | ||
| 42 | :visible="visible" | ||
| 43 | :size="size" | ||
| 44 | ></lineItem> | ||
| 29 | </div> | 45 | </div> |
| 46 | |||
| 47 | <ul | ||
| 48 | v-show="visible" | ||
| 49 | :style="{ left: left + 'px', top: top + 'px' }" | ||
| 50 | class="contextmenu" | ||
| 51 | > | ||
| 52 | <li>定位</li> | ||
| 53 | <li>导入图形</li> | ||
| 54 | <li>导出图形</li> | ||
| 55 | <li v-show="isZD">导入属性</li> | ||
| 56 | <li v-show="!isZD">导入楼盘</li> | ||
| 57 | <li>重叠分析</li> | ||
| 58 | <li v-show="isZD">添加定着物</li> | ||
| 59 | </ul> | ||
| 30 | </div> | 60 | </div> |
| 31 | </template> | 61 | </template> |
| 32 | <script> | 62 | <script> |
| ... | @@ -37,22 +67,26 @@ export default { | ... | @@ -37,22 +67,26 @@ export default { |
| 37 | pd: {}, | 67 | pd: {}, |
| 38 | size: { | 68 | size: { |
| 39 | type: Number, | 69 | type: Number, |
| 40 | default: 14 | 70 | default: 14, |
| 41 | } | 71 | }, |
| 42 | }, | 72 | }, |
| 43 | components: { lineItem }, | 73 | components: { lineItem }, |
| 44 | data() { | 74 | data() { |
| 45 | return { | 75 | return { |
| 46 | selectedDetail: {}, | 76 | selectedDetail: {}, |
| 47 | timer: {}, | 77 | timer: {}, |
| 48 | formatData: [] | 78 | formatData: [], |
| 79 | visible: false, | ||
| 80 | top: 0, | ||
| 81 | left: 0, | ||
| 82 | isZD:true | ||
| 49 | }; | 83 | }; |
| 50 | }, | 84 | }, |
| 51 | watch: { | 85 | watch: { |
| 52 | pd(n, o) { | 86 | pd(n, o) { |
| 53 | this.formatData = this.preDealData(n); | 87 | this.formatData = this.preDealData(n); |
| 54 | console.log(this.formatData); | 88 | console.log(this.formatData); |
| 55 | } | 89 | }, |
| 56 | }, | 90 | }, |
| 57 | created() { | 91 | created() { |
| 58 | console.log("lineTree create"); | 92 | console.log("lineTree create"); |
| ... | @@ -60,8 +94,21 @@ export default { | ... | @@ -60,8 +94,21 @@ export default { |
| 60 | }, | 94 | }, |
| 61 | 95 | ||
| 62 | methods: { | 96 | methods: { |
| 97 | // 改变菜单数据 | ||
| 98 | changeVisible(data) { | ||
| 99 | this.visible = data; | ||
| 100 | }, | ||
| 101 | changeTop(data) { | ||
| 102 | this.top = data; | ||
| 103 | }, | ||
| 104 | changeLeft(data) { | ||
| 105 | this.left = data; | ||
| 106 | }, | ||
| 107 | changeIsZD(data) { | ||
| 108 | this.isZD = data; | ||
| 109 | }, | ||
| 63 | preDealData(list) { | 110 | preDealData(list) { |
| 64 | list.forEach(x => { | 111 | list.forEach((x) => { |
| 65 | if (!x.expand) this.$set(x, "expand", false); | 112 | if (!x.expand) this.$set(x, "expand", false); |
| 66 | if (x.children && x.children.length > 0) this.preDealData(x.children); | 113 | if (x.children && x.children.length > 0) this.preDealData(x.children); |
| 67 | }); | 114 | }); |
| ... | @@ -71,7 +118,7 @@ export default { | ... | @@ -71,7 +118,7 @@ export default { |
| 71 | expandTreeItemById(idList) { | 118 | expandTreeItemById(idList) { |
| 72 | let _this = this; | 119 | let _this = this; |
| 73 | function loopTree(list) { | 120 | function loopTree(list) { |
| 74 | list.forEach(x => { | 121 | list.forEach((x) => { |
| 75 | if (idList.includes(x.id)) { | 122 | if (idList.includes(x.id)) { |
| 76 | _this.$set(x, "expand", true); | 123 | _this.$set(x, "expand", true); |
| 77 | } else { | 124 | } else { |
| ... | @@ -83,9 +130,9 @@ export default { | ... | @@ -83,9 +130,9 @@ export default { |
| 83 | } | 130 | } |
| 84 | this.formatData = loopTree(this.pd); | 131 | this.formatData = loopTree(this.pd); |
| 85 | }, | 132 | }, |
| 86 | itemClick(item){ | 133 | itemClick(item) { |
| 87 | item.expand=!item.expand | 134 | item.expand = !item.expand; |
| 88 | this.$emit('itemClick',item) | 135 | this.$emit("itemClick", item); |
| 89 | }, | 136 | }, |
| 90 | // 详情点击 | 137 | // 详情点击 |
| 91 | detailClick(data) { | 138 | detailClick(data) { |
| ... | @@ -99,11 +146,36 @@ export default { | ... | @@ -99,11 +146,36 @@ export default { |
| 99 | clearTimeout(this.timer); | 146 | clearTimeout(this.timer); |
| 100 | this.selectedDetail = data; | 147 | this.selectedDetail = data; |
| 101 | this.$emit("detailDoubleClick", data); | 148 | this.$emit("detailDoubleClick", data); |
| 102 | } | 149 | }, |
| 103 | } | 150 | }, |
| 104 | }; | 151 | }; |
| 105 | </script> | 152 | </script> |
| 106 | <style lang="less" scoped> | 153 | <style lang="less" scoped> |
| 154 | // 自定义右键菜单样式 start | ||
| 155 | .contextmenu { | ||
| 156 | margin: 0; | ||
| 157 | background: #fff; | ||
| 158 | z-index: 3000; | ||
| 159 | position: absolute; | ||
| 160 | list-style-type: none; | ||
| 161 | padding: 5px 0; | ||
| 162 | border-radius: 4px; | ||
| 163 | font-size: 12px; | ||
| 164 | font-weight: 400; | ||
| 165 | color: #333; | ||
| 166 | box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, 0.3); | ||
| 167 | } | ||
| 168 | |||
| 169 | .contextmenu li { | ||
| 170 | margin: 0; | ||
| 171 | padding: 7px 16px; | ||
| 172 | cursor: pointer; | ||
| 173 | } | ||
| 174 | |||
| 175 | .contextmenu li:hover { | ||
| 176 | background: #eee; | ||
| 177 | } | ||
| 178 | // end | ||
| 107 | .content { | 179 | .content { |
| 108 | height: 100%; | 180 | height: 100%; |
| 109 | width: 100%; | 181 | width: 100%; |
| ... | @@ -127,8 +199,8 @@ export default { | ... | @@ -127,8 +199,8 @@ export default { |
| 127 | text-overflow: ellipsis; | 199 | text-overflow: ellipsis; |
| 128 | white-space: nowrap; | 200 | white-space: nowrap; |
| 129 | } | 201 | } |
| 130 | .active_color{ | 202 | .active_color { |
| 131 | color: #FFFFFF ; | 203 | color: #ffffff; |
| 132 | } | 204 | } |
| 133 | .reTree_box { | 205 | .reTree_box { |
| 134 | // overflow-y: auto; | 206 | // overflow-y: auto; |
| ... | @@ -142,7 +214,7 @@ export default { | ... | @@ -142,7 +214,7 @@ export default { |
| 142 | .basic_layer { | 214 | .basic_layer { |
| 143 | width: 100%; | 215 | width: 100%; |
| 144 | position: relative; | 216 | position: relative; |
| 145 | color: #FFFFFF; | 217 | color: #ffffff; |
| 146 | cursor: pointer; | 218 | cursor: pointer; |
| 147 | .layer_text { | 219 | .layer_text { |
| 148 | flex: 1; | 220 | flex: 1; |
| ... | @@ -233,22 +305,26 @@ export default { | ... | @@ -233,22 +305,26 @@ export default { |
| 233 | background: #c3c5c8; | 305 | background: #c3c5c8; |
| 234 | } | 306 | } |
| 235 | .reTree_collapse_icon { | 307 | .reTree_collapse_icon { |
| 236 | background: url("../../assets/images/reTree_collapse_.svg") no-repeat center center; | 308 | background: url("../../assets/images/reTree_collapse_.svg") no-repeat center |
| 309 | center; | ||
| 237 | background-size: contain; | 310 | background-size: contain; |
| 238 | } | 311 | } |
| 239 | 312 | ||
| 240 | .reTree_default_icon { | 313 | .reTree_default_icon { |
| 241 | background: url("../../assets/images/reTree_default_.svg") no-repeat center center; | 314 | background: url("../../assets/images/reTree_default_.svg") no-repeat center |
| 315 | center; | ||
| 242 | background-size: contain; | 316 | background-size: contain; |
| 243 | } | 317 | } |
| 244 | 318 | ||
| 245 | .reTree_expand_icon { | 319 | .reTree_expand_icon { |
| 246 | background: url("../../assets/images/reTree_expand_.svg") no-repeat center center; | 320 | background: url("../../assets/images/reTree_expand_.svg") no-repeat center |
| 321 | center; | ||
| 247 | background-size: contain; | 322 | background-size: contain; |
| 248 | } | 323 | } |
| 249 | 324 | ||
| 250 | .reTree_focus_icon { | 325 | .reTree_focus_icon { |
| 251 | background: url("../../assets/images/reTree_focus_.svg") no-repeat center center; | 326 | background: url("../../assets/images/reTree_focus_.svg") no-repeat center |
| 327 | center; | ||
| 252 | background-size: contain; | 328 | background-size: contain; |
| 253 | } | 329 | } |
| 254 | </style> | 330 | </style> | ... | ... |
| ... | @@ -144,20 +144,11 @@ export default { | ... | @@ -144,20 +144,11 @@ export default { |
| 144 | children: [ | 144 | children: [ |
| 145 | { | 145 | { |
| 146 | label: "宗地代码1933", | 146 | label: "宗地代码1933", |
| 147 | children: [ | 147 | isZD:true |
| 148 | { | ||
| 149 | id:'011', | ||
| 150 | label: "自然幢号1256", | ||
| 151 | }, | ||
| 152 | ], | ||
| 153 | }, | 148 | }, |
| 154 | { | 149 | { |
| 155 | label: "宗地代码2100", | 150 | label: "自然幢2100", |
| 156 | children: [ | 151 | isZD:false |
| 157 | { | ||
| 158 | label: "自然幢号1543", | ||
| 159 | }, | ||
| 160 | ], | ||
| 161 | }, | 152 | }, |
| 162 | ], | 153 | ], |
| 163 | } | 154 | } | ... | ... |
| ... | @@ -2,13 +2,13 @@ | ... | @@ -2,13 +2,13 @@ |
| 2 | <div class="main"> | 2 | <div class="main"> |
| 3 | <div class="button"> | 3 | <div class="button"> |
| 4 | <el-button type="primary" @click="oneExit">编辑</el-button> | 4 | <el-button type="primary" @click="oneExit">编辑</el-button> |
| 5 | <el-button type="primary">保存</el-button> | 5 | <el-button type="primary" @click="save">保存</el-button> |
| 6 | <el-button type="primary" @click="batchExit">批量修改</el-button> | 6 | <el-button type="primary" @click="batchExit">批量修改</el-button> |
| 7 | </div> | 7 | </div> |
| 8 | <div class="table"> | 8 | <div class="table"> |
| 9 | <table border="1"> | 9 | <table border="1"> |
| 10 | <tr> | 10 | <tr> |
| 11 | <td><input type="checkbox" @click="allcheck"/></td> | 11 | <td><input type="checkbox" @click="allcheck" v-model="isCheckAll"/></td> |
| 12 | <td>界址点号</td> | 12 | <td>界址点号</td> |
| 13 | <td>顺序号</td> | 13 | <td>顺序号</td> |
| 14 | <td>X坐标值</td> | 14 | <td>X坐标值</td> |
| ... | @@ -17,11 +17,13 @@ | ... | @@ -17,11 +17,13 @@ |
| 17 | <td>界址点类型</td> | 17 | <td>界址点类型</td> |
| 18 | </tr> | 18 | </tr> |
| 19 | <tr v-for="(item,index) in jzdlist" :key="index"> | 19 | <tr v-for="(item,index) in jzdlist" :key="index"> |
| 20 | <td><input type="checkbox" v-model="item.isCheck"/></td> | 20 | <td><input type="checkbox" v-model="item.isCheck" @change="changeAll"/></td> |
| 21 | <td><input type="text" class="formInput" v-model="item.jzdh" readonly="readonly"/></td> | 21 | <td><input type="text" class="formInput" v-model="item.jzdh" readonly="readonly"/></td> |
| 22 | <td><input type="text" class="formInput" v-model="item.sxh" readonly="readonly"/></td> | 22 | <td><input type="text" class="formInput" v-model="item.sxh" readonly="readonly"/></td> |
| 23 | <td><input type="text" class="formInput" v-model="item.xzbz" :readonly="item.iszb"/></td> | 23 | <td><input type="text" class="formInput" v-model="item.xzbz" :readonly="item.iszb" |
| 24 | <td><input tepe="text" class="formInput" v-model="item.yzbz" :readonly="item.iszb"/></td> | 24 | @keydown="oninput"/></td> |
| 25 | <td><input tepe="text" class="formInput" v-model="item.yzbz" :readonly="item.iszb" | ||
| 26 | @keydown="oninput"/></td> | ||
| 25 | <td> | 27 | <td> |
| 26 | <el-select v-model="item.jblx" :disabled="item.jbisdisabled"> | 28 | <el-select v-model="item.jblx" :disabled="item.jbisdisabled"> |
| 27 | <el-option | 29 | <el-option |
| ... | @@ -45,16 +47,57 @@ | ... | @@ -45,16 +47,57 @@ |
| 45 | </tr> | 47 | </tr> |
| 46 | </table> | 48 | </table> |
| 47 | </div> | 49 | </div> |
| 50 | <div> | ||
| 51 | <el-dialog | ||
| 52 | title="批量修改" | ||
| 53 | :visible.sync="centerDialogVisible" | ||
| 54 | width="30%" | ||
| 55 | center> | ||
| 56 | <div class="plxg"> | ||
| 57 | <div> | ||
| 58 | <span class=""> 界标类型:</span> | ||
| 59 | <el-select> | ||
| 60 | <el-option | ||
| 61 | v-for="i in jblx" | ||
| 62 | :key="i.key" | ||
| 63 | :label="i.label" | ||
| 64 | :value="i.value" | ||
| 65 | ></el-option> | ||
| 66 | </el-select> | ||
| 67 | </div> | ||
| 68 | <div> | ||
| 69 | <span>界址点类型:</span> | ||
| 70 | <el-select> | ||
| 71 | <el-option | ||
| 72 | v-for="i in jzdlx" | ||
| 73 | :key="i.key" | ||
| 74 | :label="i.label" | ||
| 75 | :value="i.value" | ||
| 76 | ></el-option> | ||
| 77 | </el-select> | ||
| 78 | </div> | ||
| 79 | |||
| 80 | </div> | ||
| 81 | <span slot="footer" class="dialog-footer"> | ||
| 82 | <el-button @click="centerDialogVisible = false">取 消</el-button> | ||
| 83 | <el-button type="primary" @click="centerDialogVisible = false">确 定</el-button> | ||
| 84 | </span> | ||
| 85 | </el-dialog> | ||
| 86 | </div> | ||
| 48 | </div> | 87 | </div> |
| 49 | </template> | 88 | </template> |
| 50 | 89 | ||
| 51 | <script> | 90 | <script> |
| 91 | import {queryjzd} from '../../../api/zd' | ||
| 92 | |||
| 52 | export default { | 93 | export default { |
| 53 | name: "", | 94 | name: "", |
| 54 | components: {}, | 95 | components: {}, |
| 55 | props: {}, | 96 | props: {}, |
| 56 | data() { | 97 | data() { |
| 57 | return { | 98 | return { |
| 99 | isCheckAll: false, | ||
| 100 | centerDialogVisible: false, | ||
| 58 | jblx: [ | 101 | jblx: [ |
| 59 | { | 102 | { |
| 60 | key: '1', | 103 | key: '1', |
| ... | @@ -145,21 +188,56 @@ | ... | @@ -145,21 +188,56 @@ |
| 145 | } | 188 | } |
| 146 | }, | 189 | }, |
| 147 | created() { | 190 | created() { |
| 191 | |||
| 148 | }, | 192 | }, |
| 149 | mounted() { | 193 | mounted() { |
| 194 | // 该标识码继承过来 | ||
| 195 | let bsm = '401044005bad0557d5e3787239d8e18e'; | ||
| 196 | queryjzd(bsm).then(res => { | ||
| 197 | for (let i = 0; i < res.result.length; i++) { | ||
| 198 | res.result[i]['isCheck'] = false; | ||
| 199 | res.result[i]['iszb'] = 'readonly'; | ||
| 200 | res.result[i]['jbisdisabled'] = true; | ||
| 201 | res.result[i]['jzdisdisabled'] = true; | ||
| 202 | } | ||
| 203 | this.jzdlist = res.result; | ||
| 204 | }) | ||
| 150 | }, | 205 | }, |
| 151 | methods: { | 206 | methods: { |
| 207 | save() { | ||
| 208 | console.log("保存...."); | ||
| 209 | for (let item of this.jzdlist) { | ||
| 210 | if (item.isCheck) { | ||
| 211 | item.iszb = 'readonly'; | ||
| 212 | item.jbisdisabled = true; | ||
| 213 | item.jzdisdisabled = true; | ||
| 214 | } | ||
| 215 | } | ||
| 216 | }, | ||
| 217 | oninput(e) { | ||
| 218 | e.target.value = (e.target.value.match(/^\d*(\.?\d{0,0})/g)[0]) || null | ||
| 219 | }, | ||
| 220 | changeAll(e) { | ||
| 221 | if (!e.target.checked) { | ||
| 222 | console.log("11111") | ||
| 223 | this.isCheckAll = false; | ||
| 224 | return | ||
| 225 | } | ||
| 226 | for (let item of this.jzdlist) { | ||
| 227 | if (!item.isCheck) { | ||
| 228 | this.isCheckAll = false; | ||
| 229 | return | ||
| 230 | } | ||
| 231 | } | ||
| 232 | this.isCheckAll = true; | ||
| 233 | }, | ||
| 152 | allcheck(value) { | 234 | allcheck(value) { |
| 153 | console.log(value.target.checked) | ||
| 154 | console.log("全选"); | ||
| 155 | for (let item of this.jzdlist) { | 235 | for (let item of this.jzdlist) { |
| 156 | item.isCheck = value.target.checked; | 236 | item.isCheck = value.target.checked; |
| 157 | } | 237 | } |
| 158 | }, | 238 | }, |
| 159 | oneExit() { | 239 | oneExit() { |
| 160 | console.log("单一修改"); | ||
| 161 | for (let item of this.jzdlist) { | 240 | for (let item of this.jzdlist) { |
| 162 | console.log(item) | ||
| 163 | if (item.isCheck) { | 241 | if (item.isCheck) { |
| 164 | item.iszb = false; | 242 | item.iszb = false; |
| 165 | item.jbisdisabled = false; | 243 | item.jbisdisabled = false; |
| ... | @@ -170,6 +248,7 @@ | ... | @@ -170,6 +248,7 @@ |
| 170 | }, | 248 | }, |
| 171 | batchExit() { | 249 | batchExit() { |
| 172 | console.log("批量修改") | 250 | console.log("批量修改") |
| 251 | this.centerDialogVisible = true; | ||
| 173 | } | 252 | } |
| 174 | }, | 253 | }, |
| 175 | computed: {}, | 254 | computed: {}, |
| ... | @@ -177,6 +256,9 @@ | ... | @@ -177,6 +256,9 @@ |
| 177 | } | 256 | } |
| 178 | </script> | 257 | </script> |
| 179 | <style scoped lang="less"> | 258 | <style scoped lang="less"> |
| 259 | /deep/.el-input.is-disabled .el-input__inner{ | ||
| 260 | color: #606764; | ||
| 261 | } | ||
| 180 | .main { | 262 | .main { |
| 181 | box-sizing: border-box; | 263 | box-sizing: border-box; |
| 182 | padding: 18px; | 264 | padding: 18px; |
| ... | @@ -206,4 +288,8 @@ | ... | @@ -206,4 +288,8 @@ |
| 206 | text-align: center; | 288 | text-align: center; |
| 207 | cursor: text; | 289 | cursor: text; |
| 208 | } | 290 | } |
| 291 | |||
| 292 | .plxg span { | ||
| 293 | width: 300px; | ||
| 294 | } | ||
| 209 | </style> | 295 | </style> | ... | ... |
-
Please register or sign in to post a comment