Commit 62a16ace authored by danfuman's avatar danfuman

修改

parent 291b0e41
......@@ -85,8 +85,6 @@ export function countNewsBidByProvince(param) {
})
}
//全国商机项目分析-全国公招项目统计
export function countNewsBidByYear() {
return request({
......@@ -94,18 +92,18 @@ export function countNewsBidByYear() {
method: 'POST',
})
}
//全国商机项目分析-全国土地交易项目年份统计
export function countBidGroupByProvince(param) {
//全国商机项目分析-全国各年度招标月份统计
export function countNewsBidByMonth(param) {
return request({
url: '/marketAnalysis/countBidGroupByProvince',
url: '/marketAnalysis/countNewsBidByMonth',
method: 'POST',
data: param
})
}
//全国商机项目分析-全国各年度招标月份统计
export function countNewsBidByMonth(param) {
//全国商机项目分析-全国土地交易项目年份统计
export function countBidGroupByProvince(param) {
return request({
url: '/marketAnalysis/countNewsBidByMonth',
url: '/marketAnalysis/countBidGroupByProvince',
method: 'POST',
data: param
})
......
......@@ -74,6 +74,19 @@ export const constantRoutes = [
}
]
},
{
path: '',
component: Layout,
redirect: 'urban',
children: [
{
path: '/macro/urban',
component: () => import('@/views/macro/urban'),
name: 'Urban',
meta: { title: '城投平台', icon: 'macro' }
}
]
},
{
path: '/user',
component: Layout,
......
......@@ -710,10 +710,16 @@ export default {
this.$parent.handleClick('second', data);
break;
case 2:
this.$router.push({
path: '/macro/urban',
query:{
provinceId:this.dataQuery.provinceId,
// this.$router.push({
// path: '/macro/urban',
// query:{
// provinceId:this.dataQuery.provinceId,
// province:this.dataQuery.province,
// }
// })
this.$router.push({name: 'Urban',
params: {
provinceId: this.dataQuery.provinceId,
province:this.dataQuery.province,
}
})
......
......@@ -13,7 +13,7 @@
import * as echarts from 'echarts';
import { countGroupByMonth,countGroupByProvince,getYear } from '@/api/macro/macro'
import Tdjy from './tdjy'
import Zhaobiao from './zhaobiao1'
import Zhaobiao from './zhaobiao'
export default {
name: 'NationalEconomies',
components: {
......
<template>
<div>
<skeleton v-if="isSkeleton" style="padding: 16px"></skeleton>
<div v-if="!isSkeleton" class="tdjy">
<div class="tdjy">
<p class="text_p">注:数据来源大司空建筑大数据平台,统计范围为全国公开的土地交易项目,未公开的不含在内</p>
<div class="td_content">
<skeleton v-if="isSkeleton" style="padding: 16px"></skeleton>
<div v-if="!isSkeleton" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国土地交易项目供应方式</span>
......@@ -12,7 +11,7 @@
</el-select>
</div>
</div>
<div class="content_box">
<div class="content_box" v-if="gyfsList.length > 0">
<div class="box-left">
<div id="echarts1" style="height: 280px"></div>
</div>
......@@ -37,8 +36,12 @@
</el-table>
</div>
</div>
<div class="empty" v-if="gyfsList.length === 0">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,暂无数据展示</div>
</div>
</div>
<div class="td_content">
<div v-if="!isSkeleton" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国土地交易项目土地用途</span>
......@@ -47,7 +50,7 @@
</el-select>
</div>
</div>
<div class="content_box">
<div class="content_box" v-if="tdytList.length > 0 && !isSkeleton">
<div class="box-left">
<div id="echarts2" style="height: 280px"></div>
</div>
......@@ -72,8 +75,12 @@
</el-table>
</div>
</div>
<div class="empty" v-if="tdytList.length === 0 && !isSkeleton">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,暂无数据展示</div>
</div>
</div>
<div class="td_content">
<div v-if="!isSkeleton" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国土地交易项目地区Top10</span>
......@@ -85,7 +92,7 @@
</el-select>
</div>
</div>
<div class="content_box">
<div class="content_box" v-if="topList.length > 0 && !isSkeleton">
<div class="box-left" style="width: 60%;">
<div id="echarts3" style="height: 300px"></div>
</div>
......@@ -110,8 +117,12 @@
</el-table>
</div>
</div>
<div class="empty" v-if="topList.length === 0 && !isSkeleton">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,暂无数据展示</div>
</div>
</div>
<div class="td_content">
<div v-if="!isSkeleton" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国土地交易项目年份统计</span>
......@@ -144,7 +155,6 @@
</div>
</div>
</div>
</div>
</template>
<script>
......@@ -182,12 +192,12 @@ export default {
this.dataRegion()
this.yearsData()
setTimeout(() => {
this.isSkeleton=false;
this.getCountLandMarketByType()
this.getCountLandMarketByTypeTd()
this.getCountLandMarketByProvince()
this.getCountLandMarketByYear()
}, 1000);
this.isSkeleton=false;
}, 1500);
},
mounted() {
},
......@@ -208,9 +218,11 @@ export default {
obj.rate=res.data.provinceDate[i].rate;
list.push(obj)
}
this.$nextTick(() => {
this.initChart1(list)
})
if(list.length > 0){
this.$nextTick(() => {
this.initChart1(list)
})
}
})
},
getCountLandMarketByTypeTd(){
......@@ -218,17 +230,22 @@ export default {
countLandMarketByType({type:'土地用途',yearStr:this.years1.join(",")}).then(res => {
// this.isSkeleton = false
this.tdytList=res.data.provinceDate;
var list=[];
for(var i=0;i<10;i++){
var obj={};
obj.name=res.data.provinceDate[i].type;
obj.value=res.data.provinceDate[i].count;
obj.rate=res.data.provinceDate[i].rate;
list.push(obj)
if(res.data.provinceDate.length > 0){
var list=[];
for(var i=0;i<10;i++){
var obj={};
obj.name=res.data.provinceDate[i].type;
obj.value=res.data.provinceDate[i].count;
obj.rate=res.data.provinceDate[i].rate;
list.push(obj)
}
if(list.length > 0){
this.$nextTick(() => {
this.initChart2(list)
})
}
}
this.$nextTick(() => {
this.initChart2(list)
})
})
},
getCountLandMarketByProvince(){
......@@ -252,9 +269,11 @@ export default {
obj.typeList=res.data.provinceDate[i].typeList
list.push(obj)
}
this.$nextTick(() => {
this.initChart3(list)
})
if(list.length > 0){
this.$nextTick(() => {
this.initChart3(list)
})
}
}
})
},
......@@ -710,7 +729,21 @@ export default {
font-size: 14px;
margin: 0;
}
.empty{
margin: 0 auto;
height: 300px;
text-align: center;
.img{
width: 108px;
height: 108px;
margin-bottom: 24px;
margin-top: 70px;
}
.p1{
color: #333333;
font-size: 16px;
}
}
.query-params{
.common-title{
margin-right: 24px;
......
<template>
<div>
<skeleton v-if="isSkeleton" style="padding: 16px"></skeleton>
<div v-if="!isSkeleton" class="tdjy">
<div class="tdjy">
<p class="text_p">注:数据来源大司空建筑大数据平台,统计范围为全国公开的招标项目,未公开的不含在内</p>
<div class="td_content">
<skeleton v-if="isSkeleton" style="padding: 16px"></skeleton>
<div v-if="!isSkeleton" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国公招项目统计</span>
......@@ -34,7 +33,7 @@
</div>
</div>
</div>
<div class="td_content">
<div v-if="!isSkeleton" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国各地区招标统计TOP10</span>
......@@ -46,7 +45,7 @@
</el-select>
</div>
</div>
<div class="content_box">
<div class="content_box" v-if="topList.length > 0 && !isSkeleton">
<div class="box-left" style="width: 60%;">
<div id="echarts2" style="height: 300px"></div>
</div>
......@@ -71,8 +70,12 @@
</el-table>
</div>
</div>
<div class="empty" v-if="topList.length === 0 && !isSkeleton">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,暂无数据展示</div>
</div>
</div>
<div class="td_content">
<div v-if="!isSkeleton" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国各年度招标月份统计</span>
......@@ -81,7 +84,7 @@
</el-select>
</div>
</div>
<div class="content_box">
<div class="content_box" v-if="zbyfList.length > 0 && !isSkeleton">
<div class="box-left" style="width: 60%;">
<div id="echarts3" style="height: 300px"></div>
</div>
......@@ -105,16 +108,20 @@
<el-table-column prop="rate" label="占比(%)" align="right" :formatter="formatStatus" width="160" />
</el-table>
</div>
</div>
<div class="empty" v-if="zbyfList.length === 0 && !isSkeleton">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,暂无数据展示</div>
</div>
</div>
</div>
</div>
</template>
<script>
import * as echarts from 'echarts';
import dataRegion from '@/assets/json/dataRegion'
import { countNewsBidByYear,countBidGroupByProvince,countNewsBidByMonth } from '@/api/macro/macro'
import { countNewsBidByYear,countNewsBidByProvince,countNewsBidByMonth } from '@/api/macro/macro'
import skeleton from '../../component/skeleton'
export default {
name: 'NationalEconomies',
......@@ -135,7 +142,7 @@
xmtjList:[],
topList:[],
zbyfList:[],
isSkeleton:false,
isSkeleton:true,
}
},
created() {
......@@ -144,9 +151,9 @@
setTimeout(() => {
this.isSkeleton=false;
this.getcountNewsBidByYear()
this.getCountBidGroupByProvince()
this.getCountNewsBidByProvince()
this.getCountNewsBidByMonth()
}, 1500);
}, 1000);
},
mounted() {
},
......@@ -162,7 +169,7 @@
})
})
},
getCountBidGroupByProvince(){
getCountNewsBidByProvince(){
let params={
yearStr:this.years1.join(",")
}
......@@ -170,43 +177,24 @@
params.provinceId=this.address.join(",")
}
// this.isSkeleton = true
countBidGroupByProvince(params).then(res => {
countNewsBidByProvince(params).then(res => {
// this.isSkeleton = false
this.topList=res.data;
console.log(res.data)
var list=[];
// if(res.data.provinceDate){
// for(var i=0;i<res.data.provinceDate.length;i++){
// var obj={};
// obj.province=res.data.provinceDate[i].province;
// obj.value=res.data.provinceDate[i].count;
// obj.rate=res.data.provinceDate[i].rate;
// obj.typeList=res.data.provinceDate[i].typeList
// list.push(obj)
// }
// this.$nextTick(() => {
// this.initChart3(list)
// })
// }
this.topList=res.data.provinceDate;
if(res.data.provinceDate.length > 0){
this.$nextTick(() => {
this.initChart2(res.data.provinceDate)
})
}
})
},
getCountNewsBidByMonth(){
countNewsBidByMonth({yearStr:this.years2.join(",")}).then(res => {
this.zbyfList=res.data.monthDate;
// var list=[];
// if(res.data.yearDate){
// for(var i=0;i<res.data.yearDate.length;i++){
// var obj={};
// obj.type=res.data.yearDate[i].type;
// obj.value=res.data.yearDate[i].count;
// obj.rate=res.data.yearDate[i].rate;
// obj.typeList=res.data.yearDate[i].typeList
// list.push(obj)
// }
// this.$nextTick(() => {
// this.initChart4(list)
// })
// }
if(res.data.monthDate.length > 0){
this.$nextTick(() => {
this.initChart3(res.data.monthDate)
})
}
})
},
initChart1(data) {
......@@ -427,7 +415,7 @@
},
grid: {
top:30,
left:50,
left:100,
right:20,
bottom:60,
},
......@@ -535,15 +523,15 @@
show: true,
interval: 0
},
data: data.map(item => item.type),
data: data.map(item => item.label),
},
yAxis: {
type: 'value',
},
grid: {
top:30,
left:50,
right:20,
left:80,
right:40,
bottom:60,
},
color:['#FCD68A', '#FFE48A', '#FFB8AD', '#FFD7AD', '#A9F1E5', '#D0FAB7', '#ADC0FF', '#BEECFF', '#81D5BC', '#67B3FD', '#E9C8FF', '#56BFA1', '#6799FD'],
......@@ -576,7 +564,7 @@
handleYears(key){
switch (key) {
case 1:
this.getCountBidGroupByProvince()
this.getCountNewsBidByProvince()
break;
case 2:
this.getCountNewsBidByMonth()
......@@ -658,7 +646,21 @@
font-size: 14px;
margin: 0;
}
.empty{
margin: 0 auto;
height: 300px;
text-align: center;
.img{
width: 108px;
height: 108px;
margin-bottom: 24px;
margin-top: 70px;
}
.p1{
color: #333333;
font-size: 16px;
}
}
.query-params{
.common-title{
margin-right: 24px;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment