| @@ -0,0 +1,6 @@ | |||||
| <div class="block_value"> | |||||
| <div class="value_pos"> | |||||
| <div class="value nowrap">{{data.value}}</div> | |||||
| <div class="name nowrap">{{data.name}}</div> | |||||
| </div> | |||||
| </div> | |||||
| @@ -0,0 +1,14 @@ | |||||
| export default { | |||||
| props: { | |||||
| data: { | |||||
| type: Object, | |||||
| default: function () { | |||||
| return { | |||||
| name: '经营收入', | |||||
| value: '716' | |||||
| } | |||||
| } | |||||
| }, | |||||
| } | |||||
| }; | |||||
| @@ -0,0 +1,37 @@ | |||||
| .block_value { | |||||
| background: url('./bk.png'); | |||||
| background-size: 100% 100%; | |||||
| width: 130px; | |||||
| height: 130px; | |||||
| position: relative; | |||||
| .value_pos { | |||||
| position: absolute; | |||||
| left: 50%; | |||||
| top: 0; | |||||
| transform: translateX(-50%); | |||||
| display: flex; | |||||
| flex-direction: column; | |||||
| align-items: center; | |||||
| .value { | |||||
| font-family: Arial; | |||||
| font-weight: bold; | |||||
| font-size: 24px; | |||||
| color: #FFFFFF; | |||||
| line-height: 30px; | |||||
| text-shadow: 0px 3px 2px #05357D; | |||||
| } | |||||
| .name { | |||||
| font-weight: 500; | |||||
| font-size: 14px; | |||||
| color: #B9D3EB; | |||||
| text-shadow: 0px 3px 3px rgba(30, 63, 112, 0.6); | |||||
| background: linear-gradient(180deg, #FEFFFF 17.4072265625%, #e0e9f9 99.6337890625%); | |||||
| -webkit-background-clip: text; | |||||
| -webkit-text-fill-color: transparent; | |||||
| } | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,3 @@ | |||||
| <template src='./index.html'/> | |||||
| <script lang='js' src='./index.js'></script> | |||||
| <style lang='scss' src='./index.scss' scoped></style> | |||||
| @@ -94,6 +94,11 @@ body { | |||||
| border: 1px solid red; | border: 1px solid red; | ||||
| } | } | ||||
| .nowrap { | |||||
| white-space: nowrap; | |||||
| } | |||||
| .screen { | .screen { | ||||
| width: 1920px; | width: 1920px; | ||||
| height: 1080px; | height: 1080px; | ||||
| @@ -2,7 +2,7 @@ const TokenKey = 'Admin-Token'; | |||||
| // 获取token | // 获取token | ||||
| export function getToken () { | export function getToken () { | ||||
| return 'eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImM0MDZkM2Q0LTM5N2UtNGRjMi1hMDIyLTEzY2UwZGZkMDA3OCJ9.X2CyaATOQ8S811oh5uMWpD5WHeJ3Meya5E7TRoEmOukzoZy-U5AwmzRn7UJs_OY8IU3a-DGFZNZc---Vh336UQ'; // 将token保存在本地 | |||||
| return 'eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjFiMTk0ZmM0LWQxNWYtNGE2MC04OTg5LTRlZjZjY2JmZWI0MSJ9.Aie43ajYI4yvpSXAzv2Dk90liTuxg5u1ainKL_GNVptFPoYVtWBnDz0PC4pz6IIXspP5y08V1FCP2j2m48Mwhw'; // 将token保存在本地 | |||||
| } | } | ||||
| // 保存token | // 保存token | ||||
| export function setToken (token) { | export function setToken (token) { | ||||
| @@ -0,0 +1,62 @@ | |||||
| export default [ | |||||
| [ | |||||
| { | |||||
| show: false | |||||
| }, | |||||
| { | |||||
| show: true, | |||||
| name: '经营收入', | |||||
| value: '716' | |||||
| }, | |||||
| { | |||||
| show: true, | |||||
| name: '投资收益', | |||||
| value: '716' | |||||
| }, | |||||
| { | |||||
| show: true, | |||||
| name: '补助收入', | |||||
| value: '716' | |||||
| }, | |||||
| { | |||||
| show: true, | |||||
| name: '其他收入', | |||||
| value: '716' | |||||
| }, | |||||
| { | |||||
| show: false | |||||
| } | |||||
| ], | |||||
| [ | |||||
| { | |||||
| show: true, | |||||
| name: '经营支出', | |||||
| value: '716' | |||||
| }, | |||||
| { | |||||
| show: true, | |||||
| name: '税金及附加', | |||||
| value: '716' | |||||
| }, | |||||
| { | |||||
| show: true, | |||||
| name: '管理费用', | |||||
| value: '716' | |||||
| }, | |||||
| { | |||||
| show: true, | |||||
| name: '公益支出', | |||||
| value: '716' | |||||
| }, | |||||
| { | |||||
| show: true, | |||||
| name: '其他支出', | |||||
| value: '716' | |||||
| }, | |||||
| { | |||||
| show: true, | |||||
| name: '所得税费用', | |||||
| value: '103' | |||||
| } | |||||
| ] | |||||
| ] | |||||
| @@ -0,0 +1,9 @@ | |||||
| <div class="buttom2"> | |||||
| <table> | |||||
| <tr v-for="line in data"> | |||||
| <td v-for="item in line"> | |||||
| <BlockValue v-if="item.show" :data="item"></BlockValue> | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| </div> | |||||
| @@ -0,0 +1,18 @@ | |||||
| import BlockValue from '@/components/value/index.vue'; | |||||
| import data from './data.js'; | |||||
| export default { | |||||
| components: { | |||||
| BlockValue | |||||
| }, | |||||
| data () { | |||||
| return { | |||||
| data | |||||
| }; | |||||
| }, | |||||
| created () { | |||||
| }, | |||||
| mounted () { | |||||
| }, | |||||
| methods: { | |||||
| } | |||||
| }; | |||||
| @@ -0,0 +1,16 @@ | |||||
| .buttom2 { | |||||
| width: 960px; | |||||
| table { | |||||
| width: 100%; | |||||
| tr { | |||||
| width: 100%; | |||||
| td { | |||||
| width: 16.6%; | |||||
| } | |||||
| } | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,4 @@ | |||||
| <template src='./index.html'/> | |||||
| <script lang='js' src='./index.js'></script> | |||||
| <style lang='scss' src='./index.scss' scoped> | |||||
| </style> | |||||
| @@ -11,6 +11,7 @@ export const comps = { | |||||
| 'Right31', | 'Right31', | ||||
| ], | ], | ||||
| 'buttom': [ | 'buttom': [ | ||||
| 'Bottom1' | |||||
| ] | ] | ||||
| }, | }, | ||||
| '2': { | '2': { | ||||
| @@ -15,6 +15,7 @@ import Right12 from './comps/right/top/2/index.vue'; | |||||
| import Right22 from './comps/right/middle/2/index.vue'; | import Right22 from './comps/right/middle/2/index.vue'; | ||||
| import Right32 from './comps/right/bottom/2/index.vue'; | import Right32 from './comps/right/bottom/2/index.vue'; | ||||
| import Bottom2 from './comps/buttom/2/index.vue'; | import Bottom2 from './comps/buttom/2/index.vue'; | ||||
| import Bottom1 from './comps/buttom/1/index.vue'; | |||||
| import { getConfigKey } from "@/api/system/config"; | import { getConfigKey } from "@/api/system/config"; | ||||
| import { getInfo } from "@/api/login"; | import { getInfo } from "@/api/login"; | ||||
| @@ -44,7 +45,8 @@ export default { | |||||
| Right12, | Right12, | ||||
| Right22, | Right22, | ||||
| Right32, | Right32, | ||||
| Bottom2 | |||||
| Bottom2, | |||||
| Bottom1 | |||||
| }, | }, | ||||
| data () { | data () { | ||||
| return { | return { | ||||
| @@ -137,10 +139,53 @@ export default { | |||||
| if (dept.children) { | if (dept.children) { | ||||
| this.addDeptLayer(dept.children, 'yellow.png'); | this.addDeptLayer(dept.children, 'yellow.png'); | ||||
| } | } | ||||
| gis.getView().setCenter(fromLonLat(mapCenterLocation)) | gis.getView().setCenter(fromLonLat(mapCenterLocation)) | ||||
| // 地图点击事件 | |||||
| gis.getMapContainer().on("click", (evt) => { | |||||
| let feature = this.map.forEachFeatureAtPixel( | |||||
| evt.pixel, | |||||
| (feature) => feature | |||||
| ); | |||||
| if (feature) { | |||||
| // 镇级:加载村级坐标点 | |||||
| if (feature.get('level') === 'deptPoint') { | |||||
| let parentIds = []; | |||||
| this.findParentNodeIds(this.addrOptions, feature.get('deptId'), parentIds); | |||||
| this.addrText = parentIds; | |||||
| this.selectAddress(parentIds); | |||||
| } | |||||
| } | |||||
| }); | |||||
| }, | |||||
| selectAddress (value, isLocated = true) { // isLocated 控制地图是否跳转 | |||||
| this.queryParams.deptId = value[value.length - 1]; | |||||
| this.getData(DEPT_CHANGED); | |||||
| let node = this.$refs["cascader"].panel.getNodeByValue(value); | |||||
| this.drawMap(node, isLocated); | |||||
| }, | |||||
| // 查找指定deptId的所有父节点id | |||||
| findParentNodeIds (tree, deptId, result) { | |||||
| for (let node of tree) { | |||||
| if (node.id === deptId) { | |||||
| result.unshift(node.id); | |||||
| return true; | |||||
| } | |||||
| if (node.children && node.children.length > 0) { | |||||
| let isFind = this.findParentNodeIds(node.children, deptId, result); | |||||
| if (isFind) { | |||||
| result.unshift(node.id); | |||||
| return true; | |||||
| } | |||||
| } | |||||
| } | |||||
| return false; | |||||
| }, | }, | ||||
| // 添加坐标点图层 | // 添加坐标点图层 | ||||
| addDeptLayer (nextDeptSet) { | addDeptLayer (nextDeptSet) { | ||||
| let features = []; | let features = []; | ||||
| @@ -161,6 +206,10 @@ export default { | |||||
| addTownBorder (deptIds) { | addTownBorder (deptIds) { | ||||
| gis.addImageLayer(this.mapGeoServerUrl, this.townBorderLayerName, deptIds) | gis.addImageLayer(this.mapGeoServerUrl, this.townBorderLayerName, deptIds) | ||||
| }, | }, | ||||
| // 添加村边界 | |||||
| addVillageBorder (deptIds) { | |||||
| gis.addImageLayer(this.mapGeoServerUrl, this.villageBorderLayerName, deptIds) | |||||
| }, | |||||
| // 获取geoserver的地址 | // 获取geoserver的地址 | ||||
| getGeoServerUrl () { | getGeoServerUrl () { | ||||
| // 获取geoserver的地址 | // 获取geoserver的地址 | ||||