13 changed files with 1908 additions and 1464 deletions
@ -1,109 +1,143 @@ |
|||
<template> |
|||
<div class="basic-detail"> |
|||
<div class="basic-header"> |
|||
<div class="header-wrap"> |
|||
<el-breadcrumb separator-class="el-icon-arrow-right"> |
|||
<el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item> |
|||
<el-breadcrumb-item :to="{ path: '/announcement' }">公告</el-breadcrumb-item> |
|||
<el-breadcrumb-item>不良行为公告详情</el-breadcrumb-item> |
|||
</el-breadcrumb> |
|||
</div> |
|||
</div> |
|||
<div class="basic-main"> |
|||
<div class="main-wrap"> |
|||
<announcementBasicTable :enterpriseObj="enterpriseObj" :bonusPointsAll="bonusPointsAll" /> |
|||
<div class="descriptions-wrap"> |
|||
<misconductTable :title="'企业不良行为' + (index + 1)" v-for="(item, index) in badList" :key="(item, index)" :itemObj="item"/> |
|||
</div> |
|||
</div> |
|||
<div class="basic-detail"> |
|||
<div class="basic-header"> |
|||
<div class="header-wrap"> |
|||
<el-breadcrumb separator-class="el-icon-arrow-right"> |
|||
<el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item> |
|||
<el-breadcrumb-item :to="{ path: '/announcement' }" |
|||
>公告</el-breadcrumb-item |
|||
> |
|||
<el-breadcrumb-item>{{ |
|||
this.$route.query.type === "good" |
|||
? "良好行为公告详情" |
|||
: "不良行为公告详情" |
|||
}}</el-breadcrumb-item> |
|||
</el-breadcrumb> |
|||
</div> |
|||
</div> |
|||
<div class="basic-main"> |
|||
<div class="main-wrap"> |
|||
<announcementBasicTable |
|||
:enterpriseObj="enterpriseObj" |
|||
:bonusPointsAll="bonusPointsAll" |
|||
/> |
|||
<div class="descriptions-wrap"> |
|||
<misconductTable |
|||
:title="title + (index + 1)" |
|||
v-for="(item, index) in actionList" |
|||
:key="(item, index)" |
|||
:itemObj="item" |
|||
/> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import { getBadAll } from "@/api/enterpriseInformation" |
|||
import announcementBasicTable from "./components/announcementBasicTable" |
|||
import misconductTable from "./components/misconductTable" |
|||
import { getGoodAll, getBadAll } from "@/api/enterpriseInformation"; |
|||
import announcementBasicTable from "./components/announcementBasicTable"; |
|||
import misconductTable from "./components/misconductTable"; |
|||
export default { |
|||
components: { |
|||
announcementBasicTable, |
|||
misconductTable, |
|||
}, |
|||
data() { |
|||
return { |
|||
activeName: "first", |
|||
enterpriseObj: {}, |
|||
enterpriseBadForm: { |
|||
enterpriseId: "", |
|||
type: "0", |
|||
}, |
|||
badList: [], |
|||
bonusPointsAll: 0 |
|||
} |
|||
}, |
|||
mounted() { |
|||
this.enterpriseBadForm.enterpriseId = this.$route.query.enterpriseId |
|||
this.getCreditBadList() |
|||
components: { |
|||
announcementBasicTable, |
|||
misconductTable |
|||
}, |
|||
data() { |
|||
return { |
|||
activeName: "first", |
|||
enterpriseObj: {}, |
|||
enterpriseForm: { |
|||
enterpriseId: "", |
|||
type: "0" |
|||
}, |
|||
actionList: [], |
|||
bonusPointsAll: 0 |
|||
}; |
|||
}, |
|||
computed: { |
|||
title() { |
|||
const type = this.$route.query.type; |
|||
return type === "good" ? "企业良好行为" : "企业不良行为"; |
|||
} |
|||
}, |
|||
mounted() { |
|||
this.enterpriseForm.enterpriseId = this.$route.query.enterpriseId; |
|||
this.getCreditList(); |
|||
}, |
|||
methods: { |
|||
getCreditList() { |
|||
const type = this.$route.query.type; |
|||
if (type === "good") { |
|||
this.enterpriseForm.type = "1"; |
|||
getGoodAll(this.enterpriseForm).then(res => { |
|||
this.enterpriseObj = res.data.data[0]; |
|||
this.actionList = res.data.data; |
|||
this.actionList.forEach(item => { |
|||
this.bonusPointsAll += Number(item.bonusPoints); |
|||
}); |
|||
}); |
|||
} else if (type === "bad") { |
|||
this.enterpriseForm.type = "0"; |
|||
getBadAll(this.enterpriseForm).then(res => { |
|||
this.enterpriseObj = res.data.data[0]; |
|||
this.actionList = res.data.data; |
|||
this.actionList.forEach(item => { |
|||
this.bonusPointsAll += Number(item.bonusPoints); |
|||
}); |
|||
}); |
|||
} |
|||
}, |
|||
methods: { |
|||
getCreditBadList() { |
|||
getBadAll(this.enterpriseBadForm).then(res => { |
|||
this.enterpriseObj = res.data.data[0] |
|||
this.badList = res.data.data |
|||
this.badList.forEach(item => { |
|||
this.bonusPointsAll += Number(item.bonusPoints) |
|||
}) |
|||
}) |
|||
}, |
|||
handleClick(tab, event) { |
|||
// console.log(tab, event); |
|||
}, |
|||
handleClick(tab, event) { |
|||
// console.log(tab, event); |
|||
} |
|||
} |
|||
} |
|||
}; |
|||
</script> |
|||
<style lang="less" scoped> |
|||
.basic-detail { |
|||
.basic-header { |
|||
height: 40px; |
|||
background: #EBF4FE; |
|||
.basic-header { |
|||
height: 40px; |
|||
background: #ebf4fe; |
|||
|
|||
.header-wrap { |
|||
width: 1200px; |
|||
margin: 0 auto; |
|||
display: flex; |
|||
align-items: center; |
|||
.header-wrap { |
|||
width: 1200px; |
|||
margin: 0 auto; |
|||
display: flex; |
|||
align-items: center; |
|||
|
|||
/deep/.el-breadcrumb { |
|||
margin-top: 10px; |
|||
/deep/.el-breadcrumb { |
|||
margin-top: 10px; |
|||
|
|||
.el-breadcrumb__item { |
|||
.el-breadcrumb__inner { |
|||
font-size: 16px; |
|||
color: #005EB7 !important; |
|||
} |
|||
.el-breadcrumb__item { |
|||
.el-breadcrumb__inner { |
|||
font-size: 16px; |
|||
color: #005eb7 !important; |
|||
} |
|||
|
|||
.el-breadcrumb__separator { |
|||
font-size: 16px; |
|||
color: #005EB7 !important; |
|||
} |
|||
} |
|||
} |
|||
.el-breadcrumb__separator { |
|||
font-size: 16px; |
|||
color: #005eb7 !important; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
.basic-main { |
|||
background: linear-gradient(180deg, #005EB7 0%, #EDF7FF 60% #EDF7FF 100%); |
|||
padding: 20px 0; |
|||
.basic-main { |
|||
background: linear-gradient(180deg, #005eb7 0%, #edf7ff 60% #edf7ff 100%); |
|||
padding: 20px 0; |
|||
|
|||
.main-wrap { |
|||
width: 1200px; |
|||
margin: 0 auto; |
|||
background: #FFFFFF; |
|||
border-radius: 8px; |
|||
overflow: hidden; |
|||
padding: 20px; |
|||
.main-wrap { |
|||
width: 1200px; |
|||
margin: 0 auto; |
|||
background: #ffffff; |
|||
border-radius: 8px; |
|||
overflow: hidden; |
|||
padding: 20px; |
|||
|
|||
.descriptions-wrap {} |
|||
} |
|||
.descriptions-wrap { |
|||
} |
|||
} |
|||
} |
|||
} |
|||
</style> |
|||
</style> |
|||
|
@ -1,68 +1,80 @@ |
|||
<template> |
|||
<div class="descriptions-table"> |
|||
<el-descriptions class="margin-top" :column="1" border :content-style="rowCenter" :label-style="labelRowCenter"> |
|||
<el-descriptions-item label="企业名称"> |
|||
{{ enterpriseObj.enterpriseName }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item label="资质类别"> |
|||
{{ enterpriseObj.qualificationCategory || "-" }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item label="项目名称"> |
|||
{{ enterpriseObj.projectName || "-" }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item label="扣分值"> |
|||
{{ bonusPointsAll || "-" }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item label="发布时间"> |
|||
{{ enterpriseObj.noticeBeginTime || "-" }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item label="发布单位"> |
|||
{{ enterpriseObj.publishUnit || "-" }} |
|||
</el-descriptions-item> |
|||
</el-descriptions> |
|||
</div> |
|||
<div class="descriptions-table"> |
|||
<el-descriptions |
|||
class="margin-top" |
|||
:column="1" |
|||
border |
|||
:content-style="rowCenter" |
|||
:label-style="labelRowCenter" |
|||
> |
|||
<el-descriptions-item label="企业名称"> |
|||
{{ enterpriseObj.enterpriseName }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item label="资质类别"> |
|||
{{ enterpriseObj.qualificationCategory || "-" }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item label="项目名称"> |
|||
{{ enterpriseObj.projectName || "-" }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item :label="sorce"> |
|||
{{ bonusPointsAll || "-" }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item label="发布时间"> |
|||
{{ enterpriseObj.noticeBeginTime || "-" }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item label="发布单位"> |
|||
{{ enterpriseObj.publishUnit || "-" }} |
|||
</el-descriptions-item> |
|||
</el-descriptions> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
export default { |
|||
props:{ |
|||
enterpriseObj:{ |
|||
type:Object, |
|||
default: ()=>{ |
|||
return [] |
|||
} |
|||
}, |
|||
bonusPointsAll:{ |
|||
type:Number, |
|||
default: 0 |
|||
} |
|||
props: { |
|||
enterpriseObj: { |
|||
type: Object, |
|||
default: () => { |
|||
return []; |
|||
} |
|||
}, |
|||
data() { |
|||
return { |
|||
rowCenter: { |
|||
'borderColor': '#DADCE3' |
|||
}, |
|||
labelRowCenter: { |
|||
'borderColor': '#DADCE3' |
|||
} |
|||
} |
|||
bonusPointsAll: { |
|||
type: Number, |
|||
default: 0 |
|||
} |
|||
} |
|||
}, |
|||
data() { |
|||
return { |
|||
rowCenter: { |
|||
borderColor: "#DADCE3" |
|||
}, |
|||
labelRowCenter: { |
|||
borderColor: "#DADCE3" |
|||
} |
|||
}; |
|||
}, |
|||
computed: { |
|||
sorce() { |
|||
const type = this.$route.query.type; |
|||
return type === "good" ? "加分值" : "扣分值"; |
|||
} |
|||
} |
|||
}; |
|||
</script> |
|||
<style lang="less" scoped> |
|||
.descriptions-table { |
|||
/deep/.el-descriptions { |
|||
.el-descriptions-item__cell { |
|||
padding: 11px 10px; |
|||
font-size: 16px; |
|||
} |
|||
/deep/.el-descriptions { |
|||
.el-descriptions-item__cell { |
|||
padding: 11px 10px; |
|||
font-size: 16px; |
|||
} |
|||
|
|||
.el-descriptions-item__label { |
|||
background: #EBF4FE; |
|||
width: 220px; |
|||
font-weight: 600; |
|||
color: #005EB7; |
|||
padding-left: 21px; |
|||
} |
|||
.el-descriptions-item__label { |
|||
background: #ebf4fe; |
|||
width: 220px; |
|||
font-weight: 600; |
|||
color: #005eb7; |
|||
padding-left: 21px; |
|||
} |
|||
} |
|||
} |
|||
</style> |
|||
</style> |
|||
|
@ -1,76 +1,111 @@ |
|||
<template> |
|||
<div class="descriptions-table"> |
|||
<span>{{ title }}</span> |
|||
<el-descriptions class="margin-top" :column="1" border :content-style="rowCenter" :label-style="labelRowCenter"> |
|||
<el-descriptions-item label="不良行为"> |
|||
{{ itemObj.badBehavior || "-" }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item label="等级"> |
|||
{{ itemObj.commendationLevel || "-" }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item label="扣分值"> |
|||
{{ itemObj.bonusPoints || "-" }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item label="有效期"> |
|||
{{ itemObj.validityPeriod || "-" }} |
|||
</el-descriptions-item> |
|||
<!-- <el-descriptions-item label="扣分起止时间"> |
|||
<div class="descriptions-table"> |
|||
<span>{{ title }}</span> |
|||
<el-descriptions |
|||
class="margin-top" |
|||
:column="1" |
|||
border |
|||
:content-style="rowCenter" |
|||
:label-style="labelRowCenter" |
|||
> |
|||
<el-descriptions-item label="良好行为" v-if="isGood"> |
|||
{{ itemObj.goodBehavior || "-" }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item label="不良行为" v-else> |
|||
{{ itemObj.badBehavior || "-" }} |
|||
</el-descriptions-item> |
|||
|
|||
<el-descriptions-item label="等级"> |
|||
{{ itemObj.commendationLevel || "-" }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item :label="isGood ? '加分值' : '扣分值'"> |
|||
{{ itemObj.bonusPoints || "-" }} |
|||
</el-descriptions-item> |
|||
<el-descriptions-item label="有效期"> |
|||
{{ itemObj.validityPeriod || "-" }} |
|||
</el-descriptions-item> |
|||
<!-- <el-descriptions-item label="扣分起止时间"> |
|||
{{ itemObj.noticeBeginTime || "-" }} |
|||
</el-descriptions-item> --> |
|||
<el-descriptions-item label="扣分依据"> |
|||
{{ itemObj.attachment || "-" }} |
|||
</el-descriptions-item> |
|||
</el-descriptions> |
|||
</div> |
|||
<el-descriptions-item :label="isGood ? '加分依据' : '扣分依据'"> |
|||
<!-- {{ JSON.parse(itemObj.attachment) || "-" }} --> |
|||
<div |
|||
v-for="(item, index) in JSON.parse( |
|||
itemObj.attachment ? itemObj.attachment : JSON.stringify({}) |
|||
)" |
|||
:key="item + index" |
|||
> |
|||
<span> |
|||
<i class="el-icon-document"></i> |
|||
<span>{{ item.name }}</span> |
|||
</span> |
|||
<i |
|||
class="el-icon-download" |
|||
@click="downloadFile(item, index)" |
|||
style="cursor: pointer" |
|||
></i> |
|||
</div> |
|||
</el-descriptions-item> |
|||
</el-descriptions> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
export default { |
|||
props: { |
|||
title: { |
|||
type: String, |
|||
default: "" |
|||
}, |
|||
itemObj:{ |
|||
type:Object, |
|||
default: ()=>{ |
|||
return [] |
|||
} |
|||
} |
|||
props: { |
|||
title: { |
|||
type: String, |
|||
default: "" |
|||
}, |
|||
data() { |
|||
return { |
|||
rowCenter: { |
|||
'borderColor': '#DADCE3' |
|||
}, |
|||
labelRowCenter: { |
|||
'borderColor': '#DADCE3' |
|||
} |
|||
} |
|||
itemObj: { |
|||
type: Object, |
|||
default: () => { |
|||
return []; |
|||
} |
|||
} |
|||
} |
|||
}, |
|||
data() { |
|||
return { |
|||
rowCenter: { |
|||
borderColor: "#DADCE3" |
|||
}, |
|||
labelRowCenter: { |
|||
borderColor: "#DADCE3" |
|||
} |
|||
}; |
|||
}, |
|||
computed: { |
|||
isGood() { |
|||
const type = this.$route.query.type; |
|||
return type === "good" ? true : false; |
|||
} |
|||
}, |
|||
methods: { |
|||
downloadFile() {} |
|||
} |
|||
}; |
|||
</script> |
|||
<style lang="less" scoped> |
|||
.descriptions-table { |
|||
margin-top: 20px; |
|||
span{ |
|||
display: block; |
|||
font-size: 18px; |
|||
font-weight: 600; |
|||
margin-bottom: 10px; |
|||
margin-top: 20px; |
|||
.descriptions-table > span { |
|||
display: block; |
|||
font-size: 18px; |
|||
font-weight: 600; |
|||
margin-bottom: 10px; |
|||
} |
|||
/deep/.el-descriptions { |
|||
.el-descriptions-item__cell { |
|||
padding: 11px 10px; |
|||
font-size: 16px; |
|||
} |
|||
/deep/.el-descriptions { |
|||
.el-descriptions-item__cell { |
|||
padding: 11px 10px; |
|||
font-size: 16px; |
|||
} |
|||
|
|||
.el-descriptions-item__label { |
|||
background: #EBF4FE; |
|||
width: 220px; |
|||
font-weight: 600; |
|||
color: #005EB7; |
|||
padding-left: 21px; |
|||
} |
|||
.el-descriptions-item__label { |
|||
background: #ebf4fe; |
|||
width: 220px; |
|||
font-weight: 600; |
|||
color: #005eb7; |
|||
padding-left: 21px; |
|||
} |
|||
} |
|||
} |
|||
</style> |
|||
</style> |
|||
|
@ -1,241 +1,303 @@ |
|||
<template> |
|||
<div class="certification-page"> |
|||
<div class="certification-tabs"> |
|||
<div class="tabs-wrap"> |
|||
<el-tabs ref="tabcs"> |
|||
<el-tab-pane label="企业不良行为公告"></el-tab-pane> |
|||
</el-tabs> |
|||
</div> |
|||
</div> |
|||
<div class="certification-list"> |
|||
<div class="list-wrap"> |
|||
<el-form :inline="true" label-width="80px" :model="queryForm"> |
|||
<el-form-item label="企业名称"> |
|||
<el-input class="name-inp-search" placeholder="请输入关键字" v-model="queryForm.enterpriseName"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="企业类型"> |
|||
<el-select v-model="queryForm.qualificationCategory" clearable placeholder="请选择企业类型"> |
|||
<el-option v-for="item in categoryList" :key="item.dictValue" :label="item.dictLabel" |
|||
:value="item.dictValue"> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item> |
|||
<el-button type="mini" icon="el-icon-search" @click="getResult()">查询</el-button> |
|||
<el-button type="mini" icon="el-icon-refresh" @click="resetForm()">重置</el-button> |
|||
</el-form-item> |
|||
</el-form> |
|||
<el-table :data="tableData" style="width: 100%"> |
|||
<el-table-column prop="enterpriseName" label="企业名称" width="400" align="center"> |
|||
<template slot-scope="scope"> |
|||
<span style="color: #005EB7;cursor: pointer;font-size: 16px !important;" @click="toDetail(scope.row)">{{ scope.row.enterpriseName |
|||
}}</span> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="projectName" label="项目名称" align="center"> |
|||
</el-table-column> |
|||
<el-table-column prop="qualificationCategory" label="企业资质" align="center"> |
|||
<template slot-scope="scope"> |
|||
<div v-for="(cateTtem, index) in categoryList" :key="(cateTtem, index)"> |
|||
<div v-if="cateTtem.dictValue == scope.row.qualificationCategory">{{ |
|||
cateTtem.dictLabel }}</div> |
|||
</div> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="dynamicCreditScore" label="信用分数" align="center"> |
|||
</el-table-column> |
|||
<el-table-column prop="bonusPoints" label="扣分值" align="center"> |
|||
</el-table-column> |
|||
<el-table-column prop="publishUnit" label="发布单位" align="center"> |
|||
</el-table-column> |
|||
<el-table-column prop="noticeTime" label="公告时间" align="center"> |
|||
</el-table-column> |
|||
</el-table> |
|||
<pagination :total="total" :page.sync="apidata.pageNum" :limit.sync="apidata.pageSize" |
|||
:pageSizes="pageSizes" @pagination="getResult" /> |
|||
</div> |
|||
</div> |
|||
<div class="certification-page"> |
|||
<div class="certification-tabs"> |
|||
<div class="tabs-wrap"> |
|||
<el-tabs ref="tabcs" v-model="activeName" @tab-click="handleClick"> |
|||
<el-tab-pane label="企业良好行为公告" name="good"></el-tab-pane> |
|||
<el-tab-pane label="企业不良行为公告" name="bad"></el-tab-pane> |
|||
</el-tabs> |
|||
</div> |
|||
</div> |
|||
<div class="certification-list"> |
|||
<div class="list-wrap"> |
|||
<el-form :inline="true" label-width="80px" :model="queryForm"> |
|||
<el-form-item label="企业名称"> |
|||
<el-input |
|||
class="name-inp-search" |
|||
placeholder="请输入关键字" |
|||
v-model="queryForm.enterpriseName" |
|||
></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="企业类型"> |
|||
<el-select |
|||
v-model="queryForm.qualificationCategory" |
|||
clearable |
|||
placeholder="请选择企业类型" |
|||
> |
|||
<el-option |
|||
v-for="item in categoryList" |
|||
:key="item.dictValue" |
|||
:label="item.dictLabel" |
|||
:value="item.dictValue" |
|||
> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item> |
|||
<el-button type="mini" icon="el-icon-search" @click="getResult()" |
|||
>查询</el-button |
|||
> |
|||
<el-button type="mini" icon="el-icon-refresh" @click="resetForm()" |
|||
>重置</el-button |
|||
> |
|||
</el-form-item> |
|||
</el-form> |
|||
<el-table :data="tableData" style="width: 100%"> |
|||
<el-table-column |
|||
prop="enterpriseName" |
|||
label="企业名称" |
|||
width="400" |
|||
align="center" |
|||
> |
|||
<template slot-scope="scope"> |
|||
<span |
|||
style="color: #005EB7;cursor: pointer;font-size: 16px !important;" |
|||
@click="toDetail(scope.row)" |
|||
>{{ scope.row.enterpriseName }}</span |
|||
> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="projectName" label="项目名称" align="center"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="qualificationCategory" |
|||
label="企业资质" |
|||
align="center" |
|||
> |
|||
<template slot-scope="scope"> |
|||
<div |
|||
v-for="(cateTtem, index) in categoryList" |
|||
:key="(cateTtem, index)" |
|||
> |
|||
<div |
|||
v-if="cateTtem.dictValue == scope.row.qualificationCategory" |
|||
> |
|||
{{ cateTtem.dictLabel }} |
|||
</div> |
|||
</div> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="dynamicCreditScore" |
|||
label="信用分数" |
|||
align="center" |
|||
> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="bonusPoints" |
|||
:label="activeName === 'good' ? '加分值' : '扣分值'" |
|||
align="center" |
|||
> |
|||
</el-table-column> |
|||
<el-table-column prop="publishUnit" label="发布单位" align="center"> |
|||
</el-table-column> |
|||
<el-table-column prop="noticeTime" label="公告时间" align="center"> |
|||
</el-table-column> |
|||
</el-table> |
|||
<pagination |
|||
:total="total" |
|||
:page.sync="apidata.pageNum" |
|||
:limit.sync="apidata.pageSize" |
|||
:pageSizes="pageSizes" |
|||
@pagination="getResult" |
|||
/> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import { creditGetBad } from "@/api/creditStatistics" |
|||
import { creditGetGood, creditGetBad } from "@/api/creditStatistics"; |
|||
export default { |
|||
data() { |
|||
return { |
|||
total: 0, |
|||
apidata: { |
|||
pageNum: 1, |
|||
pageSize: 10, |
|||
}, |
|||
pageSizes: [10, 20, 30, 50], |
|||
queryForm: { |
|||
enterpriseName: "", |
|||
qualificationCategory:"", |
|||
pageNum: 1, |
|||
pageSize: 10, |
|||
}, |
|||
tableData: [], |
|||
categoryList:[] |
|||
} |
|||
data() { |
|||
return { |
|||
total: 0, |
|||
apidata: { |
|||
pageNum: 1, |
|||
pageSize: 10 |
|||
}, |
|||
pageSizes: [10, 20, 30, 50], |
|||
queryForm: { |
|||
enterpriseName: "", |
|||
qualificationCategory: "", |
|||
pageNum: 1, |
|||
pageSize: 10, |
|||
adcd: "" |
|||
}, |
|||
tableData: [], |
|||
categoryList: [], |
|||
activeName: "good" |
|||
}; |
|||
}, |
|||
created() { |
|||
if (this.$route.query.type) { |
|||
this.activeName = this.$route.query.type; |
|||
} |
|||
}, |
|||
mounted() { |
|||
this.getResult(); |
|||
this.getDicts("qualification_type").then(res => { |
|||
this.categoryList = res.data.data; |
|||
}); |
|||
}, |
|||
methods: { |
|||
getResult() { |
|||
if (this.activeName === "good") { |
|||
creditGetGood(this.queryForm).then(res => { |
|||
this.tableData = res.data.records; |
|||
this.total = res.data.total; |
|||
}); |
|||
} else { |
|||
creditGetBad(this.queryForm).then(res => { |
|||
this.tableData = res.data.records; |
|||
this.total = res.data.total; |
|||
}); |
|||
} |
|||
}, |
|||
mounted(){ |
|||
this.getResult() |
|||
this.getDicts("qualification_type").then(res => { |
|||
this.categoryList = res.data.data |
|||
}) |
|||
handleClick(tab, event) { |
|||
// console.log(tab, event); |
|||
this.getResult(); |
|||
}, |
|||
methods: { |
|||
getResult() { |
|||
creditGetBad(this.queryForm).then(res=>{ |
|||
this.tableData=res.data.records |
|||
this.total=res.data.total |
|||
}) |
|||
}, |
|||
handleClick(tab, event) { |
|||
// console.log(tab, event); |
|||
}, |
|||
resetForm(){ |
|||
this.queryForm={ |
|||
enterpriseName: "", |
|||
qualificationCategory:"", |
|||
pageNum: 1, |
|||
pageSize: 10, |
|||
} |
|||
this.getResult() |
|||
}, |
|||
toDetail(row){ |
|||
this.$router.push({ |
|||
path:"/actionAnnouncementDetail", |
|||
query:{ |
|||
enterpriseId:row.enterpriseId |
|||
} |
|||
}) |
|||
resetForm() { |
|||
this.queryForm = { |
|||
enterpriseName: "", |
|||
qualificationCategory: "", |
|||
pageNum: 1, |
|||
pageSize: 10 |
|||
}; |
|||
this.getResult(); |
|||
}, |
|||
toDetail(row) { |
|||
this.$router.push({ |
|||
path: "/actionAnnouncementDetail", |
|||
query: { |
|||
type: this.activeName, |
|||
enterpriseId: row.enterpriseId |
|||
} |
|||
}); |
|||
} |
|||
} |
|||
} |
|||
}; |
|||
</script> |
|||
<style lang="less" scoped> |
|||
.certification-page { |
|||
.certification-tabs { |
|||
height: 60px; |
|||
background: #ffffff; |
|||
border: 1px solid transparent; |
|||
|
|||
.tabs-wrap { |
|||
width: 1200px; |
|||
margin: 0 auto; |
|||
display: flex; |
|||
align-items: center; |
|||
|
|||
/deep/.el-tabs { |
|||
margin-top: 11px; |
|||
|
|||
.el-tabs__nav-wrap::after { |
|||
background: #fff; |
|||
} |
|||
|
|||
.certification-tabs { |
|||
height: 60px; |
|||
background: #FFFFFF; |
|||
border: 1px solid transparent; |
|||
|
|||
.tabs-wrap { |
|||
width: 1200px; |
|||
margin: 0 auto; |
|||
display: flex; |
|||
align-items: center; |
|||
|
|||
/deep/.el-tabs { |
|||
margin-top: 11px; |
|||
|
|||
.el-tabs__nav-wrap::after { |
|||
background: #Fff; |
|||
} |
|||
|
|||
.el-tabs__item { |
|||
font-size: 16px; |
|||
font-weight: 600; |
|||
color: #333333; |
|||
height: 48px; |
|||
} |
|||
|
|||
.el-tabs__item.is-active { |
|||
color: #005EB7; |
|||
} |
|||
|
|||
.el-tabs__active-bar { |
|||
width: 0 !important; |
|||
height: 0; |
|||
border: 10px solid transparent; |
|||
border-bottom: 10px solid #005EB7; |
|||
background: none; |
|||
left: 55px; |
|||
} |
|||
} |
|||
.el-tabs__item { |
|||
font-size: 16px; |
|||
font-weight: 600; |
|||
color: #333333; |
|||
height: 48px; |
|||
} |
|||
|
|||
.el-tabs__item.is-active { |
|||
color: #005eb7; |
|||
} |
|||
|
|||
.el-tabs__active-bar { |
|||
width: 0 !important; |
|||
height: 0; |
|||
border: 10px solid transparent; |
|||
border-bottom: 10px solid #005eb7; |
|||
background: none; |
|||
left: 55px; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
.certification-list { |
|||
background: linear-gradient(180deg, #005eb7 0%, #edf7ff 60% #edf7ff 100%); |
|||
padding: 20px 0; |
|||
|
|||
.list-wrap { |
|||
width: 1200px; |
|||
height: 1098px; |
|||
background: #ffffff; |
|||
border-radius: 8px; |
|||
margin: 0 auto; |
|||
padding: 20px; |
|||
|
|||
/deep/.el-form { |
|||
display: flex; |
|||
align-items: center; |
|||
|
|||
.el-form-item__label { |
|||
font-size: 16px; |
|||
color: #333333; |
|||
} |
|||
|
|||
.el-input__inner { |
|||
width: 300px; |
|||
border-radius: 8px; |
|||
border: 1px solid #aad8fb; |
|||
} |
|||
|
|||
.el-button { |
|||
padding: 13px 15px; |
|||
background: linear-gradient(180deg, #005ba6 0%, #0059a5 100%); |
|||
border-radius: 8px; |
|||
color: #ffffff; |
|||
|
|||
span { |
|||
font-size: 16px; |
|||
font-weight: 600; |
|||
} |
|||
|
|||
i { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
|
|||
.el-button:nth-child(1) { |
|||
margin-left: 50px; |
|||
} |
|||
|
|||
.el-button:nth-child(2) { |
|||
background: #fff; |
|||
color: #333; |
|||
} |
|||
} |
|||
|
|||
/deep/.el-table { |
|||
.el-table__header-wrapper { |
|||
height: 44px; |
|||
} |
|||
|
|||
th { |
|||
background: #ebf4fe; |
|||
|
|||
.cell { |
|||
font-size: 16px !important; |
|||
font-weight: 600 !important; |
|||
color: #005eb7; |
|||
} |
|||
} |
|||
|
|||
.certification-list { |
|||
background: linear-gradient(180deg, #005EB7 0%, #EDF7FF 60% #EDF7FF 100%); |
|||
padding: 20px 0; |
|||
|
|||
.list-wrap { |
|||
width: 1200px; |
|||
height: 1098px; |
|||
background: #FFFFFF; |
|||
border-radius: 8px; |
|||
margin: 0 auto; |
|||
padding: 20px; |
|||
|
|||
/deep/.el-form { |
|||
display: flex; |
|||
align-items: center; |
|||
|
|||
.el-form-item__label { |
|||
font-size: 16px; |
|||
color: #333333; |
|||
} |
|||
|
|||
.el-input__inner { |
|||
width: 300px; |
|||
border-radius: 8px; |
|||
border: 1px solid #AAD8FB; |
|||
} |
|||
|
|||
.el-button { |
|||
padding: 13px 15px; |
|||
background: linear-gradient(180deg, #005BA6 0%, #0059A5 100%); |
|||
border-radius: 8px; |
|||
color: #FFFFFF; |
|||
|
|||
span { |
|||
font-size: 16px; |
|||
font-weight: 600; |
|||
} |
|||
|
|||
i { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
|
|||
.el-button:nth-child(1) { |
|||
margin-left: 50px; |
|||
} |
|||
|
|||
.el-button:nth-child(2) { |
|||
background: #fff; |
|||
color: #333; |
|||
} |
|||
} |
|||
|
|||
/deep/.el-table { |
|||
.el-table__header-wrapper { |
|||
height: 44px; |
|||
} |
|||
|
|||
th { |
|||
background: #EBF4FE; |
|||
|
|||
.cell { |
|||
font-size: 16px !important; |
|||
font-weight: 600 !important; |
|||
color: #005EB7; |
|||
} |
|||
} |
|||
|
|||
tr { |
|||
background-color: #fff !important; |
|||
|
|||
.cell { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
} |
|||
tr { |
|||
background-color: #fff !important; |
|||
|
|||
.cell { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
</style> |
|||
</style> |
|||
|
@ -1,364 +1,433 @@ |
|||
<template> |
|||
<div class="certification-page"> |
|||
<div class="certification-header"> |
|||
<div class="header-wrap"> |
|||
<el-breadcrumb separator-class="el-icon-arrow-right"> |
|||
<el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item> |
|||
<el-breadcrumb-item :to="{ path: '/creditStatistics' }">信用统计</el-breadcrumb-item> |
|||
<el-breadcrumb-item>信用统计列表</el-breadcrumb-item> |
|||
</el-breadcrumb> |
|||
</div> |
|||
</div> |
|||
<div class="certification-tabs"> |
|||
<div class="tabs-wrap"> |
|||
<el-tabs v-model="activeName" @tab-click="handleClick" ref="tabcs"> |
|||
<el-tab-pane label="所有资质" name="allCertification"></el-tab-pane> |
|||
<el-tab-pane label="施工资质" name="buildCerti"></el-tab-pane> |
|||
<el-tab-pane label="监理资质" name="supervisorCerti"></el-tab-pane> |
|||
<el-tab-pane label="勘测设计资质" name="surveyCerti"></el-tab-pane> |
|||
<el-tab-pane label="招标代理资质" name="tenderingCerti"></el-tab-pane> |
|||
<el-tab-pane label="质量检测资质" name="qualityCerti"></el-tab-pane> |
|||
<el-tab-pane label="生产供货资质" name="productionCerti"></el-tab-pane> |
|||
<el-tab-pane label="白蚁防治资质" name="termiteCerti"></el-tab-pane> |
|||
<el-tab-pane label="其他资质" name="otherCerti"></el-tab-pane> |
|||
</el-tabs> |
|||
</div> |
|||
</div> |
|||
<div class="certification-list"> |
|||
<div class="list-wrap"> |
|||
<el-form :inline="true" label-width="80px" :model="queryForm"> |
|||
<el-form-item label="企业名称"> |
|||
<el-input class="name-inp-search" placeholder="请输入企业名称" |
|||
v-model="queryForm.enterpriseName"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="所在区域"> |
|||
<el-select v-model="queryForm.adcd" clearable placeholder="请选择所有区域"> |
|||
<el-option v-for="item in areaList" :key="item.xzqhdm" :label="item.name" :value="item.xzqhdm"> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item> |
|||
<el-button type="mini" icon="el-icon-search" @click="getResult()">查询</el-button> |
|||
<el-button type="mini" icon="el-icon-refresh" @click="resetForm()">重置</el-button> |
|||
</el-form-item> |
|||
</el-form> |
|||
<el-table :data="tableData" style="width: 100%" v-loading="loading"> |
|||
<el-table-column prop="enterpriseName" label="企业名称" width="700"> |
|||
<template slot-scope="scope"> |
|||
<span style="color: #005EB7;cursor: pointer;font-size: 16px !important;">{{ |
|||
scope.row.enterpriseName |
|||
}}</span> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="certification" label="企业资质" width="180" align="center"> |
|||
<template slot-scope="scope"> |
|||
<div v-for="(cateTtem, index) in categoryList" :key="(cateTtem, index)"> |
|||
<div v-if="cateTtem.dictValue == scope.row.qualificationCategory">{{ |
|||
cateTtem.dictLabel }}</div> |
|||
</div> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="area" label="所在区域" width="180" align="center"> |
|||
<template slot-scope="scope"> |
|||
<span>{{ functionArea(scope.row) }}</span> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="dynamicCreditScore" label="信用分数" align="center"> |
|||
</el-table-column> |
|||
</el-table> |
|||
<pagination :total="total" :page.sync="apidata.pageNum" :limit.sync="apidata.pageSize" |
|||
:pageSizes="pageSizes" @pagination="getResult" /> |
|||
</div> |
|||
</div> |
|||
<div class="certification-page"> |
|||
<div class="certification-header"> |
|||
<div class="header-wrap"> |
|||
<el-breadcrumb separator-class="el-icon-arrow-right"> |
|||
<el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item> |
|||
<el-breadcrumb-item :to="{ path: '/creditStatistics' }" |
|||
>信用统计</el-breadcrumb-item |
|||
> |
|||
<el-breadcrumb-item>信用统计列表</el-breadcrumb-item> |
|||
</el-breadcrumb> |
|||
</div> |
|||
</div> |
|||
<div class="certification-tabs"> |
|||
<div class="tabs-wrap"> |
|||
<el-tabs v-model="activeName" @tab-click="handleClick" ref="tabcs"> |
|||
<el-tab-pane label="所有资质" name="allCertification"></el-tab-pane> |
|||
<el-tab-pane label="施工资质" name="buildCerti"></el-tab-pane> |
|||
<el-tab-pane label="监理资质" name="supervisorCerti"></el-tab-pane> |
|||
<el-tab-pane label="勘测设计资质" name="surveyCerti"></el-tab-pane> |
|||
<el-tab-pane label="招标代理资质" name="tenderingCerti"></el-tab-pane> |
|||
<el-tab-pane label="质量检测资质" name="qualityCerti"></el-tab-pane> |
|||
<el-tab-pane |
|||
label="生产供货资质" |
|||
name="productionCerti" |
|||
></el-tab-pane> |
|||
<el-tab-pane label="白蚁防治资质" name="termiteCerti"></el-tab-pane> |
|||
<el-tab-pane label="其他资质" name="otherCerti"></el-tab-pane> |
|||
</el-tabs> |
|||
</div> |
|||
</div> |
|||
<div class="certification-list"> |
|||
<div class="list-wrap"> |
|||
<el-form :inline="true" label-width="80px" :model="queryForm"> |
|||
<el-form-item label="企业名称"> |
|||
<el-input |
|||
class="name-inp-search" |
|||
placeholder="请输入企业名称" |
|||
v-model="queryForm.enterpriseName" |
|||
></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="所在区域"> |
|||
<el-select |
|||
v-model="queryForm.adcd" |
|||
clearable |
|||
placeholder="请选择所有区域" |
|||
> |
|||
<el-option |
|||
v-for="item in areaList" |
|||
:key="item.xzqhdm" |
|||
:label="item.name" |
|||
:value="item.xzqhdm" |
|||
> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item> |
|||
<el-button type="mini" icon="el-icon-search" @click="getResult()" |
|||
>查询</el-button |
|||
> |
|||
<el-button type="mini" icon="el-icon-refresh" @click="resetForm()" |
|||
>重置</el-button |
|||
> |
|||
</el-form-item> |
|||
</el-form> |
|||
<el-table :data="tableData" style="width: 100%" v-loading="loading"> |
|||
<el-table-column prop="enterpriseName" label="企业名称" width="700"> |
|||
<template slot-scope="scope"> |
|||
<span |
|||
style="color: #005EB7;cursor: pointer;font-size: 16px !important;" |
|||
@click="goDetails(scope.row)" |
|||
>{{ scope.row.enterpriseName }}</span |
|||
> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="certification" |
|||
label="企业资质" |
|||
width="180" |
|||
align="center" |
|||
> |
|||
<template slot-scope="scope"> |
|||
<div |
|||
v-for="(cateTtem, index) in categoryList" |
|||
:key="(cateTtem, index)" |
|||
> |
|||
<div |
|||
v-if="cateTtem.dictValue == scope.row.qualificationCategory" |
|||
> |
|||
{{ cateTtem.dictLabel }} |
|||
</div> |
|||
</div> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="area" |
|||
label="所在区域" |
|||
width="180" |
|||
align="center" |
|||
> |
|||
<template slot-scope="scope"> |
|||
<span>{{ functionArea(scope.row) }}</span> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="dynamicCreditScore" |
|||
label="信用分数" |
|||
align="center" |
|||
> |
|||
</el-table-column> |
|||
</el-table> |
|||
<pagination |
|||
:total="total" |
|||
:page.sync="apidata.pageNum" |
|||
:limit.sync="apidata.pageSize" |
|||
:pageSizes="pageSizes" |
|||
@pagination="getResult" |
|||
/> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import { getDisclosure } from "@/api/home" |
|||
import { getGuangDong } from "@/api/creditStatistics" |
|||
import { getDisclosure } from "@/api/home"; |
|||
import { getGuangDong } from "@/api/creditStatistics"; |
|||
import { regionData, codeToText, TextToCode } from "element-china-area-data"; |
|||
export default { |
|||
data() { |
|||
return { |
|||
loading:false, |
|||
total: 0, |
|||
apidata: { |
|||
pageNum: 1, |
|||
pageSize: 10, |
|||
}, |
|||
pageSizes: [10, 20, 30, 50], |
|||
activeName: "allCertification", |
|||
queryForm: { |
|||
groupId: "2", |
|||
qualificationCategory: "", |
|||
enterpriseName: "", |
|||
adcd: "", |
|||
pageNum: 1, |
|||
pageSize: 10 |
|||
}, |
|||
tableData: [], |
|||
categoryList: [], |
|||
certificationData: [{ |
|||
qualificationCategory: "", |
|||
codeText: "allCertification" |
|||
}, { |
|||
qualificationCategory: "0", |
|||
codeText: "buildCerti" |
|||
}, { |
|||
qualificationCategory: "2", |
|||
codeText: "supervisorCerti" |
|||
}, { |
|||
qualificationCategory: "3", |
|||
codeText: "surveyCerti" |
|||
}, { |
|||
qualificationCategory: "1", |
|||
codeText: "tenderingCerti" |
|||
}, { |
|||
qualificationCategory: "5", |
|||
codeText: "productionCerti" |
|||
}, { |
|||
qualificationCategory: "4", |
|||
codeText: "qualityCerti" |
|||
}, { |
|||
qualificationCategory: "6", |
|||
codeText: "termiteCerti" |
|||
}, { |
|||
qualificationCategory: "9", |
|||
codeText: "otherCerti" |
|||
}], |
|||
areaList: [] |
|||
} |
|||
}, |
|||
mounted() { |
|||
this.getArea() |
|||
this.activeName = this.$route.query.codeText |
|||
this.queryForm.qualificationCategory = this.$route.query.qualificationCategory |
|||
if (this.activeName !== "allCertification" && this.activeName !== "buildCerti" && this.activeName !== "supervisorCerti" && this.activeName !== "otherCerti") { |
|||
this.resetActivePosition(this.$refs.tabcs.$el); |
|||
} |
|||
this.getResult() |
|||
this.getDicts("qualification_type").then(res => { |
|||
this.categoryList = res.data.data |
|||
}) |
|||
}, |
|||
methods: { |
|||
getResult() { |
|||
this.loading=true |
|||
getDisclosure({ ...this.queryForm }).then(res => { |
|||
this.loading=false |
|||
this.tableData = [] |
|||
this.tableData = res.data.data.records |
|||
this.total = res.data.data.total |
|||
}) |
|||
|
|||
data() { |
|||
return { |
|||
loading: false, |
|||
total: 0, |
|||
apidata: { |
|||
pageNum: 1, |
|||
pageSize: 10 |
|||
}, |
|||
pageSizes: [10, 20, 30, 50], |
|||
activeName: "allCertification", |
|||
queryForm: { |
|||
groupId: "2", |
|||
qualificationCategory: "", |
|||
enterpriseName: "", |
|||
adcd: "", |
|||
pageNum: 1, |
|||
pageSize: 10 |
|||
}, |
|||
tableData: [], |
|||
categoryList: [], |
|||
certificationData: [ |
|||
{ |
|||
qualificationCategory: "", |
|||
codeText: "allCertification" |
|||
}, |
|||
{ |
|||
qualificationCategory: "0", |
|||
codeText: "buildCerti" |
|||
}, |
|||
getArea() { |
|||
getGuangDong().then(res => { |
|||
this.areaList = res.data.data |
|||
}) |
|||
{ |
|||
qualificationCategory: "2", |
|||
codeText: "supervisorCerti" |
|||
}, |
|||
resetForm() { |
|||
this.queryForm.enterpriseName="" |
|||
this.queryForm.adcd="" |
|||
this.queryForm.pageNum=1 |
|||
this.getResult() |
|||
{ |
|||
qualificationCategory: "3", |
|||
codeText: "surveyCerti" |
|||
}, |
|||
handleClick(tab, event) { |
|||
// console.log(tab, event); |
|||
this.certificationData.forEach(item => { |
|||
if (item.codeText == tab.name) { |
|||
this.queryForm.qualificationCategory = item.qualificationCategory |
|||
} |
|||
}) |
|||
this.getResult() |
|||
if (tab.name !== "allCertification" && tab.name !== "buildCerti" && tab.name !== "supervisorCerti" && tab.name !== "otherCerti") { |
|||
this.resetActivePosition(this.$refs.tabcs.$el); |
|||
} |
|||
{ |
|||
qualificationCategory: "1", |
|||
codeText: "tenderingCerti" |
|||
}, |
|||
resetActivePosition($el) { |
|||
this.$nextTick(() => { |
|||
const activeEl = $el.querySelector('.el-tabs__item.is-active'); |
|||
const lineEl = $el.querySelector('.el-tabs__active-bar'); |
|||
const style = getComputedStyle(activeEl); |
|||
const pl = style.paddingLeft.match(/\d+/)[0] * 1; |
|||
lineEl.style.transform = |
|||
'translateX(' + (activeEl.offsetLeft + 40) + 'px)'; |
|||
// console.log(activeEl.offsetLeft, pl); |
|||
}); |
|||
{ |
|||
qualificationCategory: "5", |
|||
codeText: "productionCerti" |
|||
}, |
|||
functionArea(row) { |
|||
if (row.adcd) { |
|||
let provinceCode = row.adcd.slice(0, 2); |
|||
let cityCode = row.adcd.slice(2, 4); |
|||
let areaCode = row.adcd.slice(4, 6); |
|||
if (areaCode != "00") { |
|||
return ( |
|||
codeToText[provinceCode] + |
|||
"/" + |
|||
codeToText[provinceCode + cityCode] + |
|||
"/" + |
|||
codeToText[provinceCode + cityCode + areaCode] |
|||
); |
|||
} else if (cityCode != "00") { |
|||
return ( |
|||
codeToText[provinceCode] + "/" + codeToText[provinceCode + cityCode] |
|||
); |
|||
} else { |
|||
return codeToText[provinceCode]; |
|||
} |
|||
} |
|||
{ |
|||
qualificationCategory: "4", |
|||
codeText: "qualityCerti" |
|||
}, |
|||
{ |
|||
qualificationCategory: "6", |
|||
codeText: "termiteCerti" |
|||
}, |
|||
{ |
|||
qualificationCategory: "9", |
|||
codeText: "otherCerti" |
|||
} |
|||
], |
|||
areaList: [] |
|||
}; |
|||
}, |
|||
mounted() { |
|||
this.getArea(); |
|||
this.activeName = this.$route.query.codeText; |
|||
this.queryForm.qualificationCategory = this.$route.query.qualificationCategory; |
|||
if ( |
|||
this.activeName !== "allCertification" && |
|||
this.activeName !== "buildCerti" && |
|||
this.activeName !== "supervisorCerti" && |
|||
this.activeName !== "otherCerti" |
|||
) { |
|||
this.resetActivePosition(this.$refs.tabcs.$el); |
|||
} |
|||
} |
|||
this.getResult(); |
|||
this.getDicts("qualification_type").then(res => { |
|||
this.categoryList = res.data.data; |
|||
}); |
|||
}, |
|||
methods: { |
|||
goDetails(row) { |
|||
this.$router.push("/enterpriseInDetail?enterpriseId=" + row.enterpriseId); |
|||
}, |
|||
getResult() { |
|||
this.loading = true; |
|||
getDisclosure({ ...this.queryForm }).then(res => { |
|||
this.loading = false; |
|||
this.tableData = []; |
|||
this.tableData = res.data.data.records; |
|||
this.total = res.data.data.total; |
|||
}); |
|||
}, |
|||
getArea() { |
|||
getGuangDong().then(res => { |
|||
this.areaList = res.data.data; |
|||
}); |
|||
}, |
|||
resetForm() { |
|||
this.queryForm.enterpriseName = ""; |
|||
this.queryForm.adcd = ""; |
|||
this.queryForm.pageNum = 1; |
|||
this.getResult(); |
|||
}, |
|||
handleClick(tab, event) { |
|||
// console.log(tab, event); |
|||
this.certificationData.forEach(item => { |
|||
if (item.codeText == tab.name) { |
|||
this.queryForm.qualificationCategory = item.qualificationCategory; |
|||
} |
|||
}); |
|||
this.getResult(); |
|||
if ( |
|||
tab.name !== "allCertification" && |
|||
tab.name !== "buildCerti" && |
|||
tab.name !== "supervisorCerti" && |
|||
tab.name !== "otherCerti" |
|||
) { |
|||
this.resetActivePosition(this.$refs.tabcs.$el); |
|||
} |
|||
}, |
|||
resetActivePosition($el) { |
|||
this.$nextTick(() => { |
|||
const activeEl = $el.querySelector(".el-tabs__item.is-active"); |
|||
const lineEl = $el.querySelector(".el-tabs__active-bar"); |
|||
const style = getComputedStyle(activeEl); |
|||
const pl = style.paddingLeft.match(/\d+/)[0] * 1; |
|||
lineEl.style.transform = |
|||
"translateX(" + (activeEl.offsetLeft + 40) + "px)"; |
|||
// console.log(activeEl.offsetLeft, pl); |
|||
}); |
|||
}, |
|||
functionArea(row) { |
|||
if (row.adcd) { |
|||
let provinceCode = row.adcd.slice(0, 2); |
|||
let cityCode = row.adcd.slice(2, 4); |
|||
let areaCode = row.adcd.slice(4, 6); |
|||
if (areaCode != "00") { |
|||
return ( |
|||
codeToText[provinceCode] + |
|||
"/" + |
|||
codeToText[provinceCode + cityCode] + |
|||
"/" + |
|||
codeToText[provinceCode + cityCode + areaCode] |
|||
); |
|||
} else if (cityCode != "00") { |
|||
return ( |
|||
codeToText[provinceCode] + "/" + codeToText[provinceCode + cityCode] |
|||
); |
|||
} else { |
|||
return codeToText[provinceCode]; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
}; |
|||
</script> |
|||
<style lang="less" scoped> |
|||
.certification-page { |
|||
.certification-header { |
|||
height: 40px; |
|||
background: #EBF4FE; |
|||
.certification-header { |
|||
height: 40px; |
|||
background: #ebf4fe; |
|||
|
|||
.header-wrap { |
|||
width: 1200px; |
|||
margin: 0 auto; |
|||
display: flex; |
|||
align-items: center; |
|||
.header-wrap { |
|||
width: 1200px; |
|||
margin: 0 auto; |
|||
display: flex; |
|||
align-items: center; |
|||
|
|||
/deep/.el-breadcrumb { |
|||
margin-top: 10px; |
|||
/deep/.el-breadcrumb { |
|||
margin-top: 10px; |
|||
|
|||
.el-breadcrumb__item { |
|||
.el-breadcrumb__inner { |
|||
font-size: 16px; |
|||
color: #005EB7 !important; |
|||
} |
|||
.el-breadcrumb__item { |
|||
.el-breadcrumb__inner { |
|||
font-size: 16px; |
|||
color: #005eb7 !important; |
|||
} |
|||
|
|||
.el-breadcrumb__separator { |
|||
font-size: 16px; |
|||
color: #005EB7 !important; |
|||
} |
|||
} |
|||
} |
|||
.el-breadcrumb__separator { |
|||
font-size: 16px; |
|||
color: #005eb7 !important; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
.certification-tabs { |
|||
height: 60px; |
|||
background: #FFFFFF; |
|||
border: 1px solid transparent; |
|||
.certification-tabs { |
|||
height: 60px; |
|||
background: #ffffff; |
|||
border: 1px solid transparent; |
|||
|
|||
.tabs-wrap { |
|||
width: 1200px; |
|||
margin: 0 auto; |
|||
display: flex; |
|||
align-items: center; |
|||
.tabs-wrap { |
|||
width: 1200px; |
|||
margin: 0 auto; |
|||
display: flex; |
|||
align-items: center; |
|||
|
|||
/deep/.el-tabs { |
|||
margin-top: 11px; |
|||
/deep/.el-tabs { |
|||
margin-top: 11px; |
|||
|
|||
.el-tabs__nav-wrap::after { |
|||
background: #Fff; |
|||
} |
|||
.el-tabs__nav-wrap::after { |
|||
background: #fff; |
|||
} |
|||
|
|||
.el-tabs__item { |
|||
font-size: 16px; |
|||
font-weight: 600; |
|||
color: #333333; |
|||
height: 48px; |
|||
} |
|||
.el-tabs__item { |
|||
font-size: 16px; |
|||
font-weight: 600; |
|||
color: #333333; |
|||
height: 48px; |
|||
} |
|||
|
|||
.el-tabs__item.is-active { |
|||
color: #005EB7; |
|||
} |
|||
.el-tabs__item.is-active { |
|||
color: #005eb7; |
|||
} |
|||
|
|||
.el-tabs__active-bar { |
|||
width: 0 !important; |
|||
height: 0; |
|||
border: 10px solid transparent; |
|||
border-bottom: 10px solid #005EB7; |
|||
background: none; |
|||
left: 20px; |
|||
} |
|||
} |
|||
.el-tabs__active-bar { |
|||
width: 0 !important; |
|||
height: 0; |
|||
border: 10px solid transparent; |
|||
border-bottom: 10px solid #005eb7; |
|||
background: none; |
|||
left: 20px; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
|
|||
.certification-list { |
|||
background: linear-gradient(180deg, #005EB7 0%, #EDF7FF 60% #EDF7FF 100%); |
|||
padding: 20px 0; |
|||
|
|||
.list-wrap { |
|||
width: 1200px; |
|||
height: 1098px; |
|||
background: #FFFFFF; |
|||
border-radius: 8px; |
|||
margin: 0 auto; |
|||
padding: 20px; |
|||
.certification-list { |
|||
background: linear-gradient(180deg, #005eb7 0%, #edf7ff 60% #edf7ff 100%); |
|||
padding: 20px 0; |
|||
|
|||
/deep/.el-form { |
|||
display: flex; |
|||
align-items: center; |
|||
.list-wrap { |
|||
width: 1200px; |
|||
height: 1098px; |
|||
background: #ffffff; |
|||
border-radius: 8px; |
|||
margin: 0 auto; |
|||
padding: 20px; |
|||
|
|||
.el-form-item__label { |
|||
font-size: 16px; |
|||
color: #333333; |
|||
} |
|||
/deep/.el-form { |
|||
display: flex; |
|||
align-items: center; |
|||
|
|||
.el-input__inner { |
|||
width: 300px; |
|||
border-radius: 8px; |
|||
border: 1px solid #AAD8FB; |
|||
} |
|||
.el-form-item__label { |
|||
font-size: 16px; |
|||
color: #333333; |
|||
} |
|||
|
|||
.el-button { |
|||
padding: 13px 15px; |
|||
background: linear-gradient(180deg, #005BA6 0%, #0059A5 100%); |
|||
border-radius: 8px; |
|||
color: #FFFFFF; |
|||
.el-input__inner { |
|||
width: 300px; |
|||
border-radius: 8px; |
|||
border: 1px solid #aad8fb; |
|||
} |
|||
|
|||
span { |
|||
font-size: 16px; |
|||
font-weight: 600; |
|||
} |
|||
.el-button { |
|||
padding: 13px 15px; |
|||
background: linear-gradient(180deg, #005ba6 0%, #0059a5 100%); |
|||
border-radius: 8px; |
|||
color: #ffffff; |
|||
|
|||
i { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
span { |
|||
font-size: 16px; |
|||
font-weight: 600; |
|||
} |
|||
|
|||
.el-button:nth-child(1) { |
|||
margin-left: 50px; |
|||
} |
|||
i { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
|
|||
.el-button:nth-child(2) { |
|||
background: #fff; |
|||
color: #333; |
|||
} |
|||
} |
|||
.el-button:nth-child(1) { |
|||
margin-left: 50px; |
|||
} |
|||
|
|||
/deep/.el-table { |
|||
.el-table__header-wrapper { |
|||
height: 44px; |
|||
} |
|||
.el-button:nth-child(2) { |
|||
background: #fff; |
|||
color: #333; |
|||
} |
|||
} |
|||
|
|||
th { |
|||
background: #EBF4FE; |
|||
/deep/.el-table { |
|||
.el-table__header-wrapper { |
|||
height: 44px; |
|||
} |
|||
|
|||
.cell { |
|||
font-size: 16px !important; |
|||
font-weight: 600 !important; |
|||
color: #005EB7; |
|||
} |
|||
} |
|||
th { |
|||
background: #ebf4fe; |
|||
|
|||
tr { |
|||
background-color: #fff !important; |
|||
.cell { |
|||
font-size: 16px !important; |
|||
font-weight: 600 !important; |
|||
color: #005eb7; |
|||
} |
|||
} |
|||
|
|||
.cell { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
} |
|||
tr { |
|||
background-color: #fff !important; |
|||
|
|||
.cell { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
</style> |
|||
</style> |
|||
|
@ -1,108 +1,122 @@ |
|||
<template> |
|||
<div class="qualified-wrap"> |
|||
<headerImg :title="'所有资质企业信用排名'" :url="require('@/assets/image/icon_syzzqyxy.png')" /> |
|||
<div class="sort-btns"> |
|||
<div class="btn-item"> |
|||
<span>正序</span> |
|||
<i class="el-icon-arrow-up"></i> |
|||
</div> |
|||
<div class="btn-item"> |
|||
<span>倒叙</span> |
|||
<i class="el-icon-arrow-up"></i> |
|||
</div> |
|||
</div> |
|||
<div class="qualified-list"> |
|||
<div class="qualified-item" v-for="(item, index) in qualifiedList" :key="(item, index)"> |
|||
<span>{{ item.enterpriseName }}</span> |
|||
<span>{{ item.dynamicCreditScore }}</span> |
|||
</div> |
|||
</div> |
|||
<div class="qualified-wrap"> |
|||
<headerImg |
|||
:title="'所有资质企业信用排名'" |
|||
:url="require('@/assets/image/icon_syzzqyxy.png')" |
|||
/> |
|||
<div class="sort-btns"> |
|||
<div class="btn-item"> |
|||
<span>正序</span> |
|||
<i class="el-icon-arrow-up"></i> |
|||
</div> |
|||
<div class="btn-item"> |
|||
<span>倒叙</span> |
|||
<i class="el-icon-arrow-up"></i> |
|||
</div> |
|||
</div> |
|||
<div class="qualified-list"> |
|||
<div |
|||
class="qualified-item" |
|||
v-for="(item, index) in qualifiedList" |
|||
:key="(item, index)" |
|||
> |
|||
<span @click="goDetails(item)" style="cursor: pointer;">{{ |
|||
item.enterpriseName |
|||
}}</span> |
|||
<span>{{ item.dynamicCreditScore }}</span> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import { getDisclosure } from "@/api/home" |
|||
import { getDisclosure } from "@/api/home"; |
|||
export default { |
|||
data() { |
|||
return { |
|||
qualifiedList: [] |
|||
} |
|||
}, |
|||
mounted() { |
|||
this.getList() |
|||
data() { |
|||
return { |
|||
qualifiedList: [] |
|||
}; |
|||
}, |
|||
mounted() { |
|||
this.getList(); |
|||
}, |
|||
methods: { |
|||
goDetails(item) { |
|||
this.$router.push( |
|||
"/enterpriseInDetail?enterpriseId=" + item.enterpriseId |
|||
); |
|||
}, |
|||
methods: { |
|||
getList() { |
|||
getDisclosure({ 'groupId': '2', pageNum: 1, pageSize: 10 }).then(res => { |
|||
this.qualifiedList=res.data.data.records |
|||
}) |
|||
}, |
|||
getList() { |
|||
getDisclosure({ groupId: "2", pageNum: 1, pageSize: 10 }).then(res => { |
|||
this.qualifiedList = res.data.data.records; |
|||
}); |
|||
} |
|||
} |
|||
} |
|||
}; |
|||
</script> |
|||
<style lang="less" scoped> |
|||
.qualified-wrap { |
|||
height: 824px; |
|||
background: #FFFFFF; |
|||
border-radius: 8px; |
|||
padding: 20px; |
|||
height: 824px; |
|||
background: #ffffff; |
|||
border-radius: 8px; |
|||
padding: 20px; |
|||
|
|||
.sort-btns { |
|||
height: 40px; |
|||
background: #f6f6f6; |
|||
margin-top: 10px; |
|||
display: flex; |
|||
justify-content: center; |
|||
align-items: center; |
|||
|
|||
.sort-btns { |
|||
height: 40px; |
|||
background: #F6F6F6; |
|||
margin-top: 10px; |
|||
.btn-item { |
|||
cursor: pointer; |
|||
margin-right: 50px; |
|||
font-size: 16px; |
|||
font-weight: 600; |
|||
color: #005eb7; |
|||
display: flex; |
|||
align-items: center; |
|||
|
|||
/deep/i { |
|||
width: 20px; |
|||
height: 20px; |
|||
background: #fff; |
|||
border-radius: 50%; |
|||
font-size: 10px; |
|||
font-weight: 600; |
|||
display: flex; |
|||
justify-content: center; |
|||
align-items: center; |
|||
margin-left: 5px; |
|||
} |
|||
} |
|||
|
|||
.btn-item { |
|||
cursor: pointer; |
|||
margin-right: 50px; |
|||
font-size: 16px; |
|||
font-weight: 600; |
|||
color: #005EB7; |
|||
display: flex; |
|||
align-items: center; |
|||
|
|||
/deep/i { |
|||
width: 20px; |
|||
height: 20px; |
|||
background: #fff; |
|||
border-radius: 50%; |
|||
font-size: 10px; |
|||
font-weight: 600; |
|||
display: flex; |
|||
justify-content: center; |
|||
align-items: center; |
|||
margin-left: 5px; |
|||
} |
|||
} |
|||
|
|||
.btn-item:last-child { |
|||
margin-right: 0; |
|||
color: #333333; |
|||
} |
|||
.btn-item:last-child { |
|||
margin-right: 0; |
|||
color: #333333; |
|||
} |
|||
} |
|||
|
|||
.qualified-list { |
|||
margin-top: 10px; |
|||
.qualified-list { |
|||
margin-top: 10px; |
|||
|
|||
.qualified-item { |
|||
height: 44px; |
|||
line-height: 44px; |
|||
border-bottom: 1px solid #DADCE3; |
|||
display: flex; |
|||
justify-content: space-between; |
|||
.qualified-item { |
|||
height: 44px; |
|||
line-height: 44px; |
|||
border-bottom: 1px solid #dadce3; |
|||
display: flex; |
|||
justify-content: space-between; |
|||
|
|||
span { |
|||
display: block; |
|||
font-size: 16px; |
|||
color: #005EB7; |
|||
} |
|||
span { |
|||
display: block; |
|||
font-size: 16px; |
|||
color: #005eb7; |
|||
} |
|||
|
|||
span:last-child { |
|||
color: #FF6200; |
|||
} |
|||
} |
|||
span:last-child { |
|||
color: #ff6200; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
</style> |
|||
</style> |
|||
|
@ -1,181 +1,212 @@ |
|||
<template> |
|||
<div class="good-notice"> |
|||
<headerImg :title="title" :url="url" :isMore="true" /> |
|||
<div class="notice-main"> |
|||
<div class="table-title"> |
|||
<span>企业名称</span> |
|||
<span>项目名称</span> |
|||
<span>{{title=='良好信用信息公告'?'加分':'扣分'}}</span> |
|||
<span>企业资质</span> |
|||
<span>所在区域</span> |
|||
<span>发布单位</span> |
|||
<span>建立时间</span> |
|||
</div> |
|||
<div class="table-list"> |
|||
<div class="table-item" v-for="(item, index) in noticeList" :key="(item, index)"> |
|||
<div class="enterpriseName">{{ item.enterpriseName }}</div> |
|||
<div class="projectName">{{ item.projectName }}</div> |
|||
<div class="bonusPoints">{{title=='良好信用信息公告'?'+':'-'}}{{ item.bonusPoints }}</div> |
|||
<div class="qualificationCategory"> |
|||
<div v-for="(cateTtem, index) in categoryList" :key="(cateTtem, index)"> |
|||
<div v-if="cateTtem.dictValue == item.qualificationCategory">{{ |
|||
cateTtem.dictLabel }}</div> |
|||
</div> |
|||
</div> |
|||
<div class="projectLocation">{{ item.projectLocation }}</div> |
|||
<div class="publishUnit">{{ item.publishUnit }}</div> |
|||
<div class="noticeTime">{{ item.noticeTime }}</div> |
|||
</div> |
|||
<div class="good-notice"> |
|||
<headerImg :title="title" :url="url" :isMore="true" @toMore="toMore" /> |
|||
<div class="notice-main"> |
|||
<div class="table-title"> |
|||
<span>企业名称</span> |
|||
<span>项目名称</span> |
|||
<span>{{ title == "良好信用信息公告" ? "加分" : "扣分" }}</span> |
|||
<span>企业资质</span> |
|||
<span>所在区域</span> |
|||
<span>发布单位</span> |
|||
<span>建立时间</span> |
|||
</div> |
|||
<div class="table-list"> |
|||
<div |
|||
class="table-item" |
|||
v-for="(item, index) in noticeList" |
|||
:key="(item, index)" |
|||
> |
|||
<div class="enterpriseName" @click="goDetails(item)"> |
|||
{{ item.enterpriseName }} |
|||
</div> |
|||
<div class="projectName">{{ item.projectName }}</div> |
|||
<div class="bonusPoints"> |
|||
{{ title == "良好信用信息公告" ? "+" : "-" }}{{ item.bonusPoints }} |
|||
</div> |
|||
<div class="qualificationCategory"> |
|||
<div |
|||
v-for="(cateTtem, index) in categoryList" |
|||
:key="(cateTtem, index)" |
|||
> |
|||
<div v-if="cateTtem.dictValue == item.qualificationCategory"> |
|||
{{ cateTtem.dictLabel }} |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="projectLocation">{{ item.projectLocation }}</div> |
|||
<div class="publishUnit">{{ item.publishUnit }}</div> |
|||
<div class="noticeTime">{{ item.noticeTime }}</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
export default { |
|||
props: { |
|||
title: { |
|||
type: String, |
|||
default: "" |
|||
}, |
|||
url: { |
|||
type: String, |
|||
default: "" |
|||
}, |
|||
noticeList:{ |
|||
type:Array, |
|||
default: ()=>{ |
|||
return [] |
|||
} |
|||
} |
|||
props: { |
|||
title: { |
|||
type: String, |
|||
default: "" |
|||
}, |
|||
url: { |
|||
type: String, |
|||
default: "" |
|||
}, |
|||
data() { |
|||
return { |
|||
categoryList:[] |
|||
noticeList: { |
|||
type: Array, |
|||
default: () => { |
|||
return []; |
|||
} |
|||
} |
|||
}, |
|||
data() { |
|||
return { |
|||
categoryList: [] |
|||
}; |
|||
}, |
|||
mounted() { |
|||
this.getDicts("qualification_type").then(res => { |
|||
this.categoryList = res.data.data; |
|||
}); |
|||
}, |
|||
methods: { |
|||
toMore() { |
|||
this.$router.push({ |
|||
path: "/announcement", |
|||
query: { |
|||
type: this.title == "良好信用信息公告" ? "good" : "bad" |
|||
} |
|||
}); |
|||
}, |
|||
mounted(){ |
|||
this.getDicts("qualification_type").then(res => { |
|||
this.categoryList = res.data.data |
|||
}) |
|||
goDetails(item) { |
|||
this.$router.push({ |
|||
path: "/actionAnnouncementDetail", |
|||
query: { |
|||
type: this.title == "良好信用信息公告" ? "good" : "bad", |
|||
enterpriseId: item.enterpriseId |
|||
} |
|||
}); |
|||
} |
|||
} |
|||
} |
|||
}; |
|||
</script> |
|||
<style lang="less" scoped> |
|||
.good-notice { |
|||
background: #FFFFFF; |
|||
border-radius: 8px; |
|||
background: #ffffff; |
|||
border-radius: 8px; |
|||
margin-top: 20px; |
|||
padding: 20px; |
|||
|
|||
.notice-main { |
|||
margin-top: 20px; |
|||
padding: 20px; |
|||
|
|||
.notice-main { |
|||
margin-top: 20px; |
|||
|
|||
.table-title { |
|||
display: flex; |
|||
|
|||
span { |
|||
display: block; |
|||
font-size: 16px; |
|||
font-weight: 600; |
|||
color: #005EB7; |
|||
} |
|||
|
|||
span:nth-child(1) { |
|||
width: 52%; |
|||
// border: 1px solid red; |
|||
} |
|||
|
|||
span:nth-child(2) { |
|||
width: 36%; |
|||
// border: 1px solid blue; |
|||
text-align: center; |
|||
} |
|||
|
|||
span:nth-child(3) { |
|||
width: 10%; |
|||
// border: 1px solid rgb(49, 70, 60); |
|||
text-align: center; |
|||
} |
|||
|
|||
span:nth-child(4) { |
|||
width: 18%; |
|||
// border: 1px solid olive; |
|||
text-align: center; |
|||
} |
|||
|
|||
span:nth-child(5) { |
|||
width: 12%; |
|||
// border: 1px solid rgb(2, 0, 128); |
|||
text-align: center; |
|||
} |
|||
|
|||
span:nth-child(6) { |
|||
width: 20%; |
|||
// border: 1px solid rgb(128, 41, 0); |
|||
text-align: center; |
|||
} |
|||
|
|||
span:nth-child(7) { |
|||
width: 15%; |
|||
// border: 1px solid rgb(128, 0, 38); |
|||
text-align: center; |
|||
} |
|||
|
|||
.table-title { |
|||
display: flex; |
|||
|
|||
span { |
|||
display: block; |
|||
font-size: 16px; |
|||
font-weight: 600; |
|||
color: #005eb7; |
|||
} |
|||
|
|||
span:nth-child(1) { |
|||
width: 52%; |
|||
// border: 1px solid red; |
|||
} |
|||
|
|||
span:nth-child(2) { |
|||
width: 36%; |
|||
// border: 1px solid blue; |
|||
text-align: center; |
|||
} |
|||
|
|||
span:nth-child(3) { |
|||
width: 10%; |
|||
// border: 1px solid rgb(49, 70, 60); |
|||
text-align: center; |
|||
} |
|||
|
|||
span:nth-child(4) { |
|||
width: 18%; |
|||
// border: 1px solid olive; |
|||
text-align: center; |
|||
} |
|||
|
|||
span:nth-child(5) { |
|||
width: 12%; |
|||
// border: 1px solid rgb(2, 0, 128); |
|||
text-align: center; |
|||
} |
|||
|
|||
span:nth-child(6) { |
|||
width: 20%; |
|||
// border: 1px solid rgb(128, 41, 0); |
|||
text-align: center; |
|||
} |
|||
|
|||
span:nth-child(7) { |
|||
width: 15%; |
|||
// border: 1px solid rgb(128, 0, 38); |
|||
text-align: center; |
|||
} |
|||
} |
|||
|
|||
.table-list { |
|||
margin-top: 10px; |
|||
height: 225px; |
|||
overflow: hidden; |
|||
|
|||
.table-item { |
|||
height: 44px; |
|||
line-height: 44px; |
|||
border-top: 1px solid #d8d6d6; |
|||
display: flex; |
|||
|
|||
div { |
|||
display: block; |
|||
font-size: 16px; |
|||
color: #333333; |
|||
} |
|||
|
|||
.enterpriseName { |
|||
width: 52%; |
|||
color: #005eb7; |
|||
cursor: pointer; |
|||
} |
|||
|
|||
.projectName { |
|||
width: 36%; |
|||
text-align: center; |
|||
} |
|||
|
|||
.bonusPoints { |
|||
width: 10%; |
|||
text-align: center; |
|||
} |
|||
|
|||
.qualificationCategory { |
|||
width: 18%; |
|||
text-align: center; |
|||
} |
|||
|
|||
.projectLocation { |
|||
width: 12%; |
|||
text-align: center; |
|||
} |
|||
|
|||
.publishUnit { |
|||
width: 20%; |
|||
text-align: center; |
|||
} |
|||
|
|||
.table-list { |
|||
margin-top: 10px; |
|||
height: 225px; |
|||
overflow: hidden; |
|||
|
|||
.table-item { |
|||
height: 44px; |
|||
line-height: 44px; |
|||
border-top: 1px solid #d8d6d6; |
|||
display: flex; |
|||
|
|||
div { |
|||
display: block; |
|||
font-size: 16px; |
|||
color: #333333; |
|||
} |
|||
|
|||
.enterpriseName { |
|||
width: 52%; |
|||
color: #005EB7; |
|||
cursor: pointer; |
|||
} |
|||
|
|||
.projectName { |
|||
width: 36%; |
|||
text-align: center; |
|||
} |
|||
|
|||
.bonusPoints { |
|||
width: 10%; |
|||
text-align: center; |
|||
} |
|||
|
|||
.qualificationCategory { |
|||
width: 18%; |
|||
text-align: center; |
|||
} |
|||
|
|||
.projectLocation { |
|||
width: 12%; |
|||
text-align: center; |
|||
} |
|||
|
|||
.publishUnit { |
|||
width: 20%; |
|||
text-align: center; |
|||
} |
|||
|
|||
.noticeTime { |
|||
width: 15%; |
|||
text-align: center; |
|||
} |
|||
} |
|||
.noticeTime { |
|||
width: 15%; |
|||
text-align: center; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
</style> |
|||
</style> |
|||
|
@ -1,111 +1,150 @@ |
|||
<template> |
|||
<div class="action-wrap"> |
|||
<headerImg :title="title" /> |
|||
<el-table :data="tableData" style="width: 100%"> |
|||
<el-table-column prop="projectName" label="项目名称" width="300"> |
|||
<template slot-scope="scope"> |
|||
<span style="color: #005EB7;cursor: pointer;font-size: 16px !important;" @click="toDetail()">{{ |
|||
scope.row.projectName |
|||
}}</span> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="enterpriseName" label="责任主体" width="320" align="center"> |
|||
</el-table-column> |
|||
<el-table-column prop="qualificationCategory" label="企业资质" align="center"> |
|||
<template slot-scope="scope"> |
|||
<div v-for="(cateTtem, index) in categoryList" :key="(cateTtem, index)"> |
|||
<div v-if="cateTtem.dictValue == scope.row.qualificationCategory">{{ |
|||
cateTtem.dictLabel }}</div> |
|||
</div> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="bonusPoints" :label="title == '良好行为列表' ? '加分' : '扣分'" align="center"> |
|||
</el-table-column> |
|||
<el-table-column prop="updateTime" label="动态信用核定时间" align="center"> |
|||
<template slot-scope="scope"> |
|||
<div> |
|||
{{ scope.row.updateTime?scope.row.updateTime.split(" ")[0]:"-" }} |
|||
</div> |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
<pagination :total="total" :page.sync="apidata.pageNum" :limit.sync="apidata.pageSize" :pageSizes="pageSizes" |
|||
@pagination="getResult" /> |
|||
</div> |
|||
<div class="action-wrap"> |
|||
<headerImg :title="title" /> |
|||
<el-table :data="tableData" style="width: 100%"> |
|||
<el-table-column prop="projectName" label="项目名称" width="300"> |
|||
<template slot-scope="scope"> |
|||
<span |
|||
style="color: #005EB7;cursor: pointer;font-size: 16px !important;" |
|||
@click="goDetails(scope.row)" |
|||
>{{ scope.row.projectName }}</span |
|||
> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="enterpriseName" |
|||
label="责任主体" |
|||
width="320" |
|||
align="center" |
|||
> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="qualificationCategory" |
|||
label="企业资质" |
|||
align="center" |
|||
> |
|||
<template slot-scope="scope"> |
|||
<div |
|||
v-for="(cateTtem, index) in categoryList" |
|||
:key="(cateTtem, index)" |
|||
> |
|||
<div v-if="cateTtem.dictValue == scope.row.qualificationCategory"> |
|||
{{ cateTtem.dictLabel }} |
|||
</div> |
|||
</div> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="bonusPoints" |
|||
:label="title == '良好行为列表' ? '加分' : '扣分'" |
|||
align="center" |
|||
> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="updateTime" |
|||
label="动态信用核定时间" |
|||
align="center" |
|||
> |
|||
<template slot-scope="scope"> |
|||
<div> |
|||
{{ |
|||
scope.row.updateTime ? scope.row.updateTime.split(" ")[0] : "-" |
|||
}} |
|||
</div> |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
<pagination |
|||
:total="total" |
|||
:page.sync="apidata.pageNum" |
|||
:limit.sync="apidata.pageSize" |
|||
:pageSizes="pageSizes" |
|||
@pagination="getResult" |
|||
/> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
export default { |
|||
props: { |
|||
title: { |
|||
type: String, |
|||
default: "" |
|||
}, |
|||
tableData: { |
|||
type: Array, |
|||
default: () => { |
|||
return [] |
|||
} |
|||
}, |
|||
total: { |
|||
type: Number, |
|||
default: 0 |
|||
} |
|||
props: { |
|||
title: { |
|||
type: String, |
|||
default: "" |
|||
}, |
|||
data() { |
|||
return { |
|||
apidata: { |
|||
pageNum: 1, |
|||
pageSize: 10, |
|||
}, |
|||
pageSizes: [10, 20, 30, 50], |
|||
categoryList: [] |
|||
} |
|||
tableData: { |
|||
type: Array, |
|||
default: () => { |
|||
return []; |
|||
} |
|||
}, |
|||
mounted() { |
|||
console.log(this.tableData); |
|||
this.getDicts("qualification_type").then(res => { |
|||
this.categoryList = res.data.data |
|||
}) |
|||
total: { |
|||
type: Number, |
|||
default: 0 |
|||
} |
|||
}, |
|||
data() { |
|||
return { |
|||
apidata: { |
|||
pageNum: 1, |
|||
pageSize: 10 |
|||
}, |
|||
pageSizes: [10, 20, 30, 50], |
|||
categoryList: [] |
|||
}; |
|||
}, |
|||
mounted() { |
|||
console.log(this.tableData); |
|||
this.getDicts("qualification_type").then(res => { |
|||
this.categoryList = res.data.data; |
|||
}); |
|||
}, |
|||
methods: { |
|||
getResult() { |
|||
if (title == "良好行为列表") { |
|||
this.$emit("getGoodResult"); |
|||
} else { |
|||
this.$emit("getBadResult"); |
|||
} |
|||
}, |
|||
methods: { |
|||
getResult() { |
|||
if(title == '良好行为列表'){ |
|||
this.$emit("getGoodResult") |
|||
}else{ |
|||
this.$emit("getBadResult") |
|||
} |
|||
}, |
|||
goDetails(item) { |
|||
this.$router.push({ |
|||
path: "/actionAnnouncementDetail", |
|||
query: { |
|||
type: this.title == "良好行为列表" ? "good" : "bad", |
|||
enterpriseId: item.enterpriseId |
|||
} |
|||
}); |
|||
} |
|||
} |
|||
} |
|||
}; |
|||
</script> |
|||
<style lang="less" scoped> |
|||
.action-wrap { |
|||
padding: 20px; |
|||
padding: 20px; |
|||
|
|||
/deep/.el-table { |
|||
margin-top: 10px; |
|||
/deep/.el-table { |
|||
margin-top: 10px; |
|||
|
|||
.el-table__header-wrapper { |
|||
height: 44px; |
|||
} |
|||
.el-table__header-wrapper { |
|||
height: 44px; |
|||
} |
|||
|
|||
th { |
|||
background: #EBF4FE; |
|||
th { |
|||
background: #ebf4fe; |
|||
|
|||
.cell { |
|||
font-size: 16px !important; |
|||
font-weight: 600 !important; |
|||
color: #005EB7; |
|||
} |
|||
} |
|||
.cell { |
|||
font-size: 16px !important; |
|||
font-weight: 600 !important; |
|||
color: #005eb7; |
|||
} |
|||
} |
|||
|
|||
tr { |
|||
background-color: #fff !important; |
|||
tr { |
|||
background-color: #fff !important; |
|||
|
|||
.cell { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
.cell { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
</style> |
|||
</style> |
|||
|
@ -1,124 +1,171 @@ |
|||
<template> |
|||
<div class="descriptions-table"> |
|||
<div class="table-item" v-for="(item,index) in allPersonType" :key="(item,index)"> |
|||
<span style="font-size: 16px; font-weight: 700;margin-bottom: 10px;display: block;">技术负责人</span> |
|||
<el-table :data="item.personTypeData" border style="width: 100%"> |
|||
<el-table-column prop="name" label="姓名" width="100"> |
|||
</el-table-column> |
|||
<el-table-column prop="idNo" label="身份证号" width="180"> |
|||
</el-table-column> |
|||
<el-table-column prop="speciality" label="专业" width="150"> |
|||
</el-table-column> |
|||
<el-table-column prop="address" label="等级" width="120"> |
|||
</el-table-column> |
|||
<el-table-column prop="address" label="注册证书编号" width="200"> |
|||
</el-table-column> |
|||
<el-table-column prop="address" label="核发机构" width="300"> |
|||
</el-table-column> |
|||
<el-table-column prop="address" label="核发日期"> |
|||
</el-table-column> |
|||
</el-table> |
|||
</div> |
|||
<div class="descriptions-table"> |
|||
<div |
|||
class="table-item" |
|||
v-for="(item, index) in allPersonType" |
|||
:key="(item, index)" |
|||
> |
|||
<span |
|||
style="font-size: 16px; font-weight: 700;margin-bottom: 10px;display: block;" |
|||
>{{ item.personTypeLabel }}</span |
|||
> |
|||
<el-table :data="item.personTypeData" border style="width: 100%"> |
|||
<el-table-column prop="name" label="姓名" width="100"> |
|||
</el-table-column> |
|||
<el-table-column prop="idNo" label="身份证号" width="180"> |
|||
</el-table-column> |
|||
<el-table-column prop="certificateSpeciality" label="专业" width="150"> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="certificateLevel" |
|||
label="等级" |
|||
width="120" |
|||
:formatter="certificateLevelFormatter" |
|||
> |
|||
</el-table-column> |
|||
<el-table-column prop="certificateNo" label="注册证书编号" width="200"> |
|||
</el-table-column> |
|||
<el-table-column prop="issuedBy" label="核发机构" width="280"> |
|||
</el-table-column> |
|||
<el-table-column prop="issuanceDate" label="核发日期"> |
|||
</el-table-column> |
|||
</el-table> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import { personInfo } from "@/api/enterpriseInformation" |
|||
import { personInfoList, personInfo } from "@/api/enterpriseInformation"; |
|||
export default { |
|||
data() { |
|||
return { |
|||
rowCenter: { |
|||
'borderColor': '#DADCE3' |
|||
}, |
|||
labelRowCenter: { |
|||
'borderColor': '#DADCE3' |
|||
}, |
|||
enterpriseId: "", |
|||
personList: [], |
|||
allPersonType: [] |
|||
data() { |
|||
return { |
|||
rowCenter: { |
|||
borderColor: "#DADCE3" |
|||
}, |
|||
labelRowCenter: { |
|||
borderColor: "#DADCE3" |
|||
}, |
|||
enterpriseId: "", |
|||
personList: [], |
|||
allPersonType: [], |
|||
queryParams: { |
|||
pageNum: 1, |
|||
pageSize: 10, |
|||
data: { |
|||
enterpriseId: null |
|||
} |
|||
}, |
|||
mounted() { |
|||
this.getDicts("personnel_type").then(res => { |
|||
this.personList = res.data.data |
|||
let obj = {} |
|||
let obj1 = {} |
|||
let obj2 = {} |
|||
res.data.data.forEach(item => { |
|||
if (item.dictValue == "0") { |
|||
obj = { |
|||
personTypeLabel: item.dictLabel, |
|||
personTypeValue: item.dictValue, |
|||
personTypeData: [], |
|||
} |
|||
} else if (item.dictValue == "1") { |
|||
obj1 = { |
|||
personTypeLabel: item.dictLabel, |
|||
personTypeValue: item.dictValue, |
|||
personTypeData: [], |
|||
} |
|||
} else if (item.dictValue !== "0" && item.dictValue !== "1") { |
|||
obj2 = { |
|||
personTypeLabel: "其它有职称人员", |
|||
personTypeValue: "", |
|||
personTypeData: [], |
|||
} |
|||
} |
|||
}) |
|||
this.allPersonType = [obj, obj1, obj2] |
|||
}) |
|||
this.enterpriseId = this.$route.query.enterpriseId |
|||
this.getPersonInfo() |
|||
}, |
|||
methods: { |
|||
getPersonInfo() { |
|||
personInfo(this.enterpriseId).then(res => { |
|||
res.data.data.forEach(item => { |
|||
this.allPersonType.forEach(item2 => { |
|||
if (item.personType == item2.personTypeValue) { |
|||
item2.personTypeData.push(item) |
|||
} |
|||
}) |
|||
if (item.personType !== "0" && item.personType !== "1") { |
|||
this.allPersonType[2].personTypeData.push(item) |
|||
} |
|||
}) |
|||
console.log(this.allPersonType); |
|||
}) |
|||
}, |
|||
certificateLevelOptions: [] |
|||
}; |
|||
}, |
|||
created() { |
|||
this.getDicts("certificate_level").then(res => { |
|||
this.certificateLevelOptions = res.data.data; |
|||
}); |
|||
}, |
|||
mounted() { |
|||
this.getDicts("personnel_type").then(res => { |
|||
this.personList = res.data.data; |
|||
let obj = {}; |
|||
let obj1 = {}; |
|||
let obj2 = {}; |
|||
res.data.data.forEach(item => { |
|||
if (item.dictValue == "0") { |
|||
obj = { |
|||
personTypeLabel: item.dictLabel, |
|||
personTypeValue: item.dictValue, |
|||
personTypeData: [] |
|||
}; |
|||
} else if (item.dictValue == "1") { |
|||
obj1 = { |
|||
personTypeLabel: item.dictLabel, |
|||
personTypeValue: item.dictValue, |
|||
personTypeData: [] |
|||
}; |
|||
} else if (item.dictValue !== "0" && item.dictValue !== "1") { |
|||
obj2 = { |
|||
personTypeLabel: "其它有职称人员", |
|||
personTypeValue: "", |
|||
personTypeData: [] |
|||
}; |
|||
} |
|||
}); |
|||
this.allPersonType = [obj, obj1, obj2]; |
|||
}); |
|||
this.enterpriseId = this.$route.query.enterpriseId; |
|||
this.getPersonInfo(); |
|||
}, |
|||
methods: { |
|||
certificateLevelFormatter(row) { |
|||
let res = ""; |
|||
// console.log(777, this.certificateLevelOptions); |
|||
this.certificateLevelOptions.forEach(item => { |
|||
if (item.dictValue == row.certificateLevel) res = item.dictLabel; |
|||
}); |
|||
return res; |
|||
}, |
|||
getPersonInfo() { |
|||
this.queryParams.data.enterpriseId = this.$route.query.enterpriseId; |
|||
personInfoList(this.queryParams).then(res => { |
|||
res.data.records.forEach(item => { |
|||
this.allPersonType.forEach(item2 => { |
|||
if (item.personType == item2.personTypeValue) { |
|||
item2.personTypeData.push(item); |
|||
} |
|||
}); |
|||
if (item.personType !== "0" && item.personType !== "1") { |
|||
this.allPersonType[2].personTypeData.push(item); |
|||
} |
|||
}); |
|||
console.log(this.allPersonType); |
|||
}); |
|||
// personInfo(this.enterpriseId).then(res => { |
|||
// res.data.data.forEach(item => { |
|||
// this.allPersonType.forEach(item2 => { |
|||
// if (item.personType == item2.personTypeValue) { |
|||
// item2.personTypeData.push(item); |
|||
// } |
|||
// }); |
|||
// if (item.personType !== "0" && item.personType !== "1") { |
|||
// this.allPersonType[2].personTypeData.push(item); |
|||
// } |
|||
// }); |
|||
// console.log(this.allPersonType); |
|||
// }); |
|||
} |
|||
} |
|||
} |
|||
}; |
|||
</script> |
|||
<style lang="less" scoped> |
|||
.descriptions-table { |
|||
min-height: 500px; |
|||
.table-item{ |
|||
margin-bottom: 20px; |
|||
min-height: 500px; |
|||
.table-item { |
|||
margin-bottom: 20px; |
|||
} |
|||
/deep/.el-table { |
|||
border: 1px solid #dadce3; |
|||
.el-table__header-wrapper { |
|||
} |
|||
/deep/.el-table { |
|||
border: 1px solid #DADCE3; |
|||
.el-table__header-wrapper { |
|||
} |
|||
|
|||
th { |
|||
background: #EBF4FE; |
|||
th { |
|||
background: #ebf4fe; |
|||
|
|||
.cell { |
|||
font-size: 16px !important; |
|||
font-weight: 600 !important; |
|||
color: #005EB7; |
|||
} |
|||
} |
|||
.el-table__cell{ |
|||
border-right: 1px solid #DADCE3; |
|||
} |
|||
.cell { |
|||
font-size: 16px !important; |
|||
font-weight: 600 !important; |
|||
color: #005eb7; |
|||
} |
|||
} |
|||
.el-table__cell { |
|||
border-right: 1px solid #dadce3; |
|||
} |
|||
|
|||
tr { |
|||
background-color: #fff !important; |
|||
tr { |
|||
background-color: #fff !important; |
|||
|
|||
.cell { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
.cell { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
</style> |
|||
</style> |
|||
|
@ -1,233 +1,295 @@ |
|||
<template> |
|||
<div class="certification-page"> |
|||
<div class="certification-list"> |
|||
<div class="list-wrap"> |
|||
<el-form :inline="true" label-width="80px" :model="queryForm"> |
|||
<el-form-item label="企业名称"> |
|||
<el-input class="name-inp-search" placeholder="请输入企业名称" |
|||
v-model="queryForm.enterpriseName"></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="所在区域"> |
|||
<el-select v-model="queryForm.adcd" clearable placeholder="请选择所有区域"> |
|||
<el-option v-for="item in areaList" :key="item.xzqhdm" :label="item.name" :value="item.xzqhdm"> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item label="企业类型"> |
|||
<el-select v-model="queryForm.qualificationCategory" clearable placeholder="请选择企业类型"> |
|||
<el-option v-for="item in categoryList" :key="item.dictValue" :label="item.dictLabel" |
|||
:value="item.dictValue"> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item> |
|||
<el-button type="mini" icon="el-icon-search" @click="getResult()">查询</el-button> |
|||
<el-button type="mini" icon="el-icon-refresh" @click="resetForm()">重置</el-button> |
|||
</el-form-item> |
|||
</el-form> |
|||
<el-table :data="tableData" style="width: 100%" v-loading="loading"> |
|||
<el-table-column prop="enterpriseName" label="企业名称" width="500"> |
|||
<template slot-scope="scope"> |
|||
<span style="color: #005EB7;cursor: pointer;font-size: 16px !important;" @click="toDetail(scope.row)">{{ |
|||
scope.row.enterpriseName |
|||
}}</span> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="qualificationCategory" label="企业类型" width="180" align="center"> |
|||
<template slot-scope="scope"> |
|||
<div v-for="(cateTtem, index) in categoryList" :key="(cateTtem, index)"> |
|||
<div v-if="cateTtem.dictValue == scope.row.qualificationCategory">{{ |
|||
cateTtem.dictLabel }}</div> |
|||
</div> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="legalRepresentative" label="法定代表人" width="180" align="center"> |
|||
</el-table-column> |
|||
<el-table-column prop="qualificationCategory" label="资质类别" width="180" align="center"> |
|||
<template slot-scope="scope"> |
|||
<div v-for="(cateTtem, index) in categoryList" :key="(cateTtem, index)"> |
|||
<div v-if="cateTtem.dictValue == scope.row.qualificationCategory">{{ |
|||
cateTtem.dictLabel.split("资质")[0] }}</div> |
|||
</div> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="adcd" label="所在区域" align="center"> |
|||
<template slot-scope="scope"> |
|||
<div>{{ getadcd(scope.row) }}</div> |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
<pagination :total="total" :page.sync="apidata.pageNum" :limit.sync="apidata.pageSize" |
|||
:pageSizes="pageSizes" @pagination="getResult" /> |
|||
</div> |
|||
</div> |
|||
<div class="certification-page"> |
|||
<div class="certification-list"> |
|||
<div class="list-wrap"> |
|||
<el-form :inline="true" label-width="80px" :model="queryForm"> |
|||
<el-form-item label="企业名称"> |
|||
<el-input |
|||
class="name-inp-search" |
|||
placeholder="请输入企业名称" |
|||
v-model="queryForm.enterpriseName" |
|||
></el-input> |
|||
</el-form-item> |
|||
<el-form-item label="所在区域"> |
|||
<el-select |
|||
v-model="queryForm.adcd" |
|||
clearable |
|||
placeholder="请选择所有区域" |
|||
> |
|||
<el-option |
|||
v-for="item in areaList" |
|||
:key="item.xzqhdm" |
|||
:label="item.name" |
|||
:value="item.xzqhdm" |
|||
> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item label="企业类型"> |
|||
<el-select |
|||
v-model="queryForm.qualificationCategory" |
|||
clearable |
|||
placeholder="请选择企业类型" |
|||
> |
|||
<el-option |
|||
v-for="item in categoryList" |
|||
:key="item.dictValue" |
|||
:label="item.dictLabel" |
|||
:value="item.dictValue" |
|||
> |
|||
</el-option> |
|||
</el-select> |
|||
</el-form-item> |
|||
<el-form-item> |
|||
<el-button type="mini" icon="el-icon-search" @click="getResult()" |
|||
>查询</el-button |
|||
> |
|||
<el-button type="mini" icon="el-icon-refresh" @click="resetForm()" |
|||
>重置</el-button |
|||
> |
|||
</el-form-item> |
|||
</el-form> |
|||
<el-table :data="tableData" style="width: 100%" v-loading="loading"> |
|||
<el-table-column prop="enterpriseName" label="企业名称" width="500"> |
|||
<template slot-scope="scope"> |
|||
<span |
|||
style="color: #005EB7;cursor: pointer;font-size: 16px !important;" |
|||
@click="toDetail(scope.row)" |
|||
>{{ scope.row.enterpriseName }}</span |
|||
> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="qualificationCategory" |
|||
label="企业类型" |
|||
width="180" |
|||
align="center" |
|||
> |
|||
<template slot-scope="scope"> |
|||
<div |
|||
v-for="(cateTtem, index) in categoryList" |
|||
:key="(cateTtem, index)" |
|||
> |
|||
<div |
|||
v-if="cateTtem.dictValue == scope.row.qualificationCategory" |
|||
> |
|||
{{ cateTtem.dictLabel }} |
|||
</div> |
|||
</div> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="legalRepresentative" |
|||
label="法定代表人" |
|||
width="180" |
|||
align="center" |
|||
> |
|||
</el-table-column> |
|||
<el-table-column |
|||
prop="qualificationCategory" |
|||
label="资质类别" |
|||
width="180" |
|||
align="center" |
|||
> |
|||
<template slot-scope="scope"> |
|||
<div |
|||
v-for="(cateTtem, index) in categoryList" |
|||
:key="(cateTtem, index)" |
|||
> |
|||
<div |
|||
v-if="cateTtem.dictValue == scope.row.qualificationCategory" |
|||
> |
|||
{{ cateTtem.dictLabel.split("资质")[0] }} |
|||
</div> |
|||
</div> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="adcd" label="所在区域" align="center"> |
|||
<template slot-scope="scope"> |
|||
<div>{{ getadcd(scope.row) }}</div> |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
<pagination |
|||
:total="total" |
|||
:page.sync="apidata.pageNum" |
|||
:limit.sync="apidata.pageSize" |
|||
:pageSizes="pageSizes" |
|||
@pagination="getResult" |
|||
/> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
<script> |
|||
import { getDisclosure } from "@/api/home" |
|||
import { getGuangDong } from "@/api/creditStatistics" |
|||
import { getDisclosure } from "@/api/home"; |
|||
import { getGuangDong } from "@/api/creditStatistics"; |
|||
export default { |
|||
data() { |
|||
return { |
|||
loading: false, |
|||
total: 0, |
|||
apidata: { |
|||
pageNum: 1, |
|||
pageSize: 10, |
|||
}, |
|||
pageSizes: [10, 20, 30, 50], |
|||
queryForm: { |
|||
groupId: "2", |
|||
qualificationCategory: "", |
|||
enterpriseName: "", |
|||
adcd: "", |
|||
pageNum: 1, |
|||
pageSize: 10 |
|||
}, |
|||
tableData: [], |
|||
areaList: [], |
|||
categoryList: [] |
|||
data() { |
|||
return { |
|||
loading: false, |
|||
total: 0, |
|||
apidata: { |
|||
pageNum: 1, |
|||
pageSize: 10 |
|||
}, |
|||
pageSizes: [10, 20, 30, 50], |
|||
queryForm: { |
|||
groupId: "2", |
|||
qualificationCategory: "", |
|||
enterpriseName: "", |
|||
adcd: "", |
|||
pageNum: 1, |
|||
pageSize: 10 |
|||
}, |
|||
tableData: [], |
|||
areaList: [], |
|||
categoryList: [] |
|||
}; |
|||
}, |
|||
created() { |
|||
const enterpriseName = this.$route.query.enterpriseName; |
|||
if (enterpriseName) { |
|||
this.queryForm.enterpriseName = enterpriseName; |
|||
} |
|||
}, |
|||
mounted() { |
|||
this.getArea(); |
|||
this.getResult(); |
|||
this.getDicts("qualification_type").then(res => { |
|||
this.categoryList = res.data.data; |
|||
}); |
|||
}, |
|||
methods: { |
|||
getResult() { |
|||
this.loading = true; |
|||
getDisclosure({ ...this.queryForm }).then(res => { |
|||
this.loading = false; |
|||
this.tableData = []; |
|||
this.tableData = res.data.data.records; |
|||
this.total = res.data.data.total; |
|||
}); |
|||
}, |
|||
getArea() { |
|||
getGuangDong().then(res => { |
|||
this.areaList = res.data.data; |
|||
}); |
|||
}, |
|||
getadcd(row) { |
|||
let adcdText = ""; |
|||
let adcdCode = row.adcd.slice(0, 4) + "00"; |
|||
this.areaList.forEach(item => { |
|||
if (item.xzqhdm == adcdCode) { |
|||
adcdText = item.name; |
|||
} |
|||
}); |
|||
if (adcdText == "") { |
|||
adcdText = "省外"; |
|||
} |
|||
return adcdText; |
|||
}, |
|||
mounted() { |
|||
this.getArea() |
|||
this.getResult() |
|||
this.getDicts("qualification_type").then(res => { |
|||
this.categoryList = res.data.data |
|||
}) |
|||
resetForm() { |
|||
this.queryForm = { |
|||
groupId: "2", |
|||
qualificationCategory: "", |
|||
enterpriseName: "", |
|||
adcd: "", |
|||
pageNum: 1, |
|||
pageSize: 10 |
|||
}; |
|||
this.getResult(); |
|||
}, |
|||
methods: { |
|||
getResult() { |
|||
this.loading = true |
|||
getDisclosure({ ...this.queryForm }).then(res => { |
|||
this.loading = false |
|||
this.tableData = [] |
|||
this.tableData = res.data.data.records |
|||
this.total = res.data.data.total |
|||
}) |
|||
}, |
|||
getArea() { |
|||
getGuangDong().then(res => { |
|||
this.areaList = res.data.data |
|||
}) |
|||
}, |
|||
getadcd(row) { |
|||
let adcdText = "" |
|||
let adcdCode = row.adcd.slice(0, 4) + "00" |
|||
this.areaList.forEach(item => { |
|||
if (item.xzqhdm == adcdCode) { |
|||
adcdText = item.name |
|||
} |
|||
}) |
|||
if (adcdText == "") { |
|||
adcdText = "省外" |
|||
} |
|||
return adcdText |
|||
}, |
|||
resetForm() { |
|||
this.queryForm = { |
|||
groupId: "2", |
|||
qualificationCategory: "", |
|||
enterpriseName: "", |
|||
adcd: "", |
|||
pageNum: 1, |
|||
pageSize: 10 |
|||
} |
|||
this.getResult() |
|||
}, |
|||
toDetail(row) { |
|||
this.$router.push({ |
|||
path: "/enterpriseInDetail", |
|||
query:{ |
|||
enterpriseId:row.enterpriseId |
|||
} |
|||
}) |
|||
toDetail(row) { |
|||
this.$router.push({ |
|||
path: "/enterpriseInDetail", |
|||
query: { |
|||
enterpriseId: row.enterpriseId |
|||
} |
|||
}); |
|||
} |
|||
} |
|||
} |
|||
}; |
|||
</script> |
|||
<style lang="less" scoped> |
|||
.certification-page { |
|||
.certification-list { |
|||
background: linear-gradient(180deg, #005eb7 0%, #edf7ff 60% #edf7ff 100%); |
|||
padding: 20px 0; |
|||
|
|||
.certification-list { |
|||
background: linear-gradient(180deg, #005EB7 0%, #EDF7FF 60% #EDF7FF 100%); |
|||
padding: 20px 0; |
|||
.list-wrap { |
|||
width: 1200px; |
|||
height: 1098px; |
|||
background: #ffffff; |
|||
border-radius: 8px; |
|||
margin: 0 auto; |
|||
padding: 20px; |
|||
|
|||
.list-wrap { |
|||
width: 1200px; |
|||
height: 1098px; |
|||
background: #FFFFFF; |
|||
border-radius: 8px; |
|||
margin: 0 auto; |
|||
padding: 20px; |
|||
/deep/.el-form { |
|||
display: flex; |
|||
flex-wrap: wrap; |
|||
align-items: center; |
|||
|
|||
/deep/.el-form { |
|||
display: flex; |
|||
flex-wrap: wrap; |
|||
align-items: center; |
|||
|
|||
.el-form-item__label { |
|||
font-size: 16px; |
|||
color: #333333; |
|||
} |
|||
|
|||
.el-input__inner { |
|||
width: 210px; |
|||
border-radius: 8px; |
|||
border: 1px solid #AAD8FB; |
|||
} |
|||
.el-form-item__label { |
|||
font-size: 16px; |
|||
color: #333333; |
|||
} |
|||
|
|||
.el-button { |
|||
padding: 13px 15px; |
|||
background: linear-gradient(180deg, #005BA6 0%, #0059A5 100%); |
|||
border-radius: 8px; |
|||
color: #FFFFFF; |
|||
.el-input__inner { |
|||
width: 210px; |
|||
border-radius: 8px; |
|||
border: 1px solid #aad8fb; |
|||
} |
|||
|
|||
span { |
|||
font-size: 16px; |
|||
font-weight: 600; |
|||
} |
|||
.el-button { |
|||
padding: 13px 15px; |
|||
background: linear-gradient(180deg, #005ba6 0%, #0059a5 100%); |
|||
border-radius: 8px; |
|||
color: #ffffff; |
|||
|
|||
i { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
span { |
|||
font-size: 16px; |
|||
font-weight: 600; |
|||
} |
|||
|
|||
.el-button:nth-child(1) { |
|||
margin-left: 50px; |
|||
} |
|||
i { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
|
|||
.el-button:nth-child(2) { |
|||
background: #fff; |
|||
color: #333; |
|||
} |
|||
} |
|||
.el-button:nth-child(1) { |
|||
margin-left: 50px; |
|||
} |
|||
|
|||
/deep/.el-table { |
|||
.el-table__header-wrapper { |
|||
height: 44px; |
|||
} |
|||
.el-button:nth-child(2) { |
|||
background: #fff; |
|||
color: #333; |
|||
} |
|||
} |
|||
|
|||
th { |
|||
background: #EBF4FE; |
|||
/deep/.el-table { |
|||
.el-table__header-wrapper { |
|||
height: 44px; |
|||
} |
|||
|
|||
.cell { |
|||
font-size: 16px !important; |
|||
font-weight: 600 !important; |
|||
color: #005EB7; |
|||
} |
|||
} |
|||
th { |
|||
background: #ebf4fe; |
|||
|
|||
tr { |
|||
background-color: #fff !important; |
|||
.cell { |
|||
font-size: 16px !important; |
|||
font-weight: 600 !important; |
|||
color: #005eb7; |
|||
} |
|||
} |
|||
|
|||
.cell { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
} |
|||
tr { |
|||
background-color: #fff !important; |
|||
|
|||
.cell { |
|||
font-size: 16px; |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
} |
|||
</style> |
|||
</style> |
|||
|
Loading…
Reference in new issue