Commit 07efc631 authored by yht15023815643's avatar yht15023815643

骨架图

parent 2a16dee1
<template>
<div class="client-details">
<el-dialog
<el-drawer
:visible.sync="drawer"
size="80%"
:title="title"
custom-class="client-dialog"
size="60%"
custom-class="client-drawer"
:with-header="false"
@closed="cancel">
<head-detail-form
:title="title"
:form-data="formData"
:query-params="queryParams"
:total="data.total"
:total="tableDataTotal"
:amountTotal="amountTotal"
@handle-search="handleSearch"
/>
......@@ -19,18 +19,25 @@
:tableLoading="tableLoading"
:tableData="tableData"
:forData="forData"
:tableDataTotal="data.total"
:tableDataTotal="tableDataTotal"
:queryParams="queryParams"
@handle-current-change="handleCurrentChange"
style="margin: 12px;"
>
<template slot="sourceType" slot-scope="scope">
<template slot="projectAllName" slot-scope="scope">
<div class="flex-box">
<div class="a-link" @click="linkTo(scope)" v-if="scope.row.sourceId&&scope.row.sourceType=='中标业绩'" v-html="scope.row.sourceType" style="cursor: pointer"></div>
<span v-else v-html="scope.row.sourceType || '--'"></span>
<img class="tip-img" src="@/assets/images/detail/ico_pdf.png" v-if="scope.row.snapshootPic" @click="handlePic(scope.row.snapshootPic, true)"/>
<div class="a-link" @click="linkTo(scope)" v-if="scope.row.id&&scope.row.projectAllName" v-html="scope.row.projectAllName" style="cursor: pointer"></div> <span v-else v-html="scope.row.projectAllName || '--'"></span>
</div>
</template>
<template slot="province" slot-scope="scope">
{{scope.row.province}}{{`${scope.row.city?'-'+scope.row.city:''}`}}
</template>
<template slot="lowerRate" slot-scope="scope">
<span>{{scope.row.lowerRate ? scope.row.lowerRate+'%' : '--'}}</span>
</template>
</tables>
</el-dialog>
</el-drawer>
</div>
</template>
......@@ -53,21 +60,22 @@ export default {
return {
drawer: false,
queryParams: {
companyId: this.data.companyId,
cid: this.companyId,
cid: this.data.companyId,
unitId: this.companyId,
pageNum: 1,
pageSize: 20
},
formData: [
{ type: 6, fieldName: 'money', value: '', placeholder: '合同金额', startMoney: 'amountMin', endMoney: 'amountMax' },
{ type: 3, fieldName: 'keys', value: '', placeholder: '输入合作项目/工程名称查询', options: [], width: 260},
],
forData: [
{label: '项目名称', prop: 'projectName', fixed: true},
{label: '公布时间', prop: 'time', width: '100'},
{label: '本次合同金额(万元)', prop: 'amount', width: '160'},
{label: '项目类型', prop: 'projectType', width: '130'},
{label: '数据来源', prop: 'sourceType', width: '90', slot: true}
{label: '合作项目/工程名称', prop: 'projectAllName', width: '720', fixed: true, slot: true},
{label: '项目/工程金额(万元)', prop: 'winBidAmount', width: '160'},
{label: '合作时间', prop: 'winBidTime', width: '100'},
{label: '项目地区', prop: 'province', width: '160', slot: true},
{label: '项目类型', prop: 'boundType', width: '130'},
{label: '工期(天)', prop: 'period', width: '90'},
{label: '下浮率', prop: 'lowerRate', width: '90', slot: true}
],
//列表
tableLoading:false,
......@@ -100,7 +108,7 @@ export default {
},
linkTo(scope){
this.drawer = false
this.$router.push(`/biddetail/${scope.row.sourceId}`)
this.$router.push(`/biddetail/${scope.row.id}`)
},
cancel() {
this.$emit('cancel')
......@@ -111,27 +119,8 @@ export default {
<style lang="scss" scoped>
.client-details {
::v-deep .client-dialog{
width: 80%;
min-width: 900px;
::v-deep .client-drawer{
background: #FFFFFF;
.el-dialog__body{
padding-top: 0;
}
.fixed-table{
.el-table__header-wrapper,.el-table__fixed-header-wrapper{
top: 0;
}
}
.el-dialog__header{
border-bottom: 1px solid #E1E1E1;
}
.el-dialog__title{
font-size: 16px;
color: #232323;
font-weight: bold;
margin-right: 4px;
}
}
.tip-img{
width: 14px;
......
......@@ -84,7 +84,6 @@ export default {
},
methods: {
async handleQuery(params) {
this.isSkeleton = true;
this.tableLoading = true
let param = params?params:this.queryParams
let res = await clientPage(param)
......
......@@ -84,7 +84,6 @@ export default {
},
methods: {
async handleQuery(params) {
this.isSkeleton = true;
this.tableLoading = true
let param = params?params:this.queryParams
let res = await supplierPage(param)
......
......@@ -98,14 +98,14 @@
<div class="swiper-containers swiper-info" :style="graphList.length<=6?'margin-left:0px; width: 100%;':''">
<ul class="swiper-wrapper">
<li class="swiper-slide" v-if="statistic.combineMember">
<div class="flex-box" >
<div class="flex-box" @click="linkTo(statistic.combineMember)">
<img src="@/assets/images/detail/overview/company_ssjt.png" alt="所属集团" title="所属集团" class="swiper-img">
<div class="swiper-item">
<span class="swiper-name">
所属集团-{{statistic.combineMember.companyName}}
</span>
<div >
<span >集团成员:</span><i class="num" @click="linkTo(statistic.combineMember)">{{statistic.combineMember.memberNum}}</i>
<span >集团成员:</span><i class="num" >{{statistic.combineMember.memberNum}}</i>
</div>
</div>
</div>
......
<template>
<!-- <div style="width:calc(100% - 100px);" @click="showlist = false"> -->
<div @click="showlist = false">
<div class="content">
<div class="content_item">
<div class="content_right">
<el-input type="text" class="ename_input" placeholder="请输入集团名称查询" clearable v-model="companyName" @input="search(1)"><div slot="append" class="btn-search" @click="selCompany()">搜索</div></el-input>
<el-input type="text" class="ename_input" placeholder="请输入集团名称查询" clearable v-model="companyName" @input="search(1)"><div slot="append" class="btn-search" @click="searchClick()">搜索</div></el-input>
<div class="infinite-list" v-if="showlist" id="box" v-infinite-scroll="load" style="overflow:auto">
<div class="empty" v-if="searchList.length<1">
<img src="@/assets/images/kong.png" alt="">
......@@ -25,7 +26,9 @@
</div>
</div>
</div>
<div style="position: relative;">
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton>
<div v-else style="position: relative;">
<div class="wrap">
<template v-if="activeIndex==0">
<div class="count">{{ total }}</div>
......@@ -141,10 +144,16 @@
<script>
import api from '@/api/enterpriseData/enterpriseData.js';
import skeleton from '@/views/project/projectList/component/skeleton'
export default {
name: 'Group',
components: {
skeleton
},
data(){
return{
isSkeleton:true,
childList:[],
localList:{},
localListPage:1,
......@@ -191,6 +200,7 @@ export default {
}
api.centralEnterprseChildPage(data).then(res=>{
if(res.code==200){
this.isSkeleton = false;
this.childList[index].list.push(...res.data.list)
}
})
......@@ -204,6 +214,7 @@ export default {
}
api.centralEnterprselocalPage(data).then(res=>{
if(res.code==200){
this.isSkeleton = false;
this.localList1[index].result.push(...res.data.list)
}
})
......@@ -217,6 +228,7 @@ export default {
}
api.centralEnterprsesocialPage(data).then(res=>{
if(res.code==200){
this.isSkeleton = false;
this.childList[index].list.push(...res.data.list)
}
})
......@@ -228,10 +240,12 @@ export default {
},
groupClick(index){
this.activeIndex=index;
this.isSkeleton = true;
if(index==1){
this.listenerFunction();
api.centralEnterprseChild().then(res=>{
if(res.code==200){
this.isSkeleton = false;
if(res.data.list.length>0){
res.data.list.map(item=>{
item.page=1
......@@ -249,6 +263,7 @@ export default {
provinceId:this.provinceId
}
api.centralEnterprselocal(data).then(res=>{
this.isSkeleton = false;
if(res.code==200){
this.localList = res.data.localList;
this.localListPage = 1;
......@@ -267,6 +282,7 @@ export default {
api.centralEnterprsesocial().then(res=>{
if(res.code==200){
this.isSkeleton = false;
if(res.data.length>0){
res.data.map(item=>{
item.page=1
......@@ -317,6 +333,7 @@ export default {
getCompany(){
api.centralEnterprse().then(res=>{
if(res.code==200){
this.isSkeleton = false;
this.companData = res.data.list;
this.total = res.data.total
}
......@@ -350,10 +367,17 @@ export default {
this.search(this.page)
}
},
selCompany(item = this.searchList[0]){
searchClick(){
if(!this.companyName){
return this.$message.warning("抱歉,没找到相关数据,建议调整关键词或筛选条件,重新搜索")
}
let item = this.searchList[0]
this.$router.push({path:`/groupAccount/${item.combineId}?name=${item.combineName.replace(new RegExp("<font color='#FF204E'>", 'g'),'').replace(new RegExp("</font>", 'g'),'')}`})
},
selCompany(item = this.searchList[0]){
if(!item){
return this.$message.warning("抱歉,没找到相关数据,建议调整关键词或筛选条件,重新搜索")
}
this.$router.push({path:`/groupAccount/${item.combineId}?name=${item.combineName.replace(new RegExp("<font color='#FF204E'>", 'g'),'').replace(new RegExp("</font>", 'g'),'')}`})
},
}
......
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