Commit 183dee16 authored by danfuman's avatar danfuman

宏观市场

parent f9cd4881
......@@ -5,7 +5,11 @@
<span class="province">{{province}}</span>
<span class="icon">
<i class="el-icon-location"></i>切换
<el-cascader ref="address" class="cascader-region" popper-class='cascader-region-addd'
<el-select v-if="key =='5'" v-model="address" class="cascader-region" @change="addressListbtn1">
<el-option v-for="(item,index) in addressList" :key="index" :label="item.label" :value="item.id"></el-option>
</el-select>
<el-cascader v-else ref="address" class="cascader-region" popper-class='cascader-region-addd'
@change="addressListbtn" v-model="address" :options="addressList" :props="props" collapse-tags></el-cascader>
</span>
</div>
......@@ -17,7 +21,7 @@
import dataRegion from '@/assets/json/dataRegion'
export default {
name:'region',
props:['province','dataQuery'],
props:['province','dataQuery','type'],
data(){
return {
props: {
......@@ -28,7 +32,8 @@
addressList: [],
address:'',
provinceId:[],
location:''
location:'',
key:'',
}
},
watch: {
......@@ -39,10 +44,12 @@
created(){
this.dataRegion()
this.location=this.province
this.key=this.type;
},
methods:{
addressListbtn() {
let nodesObj = this.$refs.address.getCheckedNodes()[0];
this.location=nodesObj.pathLabels[nodesObj.pathLabels.length-1];
this.provinceId=nodesObj.path;
let data={}
......@@ -52,6 +59,18 @@
this.$parent.addressListbtn(data)
localStorage.setItem('location', true)
},
addressListbtn1() {
let obj = this.addressList.find((option) => option.id === this.address);
this.location=obj.label;
this.provinceId=[obj.id];
let data={}
data.province=this.location
data.provinceId=this.provinceId
data.provinces=[this.location]
console.log(data,"|||||||")
this.$parent.addressListbtn(data)
localStorage.setItem('location', true)
},
//地区
async dataRegion() {
// await axios.post("https://files.jiansheku.com/file/json/common/dataRegion.json", {}, {
......
......@@ -376,7 +376,7 @@ export default {
top: 46px;
}
th{
font-size: 12px !important;
font-size: 13px !important;
font-weight: 400 !important;
}
.el-table__fixed-header-wrapper th{
......
......@@ -22,6 +22,7 @@
v-loading="tableLoading"
:data="tableData"
border
v-horizontal-scroll="'hover'"
highlight-current-row
@sort-change="sortChange"
:default-sort = "{prop: 'gdp', order: 'descending'}"
......@@ -36,7 +37,7 @@
</el-table-column>
<el-table-column prop="gdp" label="GDP(亿元)" sortable width="120" :formatter="formatStatus"/>
<el-table-column prop="gdpGrowth" label="GDP增速(%)" sortable width="120" :formatter="formatStatus"/>
<el-table-column prop="gdpGrowth" label="GDP增速(%)" sortable width="130" :formatter="formatStatus"/>
<el-table-column prop="gdpPerCapita" label="人均GDP(元)" sortable width="130" :formatter="formatStatus"/>
<el-table-column prop="population" label="人口(万人)" sortable width="120" :formatter="formatStatus"/>
<el-table-column prop="fixedInvestment" label="固定资产投资 (亿元) " sortable width="200" :formatter="formatStatus"/>
......@@ -111,10 +112,10 @@ export default {
params.provinceIds=[this.provinceId[0]]
}
if(this.provinceId.length > 1){
params.cityId=[this.provinceId[1]]
params.cityIds=[this.provinceId[1]]
}
if(this.provinceId.length > 2){
params.areaId=[this.provinceId[2]]
params.areaIds=[this.provinceId[2]]
}
// params.provinceIds=[this.dataQuery.provinceId]
// this.isSkeleton = true
......@@ -226,7 +227,6 @@ export default {
overflow-y: clip;
}
th{
font-size: 12px !important;
font-weight: 400 !important;
}
.el-table__fixed-header-wrapper th{
......
......@@ -333,9 +333,9 @@ export default {
getData(){
this.isSkeleton = true
let params={}
if(this.dataQuery.id){
params.id=this.dataQuery.id
}
// if(this.dataQuery.id){
// params.id=this.dataQuery.id
// }
if(this.provinceId.length >= 0){
params.provinceId=this.provinceId[0]
}
......@@ -732,16 +732,6 @@ export default {
this.$parent.handleClick('second', data);
break;
case 2:
// this.$router.push({
// path: '/macro/urban',
// query:{
// provinceId:this.dataQuery.provinceId,
// province:this.dataQuery.province,
// }
// })
console.log(this.dataQuery.provinceId)
console.log(this.dataQuery.province)
// return
this.$router.push({name: 'Urban',
params: {
provinceId: this.dataQuery.provinceId,
......@@ -883,7 +873,7 @@ export default {
::v-deep .el-table{
overflow:visible;
th{
font-size: 12px !important;
font-size: 13px !important;
font-weight: 400 !important;
}
.el-table__fixed-header-wrapper th{
......
......@@ -76,7 +76,13 @@ export default {
if(Array.isArray(this.dataQuery.provinceId)){
this.provinceId=this.dataQuery.provinceId
}else {
this.provinceId.push(this.dataQuery.provinceId)
if(this.dataQuery.cityId){
this.provinceId=[this.dataQuery.provinceId,this.dataQuery.cityId,this.dataQuery.areaId]
}else if(this.dataQuery.cityId){
this.provinceId=[this.dataQuery.provinceId,this.dataQuery.cityId]
}else {
this.provinceId=[this.dataQuery.provinceId]
}
}
}else {
location({}).then(res => {
......
<template>
<div class="app-container enterprises">
<Region v-if="province" :province="province" :dataQuery="dataQuery" @addressListbtn="addressListbtn"></Region>
<Region v-if="province" :province="province" :dataQuery="dataQuery" @addressListbtn="addressListbtn" :type="5"></Region>
<div class="flex-box eco-header">
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="本地企业" name="first"></el-tab-pane>
......@@ -20,6 +20,7 @@
collapse-tags
clearable></el-cascader>
<el-input placeholder="输入关键词查询" v-model="queryParams.ename" clearable @clear="handleSearch()">
<i slot="prefix" class="el-icon-search"></i>
<el-button slot="append" @click="handleSearch()">搜索</el-button>
</el-input>
<span class="total">{{tableDataTotal}}</span>
......@@ -31,7 +32,7 @@
v-loading="tableLoading"
border
fit
max-height="640"
v-horizontal-scroll="'hover'"
@sort-change="sortChange"
highlight-current-row
v-if="tableDataTotal > 0 && !isSkeleton"
......@@ -291,17 +292,8 @@ export default {
this.dataQuery.province=data.provinces;
let params={}
if(data){
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]
}
params.provinceId=this.provinceId
}
this.querySubmit()
location(params).then(res => {
console.log(res.data)
......@@ -362,11 +354,13 @@ export default {
width: 180px;
margin-right: 12px;
height: 32px;
line-height: 32px !important;
.el-input{
width: 100%;
height: 32px;
.el-input__inner{
height: 32px !important;
line-height: 32px !important;
}
}
.el-cascader__tags{
......@@ -379,16 +373,29 @@ export default {
}
::v-deep .el-input.el-input-group{
width: 240px;
height: 32px;
height: 30px;
border: 1px solid #e0e0e0;
.el-input__inner{
height: 32px;
border-right: 0;
height: 30px;
border: 0;
}
.el-input__suffix{
margin-top: -1px;
}
.el-icon-search{
font-size: 14px;
line-height: 32px;
color:#0081FF;
margin-left: 6px;
margin-right: 4px;
}
.el-input__inner:focus{
border-color: #e0e0e0;
/*border-color: #0081FF;*/
}
.el-input__inner:focus ~.el-input-group__append{
/*border: 1px solid #0081FF;*/
color: #ffffff;
background: #0081FF;
}
.el-input-group__append{
width: 60px;
......@@ -396,9 +403,12 @@ export default {
text-align: center;
background: #F5F5F5;
color:#0081FF;
border-left: 0;
border-radius: 0;
border-right: 0;
border-radius:0 2px 2px 0;
border: 0;
&:hover{
color: #ffffff;
background: #0081FF;
}
}
}
.total{
......@@ -448,7 +458,7 @@ export default {
overflow-y: clip;
}
th{
font-size: 12px !important;
font-size: 13px !important;
font-weight: 400 !important;
}
.el-table__fixed-header-wrapper th{
......
......@@ -437,7 +437,6 @@ export default {
.content{
background: #ffffff;
padding: 16px;
margin-bottom: 16px;
border-radius: 4px;
}
.common-title{
......
<template>
<div class="app-container">
大型甲方
</div>
</template>
<script>
export default {
name: 'FirstParty',
data() {
return {
}
},
created() {
},
methods: {
}
}
</script>
<style lang="scss" scoped>
</style>
<template>
<div class="app-container">
地区榜单
</div>
</template>
<script>
export default {
name: 'List',
data() {
return {
}
},
created() {
},
methods: {
}
}
</script>
<style lang="scss" scoped>
</style>
<template>
<div class="BIfx">
<el-tabs v-model="activeName">
<el-tab-pane label="宏观市场分析" name="first">
<img class="img" src="@/assets/images/BI/hgscfx.png"/>
</el-tab-pane>
<el-tab-pane label="立项设计" name="second">
<img class="img" src="@/assets/images/BI/lxsj.png"/>
</el-tab-pane>
<el-tab-pane label="专项债项目" name="third">
<img class="img" src="@/assets/images/BI/zxz.png"/>
</el-tab-pane>
<el-tab-pane label="中标公告" name="fourth">
<img class="img" src="@/assets/images/BI/zbgg.png"/>
</el-tab-pane>
</el-tabs>
</div>
</template>
<script>
export default {
name: 'BI',
data() {
return {
activeName:'first'
}
}
}
</script>
<style lang="scss" scoped>
.BIfx{
background: #ffffff;
padding: 16px;
margin-top: 12px;
::v-deep .el-tabs{
.el-tabs__nav-wrap::after {
position: static !important;
}
.el-tabs__header{
margin: 0;
.el-tabs__item{
padding: 0 16px;
font-size: 16px;
}
.is-active{
font-weight: bold;
}
}
.el-tabs__content{
width: 100%;
}
}
.img{
width: 100%;
margin-top: 30px;
}
}
</style>
......@@ -225,10 +225,7 @@
}
},
created() {
setTimeout(() => {
this.isSkeleton=false;
this.getData()
}, 1000);
this.getAreaGroupByProvince()
var date = new Date()
var year = date.getFullYear()
var month = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth()+ 1
......@@ -274,9 +271,13 @@
total=total+this.jzglData[i].count
}
this.total=total;
this.$nextTick(() => {
this.initChart()
})
this.initChart()
})
},
getCertGroupByMajorProvinceLevel(){
certGroupByMajorProvinceLevel().then(res => {
this.dqData=res.data;
let data=this.dqData[0].province;
......@@ -305,9 +306,15 @@
list.push(item)
}
this.jzdqData=list
this.initChart1()
this.$nextTick(() => {
this.initChart1()
})
})
},
getAreaGroupByProvince(){
areaGroupByProvince().then(res => {
this.isSkeleton=false;
this.zbData=res.data;
//定义一个变量 保存数据 因为sort方法排序会改变原数组 使用JSON方法深拷贝 将原数值暂存
// let dataArr = JSON.parse(JSON.stringify(res.data))
......@@ -321,300 +328,311 @@
this.rankList=data;
//将原数组数据赋值回去 保持数据不变
// this.zbData = JSON.parse(JSON.stringify(dataArr))
this.initChart2()
this.$nextTick(() => {
this.initChart2()
})
this.getData()
this.getCertGroupByMajorProvinceLevel()
})
},
initChart() {
let myChart = echarts.init(document.getElementById("gl-echarts"))
let option ={
tooltip: {
// show:false
},
xAxis: {
type: 'category',
boundaryGap: false,
data: this.jzglData.map(item => item.levelValue),
},
yAxis: {
type: 'value',
},
grid: {
top:40,
left:70,
right:40,
bottom:40,
},
series: [
{
data: this.jzglData.map(item => item.count),
type: 'line',
smooth: true,
emphasis: {
disabled: true,
focus: 'none'
},
//设置折线颜色和粗细
lineStyle: {
width: 1,
color: "#0081FF",
},
itemStyle:{
color: "#4E8EFF",
},
//设置面积区域为渐变效果
areaStyle: {
color: echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0.2,
color: "#DFEAFF",
},
{
offset: 1,
color: "#5895FF",
},
]),
},
}
]
}
myChart.clear(); //图表清除
myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
this.$nextTick(() => {
let myChart = echarts.init(document.getElementById("gl-echarts"))
let option ={
tooltip: {
// show:false
},
xAxis: {
type: 'category',
boundaryGap: false,
data: this.jzglData.map(item => item.levelValue),
},
yAxis: {
type: 'value',
},
grid: {
top:40,
left:70,
right:40,
bottom:40,
},
series: [
{
data: this.jzglData.map(item => item.count),
type: 'line',
smooth: true,
emphasis: {
disabled: true,
focus: 'none'
},
//设置折线颜色和粗细
lineStyle: {
width: 1,
color: "#0081FF",
},
itemStyle:{
color: "#4E8EFF",
},
//设置面积区域为渐变效果
areaStyle: {
color: echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0.2,
color: "#DFEAFF",
},
{
offset: 1,
color: "#5895FF",
},
]),
},
}
]
}
myChart.clear(); //图表清除
myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
})
},
initChart1() {
let myChart = echarts.init(document.getElementById("jzqy-echarts"))
let option ={
legend: {
x:'right',
padding:[0,30,0,0],
},
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'line',
label: {
backgroundColor: '#FFFFFF'
this.$nextTick(() => {
let myChart = echarts.init(document.getElementById("jzqy-echarts"))
let option ={
legend: {
x:'right',
padding:[0,30,0,0],
},
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'line',
label: {
backgroundColor: '#FFFFFF'
}
}
}
},
xAxis: {
type: 'category',
boundaryGap: false,
data: this.jzdqData.map(item => item.province),
},
yAxis: {
type: 'value',
},
grid: {
top:35,
left:60,
right:30,
bottom:20,
},
series: [
{
data: this.jzdqData.map(item => item.tjCount),
name:'特级',
type: 'line',
smooth: true,
emphasis: {
disabled: true,
focus: 'none'
},
//设置折线颜色和粗细
lineStyle: {
width: 2,
color: "#0081FF",
},
itemStyle:{
color: "#4E8EFF",
},
//设置面积区域为渐变效果
areaStyle: {
opacity:0.8,
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0.2,
color: "#DFEAFF",
},
{
offset: 1,
color: "#5895FF",
},
]),
},
},
{
data: this.jzdqData.map(item => item.oneCount),
name:'一级',
type: 'line',
smooth: true,
emphasis: {
disabled: true,
focus: 'none'
},
//设置折线颜色和粗细
lineStyle: {
width: 2,
color: "#FA6C6C",
},
itemStyle:{
color: "#FA6C6C",
},
//设置面积区域为渐变效果
areaStyle: {
opacity:0.8,
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0.1,
color: "#FDF8F5",
},
{
offset: 1,
color: "#FCD7C8",
},
]),
},
xAxis: {
type: 'category',
boundaryGap: false,
data: this.jzdqData.map(item => item.province),
},
{
data: this.jzdqData.map(item => item.twoCount),
name:'二级',
type: 'line',
smooth: true,
emphasis: {
disabled: true,
focus: 'none'
},
//设置折线颜色和粗细
lineStyle: {
width: 2,
color: "#8077F2",
},
itemStyle:{
color: "#8077F2",
},
//设置面积区域为渐变效果
areaStyle: {
opacity:0.8,
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0.1,
color: "#ECE8FF",
},
{
offset: 1,
color: "#BCC0FF",
},
]),
},
yAxis: {
type: 'value',
},
{
data: this.jzdqData.map(item => item.threeCount),
name:'三级',
type: 'line',
smooth: true,
emphasis: {
disabled: true,
focus: 'none'
grid: {
top:35,
left:60,
right:30,
bottom:20,
},
series: [
{
data: this.jzdqData.map(item => item.tjCount),
name:'特级',
type: 'line',
smooth: true,
emphasis: {
disabled: true,
focus: 'none'
},
//设置折线颜色和粗细
lineStyle: {
width: 2,
color: "#0081FF",
},
itemStyle:{
color: "#4E8EFF",
},
//设置面积区域为渐变效果
areaStyle: {
opacity:0.8,
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0.2,
color: "#DFEAFF",
},
{
offset: 1,
color: "#5895FF",
},
]),
},
},
//设置折线颜色和粗细
lineStyle: {
width: 2,
color: "#FA936C",
{
data: this.jzdqData.map(item => item.oneCount),
name:'一级',
type: 'line',
smooth: true,
emphasis: {
disabled: true,
focus: 'none'
},
//设置折线颜色和粗细
lineStyle: {
width: 2,
color: "#FA6C6C",
},
itemStyle:{
color: "#FA6C6C",
},
//设置面积区域为渐变效果
areaStyle: {
opacity:0.8,
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0.1,
color: "#FDF8F5",
},
{
offset: 1,
color: "#FCD7C8",
},
]),
},
},
itemStyle:{
color: "#FA936C",
{
data: this.jzdqData.map(item => item.twoCount),
name:'二级',
type: 'line',
smooth: true,
emphasis: {
disabled: true,
focus: 'none'
},
//设置折线颜色和粗细
lineStyle: {
width: 2,
color: "#8077F2",
},
itemStyle:{
color: "#8077F2",
},
//设置面积区域为渐变效果
areaStyle: {
opacity:0.8,
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0.1,
color: "#ECE8FF",
},
{
offset: 1,
color: "#BCC0FF",
},
]),
},
},
//设置面积区域为渐变效果
areaStyle: {
opacity:0.8,
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0.1,
color: "#FEFBFA",
},
{
offset: 1,
color: "#FCD7C8",
},
]),
{
data: this.jzdqData.map(item => item.threeCount),
name:'三级',
type: 'line',
smooth: true,
emphasis: {
disabled: true,
focus: 'none'
},
//设置折线颜色和粗细
lineStyle: {
width: 2,
color: "#FA936C",
},
itemStyle:{
color: "#FA936C",
},
//设置面积区域为渐变效果
areaStyle: {
opacity:0.8,
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0.1,
color: "#FEFBFA",
},
{
offset: 1,
color: "#FCD7C8",
},
]),
},
},
},
]
}
myChart.clear();
myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
]
}
myChart.clear();
myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
})
},
initChart2() {
let myChart = echarts.init(document.getElementById("ba-echarts"))
let option ={
tooltip: {
// show:false
},
legend:{},
xAxis: {
type: 'category',
boundaryGap: false,
data: this.zbData.map(item => item.province),
},
yAxis: {
type: 'value',
},
grid: {
top:20,
left:65,
right:50,
bottom:20,
},
series: [
{
data: this.zbData.map(item => item.count),
type: 'line',
smooth: true,
emphasis: {
disabled: true,
focus: 'none'
},
//设置折线颜色和粗细
lineStyle: {
width: 1,
color: "#FFAB44",
},
itemStyle:{
color: "#FFAB44",
normal: {
label : {show: true},
color:"#FFAB44",
lineStyle: {
color: "#FFAB44"
this.$nextTick(() => {
let myChart = echarts.init(document.getElementById("ba-echarts"))
let option ={
tooltip: {
// show:false
},
legend:{},
xAxis: {
type: 'category',
boundaryGap: false,
data: this.zbData.map(item => item.province),
},
yAxis: {
type: 'value',
},
grid: {
top:20,
left:65,
right:50,
bottom:20,
},
series: [
{
data: this.zbData.map(item => item.count),
type: 'line',
smooth: true,
emphasis: {
disabled: true,
focus: 'none'
},
//设置折线颜色和粗细
lineStyle: {
width: 1,
color: "#FFAB44",
},
itemStyle:{
color: "#FFAB44",
normal: {
label : {show: true},
color:"#FFAB44",
lineStyle: {
color: "#FFAB44"
}
}
}
},
//设置面积区域为渐变效果
areaStyle: {
color: echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0.2,
color: "#FFEDD0",
},
{
offset: 1,
color: "#FFC671",
},
]),
},
}
]
}
myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
},
//设置面积区域为渐变效果
areaStyle: {
color: echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0.2,
color: "#FFEDD0",
},
{
offset: 1,
color: "#FFC671",
},
]),
},
}
]
}
myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
})
},
handleClick(type,index){
if(type === 1){
......@@ -848,7 +866,7 @@
}
}
th{
font-size: 12px !important;
font-size: 13px !important;
font-weight: 400 !important;
}
.el-table__fixed-header-wrapper th{
......
......@@ -35,8 +35,8 @@
:data="tableData"
element-loading-text="Loading"
@sort-change="sortChange"
v-horizontal-scroll="'hover'"
border
max-height="640"
highlight-current-row
v-if="tableDataTotal > 0 && !isSkeleton"
:default-sort = "{prop: 'gdp', order: 'descending'}"
......@@ -44,9 +44,9 @@
<el-table-column label="序号" width="60" align="left" fixed>
<template slot-scope="scope">{{ pageIndex * pageSize - pageSize + scope.$index + 1 }}</template>
</el-table-column>
<el-table-column label="地区" min-width="150" align="left" fixed>
<el-table-column label="地区" width="150" align="left" fixed>
<template slot-scope="scope">
<router-link :to="{path:'/macro/economies',query:{id:scope.row.id,provinceId:scope.row.provinceId,province:scope.row.province}}" tag="a" class="a-link">{{ scope.row.province}}{{scope.row.city ? '-': ''}}{{ scope.row.city}}{{scope.row.area ? '-': ''}}{{ scope.row.area}}</router-link>
<span @click="clickTo(scope.row)" style="cursor: pointer;" class="a-link">{{ scope.row.province}}{{scope.row.city ? '-': ''}}{{ scope.row.city}}{{scope.row.area ? '-': ''}}{{ scope.row.area}}</span>
</template>
</el-table-column>
<el-table-column label="年度明细" prop="id" width="90" align="center" fixed>
......@@ -54,26 +54,26 @@
<img src="@/assets/images/icon_detailed.png" class="icon-detailed" @click="handleDetail(scope.row)">
</template>
</el-table-column>
<el-table-column label="GDP(亿元)" prop="gdp" :formatter="formatStatus" sortable="custom" min-width="115" 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="gdp" :formatter="formatStatus" sortable="custom" width="120" align="right"></el-table-column>
<el-table-column label="GDP增速(%)" prop="gdpGrowth" :formatter="formatStatus" sortable="custom" width="130" align="right"></el-table-column>
<el-table-column label="人均GDP(元)" prop="gdpPerCapita" :formatter="formatStatus" sortable="custom" width="130" 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" :formatter="formatStatus" width="180" align="right"></el-table-column>
<el-table-column label="一般公共预算收入增速(%)" prop="gbrGrowth" :formatter="formatStatus" sortable="custom" min-width="150" align="right"></el-table-column>
<el-table-column label="一般公共预算收入:税收收入(亿元)" prop="taxIncome" :formatter="formatStatus" sortable="custom" min-width="150" 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="政府性基金收入:土地出让收入(亿元)" prop="landTransferIncome" sortable="custom" :formatter="formatStatus" width="150" align="right"></el-table-column>
<el-table-column label="政府性基金支出(亿元)" prop="govFundExpenditure" :formatter="formatStatus" width="170" sortable="custom" align="right"></el-table-column>
<el-table-column label="国有资本经营收入(亿元)" prop="soecoi" width="160" :formatter="formatStatus" align="right"></el-table-column>
<el-table-column label="国有资本经营支出(亿元)" prop="soecoe" width="160" :formatter="formatStatus" align="right"></el-table-column>
<el-table-column label="固定资产投资(亿元)" prop="fixedInvestment" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="一般公共预算收入(亿元)" prop="gbr" sortable="custom" :formatter="formatStatus" width="205" align="right"></el-table-column>
<el-table-column label="一般公共预算收入增速(%)" prop="gbrGrowth" :formatter="formatStatus" sortable="custom" width="205" align="right"></el-table-column>
<el-table-column label="一般公共预算收入:税收收入(亿元)" prop="taxIncome" :formatter="formatStatus" sortable="custom" width="260" align="right"></el-table-column>
<el-table-column label="一般公共预算支出(亿元)" prop="gbe" :formatter="formatStatus" sortable="custom" width="195" align="right"></el-table-column>
<el-table-column label="政府性基金收入(亿元)" width="180" prop="govFundIncome" :formatter="formatStatus" sortable="custom" align="right"></el-table-column>
<el-table-column label="政府性基金收入:土地出让收入(亿元)" prop="landTransferIncome" sortable="custom" :formatter="formatStatus" width="275" align="right"></el-table-column>
<el-table-column label="政府性基金支出(亿元)" prop="govFundExpenditure" :formatter="formatStatus" width="180" sortable="custom" align="right"></el-table-column>
<el-table-column label="国有资本经营收入(亿元)" prop="soecoi" width="190" :formatter="formatStatus" align="right"></el-table-column>
<el-table-column label="国有资本经营支出(亿元)" prop="soecoe" width="190" :formatter="formatStatus" align="right"></el-table-column>
<el-table-column label="固定资产投资(亿元)" prop="fixedInvestment" :formatter="formatStatus" width="190" align="right"></el-table-column>
<el-table-column label="财政自给率(%)" prop="fiscalSelfSufficiencyRate" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="地方政府债务余额(亿元)" prop="govDebtBalance" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="地方政府债务余额(亿元)" prop="govDebtBalance" :formatter="formatStatus" width="190" align="right"></el-table-column>
<el-table-column label="一般债余额(亿元)" prop="generalDebtBalance" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="专项债余额(亿元)" prop="specialDebtBalance" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="地方政府债务限额(亿元)" prop="govDebtLimit" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="城投平台有息债务(亿元)" prop="uipInterestBearingDebt" :formatter="formatStatus" width="160" align="right" >
<el-table-column label="专项债余额(亿元)" prop="specialDebtBalance" :formatter="formatStatus" width="180" align="right"></el-table-column>
<el-table-column label="地方政府债务限额(亿元)" prop="govDebtLimit" :formatter="formatStatus" width="190" align="right"></el-table-column>
<el-table-column label="城投平台有息债务(亿元)" prop="uipInterestBearingDebt" :formatter="formatStatus" width="200" align="right" >
<template slot="header" slot-scope="scope">
<span>城投平台有息债务(亿元)
<el-tooltip popper-class="tips" effect="light" content="城投平台有息债务是该地区行政区划下所有的城投公司的短期债务与长期债务合计。其中,短期债务=短期借款+一年内到期的非流动负债+应付短期债券,长期债务=长期借款+应付长期债券。" placement="top">
......@@ -83,19 +83,19 @@
</template>
</el-table-column>
<el-table-column label="负债率(%)" prop="govDebtToGdpRate" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="负债率(宽口径)(%)" prop="govDebtToGdpRateWild" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="负债率(宽口径)(%)" prop="govDebtToGdpRateWild" :formatter="formatStatus" width="180" align="right"></el-table-column>
<el-table-column label="债务率(%)" prop="govDebtRate" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="债务率(宽口径)(%)" prop="govDebtRateWild" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="债务率(宽口径)(%)" prop="govDebtRateWild" :formatter="formatStatus" width="180" align="right"></el-table-column>
<!--<el-table-column label="金融机构存款余额(本外币)(亿元)" prop="cgfs" width="160" align="left" />-->
<!--<el-table-column label="金融机构贷款余额(本外币)(亿元)" prop="cgfs" width="160" align="left" />-->
<el-table-column label="第一产业增加值(亿元)" prop="piAddValue" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="第二产业增加值(亿元)" prop="siAddValue" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="第三产业增加值(亿元)" prop="tiAddValue" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="第一产业增加值(亿元)" prop="piAddValue" :formatter="formatStatus" width="180" align="right"></el-table-column>
<el-table-column label="第二产业增加值(亿元)" prop="siAddValue" :formatter="formatStatus" width="180" align="right"></el-table-column>
<el-table-column label="第三产业增加值(亿元)" prop="tiAddValue" :formatter="formatStatus" width="180" align="right"></el-table-column>
<el-table-column label="工业增加值(亿元)" prop="industryAddValue" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="工业总产值(亿元)" prop="industryTotalValue" :formatter="formatStatus" width="160" align="right"></el-table-column>
<el-table-column label="进出口总额(亿美元)" prop="eximTotalValue" :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="trscg" :formatter="formatStatus" width="200" align="right"></el-table-column>
<el-table-column label="城镇居民人均可支配收入(元)" prop="urbanPcdi" :formatter="formatStatus" width="210" align="right"></el-table-column>
</el-table>
<div class="empty" v-if="tableDataTotal === 0 && !isSkeleton">
<img class="img" src="@/assets/images/project/empty.png">
......@@ -324,6 +324,26 @@
message: '功能正在开发中',
type: 'warning'
});
},
clickTo(item){
let params={
// id:item.id,
province:item.area ? item.area : item.city ? item.city : item.province,
}
if(item.areaId){
params.provinceId=item.provinceId
params.cityId=item.cityId
params.areaId=item.areaId
}else if(item.cityId !=0){
params.provinceId=item.provinceId
params.cityId=item.cityId
}else {
params.provinceId=item.provinceId
}
this.$router.push({
path: '/macro/economies',
query:params
})
}
}
}
......@@ -345,7 +365,7 @@
width: 110px;
}
::v-deep .el-cascader{
width: 220px;
width: 200px;
.el-cascader__tags{
flex-wrap: inherit;
.el-tag{
......@@ -356,13 +376,14 @@
}
}
::v-deep .el-select-dropdown{
left: 0 !important;
.el-select-dropdown__item.hover{
color: #0081FF;
}
}
.content{
background: #ffffff;
padding: 16px;
padding: 16px 16px 0;
margin-top: 12px;
/*height: calc(100vh - 300px);*/
.table-item{
......@@ -405,7 +426,6 @@
overflow-y: clip;
}
th{
font-size: 12px !important;
font-weight: 400 !important;
}
.el-table__fixed-header-wrapper th{
......
......@@ -11,7 +11,7 @@
</el-select>
</div>
</div>
<div class="content_box" v-if="gyflState">
<div class="content_box" v-if="gyfsList.length > 0 && !isSkeleton">
<div class="box-left">
<div id="echarts1" style="height: 280px"></div>
</div>
......@@ -36,12 +36,12 @@
</el-table>
</div>
</div>
<div class="empty" v-if="!gyflState">
<div class="empty" v-if="gyfsList.length === 0 && !isSkeleton">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,暂无数据展示</div>
</div>
</div>
<div v-if="!isSkeleton" class="td_content">
<div v-if="!tdytState" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国土地交易项目土地用途</span>
......@@ -50,7 +50,7 @@
</el-select>
</div>
</div>
<div class="content_box" v-if="tdytState">
<div class="content_box" v-if="tdytList.length > 0 && !tdytState">
<div class="box-left">
<div id="echarts2" style="height: 280px"></div>
</div>
......@@ -75,12 +75,12 @@
</el-table>
</div>
</div>
<div class="empty" v-if="!tdytState">
<div class="empty" v-if="tdytList.length === 0 && !tdytState">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,暂无数据展示</div>
</div>
</div>
<div v-if="!isSkeleton" class="td_content">
<div v-if="!topState" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国土地交易项目地区Top10</span>
......@@ -92,7 +92,7 @@
</el-select>
</div>
</div>
<div class="content_box" v-if="topList.length > 0 && !isSkeleton">
<div class="content_box" v-if="topList.length > 0 && !topState">
<div class="box-left" style="width: 60%;">
<div id="echarts3" style="height: 300px"></div>
</div>
......@@ -117,18 +117,18 @@
</el-table>
</div>
</div>
<div class="empty" v-if="topList.length === 0 && !isSkeleton">
<div class="empty" v-if="topList.length === 0 && !topState">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,暂无数据展示</div>
</div>
</div>
<div v-if="!isSkeleton" class="td_content">
<div v-if="!nftjState" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国土地交易项目年份统计</span>
</div>
</div>
<div class="content_box">
<div class="content_box" v-if="nftjList.length > 0 && !nftjState">
<div class="box-left" style="width: 60%;">
<div id="echarts4" style="height: 300px"></div>
</div>
......@@ -187,6 +187,7 @@ export default {
gyflState:true,
tdytState:true,
topState:true,
nftjState:true,
// typeName:['住宅用地','工业用地','城镇住宅用地','其他商服用地','公共设施用地','公路用地','城镇村道路用地','公园与绿地',
// '工矿仓储用地','零售商业用地','科研用地','街巷用地','机关团体用地','商服用地','商务金融用地']
}
......@@ -194,15 +195,16 @@ export default {
created() {
this.dataRegion()
this.yearsData()
setTimeout(() => {
},
mounted() {
this.$nextTick(()=>{
this.getCountLandMarketByType()
this.getCountLandMarketByTypeTd()
this.getCountLandMarketByProvince()
this.getCountLandMarketByYear()
this.isSkeleton=false;
}, 1500);
},
mounted() {
})
},
beforeDestroy(){
......@@ -211,7 +213,8 @@ export default {
getCountLandMarketByType(){
// this.isSkeleton = true
countLandMarketByType({type:'供应方式',yearStr:this.years.join(",")}).then(res => {
// this.isSkeleton = false
this.isSkeleton = false
this.gyflState = false
this.gyfsList=res.data.provinceDate;
var list=[];
for(var i=0;i<res.data.provinceDate.length;i++){
......@@ -222,12 +225,9 @@ export default {
list.push(obj)
}
if(list.length > 0){
this.gyflState=true
this.$nextTick(() => {
this.initChart1(list)
})
}else {
this.gyflState=false;
}
})
},
......@@ -235,9 +235,9 @@ export default {
// this.isSkeleton = true
countLandMarketByType({type:'土地用途',yearStr:this.years1.join(",")}).then(res => {
// this.isSkeleton = false
this.tdytState=false;
this.tdytList=res.data.provinceDate;
if(res.data.provinceDate.length > 0){
this.tdytState=true
var list=[];
for(var i=0;i<10;i++){
var obj={};
......@@ -251,10 +251,7 @@ export default {
this.initChart2(list)
})
}
}else {
this.tdytState=false;
}
})
},
getCountLandMarketByProvince(){
......@@ -264,9 +261,8 @@ export default {
if(this.address.length > 0){
params.provinceId=this.address.join(",")
}
// this.isSkeleton = true
countLandMarketByProvince(params).then(res => {
// this.isSkeleton = false
this.topState = false
this.topList=res.data.provinceDate;
var list=[];
if(res.data.provinceDate){
......@@ -288,10 +284,10 @@ export default {
},
getCountLandMarketByYear(){
countLandMarketByYear().then(res => {
this.nftjState=false;
this.nftjList=res.data.yearDate;
var list=[];
if(res.data.yearDate){
this.topState=true
for(var i=0;i<res.data.yearDate.length;i++){
var obj={};
obj.type=res.data.yearDate[i].type;
......@@ -300,11 +296,11 @@ export default {
obj.typeList=res.data.yearDate[i].typeList
list.push(obj)
}
this.$nextTick(() => {
this.initChart4(list)
})
}else {
this.topState=false;
if(list.length > 0){
this.$nextTick(() => {
this.initChart4(list)
})
}
}
})
},
......
......@@ -11,7 +11,7 @@
</el-select>
</div>
</div>
<div class="content_box" v-if="gyflState">
<div class="content_box" v-if="xmtjList.length > 0 && !isSkeleton">
<div class="box-left">
<div id="echarts1" style="height: 280px"></div>
</div>
......@@ -38,12 +38,12 @@
</el-table>
</div>
</div>
<div class="empty" v-if="!gyflState">
<div class="empty" v-if="xmtjList.length === 0 && !isSkeleton">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,暂无数据展示</div>
</div>
</div>
<div v-if="!isSkeleton" class="td_content">
<div v-if="!zbtjState" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国各地区中标统计TOP10</span>
......@@ -52,7 +52,7 @@
</el-select>
</div>
</div>
<div class="content_box" v-if="tdytState">
<div class="content_box" v-if="topList.length > 0 && !zbtjState">
<div class="box-left">
<div id="echarts2" style="height: 280px"></div>
</div>
......@@ -79,12 +79,12 @@
</el-table>
</div>
</div>
<div class="empty" v-if="!tdytState">
<div class="empty" v-if="topList.length === 0 && !zbtjState">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,暂无数据展示</div>
</div>
</div>
<div v-if="!isSkeleton" class="td_content">
<div v-if="!jefxState" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国中标金额分析</span>
......@@ -93,7 +93,7 @@
</el-select>
</div>
</div>
<div class="content_box" v-if="tdytState">
<div class="content_box" v-if="zbjeList.length > 0 && !jefxState">
<div class="box-left">
<div id="echarts3" style="height: 280px"></div>
</div>
......@@ -118,18 +118,18 @@
</el-table>
</div>
</div>
<div class="empty" v-if="!tdytState">
<div class="empty" v-if="zbjeList.length === 0 && !jefxState">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,暂无数据展示</div>
</div>
</div>
<div v-if="!isSkeleton" class="td_content">
<div v-if="!qsfxState" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国中标趋势分析</span>
</div>
</div>
<div class="content_box">
<div class="content_box" v-if="zbqsList.length > 0 && !qsfxState">
<div class="box-left">
<div id="echarts4" style="height: 300px"></div>
</div>
......@@ -154,8 +154,12 @@
</el-table>
</div>
</div>
<div class="empty" v-if="zbqsList.length === 0 && !qsfxState">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,暂无数据展示</div>
</div>
</div>
<div v-if="!isSkeleton" class="td_content">
<div v-if="!xflState" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国中标下浮率分析</span>
......@@ -164,7 +168,7 @@
</el-select>
</div>
</div>
<div class="content_box" v-if="tdytState">
<div class="content_box" v-if="xflList.length > 0 && !xflState">
<div class="box-left">
<div id="echarts5" style="height: 280px"></div>
</div>
......@@ -189,17 +193,17 @@
</el-table>
</div>
</div>
<div class="empty" v-if="!tdytState">
<div class="empty" v-if="xflList.length === 0 && !xflState">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,暂无数据展示</div>
</div>
</div>
<div v-if="!isSkeleton" class="td_content">
<div v-if="!xmlxState" class="td_content">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">全国中标业绩项目类型下浮率</span>
<el-select @change="handleYears(6)" style="margin-right: 8px" v-model="address" collapse-tags filterable class="form-content-width" placeholder="地区筛选" :popper-append-to-body='false' size="small">
<el-select @change="handleYears(6)" style="margin-right: 8px" v-model="address" clearable collapse-tags filterable class="form-content-width" placeholder="地区筛选" :popper-append-to-body='false' size="small">
<el-option v-for="(item, index) in addressList" :key="index" :label="item.label" :value="item.id" />
</el-select>
<el-select v-model="years4" @change="handleYears(6)" collapse-tags filterable class="form-content-width" placeholder="请选择" :popper-append-to-body='false' size="small">
......@@ -207,7 +211,7 @@
</el-select>
</div>
</div>
<div class="content_box" v-if="topList.length > 0 && !isSkeleton">
<div class="content_box" v-if="xmxflList.length > 0 && !isSkeleton">
<div class="box-left">
<div id="echarts6" style="height: 300px"></div>
</div>
......@@ -233,7 +237,7 @@
</el-table>
</div>
</div>
<div class="empty" v-if="topList.length === 0 && !isSkeleton">
<div class="empty" v-if="xmxflList.length === 0 && !xmlxState">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,暂无数据展示</div>
</div>
......@@ -269,24 +273,24 @@
xflList :[],
xmxflList :[],
isSkeleton:true,
gyflState:true,
tdytState:true,
topState:true,
zbtjState:true,
jefxState:true,
qsfxState:true,
xflState:true,
xmlxState:true,
}
},
created() {
this.dataRegion()
this.yearsData()
this.getCountBidByType()
this.$nextTick(() => {
})
this.getCountBidGroupByProvince()
this.getRangeBidMoney()
this.getRangeBidFiveYears()
this.getLowerRateByYear()
this.getLowerRangeTenderType()
setTimeout(() => {
this.getCountBidGroupByProvince()
this.getRangeBidMoney()
this.getRangeBidFiveYears()
this.getLowerRateByYear()
this.getLowerRangeTenderType()
}, 1000);
},
mounted() {
......@@ -322,6 +326,7 @@
yearStr:this.years1.join(",")
}
countBidGroupByProvince(params).then(res => {
this.zbtjState=false;
this.topList=res.data;
if(res.data){
this.$nextTick(() => {
......@@ -335,6 +340,7 @@
yearStr:this.years2.join(",")
}
rangeBidMoney(params).then(res => {
this.jefxState=false;
this.zbjeList=res.data;
var list=[];
for(var i=0;i<res.data.length;i++){
......@@ -353,6 +359,7 @@
},
getRangeBidFiveYears(){
rangeBidFiveYears().then(res => {
this.qsfxState=false;
this.zbqsList=res.data;
if(res.data){
this.$nextTick(() => {
......@@ -366,6 +373,7 @@
yearStr:this.years3
}
lowerRateByYear(params).then(res => {
this.xflState=false;
for (var i=0; i<res.data.length; i++){
res.data[i].rate=res.data[i].rate.toFixed(2)
}
......@@ -385,7 +393,7 @@
params.provinceId=this.address
}
lowerRangeTenderType(params).then(res => {
this.xmlxState=false;
for (var i=0; i<res.data.length; i++){
for (let j=0; j<res.data[i].typeList.length; j++){
if(res.data[i].typeList[j].tenderType === '施工'){
......@@ -526,7 +534,6 @@
},
initChart2(data) {
this.$nextTick(() => {
// console.log(typeList)
let myChart = echarts.init(document.getElementById("echarts2"))
let seriesData=[]
let color=['#FCD68A', '#67B3FD', '#FFB8AD', '#FFD7AD', '#A9F1E5', '#D0FAB7', '#ADC0FF', '#BEECFF', '#81D5BC', '#FFE48A'];
......
......@@ -6,6 +6,7 @@
<el-tab-pane label="全国商机项目分析" name="second"></el-tab-pane>
<el-tab-pane label="全国中标市场分析" name="third"></el-tab-pane>
<el-tab-pane label="全国建筑企业分析" name="fourth"></el-tab-pane>
<el-tab-pane label="BI统计分析" name="five"></el-tab-pane>
</el-tabs>
</div>
......@@ -13,6 +14,7 @@
<Sjxmfx v-if="activeName === 'second'"></Sjxmfx>
<Zhongbiao v-if="activeName === 'third'"></Zhongbiao>
<Jzqyfx v-if="activeName === 'fourth'"></Jzqyfx>
<BI v-if="activeName === 'five'"></BI>
</div>
</template>
......@@ -21,10 +23,11 @@
import Sjxmfx from './component/sjxmfx'
import Jzqyfx from './component/jzqyfx'
import Zhongbiao from './component/zhongbiao'
import BI from './component/BI'
export default {
name: 'NationalEconomies',
components: {
Economic,Sjxmfx,Jzqyfx,Zhongbiao
Economic,Sjxmfx,Jzqyfx,Zhongbiao,BI
},
data() {
return {
......
<template>
<div class="app-container">
区域资讯
</div>
</template>
<script>
export default {
name: 'Rmation',
data() {
return {
}
},
created() {
},
methods: {
}
}
</script>
<style lang="scss" scoped>
</style>
......@@ -92,8 +92,8 @@
</div>
</div>
<el-input class="search-input" placeholder="输入企业名称查询" v-model="queryParams.keyword" clearable @clear="handleKeyword()">
<template slot="prepend"><i class="el-icon-search"></i></template>
<el-button slot="append" @click="handleKeyword">搜索</el-button>
<i slot="prefix" class="el-icon-search"></i>
<el-button slot="append" @click="handleKeyword()">搜索</el-button>
</el-input>
</div>
<div class="list-box">
......@@ -152,7 +152,7 @@
element-loading-text="Loading"
@sort-change="sortChange"
border
max-height="640"
v-horizontal-scroll="'hover'"
fit
highlight-current-row
>
......@@ -202,34 +202,34 @@
<el-table-column prop="restrictedAssets" label="受限资产(亿元)" :formatter="formatStatus" sortable="custom" width="150" align="right"/>
<el-table-column prop="accountsReceivable" label="应收账款(亿元)" :formatter="formatStatus" sortable="custom" width="150" align="right"/>
<el-table-column prop="otherReceivable" label="其他应收款(亿元)" :formatter="formatStatus" sortable="custom" width="160" align="right"/>
<el-table-column prop="econData001" label="公益性&准公益性主营占比(%)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="receivableFromGovRatio" label="应收类款项来自政府占比(%)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="econData001" label="公益性&准公益性主营占比(%)" :formatter="formatStatus" width="220" align="right"/>
<el-table-column prop="receivableFromGovRatio" label="应收类款项来自政府占比(%)" :formatter="formatStatus" width="220" align="right"/>
<el-table-column prop="govSubsidy" label="政府补助(亿元)" :formatter="formatStatus" width="130" align="right" />
<el-table-column prop="specialPayable" label="专项应付款(亿元)" :formatter="formatStatus" width="140" align="right"/>
<el-table-column prop="specialPayable" label="专项应付款(亿元)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="operatingIncome" label="营业收入(亿元)" :formatter="formatStatus" width="130" align="right"/>
<el-table-column prop="belongNetProfit" label="归母净利润(亿元)" :formatter="formatStatus" width="140" align="right"/>
<el-table-column prop="roe" label="净资产收益率(%)" :formatter="formatStatus" width="140" align="right"/>
<el-table-column prop="netOperatingCashFlow" label="经营现金流量净额(亿元)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="netFinancingCashFlow" label="筹资现金流量净额(亿元)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="netInvestmentCashFlow" label="投资现金流量净额(亿元)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="belongNetProfit" label="归母净利润(亿元)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="roe" label="净资产收益率(%)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="netOperatingCashFlow" label="经营现金流量净额(亿元)" :formatter="formatStatus" width="190" align="right"/>
<el-table-column prop="netFinancingCashFlow" label="筹资现金流量净额(亿元)" :formatter="formatStatus" width="190" align="right"/>
<el-table-column prop="netInvestmentCashFlow" label="投资现金流量净额(亿元)" :formatter="formatStatus" width="190" align="right"/>
<el-table-column prop="totalLiabilities" label="总负债(亿元)" :formatter="formatStatus" width="120" align="right"/>
<el-table-column prop="uipInterestBearingDebt" label="有息债务(亿元)" :formatter="formatStatus" width="140" align="right"/>
<el-table-column prop="econData002" label="有息债务/总负债(%)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="tdr" label="资产负债率(%)" :formatter="formatStatus" width="140" align="right"/>
<el-table-column prop="ofcb" label="综合融资成本(%)" :formatter="formatStatus" width="150" align="right"/>
<el-table-column prop="cashRatio" label="现金比率" :formatter="formatStatus" width="110" align="right"/>
<el-table-column prop="cashFlowRatio" label="现金流量比率" :formatter="formatStatus" width="120" align="right"/>
<el-table-column prop="cashDebtRatio" label="现金到期债务比" :formatter="formatStatus" width="120" align="right"/>
<el-table-column prop="cashRatio" label="现金比率(%)" :formatter="formatStatus" width="140" align="right"/>
<el-table-column prop="cashFlowRatio" label="现金流量比率(%)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="cashDebtRatio" label="现金到期债务比(%)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="creditBalance" label="授信余额(亿元)" :formatter="formatStatus" width="130" align="right"/>
<el-table-column prop="econData003" label="授信余额/全部债务(%)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="econData003" label="授信余额/全部债务(%)" :formatter="formatStatus" width="180" align="right"/>
<el-table-column prop="ebitdaIcr" label="EBITDA保障倍数" :formatter="formatStatus" width="150" align="right"/>
<el-table-column prop="ppnBalanceProp" label="私募债余额占比(%)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="econData004" label="一年内到期债权占比(%)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="econData005" label="债券余额/有息债务(%)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="econData004" label="一年内到期债权占比(%)" :formatter="formatStatus" width="180" align="right"/>
<el-table-column prop="econData005" label="债券余额/有息债务(%)" :formatter="formatStatus" width="180" align="right"/>
<el-table-column prop="loan" label="借款余额(亿元)" :formatter="formatStatus" width="140" align="right"/>
<el-table-column prop="econData006" label="借款/有息债务(%)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="nonStandardBalance" label="非标余额(亿元)" :formatter="formatStatus" width="140" align="right"/>
<el-table-column prop="nonStandardRatio" label="非标余额/有息债务(%)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="nonStandardRatio" label="非标余额/有息债务(%)" :formatter="formatStatus" width="180" align="right"/>
<el-table-column prop="guaranteeAmount" label="对外担保金额(亿元)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="guaranteeRatio" label="对外担保比例(%)" :formatter="formatStatus" width="160" align="right"/>
<el-table-column prop="developmentZone" label="所属开发区" :formatter="formatStatus" width="160" />
......@@ -430,6 +430,7 @@ export default {
methods: {
scrolling() {
let el = document.getElementsByClassName("el-table__fixed-header-wrapper")[0]
// let scrollTop =window.pageYOffset ||document.documentElement.scrollTop ||document.body.scrollTop;
// if (scrollTop>368){
// let top = scrollTop-368
......@@ -830,7 +831,6 @@ export default {
.content{
background: #ffffff;
padding: 16px;
margin-bottom: 16px;
border-radius: 4px;
.search{
margin-top: 22px;
......@@ -859,8 +859,8 @@ export default {
left: 0;
z-index: 999;
.item{
margin-bottom: 5px;
/*display: flex;*/
/*margin-bottom: 5px;*/
display: flex;
/*align-items: center;*/
font-size: 14px;
.wrap_label{
......@@ -868,12 +868,16 @@ export default {
margin-right: 12px;
line-height: 30px;
float: left;
width: 85px;
text-align: right;
}
.item_ckquery{
position: relative;
width: 700px;
span{
color: #232323;
padding: 5px 12px;
padding: 2px 10px;
margin-bottom: 4px;
display: inline-block;
cursor: pointer;
margin-right: 8px;
......@@ -906,39 +910,44 @@ export default {
::v-deep .search-input{
/*::v-deep .el-input{*/
width: 235px;
height: 32px;
.el-input__inner:focus{
border-color: #e0e0e0;
}
.el-input-group__prepend:first-child{
padding: 0;
background-color:#ffffff;
border-right: 0;
padding-left: 8px;
i{
color:#0081FF;
}
}
height: 30px;
border: 1px solid #e0e0e0;
.el-input__inner{
border-left: 0;
height: 32px;
line-height: 32px;
height: 30px;
line-height: 30px;
font-size: 12px;
padding-left: 8px;
border-right: 0;
border: 0;
}
.el-input__suffix{
margin-top: -1px;
}
.el-icon-search{
font-size: 14px;
line-height: 32px;
color:#0081FF;
margin-left: 6px;
margin-right: 4px;
}
.el-input__inner:focus{
/*border-color: #0081FF;*/
}
.el-input__inner:focus ~.el-input-group__append{
/*border: 1px solid #0081FF;*/
color: #ffffff;
background: #0081FF;
}
.el-input-group__append:last-child{
width: 60px;
padding: 0;
text-align: center;
background: #F5F5F5;
color:#0081FF;
border-left: 0;
border-radius: 0;
border-right: 0;
border-radius:0 2px 2px 0;
border: 0;
&:hover{
color: #ffffff;
background: #0081FF;
}
}
/*}*/
}
......@@ -984,7 +993,6 @@ export default {
overflow-y: clip;
}
th{
font-size: 12px !important;
font-weight: 400 !important;
}
.el-table__fixed-header-wrapper th{
......
......@@ -35,9 +35,9 @@ module.exports = {
// detail: https://cli.vuejs.org/config/#devserver-proxy
[process.env.VUE_APP_BASE_API]: {
// target: `http://47.104.91.229:9099/prod-api`,
target: `http://192.168.0.165:9098`,//施
// target: `http://192.168.0.165:9098`,//施
// target: `http://192.168.60.6:9098`,//谭
// target: `http://139.9.157.49:9099`,//测试
target: `http://139.9.157.49:9099/prod-api`,//测试
changeOrigin: true,
pathRewrite: {
['^' + process.env.VUE_APP_BASE_API]: ''
......
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