Commit 9d2d49fb authored by danfuman's avatar danfuman

修改

parent dafcad1b
::v-deep .head-form-new { ::v-deep .head-form-new {
margin-bottom: 8px; padding-bottom: 8px;
.query-box { .query-box {
.from-item { .from-item {
display: flex; display: flex;
......
<template> <template>
<div :ref="refStr" class="custom-money-select screen-popper" id="custom-money-select"> <div :ref="refStr" class="custom-money-select1 screen-popper" id="custom-money-select">
<div :class="['input-block', isSelectOption?'rote':'']"> <div :class="['input-block', isSelectOption?'rote':'']">
<div class="block" @click="isSelectOption=!isSelectOption" @mouseenter="handleMouseenter" @mouseleave="handleMouseleave"> <div class="block" @click="isSelectOption=!isSelectOption" @mouseenter="handleMouseenter" @mouseleave="handleMouseleave">
<el-input class="custom-money-input" v-model="value" :placeholder="placeholder" readonly> <el-input class="custom-money-input" v-model="value" :placeholder="placeholder" readonly>
...@@ -238,8 +238,8 @@ export default { ...@@ -238,8 +238,8 @@ export default {
</script> </script>
<style lang="scss"> <style lang="scss">
.custom-money-select { .custom-money-select1 {
width: 120px; width: 106px;
height: 34px; height: 34px;
position: relative; position: relative;
.rote { .rote {
......
<template> <template>
<div :ref="refStr" class="custom-time-select screen-popper" id="custom-time-select"> <div :ref="refStr" class="custom-time-select1 screen-popper" id="custom-time-select">
<div :class="['input-block', isSelectOption?'rote':'']"> <div :class="['input-block', isSelectOption?'rote':'']">
<div class="block" @click="isSelectOption=!isSelectOption" @mouseenter="handleMouseenter" @mouseleave="handleMouseleave"> <div class="block" @click="isSelectOption=!isSelectOption" @mouseenter="handleMouseenter" @mouseleave="handleMouseleave">
<el-input class="custom-time-input" v-model="value" :placeholder="placeholder" readonly> <el-input class="custom-time-input" v-model="value" :placeholder="placeholder" readonly>
...@@ -244,8 +244,8 @@ export default { ...@@ -244,8 +244,8 @@ export default {
</script> </script>
<style lang="scss"> <style lang="scss">
.custom-time-select { .custom-time-select1 {
width: 120px; width: 90px !important;
height: 34px; height: 34px;
.rote { .rote {
......
...@@ -845,6 +845,7 @@ ...@@ -845,6 +845,7 @@
padding-top: 16px; padding-top: 16px;
width: 100%; width: 100%;
height: 100%; height: 100%;
.table_search{
::v-deep .el-form{ ::v-deep .el-form{
.el-input{ .el-input{
line-height: 32px; line-height: 32px;
...@@ -862,6 +863,8 @@ ...@@ -862,6 +863,8 @@
} }
} }
}
} }
.box{ .box{
......
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
:form-data="formData" :form-data="formData"
:query-params="queryParams" :query-params="queryParams"
:total="tableDataTotal" :total="tableDataTotal"
:headerFixed="true"
:isExcel="false" :isExcel="false"
@handle-search="handleSearch" @handle-search="handleSearch"
> >
...@@ -53,6 +54,7 @@ ...@@ -53,6 +54,7 @@
:tableLoading="tableLoading" :tableLoading="tableLoading"
:tableData="tableData" :tableData="tableData"
:forData="forData" :forData="forData"
:headerFixed="true"
:tableDataTotal="tableDataTotal" :tableDataTotal="tableDataTotal"
:queryParams="queryParams" :queryParams="queryParams"
:MaxPage=500 :MaxPage=500
...@@ -456,7 +458,7 @@ ...@@ -456,7 +458,7 @@
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
line-height: 32px; line-height: 32px;
color: #999999; color: rgba(35,35,35,0.8);
margin-right: 8px; margin-right: 8px;
text-align: center; text-align: center;
width: 70px; width: 70px;
......
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
:form-data="formData" :form-data="formData"
:query-params="queryParams" :query-params="queryParams"
:total="tableDataTotal" :total="tableDataTotal"
:headerFixed="true"
:isExcel="true" :isExcel="true"
@handle-search="handleSearch" @handle-search="handleSearch"
@handle-excel="clickEXCEL" @handle-excel="clickEXCEL"
...@@ -21,6 +22,7 @@ ...@@ -21,6 +22,7 @@
:tableLoading="tableLoading" :tableLoading="tableLoading"
:tableData="tableData" :tableData="tableData"
:forData="forData" :forData="forData"
:headerFixed="true"
:MaxPage=500 :MaxPage=500
:tableDataTotal="tableDataTotal" :tableDataTotal="tableDataTotal"
:queryParams="queryParams" :queryParams="queryParams"
......
...@@ -379,6 +379,14 @@ ...@@ -379,6 +379,14 @@
border-radius: 4px; border-radius: 4px;
padding: 16px; padding: 16px;
height: calc(100% - 64px); height: calc(100% - 64px);
::v-deep .el-table__header-wrapper {
position: sticky;
top: 64px !important;
z-index: 9;
}
.headForm{ .headForm{
margin-bottom: 14px; margin-bottom: 14px;
.common-title{ .common-title{
......
<template> <template>
<div class="head-form-new"> <div class="head-form-new" :class="headerFixed ? 'headerFixed':''">
<div class="common-title" v-if="title">{{ title }}</div> <div class="common-title" v-if="title">{{ title }}</div>
<div class="flex-box query-box"> <div class="flex-box query-box">
<div class="flex-box query-params"> <div class="flex-box query-params">
...@@ -109,6 +109,10 @@ export default { ...@@ -109,6 +109,10 @@ export default {
type: Number, type: Number,
default: 0 default: 0
}, },
headerFixed: {
type: Boolean,
default: false
},
isExcel: { isExcel: {
type: Boolean, type: Boolean,
default: false default: false
...@@ -280,10 +284,17 @@ export default { ...@@ -280,10 +284,17 @@ export default {
::v-deep .el-popper[x-placement^="bottom"] { ::v-deep .el-popper[x-placement^="bottom"] {
margin-top: 5px; margin-top: 5px;
} }
.headerFixed{
position: sticky;
top: 0;
z-index: 9;
padding-top: 16px;
margin-top: -16px;
background: #fff;
}
.head-form-new { .head-form-new {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
margin-bottom: 14px;
.common-title { .common-title {
margin-bottom: 8px; margin-bottom: 8px;
} }
......
<template> <template>
<div id="detailPart" class="sides-container" :style="sideHeight?'height:'+sideHeight+'px':''"> <div id="detailPart" class="sides-container">
<el-input placeholder="搜索" class="side-input" v-model="searchText" clearable @input="handleSearch(true)" @keyup.enter.native="handleSearch()"> <el-input placeholder="搜索" class="side-input" v-model="searchText" clearable @input="handleSearch(true)" @keyup.enter.native="handleSearch()">
<i slot="prefix" class="el-input__icon el-icon-search" @click="handleSearch()"></i> <i slot="prefix" class="el-input__icon el-icon-search" @click="handleSearch()"></i>
</el-input> </el-input>
......
<template> <template>
<div class="Tables"> <div class="Tables">
<div class="table-item"> <div class="table-item">
<el-table v-if="tableDataTotal>0" class="fixed-table" <el-table v-if="tableDataTotal>0" class="fixed-table" :class="headerFixed ? 'headerFixed':''"
v-loading="tableLoading" v-loading="tableLoading"
:data="tableData" :data="tableData"
element-loading-text="Loading" element-loading-text="Loading"
...@@ -87,6 +87,10 @@ export default { ...@@ -87,6 +87,10 @@ export default {
type: Boolean, type: Boolean,
default: true default: true
}, },
headerFixed: {
type: Boolean,
default: false
},
indexFixed: { indexFixed: {
type: Boolean, type: Boolean,
default: false default: false
...@@ -173,14 +177,15 @@ export default { ...@@ -173,14 +177,15 @@ export default {
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
::v-deep .el-table__body tr.current-row > td.el-table__cell{ .Tables{
::v-deep .el-table__body tr.current-row > td.el-table__cell{
background-color: #ffffff; background-color: #ffffff;
} }
/*::v-deep .el-table__fixed{ /*::v-deep .el-table__fixed{
height: calc(100% - 16px) !important; height: calc(100% - 16px) !important;
}*/ }*/
::v-deep .el-table__row{ ::v-deep .el-table__row{
&:nth-child(even){ &:nth-child(even){
background-color: #F9FCFF; background-color: #F9FCFF;
.more{ .more{
...@@ -197,47 +202,61 @@ export default { ...@@ -197,47 +202,61 @@ export default {
} }
} }
} }
} }
.table-item{ .table-item{
::v-deep .el-table td.el-table__cell{ ::v-deep .el-table td.el-table__cell{
border-bottom: 0; border-bottom: 0;
} }
} }
::v-deep .el-table th.el-table__cell.is-leaf,::v-deep .el-table td.el-table__cell { ::v-deep .el-table th.el-table__cell.is-leaf,::v-deep .el-table td.el-table__cell {
border-bottom: 1px solid #E6EAF1; border-bottom: 1px solid #E6EAF1;
} }
::v-deep .el-table--border .el-table__cell { ::v-deep .el-table--border .el-table__cell {
border-right: 1px solid #E6EAF1; border-right: 1px solid #E6EAF1;
} }
::v-deep .el-table__body tr.hover-row.current-row>td, ::v-deep .el-table__body tr.hover-row.current-row>td,
::v-deep .el-table__body tr.hover-row.el-table__row--striped.current-row>td, ::v-deep .el-table__body tr.hover-row.el-table__row--striped.current-row>td,
::v-deep .el-table__body tr.hover-row.el-table__row--striped>td, ::v-deep .el-table__body tr.hover-row.el-table__row--striped>td,
::v-deep .el-table__body tr.hover-row>td{ ::v-deep .el-table__body tr.hover-row>td{
background-color:#DCEBFF !important; background-color:#DCEBFF !important;
.more{ .more{
background: #DCEBFF; background: #DCEBFF;
} }
} }
::v-deep .el-table--enable-row-hover .el-table__body tr:hover > td { ::v-deep .el-table--enable-row-hover .el-table__body tr:hover > td {
background-color: #DCEBFF; background-color: #DCEBFF;
} }
::v-deep .fixed-table{ ::v-deep .fixed-table{
overflow: visible; overflow: visible;
} }
::v-deep .el-table__header-wrapper{ ::v-deep .el-table__header-wrapper{
position: sticky; position: sticky;
top:56px; top:0;
z-index: 9; z-index: 9;
} }
::v-deep .el-table__fixed-header-wrapper{ ::v-deep .el-table__fixed-header-wrapper{
position: sticky; position: sticky;
z-index: 9; z-index: 9;
top: 56px; top: 0;
} }
::v-deep .el-table__fixed{ .headerFixed{
::v-deep .el-table__header-wrapper{
position: sticky;
top:80px;
z-index: 9;
}
::v-deep .el-table__fixed-header-wrapper{
position: sticky;
z-index: 9;
top:80px;
}
}
::v-deep .el-table__fixed{
overflow-x: clip; overflow-x: clip;
overflow-y: clip; overflow-y: clip;
} }
}
</style> </style>
...@@ -383,15 +383,31 @@ export default { ...@@ -383,15 +383,31 @@ export default {
} }
.part-main { .part-main {
margin-top: 12px; margin-top: 12px;
width: 100%;
height: calc(100vh - 155px);
overflow-y: auto;
align-items: initial; align-items: initial;
} }
.part-left { .part-left {
margin-right: 16px; margin-right: 16px;
padding-bottom: 16px;
position: fixed;
background: #FFFFFF;
width: 144px;
} }
.part-right { .part-right {
min-width: 1088px; min-width: 1088px;
width: 100%; width: 100%;
background: #ffffff; background: #FFFFFF;
border-radius: 4px; border-radius: 4px;
margin-left: 160px;
::v-deep .el-table__header-wrapper{
position: sticky;
top:0;
z-index: 9;
}
#groupBox{
height: 100%;
}
} }
</style> </style>
...@@ -69,15 +69,15 @@ ...@@ -69,15 +69,15 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
width="160" width="140"
align="right" align="right"
label="合作次数"> label="合作次数">
<template slot-scope="scope"> <template slot-scope="scope">
<span style="padding-right: 86px;">{{ scope.row.count }}</span> <span>{{ scope.row.count }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
width="160" width="180"
align="right" align="right"
label="合作总金额(万元)"> label="合作总金额(万元)">
<template slot-scope="scope"> <template slot-scope="scope">
......
...@@ -116,7 +116,7 @@ export default { ...@@ -116,7 +116,7 @@ export default {
background: #FFFFFF; background: #FFFFFF;
border-radius: 4px; border-radius: 4px;
.detail-tab{ .detail-tab{
margin: -34px 0 0 -16px; margin: -14px 0 0 -16px;
::v-deep .el-tabs__nav-wrap::after{ ::v-deep .el-tabs__nav-wrap::after{
display: none; display: none;
} }
......
...@@ -327,7 +327,7 @@ export default { ...@@ -327,7 +327,7 @@ export default {
.head-form-new { .head-form-new {
.common-title { .common-title {
margin-bottom: 8px; padding-bottom: 8px;
} }
.query-box { .query-box {
margin: 0px; margin: 0px;
......
This diff is collapsed.
...@@ -253,9 +253,8 @@ export default { ...@@ -253,9 +253,8 @@ export default {
<style lang="scss"> <style lang="scss">
.custom-time-select { .custom-time-select {
width: 120px; width: 110px;
height: 34px; height: 34px;
.rote { .rote {
.el-input__inner{ .el-input__inner{
background: #F4F6F9; background: #F4F6F9;
......
...@@ -653,13 +653,18 @@ export default { ...@@ -653,13 +653,18 @@ export default {
.el-form-item{ .el-form-item{
margin: 0 !important; margin: 0 !important;
.form-content-width{ .form-content-width{
width: 110px; width: 80px;
} }
::v-deep .el-input{ ::v-deep .el-input{
.el-input__inner{ .el-input__inner{
border: 0; border: 0;
} }
} }
::v-deep .is-focus{
.el-input__inner{
background: #F4F6F9;
}
}
} }
} }
.table-item{ .table-item{
......
...@@ -348,13 +348,18 @@ export default { ...@@ -348,13 +348,18 @@ export default {
.el-form-item{ .el-form-item{
margin: 0 !important; margin: 0 !important;
.form-content-width{ .form-content-width{
width: 100px; width: 80px;
} }
::v-deep .el-input{ ::v-deep .el-input{
.el-input__inner{ .el-input__inner{
border: 0; border: 0;
} }
} }
::v-deep .is-focus{
.el-input__inner{
background: #F4F6F9;
}
}
} }
} }
.content{ .content{
......
...@@ -36,18 +36,18 @@ ...@@ -36,18 +36,18 @@
</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="custom" width="120" :formatter="formatStatus"/>
<el-table-column prop="gdpGrowth" label="GDP增速(%)" sortable width="130" :formatter="formatStatus"/> <el-table-column prop="gdpGrowth" label="GDP增速(%)" sortable="custom" width="130" :formatter="formatStatus"/>
<el-table-column prop="gdpPerCapita" label="人均GDP(元)" sortable width="130" :formatter="formatStatus"/> <el-table-column prop="gdpPerCapita" label="人均GDP(元)" sortable="custom" width="130" :formatter="formatStatus"/>
<el-table-column prop="population" label="人口(万人)" sortable width="120" :formatter="formatStatus"/> <el-table-column prop="population" label="人口(万人)" sortable="custom" width="120" :formatter="formatStatus"/>
<el-table-column prop="fixedInvestment" label="固定资产投资 (亿元) " sortable width="200" :formatter="formatStatus"/> <el-table-column prop="fixedInvestment" label="固定资产投资 (亿元) " sortable="custom" width="200" :formatter="formatStatus"/>
<el-table-column prop="gbr" label="一般公共预算收入(亿元)" sortable width="200" :formatter="formatStatus"/> <el-table-column prop="gbr" label="一般公共预算收入(亿元)" sortable="custom" width="200" :formatter="formatStatus"/>
<el-table-column prop="gbe" label="一般公共预算支出(亿元)" sortable width="200" :formatter="formatStatus"/> <el-table-column prop="gbe" label="一般公共预算支出(亿元)" sortable="custom" width="200" :formatter="formatStatus"/>
<el-table-column prop="govFundIncome" label="政府性基金收入(亿元)" sortable width="200" :formatter="formatStatus"/> <el-table-column prop="govFundIncome" label="政府性基金收入(亿元)" sortable="custom" width="200" :formatter="formatStatus"/>
<el-table-column prop="govDebtBalance" label="地方政府债务余额(亿元)" sortable width="200" :formatter="formatStatus"/> <el-table-column prop="govDebtBalance" label="地方政府债务余额(亿元)" sortable="custom" width="200" :formatter="formatStatus"/>
<el-table-column prop="uipInterestBearingDebt" label="城投平台有息债务(亿元)" sortable width="200" :formatter="formatStatus"/> <el-table-column prop="uipInterestBearingDebt" label="城投平台有息债务(亿元)" sortable="custom" width="200" :formatter="formatStatus"/>
<el-table-column prop="fiscalSelfSufficiencyRate" label="财政自给率(%)" sortable width="150" :formatter="formatStatus"/> <el-table-column prop="fiscalSelfSufficiencyRate" label="财政自给率(%)" sortable="custom" width="150" :formatter="formatStatus"/>
<el-table-column prop="govDebtRateWild" label="债务率-宽口径(%)" sortable width="170" :formatter="formatStatus"/> <el-table-column prop="govDebtRateWild" label="债务率-宽口径(%)" sortable="custom" width="170" :formatter="formatStatus"/>
</el-table> </el-table>
</div> </div>
<div class="pagination-box" v-if="show_page && tableDataTotal>pageSize"> <div class="pagination-box" v-if="show_page && tableDataTotal>pageSize">
...@@ -193,17 +193,22 @@ export default { ...@@ -193,17 +193,22 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
.regionalEconomy{ .regionalEconomy{
.el-form{ .el-form{
/*margin-left: 24px;*/ margin-left: 16px;
.el-form-item{ .el-form-item{
margin: 0 !important; margin: 0 !important;
.form-content-width{ .form-content-width{
width: 100px; width: 80px;
} }
::v-deep .el-input{ ::v-deep .el-input{
.el-input__inner{ .el-input__inner{
border: 0; border: 0;
} }
} }
::v-deep .is-focus{
.el-input__inner{
background: #F4F6F9;
}
}
} }
} }
.content{ .content{
......
...@@ -399,7 +399,7 @@ export default { ...@@ -399,7 +399,7 @@ export default {
width += textContainer.offsetWidth + parseInt(itemInfo.marginLeft) + parseInt(itemInfo.marginRight); width += textContainer.offsetWidth + parseInt(itemInfo.marginLeft) + parseInt(itemInfo.marginRight);
textContainer.remove(); textContainer.remove();
}); });
dom.style.setProperty("width", `${width + 60}px`); dom.style.setProperty("width", `${width + 50}px`);
this.handleSearch(name); this.handleSearch(name);
return; return;
} }
...@@ -411,7 +411,7 @@ export default { ...@@ -411,7 +411,7 @@ export default {
textContainer.textContent = iptChild.getAttribute("placeholder"); textContainer.textContent = iptChild.getAttribute("placeholder");
document.body.append(textContainer); document.body.append(textContainer);
// let containerWidth = textContainer.offsetWidth + 12 + 8; // let containerWidth = textContainer.offsetWidth + 12 + 8;
let containerWidth = 120; let containerWidth = 110;
textContainer.remove(); textContainer.remove();
dom.style.setProperty("width", `${containerWidth}px`); dom.style.setProperty("width", `${containerWidth}px`);
this.handleSearch(name); this.handleSearch(name);
...@@ -509,7 +509,7 @@ export default { ...@@ -509,7 +509,7 @@ export default {
float: left; float: left;
} }
::v-deep .el-cascader{ ::v-deep .el-cascader{
width: 120px; width: 110px;
margin-right: 12px; margin-right: 12px;
height: 34px; height: 34px;
line-height: 34px !important; line-height: 34px !important;
......
...@@ -485,10 +485,10 @@ ...@@ -485,10 +485,10 @@
} }
.form-content-width{ .form-content-width{
width: 90px; width: 80px;
} }
::v-deep .el-cascader{ ::v-deep .el-cascader{
width: 180px; width: 106px;
.el-cascader__tags{ .el-cascader__tags{
flex-wrap: inherit; flex-wrap: inherit;
.el-tag{ .el-tag{
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<div class="flex-box query-box"> <div class="flex-box query-box">
<div class="flex-box query-params"> <div class="flex-box query-params">
<span class="common-title">全国土地交易项目供应方式</span> <span class="common-title">全国土地交易项目供应方式</span>
<el-select v-model="years" @change="handleYears(1)" multiple collapse-tags filterable class="form-content-width" placeholder="请选择" :popper-append-to-body='false' size="small"> <el-select v-model="years" @change="iptAdaptive(inputID1,true,1)" :class="[`select-adaptive-${inputID1}`]" multiple collapse-tags filterable class="form-content-width" placeholder="请选择" :popper-append-to-body='false' size="small">
<el-option v-for="(item, index) in yearOptions" :key="index" :label="item" :value="item" /> <el-option v-for="(item, index) in yearOptions" :key="index" :label="item" :value="item" />
</el-select> </el-select>
</div> </div>
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
<div class="flex-box query-box"> <div class="flex-box query-box">
<div class="flex-box query-params"> <div class="flex-box query-params">
<span class="common-title">全国土地交易项目土地用途</span> <span class="common-title">全国土地交易项目土地用途</span>
<el-select v-model="years1" @change="handleYears(2)" multiple collapse-tags filterable class="form-content-width" placeholder="请选择" :popper-append-to-body='false' size="small"> <el-select v-model="years1" @change="iptAdaptive(inputID2,true,2)" :class="[`select-adaptive-${inputID2}`]" multiple collapse-tags filterable class="form-content-width" placeholder="请选择" :popper-append-to-body='false' size="small">
<el-option v-for="(item, index) in yearOptions" :key="index" :label="item" :value="item" /> <el-option v-for="(item, index) in yearOptions" :key="index" :label="item" :value="item" />
</el-select> </el-select>
</div> </div>
...@@ -92,10 +92,10 @@ ...@@ -92,10 +92,10 @@
<div class="flex-box query-box"> <div class="flex-box query-box">
<div class="flex-box query-params"> <div class="flex-box query-params">
<span class="common-title">全国土地交易项目地区Top10</span> <span class="common-title">全国土地交易项目地区Top10</span>
<el-select @change="handleYears(3)" style="margin-right: 8px" v-model="address" multiple collapse-tags filterable class="form-content-width" placeholder="地区筛选" :popper-append-to-body='false' size="small"> <el-select @change="iptAdaptive(inputID3,true,3)" :class="[`select-adaptive-${inputID3}`]" style="margin-right: 8px" v-model="address" multiple 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-option v-for="(item, index) in addressList" :key="index" :label="item.label" :value="item.id" />
</el-select> </el-select>
<el-select v-model="years2" @change="handleYears(3)" multiple collapse-tags filterable class="form-content-width" placeholder="请选择" :popper-append-to-body='false' size="small"> <el-select v-model="years2" @change="iptAdaptive(inputID3,true,3)" :class="[`select-adaptive-${inputID4}`]" multiple collapse-tags filterable class="form-content-width" placeholder="请选择" :popper-append-to-body='false' size="small">
<el-option v-for="(item, index) in yearOptions" :key="index" :label="item" :value="item" /> <el-option v-for="(item, index) in yearOptions" :key="index" :label="item" :value="item" />
</el-select> </el-select>
</div> </div>
...@@ -177,6 +177,7 @@ ...@@ -177,6 +177,7 @@
import dataRegion from '@/assets/json/dataRegion' import dataRegion from '@/assets/json/dataRegion'
import { countLandMarketByType,countLandMarketByProvince,countLandMarketByYear } from '@/api/macro/macro' import { countLandMarketByType,countLandMarketByProvince,countLandMarketByYear } from '@/api/macro/macro'
import skeleton from '../../component/skeleton' import skeleton from '../../component/skeleton'
import { v4 } from "uuid";
export default { export default {
name: 'NationalEconomies', name: 'NationalEconomies',
components: { components: {
...@@ -203,11 +204,14 @@ export default { ...@@ -203,11 +204,14 @@ export default {
tdytState:true, tdytState:true,
topState:true, topState:true,
nftjState:true, nftjState:true,
// typeName:['住宅用地','工业用地','城镇住宅用地','其他商服用地','公共设施用地','公路用地','城镇村道路用地','公园与绿地', inputID1:this.getUid(),
// '工矿仓储用地','零售商业用地','科研用地','街巷用地','机关团体用地','商服用地','商务金融用地'] inputID2:this.getUid(),
inputID3:this.getUid(),
inputID4:this.getUid(),
} }
}, },
created() { created() {
this.getPlaceholder()
this.dataRegion() this.dataRegion()
this.yearsData() this.yearsData()
...@@ -726,7 +730,116 @@ export default { ...@@ -726,7 +730,116 @@ export default {
}); });
return sums; return sums;
}, },
async getPlaceholder() {
try {
await this.$nextTick();
const doms = document.querySelectorAll("[class*='select-adaptive-']");
if (doms?.length) {
doms.forEach(dom => {
const realStyles = window.getComputedStyle(dom);
const ipt = dom.querySelector("input");
const text = ipt.getAttribute("placeholder");
const textContainer = document.createElement("span");
textContainer.style.setProperty("visibility", "hidden");
textContainer.style.setProperty("display", "inline-block");
textContainer.style.setProperty("font-size", "14px");
const hasPadding = (parseInt(realStyles.paddingLeft) || parseInt(realStyles.paddingRight)) ? true : false;
hasPadding ? textContainer.style.setProperty("padding", realStyles.paddingRight) : null;
textContainer.style.setProperty("box-sizing", "border-box");
textContainer.textContent = text;
document.body.append(textContainer);
// 加上按钮宽度 以及按钮左外边距
let containerWidth = textContainer.offsetWidth + 50;
textContainer.remove();
dom.style.setProperty("width", `${containerWidth}px`);
});
}
} catch (error) {
}
},
iptAdaptive(uid, multiple = false, key) {
multiple ? this.multipleAdaptiveHandle(uid,key) : this.iptAdaptiveHandle(uid,key);
},
getUid() {
return v4();
},
// 多选处理
async multipleAdaptiveHandle(uid,key) {
try {
await this.$nextTick();
const dom = document.querySelector(`.select-adaptive-${uid}`);
const iptChild = dom.querySelector(".el-input__inner");
if (dom) {
const textContainer = document.createElement("span");
const textName = `text-${uid}`;
textContainer.classList.add(textName);
const selectChildren = dom.querySelectorAll(".el-tag");
if (selectChildren.length) {
let width = 0;
selectChildren.forEach(item => {
const text = item.textContent;
const itemInfo = window.getComputedStyle(item);
textContainer.style.setProperty("visibility", "hidden");
textContainer.style.setProperty("display", "inline-block");
textContainer.style.setProperty("font-size", "14px");
textContainer.style.setProperty("padding", itemInfo.padding);
textContainer.style.setProperty("box-sizing", "border-box");
textContainer.textContent = text;
document.body.append(textContainer);
width += textContainer.offsetWidth + parseInt(itemInfo.marginLeft) + parseInt(itemInfo.marginRight);
textContainer.remove();
});
dom.style.setProperty("width", `${width + 50}px`);
this.handleYears(key);
return;
}
textContainer.style.setProperty("visibility", "hidden");
textContainer.style.setProperty("display", "inline-block");
textContainer.style.setProperty("font-size", "14px");
textContainer.style.setProperty("padding", "0px 8px");
textContainer.style.setProperty("box-sizing", "border-box");
textContainer.textContent = iptChild.getAttribute("placeholder");
document.body.append(textContainer);
let containerWidth = textContainer.offsetWidth + 30;
textContainer.remove();
dom.style.setProperty("width", `${containerWidth}px`);
this.handleYears(key);
}
} catch (error) {
console.log(error);
}
},
// 单选处理
async iptAdaptiveHandle(uid,key) {
try {
await this.$nextTick();
const dom = document.querySelector(`.select-adaptive-${uid}`);
const realStyles = window.getComputedStyle(dom);
if (dom) {
const iptChild = dom.querySelector(".el-input__inner");
const textContainer = document.createElement("span");
const textName = `text-${uid}`;
textContainer.classList.add(textName);
textContainer.style.setProperty("visibility", "hidden");
textContainer.style.setProperty("display", "inline-block");
textContainer.style.setProperty("font-size", "14px");
const hasPadding = (parseInt(realStyles.paddingLeft) || parseInt(realStyles.paddingRight)) ? true : false;
hasPadding ? textContainer.style.setProperty("padding", "0px 8px") : null;
textContainer.style.setProperty("box-sizing", "border-box");
textContainer.textContent = iptChild.value ? iptChild.value : iptChild.getAttribute("placeholder");
document.body.append(textContainer);
let containerWidth = textContainer.offsetWidth + 50;
textContainer.remove();
dom.style.setProperty("width", `${containerWidth}px`);
}
this.handleYears(key);
} catch (error) {
}
},
} }
} }
</script> </script>
...@@ -747,6 +860,7 @@ export default { ...@@ -747,6 +860,7 @@ export default {
color: #0081FF; color: #0081FF;
} }
.tdjy{ .tdjy{
@import "@/assets/styles/search-common.scss";
.text_p{ .text_p{
color: #999999; color: #999999;
font-size: 14px; font-size: 14px;
...@@ -772,7 +886,7 @@ export default { ...@@ -772,7 +886,7 @@ export default {
margin-right: 24px; margin-right: 24px;
} }
::v-deep .form-content-width{ ::v-deep .form-content-width{
width: 135px; width: 95px;
.el-select__input{ .el-select__input{
width: 10px !important; width: 10px !important;
max-width: 10px !important; max-width: 10px !important;
...@@ -789,6 +903,12 @@ export default { ...@@ -789,6 +903,12 @@ export default {
background: #F4F6F9; background: #F4F6F9;
} }
} }
.el-select__tags {
flex-wrap: inherit;
.el-tag{
/*max-width: 130px;*/
}
}
} }
::v-deep .el-cascader{ ::v-deep .el-cascader{
width: 220px; width: 220px;
......
...@@ -38,10 +38,10 @@ ...@@ -38,10 +38,10 @@
<div class="flex-box query-box"> <div class="flex-box query-box">
<div class="flex-box query-params"> <div class="flex-box query-params">
<span class="common-title">全国各地区招标统计TOP10</span> <span class="common-title">全国各地区招标统计TOP10</span>
<el-select @change="handleYears(1)" style="margin-right: 8px" v-model="address" multiple collapse-tags filterable class="form-content-width" placeholder="地区筛选" :popper-append-to-body='false' size="small"> <el-select @change="iptAdaptive(inputID1,true,1)" style="margin-right: 8px" :class="[`select-adaptive-${inputID1}`]" v-model="address" multiple 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-option v-for="(item, index) in addressList" :key="index" :label="item.label" :value="item.id" />
</el-select> </el-select>
<el-select v-model="years1" @change="handleYears(1)" multiple collapse-tags filterable class="form-content-width" placeholder="请选择" :popper-append-to-body='false' size="small"> <el-select v-model="years1" @change="iptAdaptive(inputID2,true,1)" multiple collapse-tags filterable :class="[`select-adaptive-${inputID2}`]" class="form-content-width" placeholder="请选择" :popper-append-to-body='false' size="small">
<el-option v-for="(item, index) in yearOptions" :key="index" :label="item" :value="item" /> <el-option v-for="(item, index) in yearOptions" :key="index" :label="item" :value="item" />
</el-select> </el-select>
</div> </div>
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
<div class="flex-box query-box"> <div class="flex-box query-box">
<div class="flex-box query-params"> <div class="flex-box query-params">
<span class="common-title">全国各年度招标月份统计</span> <span class="common-title">全国各年度招标月份统计</span>
<el-select v-model="years2" @change="handleYears(2)" collapse-tags filterable class="form-content-width" placeholder="请选择" :popper-append-to-body='false' size="small"> <el-select v-model="years2" @change="iptAdaptive(inputID3,'',2)" :class="[`select-adaptive-${inputID3}`]" style="width: 80px;" collapse-tags filterable class="form-content-width" placeholder="请选择" :popper-append-to-body='false' size="small">
<el-option v-for="(item, index) in yearOptions" :key="index" :label="item" :value="item" /> <el-option v-for="(item, index) in yearOptions" :key="index" :label="item" :value="item" />
</el-select> </el-select>
</div> </div>
...@@ -130,6 +130,7 @@ ...@@ -130,6 +130,7 @@
import dataRegion from '@/assets/json/dataRegion' import dataRegion from '@/assets/json/dataRegion'
import { countNewsBidByYear,countNewsBidByProvince,countNewsBidByMonth } from '@/api/macro/macro' import { countNewsBidByYear,countNewsBidByProvince,countNewsBidByMonth } from '@/api/macro/macro'
import skeleton from '../../component/skeleton' import skeleton from '../../component/skeleton'
import { v4 } from "uuid";
export default { export default {
name: 'NationalEconomies', name: 'NationalEconomies',
components: { components: {
...@@ -152,9 +153,13 @@ ...@@ -152,9 +153,13 @@
isSkeleton:true, isSkeleton:true,
gyflState:true, gyflState:true,
tdytState:true, tdytState:true,
inputID1:this.getUid(),
inputID2:this.getUid(),
inputID3:this.getUid(),
} }
}, },
created() { created() {
this.getPlaceholder()
this.dataRegion() this.dataRegion()
this.yearsData() this.yearsData()
this.getcountNewsBidByYear() this.getcountNewsBidByYear()
...@@ -613,7 +618,116 @@ ...@@ -613,7 +618,116 @@
}); });
return sums; return sums;
}, },
async getPlaceholder() {
try {
await this.$nextTick();
const doms = document.querySelectorAll("[class*='select-adaptive-']");
if (doms?.length) {
doms.forEach(dom => {
const realStyles = window.getComputedStyle(dom);
const ipt = dom.querySelector("input");
const text = ipt.getAttribute("placeholder");
const textContainer = document.createElement("span");
textContainer.style.setProperty("visibility", "hidden");
textContainer.style.setProperty("display", "inline-block");
textContainer.style.setProperty("font-size", "14px");
const hasPadding = (parseInt(realStyles.paddingLeft) || parseInt(realStyles.paddingRight)) ? true : false;
hasPadding ? textContainer.style.setProperty("padding", realStyles.paddingRight) : null;
textContainer.style.setProperty("box-sizing", "border-box");
textContainer.textContent = text;
document.body.append(textContainer);
// 加上按钮宽度 以及按钮左外边距
let containerWidth = textContainer.offsetWidth + 50;
textContainer.remove();
dom.style.setProperty("width", `${containerWidth}px`);
});
}
} catch (error) {
}
},
iptAdaptive(uid, multiple = false, key) {
multiple ? this.multipleAdaptiveHandle(uid,key) : this.iptAdaptiveHandle(uid,key);
},
getUid() {
return v4();
},
// 多选处理
async multipleAdaptiveHandle(uid,key) {
try {
await this.$nextTick();
const dom = document.querySelector(`.select-adaptive-${uid}`);
const iptChild = dom.querySelector(".el-input__inner");
if (dom) {
const textContainer = document.createElement("span");
const textName = `text-${uid}`;
textContainer.classList.add(textName);
const selectChildren = dom.querySelectorAll(".el-tag");
if (selectChildren.length) {
let width = 0;
selectChildren.forEach(item => {
const text = item.textContent;
const itemInfo = window.getComputedStyle(item);
textContainer.style.setProperty("visibility", "hidden");
textContainer.style.setProperty("display", "inline-block");
textContainer.style.setProperty("font-size", "14px");
textContainer.style.setProperty("padding", itemInfo.padding);
textContainer.style.setProperty("box-sizing", "border-box");
textContainer.textContent = text;
document.body.append(textContainer);
width += textContainer.offsetWidth + parseInt(itemInfo.marginLeft) + parseInt(itemInfo.marginRight);
textContainer.remove();
});
dom.style.setProperty("width", `${width + 50}px`);
this.handleYears(key);
return;
}
textContainer.style.setProperty("visibility", "hidden");
textContainer.style.setProperty("display", "inline-block");
textContainer.style.setProperty("font-size", "14px");
textContainer.style.setProperty("padding", "0px 8px");
textContainer.style.setProperty("box-sizing", "border-box");
textContainer.textContent = iptChild.getAttribute("placeholder");
document.body.append(textContainer);
let containerWidth = textContainer.offsetWidth + 30;
textContainer.remove();
dom.style.setProperty("width", `${containerWidth}px`);
this.handleYears(key);
}
} catch (error) {
console.log(error);
}
},
// 单选处理
async iptAdaptiveHandle(uid,key) {
try {
await this.$nextTick();
const dom = document.querySelector(`.select-adaptive-${uid}`);
const realStyles = window.getComputedStyle(dom);
if (dom) {
const iptChild = dom.querySelector(".el-input__inner");
const textContainer = document.createElement("span");
const textName = `text-${uid}`;
textContainer.classList.add(textName);
textContainer.style.setProperty("visibility", "hidden");
textContainer.style.setProperty("display", "inline-block");
textContainer.style.setProperty("font-size", "14px");
const hasPadding = (parseInt(realStyles.paddingLeft) || parseInt(realStyles.paddingRight)) ? true : false;
hasPadding ? textContainer.style.setProperty("padding", "0px 8px") : null;
textContainer.style.setProperty("box-sizing", "border-box");
textContainer.textContent = iptChild.value ? iptChild.value : iptChild.getAttribute("placeholder");
document.body.append(textContainer);
let containerWidth = textContainer.offsetWidth + 50;
textContainer.remove();
dom.style.setProperty("width", `${containerWidth}px`);
}
this.handleYears(key);
} catch (error) {
}
},
} }
} }
</script> </script>
...@@ -634,6 +748,7 @@ ...@@ -634,6 +748,7 @@
color: #0081FF; color: #0081FF;
} }
.tdjy{ .tdjy{
@import "@/assets/styles/search-common.scss";
.text_p{ .text_p{
color: #999999; color: #999999;
font-size: 14px; font-size: 14px;
...@@ -659,7 +774,7 @@ ...@@ -659,7 +774,7 @@
margin-right: 24px; margin-right: 24px;
} }
::v-deep .form-content-width{ ::v-deep .form-content-width{
width: 145px; width: 95px;
.el-select__input{ .el-select__input{
width: 10px !important; width: 10px !important;
max-width: 10px !important; max-width: 10px !important;
...@@ -675,6 +790,12 @@ ...@@ -675,6 +790,12 @@
background: #F4F6F9; background: #F4F6F9;
} }
} }
.el-select__tags {
flex-wrap: inherit;
.el-tag{
/*max-width: 130px;*/
}
}
} }
::v-deep .el-cascader{ ::v-deep .el-cascader{
width: 220px; width: 220px;
......
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