|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200 |
- <template>
- <div class="home_wrapper">
- <div class="header_main">
- 案件分布
- <div class="return_btn" @click="onClickLeft"></div>
- </div>
- <div class="tab">
- <van-dropdown-menu active-color="#1989fa">
- <van-dropdown-item v-model="value1" :options="option1" @change="changeYear" />
- <van-dropdown-item v-model="value2" :options="option2" @change="changeDept" />
- </van-dropdown-menu>
- </div>
- <div id='container'></div>
- </div>
- </template>
-
- <script>
- import {casePointList, treeselect} from "@/api/lawEnforcement/index";
- let map ;
- let myGeo ;
- export default {
- name: "caseAllocation",
- data() {
- return {
- value1: 2022,
- value2: '',
- option1: [
- { text: '2022', value: 2022 },
- { text: '2021', value: 2021 },
- { text: '2020', value: 2020 },
- { text: '2019', value: 2019 },
- { text: '2018', value: 2018 },
- ],
- option2: [
- { text: '全部', value: '' },
- { text: '羊亭镇', value: '山东省威海市羊亭镇' },
- { text: '张村镇', value: '山东省威海市张村镇' },
- { text: '桥头镇', value: '山东省威海市桥头镇' },
- { text: '温泉镇', value: '山东省威海市温泉镇' },
- ],
- geoJson: "",
- center: { lng: 122.089726, lat: 37.540728 }, //经纬度
- zoom: 1, //地图展示级别
- };
- },
- created() {
- treeselect().then((response) => {
- if (response.code == 200) {
- this.deptOptions = response.data;
- }
- })
- },
- mounted(){
-
- this.getCasePointList();
-
- },
- methods: {
- getCasePointList(){
- let query = {
- year:'2022',
- deptId:'100'
- };
- casePointList(query).then(res => {
- this.clockin_user = res.data.userName;
- // 将地址解析结果显示在地图上,并调整地图视野
- map = new BMapGL.Map('container');
- //创建地址解析器实例
- myGeo = new BMapGL.Geocoder();
- for (let i = 0 ; i < res.data.length ; i++){
- myGeo.getPoint(res.data[i].address, function(point) {
- if (point) {
- map.centerAndZoom(point, 10);
- map.enableScrollWheelZoom(true);
- map.addOverlay(new BMapGL.Marker(point, {}))
- }
- },'北京市')
- }
- })
- },
- changeDept(val){
- myGeo.getPoint(val, function(point) {
- if (point) {
- map.centerAndZoom(point, 15);
- map.enableScrollWheelZoom(true);
- // map.addOverlay(new BMapGL.Marker(point, {}))
- }
- })
- },
- changeYear(val){
- let query = {
- year:val,
- deptId:'100'
- };
- casePointList(query).then(res => {
- this.clockin_user = res.data.userName;
- // 将地址解析结果显示在地图上,并调整地图视野
- map = new BMapGL.Map('container');
- //创建地址解析器实例
- myGeo = new BMapGL.Geocoder();
- for (let i = 0 ; i < res.data.length ; i++){
- myGeo.getPoint(res.data[i].address, function(point) {
- if (point) {
- map.centerAndZoom(point, 10);
- map.enableScrollWheelZoom(true);
- map.addOverlay(new BMapGL.Marker(point, {}))
- }
- },'北京市')
- }
- })
- }
-
- },
- }
- </script>
-
- <style scoped lang="scss">
-
- #container{
- width: 100%;
- height: 100vh;
- overflow: hidden;
- }
- #result{
- position: fixed;
- top: 10px;
- left: 10px;
- width: 250px;
- height: 30px;
- line-height: 30px;
- text-align: center;
- background: #fff;
- box-shadow: 0 2px 6px 0 rgba(27, 142, 236, 0.5);
- border-radius: 7px;
- z-index: 99;
- }
- .home_wrapper{
- background: #e9e9e9;
- min-height: 100vh;
- width: 100vw;
- padding: 0 ;
- background: url('../../../../static/images/lawEnforcement/new/map.png') no-repeat 27%;
- background-size: auto 100%;
- .header_main{
- height: 116px;
- background: url('../../../../static/images/lawEnforcement/new/list_head.png') no-repeat;
- background-size: 100% 100%;
- position: fixed;
- top: 0;
- left: 0;
- width: 100%;
- font-size: 36px;
- line-height: 116px;
- text-align: center;
- color: #fff;
- z-index: 999;
- .return_btn{
- width: 24px;
- height: 43.2px;
- background: url('../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat;
- background-size: 20px 36px;
- position: absolute;
- left: 38px;
- top: 36px;
- }
- .add_btn{
- width: 56.4px;
- height: 40.8px;
- background: url('../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat;
- background-size: 47px 34px;
- position: absolute;
- right: 38px;
- top: 36px;
- }
- }
- }
- .tab{
- width: 94%;
- position: absolute;
- top: 130px;
- left: 3%;
- border-radius: 8PX;
- overflow: hidden;
- z-index: 999999;
- /deep/ .van-dropdown-item__content{
- width: 94%;
- left: 3%;
- border-bottom-left-radius: 8PX;
- border-bottom-right-radius: 8PX;
- }
- }
- .map_area {
- width: 100vw;
- height: 100vh;
- background: #ddd;
- position: absolute;
- left: 0;
- top: 0;
- }
- </style>
|