Commit 78f79904 authored by danfuman's avatar danfuman

修改

parent 408835c4
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<el-form ref="queryForm" :model="queryParams" :inline="true" size="small"> <el-form ref="queryForm" :model="queryParams" :inline="true" size="small">
<el-form-item prop="year"> <el-form-item prop="year">
<el-select v-model="queryParams.year" filterable class="form-content-width" placeholder="请选择"> <el-select v-model="queryParams.year" filterable class="form-content-width" placeholder="请选择">
<el-option v-for="(item, index) in yearOptions" :key="index" :label="item.year" :value="item.year" /> <el-option v-for="(item, index) in yearOptions" :key="index" :label="item.year" :value="item.year" @click.native='handleSelect(item.year)'/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-form> </el-form>
...@@ -92,6 +92,7 @@ ...@@ -92,6 +92,7 @@
:prop="item" :prop="item"
:label="item" :label="item"
width="16.7%" width="16.7%"
:formatter="formatStatus"
> >
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -104,9 +105,7 @@ ...@@ -104,9 +105,7 @@
import { regionalCompare,getYears } from '@/api/macro/macro' import { regionalCompare,getYears } from '@/api/macro/macro'
export default { export default {
name: 'comparison', name: 'comparison',
props:{ props:['dataQuery','provinceId'],
dataQuery:{}
},
data() { data() {
return { return {
queryParams: { queryParams: {
...@@ -155,6 +154,10 @@ export default { ...@@ -155,6 +154,10 @@ export default {
prop: 'industryTotalValue', prop: 'industryTotalValue',
label: '工业总产值(亿元)', label: '工业总产值(亿元)',
}, },
{
prop: 'fixedInvestment',
label: '固定资产投资(亿元)',
},
{ {
prop: 'realEstateInvestment', prop: 'realEstateInvestment',
label: '房地产开发投资(亿元)', label: '房地产开发投资(亿元)',
...@@ -287,17 +290,30 @@ export default { ...@@ -287,17 +290,30 @@ export default {
regionData:[] regionData:[]
} }
}, },
watch: {
provinceId(newValue, oldValue){
console.log(newValue)
}
},
created() { created() {
this.dataRegion(); this.dataRegion();
console.log(this.dataQuery)
// this.getData(); // this.getData();
getYears({}).then(res => { getYears({}).then(res => {
this.yearOptions=res.data.reverse(); this.yearOptions=res.data.reverse();
this.queryParams.year = this.yearOptions[0].year; this.queryParams.year = this.yearOptions[0].year;
if(this.dataQuery.pId){ if(this.dataQuery.pId){
const params = { year: this.queryParams.year,type:3,provinceId:this.dataQuery.provinceId } const params = { year: this.queryParams.year,type:3}
if(this.provinceId.length >= 0){
params.provinceId=this.provinceId[0]
}
if(this.provinceId.length >= 1){
params.cityId=this.provinceId[1]
}
if(this.provinceId.length >= 2){
params.areaId=this.provinceId[2]
}
this.value1Flag=true this.value1Flag=true
this.addressValue1=this.dataQuery.province this.addressValue1=this.dataQuery.province.join('-')
this.getData(params,1) this.getData(params,1)
} }
}) })
...@@ -318,8 +334,10 @@ export default { ...@@ -318,8 +334,10 @@ export default {
params.id=this.dataQuery.id params.id=this.dataQuery.id
} }
regionalCompare(params).then(res => { regionalCompare(params).then(res => {
this.tableData.splice(index-1,1,res.data) if(res.data){
this.$forceUpdate(); this.tableData.splice(index-1,1,res.data)
this.$forceUpdate();
}
}) })
}, },
//地区 //地区
...@@ -377,7 +395,7 @@ export default { ...@@ -377,7 +395,7 @@ export default {
}, },
handleVisibleChange(flag,index){ handleVisibleChange(flag,index){
if(!flag){ if(!flag){
if(this.value1 || this.value2 || this.value3 || this.value4 || this.value5){ if((index === 1 && this.value1) || (index === 2 && this.value2) || (index === 3 && this.value3) || (index === 4 && this.value4) || (index === 5 && this.value5)){
switch (index) { switch (index) {
case 1: case 1:
this.value1Flag=true this.value1Flag=true
...@@ -523,11 +541,16 @@ export default { ...@@ -523,11 +541,16 @@ export default {
this.$forceUpdate(); this.$forceUpdate();
}, },
handleSelect(val){
const params = { year: this.queryParams.year,type:3 }
},
formatStatus: function(row, column, cellValue) { formatStatus: function(row, column, cellValue) {
if(row.title === '经济'||row.title === '财政'||row.title === '债务'){ if(row.title === '经济'||row.title === '财政'||row.title === '债务'){
return cellValue return cellValue
}else { }else {
return cellValue? cellValue : '-' // return cellValue? cellValue : '-'
return cellValue
} }
}, },
rowStyle(row){ rowStyle(row){
......
...@@ -24,16 +24,18 @@ ...@@ -24,16 +24,18 @@
<el-table <el-table
v-loading="tableLoading" v-loading="tableLoading"
:data="tableData" :data="tableData"
height="440"
border border
height="440px"
highlight-current-row highlight-current-row
:summary-method="getSummaries"
show-summary
> >
<el-table-column label="序号" width="60" align="left"> <el-table-column label="序号" width="60" align="left">
<template slot-scope="scope">{{ scope.$index + 1 }}</template> <template slot-scope="scope">{{ scope.$index + 2 }}</template>
</el-table-column> </el-table-column>
<el-table-column label="产业类型" prop="projectType"></el-table-column> <el-table-column label="产业类型" prop="projectType"></el-table-column>
<el-table-column :label="oneYear"> <el-table-column :label="oneYear">
<el-table-column prop="money" label="金额(亿元)"> </el-table-column> <el-table-column prop="money" label="金额(亿元)" sortable> </el-table-column>
<el-table-column prop="rate" label="占比"> </el-table-column> <el-table-column prop="rate" label="占比"> </el-table-column>
</el-table-column> </el-table-column>
<el-table-column :label="twoYear"> <el-table-column :label="twoYear">
...@@ -51,12 +53,7 @@ ...@@ -51,12 +53,7 @@
import { bidGroupCountByProjectType,bidMoneyGroupByProjectType,getYears } from '@/api/macro/macro' import { bidGroupCountByProjectType,bidMoneyGroupByProjectType,getYears } from '@/api/macro/macro'
export default { export default {
name: 'industrialStructure', name: 'industrialStructure',
props:{ props:['dataQuery','provinceId'],
dataQuery: {
type: Object,
default: {}
},
},
data() { data() {
return { return {
queryParams: { queryParams: {
...@@ -71,6 +68,11 @@ export default { ...@@ -71,6 +68,11 @@ export default {
twoYear:'', twoYear:'',
} }
}, },
watch: {
provinceId(newValue, oldValue){
this.getData()
}
},
created() { created() {
getYears({}).then(res => { getYears({}).then(res => {
this.yearOptions=res.data.reverse(); this.yearOptions=res.data.reverse();
...@@ -92,7 +94,16 @@ export default { ...@@ -92,7 +94,16 @@ export default {
endTime=mydate.getFullYear()-1+'-12-31'; endTime=mydate.getFullYear()-1+'-12-31';
this.oneYear=mydate.getFullYear()-1+'年'; this.oneYear=mydate.getFullYear()-1+'年';
this.twoYear=mydate.getFullYear()-2+'年'; this.twoYear=mydate.getFullYear()-2+'年';
let params={startDate:startTime,endDate:endTime,province:this.dataQuery.provinceId} let params={startDate:startTime,endDate:endTime}
if(this.provinceId.length >= 0){
params.province=this.provinceId[0]
}
if(this.provinceId.length >= 1){
params.city=this.provinceId[1]
}
if(this.provinceId.length >= 2){
params.county=this.provinceId[2]
}
bidMoneyGroupByProjectType(params).then(res => { bidMoneyGroupByProjectType(params).then(res => {
let list=res.data[1].type let list=res.data[1].type
for (let i=0; i<res.data[0].type.length; i++){ for (let i=0; i<res.data[0].type.length; i++){
...@@ -170,13 +181,54 @@ export default { ...@@ -170,13 +181,54 @@ export default {
] ]
} }
myChart.setOption(option); myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
}, },
handleMessage(){ handleMessage(){
this.$message({ this.$message({
message: '功能正在开发中', message: '功能正在开发中',
type: 'warning' type: 'warning'
}); });
} },
getSummaries(param){
const { columns, data } = param;
const sums = [];
columns.forEach((column, index) => {
if (index === 0) {
sums[index] = '1';
return;
}
if (index === 1) {
sums[index] = '合计';
return;
}
if (index === 3) {
sums[index] = '100';
return;
}
if (index === 5) {
sums[index] = '100';
return;
}
const values = data.map(item => Number(item[column.property]));
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return Number(Number(prev) + Number(curr)).toFixed(3)
} else {
return prev;
}
}, 0);
// if (index === 1) {
// sums[index] = Number(sums[index]).toFixed(0);
// return;
// }
});
console.log(sums)
return sums;
},
} }
} }
...@@ -211,6 +263,17 @@ export default { ...@@ -211,6 +263,17 @@ export default {
} }
.content-right{ .content-right{
width: 50%; width: 50%;
::v-deep .el-table{
display: flex;
flex-direction: column;
.el-table__body-wrapper {
order: 1;
}
.el-table__fixed-footer-wrapper {
z-index: 0;
top: 46px;
}
}
} }
} }
} }
......
...@@ -24,10 +24,14 @@ ...@@ -24,10 +24,14 @@
highlight-current-row highlight-current-row
@sort-change="sortChange" @sort-change="sortChange"
> >
<el-table-column prop="province" label="下辖区" width="170" :formatter="formatStatus"> <el-table-column prop="province" label="下辖区" width="170" :formatter="formatStatus" fixed>
<!--<template slot-scope="scope">-->
<!--{{ scope.row.province}}{{scope.row.city ? '-': ''}}{{ scope.row.city}}{{scope.row.area ? '-': ''}}{{ scope.row.area}}-->
<!--</template>-->
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.province}}{{scope.row.city ? '-': ''}}{{ scope.row.city}}{{scope.row.area ? '-': ''}}{{ scope.row.area}} <router-link :to="{path:'/macro/economies',query:{provinceId:scope.row.provinceId}}" tag="a" class="a-link">{{ scope.row.province}}{{scope.row.city ? '-': ''}}{{ scope.row.city}}{{scope.row.area ? '-': ''}}{{ scope.row.area}}</router-link>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="gdp" label="GDP(亿元)" sortable width="120" :formatter="formatStatus"/> <el-table-column prop="gdp" label="GDP(亿元)" sortable width="120" :formatter="formatStatus"/>
<el-table-column prop="gdpGrowth" label="GDP增速" sortable width="100" :formatter="formatStatus"/> <el-table-column prop="gdpGrowth" label="GDP增速" sortable width="100" :formatter="formatStatus"/>
...@@ -39,8 +43,8 @@ ...@@ -39,8 +43,8 @@
<el-table-column prop="govFundIncome" label="政府性基金收入(亿元)" sortable width="180" :formatter="formatStatus"/> <el-table-column prop="govFundIncome" label="政府性基金收入(亿元)" sortable width="180" :formatter="formatStatus"/>
<el-table-column prop="govDebtBalance" label="地方政府债务余额(亿元)" sortable width="180" :formatter="formatStatus"/> <el-table-column prop="govDebtBalance" label="地方政府债务余额(亿元)" sortable width="180" :formatter="formatStatus"/>
<el-table-column prop="uipInterestBearingDebt" label="城投平台有息债务(亿元)" sortable width="180" :formatter="formatStatus"/> <el-table-column prop="uipInterestBearingDebt" label="城投平台有息债务(亿元)" sortable width="180" :formatter="formatStatus"/>
<el-table-column prop="fiscalSelfSufficiencyRate" label="财政自给率" sortable width="120":formatter="formatStatus"/> <el-table-column prop="fiscalSelfSufficiencyRate" label="财政自给率(%)" sortable width="120":formatter="formatStatus"/>
<el-table-column prop="govDebtRateWild" label="债务率-宽口径" sortable width="130" :formatter="formatStatus"/> <el-table-column prop="govDebtRateWild" label="债务率-宽口径(%)" sortable :formatter="formatStatus"/>
</el-table> </el-table>
</div> </div>
<div class="pagination-box"> <div class="pagination-box">
...@@ -55,12 +59,7 @@ ...@@ -55,12 +59,7 @@
import { nationalPage,getYears } from '@/api/macro/macro' import { nationalPage,getYears } from '@/api/macro/macro'
export default { export default {
name: 'localEconomy', name: 'localEconomy',
props:{ props:['dataQuery','provinceId'],
dataQuery: {
type: Object,
default: {}
},
},
data() { data() {
return { return {
queryParams: { queryParams: {
...@@ -72,7 +71,17 @@ export default { ...@@ -72,7 +71,17 @@ export default {
tableLoading: false, tableLoading: false,
pageIndex: 1, pageIndex: 1,
pageSize: 10, pageSize: 10,
tableDataTotal: 0 tableDataTotal: 0,
}
},
watch: {
dataQuery: {
handler(newValue, oldValue) {
},
deep: true
},
provinceId(newValue, oldValue){
this.getData()
} }
}, },
created() { created() {
...@@ -91,7 +100,16 @@ export default { ...@@ -91,7 +100,16 @@ export default {
params.order=this.queryParams.order params.order=this.queryParams.order
} }
params.provinceIds=[this.dataQuery.provinceId] if(this.provinceId.length >= 0){
params.provinceIds=[this.provinceId[0]]
}
if(this.provinceId.length >= 1){
params.cityId=[this.provinceId[1]]
}
if(this.provinceId.length >= 2){
params.areaId=[this.provinceId[2]]
}
// params.provinceIds=[this.dataQuery.provinceId]
nationalPage(params).then(res => { nationalPage(params).then(res => {
this.tableData = res.data.list this.tableData = res.data.list
this.tableDataTotal = res.data.totalCount this.tableDataTotal = res.data.totalCount
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
<img v-else src="@/assets/images/economies/icon_down.png"> <img v-else src="@/assets/images/economies/icon_down.png">
</div> </div>
<div id="echartsZS" style="height: 75px;"></div> <div id="echartsZS" style="height: 75px;"></div>
<div class="item-text up" v-if="(recentlyYear.gdpGrowth-nextYearMap.gdpGrowth) > 0">{{nextYearMap.year}}年上升<span>{{recentlyYear.gdpGrowth-nextYearMap.gdpGrowth}}%</span></div> <div class="item-text up" v-if="(recentlyYear.gdpGrowth-nextYearMap.gdpGrowth) > 0">{{nextYearMap.year}}年上升<span>{{(recentlyYear.gdpGrowth-nextYearMap.gdpGrowth).toFixed(2).toString()}}%</span></div>
<div class="item-text down" v-else>{{nextYearMap.year}}年下降<span>{{(this.recentlyYear.gdpGrowth-this.nextYearMap.gdpGrowth).toFixed(2).toString().substring(1)}}%</span></div> <div class="item-text down" v-else>{{nextYearMap.year}}年下降<span>{{(this.recentlyYear.gdpGrowth-this.nextYearMap.gdpGrowth).toFixed(2).toString().substring(1)}}%</span></div>
</div> </div>
<div class="item"> <div class="item">
...@@ -106,12 +106,7 @@ ...@@ -106,12 +106,7 @@
import { regional,regionalList,location } from '@/api/macro/macro' import { regional,regionalList,location } from '@/api/macro/macro'
export default { export default {
name: 'regionalEconomy', name: 'regionalEconomy',
props:{ props:['dataQuery','provinceId'],
dataQuery: {
type: Object,
default: {}
},
},
data() { data() {
return { return {
tableData: [], tableData: [],
...@@ -286,7 +281,7 @@ export default { ...@@ -286,7 +281,7 @@ export default {
created() { created() {
this.getData() this.getData()
this.$nextTick(()=>{ this.$nextTick(()=>{
// console.log(this.dataQuery)
}) })
}, },
computed: { computed: {
...@@ -297,6 +292,19 @@ export default { ...@@ -297,6 +292,19 @@ export default {
return this.headers.map(item => { return this.headers.map(item => {
return this.tableData.reduce((pre, cur, index) => Object.assign(pre, {['value' + index]: cur[item.prop]}), {'title': item.label,}); return this.tableData.reduce((pre, cur, index) => Object.assign(pre, {['value' + index]: cur[item.prop]}), {'title': item.label,});
}); });
},
// provinceId() {
// return this.dataQuery.provinceId
// }
},
watch: {
dataQuery: {
handler(newValue, oldValue) {
},
deep: true
},
provinceId(newValue, oldValue){
this.getData()
} }
}, },
methods: { methods: {
...@@ -305,8 +313,14 @@ export default { ...@@ -305,8 +313,14 @@ export default {
if(this.dataQuery.id){ if(this.dataQuery.id){
params.id=this.dataQuery.id params.id=this.dataQuery.id
} }
if(this.dataQuery.provinceId){ if(this.provinceId.length >= 0){
params.provinceId=this.dataQuery.provinceId params.provinceId=this.provinceId[0]
}
if(this.provinceId.length >= 1){
params.cityId=this.provinceId[1]
}
if(this.provinceId.length >= 2){
params.areaId=this.provinceId[2]
} }
regional(params).then(res => { regional(params).then(res => {
this.recentlyYear=res.data[0].recentlyYear; this.recentlyYear=res.data[0].recentlyYear;
...@@ -386,6 +400,9 @@ export default { ...@@ -386,6 +400,9 @@ export default {
] ]
} }
myChart.setOption(option); myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
}, },
initChart1(){ initChart1(){
let myChartZS = echarts.init(document.getElementById("echartsZS")) let myChartZS = echarts.init(document.getElementById("echartsZS"))
...@@ -445,6 +462,9 @@ export default { ...@@ -445,6 +462,9 @@ export default {
] ]
} }
myChartZS.setOption(option); myChartZS.setOption(option);
window.addEventListener("resize", function () {
myChartZS.resize();//图表跟随页面大小变化宽度
});
}, },
initChart2(){ initChart2(){
let myChartRK = echarts.init(document.getElementById("echartsRK")) let myChartRK = echarts.init(document.getElementById("echartsRK"))
...@@ -504,6 +524,9 @@ export default { ...@@ -504,6 +524,9 @@ export default {
] ]
} }
myChartRK.setOption(option); myChartRK.setOption(option);
window.addEventListener("resize", function () {
myChartRK.resize();//图表跟随页面大小变化宽度
});
}, },
initChart3(){ initChart3(){
let myChartSR = echarts.init(document.getElementById("echartsSR")) let myChartSR = echarts.init(document.getElementById("echartsSR"))
...@@ -563,6 +586,9 @@ export default { ...@@ -563,6 +586,9 @@ export default {
] ]
} }
myChartSR.setOption(option); myChartSR.setOption(option);
window.addEventListener("resize", function () {
myChartSR.resize();//图表跟随页面大小变化宽度
});
}, },
initChart4(){ initChart4(){
let myChartYE = echarts.init(document.getElementById("echartsYE")) let myChartYE = echarts.init(document.getElementById("echartsYE"))
...@@ -622,6 +648,9 @@ export default { ...@@ -622,6 +648,9 @@ export default {
] ]
} }
myChartYE.setOption(option); myChartYE.setOption(option);
window.addEventListener("resize", function () {
myChartYE.resize();//图表跟随页面大小变化宽度
});
}, },
formatStatus: function(row, column, cellValue) { formatStatus: function(row, column, cellValue) {
if(row.title === '经济'||row.title === '财政'||row.title === '债务'){ if(row.title === '经济'||row.title === '财政'||row.title === '债务'){
......
...@@ -10,13 +10,22 @@ ...@@ -10,13 +10,22 @@
<div class="location"> <div class="location">
<span><i class="el-icon-location"></i>{{province}}</span> <span><i class="el-icon-location"></i>{{province}}</span>
<el-cascader ref="address" class="cascader-region" popper-class='cascader-region-addd' <el-cascader ref="address" class="cascader-region" popper-class='cascader-region-addd'
@input="addressListbtn" v-model="address" :options="addressList" :props="props" collapse-tags></el-cascader> @change="addressListbtn" v-model="address" :options="addressList" :props="props" collapse-tags></el-cascader>
<!--<el-select v-model="provinceId" class="cascader-region">-->
<!--<el-option-->
<!--v-for="(item,index) in addressList"-->
<!--:key="index"-->
<!--:label="item.label"-->
<!--:value="item.id"-->
<!--@click.native="addressListbtn(item.label,item.id)"-->
<!--&gt;</el-option>-->
<!--</el-select>-->
</div> </div>
</div> </div>
<RegionalEconomy v-if="activeName === 'first' && province" :dataQuery="dataQuery"></RegionalEconomy> <RegionalEconomy v-if="activeName === 'first' && province" :dataQuery="dataQuery" :provinceId="provinceId"></RegionalEconomy>
<LocalEconomy v-if="activeName === 'second' && province" :dataQuery="dataQuery"></LocalEconomy> <LocalEconomy v-if="activeName === 'second' && province" :dataQuery="dataQuery" :provinceId="provinceId"></LocalEconomy>
<IndustrialStructure v-if="activeName === 'third' && province" :dataQuery="dataQuery"></IndustrialStructure> <IndustrialStructure v-if="activeName === 'third' && province" :dataQuery="dataQuery" :provinceId="provinceId"></IndustrialStructure>
<Comparison v-if="activeName === 'four' && province" :dataQuery="dataQuery"></Comparison> <Comparison v-if="activeName === 'four' && province" :dataQuery="dataQuery" :provinceId="provinceId"></Comparison>
</div> </div>
</template> </template>
...@@ -46,17 +55,20 @@ export default { ...@@ -46,17 +55,20 @@ export default {
checkStrictly: true checkStrictly: true
}, },
addressList: [], addressList: [],
address:'' address:'',
provinceId:[]
} }
}, },
created() { created() {
this.dataQuery=this.$route.query; this.dataQuery=this.$route.query;
location({provinceId:'500000'}).then(res => { location({provinceId:'500000'}).then(res => {
this.province=res.data.currentProvince.regionName; this.province=res.data.currentProvince.regionName;
this.provinceId=res.data.currentProvince.id;
if(!this.dataQuery.provinceId){ if(!this.dataQuery.provinceId){
this.dataQuery.provinceId=this.provinceId this.dataQuery.provinceId=res.data.currentProvince.id
this.dataQuery.province=this.province this.dataQuery.province=this.province;
this.provinceId.push(res.data.currentProvince.id)
}else {
this.provinceId.push(this.dataQuery.provinceId)
} }
}) })
if(this.dataQuery.activeName){ if(this.dataQuery.activeName){
...@@ -71,7 +83,6 @@ export default { ...@@ -71,7 +83,6 @@ export default {
}, },
methods: { methods: {
handleClick(key,item) { handleClick(key,item) {
console.log(item)
if(key === 'four'){ if(key === 'four'){
this.activeName='four' this.activeName='four'
} }
...@@ -99,7 +110,7 @@ export default { ...@@ -99,7 +110,7 @@ export default {
"value": dataRegion[i].parentId, "value": dataRegion[i].parentId,
"children": [] "children": []
}); });
} else if (dataRegion[i].regionLevel == x + 1 && x + 1 == 2) { }else if (dataRegion[i].regionLevel == x + 1 && x + 1 == 2) {
for (let j = 0; j < str.length; j++) { for (let j = 0; j < str.length; j++) {
if (str[j].id == dataRegion[i].parentId) { if (str[j].id == dataRegion[i].parentId) {
str[j].children.push({ str[j].children.push({
...@@ -111,7 +122,7 @@ export default { ...@@ -111,7 +122,7 @@ export default {
}); });
} }
} }
} else if (dataRegion[i].regionLevel == x + 1 && x + 1 == 3) { }else if (dataRegion[i].regionLevel == x + 1 && x + 1 == 3) {
for (let j = 0; j < str.length; j++) { for (let j = 0; j < str.length; j++) {
for (let k = 0; k < str[j].children.length; k++) { for (let k = 0; k < str[j].children.length; k++) {
if (str[j].children[k].id == dataRegion[i].parentId) { if (str[j].children[k].id == dataRegion[i].parentId) {
...@@ -131,9 +142,19 @@ export default { ...@@ -131,9 +142,19 @@ export default {
this.addressList = str; this.addressList = str;
}, },
addressListbtn() { addressListbtn() {
let nodesObj = this.$refs.address.getCheckedNodes(); let nodesObj = this.$refs.address.getCheckedNodes()[0];
console.log(nodesObj ) // console.log(nodesObj)
console.log(this.address) this.province=nodesObj.pathLabels[nodesObj.pathLabels.length-1];
this.provinceId=nodesObj.path;
this.dataQuery.province=nodesObj.pathLabels;
// this.dataQuery.provinceId=nodesObj.path[nodesObj.path.length-1];
// console.log(this.dataQuery)
// this.province=label;
// this.provinceId=id;
// this.dataQuery.provinceId=id;
// this.dataQuery.province=label;
} }
} }
} }
......
...@@ -18,8 +18,8 @@ ...@@ -18,8 +18,8 @@
placeholder="资质资格" placeholder="资质资格"
collapse-tags collapse-tags
clearable></el-cascader> clearable></el-cascader>
<el-input placeholder="输入企业名称关键词" v-model="queryParams.ename"> <el-input placeholder="输入企业名称关键词" v-model="queryParams.ename" clearable @clear="handleSearch()">
<el-button slot="append" @click="querySubmit()">搜索</el-button> <el-button slot="append" @click="handleSearch()">搜索</el-button>
</el-input> </el-input>
<span class="total">{{tableDataTotal}}</span> <span class="total">{{tableDataTotal}}</span>
</div> </div>
...@@ -30,7 +30,9 @@ ...@@ -30,7 +30,9 @@
element-loading-text="Loading" element-loading-text="Loading"
border border
fit fit
@sort-change="sortChange"
highlight-current-row highlight-current-row
v-if="tableDataTotal > 0"
> >
<el-table-column label="序号" width="50" align="left" fixed> <el-table-column label="序号" width="50" align="left" fixed>
<template slot-scope="scope">{{ pageIndex * pageSize - pageSize + scope.$index + 1 }}</template> <template slot-scope="scope">{{ pageIndex * pageSize - pageSize + scope.$index + 1 }}</template>
...@@ -41,22 +43,27 @@ ...@@ -41,22 +43,27 @@
<span v-else v-html="scope.row.name" ></span> <span v-else v-html="scope.row.name" ></span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="注册地址" prop="domicile" width="150"/> <el-table-column label="注册地址" prop="domicile" width="150" :formatter="formatStatus"/>
<el-table-column label="资质资格" prop="aptitudeCountNew" sortable width="100"/> <el-table-column label="资质资格" prop="aptitudeCountNew" sortable="custom" width="100" :formatter="formatStatus"/>
<el-table-column label="专业人员" prop="persionCount" sortable width="100"/> <el-table-column label="专业人员" prop="persionCount" sortable="custom" width="100" :formatter="formatStatus"/>
<el-table-column label="中标业绩" prop="recentlyCount" sortable width="100"/> <el-table-column label="中标业绩" prop="recentlyCount" sortable="custom" width="100" :formatter="formatStatus"/>
<el-table-column label="最大中标金额(万元)" prop="cgfs" sortable width="160"/> <el-table-column label="最大中标金额(万元)" prop="cgfs" sortable="custom" width="160" :formatter="formatStatus"/>
<el-table-column label="中标总金额(万元)" prop="cgfs" sortable width="160"/> <el-table-column label="中标总金额(万元)" prop="cgfs" sortable="custom" width="160" :formatter="formatStatus"/>
<el-table-column label="四库业绩" prop="skyCount" sortable width="100"/> <el-table-column label="四库业绩" prop="skyCount" sortable="custom" width="100" :formatter="formatStatus"/>
<el-table-column label="公路业绩" prop="cgfs" sortable width="100"/> <el-table-column label="公路业绩" prop="cgfs" sortable="custom" width="100" :formatter="formatStatus"/>
<el-table-column label="水利业绩" prop="cgfs" sortable width="100"/> <el-table-column label="水利业绩" prop="cgfs" sortable="custom" width="100" :formatter="formatStatus"/>
<el-table-column label="常合作业主" prop="cgfs" width="130"/> <el-table-column label="常合作业主" prop="cgfs" width="130" :formatter="formatStatus"/>
<el-table-column label="客户(个)" prop="customerCount" sortable width="100"/> <el-table-column label="客户(个)" prop="customerCount" sortable="custom" width="100" :formatter="formatStatus"/>
<el-table-column label="供应商(个)" prop="supplierCount" sortable width="130" /> <el-table-column label="供应商(个)" prop="supplierCount" sortable="custom" width="130" :formatter="formatStatus"/>
<el-table-column label="常合作供应商" prop="supplierCount" width="120"/> <el-table-column label="常合作供应商" prop="gys" width="120" :formatter="formatStatus"/>
</el-table> </el-table>
<div class="empty" v-if="tableDataTotal === 0">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,没找到相关数据</div>
<div class="p2">建议调整关键词或筛选条件,重新搜索</div>
</div>
</div> </div>
<div class="pagination-box"> <div class="pagination-box" v-if="tableDataTotal>pageSize">
<el-pagination background :current-page="pageIndex" :page-size="pageSize" :total="tableDataTotal" layout="prev, pager, next, jumper" @current-change="handleCurrentChange" @size-change="handleSizeChange" /> <el-pagination background :current-page="pageIndex" :page-size="pageSize" :total="tableDataTotal" layout="prev, pager, next, jumper" @current-change="handleCurrentChange" @size-change="handleSizeChange" />
</div> </div>
</div> </div>
...@@ -95,7 +102,7 @@ export default { ...@@ -95,7 +102,7 @@ export default {
tableLoading: false, tableLoading: false,
pageIndex: 1, pageIndex: 1,
pageSize: 10, pageSize: 10,
tableDataTotal: 1, tableDataTotal: null,
aptitudeCodeList:[], aptitudeCodeList:[],
aptitudeType:'', aptitudeType:'',
province:'', province:'',
...@@ -175,8 +182,8 @@ export default { ...@@ -175,8 +182,8 @@ export default {
arr.push(codeStr[i][codeStr[i].length - 1]) arr.push(codeStr[i][codeStr[i].length - 1])
} }
this.aptitudeType=arr.join(',') this.aptitudeType=arr.join(',')
console.log(this.aptitudeType)
this.$refs.aptitudeCode.toggleDropDownVisible(false) this.$refs.aptitudeCode.toggleDropDownVisible(false)
this.pageIndex=1;
this.querySubmit() this.querySubmit()
}, },
handleClick(){ handleClick(){
...@@ -188,7 +195,31 @@ export default { ...@@ -188,7 +195,31 @@ export default {
} }
this.pageIndex=1; this.pageIndex=1;
this.querySubmit() this.querySubmit()
} },
handleSearch(){
this.pageIndex=1;
this.querySubmit()
},
formatStatus: function(row, column, cellValue) {
return cellValue? cellValue : '-'
},
sortChange({ column, prop, order }){
if(prop === 'aptitudeCountNew'){
this.queryParams.field ='aptitudeCountNew'
}else {
this.queryParams.field = prop
}
if(column.order === "ascending"){
this.queryParams.order = 'asc'
}else if(column.order === "descending"){
this.queryParams.order = 'desc'
}else {
this.queryParams.order=''
this.queryParams.field=''
}
this.pageIndex = 1;
this.querySubmit()
},
} }
} }
</script> </script>
...@@ -281,6 +312,27 @@ export default { ...@@ -281,6 +312,27 @@ export default {
} }
.table-item{ .table-item{
margin-top: 14px; margin-top: 14px;
.empty{
margin: 0 auto;
height: 600px;
text-align: center;
border-top: 1px solid #EFEFEF;
.img{
width: 108px;
height: 108px;
margin-bottom: 24px;
margin-top: 150px;
}
.p1{
color: #333333;
font-size: 16px;
}
.p2{
color: #999999;
font-size: 14px;
margin-top: 8px;
}
}
} }
} }
} }
......
...@@ -37,6 +37,7 @@ ...@@ -37,6 +37,7 @@
border border
fit fit
highlight-current-row highlight-current-row
v-if="tableDataTotal > 0"
> >
<el-table-column label="序号" width="50" align="left" fixed> <el-table-column label="序号" width="50" align="left" fixed>
<template slot-scope="scope">{{ pageIndex * pageSize - pageSize + scope.$index + 1 }}</template> <template slot-scope="scope">{{ pageIndex * pageSize - pageSize + scope.$index + 1 }}</template>
...@@ -55,9 +56,9 @@ ...@@ -55,9 +56,9 @@
<el-table-column label="GDP增速(%)" prop="gdpGrowth" :formatter="formatStatus" sortable="custom" min-width="120" align="right"></el-table-column> <el-table-column label="GDP增速(%)" prop="gdpGrowth" :formatter="formatStatus" sortable="custom" min-width="120" align="right"></el-table-column>
<el-table-column label="人均GDP(元)" prop="gdpPerCapita" :formatter="formatStatus" sortable="custom" width="125" align="right"></el-table-column> <el-table-column label="人均GDP(元)" prop="gdpPerCapita" :formatter="formatStatus" sortable="custom" width="125" align="right"></el-table-column>
<el-table-column label="人口(万人)" prop="population" :formatter="formatStatus" sortable="custom" width="120" align="right"></el-table-column> <el-table-column label="人口(万人)" prop="population" :formatter="formatStatus" sortable="custom" width="120" align="right"></el-table-column>
<el-table-column label="一般公共预算收入 (亿元)" prop="gbr" sortable="custom" width="170" align="right"></el-table-column> <el-table-column label="一般公共预算收入(亿元)" prop="gbr" sortable="custom" width="170" align="right"></el-table-column>
<el-table-column label="一般公共预算收入增速(%)" prop="gbrGrowth" :formatter="formatStatus" sortable="custom" min-width="140" align="right"></el-table-column> <el-table-column label="一般公共预算收入增速(%)" prop="gbrGrowth" :formatter="formatStatus" sortable="custom" min-width="140" align="right"></el-table-column>
<el-table-column label="一般公共预算收入:税收收入" prop="taxIncome" :formatter="formatStatus" sortable="custom" min-width="140" align="right"></el-table-column> <el-table-column label="一般公共预算收入:税收收入(亿元)" prop="taxIncome" :formatter="formatStatus" sortable="custom" min-width="140" align="right"></el-table-column>
<el-table-column label="一般公共预算支出(亿元)" prop="gbe" :formatter="formatStatus" sortable="custom" width="140" align="right"></el-table-column> <el-table-column label="一般公共预算支出(亿元)" prop="gbe" :formatter="formatStatus" sortable="custom" width="140" align="right"></el-table-column>
<el-table-column label="政府性基金收入(亿元)" width="140" prop="govFundIncome" :formatter="formatStatus" sortable="custom" align="right"></el-table-column> <el-table-column label="政府性基金收入(亿元)" width="140" prop="govFundIncome" :formatter="formatStatus" sortable="custom" align="right"></el-table-column>
<el-table-column label="政府性基金收入:土地出让收入(亿元)" prop="landTransferIncome" sortable="custom" width="150" align="right"></el-table-column> <el-table-column label="政府性基金收入:土地出让收入(亿元)" prop="landTransferIncome" sortable="custom" width="150" align="right"></el-table-column>
...@@ -94,11 +95,16 @@ ...@@ -94,11 +95,16 @@
<el-table-column label="社会消费品零售总额(亿元)" prop="trscg" :formatter="formatStatus" width="160" align="right"></el-table-column> <el-table-column label="社会消费品零售总额(亿元)" prop="trscg" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="城镇居民人均可支配收入(元)" prop="urbanPcdi" :formatter="formatStatus" width="160" align="right"></el-table-column> <el-table-column label="城镇居民人均可支配收入(元)" prop="urbanPcdi" :formatter="formatStatus" width="160" align="right"></el-table-column>
</el-table> </el-table>
<div class="empty" v-if="tableDataTotal === 0">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,没找到相关数据</div>
<div class="p2">建议调整关键词或筛选条件,重新搜索</div>
</div>
</div> </div>
<!--<template slot-scope="scope">--> <!--<template slot-scope="scope">-->
<!--<router-link to="/purchaserDetail" target="_blank" tag="a" class="a-link">{{ scope.row.zbwj }}</router-link>--> <!--<router-link to="/purchaserDetail" target="_blank" tag="a" class="a-link">{{ scope.row.zbwj }}</router-link>-->
<!--</template>--> <!--</template>-->
<div class="pagination-box"> <div class="pagination-box" v-if="tableDataTotal>pageSize">
<el-pagination background :current-page="pageIndex" :page-size="pageSize" :total="tableDataTotal" layout="prev, pager, next, jumper" @current-change="handleCurrentChange" @size-change="handleSizeChange" /> <el-pagination background :current-page="pageIndex" :page-size="pageSize" :total="tableDataTotal" layout="prev, pager, next, jumper" @current-change="handleCurrentChange" @size-change="handleSizeChange" />
</div> </div>
<economies-detail ref="economiesDetail" /> <economies-detail ref="economiesDetail" />
...@@ -132,7 +138,7 @@ ...@@ -132,7 +138,7 @@
tableLoading: false, tableLoading: false,
pageIndex: 1, pageIndex: 1,
pageSize: 10, pageSize: 10,
tableDataTotal: 0, tableDataTotal: null,
} }
}, },
created() { created() {
...@@ -324,7 +330,34 @@ ...@@ -324,7 +330,34 @@
background: #ffffff; background: #ffffff;
padding: 16px; padding: 16px;
margin-top: 12px; margin-top: 12px;
/*height: calc(100vh - 300px);*/
.table-item{ .table-item{
position: relative;
.empty{
/*position: absolute;*/
/*top: 50%;*/
/*left: 50%;*/
/*transform: translate(-50%,-50%);*/
margin: 0 auto;
height: 600px;
text-align: center;
border-top: 1px solid #EFEFEF;
.img{
width: 108px;
height: 108px;
margin-bottom: 24px;
margin-top: 150px;
}
.p1{
color: #333333;
font-size: 16px;
}
.p2{
color: #999999;
font-size: 14px;
margin-top: 8px;
}
}
::v-deep .el-table{ ::v-deep .el-table{
th{ th{
font-size: 12px !important; font-size: 12px !important;
......
...@@ -80,10 +80,10 @@ ...@@ -80,10 +80,10 @@
<span class="common-title">全国招标项目概览</span> <span class="common-title">全国招标项目概览</span>
</div> </div>
</div> </div>
<div class="text">通过对{{year}}年全国招标数据进行分析,发现该企业主要集中在{{dataSort[0].label}}({{dataSort[0].count}}个)、{{dataSort[1].label}}({{dataSort[1].count}}个)进行招标。</div> <div class="text">通过对{{year}}年全国招标数据进行分析,发现该企业主要集中在{{dataSort[0].label}}({{dataSort[0].count}}个)、{{dataSort[1].label}}({{dataSort[1].count}}个)进行招标。</div>
<div class="main1"> <div class="main1">
<div id="gl-echarts" style="height: 250px"></div> <div id="gl-echarts" style="height: 250px"></div>
<p class="tips"><i class="el-icon-info"></i>数据来源大司空建筑大数据平台,统计范围为{{year}}年全国公开的招标项目,未公开的不含在内</p> <p class="tips"><i class="el-icon-info"></i>数据来源大司空建筑大数据平台,统计范围为{{year}}年全国公开的招标项目,未公开的不含在内</p>
</div> </div>
<div class="main2"> <div class="main2">
<div class="selectYear"> <div class="selectYear">
......
...@@ -299,7 +299,7 @@ export default { ...@@ -299,7 +299,7 @@ export default {
areaGroupByProvince().then(res => { areaGroupByProvince().then(res => {
this.zbData=res.data; this.zbData=res.data;
//定义一个变量 保存数据 因为sort方法排序会改变原数组 使用JSON方法深拷贝 将原数值暂存 //定义一个变量 保存数据 因为sort方法排序会改变原数组 使用JSON方法深拷贝 将原数值暂存
let dataArr = JSON.parse(JSON.stringify(res.data)) // let dataArr = JSON.parse(JSON.stringify(res.data))
let arr=res.data.sort((old,New)=>{ let arr=res.data.sort((old,New)=>{
return New.count - old.count return New.count - old.count
}) })
...@@ -309,7 +309,7 @@ export default { ...@@ -309,7 +309,7 @@ export default {
} }
this.rankList=data; this.rankList=data;
//将原数组数据赋值回去 保持数据不变 //将原数组数据赋值回去 保持数据不变
this.zbData = JSON.parse(JSON.stringify(dataArr)) // this.zbData = JSON.parse(JSON.stringify(dataArr))
this.initChart2() this.initChart2()
}) })
}, },
......
...@@ -87,7 +87,7 @@ ...@@ -87,7 +87,7 @@
</div> </div>
</div> </div>
</div> </div>
<el-input class="search-input" placeholder="输入企业名称关键词" v-model="queryParams.keyword"> <el-input class="search-input" placeholder="输入企业名称关键词" v-model="queryParams.keyword" clearable @clear="handleKeyword()">
<template slot="prepend"><i class="el-icon-search"></i></template> <template slot="prepend"><i class="el-icon-search"></i></template>
<el-button slot="append" @click="handleKeyword">搜索</el-button> <el-button slot="append" @click="handleKeyword">搜索</el-button>
</el-input> </el-input>
...@@ -141,6 +141,7 @@ ...@@ -141,6 +141,7 @@
</div> </div>
<div class="table-item"> <div class="table-item">
<el-table <el-table
v-if="tableDataTotal > 0"
v-loading="tableLoading" v-loading="tableLoading"
:data="tableData" :data="tableData"
element-loading-text="Loading" element-loading-text="Loading"
...@@ -227,8 +228,13 @@ ...@@ -227,8 +228,13 @@
<el-table-column prop="developmentZone" label="所属开发区" :formatter="formatStatus" width="160" /> <el-table-column prop="developmentZone" label="所属开发区" :formatter="formatStatus" width="160" />
<!--<el-table-column prop="bl" label="开发区类别" width="160" />--> <!--<el-table-column prop="bl" label="开发区类别" width="160" />-->
</el-table> </el-table>
<div class="empty" v-if="tableDataTotal === 0">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,没找到相关数据</div>
<div class="p2">建议调整关键词或筛选条件,重新搜索</div>
</div>
</div> </div>
<div class="pagination-box"> <div class="pagination-box" v-if="tableDataTotal>pageSize">
<el-pagination background :current-page="pageIndex" :page-size="pageSize" :total="tableDataTotal" layout="prev, pager, next, jumper" @current-change="handleCurrentChange" @size-change="handleSizeChange" /> <el-pagination background :current-page="pageIndex" :page-size="pageSize" :total="tableDataTotal" layout="prev, pager, next, jumper" @current-change="handleCurrentChange" @size-change="handleSizeChange" />
</div> </div>
</div> </div>
...@@ -259,7 +265,7 @@ export default { ...@@ -259,7 +265,7 @@ export default {
tableLoading: false, tableLoading: false,
pageIndex: 1, pageIndex: 1,
pageSize: 10, pageSize: 10,
tableDataTotal: 120, tableDataTotal: null,
selected:[], selected:[],
xzdjCalss:'', xzdjCalss:'',
props: { props: {
...@@ -651,7 +657,7 @@ export default { ...@@ -651,7 +657,7 @@ export default {
} }
::v-deep .search-input{ ::v-deep .search-input{
/*::v-deep .el-input{*/ /*::v-deep .el-input{*/
width: 250px; width: 260px;
height: 32px; height: 32px;
.el-input-group__prepend:first-child{ .el-input-group__prepend:first-child{
padding: 0; padding: 0;
...@@ -681,6 +687,27 @@ export default { ...@@ -681,6 +687,27 @@ export default {
} }
.table-item{ .table-item{
margin-top: 22px; margin-top: 22px;
.empty{
margin: 0 auto;
height: 550px;
text-align: center;
border-top: 1px solid #EFEFEF;
.img{
width: 108px;
height: 108px;
margin-bottom: 24px;
margin-top: 150px;
}
.p1{
color: #333333;
font-size: 16px;
}
.p2{
color: #999999;
font-size: 14px;
margin-top: 8px;
}
}
} }
.companyName{ .companyName{
width: 200px; width: 200px;
......
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