Commit 14a29418 authored by liuChang's avatar liuChang

Merge branch 'dev20230707' of 192.168.60.201:root/dsk-operate-sys into dev20230707

parents 8dd2ab1f bf6d870e
...@@ -50,3 +50,20 @@ export function businessList(data) { ...@@ -50,3 +50,20 @@ export function businessList(data) {
data: data data: data
}) })
} }
// 集团招标
export function bidPage(data) {
return request({
url: '/combine/info/bidPage',
method: 'post',
data: data
})
}
// 集团招标导出
export function exportBid(data) {
return request({
url: '/combine/info/export/bid',
method: 'post',
data: data
})
}
...@@ -121,7 +121,7 @@ aside { ...@@ -121,7 +121,7 @@ aside {
//main-container全局样式 //main-container全局样式
.app-container { .app-container {
padding: 16px; //padding: 16px;
//margin-top: 56px; //margin-top: 56px;
} }
...@@ -223,6 +223,7 @@ ul, li { ...@@ -223,6 +223,7 @@ ul, li {
.app-container { .app-container {
margin: 12px 24px; margin: 12px 24px;
background-color: #f5f5f5; background-color: #f5f5f5;
padding-bottom: 16px !important;
.el-input__inner{ .el-input__inner{
border-color: #D9D9D9; border-color: #D9D9D9;
color: #232323; color: #232323;
...@@ -262,6 +263,19 @@ ul, li { ...@@ -262,6 +263,19 @@ ul, li {
} }
} }
.query-ability{ .query-ability{
.total{
display: flex !important;
flex-direction: row;
align-items: center;
&:before {
content: "";
display: inline-block;
width: 2px;
height: 2px;
background: rgba(35, 35, 35, 0.4);
margin-right: 4px;
}
}
span{ span{
font-size: 14px; font-size: 14px;
color: #232323; color: #232323;
......
...@@ -88,7 +88,7 @@ export default { ...@@ -88,7 +88,7 @@ export default {
overflow: inherit; overflow: inherit;
/*position: relative;*/ /*position: relative;*/
background: #fff; background: #fff;
box-shadow: 0 1px 4px rgba(0,21,41,.08); /*box-shadow: 0 1px 4px rgba(0,21,41,.08);*/
position: fixed; position: fixed;
top:0; top:0;
z-index: 999; z-index: 999;
......
...@@ -63,7 +63,7 @@ export default { ...@@ -63,7 +63,7 @@ export default {
saveAs(text, name, opts); saveAs(text, name, opts);
}, },
exportByPost(url, params){ exportByPost(url, params,name){
var url = baseURL + url var url = baseURL + url
axios({ axios({
method: 'post', method: 'post',
...@@ -72,8 +72,12 @@ export default { ...@@ -72,8 +72,12 @@ export default {
data: params, data: params,
headers: { 'Authorization': 'Bearer ' + getToken() } headers: { 'Authorization': 'Bearer ' + getToken() }
}).then(res => { }).then(res => {
const blob = new Blob([res.data], { type: 'application/octet-stream/pdf/doc/xlsx/xls/docx' }) const blob = new Blob([res.data], { type: 'application/octet-stream/pdf/doc/xlsx/xls/docx/excel' })
this.saveAs(blob, decodeURI(res.headers['download-filename'])) if(name){
this.saveAs(blob, name)
}else {
this.saveAs(blob, decodeURI(res.headers['download-filename']))
}
}) })
}, },
async printErrMsg(data) { async printErrMsg(data) {
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
</div> </div>
</div> </div>
<skeleton v-if="isSkeleton"></skeleton> <skeleton v-if="isSkeleton"></skeleton>
<el-table v-if="!isSkeleton&&tableData.total > 0" class="fixed-table" max-height="640" <el-table v-if="!isSkeleton&&tableData.total > 0" class="fixed-table" v-horizontal-scroll="'always'" max-height="640"
:data="tableData.rows" :data="tableData.rows"
stripe border stripe border
style="width: 100%"> style="width: 100%">
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
prop="index" prop="index"
label="序号" label="序号"
fixed="left" fixed="left"
width="47"> width="60">
<template slot-scope='scope'> <template slot-scope='scope'>
<span>{{ (searchParam.pageNum - 1) * searchParam.pageSize + scope.$index + 1 }}</span> <span>{{ (searchParam.pageNum - 1) * searchParam.pageSize + scope.$index + 1 }}</span>
</template> </template>
...@@ -51,7 +51,7 @@ ...@@ -51,7 +51,7 @@
<el-table-column <el-table-column
prop="cooperationProject" prop="cooperationProject"
label="合作项目" label="合作项目"
width="76"> width="90">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.cooperationProject || '--'}} {{scope.row.cooperationProject || '--'}}
</template> </template>
...@@ -59,7 +59,7 @@ ...@@ -59,7 +59,7 @@
<el-table-column <el-table-column
prop="followProject" prop="followProject"
label="跟进项目" label="跟进项目"
width="76"> width="90">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.followProject || '--'}} {{scope.row.followProject || '--'}}
</template> </template>
...@@ -67,7 +67,7 @@ ...@@ -67,7 +67,7 @@
<el-table-column <el-table-column
prop="reserveProject" prop="reserveProject"
label="储备项目" label="储备项目"
width="76"> width="90">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.reserveProject || '--'}} {{scope.row.reserveProject || '--'}}
</template> </template>
...@@ -91,7 +91,7 @@ ...@@ -91,7 +91,7 @@
<el-table-column <el-table-column
prop="registerCapitalStr" prop="registerCapitalStr"
label="注册资本金(万元)" label="注册资本金(万元)"
width="140"> width="160">
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.registerCapital && scope.row.registerCapital>0">{{scope.row.registerCapital}}</span><span v-else>--</span> <span v-if="scope.row.registerCapital && scope.row.registerCapital>0">{{scope.row.registerCapital}}</span><span v-else>--</span>
</template> </template>
......
...@@ -108,7 +108,7 @@ ...@@ -108,7 +108,7 @@
<div class="content_wap3"> <div class="content_wap3">
<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="title">跟进动态</span> <span class="item_title">跟进动态</span>
</div> </div>
<div class="flex-box time-label"> <div class="flex-box time-label">
<div class="labels"> <div class="labels">
...@@ -689,14 +689,6 @@ ...@@ -689,14 +689,6 @@
border: 1px solid #0081FF; border: 1px solid #0081FF;
color: #ffffff; color: #ffffff;
background: #0081FF; background: #0081FF;
/*.el-button{*/
/*border: 1px solid #0081FF;*/
/*span{*/
/*color: #ffffff;*/
/*background: #0081FF;*/
/*border: 1px solid #0081FF;*/
/*}*/
/*}*/
} }
...@@ -856,7 +848,7 @@ ...@@ -856,7 +848,7 @@
.query-box{ .query-box{
padding:16px; padding:16px;
} }
.title{ .item_title{
font-weight: 700; font-weight: 700;
color: #232323; color: #232323;
font-size: 16px; font-size: 16px;
......
...@@ -53,12 +53,14 @@ export default { ...@@ -53,12 +53,14 @@ export default {
{title: '集团成员', pathName: 'members'}, {title: '集团成员', pathName: 'members'},
{title: '集团资质', pathName: 'qualifications'}, {title: '集团资质', pathName: 'qualifications'},
{title: '集团业绩', pathName: 'performance'}, {title: '集团业绩', pathName: 'performance'},
{title: '集团招标', pathName: 'zhaobiao'},
], ],
defaultRoute: [], defaultRoute: [],
customer:[ customer:[
'members', 'members',
'qualifications', 'qualifications',
'performance', 'performance',
'zhaobiao',
], ],
uniqueOpened:false, uniqueOpened:false,
searchIndex: '' searchIndex: ''
......
...@@ -171,7 +171,7 @@ ...@@ -171,7 +171,7 @@
qyType:[], qyType:[],
cgblList:['100%','50%以上','20%以上','5%以上','1%-5%'], cgblList:['100%','50%以上','20%以上','5%以上','1%-5%'],
cgblName:'', cgblName:'',
paramsData:[], //储存组件筛选的条件 paramsData:{}, //储存组件筛选的条件
} }
}, },
watch:{ watch:{
...@@ -244,7 +244,7 @@ ...@@ -244,7 +244,7 @@
} }
}, },
handleQuery(params){ handleQuery(params){
this.paramsData=params; this.paramsData=params || {};
this.tableLoading=true this.tableLoading=true
let data = this.getAreaList(params || this.queryParams) let data = this.getAreaList(params || this.queryParams)
memberList(data).then(res=>{ memberList(data).then(res=>{
...@@ -400,7 +400,11 @@ ...@@ -400,7 +400,11 @@
}, },
sortChange({ column, prop, order }){ sortChange({ column, prop, order }){
this.queryParams.orderName = prop this.queryParams.orderName = prop
this.paramsData.orderName = prop this.paramsData.orderName = prop;
this.paramsData.combineId = this.customerId;
this.paramsData.pageNum = 1;
this.paramsData.pageSize = 20;
if(column.order === "ascending"){ if(column.order === "ascending"){
this.queryParams.orderType = 'asc' this.queryParams.orderType = 'asc'
this.paramsData.orderType = 'asc' this.paramsData.orderType = 'asc'
......
...@@ -5,8 +5,9 @@ ...@@ -5,8 +5,9 @@
:form-data="formData" :form-data="formData"
:query-params="queryParams" :query-params="queryParams"
:total="tableDataTotal" :total="tableDataTotal"
:isExcel="false" :isExcel="true"
@handle-search="handleSearch" @handle-search="handleSearch"
@handle-excel="clickEXCEL"
> >
<template slot="slot"> <template slot="slot">
...@@ -57,7 +58,7 @@ ...@@ -57,7 +58,7 @@
import { getDictType } from '@/api/main' import { getDictType } from '@/api/main'
export default { export default {
name: 'qualifications', name: 'qualifications',
props: ['customerId'], props: ['customerId','combineName'],
mixins: [mixin], mixins: [mixin],
components:{}, components:{},
data(){ data(){
...@@ -103,6 +104,7 @@ ...@@ -103,6 +104,7 @@
], ],
timeList: ['近三天', '近七天', '近半月', '自定义'], timeList: ['近三天', '近七天', '近半月', '自定义'],
moneyList: ['5000万以下', '5000万-1亿', '1亿-5亿', '5亿-10亿','10亿以上', '自定义'], moneyList: ['5000万以下', '5000万-1亿', '1亿-5亿', '5亿-10亿','10亿以上', '自定义'],
dataEXCEL:{}
} }
}, },
created() { created() {
...@@ -162,6 +164,7 @@ ...@@ -162,6 +164,7 @@
} }
delete data.cgbl delete data.cgbl
} }
this.dataEXCEL=data;
businessList(data).then(res=>{ businessList(data).then(res=>{
this.tableData = res.code == 200 ? res.rows:[] this.tableData = res.code == 200 ? res.rows:[]
this.tableDataTotal = res.total this.tableDataTotal = res.total
...@@ -263,6 +266,12 @@ ...@@ -263,6 +266,12 @@
// this.$children[1].$refs.tableRef.bodyWrapper.scrollTop = 0 // this.$children[1].$refs.tableRef.bodyWrapper.scrollTop = 0
}, 500); }, 500);
}, },
clickEXCEL() {
this.dataEXCEL.combineName=this.combineName;
this.dataEXCEL.pageSize=this.tableDataTotal;
delete this.dataEXCEL.pageNum
this.$download.exportByPost('/combine/info/export/win/bid',this.dataEXCEL,'集团中标.xlsx');
},
} }
} }
</script> </script>
......
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
import QualificationsDetail from './qualificationsDetail' import QualificationsDetail from './qualificationsDetail'
export default { export default {
name: 'qualifications', name: 'qualifications',
props: ['customerId','name'], props: ['customerId','combineName'],
mixins: [mixin], mixins: [mixin],
components:{ components:{
QualificationsDetail QualificationsDetail
...@@ -65,7 +65,7 @@ ...@@ -65,7 +65,7 @@
tableData:[], tableData:[],
tableDataTotal:0, tableDataTotal:0,
title:'', title:'',
rowData:'' rowData:'',
} }
}, },
created() { created() {
...@@ -75,7 +75,8 @@ ...@@ -75,7 +75,8 @@
methods: { methods: {
handleQuery(params){ handleQuery(params){
this.isSkeleton = true this.isSkeleton = true
let data = params ? params : this.queryParams let data = params ? params : this.queryParams;
certificateList(data).then(res=>{ certificateList(data).then(res=>{
this.isSkeleton = false this.isSkeleton = false
if(res.code === 200){ if(res.code === 200){
...@@ -98,10 +99,11 @@ ...@@ -98,10 +99,11 @@
}) })
}, },
handleClick(e, data) { handleClick(e, data) {
this.title=this.name+'-'+data.qualificationName+'(共'+ data.companyCount +'条)' this.title=this.combineName+'-'+data.qualificationName+'(共'+ data.companyCount +'条)'
this.rowData = data this.rowData = data
this.isDetails = true this.isDetails = true
}, },
} }
} }
</script> </script>
......
...@@ -6,11 +6,15 @@ ...@@ -6,11 +6,15 @@
custom-class="client-drawer" custom-class="client-drawer"
:with-header="false" :with-header="false"
@closed="cancel"> @closed="cancel">
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton> <div class="head">
<div class="head" v-if="!isSkeleton">
<img class="tip-img" src="@/assets/images/icon.png" /> <img class="tip-img" src="@/assets/images/icon.png" />
<span>{{title}}</span> <span>{{title}}</span>
</div> </div>
<div class="cooperate-name" id="focus01">
<el-input clearable @clear="changeSelect" style="width: 300px;" @focus="clickFocus('focus01')" @blur="clickFocus('focus01')" v-model="queryParams.companyName" placeholder="成员名称查询"></el-input>
<span @click="changeSelect">搜索</span>
</div>
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton>
<tables <tables
v-if="!isSkeleton" v-if="!isSkeleton"
:tableLoading="tableLoading" :tableLoading="tableLoading"
...@@ -18,6 +22,7 @@ ...@@ -18,6 +22,7 @@
:forData="forData" :forData="forData"
:tableDataTotal="tableDataTotal" :tableDataTotal="tableDataTotal"
:queryParams="queryParams" :queryParams="queryParams"
:MaxPage=500
@handle-current-change="handleCurrentChange" @handle-current-change="handleCurrentChange"
style="margin: 12px;" style="margin: 12px;"
> >
...@@ -50,11 +55,9 @@ export default { ...@@ -50,11 +55,9 @@ export default {
queryParams: { queryParams: {
id: this.data.id, id: this.data.id,
pageNum: 1, pageNum: 1,
pageSize: 10 pageSize: 10,
companyName:''
}, },
formData: [
{ type: 3, fieldName: 'keys', value: '', placeholder: '输入项目/工程名称查询', options: []},
],
forData: [ forData: [
{label: '拥有该资质成员', prop: 'companyName', slot: true}, {label: '拥有该资质成员', prop: 'companyName', slot: true},
{label: '成员共有资质(个)', prop: 'certificateCount'}, {label: '成员共有资质(个)', prop: 'certificateCount'},
...@@ -73,7 +76,8 @@ export default { ...@@ -73,7 +76,8 @@ export default {
methods: { methods: {
async handleQuery(params) { async handleQuery(params) {
this.isSkeleton = true this.isSkeleton = true
let param = params?params:this.queryParams let param = params?params:this.queryParams;
console.log(param)
let res = await memberCertificateList(param) let res = await memberCertificateList(param)
this.isSkeleton = false this.isSkeleton = false
if(res.code==200){ if(res.code==200){
...@@ -94,7 +98,19 @@ export default { ...@@ -94,7 +98,19 @@ export default {
}, },
cancel() { cancel() {
this.$emit('cancel') this.$emit('cancel')
} },
changeSelect(){
this.queryParams.pageNum = 1
this.handleQuery()
},
clickFocus(e){
document.getElementById(e).classList.toggle('span-ba')
},
//分页
handleCurrentChange(e){
this.queryParams.pageNum = e
this.handleQuery()
},
} }
} }
</script> </script>
...@@ -114,5 +130,48 @@ export default { ...@@ -114,5 +130,48 @@ export default {
height: 17px; height: 17px;
margin: 0 8px -2px 12px; margin: 0 8px -2px 12px;
} }
.cooperate-name {
display: flex;
border-radius: 2px 0px 0px 2px;
border: 1px solid #D9D9D9;
line-height: 34px;
height: 34px;
width: 300px;
float: right;
margin: 12px;
span {
width: 80px;
height: 32px;
line-height: 32px;
font-size: 14px;
background: #F5F5F5;
text-align: center;
color: #0081FF;
border: 1px solid #EFEFEF;
border-left: 0;
cursor: pointer;
}
&.span-ba{
border: 1px solid #0081FF;
span{
color: #ffffff;
background: #0081FF;
border: 1px solid #0081FF;
}
}
::v-deep .el-input{
flex: 1;
}
::v-deep .el-input__inner {
border: 0;
line-height: 32px;
height: 32px;
position: absolute;
top: 0;
padding-right: 22px;
font-size: 12px;
padding-left: 8px;
}
}
} }
</style> </style>
...@@ -12,9 +12,10 @@ ...@@ -12,9 +12,10 @@
</div> </div>
<div class="group-right"> <div class="group-right">
<div id="groupBox" v-if="customerId"> <div id="groupBox" v-if="customerId">
<Members v-if="currentPath.pathName=='members'" :customer-id="customerId" :isSkeleton="isSkeleton" /> <Members v-if="currentPath.pathName=='members'" :customer-id="customerId" :isSkeleton="isSkeleton" :combineName="name"/>
<Qualifications v-if="currentPath.pathName=='qualifications'" :customer-id="customerId" :isSkeleton="isSkeleton" :name="name"/> <Qualifications v-if="currentPath.pathName=='qualifications'" :customer-id="customerId" :isSkeleton="isSkeleton" :combineName="name"/>
<Performance v-if="currentPath.pathName=='performance'" :customer-id="customerId" :isSkeleton="isSkeleton"/> <Performance v-if="currentPath.pathName=='performance'" :customer-id="customerId" :isSkeleton="isSkeleton" :combineName="name"/>
<Zhaobiao v-if="currentPath.pathName=='zhaobiao'" :customer-id="customerId" :isSkeleton="isSkeleton" :combineName="name"/>
</div> </div>
</div> </div>
</div> </div>
...@@ -27,12 +28,13 @@ ...@@ -27,12 +28,13 @@
import Members from "./component/members" import Members from "./component/members"
import Qualifications from "./component/qualifications" import Qualifications from "./component/qualifications"
import Performance from "./component/performance" import Performance from "./component/performance"
import Zhaobiao from "./component/zhaobiao"
import { infoHeader } from '@/api/detail/party-a/index' import { infoHeader } from '@/api/detail/party-a/index'
import elementResizeDetectorMaker from "element-resize-detector" import elementResizeDetectorMaker from "element-resize-detector"
export default { export default {
name: 'GroupAccount', name: 'GroupAccount',
components:{ components:{
SideBar,Members,Qualifications,Performance SideBar,Members,Qualifications,Performance,Zhaobiao
}, },
data(){ data(){
return{ return{
...@@ -77,6 +79,8 @@ ...@@ -77,6 +79,8 @@
} }
.group-left{ .group-left{
margin-right: 16px; margin-right: 16px;
padding-bottom: 16px;
background: #FFFFFF;
} }
.group-right{ .group-right{
min-width: 1088px; min-width: 1088px;
......
...@@ -7,15 +7,15 @@ ...@@ -7,15 +7,15 @@
<div class="from-item" :key="i" v-for="(form, i) in formData"> <div class="from-item" :key="i" v-for="(form, i) in formData">
<!-- 单选 --> <!-- 单选 -->
<template v-if="form.type==1"> <template v-if="form.type==1">
<el-select <el-select
v-model="form.value" v-model="form.value"
clearable clearable
class="form-content-width" class="form-content-width"
:style="form.width?'width:'+form.width+'px':'max-width: 110px'" :style="form.width?'width:'+form.width+'px':'max-width: 110px'"
:placeholder="form.placeholder" :placeholder="form.placeholder"
@change="changeSelect"> @change="changeSelect">
<el-option v-for="(item, index) in form.options" :key="index" :label="item.name" :value="item.value" :disabled="item.disabled"/> <el-option v-for="(item, index) in form.options" :key="index" :label="item.name" :value="item.value" :disabled="item.disabled"/>
</el-select> </el-select>
</template> </template>
<!-- 年月日 --> <!-- 年月日 -->
<template v-if="form.type==2"> <template v-if="form.type==2">
...@@ -98,10 +98,12 @@ ...@@ -98,10 +98,12 @@
</template> </template>
<div v-else class="flex-box"> <div v-else class="flex-box">
<span class="flex-box ability-total" v-if="isTotal">共{{ total }}条</span> <span class="flex-box ability-total" v-if="isTotal">共{{ total }}条</span>
<span class="flex-box ability-excel" v-if="isExcel" @click="clickEXCEL"><img src="@/assets/images/ability_excel.png">导出EXCEL</span> <span class="flex-box ability-excel" v-hasPermi="['combine:info:export:win:bid']" v-if="isExcel && title ==='集团业绩'" @click="clickEXCEL"><img src="@/assets/images/ability_excel.png">导出EXCEL</span>
<span class="flex-box ability-excel" v-else @click="clickEXCEL"><img src="@/assets/images/ability_excel.png">导出EXCEL</span>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
...@@ -156,10 +158,14 @@ export default { ...@@ -156,10 +158,14 @@ export default {
this.$emit('handle-search') this.$emit('handle-search')
}, },
clickEXCEL() { clickEXCEL() {
this.$message({ if(this.title==='集团业绩'){
message: '功能正在开发中', this.$emit('handle-excel')
type: 'warning' }else {
}); this.$message({
message: '功能正在开发中',
type: 'warning'
});
}
}, },
clickFocus(e){ clickFocus(e){
document.getElementById(e).classList.toggle('span-ba') document.getElementById(e).classList.toggle('span-ba')
......
...@@ -981,12 +981,15 @@ export default { ...@@ -981,12 +981,15 @@ export default {
}, },
initChart1(list){ initChart1(list){
let data=[] let data=[]
if(list.length > 10){ let arr=list.sort(function(a, b) {
return b.count - a.count;
});
if(arr.length > 10){
for(var i=0;i<10;i++){ for(var i=0;i<10;i++){
data.push(list[i]) data.push(arr[i])
} }
}else { }else {
data=list; data=arr;
} }
var rankPic = [ var rankPic = [
......
...@@ -376,7 +376,7 @@ export default { ...@@ -376,7 +376,7 @@ export default {
top: 46px; top: 46px;
} }
th{ th{
font-size: 12px !important; font-size: 13px !important;
font-weight: 400 !important; font-weight: 400 !important;
} }
.el-table__fixed-header-wrapper th{ .el-table__fixed-header-wrapper th{
......
...@@ -22,6 +22,7 @@ ...@@ -22,6 +22,7 @@
v-loading="tableLoading" v-loading="tableLoading"
:data="tableData" :data="tableData"
border border
v-horizontal-scroll="'always'"
highlight-current-row highlight-current-row
@sort-change="sortChange" @sort-change="sortChange"
:default-sort = "{prop: 'gdp', order: 'descending'}" :default-sort = "{prop: 'gdp', order: 'descending'}"
...@@ -36,7 +37,7 @@ ...@@ -36,7 +37,7 @@
</el-table-column> </el-table-column>
<el-table-column prop="gdp" label="GDP(亿元)" sortable width="120" :formatter="formatStatus"/> <el-table-column prop="gdp" label="GDP(亿元)" sortable width="120" :formatter="formatStatus"/>
<el-table-column prop="gdpGrowth" label="GDP增速(%)" sortable width="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="gdpPerCapita" label="人均GDP(元)" sortable width="130" :formatter="formatStatus"/>
<el-table-column prop="population" label="人口(万人)" sortable width="120" :formatter="formatStatus"/> <el-table-column prop="population" label="人口(万人)" sortable width="120" :formatter="formatStatus"/>
<el-table-column prop="fixedInvestment" label="固定资产投资 (亿元) " sortable width="200" :formatter="formatStatus"/> <el-table-column prop="fixedInvestment" label="固定资产投资 (亿元) " sortable width="200" :formatter="formatStatus"/>
...@@ -226,7 +227,6 @@ export default { ...@@ -226,7 +227,6 @@ export default {
overflow-y: clip; overflow-y: clip;
} }
th{ th{
font-size: 12px !important;
font-weight: 400 !important; font-weight: 400 !important;
} }
.el-table__fixed-header-wrapper th{ .el-table__fixed-header-wrapper th{
......
...@@ -873,7 +873,7 @@ export default { ...@@ -873,7 +873,7 @@ export default {
::v-deep .el-table{ ::v-deep .el-table{
overflow:visible; overflow:visible;
th{ th{
font-size: 12px !important; font-size: 13px !important;
font-weight: 400 !important; font-weight: 400 !important;
} }
.el-table__fixed-header-wrapper th{ .el-table__fixed-header-wrapper th{
......
...@@ -20,6 +20,7 @@ ...@@ -20,6 +20,7 @@
collapse-tags collapse-tags
clearable></el-cascader> clearable></el-cascader>
<el-input placeholder="输入关键词查询" v-model="queryParams.ename" clearable @clear="handleSearch()"> <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-button slot="append" @click="handleSearch()">搜索</el-button>
</el-input> </el-input>
<span class="total">{{tableDataTotal}}</span> <span class="total">{{tableDataTotal}}</span>
...@@ -31,7 +32,7 @@ ...@@ -31,7 +32,7 @@
v-loading="tableLoading" v-loading="tableLoading"
border border
fit fit
max-height="640" v-horizontal-scroll="'always'"
@sort-change="sortChange" @sort-change="sortChange"
highlight-current-row highlight-current-row
v-if="tableDataTotal > 0 && !isSkeleton" v-if="tableDataTotal > 0 && !isSkeleton"
...@@ -353,11 +354,13 @@ export default { ...@@ -353,11 +354,13 @@ export default {
width: 180px; width: 180px;
margin-right: 12px; margin-right: 12px;
height: 32px; height: 32px;
line-height: 32px !important;
.el-input{ .el-input{
width: 100%; width: 100%;
height: 32px; height: 32px;
.el-input__inner{ .el-input__inner{
height: 32px !important; height: 32px !important;
line-height: 32px !important;
} }
} }
.el-cascader__tags{ .el-cascader__tags{
...@@ -378,8 +381,20 @@ export default { ...@@ -378,8 +381,20 @@ export default {
.el-input__suffix{ .el-input__suffix{
margin-top: -1px; margin-top: -1px;
} }
.el-icon-search{
font-size: 14px;
line-height: 32px;
color:#0081FF;
margin-left: 6px;
margin-right: 4px;
}
.el-input__inner:focus{ .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{ .el-input-group__append{
width: 60px; width: 60px;
...@@ -388,8 +403,7 @@ export default { ...@@ -388,8 +403,7 @@ export default {
background: #F5F5F5; background: #F5F5F5;
color:#0081FF; color:#0081FF;
border-left: 0; border-left: 0;
border-radius: 0; border-radius: 2px;
border-right: 0;
} }
} }
.total{ .total{
...@@ -439,7 +453,7 @@ export default { ...@@ -439,7 +453,7 @@ export default {
overflow-y: clip; overflow-y: clip;
} }
th{ th{
font-size: 12px !important; font-size: 13px !important;
font-weight: 400 !important; font-weight: 400 !important;
} }
.el-table__fixed-header-wrapper th{ .el-table__fixed-header-wrapper th{
......
...@@ -437,7 +437,6 @@ export default { ...@@ -437,7 +437,6 @@ export default {
.content{ .content{
background: #ffffff; background: #ffffff;
padding: 16px; padding: 16px;
margin-bottom: 16px;
border-radius: 4px; border-radius: 4px;
} }
.common-title{ .common-title{
......
...@@ -866,7 +866,7 @@ ...@@ -866,7 +866,7 @@
} }
} }
th{ th{
font-size: 12px !important; font-size: 13px !important;
font-weight: 400 !important; font-weight: 400 !important;
} }
.el-table__fixed-header-wrapper th{ .el-table__fixed-header-wrapper th{
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<p>{{itme.value}}</p> <p>{{itme.value}}</p>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<p class="solid"></p> <p class="solid"></p>
...@@ -30,8 +30,8 @@ ...@@ -30,8 +30,8 @@
<Tender v-if="personnelHerf=='Tender'" /> <Tender v-if="personnelHerf=='Tender'" />
<!-- 开标记录 --> <!-- 开标记录 -->
<BidRecord v-if="personnelHerf=='BidRecord'" /> <BidRecord v-if="personnelHerf=='BidRecord'" />
</div> </div>
</template> </template>
...@@ -44,7 +44,7 @@ ...@@ -44,7 +44,7 @@
import BidRecord from "./components/BidRecord/index.vue"; import BidRecord from "./components/BidRecord/index.vue";
import Bidding from "./components/Bidding/index.vue"; import Bidding from "./components/Bidding/index.vue";
import MajorProject from "./components/MajorProject/index.vue"; import MajorProject from "./components/MajorProject/index.vue";
import "@/assets/styles/public.css"; import "@/assets/styles/public.css";
export default { export default {
name: 'Radar', name: 'Radar',
...@@ -81,25 +81,25 @@ ...@@ -81,25 +81,25 @@
key: 'Bidding', key: 'Bidding',
status: false, status: false,
value: '招标计划', value: '招标计划',
}, },
{ {
key: 'bxprozbgg', key: 'bxprozbgg',
status: false, status: false,
value: '标讯pro', value: '标讯pro',
}, },
{ {
key: 'Tender', key: 'Tender',
status: false, status: false,
value: '公招标讯', value: '公招标讯',
}, },
{ {
key: 'BidRecord', key: 'BidRecord',
status: false, status: false,
value: '开标记录', value: '开标记录',
}, },
], ],
...@@ -122,7 +122,7 @@ ...@@ -122,7 +122,7 @@
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.app-container { .app-container {
margin: 12px 24px; margin: 12px 24px;
padding: 0; padding: 0;
...@@ -130,7 +130,7 @@ ...@@ -130,7 +130,7 @@
.content{ .content{
padding: 0px 16px; padding: 0px 16px;
background: #FFFFFF; background: #FFFFFF;
} }
.app-container .combined-title { .app-container .combined-title {
...@@ -262,4 +262,4 @@ ...@@ -262,4 +262,4 @@
border-bottom: 2px solid #0081FF; border-bottom: 2px solid #0081FF;
font-weight: bold; font-weight: bold;
} }
</style> </style>
\ No newline at end of file
...@@ -192,6 +192,36 @@ public class EnterpriseBussinessService { ...@@ -192,6 +192,36 @@ public class EnterpriseBussinessService {
return new TableDataInfo(new ArrayList<>(), 0); return new TableDataInfo(new ArrayList<>(), 0);
} }
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/enterpriseBussiness/supplierPage2", BeanUtil.beanToMap(body, false, false)); Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/enterpriseBussiness/supplierPage2", BeanUtil.beanToMap(body, false, false));
Map data = MapUtils.getMap(map, "data", null);
List<Object> list = CommonUtils.assertAsArray(MapUtils.getObject(data, "list", ""));
if (CollectionUtils.isEmpty(list)) {
return new TableDataInfo(list, 0);
}
ArrayList<Long> cIds = new ArrayList<>();
for (Object dataMap : list) {
cIds.add(MapUtils.getLong(CommonUtils.assertAsMap(dataMap), "companyId"));
}
HashMap<String, Object> paramMap = new HashMap<>();
paramMap.put("ids", cIds);
Map<String, Object> uipIdMap = dskOpenApiUtil.requestBody("/operate/enterprise/getUipIdByCid", paramMap);
Object uipIdData = uipIdMap.get("data");
List<Map<String, Object>> mapList = new ArrayList<>();
if (ObjectUtil.isNotEmpty(uipIdData)) {
mapList = (List<Map<String, Object>>)uipIdData;
}
for (Object dataMap : list) {
Map<String, Object> companyMap = CommonUtils.assertAsMap(dataMap);
Long cusCompanyId = MapUtils.getLong(companyMap, "companyId", 0L);
companyMap.put("uipId", null);
for (Map<String, Object> m : mapList) {
String uipId = MapUtils.getString(m, "uipId", null);
Long companyId = MapUtils.getLong(m, "companyId", 0L);
if (cusCompanyId.equals(companyId)) {
companyMap.put("uipId", uipId);
}
}
}
return dskOpenApiUtil.responsePage(map); return dskOpenApiUtil.responsePage(map);
} }
......
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