Commit 40df17e3 authored by danfuman's avatar danfuman

修改

parent 20650a06
import request from "@/utils/request";
// 大项目最新中标
export function bigWinningBidsPage(data) {
return request({
url: '/index/bigWinningBidsPage',
method: 'post',
data: data
})
}
// 大项目最新招标
export function bigBidPage(data) {
return request({
url: '/index/bigBidPage',
method: 'post',
data: data
})
}
...@@ -233,6 +233,17 @@ ul, li { ...@@ -233,6 +233,17 @@ ul, li {
.el-select .el-input .el-select__caret{ .el-select .el-input .el-select__caret{
color: #232323; color: #232323;
} }
.el-cascader .el-input .el-icon-arrow-down{
color: #232323;
}
.custom-money-select .el-input .el-icon-arrow-down{
color: #232323;
font-size: 14px;
}
.custom-time-select .el-input .el-icon-arrow-down{
color: #232323;
font-size: 14px;
}
.query-box{ .query-box{
justify-content: space-between; justify-content: space-between;
} }
......
<template>
<div :ref="refStr" class="custom-money-select screen-popper" id="custom-money-select">
<div :class="['input-block', isSelectOption?'rote':'']">
<div class="block" @click="isSelectOption=!isSelectOption" @mouseenter="handleMouseenter" @mouseleave="handleMouseleave">
<el-input class="custom-money-input" v-model="value" :placeholder="placeholder" readonly>
<template slot="suffix">
<span @click.stop="handleClear" :class="[isClear&&isHover?'el-icon-circle-close':'el-icon-arrow-down']"></span>
</template>
</el-input>
</div>
<div class="options-block" v-if="isSelectOption">
<div class="arrow"></div>
<div @click="handleClick(option)" :class="['option', value==option?'active':'']" :key="i" v-for="(option, i) in options">
<template v-if="option == '自定义'">
<!--<div class="number-box">-->
<!--<input type="number" v-model="startMoney" class="number-input" clearable>&nbsp;&nbsp;&nbsp;&nbsp;<input v-model="endMoney" class="number-input" type="text" clearable>&nbsp;&nbsp;万元&nbsp;&nbsp;<el-button @click.stop="handleConfirm" class="number-button" type="primary">确定</el-button>-->
<!--</div>-->
<div style="position: relative">
自定义
<div class="popper_box" style="position: absolute" v-if="value === '自定义'">
<div class="popper_wrap">
<el-input class="popper_input" type="number" clearable v-model="startMoney"></el-input>
</div>
<div class="popper_wrap">
<el-input class="popper_input" type="number" clearable v-model="endMoney"></el-input>
</div>
<div style="">
<el-button size="mini" @click.stop="cancellation">取消</el-button>
<el-button type="primary" size="mini" @click.stop="handleConfirm">确定</el-button>
</div>
</div>
</div>
</template>
<template v-else>
<span>{{option}}</span> <span v-if="value==option" class="el-icon-check"></span>
</template>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
props: {
'placeholder': {
type: String,
default: '请选择'
},
'ref-str': {
type: String,
default: `timeselect${String(Math.random(0, 100)).slice(2)}`,
},
permissions: { //文本权限相关字段
type: Array,
default: () => {},
},
powerLabel: {
type: String,
default: ''
},
moneyList: {
type: Array,
default: () => [],
}
},
computed: {
isClear() {
if(!this.isSelectOption && this.value) {
return true
}else {
return false
}
}
},
data() {
return {
value: '',
options: ['一亿以上', '5000万-1亿', '1000万-5000万', '1000万以下', '自定义'],
isSelectOption: false,
startMoney: '',
endMoney: '',
isHover: false
}
},
mounted() {
this.handleAppClick()
if(this.moneyList&&this.moneyList.length>0){
this.options = this.moneyList
}
},
destroyed() {
const app = document.getElementById('app')
app.removeEventListener('click', ()=>{}, true)
},
methods: {
// 判断是否点击的为组件内部
handleAppClick() {
const app = document.getElementById('app')
app.addEventListener('click', (e) => {
const dom = this.$refs[this.refStr]
const flag = dom && dom.contains(e.target)
// const flag = document.getElementById('custom-money-select').contains(e.target)
!flag ? this.isSelectOption = false : ''
// if(this.value == '自定义' && !this.startMoney && !this.endMoney) {
// this.value = ''
// this.$emit('input', '')
// this.$emit('handle-search')
// }
}, true)
},
// 清除
handleClear() {
if(this.isClear && this.isHover) {
this.value = ''
this.startMoney = ''
this.endMoney = ''
this.$emit('input', '')
this.$emit('handle-search')
}else {
this.isSelectOption = true
}
},
// 鼠标移入后的回调
handleMouseenter() {
this.isHover = true
},
// 鼠标离开后的回调
handleMouseleave() {
this.isHover = false
},
// 选项点击后的回调
handleClick(value) {
this.value = value
let moneyStr = ''
if(value == '自定义') {
this.value = '自定义';
}else {
this.startMoney = ''
this.endMoney = ''
this.isSelectOption = false
switch (value) {
case '10亿以上':
moneyStr = [100000]
break;
case '一亿以上':
moneyStr = [10000]
break;
case '5亿-10亿':
moneyStr = [50000, 100000]
break;
case '1亿-10亿':
moneyStr = [10000, 100000]
break;
case '1亿-5亿':
moneyStr = [10000, 50000]
break;
case '5000万-1亿':
moneyStr = [5000, 10000]
break;
case '1000万-5000万':
moneyStr = [1000, 5000]
break;
case '2000万-1亿':
moneyStr = [2000, 10000]
break;
case '400万-2000万':
moneyStr = [400, 2000]
break;
case '5000万以下':
moneyStr = [, 5000]
break;
case '1000万以下':
moneyStr = [, 1000]
break;
case '400万以下':
moneyStr = [, 400]
break;
default:
moneyStr = [, 1000]
break;
}
this.$emit('input', moneyStr)
this.$emit('handle-search')
}
},
// 自定义取消
cancellation(){
this.isSelectOption = false
this.value = ''
this.$emit('input', '')
this.$emit('handle-search')
},
// 自定义确认点击后的回调
handleConfirm() {
this.isSelectOption = false
if(!this.startMoney && !this.endMoney) {
this.value = ''
this.$emit('input', '')
}else {
if(this.endMoney && this.startMoney) {
this.value = `${this.startMoney}-${this.endMoney}万`
}else {
if(this.startMoney) {
this.value = `大于等于${this.startMoney}万`
}
if(this.endMoney) {
this.value = `小于等于${this.endMoney}万`
}
}
let moneyStr = [this.startMoney, this.endMoney]
this.$emit('input', moneyStr)
}
this.$emit('handle-search')
}
}
}
</script>
<style lang="scss">
.custom-money-select {
width: 120px;
height: 34px;
position: relative;
.input-block {
margin: 0;
width: 100%;
height: 100%;
cursor: pointer;
.block {
width: 100%;
height: 100%;
>.custom-money-input.el-input {
width: 100%;
height: 100%;
>input {
width: 100%;
height: 100%;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
border-radius: 2px;
}
}
}
.el-input__suffix {
transform: rotateZ(0);
width: 25px;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
}
&.rote {
.el-input__suffix {
transform: rotateZ(180deg);
}
}
}
.options-block {
position: absolute;
margin-top: 12px;
min-width: 120px;
font-size: 14px;
color: #666666;
background-color: #fff;
border: 1px solid #E4E7ED;
padding: 6px 0;
border-radius: 4px;
z-index: 10;
// .arrow {
// position: absolute;
// width: 0;
// height: 0;
// top: -12px;
// left: 35px;
// border: 6px solid transparent;
// border-bottom-color: #E4E7ED;
// &::after {
// position: absolute;
// display: inline-block;
// left: -4px;
// top: -2px;
// content: '';
// width: 0;
// height: 0;
// border: 4px solid transparent;
// border-bottom-color: #fff;
// z-index: 9;
// }
// }
.option {
padding: 0 24px 0 16px;
box-sizing: border-box;
width: 140px;
height: 36px;
display: flex;
justify-content: space-between;
align-items: center;
.number-box {
display: flex;
align-items: center;
>span {
margin: 0 10px;
}
.number-input {
padding: 0 24px 0 10px;
width: 100px !important;
height: 30px;
line-height: 30px;
border: none;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
border-radius: 2px;
&::-webkit-outer-spin-button,
&::-webkit-inner-spin-button {
-webkit-appearance: none;
}
&[type="number"]{
-moz-appearance: textfield;
}
}
.number-button {
padding: 0;
width: 60px;
height: 30px;
line-height: 30px;
margin-left: 10px;
}
}
>span {
display: inline-block;
}
&.active {
background-color: #F2F7FF;
color: #0381FA;
}
&:hover {
background-color: #F5F7FA;
}
}
}
.number-input {
padding: 0 24px 0 10px;
width: 60px !important;
height: 30px;
line-height: 30px;
border: none;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
width: 206px;
border: 1px solid #DCDCDC;
border-radius: 2px;
&::-webkit-outer-spin-button,
&::-webkit-inner-spin-button {
-webkit-appearance: none;
}
&[type="number"]{
-moz-appearance: textfield;
}
}
.number-button {
padding: 0;
width: 60px;
height: 30px;
line-height: 30px;
margin-left: 10px;
}
.popper_box {
position: absolute;
left: 128px;
bottom: -15px;
background: #ffffff;
width: 186px;
color: #606266;
text-indent: 0;
padding: 16px;
padding-top: 0px;
border: 1px solid #e0e0e0;
.popper_wrap {
margin-top: 16px;
display: inline-block;
.popper_input {
width: 100px;
display: inline-block;
margin: 0px 8px;
line-height: 34px;
}
.el-input__inner {
width: 100px;
}
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
-webkit-appearance: none !important;
}
input[type='number'] {
-moz-appearance: textfield;
}
}
.popper_box div:last-child {
display: flex;
justify-content: center;
margin-top: 16px;
}
}
</style>
...@@ -13,8 +13,8 @@ ...@@ -13,8 +13,8 @@
<span class="search-box-t" <span class="search-box-t"
:class=" queryParams.companyType|| :class=" queryParams.companyType||
queryParams.companyTypes.length > 0 ? 'search-box-ta' : ''" queryParams.companyTypes.length > 0 ? 'search-box-ta' : ''"
@click="handleSearch1">筛选<i :class="searchState ? 'el-icon-caret-top' : 'el-icon-caret-bottom'"></i></span> @click="handleSearch1">筛选<i :class="searchState ? 'el-icon-arrow-up' : 'el-icon-arrow-down'"></i></span>
<div v-show="searchState" ref="showContent" class="search-main"> <div v-show="searchState" id="showContent" class="search-main">
<div class="item"> <div class="item">
<span class="wrap_label">科技型企业</span> <span class="wrap_label">科技型企业</span>
<div class="item_ckquery"> <div class="item_ckquery">
...@@ -167,7 +167,8 @@ ...@@ -167,7 +167,8 @@
moneyList: ['1000万以下', '1000万-5000万', '5000万-1亿', '1亿-10亿','10亿以上', '自定义'], moneyList: ['1000万以下', '1000万-5000万', '5000万-1亿', '1亿-10亿','10亿以上', '自定义'],
qyType:[], qyType:[],
cgblList:['100%','50%以上','20%以上','5%以上','1%-5%'], cgblList:['100%','50%以上','20%以上','5%以上','1%-5%'],
cgblName:'' cgblName:'',
paramsData:[], //储存组件筛选的条件
} }
}, },
watch:{ watch:{
...@@ -218,13 +219,16 @@ ...@@ -218,13 +219,16 @@
// 筛选 // 筛选
handleSearch1(event){ handleSearch1(event){
// this.searchState=!this.searchState; // this.searchState=!this.searchState;
let dom = this.$refs.showContent; let dom = document.getElementById("showContent");
if(dom){
if (!dom.contains(event.target)) { if (!dom.contains(event.target)) {
this.searchState = !this.searchState; this.searchState = !this.searchState;
document.removeEventListener('click', this.handleQuery); document.removeEventListener('click', this.handleQuery);
} }
}
}, },
handleQuery(params){ handleQuery(params){
this.paramsData=params;
let data = this.getAreaList(params || this.queryParams) let data = this.getAreaList(params || this.queryParams)
memberList(data).then(res=>{ memberList(data).then(res=>{
this.isSkeleton = false this.isSkeleton = false
...@@ -292,8 +296,9 @@ ...@@ -292,8 +296,9 @@
}else{ }else{
this.queryParams[name] = [] this.queryParams[name] = []
} }
this.handleQuery(); this.paramsData.companyType=this.queryParams.companyType
// this.$forceUpdate(); this.paramsData.companyTypes=this.queryParams.companyTypes
this.handleQuery(this.paramsData);
}, },
handleChange(key,name) { handleChange(key,name) {
if(key === '1'){ if(key === '1'){
...@@ -354,6 +359,9 @@ ...@@ -354,6 +359,9 @@
provinceIds.length>0?params.provinceIds = provinceIds:'' provinceIds.length>0?params.provinceIds = provinceIds:''
cityIds.length>0?params.cityIds = cityIds:'' cityIds.length>0?params.cityIds = cityIds:''
districtIds.length>0?params.districtIds = districtIds:'' districtIds.length>0?params.districtIds = districtIds:''
// provinceIds.length>0?this.queryParams.provinceIds = provinceIds:''
// cityIds.length>0?this.queryParams.cityIds = cityIds:''
// districtIds.length>0?this.queryParams.districtIds = districtIds:''
} }
return params return params
}, },
...@@ -396,7 +404,7 @@ ...@@ -396,7 +404,7 @@
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
line-height: 32px; line-height: 32px;
color: #232323; color: #999999;
margin-right: 8px; margin-right: 8px;
text-align: center; text-align: center;
width: 82px; width: 82px;
...@@ -470,5 +478,24 @@ ...@@ -470,5 +478,24 @@
} }
} }
} }
::v-deep .el-table{
.has-gutter{
tr{
th:nth-last-child(2){
border-right:0;
}
td:nth-last-child(2){
border-right:0;
}
}
}
.el-table__cell.gutter{
background: #F0F3FA;
}
}
::v-deep .el-icon-arrow-down,.el-icon-arrow-up{
font-size: 14px;
color:#232323 !important;
}
} }
</style> </style>
...@@ -253,5 +253,20 @@ ...@@ -253,5 +253,20 @@
margin-right: 24px; margin-right: 24px;
} }
} }
::v-deep .el-table{
.has-gutter{
tr{
th:nth-last-child(2){
border-right:0;
}
td:nth-last-child(2){
border-right:0;
}
}
}
.el-table__cell.gutter{
background: #F0F3FA;
}
}
} }
</style> </style>
...@@ -60,7 +60,7 @@ ...@@ -60,7 +60,7 @@
{label: '拥有该资质成员', prop: 'companyCount', slot: true}, {label: '拥有该资质成员', prop: 'companyCount', slot: true},
], ],
formData: [ formData: [
{ type: 1, fieldName: 'qualificationType', value: '', placeholder: '筛选', options:[]}, { type: 1, fieldName: 'qualificationType', value: '', placeholder: '筛选', options:[],width:260},
], ],
tableData:[], tableData:[],
tableDataTotal:0, tableDataTotal:0,
...@@ -117,5 +117,20 @@ ...@@ -117,5 +117,20 @@
margin-right: 24px; margin-right: 24px;
} }
} }
::v-deep .el-table{
.has-gutter{
tr{
th:nth-last-child(2){
border-right:0;
}
td:nth-last-child(2){
border-right:0;
}
}
}
.el-table__cell.gutter{
background: #F0F3FA;
}
}
} }
</style> </style>
...@@ -19,8 +19,10 @@ ...@@ -19,8 +19,10 @@
style="margin: 12px;" style="margin: 12px;"
> >
<template slot="companyName" slot-scope="scope"> <template slot="companyName" slot-scope="scope">
<div @click="cancel">
<router-link :to="scope.row.uipId?`/enterprise/${encodeStr(scope.row.companyId)}`:`/company/${encodeStr(scope.row.companyId)}`" tag="a" class="a-link" v-if="scope.row.companyId&&scope.row.companyName" v-html="scope.row.companyName"></router-link> <router-link :to="scope.row.uipId?`/enterprise/${encodeStr(scope.row.companyId)}`:`/company/${encodeStr(scope.row.companyId)}`" tag="a" class="a-link" v-if="scope.row.companyId&&scope.row.companyName" v-html="scope.row.companyName"></router-link>
<div v-else v-html="scope.row.companyName || '--'"></div> </div>
<!--<div v-else v-html="scope.row.companyName || '&#45;&#45;'"></div>-->
</template> </template>
</tables> </tables>
</el-drawer> </el-drawer>
......
...@@ -399,7 +399,7 @@ export default { ...@@ -399,7 +399,7 @@ export default {
.popper_box { .popper_box {
position: absolute; position: absolute;
left: 128px; left: 125px;
bottom: -15px; bottom: -15px;
background: #ffffff; background: #ffffff;
width: 186px; width: 186px;
...@@ -407,7 +407,7 @@ export default { ...@@ -407,7 +407,7 @@ export default {
text-indent: 0; text-indent: 0;
padding: 16px; padding: 16px;
padding-top: 0px; padding-top: 0px;
border: 1px solid #e0e0e0; border: 1px solid #E4E7ED;
.popper_wrap { .popper_wrap {
margin-top: 16px; margin-top: 16px;
display: inline-block; display: inline-block;
......
...@@ -179,6 +179,9 @@ export default { ...@@ -179,6 +179,9 @@ export default {
height: 34px; height: 34px;
line-height: 34px; line-height: 34px;
padding-right: 27px; padding-right: 27px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
} }
::v-deep .el-form-item{ ::v-deep .el-form-item{
margin-right: 8px !important; margin-right: 8px !important;
...@@ -213,12 +216,12 @@ export default { ...@@ -213,12 +216,12 @@ export default {
display: flex; display: flex;
border-radius: 2px 0px 0px 2px; border-radius: 2px 0px 0px 2px;
border: 1px solid #D9D9D9; border: 1px solid #D9D9D9;
line-height: 32px; line-height: 34px;
height: 32px; height: 34px;
span { span {
width: 60px; width: 60px;
height: 30px; height: 32px;
line-height: 28px; line-height: 32px;
font-size: 14px; font-size: 14px;
background: #F5F5F5; background: #F5F5F5;
text-align: center; text-align: center;
...@@ -240,11 +243,13 @@ export default { ...@@ -240,11 +243,13 @@ export default {
} }
::v-deep .el-input__inner { ::v-deep .el-input__inner {
border: 0; border: 0;
line-height: 30px; line-height: 32px;
height: 30px; height: 32px;
position: absolute; position: absolute;
top: 0; top: 0;
padding-right: 32px; padding-right: 22px;
font-size: 12px;
padding-left: 8px;
} }
} }
.fromTime{ .fromTime{
......
...@@ -53,12 +53,12 @@ ...@@ -53,12 +53,12 @@
<div class="search"> <div class="search">
<el-form ref="queryForm" :model="queryParams" :inline="true" size="small"> <el-form ref="queryForm" :model="queryParams" :inline="true" size="small">
<el-form-item prop="address"> <el-form-item prop="address">
<el-select v-model="queryParams.address" placeholder="项目地区"> <el-select v-model="queryParams.address" placeholder="项目地区" style="width: 150px;">
<el-option v-for="(item,index) in addressList" :key="index" :label="item.label" :value="item.value"></el-option> <el-option v-for="(item,index) in addressList" :key="index" :label="item.label" :value="item.value"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item prop="type"> <el-form-item prop="type">
<el-select v-model="queryParams.type" placeholder="项目类型"> <el-select v-model="queryParams.type" multiple collapse-tags clearable placeholder="项目类型" :class="queryParams.type.length > 1 ? 'selectTag' : ''" style="width: 170px;">
<el-option v-for="(item,index) in typeList" :key="index" :label="item" :value="item"></el-option> <el-option v-for="(item,index) in typeList" :key="index" :label="item" :value="item"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
...@@ -99,19 +99,27 @@ ...@@ -99,19 +99,27 @@
<el-col :span="10"> <el-col :span="10">
<div class="search"> <div class="search">
<el-form ref="queryForm" :model="queryParams" :inline="true" size="small"> <el-form ref="queryForm" :model="queryParams" :inline="true" size="small">
<el-form-item prop="money">
<custom-money-select
:moneyList="moneyList"
v-model="queryParams.money"
placeholder="中标金额"
@handle-search="changeSelect" />
</el-form-item>
<el-form-item prop="address"> <el-form-item prop="address">
<el-select v-model="queryParams.address" placeholder="项目地区"> <el-select v-model="queryParams.address" placeholder="项目地区" style="width: 150px;">
<el-option v-for="(item,index) in addressList" :key="index" :label="item.label" :value="item.value"></el-option> <el-option v-for="(item,index) in addressList" :key="index" :label="item.label" :value="item.value"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item prop="type"> <el-form-item prop="type">
<el-select v-model="queryParams.type" placeholder="项目类型"> <el-select v-model="queryParams.type" multiple collapse-tags clearable placeholder="项目类型" :class="queryParams.type.length > 1 ? 'selectTag' : ''" style="width: 170px;">
<el-option v-for="(item,index) in typeList" :key="index" :label="item" :value="item"></el-option> <el-option v-for="(item,index) in typeList" :key="index" :label="item" :value="item"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item prop="time"> <el-form-item prop="time">
<custom-time-select <custom-time-select
:timeList="timeList" :timeList="timeList"
v-model="queryParams.time"
placeholder="中标日期" placeholder="中标日期"
@handle-search="changeSelect"/> @handle-search="changeSelect"/>
</el-form-item> </el-form-item>
...@@ -133,22 +141,62 @@ ...@@ -133,22 +141,62 @@
</el-col> </el-col>
</el-row> </el-row>
</div> </div>
<!--<div class="content content_wap3">--> <div class="content_wap3">
<!--<div class="head"></div>--> <el-tabs v-model="activeName" @tab-click="handleClickTab">
<!--<div class="list">--> <el-tab-pane label="大项目最新中标" name="first">
<!--<div class="item" v-for="(item,index) in projectList" :key="index">--> <div class="list">
<!--<h3>{{item.projectName}}</h3>--> <div class="item" v-for="(item,index) in projectList" :key="index">
<!--<p>--> <p class="list-title"><router-link :to="`/biddetail/${item.id}`" tag="a" class="a-link" v-if="item.id" v-html="item.projectName"></router-link></p>
<!--<span>中标企业:</span>--> <div class="list-content">
<!--<span>{{item.enterprise}}</span>--> <p class="list-content-text">
<!--</p>--> <span>中标企业:</span>
<!--<p>--> <span>{{item.companyName || '--'}}</span>
<!--<span>中标金额:</span>--> </p>
<!--<span>{{item.amount}}</span>--> <p class="list-content-text">
<!--</p>--> <span>中标金额:</span>
<!--</div>--> <span>{{item.amount}}万元</span>
<!--</div>--> </p>
<!--</div>--> <p class="list-content-text">
<span>中标日期:</span>
<span>{{item.winBidTime || '--'}}</span>
</p>
<p class="list-content-text">
<span>招标人:</span>
<span>{{item.projectUnit || '--'}}</span>
</p>
</div>
</div>
</div>
<div class="pagination-box" v-if="totalCount>queryParams2.pageSize">
<el-pagination background :current-page="queryParams2.pageNum" :page-size="queryParams2.pageSize" :total="totalCount" layout="prev, pager, next, jumper" @current-change="handleCurrentChange" @size-change="handleSizeChange" />
</div>
</el-tab-pane>
<el-tab-pane label="大项目最新招标" name="second">
<div class="list">
<div class="item" v-for="(item,index) in zbList" :key="index">
<p class="list-title"><router-link :to="`/biddetail/${item.bid}`" tag="a" class="a-link" v-if="item.bid" v-html="item.projectName"></router-link></p>
<div class="list-content">
<p class="list-content-text">
<span>总投资:</span>
<span>{{item.projectAmount}}万元</span>
</p>
<p class="list-content-text">
<span>招标人:</span>
<span>{{item.tenderee || '--'}}</span>
</p>
<p class="list-content-text">
<span>发布日期:</span>
<span>{{item.issueTime || '--'}}</span>
</p>
</div>
</div>
</div>
<div class="pagination-box" v-if="zbTableTotal>queryParams3.pageSize">
<el-pagination background :current-page="queryParams3.pageNum" :page-size="queryParams3.pageSize" :total="zbTableTotal" layout="prev, pager, next, jumper" @current-change="handleCurrentChange" @size-change="handleSizeChange" />
</div>
</el-tab-pane>
</el-tabs>
</div>
</div> </div>
<!--员工视角--> <!--员工视角-->
<div class="staff" v-if="user === 2"> <div class="staff" v-if="user === 2">
...@@ -212,7 +260,7 @@ ...@@ -212,7 +260,7 @@
</div> </div>
</div> </div>
<div class="trends"> <div class="trends">
<el-tabs v-model="activeName" @tab-click="handleClickTab"> <el-tabs v-model="activeName" @tab-click="handleClickTab1">
<el-tab-pane label="甲方舆情" name="first"> <el-tab-pane label="甲方舆情" name="first">
<div class="main-box"> <div class="main-box">
<el-timeline> <el-timeline>
...@@ -351,10 +399,12 @@ ...@@ -351,10 +399,12 @@
import dataRegion from '@/assets/json/dataRegion' import dataRegion from '@/assets/json/dataRegion'
import "@/assets/styles/public.css"; import "@/assets/styles/public.css";
import CustomTimeSelect from './component/CustomTimeSelect' import CustomTimeSelect from './component/CustomTimeSelect'
import CustomMoneySelect from './component/CustomMoneySelect'
import { bigWinningBidsPage,bigBidPage } from '@/api/index'
export default { export default {
name: "Index", name: "Index",
components: { components: {
CustomTimeSelect, CustomTimeSelect,CustomMoneySelect,
}, },
data() { data() {
return { return {
...@@ -578,47 +628,48 @@ export default { ...@@ -578,47 +628,48 @@ export default {
}, },
], ],
addressList:[], addressList:[],
typeList:['施工类项目'], typeList:['施工类项目','施工类项目1','施工类项目2','施工类项目3','施工类项目4'],
queryParams:{ queryParams:{
address:'', address:'',
type:'' type:[],
money:'',
time:'',
}, },
timeList: ['近三天', '近七天', '近半月', '自定义'], queryParams1:{
projectList:[ address:'',
{ type:[],
projectName:'永川综合保税区建设工程项目二期 (第一批建设项目) EPC总承包联合体2', money:'',
enterprise:'平庆渝西保税产业发展有限公司', time:'',
amount:'33333万元', },
time:'2022-03-05', queryParams2:{
zbr:'重庆渝西保税产业发展有限公司' provinceId:'',
}, projects:[],
{ amount:'',
projectName:'永川综合保税区建设工程项目二期 (第一批建设项目) EPC总承包联合体2', time:'',
enterprise:'平庆渝西保税产业发展有限公司', pageNum:1,
amount:'33333万元', pageSize:10
time:'2022-03-05', },
zbr:'重庆渝西保税产业发展有限公司' queryParams3:{
}, provinceId:'',
{ projects:[],
projectName:'永川综合保税区建设工程项目二期 (第一批建设项目) EPC总承包联合体2', amount:'',
enterprise:'平庆渝西保税产业发展有限公司', time:'',
amount:'33333万元', pageNum:1,
time:'2022-03-05', pageSize:10
zbr:'重庆渝西保税产业发展有限公司'
},
{
projectName:'永川综合保税区建设工程项目二期 (第一批建设项目) EPC总承包联合体2',
enterprise:'平庆渝西保税产业发展有限公司',
amount:'33333万元',
time:'2022-03-05',
zbr:'重庆渝西保税产业发展有限公司'
}, },
] timeList: ['近三天', '近七天', '近半月', '自定义'],
moneyList: ['2亿以上', '5亿以上', '10亿以上', '自定义'],
projectList:[],
zbList:[],
totalCount:0,
zbTableTotal:0,
}; };
}, },
created() { created() {
this.dataRegion() this.dataRegion()
this.getBigWinningBidsPage()
if(this.user === 1){ if(this.user === 1){
this.$nextTick(()=>{ this.$nextTick(()=>{
this.initChart(this.jtList) this.initChart(this.jtList)
...@@ -627,6 +678,26 @@ export default { ...@@ -627,6 +678,26 @@ export default {
} }
}, },
methods: { methods: {
getBigWinningBidsPage(){
let params={}
bigWinningBidsPage(this.queryParams2).then(res=>{
console.log(res)
if(res.code == 200){
this.projectList=res.rows;
this.totalCount=res.total;
}
})
},
getBigBidPage(){
let params={}
bigBidPage(this.queryParams3).then(res=>{
console.log(res)
if(res.code == 200){
this.zbList=res.rows;
this.zbTableTotal=res.total;
}
})
},
//地区 //地区
async dataRegion() { async dataRegion() {
var str = []; var str = [];
...@@ -939,8 +1010,14 @@ export default { ...@@ -939,8 +1010,14 @@ export default {
}); });
}, },
handleClickTab(){ handleClickTab(){
if(this.activeName === 'first'){
this.getBigWinningBidsPage()
}
if(this.activeName === 'second'){
this.getBigBidPage()
}
}, },
handleClickTab1(){},
handleChange(){ handleChange(){
this.user = this.user === 1 ? 2 : 1; this.user = this.user === 1 ? 2 : 1;
if(this.user === 1){ if(this.user === 1){
...@@ -954,6 +1031,12 @@ export default { ...@@ -954,6 +1031,12 @@ export default {
console.log("11111") console.log("11111")
// this.$emit('handle-search') // this.$emit('handle-search')
}, },
handleCurrentChange(){
},
handleSizeChange(){
},
} }
}; };
</script> </script>
...@@ -1181,14 +1264,98 @@ export default { ...@@ -1181,14 +1264,98 @@ export default {
} }
} }
.content_wap3{ .content_wap3{
.head{ margin-top: 12px;
height: 56px; background: #ffffff;
::v-deep .el-tabs{
.el-tabs__header{
margin-bottom: 0;
}
.el-tabs__item{
height: 54px;
line-height: 54px;
font-size: 16px;
}
.el-tabs__item.is-active{
font-weight: 700;
color: #232323;
}
.el-tabs__nav-wrap{
padding:0 24px;
}
.el-tabs__active-bar{
border-radius: 8px;
}
.el-tabs__nav-wrap::after{
height: 1px;
}
}
.list{
margin: 0 16px;
.item{
border-bottom: 1px solid #EFEFEF; border-bottom: 1px solid #EFEFEF;
padding: 16px 0;
.list-title{
font-size: 16px;
font-weight: 700;
color: #3D3D3D;
line-height: 23px;
cursor: pointer;
.list-titel-a{
text-decoration: none;
color:#3D3D3D;
} }
a{
color: #3D3D3D;
} }
a:hover{
color:#0081FF;
}
}
.list-content {
margin-top: 16px;
display: flex;
justify-content: start;
align-items: center;
.list-content-text {
display: flex;
justify-content: start;
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;
} }
}
}
}
}
}
::v-deep .selectTag{
.el-select__tags{
.el-tag{
&:first-child{
width: 90px;
}
}
}
}
}
......
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