Commit bb6eab16 authored by Administrator's avatar Administrator

Merge remote-tracking branch 'origin/dev20230707' into dev20230707

parents dfbc9892 ae974026
......@@ -41,6 +41,7 @@
"clipboard": "2.0.8",
"core-js": "3.25.3",
"echarts": "^5.0.0",
"el-table-horizontal-scroll": "^1.2.5",
"element-resize-detector": "^1.2.4",
"element-ui": "2.15.12",
"file-saver": "2.0.5",
......
......@@ -88,7 +88,7 @@ export function getSelect(data) {
data: data
})
}
// 数据来源链接
// 中标公示来源链接
export function bidWinMergeDetail(data) {
return request({
url: '/enterpriseBussiness/bidWinMergeDetail',
......@@ -96,3 +96,19 @@ export function bidWinMergeDetail(data) {
data: data
})
}
// 四库业绩来源链接
export function skyProjectDetail(data) {
return request({
url: '/enterpriseBussiness/skyProjectDetail',
method: 'post',
data: data
})
}
// 荣誉奖项来源链接
export function awardDetail(data) {
return request({
url: '/enterpriseBussiness/awardDetail',
method: 'post',
data: data
})
}
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -407,6 +407,18 @@ ul, li {
background: #566380;
}
}
.el-scrollbar{
height: 16px;
.el-scrollbar__bar.is-horizontal{
height: 8px;
}
.el-scrollbar__thumb{
background: rgba(98,110,126,0.4);
&:hover{
background: #566380;
}
}
}
}
}
......
......@@ -13,7 +13,7 @@ import router from './router'
import directive from './directive' // directive
import plugins from './plugins' // plugins
import { download } from '@/utils/request'
import horizontalScroll from 'el-table-horizontal-scroll'
import './assets/icons' // icon
import './permission' // permission control
......@@ -59,6 +59,7 @@ Vue.component('FileUpload', FileUpload)
Vue.component('ImageUpload', ImageUpload)
Vue.component('ImagePreview', ImagePreview)
Vue.use(horizontalScroll)
Vue.use(directive)
Vue.use(plugins)
Vue.use(VueMeta)
......
......@@ -81,7 +81,7 @@
</div>
<div class="content content_wap2">
<div class="head_title">客户资信评级</div>
<el-row>
<el-row v-if="creditLevel.length > 0">
<el-col :span="14">
<div id="zxpj-echarts" style="height: 250px;"></div>
</el-col>
......@@ -100,6 +100,10 @@
</div>
</el-col>
</el-row>
<div class="empty" v-if="creditLevel.length === 0">
<img class="img" src="@/assets/images/project/empty.png">
<div class="p1">抱歉,没找到相关数据</div>
</div>
</div>
<div class="content_wap3">
<div class="flex-box query-box">
......@@ -216,8 +220,8 @@
defaultValue:new Date(),
pickerValue: [],
params:{
startTime:this.formatDate(new Date()),
endTime:this.formatDate(new Date())
startTime:'',
endTime:'',
},
data:{
open:false
......@@ -264,12 +268,16 @@
}
})
creditLevel().then(res=>{
let data=[]
for(let i=0; i<res.data.length; i++){
if(res.data[i].creditLevel){
this.creditLevel.push(res.data[i])
data.push(res.data[i])
}
}
this.initChart1(this.creditLevel)
this.creditLevel=data;
if(this.creditLevel.length > 0){
this.initChart1(this.creditLevel)
}
})
},
getFollowList(){
......@@ -829,26 +837,24 @@
}
}
.content_wap1{
.empty{
margin: 0 auto;
height: 300px;
text-align: center;
.img{
width: 108px;
height: 108px;
margin-bottom: 24px;
margin-top: 50px;
}
.p1{
color: #333333;
font-size: 16px;
}
.p2{
color: #999999;
font-size: 14px;
margin-top: 8px;
}
.empty{
margin: 0 auto;
height: 300px;
text-align: center;
.img{
width: 108px;
height: 108px;
margin-bottom: 24px;
margin-top: 50px;
}
.p1{
color: #333333;
font-size: 16px;
}
.p2{
color: #999999;
font-size: 14px;
margin-top: 8px;
}
}
.content_wap3{
......
<template>
<div class="headForm">
<div class="flex-box query-box">
<div class="flex-box query-params">
<div class="flex-box query-params" :class="flag?'box1':''">
<div class="flex-box headForm-text">
<!-- <img v-if="title" src="@/assets/images/detail/ico_title.png" /> -->
<!-- <span class="drawer-title" v-if="title">{{ title }}</span> -->
<template v-if="flag">
<img v-if="title" src="@/assets/images/detail/ico_title.png" />
<span class="drawer-title" v-if="title">{{ title }}</span>
</template>
<template v-if="slots">
<slot name="slot"></slot>
</template>
<!-- <div v-else>
<div v-if="flag">
<span class="ability-total" v-if="isTotal">{{ total }}条数据</span>
<span class="ability-total" v-if="amountTotal">,共计合作总金额:<i>{{ amountTotal }}</i>万元</span>
</div> -->
</div>
</div>
<div class="headForm-from">
<div class="from-item" :key="i" v-for="(form, i) in formData">
......@@ -96,6 +98,10 @@ export default {
type: String,
default: ''
},
flag: {
type: Boolean,
default: false
},
queryParams: {
type: Object,
default: {}
......@@ -143,6 +149,11 @@ export default {
width: 100%;
padding: 8px 17px 8px 0;
}
.box1{
padding: 8px 17px 8px 13px;
justify-content: space-between;
border-bottom: 1px solid #E1E1E1;
}
::v-deep .el-input__inner{
border: 0;
height: 32px;
......@@ -171,6 +182,12 @@ export default {
line-height: 32px;
}
.headForm-text{
.drawer-title{
font-size: 16px;
color: #232323;
font-weight: bold;
margin-right: 4px;
}
img{
width: 17px;
height: 17px;
......
......@@ -14,7 +14,7 @@
>
<template slot="slot">
<div class="flex-box query-add">
<el-button type="primary" icon="el-icon-plus" @click="drawer = true">添加商务信息</el-button>
<el-button type="primary" icon="el-icon-plus" @click="drawer = true">添加合作情况</el-button>
</div>
</template>
</head-form>
......
......@@ -82,7 +82,6 @@ export default {
},
methods: {
async handleQuery(params) {
this.isSkeleton = true;
this.tableLoading = true
let param = params?params:this.queryParams
let res = await oftenAgencyPage(param)
......
......@@ -71,7 +71,6 @@ export default {
},
methods: {
async handleQuery(params) {
this.isSkeleton = true;
this.tableLoading = true
let param = params?params:this.queryParams
let res = await tenderPage(param)
......
......@@ -8,13 +8,16 @@
@closed="cancel">
<head-detail-form
:title="title"
:flag="true"
:form-data="formData"
:query-params="queryParams"
:total="tableDataTotal"
:amountTotal="amountTotal"
@handle-search="handleSearch"
/>
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton>
<tables
v-else
:indexFixed="true"
:tableLoading="tableLoading"
:tableData="tableData"
......@@ -27,7 +30,7 @@
<template slot="dealTitle" slot-scope="scope">
<div class="flex-box">
<img class="tip-img" src="@/assets/images/detail/ico_pdf.png" v-if="scope.row.fileUrlL" @click="handlePic(scope.row.fileUrlL)"/>
<router-link :to="`/radar/Notice/details/${scope.row.bid}`" tag="a" class="a-link" v-if="scope.row.bid&&scope.row.dealTitle" v-html="scope.row.dealTitle"></router-link>
<div class="a-link" @click="linkTo(scope.row.bid)" v-if="scope.row.bid&&scope.row.dealTitle" v-html="scope.row.dealTitle" style="cursor: pointer"></div>
<span v-else v-html="scope.row.dealTitle || '--'"></span>
</div>
</template>
......@@ -43,18 +46,19 @@
import mixin from '../../mixins/mixin'
import {bidCooperatePage} from '@/api/detail/party-a/dealings'
import HeadDetailForm from "../../component/HeadDetailForm"
import skeleton from '@/views/project/projectList/component/skeleton'
export default {
props: [
'data',
'title'
],
components: {
HeadDetailForm
HeadDetailForm,skeleton
},
mixins: [mixin],
data() {
return {
isSkeleton:true,
drawer: false,
queryParams: {
tendereeId: this.data.tendereeId,
......@@ -84,6 +88,10 @@ export default {
this.handleQuery()
},
methods: {
linkTo(id){
this.drawer = false
this.$router.push(`/radar/Notice/details/${id}`)
},
async handleQuery(params) {
this.tableLoading = true
let param = params?params:this.queryParams
......@@ -92,6 +100,7 @@ export default {
if(res.code==200){
this.tableData = res.rows
}
this.isSkeleton = false;
this.tableDataTotal = res.total
this.amountTotal = res.totalAmount
},
......
......@@ -22,13 +22,17 @@
:tableData="tableData"
:forData="forData"
:tableDataTotal="tableDataTotal"
@sort-change="sortChange"
:queryParams="queryParams"
@handle-current-change="handleCurrentChange"
>
<template slot="projectName" slot-scope="scope">
<span v-html="scope.row.projectName"></span>
</template>
<template slot="sourceType" slot-scope="scope">
<div class="flex-box">
<div class="a-link" @click="linkTo(scope)" v-if="scope.row.sourceId&&scope.row.sourceType=='中标业绩'" v-html="scope.row.sourceType" style="cursor: pointer"></div>
<span v-else-if="scope.row.sourceId" @click="linkTo1(scope)" class="a-link" style="cursor: pointer" v-html="scope.row.sourceType"></span>
<span v-else-if="scope.row.sourceId&&(scope.row.sourceType=='中标公示'||scope.row.sourceType=='四库业绩'||scope.row.sourceType=='荣誉奖项')" @click="linkTo1(scope)" class="a-link" style="cursor: pointer" v-html="scope.row.sourceType"></span>
<span v-else v-html="scope.row.sourceType || '--'"></span>
</div>
</template>
......@@ -39,7 +43,7 @@
<script>
import mixin from '../../mixins/mixin'
import {clientProjectPage,getSelect,bidWinMergeDetail} from '@/api/detail/party-a/dealings'
import {clientProjectPage,getSelect,bidWinMergeDetail,skyProjectDetail,awardDetail} from '@/api/detail/party-a/dealings'
import HeadDetailForm from "../../component/HeadDetailForm"
import skeleton from '@/views/project/projectList/component/skeleton'
......@@ -60,7 +64,7 @@ export default {
queryParams: {
cid: this.companyId,
companyId: this.data.companyId,
companyName: this.data.companyName,
companyName: this.data.companyName.replace(/<font color='red'>/g,'').replace(/<\/font>/g,''),
pageNum: 1,
pageSize: 20
},
......@@ -71,9 +75,9 @@ export default {
{ type: 3, fieldName: 'keys', value: '', placeholder: '输入项目/工程名称查询', options: []},
],
forData: [
{label: '项目名称', prop: 'projectName', fixed: true},
{label: '公布时间', prop: 'time', width: '120',sortable:true},
{label: '本次合同金额(万元)', prop: 'amount', width: '180',sortable:true},
{label: '项目名称', prop: 'projectName', fixed: true,slot: true},
{label: '公布时间', prop: 'time', width: '120',sortable:'custom',descending: '3', ascending: '4'},
{label: '本次合同金额(万元)', prop: 'amount', width: '180',sortable:'custom',descending: '1', ascending: '2'},
{label: '项目类型', prop: 'projectTtype', width: '130'},
{label: '数据来源', prop: 'sourceType', width: '90', slot: true}
],
......@@ -132,11 +136,35 @@ export default {
this.$router.push(`/biddetail/${scope.row.sourceId}`)
},
linkTo1(scope){
bidWinMergeDetail({sourceId:scope.row.sourceId}).then(res=>{
if(res.data&&res.data.sourceUrl){
window.open(res.data.sourceUrl, "_blank")
}
})
let url = ""
switch (scope.row.sourceType) {
case '中标公示':
bidWinMergeDetail({sourceId:scope.row.sourceId}).then(res=>{
if(res.data&&res.data.sourceUrl){
url = res.data.sourceUrl
window.open(url, "_blank")
}
})
break;
case '荣誉奖项':
awardDetail({sourceId:scope.row.sourceId}).then(res=>{
if(res.data&&res.data.sourceUrl){
url = res.data.sourceUrl
window.open(url, "_blank")
}
})
break;
case '四库业绩':
skyProjectDetail({sourceId:scope.row.sourceId}).then(res=>{
if(res.data&&res.data.sourceUrl){
url = res.data.sourceUrl
window.open(url, "_blank")
}
})
break;
default:
break;
}
},
cancel() {
this.$emit('cancel')
......
......@@ -23,12 +23,16 @@
:forData="forData"
:tableDataTotal="tableDataTotal"
:queryParams="queryParams"
@sort-change="sortChange"
@handle-current-change="handleCurrentChange"
>
<template slot="projectName" slot-scope="scope">
<span v-html="scope.row.projectName"></span>
</template>
<template slot="sourceType" slot-scope="scope">
<div class="flex-box">
<div class="a-link" @click="linkTo(scope)" v-if="scope.row.sourceId&&scope.row.sourceType=='中标业绩'" v-html="scope.row.sourceType" style="cursor: pointer"></div>
<span v-else-if="scope.row.sourceId" @click="linkTo1(scope)" class="a-link" style="cursor: pointer" v-html="scope.row.sourceType"></span>
<span v-else-if="scope.row.sourceId&&(scope.row.sourceType=='中标公示'||scope.row.sourceType=='四库业绩'||scope.row.sourceType=='荣誉奖项')" @click="linkTo1(scope)" class="a-link" style="cursor: pointer" v-html="scope.row.sourceType"></span>
<span v-else v-html="scope.row.sourceType || '--'"></span>
</div>
</template>
......@@ -39,7 +43,7 @@
<script>
import mixin from '../../mixins/mixin'
import { supplierProjectPage,getSelect,bidWinMergeDetail } from '@/api/detail/party-a/dealings'
import { supplierProjectPage,getSelect,bidWinMergeDetail,skyProjectDetail,awardDetail } from '@/api/detail/party-a/dealings'
import HeadDetailForm from "../../component/HeadDetailForm"
import skeleton from '@/views/project/projectList/component/skeleton'
......@@ -59,7 +63,7 @@ export default {
drawer: false,
queryParams: {
companyId: this.data.companyId,
companyName: this.data.companyName,
companyName: this.data.companyName.replace(/<font color='red'>/g,'').replace(/<\/font>/g,''),
cid: this.companyId,
pageNum: 1,
pageSize: 20
......@@ -71,9 +75,9 @@ export default {
{ type: 3, fieldName: 'keys', value: '', placeholder: '输入合作项目/工程名称查询', options: [], width: 260},
],
forData: [
{label: '项目名称', prop: 'projectName', fixed: true},
{label: '公布时间', prop: 'time', width: '120',sortable:true},
{label: '本次合同金额(万元)', prop: 'amount', width: '180',sortable:true},
{label: '项目名称', prop: 'projectName', fixed: true,slot: true},
{label: '公布时间', prop: 'time', width: '120',sortable:'custom',descending: '3', ascending: '4'},
{label: '本次合同金额(万元)', prop: 'amount', width: '180',sortable:'custom',descending: '1', ascending: '2'},
{label: '项目类型', prop: 'projectType', width: '130'},
{label: '数据来源', prop: 'sourceType', width: '90', slot: true}
],
......@@ -132,11 +136,35 @@ export default {
this.$router.push(`/biddetail/${scope.row.sourceId}`)
},
linkTo1(scope){
bidWinMergeDetail({sourceId:scope.row.sourceId}).then(res=>{
if(res.data&&res.data.sourceUrl){
window.open(res.data.sourceUrl, "_blank")
}
})
let url = ""
switch (scope.row.sourceType) {
case '中标公示':
bidWinMergeDetail({sourceId:scope.row.sourceId}).then(res=>{
if(res.data&&res.data.sourceUrl){
url = res.data.sourceUrl
window.open(url, "_blank")
}
})
break;
case '荣誉奖项':
awardDetail({sourceId:scope.row.sourceId}).then(res=>{
if(res.data&&res.data.sourceUrl){
url = res.data.sourceUrl
window.open(url, "_blank")
}
})
break;
case '四库业绩':
skyProjectDetail({sourceId:scope.row.sourceId}).then(res=>{
if(res.data&&res.data.sourceUrl){
url = res.data.sourceUrl
window.open(url, "_blank")
}
})
break;
default:
break;
}
},
cancel() {
this.$emit('cancel')
......
......@@ -59,11 +59,11 @@ export default {
title:'',
queryParams: {
cid: this.companyId,
sort: 3,
sort: 5,
pageNum: 1,
pageSize: 20
},
defaultSort: {},
defaultSort: {prop: 'count', order: 'descending'},
forData: [
{label: '客户名称', prop: 'companyName', minWidth: '350', slot: true},
// {label: '合作项目/工程名称', prop: 'projectAllName', minWidth: '400', slot: true, sortable: 'custom', descending: '5', ascending: '6'},
......
......@@ -94,7 +94,6 @@ export default {
},
async handleQuery(params) {
this.tableLoading = true
let param = params?params:this.queryParams
let res = await historySendPage(param)
this.tableLoading = false
......
......@@ -50,11 +50,11 @@
</div>
</el-col>
</el-row>
<div class="tips">注:数据来源大司空建筑大数据平台,统计范围为全国公开的施工内土地交易项目,未公开的不含在内</div>
<div class="content content_wap1">
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">集团中标统计</span>
<div class="tips">注:数据来源大司空建筑大数据平台,统计范围为全国公开的施工内土地交易项目,未公开的不含在内</div>
</div>
<div class="flex-box">
<div class="search">
......@@ -116,6 +116,7 @@
<div class="flex-box query-box">
<div class="flex-box query-params">
<span class="common-title">大项目中标排行榜</span>
<div class="tips">注:数据来源大司空建筑大数据平台,统计范围为全国公开的施工内土地交易项目,未公开的不含在内</div>
</div>
<div class="flex-box">
<div class="search">
......@@ -190,7 +191,7 @@
<div class="list-content">
<p class="list-content-text">
<span>中标企业:</span>
<span><router-link :to="`/enterprise/${encodeStr(item.jskEid)}`" tag="a" class="a-link companyName" v-html="item.ename" ></router-link></span>
<span @click="getUipIdByCid(item.jskEid)" class="a-link">{{item.ename}}</span>
</p>
<p class="list-content-text">
<span>中标金额:</span>
......@@ -262,7 +263,7 @@
:timeList="timeList"
v-model="queryParams2.time"
timeValue="近七天"
placeholder="中标日期"
:placeholder="timePlaceholder"
@handle-search="changeSelect3"/>
</el-form-item>
</el-form>
......@@ -670,7 +671,7 @@ export default {
provinceId:'',
projects:[],
amount:'',
time:'',
time:[this.formatDate(new Date(new Date().getTime() - 3600 * 1000 * 24 * 7)),this.formatDate(new Date())],
pageNum:1,
pageSize:10
},
......@@ -686,6 +687,7 @@ export default {
dxmzbState:true,
zhaobiaoIsSkeleton:true,
placeholder:'中标金额',
timePlaceholder:'中标日期',
show_page:true,
MaxPage:500,
};
......@@ -922,7 +924,7 @@ export default {
top:30,
left:80,
right:90,
bottom:30,
bottom:50,
},
series: [
{
......@@ -1215,7 +1217,7 @@ export default {
top:30,
left:60,
right:90,
bottom:30,
bottom:50,
// containLabel: true
},
// dataZoom:[
......@@ -1303,10 +1305,12 @@ export default {
if(this.activeName === 'first'){
this.getBigWinningBidsPage()
this.placeholder='中标金额'
this.timePlaceholder='中标日期'
}
if(this.activeName === 'second'){
this.getBigBidPage()
this.placeholder='总投资'
this.timePlaceholder='发布日期'
}
},
handleClickTab1(){},
......@@ -1417,6 +1421,14 @@ export default {
}
}
},
// 时间格式化
formatDate(timeStr) {
let date = new Date(Number(timeStr))
let year = date.getFullYear()
let month = String(date.getMonth() + 1).padStart(2, 0)
let day = String(date.getDate()).padStart(2, 0)
return `${year}-${month}-${day}`
},
}
};
</script>
......@@ -1503,17 +1515,19 @@ export default {
color: #999999;
font-size: 12px;
margin: 12px 0;
padding-left: 16px;
}
.content{
background: #ffffff;
padding: 16px;
margin-top: 12px;
.query-box{
margin-bottom: 16px;
}
}
.content_wap1{
height: 430px;
margin-bottom: 12px;
}
.content_wap2{
height: 430px;
......@@ -1718,23 +1732,6 @@ export default {
align-items: center;
margin-right: 32px;
font-size: 14px;
span:first-child {
font-weight: 400;
color: rgba(35, 35, 35, 0.4);
line-height: 15px
}
span:last-child {
font-weight: 400;
color: rgba(35, 35, 35, 0.8);
line-height: 15px
}
.blue {
color: #0081FF !important;
cursor: pointer;
}
}
}
......
......@@ -111,10 +111,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
......
......@@ -29,14 +29,15 @@
</div>
</div>
<skeleton v-if="isSkeleton" style="padding: 16px"></skeleton>
<!--v-horizontal-scroll="'always'"-->
<div class="table-item">
<el-table
class="fixed-table"
:data="tableData"
element-loading-text="Loading"
@sort-change="sortChange"
border
max-height="640"
border
highlight-current-row
v-if="tableDataTotal > 0 && !isSkeleton"
:default-sort = "{prop: 'gdp', order: 'descending'}"
......
......@@ -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)
})
}
}
})
},
......
......@@ -20,13 +20,16 @@
</div>
<div class="con i">
<span>资金来源 :</span>
<div class="inputxt" id="inputxt2">
<div class="inputxt22" id="inputxt2">
<div class="flex" v-if="nowedit == 2 && isDisableds == false">
<el-input placeholder="待添加" v-model="amountSource"></el-input>
<div class="flex">
<!-- <el-input placeholder="待添加" v-model="amountSource"></el-input> -->
<el-select placeholder="请选择" v-model="amountSource" @change="changes({'amountSource':amountSource})">
<el-option v-for="(item,index) in amountSourceList" :key="index" :label="item" :value="item"></el-option>
</el-select>
<!-- <div class="flex">
<div class="btnsmall btn_primary h28" @click="changes({'amountSource':amountSource})" style="width: 56px">确定</div>
<div class="cancels h28" @click="nowedit = -1" style="">取消</div>
</div>
</div> -->
</div>
<span :class="{'txt':!amountSource}" v-else @click="nowedit = 2">{{amountSource||'待添加'}}</span>
</div>
......@@ -214,6 +217,7 @@
},
data(){
return{
amountSourceList:['财政资金','自筹资金','债券资金','投资资金','贷款资金','其他'],
nowedit:-1,//当前正在编辑的文本
id:this.detailId ? this.detailId : parseInt(this.$route.query.id),
investmentAmount: '',//总投资额
......@@ -336,6 +340,14 @@
}
</script>
<style scoped>
<style scoped>
.baseinfo .row .con .inputxt22{
line-height: 36px;
margin-top: -5px;
display: inline-block;
width: 184px;
height: 28px;
border-radius: 2px;
cursor: pointer;
}
</style>
......@@ -19,7 +19,7 @@
</p>
<p class="list-content-text">
<span>成交金额:</span>
<span v-if="textList.transactionPrice">{{textList.transactionPrice}}万元</span>
<span v-if="textList.transactionPrice">{{textList.transactionPrice>0?textList.transactionPrice+'万元':'--'}}</span>
<span v-else>--</span>
</p>
<p class="list-content-text">
......@@ -169,9 +169,9 @@
</p>
<p>
<label class="label">起始价(万元)</label>
<span>{{textList.moneyBegin||"--"}}</span>
<span>{{textList.moneyBegin>0?textList.moneyBegin:'--'}}</span>
<label class="label">竞买保证金(万元)</label>
<span>{{textList.bondmoney||"--"}}</span>
<span>{{textList.bondmoney>0?textList.bondmoney:'--'}}</span>
</p>
<p>
<label class="label">加价幅度</label>
......@@ -181,7 +181,7 @@
</p>
<p>
<label class="label">成交价(万元)</label>
<span>{{textList.transactionPrice||"--"}}</span>
<span>{{textList.transactionPrice>0?textList.transactionPrice:'--'}}</span>
<label class="label">受让人</label>
<span>{{textList.company||"--"}}</span>
</p>
......
......@@ -129,7 +129,7 @@
ct.credit_level creditLevel, count(ct.customer_id) customerCount
from customer ct
join customer_user ctu on ct.customer_id = ctu.customer_id
where ctu.user_id = #{userId} and ct.credit_level is not null
where ctu.status = 0 and ctu.user_id = #{userId} and ct.credit_level is not null
group by ct.credit_level
) ct
left join sys_dict_data sdd on (sdd.dict_label = ct.creditLevel and sdd.dict_type = 'credit_level_type')
......
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