Commit 19a6330a authored by danfuman's avatar danfuman

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

parents 1e0cea93 8140b78c
...@@ -40,6 +40,7 @@ ...@@ -40,6 +40,7 @@
"axios": "0.24.0", "axios": "0.24.0",
"clipboard": "2.0.8", "clipboard": "2.0.8",
"core-js": "^3.32.2", "core-js": "^3.32.2",
"dayjs": "^1.11.10",
"echarts": "^5.0.0", "echarts": "^5.0.0",
"el-table-horizontal-scroll": "^1.2.5", "el-table-horizontal-scroll": "^1.2.5",
"element-resize-detector": "^1.2.4", "element-resize-detector": "^1.2.4",
......
import request from '@/utils/request' import request from '@/utils/request';
// 资质json数据 // 资质json数据
let aptitudeCode= function aptitudeCode(param) { let aptitudeCode = function aptitudeCode(param) {
return request({ return request({
url: 'https://files.jiansheku.com/file/json/common/aptitudeCode.json', url: 'https://files.jiansheku.com/file/json/common/aptitudeCode.json',
method: 'get', method: 'get',
}) });
} };
// 人员json数据 // 人员json数据
let personCert= function personCert(param) { let personCert = function personCert(param) {
return request({ return request({
url: 'https://files.jiansheku.com/file/json/common/personCert.json', url: 'https://files.jiansheku.com/file/json/common/personCert.json',
method: 'get', method: 'get',
}) });
} };
// 备案网站 // 备案网站
let searchDic= function searchDic(param) { let searchDic = function searchDic(param) {
return request({ return request({
url: 'https://files.jiansheku.com/file/json/common/searchDic.json', url: 'https://files.jiansheku.com/file/json/common/searchDic.json',
method: 'get', method: 'get',
}) });
} };
// 备案网站 // 备案网站
let regionWebList= function regionWebList(param) { let regionWebList = function regionWebList(param) {
return request({ return request({
url: '/nationzj/enterprice/regionWebList', url: '/nationzj/enterprice/regionWebList',
method: 'get', method: 'get',
}) });
} };
// 地区 // 地区
let region= function region(param) { let region = function region(param) {
return request({ return request({
url: '/system/region/list/'+param, url: '/system/region/list/' + param,
method: 'get', method: 'get',
}) });
} };
// 查甲方选项 // 查甲方选项
let uipGroupData= function uipGroupData(param) { let uipGroupData = function uipGroupData(param) {
return request({ return request({
url: '/enterprise/uipGroupData', url: '/enterprise/uipGroupData',
method: 'post', method: 'post',
data: param data: param
}) });
} };
// 查甲方列表 // 查甲方列表
let uipSerach= function uipSerach(param) { let uipSerach = function uipSerach(param) {
return request({ return request({
url: '/enterprise/uipSerach', url: '/enterprise/uipSerach',
method: 'post', method: 'post',
data: param data: param
}) });
} };
// 认领用户 // 认领用户
let claim= function claim(param) { let claim = function claim(param) {
return request({ return request({
url: '/customer/claim', url: '/customer/claim',
method: 'post', method: 'post',
data: param data: param
}) });
} };
// 取消认领用户 // 取消认领用户
let cancelClaim= function cancelClaim(data) { let cancelClaim = function cancelClaim(data) {
return request({ return request({
url: '/customer/cancelClaim/'+data, url: '/customer/cancelClaim/' + data,
method: 'put', method: 'put',
// data: data // data: data
}) });
} };
// 历史认领用户 // 历史认领用户
let historyClaim= function historyClaim(data) { let historyClaim = function historyClaim(data) {
return request({ return request({
url: '/customer/historyClaim/'+data, url: '/customer/historyClaim/' + data,
method: 'put', method: 'put',
// data: data // data: data
}) });
} };
// 客户状态 // 客户状态
let customerStatus= function customerStatus(data) { let customerStatus = function customerStatus(data) {
return request({ return request({
url: '/customer/status/'+data, url: '/customer/status/' + data,
method: 'get', method: 'get',
// data: data // data: data
}) });
} };
// 查建筑企业 // 查建筑企业
let enterprisePage= function enterprisePage(param) { let enterprisePage = function enterprisePage(param) {
return request({ return request({
url: '/enterprise/page', url: '/enterprise/page',
method: 'post', method: 'post',
data: param data: param
}) });
} };
// 甲方详情-公司概要 // 甲方详情-公司概要
let infoHeader= function infoHeader(param) { let infoHeader = function infoHeader(param) {
return request({ return request({
url: '/enterprise/infoHeader', url: '/enterprise/infoHeader',
method: 'post', method: 'post',
data: param data: param
}) });
} };
// 搜索集团户 // 搜索集团户
let searchCentralEnterprse= function searchCentralEnterprse(param) { let searchCentralEnterprse = function searchCentralEnterprse(param) {
return request({ return request({
url: '/combine/info/index', url: '/combine/info/index',
method: 'post', method: 'post',
data: param data: param
}) });
} };
// 央企 // 央企
let centralEnterprse= function centralEnterprse(param) { let centralEnterprse = function centralEnterprse(param) {
return request({ return request({
url: '/combine/info/centralEnterprse', url: '/combine/info/centralEnterprse',
method: 'post', method: 'post',
data: param data: param
}) });
} };
// 央企子集团 // 央企子集团
let centralEnterprseChild= function centralEnterprseChild(param) { let centralEnterprseChild = function centralEnterprseChild(param) {
return request({ return request({
url: '/combine/info/centralEnterprse/child', url: '/combine/info/centralEnterprse/child',
method: 'post', method: 'post',
data: param data: param
}) });
} };
// 央企子集团更多 // 央企子集团更多
let centralEnterprseChildPage= function centralEnterprseChildPage(param) { let centralEnterprseChildPage = function centralEnterprseChildPage(param) {
return request({ return request({
url: '/combine/info/centralEnterprse/child/page', url: '/combine/info/centralEnterprse/child/page',
method: 'post', method: 'post',
data: param data: param
}) });
} };
// 地方国企 // 地方国企
let centralEnterprselocal= function centralEnterprselocal(param) { let centralEnterprselocal = function centralEnterprselocal(param) {
return request({ return request({
url: '/combine/info/centralEnterprse/local', url: '/combine/info/centralEnterprse/local',
method: 'post', method: 'post',
data: param data: param
}) });
} };
// 地方国企更多 // 地方国企更多
let centralEnterprselocalPage= function centralEnterprselocalPage(param) { let centralEnterprselocalPage = function centralEnterprselocalPage(param) {
return request({ return request({
url: '/combine/info/centralEnterprse/local/page', url: '/combine/info/centralEnterprse/local/page',
method: 'post', method: 'post',
data: param data: param
}) });
} };
// 其他集团 // 其他集团
let centralEnterprsesocial= function centralEnterprsesocial(param) { let centralEnterprsesocial = function centralEnterprsesocial(param) {
return request({ return request({
url: '/combine/info/centralEnterprse/social', url: '/combine/info/centralEnterprse/social',
method: 'post', method: 'post',
data: param data: param
}) });
} };
// 其他集团更多 // 其他集团更多
let centralEnterprsesocialPage= function centralEnterprsesocialPage(param) { let centralEnterprsesocialPage = function centralEnterprsesocialPage(param) {
return request({ return request({
url: '/combine/info/centralEnterprse/social/page', url: '/combine/info/centralEnterprse/social/page',
method: 'post', method: 'post',
data: param data: param
}) });
} };
//企业标签 //企业标签
let label= function label(param) { let label = function label(param) {
return request({ return request({
url: '/enterprise/label', url: '/enterprise/label',
method: 'post', method: 'post',
data: param data: param
}) });
} };
// 查业主单位
export const searchOwnerUnitListApi = (data) => request({
url: '/enterprise/bossCompany',
method: 'post',
data
});
export default {label,centralEnterprsesocialPage,centralEnterprselocalPage,centralEnterprseChildPage,centralEnterprsesocial,centralEnterprselocal,centralEnterprseChild,searchCentralEnterprse,centralEnterprse,region,aptitudeCode,personCert,searchDic,regionWebList,uipGroupData,uipSerach,claim,cancelClaim,enterprisePage,infoHeader,historyClaim,customerStatus}
export default { label, centralEnterprsesocialPage, centralEnterprselocalPage, centralEnterprseChildPage, centralEnterprsesocial, centralEnterprselocal, centralEnterprseChild, searchCentralEnterprse, centralEnterprse, region, aptitudeCode, personCert, searchDic, regionWebList, uipGroupData, uipSerach, claim, cancelClaim, enterprisePage, infoHeader, historyClaim, customerStatus, searchOwnerUnitListApi };
...@@ -279,11 +279,11 @@ export default { ...@@ -279,11 +279,11 @@ export default {
cityIds: [this.companyInfo.cityId], cityIds: [this.companyInfo.cityId],
}; };
urbanInvestmentPage(data).then(res => { urbanInvestmentPage(data).then(res => {
if(res.code==200){ if (res.code == 200) {
if(res.data.totalCount<1){ if (res.data.totalCount < 1) {
let arr = JSON.parse(JSON.stringify(this.$refs.sidebar.sideRoute)) let arr = JSON.parse(JSON.stringify(this.$refs.sidebar.sideRoute));
arr[4].children[2].disabled = true; arr[4].children[2].disabled = true;
this.$refs.sidebar.sideRoute = arr this.$refs.sidebar.sideRoute = arr;
} }
} }
}); });
......
...@@ -23,9 +23,9 @@ ...@@ -23,9 +23,9 @@
</template> </template>
<script> <script>
import mixin from '../mixins/mixin' import mixin from '../mixins/mixin';
import skeleton from '@/views/project/projectList/component/skeleton' import skeleton from '@/views/project/projectList/component/skeleton';
import {bidNoticeArea, bidNoticeTenderStage,bidNoticeProjectCategory, bidNoticePage} from '@/api/detail/party-a/opport' import { bidNoticeArea, bidNoticeTenderStage, bidNoticeProjectCategory, bidNoticePage } from '@/api/detail/party-a/opport';
export default { export default {
name: 'Announcement', name: 'Announcement',
props: ['companyId'], props: ['companyId'],
...@@ -76,90 +76,90 @@ export default { ...@@ -76,90 +76,90 @@ export default {
this.handleQuery(); this.handleQuery();
}, },
methods: { methods: {
async handleOption(){ async handleOption() {
let [area, tender,project] = await Promise.all([ let [area, tender, project] = await Promise.all([
bidNoticeArea({cid: this.companyId}), bidNoticeArea({ cid: this.companyId }),
bidNoticeTenderStage({cid: this.companyId}), bidNoticeTenderStage({ cid: this.companyId }),
bidNoticeProjectCategory({cid: this.companyId}), bidNoticeProjectCategory({ cid: this.companyId }),
]) ]);
if(area.code==200){ if (area.code == 200) {
let region = area.data.map(item => { let region = area.data.map(item => {
let province = {label:item.province+'('+item.count+')',value:item.provinceId} let province = { label: item.province + '(' + item.count + ')', value: item.provinceId };
if(item.citys&&item.citys.length>0){ if (item.citys && item.citys.length > 0) {
let city = [], citem = {} let city = [], citem = {};
for(let i=0;i<item.citys.length;i++){ for (let i = 0; i < item.citys.length; i++) {
citem = {label:item.citys[i].city, value:item.citys[i].cityId} citem = { label: item.citys[i].city, value: item.citys[i].cityId };
if(item.citys[i].areas&&item.citys[i].areas.length>0){ if (item.citys[i].areas && item.citys[i].areas.length > 0) {
let area = [], aitem = {} let area = [], aitem = {};
for(let j=0;j<item.citys[i].areas.length;j++){ for (let j = 0; j < item.citys[i].areas.length; j++) {
aitem = {label:item.citys[i].areas[j].area, value:item.citys[i].areas[j].areaId} aitem = { label: item.citys[i].areas[j].area, value: item.citys[i].areas[j].areaId };
area.push(aitem) area.push(aitem);
citem.children = area citem.children = area;
} }
} }
city.push(citem) city.push(citem);
} }
city.length>0 ? province.children = city : '' city.length > 0 ? province.children = city : '';
} }
return province return province;
}) });
this.setFormData('province', region) this.setFormData('province', region);
} }
if(tender.code==200){ if (tender.code == 200) {
let tenderStage = tender.data.map(item => { let tenderStage = tender.data.map(item => {
let it = {name:item.tenderStage+'('+item.count+')',value:item.tenderStage} let it = { name: item.tenderStage + '(' + item.count + ')', value: item.tenderStage };
return it return it;
}) });
this.setFormData('tenderStage', tenderStage) this.setFormData('tenderStage', tenderStage);
} }
if(project.code==200){ if (project.code == 200) {
let projectCategory = project.data.map(item => { let projectCategory = project.data.map(item => {
let it = {name:item.projectCategory+'('+item.count+')',value:item.projectCategory} let it = { name: item.projectCategory + '(' + item.count + ')', value: item.projectCategory };
return it return it;
}) });
this.setFormData('projectCategory', projectCategory) this.setFormData('projectCategory', projectCategory);
} }
}, },
async handleQuery(params) { async handleQuery(params) {
this.tableLoading = true this.tableLoading = true;
let param = this.getAreaList(params || this.queryParams) let param = this.getAreaList(params || this.queryParams);
let res = await bidNoticePage(param) let res = await bidNoticePage(param);
this.tableLoading = false this.tableLoading = false;
if(res.code==200){ if (res.code == 200) {
this.isSkeleton = false; this.isSkeleton = false;
this.tableData = res.rows this.tableData = res.rows;
} }
this.tableDataTotal = res.total this.tableDataTotal = res.total;
}, },
getAreaList(params){ getAreaList(params) {
if(params.province&&params.province.length>0){ if (params.province && params.province.length > 0) {
let arr = this.$refs.headForm.$refs.cascader[0].getCheckedNodes() let arr = this.$refs.headForm.$refs.cascader[0].getCheckedNodes();
let provinceIds = [], cityIds = [], areaIds = [] let provinceIds = [], cityIds = [], areaIds = [];
for (var i in arr) { for (var i in arr) {
if (arr[i].parent) { if (arr[i].parent) {
if (!arr[i].parent.checked) { if (!arr[i].parent.checked) {
if(arr[i].hasChildren || arr[i].level==2){ if (arr[i].hasChildren || arr[i].level == 2) {
cityIds.push(arr[i].value) cityIds.push(arr[i].value);
}else{ } else {
areaIds.push(arr[i].value) areaIds.push(arr[i].value);
} }
} }
} else { } else {
provinceIds.push(arr[i].value) provinceIds.push(arr[i].value);
} }
} }
delete params.province delete params.province;
provinceIds.length>0?params.provinceIds = provinceIds:'' provinceIds.length > 0 ? params.provinceIds = provinceIds : '';
cityIds.length>0?params.cityIds = cityIds:'' cityIds.length > 0 ? params.cityIds = cityIds : '';
areaIds.length>0?params.areaIds = areaIds:'' areaIds.length > 0 ? params.areaIds = areaIds : '';
} }
return params return params;
} }
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.detail-container{ .detail-container {
background: #ffffff; background: #ffffff;
border-radius: 4px; border-radius: 4px;
padding: 16px; padding: 16px;
......
<template> <template>
<div class="app-container enterprise_contatiner"> <div class="app-container enterprise_contatiner">
<div class="title_wrap"> <div class="title_wrap">
<div class="enterprise_title"> <div class="enterprise_title">
查城投平台 查城投平台
</div> </div>
</div> </div>
<div class="content"> <div class="content">
<div class="content_item"> <div class="content_item">
<div class="content_right item_ckquery_list"> <div class="content_right item_ckquery_list">
<el-input class="ename_input" placeholder="请输入企业名称关键字" clearable v-model="keys" > <el-input class="ename_input" placeholder="请输入企业名称关键字" clearable v-model="keys">
<div slot="append" class="btn-search" @click="search()">搜索</div> <div slot="append" class="btn-search" @click="search()">搜索</div>
</el-input> </el-input>
</div> </div>
</div> </div>
<div class="content_item"> <div class="content_item">
<div class="label">企业地区</div> <div class="label">企业地区</div>
<div class="content_right item_ckquery_list"> <div class="content_right item_ckquery_list">
<div class="select-popper" > <div class="select-popper">
<span :class="{color_text:jskBidQueryDto.provinceIds.length ||jskBidQueryDto.cityIds.length ||jskBidQueryDto.areaIds.length,}"> <span :class="{color_text:jskBidQueryDto.provinceIds.length ||jskBidQueryDto.cityIds.length ||jskBidQueryDto.areaIds.length,}">
注册地区{{jskBidQueryDto.provinceIds.length ||jskBidQueryDto.cityIds.length ||jskBidQueryDto.areaIds.length? jskBidQueryDto.provinceIds.length + jskBidQueryDto.cityIds.length +jskBidQueryDto.areaIds.length +"项": ""}} 注册地区{{jskBidQueryDto.provinceIds.length ||jskBidQueryDto.cityIds.length ||jskBidQueryDto.areaIds.length? jskBidQueryDto.provinceIds.length + jskBidQueryDto.cityIds.length +jskBidQueryDto.areaIds.length +"项": ""}}
<i class="el-icon-caret-bottom"></i> <i class="el-icon-caret-bottom"></i>
</span> </span>
<el-cascader <el-cascader ref="address" class="cascader-region" v-model="addressType" :options="addressList" :props="props" @change="domicileChange"
ref="address" collapse-tags clearable></el-cascader>
class="cascader-region" </div>
v-model="addressType" <div class="checkbox">
:options="addressList" <div class="checkbox-titel">行政等级</div>
:props="props" <div class="checkbox-content">
@change="domicileChange" <div class="checkbox-content-qx">
collapse-tags <el-checkbox v-model="checkuipExecutive" @change="checkuipExecutivebtn">全部</el-checkbox>
clearable </div>
></el-cascader> <el-checkbox-group v-model="uipExecutiveText" @change="uipExecutiveLevelbtn">
</div> <el-checkbox v-for="item in uipExecutiveLevel" :label="item" :key="item">{{item}}</el-checkbox>
<div class="checkbox"> </el-checkbox-group>
<div class="checkbox-titel">行政等级</div> </div>
<div class="checkbox-content"> </div>
<div class="checkbox-content-qx">
<el-checkbox v-model="checkuipExecutive" @change="checkuipExecutivebtn">全部</el-checkbox> </div>
</div> </div>
<el-checkbox-group v-model="uipExecutiveText" @change="uipExecutiveLevelbtn"> <div class="content_item">
<el-checkbox v-for="item in uipExecutiveLevel" :label="item" :key="item">{{item}}</el-checkbox> <div class="label">城投业务类型</div>
</el-checkbox-group> <div class="content_right ">
</div> <div class="checkbox">
</div> <div class="checkbox-content">
<div class="checkbox-content-qx">
</div> <el-checkbox v-model="checkuipBusiness" @change="checkuipBusinessbtn">全部</el-checkbox>
</div> </div>
<div class="content_item"> <el-checkbox-group v-model="uipBusinessText" @change="uipBusinessTypebtn">
<div class="label">城投业务类型</div> <el-checkbox v-for="item in uipBusinessType" :label="item" :key="item">{{item}}</el-checkbox>
<div class="content_right "> </el-checkbox-group>
<div class="checkbox"> </div>
<div class="checkbox-content"> </div>
<div class="checkbox-content-qx"> </div>
<el-checkbox v-model="checkuipBusiness" @change="checkuipBusinessbtn">全部</el-checkbox> </div>
</div> <div class="content_item">
<el-checkbox-group v-model="uipBusinessText" @change="uipBusinessTypebtn"> <div class="label">主体评级</div>
<el-checkbox v-for="item in uipBusinessType" :label="item" :key="item">{{item}}</el-checkbox> <div class="content_right ">
</el-checkbox-group> <div class="checkbox">
</div> <div class="checkbox-content">
</div> <div class="checkbox-content-qx">
</div> <el-checkbox v-model="checkbratingSubject" @change="checkbratingSubjectbtn">全部</el-checkbox>
</div> </div>
<div class="content_item"> <el-checkbox-group v-model="bratingSubjectText" @change="bratingSubjectLevelbtn">
<div class="label" >主体评级</div> <el-checkbox v-for="item in bratingSubjectLevel" :label="item" :key="item">{{item}}</el-checkbox>
<div class="content_right "> </el-checkbox-group>
<div class="checkbox"> </div>
<div class="checkbox-content"> </div>
<div class="checkbox-content-qx"> </div>
<el-checkbox v-model="checkbratingSubject" @change="checkbratingSubjectbtn">全部</el-checkbox> </div>
</div> <div class="content_item content_item1">
<el-checkbox-group v-model="bratingSubjectText" @change="bratingSubjectLevelbtn"> <div class="label">股东背景</div>
<el-checkbox v-for="item in bratingSubjectLevel" :label="item" :key="item">{{item}}</el-checkbox> <div class="content_right ">
</el-checkbox-group> <div class="checkbox">
</div> <div class="checkbox-content">
</div> <!-- <el-checkbox-group v-model="shareholderText" @change="shareholderBgbtn"> -->
</div> <el-checkbox v-model="checkshareholder" @change="checkshareholderbtn">全部</el-checkbox>
</div>
<div class="content_item content_item1"> <el-checkbox @change="shareholderBgbtn" v-for="(item,index) in shareholderBg" v-model="item.checked"
<div class="label" >股东背景</div> :key="index">{{item.value}}</el-checkbox>
<div class="content_right "> </div>
<div class="checkbox"> </div>
<div class="checkbox-content" > </div>
<!-- <el-checkbox-group v-model="shareholderText" @change="shareholderBgbtn"> --> </div>
<el-checkbox v-model="checkshareholder" @change="checkshareholderbtn">全部</el-checkbox> <div class="content_item" style="padding:0;">
<div class="label">股权关系</div>
<el-checkbox @change="shareholderBgbtn" v-for="(item,index) in shareholderBg" v-model="item.checked" :key="index">{{item.value}}</el-checkbox> <div class="content_right ">
</div> <div class="checkbox">
</div> <div class="checkbox-content">
</div> <div class="checkbox-content-qx">
</div> <el-checkbox v-model="checkequityRelationship" @change="checkequityRelationshipbtn">全部</el-checkbox>
<div class="content_item" style="padding:0;"> </div>
<div class="label" >股权关系</div> <el-checkbox-group v-model="equityRelationshipText" @change="equityRelationshipbtn">
<div class="content_right "> <el-checkbox v-for="item in equityRelationship" :label="item" :key="item">{{item}}</el-checkbox>
<div class="checkbox"> </el-checkbox-group>
<div class="checkbox-content"> </div>
<div class="checkbox-content-qx"> </div>
<el-checkbox v-model="checkequityRelationship" @change="checkequityRelationshipbtn">全部</el-checkbox> </div>
</div> </div>
<el-checkbox-group v-model="equityRelationshipText" @change="equityRelationshipbtn"> <div class="content_item">
<el-checkbox v-for="item in equityRelationship" :label="item" :key="item">{{item}}</el-checkbox> </div>
</el-checkbox-group> </div>
</div> <div class="bottomlist">
</div> <div class="bottomlist-title">
</div> <div class="bottomlist-title-left">
</div> <p class="title-left">
<div class="content_item"> <span style="margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;">·</span>共有{{total}}
</div> </p>
</div> <el-popover v-model="fieldshow" placement="bottom-start" trigger="click" popper-class="viewlist-el-popover">
<div class="bottomlist"> <ul class="pup_list">
<div class="bottomlist-title"> <li v-for="(itme,i) in fieldOptions" :class="itme.status?'active':''" @click="handsequencingList(i)" :key="i">
<div class="bottomlist-title-left" > {{itme.value}}
<p class="title-left"> </li>
<span style="margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;">·</span>共有{{total}} </ul>
</p> <span slot="reference" class="toolbar-right-download">
<el-popover v-model="fieldshow" placement="bottom-start" trigger="click" {{fieldText}}<i class="el-icon-arrow-down" :style="{transform:fieldshow?'rotate(180deg)':''}"></i>
popper-class="viewlist-el-popover"> </span>
<ul class="pup_list"> </el-popover>
<li v-for="(itme,i) in fieldOptions" :class="itme.status?'active':''" </div>
@click="handsequencingList(i)" :key="i">
{{itme.value}} <div class="title-right">
</li> <p>
</ul> <img src="@/assets/images/EXCEL.png" alt="">
<span slot="reference" class="toolbar-right-download" > <span class="excel" @click="$message({message: '功能正在开发中',type: 'warning'})">导出EXCEL</span>
{{fieldText}}<i class="el-icon-arrow-down" </p>
:style="{transform:fieldshow?'rotate(180deg)':''}"></i> </div>
</span>
</el-popover> </div>
</div> <div class="table-item-jf table-item-jf1" v-if="tableData.length==0&& !isSkeleton">
<img class="item-jf-img" src="@/assets/images/kong.png" alt="">
<div class="item-jf-titel">抱歉,没找到相关数据!</div>
<div class="title-right"> <div class="item-jf-text">建议调整关键词或筛选条件,重新搜索!</div>
<p> </div>
<img src="@/assets/images/EXCEL.png" alt=""> <skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton>
<span class="excel" @click="$message({message: '功能正在开发中',type: 'warning'})">导出EXCEL</span>
</p> <div class=" table-item-jf table-item " v-if="!isSkeleton&&tableData.length>0">
</div> <el-table :data="tableData" :header-cell-style="{ background:'#f0f3fa',color: 'rgba(35,35,35,0.8)'}" v-horizontal-scroll="'hover'"
class="table-item1 fixed-table" border highlight-current-row>
</div> <el-table-column type="index" label="序号" fixed width="60">
<div class="table-item-jf table-item-jf1" v-if="tableData.length==0&& !isSkeleton"> <template slot-scope="scope">
<img class="item-jf-img" src="@/assets/images/kong.png" alt=""> <span>{{(pageNum - 1) *pageSize + scope.$index + 1}}</span>
<div class="item-jf-titel">抱歉,没找到相关数据!</div> </template>
<div class="item-jf-text">建议调整关键词或筛选条件,重新搜索!</div> </el-table-column>
</div> <el-table-column label="公司名称" fixed width="380">
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton> <template slot-scope="scope">
<div class="renling">
<div class=" table-item-jf table-item " v-if="!isSkeleton&&tableData.length>0"> <router-link :to="`/enterprise/${encodeStr(scope.row.companyId)}`" tag="a" class="list-titel-a"
<el-table :data="tableData" :header-cell-style="{ background:'#f0f3fa',color: 'rgba(35,35,35,0.8)'}" v-horizontal-scroll="'hover'" class="table-item1 fixed-table" border highlight-current-row> v-html="scope.row.companyName"></router-link>
<el-table-column type="index" label="序号" fixed width="60"> <div class="renling-btn" @click="claimbtn(scope.row)">
<template slot-scope="scope"> <p v-if="scope.row.claimStatus==0" class="renling-img-true">
<span>{{(pageNum - 1) *pageSize + scope.$index + 1}}</span>
</template> </p>
</el-table-column> <p v-else class="renling-img-false">
<el-table-column label="公司名称" fixed width="380" >
<template slot-scope="scope"> </p>
<div class="renling"> <span v-if="scope.row.claimStatus==0" @click="cancelClaim(scope.row.companyName,scope.$index)" class="renling-hui">
<router-link :to="`/enterprise/${encodeStr(scope.row.companyId)}`" tag="a" class="list-titel-a" v-html="scope.row.companyName" ></router-link> 已认领
<div class="renling-btn" @click="claimbtn(scope.row)" > </span>
<p v-if="scope.row.claimStatus==0" class="renling-img-true"> <span v-else class="renling-hei">
认领
</p> </span>
<p v-else class="renling-img-false"> </div>
</div>
</p>
<span v-if="scope.row.claimStatus==0" @click="cancelClaim(scope.row.companyName,scope.$index)" class="renling-hui"> </template>
已认领
</span> </el-table-column>
<span v-else class="renling-hei"> <el-table-column label="区域" width="160">
认领 <template slot-scope="scope">
</span> {{scope.row.province}}
</div> <template v-if="scope.row.city">
</div> -
</template>
</template> {{scope.row.city}}
<template v-if="scope.row.area">
</el-table-column> -
<el-table-column label="区域" width="160"> </template>
<template slot-scope="scope"> {{scope.row.area}}
{{scope.row.province}} </template>
<template v-if="scope.row.city">
- </el-table-column>
</template> <el-table-column label="招标数量" width="73">
{{scope.row.city}} <template slot-scope="scope">
<template v-if="scope.row.area"> {{scope.row.biddingCount||"--"}}
- </template>
</template>
{{scope.row.area}} </el-table-column>
</template> <el-table-column label="城投拿地" width="73">
<template slot-scope="scope">
</el-table-column> {{scope.row.landInfoCount||"--"}}
<el-table-column label="招标数量" width="73" > </template>
<template slot-scope="scope"> </el-table-column>
{{scope.row.biddingCount||"--"}}
</template> <el-table-column label="供应商" width="73">
<template slot-scope="scope">
</el-table-column> {{scope.row.supplierCount||"--"}}
<el-table-column label="城投拿地" width="73" > </template>
<template slot-scope="scope"> </el-table-column>
{{scope.row.landInfoCount||"--"}} <el-table-column label="主体评级" width="73">
</template> <template slot-scope="scope">
</el-table-column> {{scope.row.bratingSubjectLevel||"--"}}
</template>
<el-table-column label="供应商" width="73" > </el-table-column>
<template slot-scope="scope"> <el-table-column label="债券余额(亿元)" width="124">
{{scope.row.supplierCount||"--"}} <template slot-scope="scope">
</template> {{scope.row.bondBalance||"--"}}
</el-table-column> </template>
<el-table-column label="主体评级" width="73" > </el-table-column>
<template slot-scope="scope"> <el-table-column label="行政级别" width="73">
{{scope.row.bratingSubjectLevel||"--"}} <template slot-scope="scope">
</template> {{scope.row.uipExecutiveLevel||"--"}}
</el-table-column> </template>
<el-table-column label="债券余额(亿元)" width="124" > </el-table-column>
<template slot-scope="scope"> <el-table-column label="股东背景" width="84">
{{scope.row.bondBalance||"--"}} <template slot-scope="scope">
</template> {{scope.row.shareholderBg||"--"}}
</el-table-column> </template>
<el-table-column label="行政级别" width="73" > </el-table-column>
<template slot-scope="scope"> <el-table-column label="股权关系" width="84">
{{scope.row.uipExecutiveLevel||"--"}} <template slot-scope="scope">
</template> {{scope.row.equityRelationship||"--"}}
</el-table-column> </template>
<el-table-column label="股东背景" width="84" > </el-table-column>
<template slot-scope="scope"> <el-table-column label="平台重要性" width="85">
{{scope.row.shareholderBg||"--"}} <template slot-scope="scope">
</template> {{scope.row.platformImportance||"--"}}
</el-table-column> </template>
<el-table-column label="股权关系" width="84" > </el-table-column>
<template slot-scope="scope"> <el-table-column label="城投业务类型" width="97">
{{scope.row.equityRelationship||"--"}} <template slot-scope="scope">
</template> {{scope.row.uipBusinessType||"--"}}
</el-table-column> </template>
<el-table-column label="平台重要性" width="85" > </el-table-column>
<template slot-scope="scope"> <el-table-column label="实控人" width="290">
{{scope.row.platformImportance||"--"}} <template slot-scope="scope">
</template> <!-- <router-link v-if="scope.row.actualController" :to="'/radar/bxprozbgg/details/'+ 1" tag="a" class="list-titel-a" >
</el-table-column>
<el-table-column label="城投业务类型" width="97" >
<template slot-scope="scope">
{{scope.row.uipBusinessType||"--"}}
</template>
</el-table-column>
<el-table-column label="实控人" width="290" >
<template slot-scope="scope">
<!-- <router-link v-if="scope.row.actualController" :to="'/radar/bxprozbgg/details/'+ 1" tag="a" class="list-titel-a" >
{{scope.row.actualController}} {{scope.row.actualController}}
</router-link> --> </router-link> -->
<template > <template>
{{scope.row.actualController||"--"}} {{scope.row.actualController||"--"}}
</template> </template>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="最新报告期" width="92" > <el-table-column label="最新报告期" width="92">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.latestReportPeriod||"--"}} {{scope.row.latestReportPeriod||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="总资产(亿元)" width="112" > <el-table-column label="总资产(亿元)" width="112">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.totalAssets||"--"}} {{scope.row.totalAssets||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="归母净资产(亿元)" width="133" > <el-table-column label="归母净资产(亿元)" width="133">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.belongNetAssets||"--"}} {{scope.row.belongNetAssets||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="货币资金(亿元)" width="121" > <el-table-column label="货币资金(亿元)" width="121">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.monetaryFunds||"--"}} {{scope.row.monetaryFunds||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="土地资产(亿元)" width="121" > <el-table-column label="土地资产(亿元)" width="121">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.landAssets||"--"}} {{scope.row.landAssets||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="受限资产(亿元)" width="121" > <el-table-column label="受限资产(亿元)" width="121">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.restrictedAssets||"--"}} {{scope.row.restrictedAssets||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="应收账款(亿元)" width="121" > <el-table-column label="应收账款(亿元)" width="121">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.accountsReceivable||"--"}} {{scope.row.accountsReceivable||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="其他应收款(亿元)" width="133" > <el-table-column label="其他应收款(亿元)" width="133">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.otherReceivable||"--"}} {{scope.row.otherReceivable||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="公益性&准公益性主营占比(%)" width="200" > <el-table-column label="公益性&准公益性主营占比(%)" width="200">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.econData_001||"--"}} {{scope.row.econData_001||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="政府补助(亿元)" width="121" > <el-table-column label="政府补助(亿元)" width="121">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.govSubsidy||"--"}} {{scope.row.govSubsidy||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="专项应付款(亿元)" width="133" > <el-table-column label="专项应付款(亿元)" width="133">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.specialPayable||"--"}} {{scope.row.specialPayable||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="营业收入(亿元)" width="121" > <el-table-column label="营业收入(亿元)" width="121">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.operatingIncome||"--"}} {{scope.row.operatingIncome||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="归母净利润(亿元)" width="133" > <el-table-column label="归母净利润(亿元)" width="133">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.belongNetProfit||"--"}} {{scope.row.belongNetProfit||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="净资产收益率(%)" width="136" > <el-table-column label="净资产收益率(%)" width="136">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.roe||"--"}} {{scope.row.roe||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="经营现金流量净额(亿元)" width="169" > <el-table-column label="经营现金流量净额(亿元)" width="169">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.netOperatingCashFlow||"--"}} {{scope.row.netOperatingCashFlow||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="筹资现金流量净额(亿元)" width="169" > <el-table-column label="筹资现金流量净额(亿元)" width="169">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.netFinancingCashFlow||"--"}} {{scope.row.netFinancingCashFlow||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="投资现金流量净额(亿元)" width="169" > <el-table-column label="投资现金流量净额(亿元)" width="169">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.netInvestmentCashFlow||"--"}} {{scope.row.netInvestmentCashFlow||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="总负债 (亿元)" width="113" > <el-table-column label="总负债 (亿元)" width="113">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.totalLiabilities||"--"}} {{scope.row.totalLiabilities||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="有息债务 (亿元)" width="125" > <el-table-column label="有息债务 (亿元)" width="125">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.uipInterestBearingDebt||"--"}} {{scope.row.uipInterestBearingDebt||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="有息债务/总负债(%)" width="147" > <el-table-column label="有息债务/总负债(%)" width="147">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.econData_002||"--"}} {{scope.row.econData_002||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="综合融资成本(%)" width="132" > <el-table-column label="综合融资成本(%)" width="132">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.ofcb||"--"}} {{scope.row.ofcb||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="现金比率(%)" width="108" > <el-table-column label="现金比率(%)" width="108">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.cashRatio||"--"}} {{scope.row.cashRatio||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="现金流量比率(%)" width="132" > <el-table-column label="现金流量比率(%)" width="132">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.cashFlowRatio||"--"}} {{scope.row.cashFlowRatio||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="现金到期债务比(%)" width="144" > <el-table-column label="现金到期债务比(%)" width="144">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.cashDebtRatio||"--"}} {{scope.row.cashDebtRatio||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="授信余额(亿元)" width="125" > <el-table-column label="授信余额(亿元)" width="125">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.creditBalance||"--"}} {{scope.row.creditBalance||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="授信余额/全部债务(%)" width="159" > <el-table-column label="授信余额/全部债务(%)" width="159">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.econData_003||"--"}} {{scope.row.econData_003||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="EBITDA保障倍数" width="117" > <el-table-column label="EBITDA保障倍数" width="117">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.ebitdaIcr||"--"}} {{scope.row.ebitdaIcr||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="私募债余额占比(%)" width="144" > <el-table-column label="私募债余额占比(%)" width="144">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.ppnBalanceProp||"--"}} {{scope.row.ppnBalanceProp||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="一年内到期债权占比(%)" width="168" > <el-table-column label="一年内到期债权占比(%)" width="168">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.econData_004||"--"}} {{scope.row.econData_004||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="债券余额/有息债务(%)" width="159" > <el-table-column label="债券余额/有息债务(%)" width="159">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.econData_005||"--"}} {{scope.row.econData_005||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="借款余额(亿元)" width="124" > <el-table-column label="借款余额(亿元)" width="124">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.loan||"--"}} {{scope.row.loan||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="借款/有息债务(%)" width="135" > <el-table-column label="借款/有息债务(%)" width="135">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.econData_006||"--"}} {{scope.row.econData_006||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="非标余额(亿元)" width="124" > <el-table-column label="非标余额(亿元)" width="124">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.nonStandardBalance||"--"}} {{scope.row.nonStandardBalance||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="非标余额/有息债务(%)" width="159" > <el-table-column label="非标余额/有息债务(%)" width="159">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.nonStandardRatio||"--"}} {{scope.row.nonStandardRatio||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="对外担保金额(亿元)" width="145" > <el-table-column label="对外担保金额(亿元)" width="145">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.guaranteeAmount||"--"}} {{scope.row.guaranteeAmount||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="对外担保比例(%)" width="132" > <el-table-column label="对外担保比例(%)" width="132">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.guaranteeRatio||"--"}} {{scope.row.guaranteeRatio||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="所属开发区" width="85" > <el-table-column label="所属开发区" width="85">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.developmentZone||"--"}} {{scope.row.developmentZone||"--"}}
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</div> </div>
<div class="pagination clearfix" v-show="total>0"> <div class="pagination clearfix" v-show="total>0">
<el-pagination <el-pagination background :page-size="pageSize" :current-page="pageNum" @current-change="handleCurrentChange" layout="prev, pager, next"
background :total="total">
:page-size="pageSize" </el-pagination>
:current-page="pageNum" </div>
@current-change="handleCurrentChange"
layout="prev, pager, next" </div>
:total="total"> <el-dialog title="" :visible.sync="dialogVisible" :modal="false" custom-class='dialog-renlin' :show-close="false" width="244px">
</el-pagination> <span>认领成功,是否完善客户信息?</span>
</div> <div slot="footer" class="dialog-footer">
<span class="dialog-footer-btn1" type="primary" @click="claimopen(companyId,customerId)">
</div> 立即完善
<el-dialog </span>
title="" <span class="dialog-footer-btn2" @click="search(pageNum, pageSize)">稍后</span>
:visible.sync="dialogVisible" </div>
:modal="false" </el-dialog>
custom-class='dialog-renlin' <el-dialog title="取消认领" :visible.sync="dialogVisible1" :modal="false" custom-class='dialog-renlin' :show-close="false" width="344px">
:show-close="false" <span>是否取消认领客户?客户信息将放入“历史客户”。</span>
width="244px"> <div slot="footer" class="dialog-footer">
<span>认领成功,是否完善客户信息?</span> <span class="dialog-footer-btn1" type="primary" @click="confirm()">
<div slot="footer" class="dialog-footer"> 确认
<span class="dialog-footer-btn1" type="primary" @click="claimopen(companyId,customerId)" > </span>
立即完善 <span class="dialog-footer-btn2" @click="dialogVisible1 = false">关闭</span>
</span> </div>
<span class="dialog-footer-btn2" @click="search(pageNum, pageSize)">稍后</span> </el-dialog>
</div> <el-dialog :visible.sync="dialogVisible2" custom-class='dialog-renlin' title="重新认领" width="260px" :show-close="false">
</el-dialog> <div>再次认领将会恢复客户数据</div>
<el-dialog <div slot="footer" class="dialog-footer">
title="取消认领" <span class="dialog-footer-btn1" type="primary" @click="handleHistoryClaim()">确认</span>
:visible.sync="dialogVisible1" <span class="dialog-footer-btn2" @click="dialogVisible2 = false">关闭</span>
:modal="false" </div>
custom-class='dialog-renlin' </el-dialog>
:show-close="false" </div>
width="344px"> </template>
<span>是否取消认领客户?客户信息将放入“历史客户”。</span>
<div slot="footer" class="dialog-footer">
<span class="dialog-footer-btn1" type="primary" @click="confirm()" >
确认
</span>
<span class="dialog-footer-btn2" @click="dialogVisible1 = false">关闭</span>
</div>
</el-dialog>
<el-dialog :visible.sync="dialogVisible2" custom-class='dialog-renlin' title="重新认领" width="260px" :show-close="false">
<div>再次认领将会恢复客户数据</div>
<div slot="footer" class="dialog-footer">
<span class="dialog-footer-btn1" type="primary" @click="handleHistoryClaim()">确认</span>
<span class="dialog-footer-btn2" @click="dialogVisible2 = false">关闭</span>
</div>
</el-dialog>
</div>
</template>
<script> <script>
import {encodeStr} from "@/assets/js/common.js" import { encodeStr } from "@/assets/js/common.js";
import jsk_data from '../../../../../public/jsk.json'; import jsk_data from '../../../../../public/jsk.json';
import skeleton from '@/views/project/projectList/component/skeleton' import skeleton from '@/views/project/projectList/component/skeleton';
import api from '@/api/enterpriseData/enterpriseData.js'; import api from '@/api/enterpriseData/enterpriseData.js';
import "@/assets/styles/public.scss"; import "@/assets/styles/public.scss";
export default { export default {
name: 'Owner', name: 'Owner',
components:{skeleton}, components: { skeleton },
data() { data() {
return { return {
encodeStr, encodeStr,
isSkeleton:true, isSkeleton: true,
keys:'', keys: '',
addressList: [], addressList: [],
addressType: [], addressType: [],
props: { props: {
multiple: true, multiple: true,
expandTrigger: "hover", expandTrigger: "hover",
value: "id", value: "id",
}, },
dialogVisible2:false, dialogVisible2: false,
jskBidQueryDto: { jskBidQueryDto: {
provinceIds: [], provinceIds: [],
cityIds: [], cityIds: [],
areaIds: [] areaIds: []
}, },
domicile: [], domicile: [],
// 行政等级 // 行政等级
uipExecutiveLevel:[], uipExecutiveLevel: [],
uipExecutiveText:[], uipExecutiveText: [],
checkuipExecutive:true, checkuipExecutive: true,
// 城投业务类型 // 城投业务类型
uipBusinessType:[], uipBusinessType: [],
uipBusinessText:[], uipBusinessText: [],
checkuipBusiness:true, checkuipBusiness: true,
// 主体信用等级 // 主体信用等级
bratingSubjectLevel:[], bratingSubjectLevel: [],
bratingSubjectText:[], bratingSubjectText: [],
checkbratingSubject:true, checkbratingSubject: true,
// 股东背景 // 股东背景
shareholderBg:[], shareholderBg: [],
shareholderText:[], shareholderText: [],
checkshareholder:true, checkshareholder: true,
// 股权关系 // 股权关系
equityRelationship:[], equityRelationship: [],
equityRelationshipText:[], equityRelationshipText: [],
checkequityRelationship:true, checkequityRelationship: true,
pageFlag: true, pageFlag: true,
conditionsArr: [], conditionsArr: [],
fieldshow: false, fieldshow: false,
fieldText: '默认排序', fieldText: '默认排序',
sort: '3', //查询结果排序方式 sort: '3', //查询结果排序方式
fieldOptions: [{ fieldOptions: [{
key: "3", key: "3",
value: "默认排序", value: "默认排序",
status: true, status: true,
}, },
{ {
key: "5", key: "5",
value: "招标数量从多到少", value: "招标数量从多到少",
status: false, status: false,
}, },
{ {
key: "7", key: "7",
value: "土地数量从多到少", value: "土地数量从多到少",
status: false, status: false,
}, },
], ],
companyId:'', companyId: '',
companyName:'', companyName: '',
cancelIndex:'', cancelIndex: '',
customerId:'', customerId: '',
dialogVisible: false, dialogVisible: false,
dialogVisible1: false, dialogVisible1: false,
tableData:[], tableData: [],
total:0, total: 0,
pageNum:1, pageNum: 1,
pageSize:50 pageSize: 50
}; };
}, },
computed: { computed: {
checkJskBidQueryDto() { checkJskBidQueryDto() {
let arr = []; let arr = [];
let flag = false; let flag = false;
let data = {}; let data = {};
if (this.domicile.length > 0) { if (this.domicile.length > 0) {
data = { data = {
title: "行政区划:", title: "行政区划:",
keyid: "domicile", keyid: "domicile",
value: this.domicile.join(","), value: this.domicile.join(","),
key: "domicile" key: "domicile"
} };
flag = true; flag = true;
arr.push(data) arr.push(data);
} }
this.conditionsArr = arr this.conditionsArr = arr;
return flag; return flag;
}, },
}, },
created() { created() {
api.uipGroupData().then(res=>{ api.uipGroupData().then(res => {
if (res.code==200) { if (res.code == 200) {
// 行政等级 // 行政等级
this.uipExecutiveLevel=res.data.uipExecutiveLevel, this.uipExecutiveLevel = res.data.uipExecutiveLevel,
// 城投业务类型 // 城投业务类型
this.uipBusinessType=res.data.uipBusinessType, this.uipBusinessType = res.data.uipBusinessType,
// 主体信用等级 // 主体信用等级
this.bratingSubjectLevel=res.data.bratingSubjectLevel, this.bratingSubjectLevel = res.data.bratingSubjectLevel,
// 股东背景 // 股东背景
this.shareholderBg=res.data.shareholderBg, this.shareholderBg = res.data.shareholderBg,
// 股权关系 // 股权关系
this.equityRelationship=res.data.equityRelationship; this.equityRelationship = res.data.equityRelationship;
if(this.shareholderBg.length>0){ if (this.shareholderBg.length > 0) {
let arr = [] let arr = [];
this.shareholderBg.map(item=>{ this.shareholderBg.map(item => {
arr.push({ arr.push({
value:item, value: item,
checked:false checked: false
}) });
}) });
this.shareholderBg = arr this.shareholderBg = arr;
} }
} }
}).catch(error=>{ }).catch(error => {
}); });
}, },
mounted() { mounted() {
this.init(); this.init();
}, },
methods: { methods: {
domicileChange() { domicileChange() {
let arr = this.$refs.address.getCheckedNodes(); let arr = this.$refs.address.getCheckedNodes();
let provinceIds = [], let provinceIds = [],
cityIds = [], cityIds = [],
areaIds = []; areaIds = [];
this.domicile = []; this.domicile = [];
for (var i in arr) { for (var i in arr) {
if (arr[i].parent) { if (arr[i].parent) {
if (!arr[i].parent.checked) { if (!arr[i].parent.checked) {
arr[i].hasChildren && cityIds.push(arr[i].value); arr[i].hasChildren && cityIds.push(arr[i].value);
arr[i].hasChildren && this.domicile.push(arr[i].label); arr[i].hasChildren && this.domicile.push(arr[i].label);
!arr[i].hasChildren && areaIds.push(arr[i].value); !arr[i].hasChildren && areaIds.push(arr[i].value);
!arr[i].hasChildren && this.domicile.push(arr[i].label); !arr[i].hasChildren && this.domicile.push(arr[i].label);
} }
} else { } else {
provinceIds.push(arr[i].value); provinceIds.push(arr[i].value);
this.domicile.push(arr[i].label); this.domicile.push(arr[i].label);
} }
} }
var obj = JSON.parse(JSON.stringify(this.jskBidQueryDto)); var obj = JSON.parse(JSON.stringify(this.jskBidQueryDto));
obj.provinceIds = provinceIds; obj.provinceIds = provinceIds;
obj.cityIds = cityIds; obj.cityIds = cityIds;
obj.areaIds = areaIds; obj.areaIds = areaIds;
this.jskBidQueryDto = obj; this.jskBidQueryDto = obj;
this.search(); this.search();
}, },
addressListfn() { addressListfn() {
var str = []; var str = [];
for (let x = 0; x < 3; x++) { for (let x = 0; x < 3; x++) {
for (let i = 0; i < jsk_data.length; i++) { for (let i = 0; i < jsk_data.length; i++) {
if (jsk_data[i].regionLevel == x + 1 && x + 1 == 1) { if (jsk_data[i].regionLevel == x + 1 && x + 1 == 1) {
str.push({ str.push({
id: jsk_data[i].id, id: jsk_data[i].id,
label: jsk_data[i].regionName, label: jsk_data[i].regionName,
short: jsk_data[i].short, short: jsk_data[i].short,
value: jsk_data[i].parentId, value: jsk_data[i].parentId,
children:jsk_data[i].id==900000?undefined:[], children: jsk_data[i].id == 900000 ? undefined : [],
}); });
} else if (jsk_data[i].regionLevel == x + 1 && x + 1 == 2&&str) { } else if (jsk_data[i].regionLevel == x + 1 && x + 1 == 2 && str) {
for (let j = 0; j < str.length; j++) { for (let j = 0; j < str.length; j++) {
if (str[j].id == jsk_data[i].parentId) { if (str[j].id == jsk_data[i].parentId) {
str[j].children.push({ str[j].children.push({
id: jsk_data[i].id, id: jsk_data[i].id,
label: jsk_data[i].regionName, label: jsk_data[i].regionName,
short: jsk_data[i].short, short: jsk_data[i].short,
value: jsk_data[i].parentId, value: jsk_data[i].parentId,
children: [], children: [],
}); });
} }
} }
} else if (jsk_data[i].regionLevel == x + 1 && x + 1 == 3) { } else if (jsk_data[i].regionLevel == x + 1 && x + 1 == 3) {
for (let j = 0; j < str.length; j++) { for (let j = 0; j < str.length; j++) {
if(str[j].children){ if (str[j].children) {
for (let k = 0; k < str[j].children.length; k++) { for (let k = 0; k < str[j].children.length; k++) {
if (str[j].children[k].id == jsk_data[i].parentId) { if (str[j].children[k].id == jsk_data[i].parentId) {
str[j].children[k].children.push({ str[j].children[k].children.push({
id: jsk_data[i].id, id: jsk_data[i].id,
label: jsk_data[i].regionName, label: jsk_data[i].regionName,
short: jsk_data[i].short, short: jsk_data[i].short,
value: jsk_data[i].parentId, value: jsk_data[i].parentId,
}); });
} }
} }
} }
} }
} }
} }
} }
this.addressList = str; this.addressList = str;
}, },
reset() { reset() {
Object.assign(this.$data, this.$options.data.call(this)); //重置data Object.assign(this.$data, this.$options.data.call(this)); //重置data
this.init(); this.init();
}, },
init(){ init() {
this.search(); this.search();
this.addressListfn(); this.addressListfn();
}, },
checkuipExecutivebtn(val){ checkuipExecutivebtn(val) {
this.uipExecutiveText =[]; this.uipExecutiveText = [];
this.checkuipExecutive=true; this.checkuipExecutive = true;
this.search(); this.search();
}, },
uipExecutiveLevelbtn(val){ uipExecutiveLevelbtn(val) {
if(val.length>0){ if (val.length > 0) {
this.checkuipExecutive=false; this.checkuipExecutive = false;
}else if(val.length==0){ } else if (val.length == 0) {
this.checkuipExecutive=true; this.checkuipExecutive = true;
} }
this.search(); this.search();
}, },
checkuipBusinessbtn(val){ checkuipBusinessbtn(val) {
this.uipBusinessText =[]; this.uipBusinessText = [];
this.checkuipBusiness=true; this.checkuipBusiness = true;
this.search(); this.search();
}, },
uipBusinessTypebtn(val){ uipBusinessTypebtn(val) {
if(val.length>0){ if (val.length > 0) {
this.checkuipBusiness=false; this.checkuipBusiness = false;
}else if(val.length==0){ } else if (val.length == 0) {
this.checkuipBusiness=true; this.checkuipBusiness = true;
} }
this.search(); this.search();
}, },
checkbratingSubjectbtn(val){ checkbratingSubjectbtn(val) {
this.bratingSubjectText =[]; this.bratingSubjectText = [];
this.search(); this.search();
this.checkbratingSubject=true; this.checkbratingSubject = true;
}, },
bratingSubjectLevelbtn(val){ bratingSubjectLevelbtn(val) {
if(val.length>0){ if (val.length > 0) {
this.checkbratingSubject=false; this.checkbratingSubject = false;
}else if(val.length==0){ } else if (val.length == 0) {
this.checkbratingSubject=true; this.checkbratingSubject = true;
} }
this.search(); this.search();
}, },
checkshareholderbtn(val){ checkshareholderbtn(val) {
this.shareholderText =[]; this.shareholderText = [];
for(var i in this.shareholderBg){ for (var i in this.shareholderBg) {
this.shareholderBg[i].checked = false this.shareholderBg[i].checked = false;
} }
this.checkshareholder=true; this.checkshareholder = true;
this.search(); this.search();
}, },
shareholderBgbtn(val){ shareholderBgbtn(val) {
let flag = false let flag = false;
this.shareholderText =[]; this.shareholderText = [];
for(var i in this.shareholderBg){ for (var i in this.shareholderBg) {
if(this.shareholderBg[i].checked){ if (this.shareholderBg[i].checked) {
if(this.shareholderText.indexOf(this.shareholderBg[i].value)==-1){ if (this.shareholderText.indexOf(this.shareholderBg[i].value) == -1) {
this.shareholderText.push(this.shareholderBg[i].value) this.shareholderText.push(this.shareholderBg[i].value);
} }
flag = true; flag = true;
} }
} }
if(flag){ if (flag) {
this.checkshareholder=false; this.checkshareholder = false;
}else{ } else {
this.checkshareholder=true; this.checkshareholder = true;
} }
this.search(); this.search();
}, },
checkequityRelationshipbtn(val){ checkequityRelationshipbtn(val) {
this.equityRelationshipText =[]; this.equityRelationshipText = [];
this.checkequityRelationship=true; this.checkequityRelationship = true;
this.search(); this.search();
}, },
equityRelationshipbtn(val){ equityRelationshipbtn(val) {
if(val.length>0){ if (val.length > 0) {
this.checkequityRelationship=false; this.checkequityRelationship = false;
}else if(val.length==0){ } else if (val.length == 0) {
this.checkequityRelationship=true; this.checkequityRelationship = true;
} }
this.search(); this.search();
}, },
handsequencingList(index) { handsequencingList(index) {
this.fieldshow = false; this.fieldshow = false;
this.sort = this.fieldOptions[index].key; this.sort = this.fieldOptions[index].key;
for (let i = 0; i < this.fieldOptions.length; i++) { for (let i = 0; i < this.fieldOptions.length; i++) {
this.fieldOptions[i].status = false; this.fieldOptions[i].status = false;
} }
this.fieldText = this.fieldOptions[index].value; this.fieldText = this.fieldOptions[index].value;
this.fieldOptions[index].status = true; this.fieldOptions[index].status = true;
this.search(); this.search();
}, },
handleCurrentChange(pageNum) { handleCurrentChange(pageNum) {
this.pageNum = pageNum; this.pageNum = pageNum;
this.search(pageNum, this.pageSize); this.search(pageNum, this.pageSize);
}, },
handleSizeChange(pageSize) { handleSizeChange(pageSize) {
this.pageSize = pageSize; this.pageSize = pageSize;
this.search(this.pageNum, pageSize); this.search(this.pageNum, pageSize);
}, },
reloadPage() { reloadPage() {
this.pageFlag = false; this.pageFlag = false;
this.$nextTick(() => { this.$nextTick(() => {
this.pageFlag = true; this.pageFlag = true;
}); });
}, },
async handleHistoryClaim(){ async handleHistoryClaim() {
let res = await api.historyClaim(this.companyName) let res = await api.historyClaim(this.companyName);
if(res.code==200){ if (res.code == 200) {
this.dialogVisible2 = false; this.dialogVisible2 = false;
this.search(); this.search();
}else{ } else {
this.$message.error(res.msg) this.$message.error(res.msg);
} }
}, },
claimbtn(item){ claimbtn(item) {
if(item.claimStatus==1){ if (item.claimStatus == 1) {
return this.dialogVisible2=true; return this.dialogVisible2 = true;
} }
this.companyId=item.companyId; this.companyId = item.companyId;
var info={}; var info = {};
api.infoHeader({companyId:this.companyId}).then(res=>{ api.infoHeader({ companyId: this.companyId }).then(res => {
// console.log(res) // console.log(res)
info=res.data; info = res.data;
let params={ let params = {
companyId:item.companyId, companyId: item.companyId,
uipId:item.uipId, uipId: item.uipId,
companyName:item.companyName.replace(/<font color='red'>/g,'').replace(/<\/font>/g,''), companyName: item.companyName.replace(/<font color='red'>/g, '').replace(/<\/font>/g, ''),
creditLevel:info.bratingSubjectLevel, creditLevel: info.bratingSubjectLevel,
legalPerson:info.corporatePerson, legalPerson: info.corporatePerson,
registerCapital:info.registeredCapital, registerCapital: info.registeredCapital,
provinceId:info.provinceId, provinceId: info.provinceId,
cityId:info.cityId, cityId: info.cityId,
districtId:info.districtCode, districtId: info.districtCode,
registerAddress:info.provinceName+'-'+info.cityName+'-'+info.districtName, registerAddress: info.provinceName + '-' + info.cityName + '-' + info.districtName,
creditCode:info.creditCode, creditCode: info.creditCode,
} };
api.claim(params).then(res1=>{ api.claim(params).then(res1 => {
if (res1.code==200) { if (res1.code == 200) {
this.dialogVisible=true; this.dialogVisible = true;
this.customerId=res1.data.customerId; this.customerId = res1.data.customerId;
} }
}).catch(error=>{ }).catch(error => {
}); });
}).catch(error=>{ }).catch(error => {
}); });
}, },
cancelClaim(companyName,index){ cancelClaim(companyName, index) {
this.dialogVisible1 = true; this.dialogVisible1 = true;
this.companyName = companyName; this.companyName = companyName;
this.cancelIndex = index; this.cancelIndex = index;
}, },
confirm(){ confirm() {
api.cancelClaim(this.companyName).then(res=>{ api.cancelClaim(this.companyName).then(res => {
if(res.code==200){ if (res.code == 200) {
this.dialogVisible1 = false; this.dialogVisible1 = false;
this.tableData[this.cancelIndex].claimStatus = 1 this.tableData[this.cancelIndex].claimStatus = 1;
}else{ } else {
this.$message.error(res.msg) this.$message.error(res.msg);
} }
}) });
}, },
claimopen(companyId,customerId){ claimopen(companyId, customerId) {
this.$router.push({ this.$router.push({
path: '/enterprise/'+encodeStr(companyId), path: '/enterprise/' + encodeStr(companyId),
query: { query: {
'customerId': customerId, 'customerId': customerId,
'path':'business' 'path': 'business'
} , },
}) });
this.dialogVisible=false; this.dialogVisible = false;
this.search(); this.search();
}, },
search(pageNum, pageSize,exportFlag) { search(pageNum, pageSize, exportFlag) {
this.dialogVisible=false; this.dialogVisible = false;
if (!pageNum) { if (!pageNum) {
this.pageNum = 1; this.pageNum = 1;
} }
if (!pageSize) { if (!pageSize) {
this.pageSize = 50; this.pageSize = 50;
} }
if (!pageNum && !pageSize) { if (!pageNum && !pageSize) {
this.reloadPage(); this.reloadPage();
} }
let params = { let params = {
pageNum: this.pageNum, pageNum: this.pageNum,
pageSize: this.pageSize, pageSize: this.pageSize,
sort: this.sort, sort: this.sort,
}; };
var data = JSON.parse(JSON.stringify(this.jskBidQueryDto)); var data = JSON.parse(JSON.stringify(this.jskBidQueryDto));
if(this.keys){ if (this.keys) {
params['keys'] = this.keys.split(' '); params['keys'] = this.keys.split(' ');
}else{ } else {
delete params.keys delete params.keys;
} }
if(data.provinceIds.length>0){ if (data.provinceIds.length > 0) {
params['provinceIds'] = data.provinceIds; params['provinceIds'] = data.provinceIds;
}else{ } else {
delete params.provinceIds delete params.provinceIds;
} }
if(data.cityIds.length>0){ if (data.cityIds.length > 0) {
params['cityIds'] = data.cityIds; params['cityIds'] = data.cityIds;
}else{ } else {
delete params.cityIds delete params.cityIds;
} }
if(data.areaIds.length>0){ if (data.areaIds.length > 0) {
params['areaIds'] = data.areaIds; params['areaIds'] = data.areaIds;
}else{ } else {
delete params.areaIds delete params.areaIds;
} }
if(this.uipExecutiveText.length>0){ if (this.uipExecutiveText.length > 0) {
params['uipExecutiveLevel'] = this.uipExecutiveText; params['uipExecutiveLevel'] = this.uipExecutiveText;
}else{ } else {
delete params.uipExecutiveLevel delete params.uipExecutiveLevel;
} }
if(this.uipBusinessText.length>0){ if (this.uipBusinessText.length > 0) {
params['uipBusinessType'] = this.uipBusinessText; params['uipBusinessType'] = this.uipBusinessText;
}else{ } else {
delete params.uipBusinessType delete params.uipBusinessType;
} }
if(this.bratingSubjectText.length>0){ if (this.bratingSubjectText.length > 0) {
params['bratingSubjectLevel'] = this.bratingSubjectText; params['bratingSubjectLevel'] = this.bratingSubjectText;
}else{ } else {
delete params.bratingSubjectLevel delete params.bratingSubjectLevel;
} }
if(this.shareholderText.length>0){ if (this.shareholderText.length > 0) {
params['shareholderBg'] = this.shareholderText; params['shareholderBg'] = this.shareholderText;
}else{ } else {
delete params.shareholderBg delete params.shareholderBg;
} }
if(this.equityRelationshipText.length>0){ if (this.equityRelationshipText.length > 0) {
params['equityRelationship'] = this.equityRelationshipText; params['equityRelationship'] = this.equityRelationshipText;
}else{ } else {
delete params.equityRelationship delete params.equityRelationship;
} }
this.isSkeleton = true; this.isSkeleton = true;
api.uipSerach(params).then(res=>{ api.uipSerach(params).then(res => {
this.isSkeleton = false this.isSkeleton = false;
this.tableData=res.rows; this.tableData = res.rows;
this.total=res.total; this.total = res.total;
}).catch(error=>{ }).catch(error => {
}); });
}, },
renlin(){ renlin() {
this.dialogVisible=false; this.dialogVisible = false;
// this.$router.push({path:'/home',query: {id:'1'}}) // this.$router.push({path:'/home',query: {id:'1'}})
// 跳转地址 // 跳转地址
}, },
}, },
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
::v-deep .dialog-renlin{ ::v-deep .dialog-renlin {
margin-top:40vh !important; margin-top: 40vh !important;
.el-dialog__body{ .el-dialog__body {
padding: 0; padding: 0;
text-align: center; text-align: center;
padding-bottom: 24px; padding-bottom: 24px;
} }
.el-dialog__footer{ .el-dialog__footer {
padding: 0px; padding: 0px;
padding-bottom: 24px; padding-bottom: 24px;
.dialog-footer{ .dialog-footer {
display: inline-flex; display: inline-flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
width: 100%; width: 100%;
.dialog-footer-btn1{ .dialog-footer-btn1 {
cursor: pointer; cursor: pointer;
width: 72px; width: 72px;
height: 28px; height: 28px;
background: #0081FF; background: #0081ff;
border-radius: 2px 2px 2px 2px; border-radius: 2px 2px 2px 2px;
font-size: 12px; font-size: 12px;
font-weight: 400; font-weight: 400;
color: #FFFFFF; color: #ffffff;
line-height: 28px; line-height: 28px;
text-align: center; text-align: center;
margin-right: 8px; margin-right: 8px;
&:hover{ &:hover {
background: #006AD1; background: #006ad1;
} }
} }
.dialog-footer-btn2{ .dialog-footer-btn2 {
cursor: pointer; cursor: pointer;
width: 72px; width: 72px;
height: 28px; height: 28px;
border-radius: 2px 2px 2px 2px; border-radius: 2px 2px 2px 2px;
border: 1px solid #CCCCCC; border: 1px solid #cccccc;
line-height: 28px; line-height: 28px;
text-align: center; text-align: center;
font-size: 12px; font-size: 12px;
font-weight: 400; font-weight: 400;
color: rgba(35,35,35,0.8); color: rgba(35, 35, 35, 0.8);
&:hover{ &:hover {
background: #F3F4F5; background: #f3f4f5;
} }
} }
} }
} }
} }
.content{ .content {
padding: 0px 16px; padding: 0px 16px;
border-radius: 4px 4px 4px 4px; border-radius: 4px 4px 4px 4px;
background: #FFFFFF; background: #ffffff;
.content_item{ .content_item {
padding-top:20px; padding-top: 20px;
display: -webkit-box; display: -webkit-box;
align-items: flex-start; align-items: flex-start;
.label{ .label {
width: 84px; width: 84px;
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
color: rgba(35,35,35,0.8); color: rgba(35, 35, 35, 0.8);
margin-right: 28px; margin-right: 28px;
} }
.content_right{ .content_right {
width: calc(100% - 112px); width: calc(100% - 112px);
.ename_input{ .ename_input {
width: 640px; width: 640px;
margin-right: 20px; margin-right: 20px;
}
} .land_ipt_470 {
.land_ipt_470 { width: 640px;
width: 640px; }
} }
} .item_ckquery_list {
.item_ckquery_list { display: flex;
display: flex; align-items: center;
align-items: center; .qualifications-tab {
.qualifications-tab{ margin-right: 4px;
margin-right: 4px; border: 1px solid #e0e0e0;
border: 1px solid #e0e0e0; padding: 2px 3px;
padding: 2px 3px; border-radius: 2px;
border-radius: 2px; height: 34px;
height: 34px; margin-top: 1px;
margin-top: 1px; span {
span{ background: #fff;
background: #fff; display: inline-block;
display: inline-block; cursor: pointer;
cursor: pointer; float: left;
float: left; border-radius: 2px;
border-radius: 2px; padding: 3px 8px;
padding: 3px 8px; margin-top: 0.5px;
margin-top: 0.5px; }
} .action {
.action{ color: #ffffff;
color: #ffffff; background: #0081ff;
background: #0081ff; }
} }
} .ckquery_list_right {
.ckquery_list_right{ width: 670px;
width: 670px; }
} }
} .item_ckquery_list .el-input__icon {
position: relative;
top: 1px;
.item_ckquery_list .el-input__icon { }
position: relative; .ckquery_list_right {
top: 1px; width: 640px;
} }
.ckquery_list_right { .register_count_ipt {
width: 640px; margin-left: 0px;
} }
.register_count_ipt{ .register_count_ipt .el-input__inner {
margin-left: 0px; width: 174px;
}
} ::v-deep .el-input-group__prepend {
.register_count_ipt .el-input__inner{ padding: 0 8px;
width: 174px; }
} .content-projecttype {
::v-deep .el-input-group__prepend{ display: flex;
padding: 0 8px; align-items: center;
} justify-content: center;
.content-projecttype{ .projecttype {
display: flex; font-weight: 400;
align-items: center; color: #232323;
justify-content: center; padding: 1px 5px;
.projecttype{ margin-right: 4px;
font-weight: 400; cursor: pointer;
color: #232323; border-radius: 3px 3px 3px 3px;
padding: 1px 5px; font-size: 14px;
margin-right: 4px; }
cursor: pointer; .projecttype:first-child {
border-radius: 3px 3px 3px 3px; padding-left: 0px;
font-size: 14px; }
} .projecttype:hover {
.projecttype:first-child{ background: #f3f4f5;
padding-left: 0px; padding: 1px 5px;
} }
.projecttype:hover{ .activetype {
background: #F3F4F5; background: #f3f4f5;
padding: 1px 5px; padding: 1px 5px !important;
} }
.activetype{ }
background: #F3F4F5; }
padding: 1px 5px !important; .content_item1 {
} .checkbox-content {
} display: block;
.el-checkbox {
margin-bottom: 20px;
}
} }
.content_item1{ }
.checkbox-content{
display: block; .content_item_padding0 {
.el-checkbox{ padding: 0;
margin-bottom: 20px; }
} }
} .bottomlist {
} width: 100%;
background-color: #ffffff;
.content_item_padding0{
padding: 0; border-radius: 4px 4px 4px 4px;
} .bottomlist-title {
display: flex;
} justify-content: space-between;
.bottomlist{ align-items: center;
width: 100%; margin-top: 12px;
background-color: #FFFFFF; padding: 16px;
border-radius: 4px 4px 4px 4px; .title-right {
.bottomlist-title{ display: flex;
display: flex; align-items: center;
justify-content: space-between; p:last-child {
align-items: center; display: flex;
margin-top: 12px; align-items: center;
padding: 16px ; font-size: 14px;
font-weight: 400;
.title-right{ color: rgba(35, 35, 35, 0.8);
display: flex; }
align-items: center; img {
p:last-child{ width: 18px;
display: flex; height: 18px;
align-items: center; }
font-size: 14px; .excel {
font-weight: 400; cursor: pointer;
color: rgba(35,35,35,0.8); }
} }
img{ }
width: 18px; .bottomlist-title-left {
height: 18px; display: inline-flex;
} align-items: center;
.excel{ .title-left {
cursor: pointer; height: 16px;
} line-height: 16px;
} font-size: 12px;
font-weight: 400;
} color: #3d3d3d;
.bottomlist-title-left{ }
display: inline-flex;; }
align-items: center; .bottomlist-content {
.title-left{ padding-bottom: 0px;
height:16px; }
line-height: 16px;
font-size: 12px; .table-item-jf {
font-weight: 400; padding: 0px 16px;
color: #3D3D3D; .list-titel-a {
} color: #0081ff;
} }
.bottomlist-content{ ::v-deep .el-table--border .el-table__cell:first-child .cell {
padding: 0px 8px;
padding-bottom: 0px; padding-left: 12px;
} font-size: 12px;
font-weight: 400;
}
.table-item-jf{ ::v-deep .el-table th.el-table__cell > .cell {
padding:0px 16px; padding: 0px 8px;
.list-titel-a{ padding-left: 12px;
color:#0081FF; font-size: 12px;
} font-weight: 400;
::v-deep .el-table--border .el-table__cell:first-child .cell{ }
padding:0px 8px; ::v-deep .el-table th.el-table__cell.is-leaf,
padding-left:12px; ::v-deep .el-table td.el-table__cell {
font-size: 12px; border-bottom: 1px solid #e6eaf1;
font-weight: 400; }
} ::v-deep .el-table--border .el-table__cell {
::v-deep .el-table th.el-table__cell > .cell{ border-right: 1px solid #e6eaf1;
padding:0px 8px; }
padding-left:12px; ::v-deep.el-table__fixed::before {
font-size: 12px; height: 0;
font-weight: 400; }
} .renling {
::v-deep .el-table th.el-table__cell.is-leaf, ::v-deep .el-table td.el-table__cell{ display: flex;
border-bottom: 1px solid #E6EAF1; align-items: center;
} .list-titel-a {
::v-deep .el-table--border .el-table__cell{ width: 264px;
border-right:1px solid #E6EAF1; margin-right: 12px;
} }
::v-deep.el-table__fixed::before{ .renling-btn {
height: 0; display: flex;
} align-items: center;
.renling{ cursor: pointer;
display: flex; .renling-img-true {
align-items: center; width: 16px;
.list-titel-a{ height: 16px;
width: 264px; margin-right: 8px;
margin-right: 12px; background-image: url("../../../../assets/images/owner/renling1.png");
} background-size: 100% 100%;
.renling-btn{ background-repeat: no-repeat;
display: flex; }
align-items: center; .renling-img-false {
cursor: pointer; width: 16px;
.renling-img-true{ height: 16px;
width: 16px; margin-right: 8px;
height: 16px; background-image: url("../../../../assets/images/owner/renling2.png");
margin-right: 8px; background-size: 100% 100%;
background-image: url('../../../../assets/images/owner/renling1.png'); background-repeat: no-repeat;
background-size: 100% 100%; }
background-repeat: no-repeat;
} .renling-hui {
.renling-img-false{ font-size: 13px;
width: 16px; font-weight: 400;
height: 16px; color: rgba(35, 35, 35, 0.4);
margin-right: 8px; }
background-image: url('../../../../assets/images/owner/renling2.png'); .renling-hei {
background-size: 100% 100%; font-size: 13px;
background-repeat: no-repeat; font-weight: 400;
} color: #3d3d3d;
}
.renling-hui{ }
font-size: 13px;
font-weight: 400; .renling-btn:hover {
color: rgba(35,35,35,0.4); .renling-hei {
} color: #0081ff;
.renling-hei{ }
font-size: 13px; }
font-weight: 400; }
color: #3D3D3D; }
} .table-item1 {
::v-deep .el-table__body-wrapper {
color: #232323;
} }
}
.fixed-table {
.renling-btn:hover{ overflow: initial;
.renling-hei{
color: #0081FF; ::v-deep .el-table__header-wrapper {
} position: sticky;
top: 56px;
} z-index: 9;
}
} ::v-deep .el-table__fixed-header-wrapper {
position: sticky;
} z-index: 9;
.table-item1{ top: 56px;
::v-deep .el-table__body-wrapper{ }
color: #232323; ::v-deep .el-table__fixed {
} overflow-x: clip;
} overflow-y: clip;
.fixed-table{ }
overflow:initial; }
.table-item-jf1 {
::v-deep .el-table__header-wrapper{ border-top: 1px solid #efefef;
position: sticky; }
top:56px; .pagination {
z-index: 9; padding: 14px;
} .el-pagination {
::v-deep .el-table__fixed-header-wrapper{ float: right;
position: sticky; }
z-index: 9; }
top: 56px; }
} </style>
::v-deep .el-table__fixed{
overflow-x: clip;
overflow-y: clip;
}
}
.table-item-jf1{
border-top:1px solid #EFEFEF;
}
.pagination{
padding: 14px ;
.el-pagination{
float: right ;
}
}
}
</style>
<template>
<div class="search-the-owner">
<div class="title_wrap">
<div class="enterprise_title">
查业主
</div>
</div>
<div class="content-outer-container">
<div class="content">
<div class="content_item">
<div class="content_right item_ckquery_list">
<el-input class="ename_input" placeholder="请输入关键字查询" clearable v-model="keys" @clear="keysClear">
<div slot="append" class="btn-search" @click="search()">搜索</div>
</el-input>
</div>
</div>
<div class="content_item">
<div class="label">企业地区</div>
<div class="content_right item_ckquery_list">
<div class="select-popper">
<span :class="{color_text:jskBidQueryDto.provinceIds.length ||jskBidQueryDto.cityIds.length ||jskBidQueryDto.areaIds.length,}">
注册地区{{jskBidQueryDto.provinceIds.length ||jskBidQueryDto.cityIds.length ||jskBidQueryDto.areaIds.length? jskBidQueryDto.provinceIds.length + jskBidQueryDto.cityIds.length +jskBidQueryDto.areaIds.length +"项": ""}}
<i class="el-icon-caret-bottom"></i>
</span>
<el-cascader ref="address" class="cascader-region" v-model="addressType" :options="addressList" :props="props" @change="domicileChange"
collapse-tags clearable></el-cascader>
</div>
</div>
</div>
<div class="content_item">
<div class="label">业主标签</div>
<div class="content_right">
<div class="checkbox">
<div class="checkbox-content">
<!-- <div class="checkbox-content-qx">
<el-checkbox v-model="checkOwnerLabel" @change="allOwnerLabelBtn">全部</el-checkbox>
</div> -->
<el-checkbox-group v-model="currentOwnerLabels" @change="OwnerLabelChange">
<el-checkbox v-for="item of ownerLabels" :label="item.dictValue" :key="item.dictCode">{{item.dictLabel}}</el-checkbox>
</el-checkbox-group>
</div>
</div>
<!-- 两个或两个以上业主标签关系 -->
<div class="multiple-owner-label" v-if="currentOwnerLabels.length >= 2">
<div class="multiple-tip-box">
<span>多个标签关系</span>
<el-tooltip class="item" effect="dark" placement="top" popper-class="multiple-tip-el-tooltip">
<template slot="content">
<div class="multiple-tip-content">
<span>同时具备:筛选结果必须满足多个标签。</span>
<span>任意均可:筛选结果满足任意一个标签。</span>
</div>
</template>
<div class="multiple-tip-icon">
<i class="el-icon-warning-outline"></i>
</div>
</el-tooltip>
</div>
<!-- 关系单选 -->
<el-radio-group v-model="tagCodeQueryType" @change="tagRadioChange">
<el-radio :label="'or'">任意均可</el-radio>
<el-radio :label="'and'">同时具备</el-radio>
</el-radio-group>
</div>
</div>
</div>
</div>
</div>
<div class="bottomlist">
<div class="bottomlist-title">
<div class="bottomlist-title-left">
<p class="title-left">
<span style="margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;">·</span>共{{total}}条
</p>
<el-popover v-model="fieldshow" placement="bottom-start" trigger="click" popper-class="viewlist-el-popover">
<ul class="pup_list">
<li v-for="(itme,i) in fieldOptions" :class="itme.status?'active':''" @click="handsequencingList(i)" :key="i">
{{itme.value}}
</li>
</ul>
<span slot="reference" class="toolbar-right-download sort-mode">
{{fieldText}}<i class="el-icon-arrow-down" :style="{transform:fieldshow?'rotate(180deg)':''}"></i>
</span>
</el-popover>
</div>
<div class="title-right">
<p>
<img src="@/assets/images/EXCEL.png" alt="">
<span class="excel" @click="$message({message: '功能正在开发中',type: 'warning'})">导出EXCEL</span>
</p>
</div>
</div>
<div class="table-item-jf table-item-jf1" v-if="tableData.length==0&& !isSkeleton">
<img class="item-jf-img" src="@/assets/images/kong.png" alt="">
<div class="item-jf-titel">抱歉,没找到相关数据!</div>
<div class="item-jf-text">建议调整关键词或筛选条件,重新搜索!</div>
</div>
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton>
<div class="table-item-jf table-item" v-if="!isSkeleton&&tableData.length>0" @mouseleave="showClaim = false">
<el-table :data="tableData" :header-cell-style="{ background:'#f0f3fa',color: 'rgba(35,35,35,0.8)'}" v-horizontal-scroll="'hover'"
class="table-item1 fixed-table" border highlight-current-row :header-row-class-name="setHeaderRow" :cell-class-name="setCellClass"
:header-cell-class-name="setCellClass" @cell-mouse-enter="addColumnClass" @sort-change="sortChange">
<el-table-column type="index" label="序号" fixed width="60" :resizable="false">
<template slot-scope="scope">
<span>{{(pageNum - 1) *pageSize + scope.$index + 1}}</span>
</template>
</el-table-column>
<el-table-column label="公司名称" fixed width="380" :resizable="false">
<template slot-scope="scope">
<div class="renling" :class="{'show-claim' : showClaim}">
<router-link :to="scope.row.uipId ? `/enterprise/${encodeStr(scope.row.id)}` : `/company/${encodeStr(scope.row.id)}`" tag="a"
class="list-titel-a" v-html="scope.row.name"></router-link>
<!-- 优质甲方tag标签 -->
<div class="high-quality-enterprise" v-if="scope.row.other">{{scope.row.other}}</div>
<div class="renling-btn" @click="claimbtn(scope.row)">
<p v-if="scope.row.claimStatus==1" class="renling-img-true">
</p>
<p v-else class="renling-img-false">
</p>
<span v-if="scope.row.claimStatus==1" @click.stop="cancelClaim(scope.row.name,scope.$index)" class="renling-hui">
已认领
</span>
<span v-else class="renling-hei">
认领
</span>
</div>
</div>
</template>
</el-table-column>
<el-table-column label="法定代表人" width="85" :resizable="false">
<template slot-scope="scope">
{{scope.row.legalPerson||"--"}}
</template>
</el-table-column>
<el-table-column label="注册资本" width="118" :resizable="false" :sortable="'custom'" prop="registeredCapitalStr">
<template slot-scope="scope">
<div style="text-align:right;white-space: nowrap;">{{scope.row.registeredCapitalStr ? `${scope.row.registeredCapitalStr}万元`:"--"}}
</div>
</template>
</el-table-column>
<el-table-column label="企业注册地区" width="215" :resizable="false">
<template slot-scope="scope">
{{scope.row.domicile||"--"}}
</template>
</el-table-column>
<el-table-column label="历史发包数量" width="107" :resizable="false" :sortable="'custom'" prop="inviteTenderCount">
<template slot-scope="scope">
{{scope.row.inviteTenderCount ? `${scope.row.inviteTenderCount}个`:"--"}}
</template>
</el-table-column>
<el-table-column label="历史发包总金额" width="120" :resizable="false" :sortable="'custom'" prop="inviteTenderSumAmount">
<template slot-scope="scope">
<div style="text-align:right;white-space: nowrap;">{{scope.row.inviteTenderSumAmount ? `${scope.row.inviteTenderSumAmount}万元`:"--"}}
</div>
</template>
</el-table-column>
<el-table-column label="最近一次招标" width="107" :resizable="false" :sortable="'custom'" prop="inviteTenderLastTime">
<template slot-scope="scope">
{{scope.row.inviteTenderLastTime||"--"}}
</template>
</el-table-column>
<el-table-column label="重点项目" width="107" :resizable="false" :sortable="'custom'" prop="importantProjectCount">
<template slot-scope="scope">
<router-link v-if="scope.row.importantProjectCount"
:to="scope.row.uipId ? `/enterprise/${encodeStr(scope.row.id)}?path=majorProject` : `/company/${encodeStr(scope.row.id)}?path=majorProject`"
tag="a" class="list-titel-a">{{`${scope.row.importantProjectCount}个`}}</router-link>
<span v-else>--</span>
</template>
</el-table-column>
<el-table-column label="土地交易" width="107" :resizable="false" :sortable="'custom'" prop="landMarketCount">
<template slot-scope="scope">
<router-link v-if="scope.row.landMarketCount"
:to="scope.row.uipId ? `/enterprise/${encodeStr(scope.row.id)}?path=landMarketCount` : `/company/${encodeStr(scope.row.id)}?path=landMarketCount`"
tag="a" class="list-titel-a">{{`${scope.row.landMarketCount}个`}}</router-link>
<span v-else>--</span>
</template>
</el-table-column>
<el-table-column label="拟建项目" width="107" :resizable="false" :sortable="'custom'" prop="approvalProjectCount">
<template slot-scope="scope">
<router-link v-if="scope.row.approvalProjectCount"
:to="scope.row.uipId ? `/enterprise/${encodeStr(scope.row.id)}?path=approvalProjectCount` : `/company/${encodeStr(scope.row.id)}?path=approvalProjectCount`"
tag="a" class="list-titel-a">{{`${scope.row.approvalProjectCount}个`}}</router-link>
<span v-else>--</span>
</template>
</el-table-column>
<el-table-column label="招标计划" width="107" :resizable="false" :sortable="'custom'" prop="bidPlanCount">
<template slot-scope="scope">
<router-link v-if="scope.row.bidPlanCount"
:to="scope.row.uipId ? `/enterprise/${encodeStr(scope.row.id)}?path=bidPlanCount` : `/company/${encodeStr(scope.row.id)}?path=bidPlanCount`"
tag="a" class="list-titel-a">{{`${scope.row.bidPlanCount}个`}}</router-link>
<span v-else>--</span>
</template>
</el-table-column>
<el-table-column label="招标公告" width="107" :resizable="false" :sortable="'custom'" prop="jskBidCount">
<template slot-scope="scope">
<router-link v-if="scope.row.jskBidCount"
:to="scope.row.uipId ? `/enterprise/${encodeStr(scope.row.id)}?path=majorProject` : `/company/${encodeStr(scope.row.id)}?path=majorProject`"
tag="a" class="list-titel-a">{{`${scope.row.jskBidCount}个`}}</router-link>
<span v-else>--</span>
</template>
</el-table-column>
</el-table>
</div>
<div class="pagination clearfix" v-show="total>0">
<el-pagination background :page-size="pageSize" :current-page="pageNum" @current-change="handleCurrentChange" layout="prev, pager, next"
:total="total">
</el-pagination>
</div>
</div>
<el-dialog title="" :visible.sync="dialogVisible" :modal="false" custom-class='dialog-renlin' :show-close="false" width="244px">
<span>认领成功,是否完善客户信息?</span>
<div slot="footer" class="dialog-footer">
<span class="dialog-footer-btn1" type="primary" @click="claimopen(companyId,customerId)">
立即完善
</span>
<span class="dialog-footer-btn2" @click="search(pageNum, pageSize)">稍后</span>
</div>
</el-dialog>
<el-dialog title="取消认领" :visible.sync="dialogVisible1" :modal="false" custom-class='dialog-renlin' :show-close="false" width="344px">
<span>是否取消认领客户?客户信息将放入“历史客户”。</span>
<div slot="footer" class="dialog-footer">
<span class="dialog-footer-btn1" type="primary" @click="confirm()">
确认
</span>
<span class="dialog-footer-btn2" @click="dialogVisible1 = false">关闭</span>
</div>
</el-dialog>
<el-dialog :visible.sync="dialogVisible2" custom-class='dialog-renlin' title="重新认领" width="260px" :show-close="false">
<div>再次认领将会恢复客户数据</div>
<div slot="footer" class="dialog-footer">
<span class="dialog-footer-btn1" type="primary" @click="handleHistoryClaim()">确认</span>
<span class="dialog-footer-btn2" @click="dialogVisible2 = false">关闭</span>
</div>
</el-dialog>
</div>
</template>
<script>
import { encodeStr } from "@/assets/js/common.js";
import jsk_data from '../../../../../public/jsk.json';
import skeleton from '@/views/project/projectList/component/skeleton';
import api from '@/api/enterpriseData/enterpriseData.js';
import "@/assets/styles/public.scss";
import dayjs from "dayjs";
export default {
name: 'searchTheOwner',
components: { skeleton },
data() {
return {
encodeStr,
isSkeleton: true,
keys: '',
addressList: [],
addressType: [],
props: {
multiple: true,
expandTrigger: "hover",
value: "id",
},
dialogVisible2: false,
jskBidQueryDto: {
provinceIds: [],
cityIds: [],
areaIds: []
},
domicile: [],
// 业主标签
ownerLabels: [],
// 当前选中的业主标签
currentOwnerLabels: ["5.1.1."],
// 业主全选状态
checkOwnerLabel: false,
// 选中两个及两个以上业主标签 添加选中条件 or任意均可 and同时具备
tagCodeQueryType: "or",
pageFlag: true,
conditionsArr: [],
fieldshow: false,
fieldText: '默认排序',
sort: '', //查询结果排序方式
// 展示认领状态
showClaim: false,
fieldOptions: [{
key: "",
value: "默认排序",
status: true,
},
{
key: "invite_tender_sum_amount",
value: "招标总金额",
status: false,
},
{
key: "land_market_count",
value: "土地交易",
status: false,
},
{
key: "approval_project_count",
value: "拟建",
status: false,
},
{
key: "important_project_count",
value: "重点项目",
status: false,
},
{
key: "invite_tender_last_time",
value: "招标时间",
status: false,
},
],
companyId: '',
companyName: '',
cancelIndex: '',
customerId: '',
dialogVisible: false,
dialogVisible1: false,
tableData: [],
total: 0,
pageNum: 1,
pageSize: 20
};
},
computed: {
},
created() {
this.init();
},
beforeDestroy() {
const dom = document.querySelector(".owner-table-list-header");
if (dom) {
dom.removeEventListener("mouseover", this.headerMouseover, false);
}
},
methods: {
// 排序
sortChange({ column, prop, order }) {
const originArray = JSON.parse(JSON.stringify(this.tableData));
this.tableData = originArray.sort((a, b) => {
let preposition = a[prop];
let postposition = b[prop];
// 时间则转换为时间戳排序
if (prop == "inviteTenderLastTime") {
preposition ? preposition = dayjs(preposition).valueOf() : 0;
postposition ? postposition = dayjs(postposition).valueOf() : 0;
}
if (order == "ascending") {
return (parseFloat(preposition) ? parseFloat(preposition) : 0) - (parseFloat(postposition) ? parseFloat(postposition) : 0);
}
if (order == "descending") {
return (parseFloat(postposition) ? parseFloat(postposition) : 0) - (parseFloat(preposition) ? parseFloat(preposition) : 0);
}
return (parseFloat(b["inviteTenderSumAmount"]) ? parseFloat(b["inviteTenderSumAmount"]) : 0) - (parseFloat(a["inviteTenderSumAmount"]) ? parseFloat(a["inviteTenderSumAmount"]) : 0);
});
},
async addHeaderListener() {
try {
await this.$nextTick();
// 监听table头部鼠标hover
const dom = document.querySelector(".owner-table-list-header");
if (dom) {
dom.removeEventListener("mouseover", this.headerMouseover, false);
dom.addEventListener("mouseover", this.headerMouseover, false);
}
} catch (error) {
}
},
headerMouseover(e) {
const { target } = e;
if (target.classList.contains("enterprise-name-column")) return this.showClaim = true;
this.showClaim = false;
},
setHeaderRow() {
return "owner-table-list-header";
},
setCellClass({ row, column, rowIndex, columnIndex }) {
if (columnIndex == 1) {
return "enterprise-name-column";
}
},
addColumnClass(row, column, cell, event) {
const { target } = event;
if (column.label == "公司名称") return this.showClaim = true;
this.showClaim = false;
},
// 清空输入框输入
keysClear() {
this.search();
},
// 地区选择改变
domicileChange() {
let arr = this.$refs.address.getCheckedNodes();
let provinceIds = [],
cityIds = [],
areaIds = [];
this.domicile = [];
for (var i in arr) {
if (arr[i].parent) {
if (!arr[i].parent.checked) {
arr[i].hasChildren && cityIds.push(arr[i].value);
arr[i].hasChildren && this.domicile.push(arr[i].label);
!arr[i].hasChildren && areaIds.push(arr[i].value);
!arr[i].hasChildren && this.domicile.push(arr[i].label);
}
} else {
provinceIds.push(arr[i].value);
this.domicile.push(arr[i].label);
}
}
var obj = JSON.parse(JSON.stringify(this.jskBidQueryDto));
obj.provinceIds = provinceIds;
obj.cityIds = cityIds;
obj.areaIds = areaIds;
this.jskBidQueryDto = obj;
this.search();
},
addressListfn() {
var str = [];
for (let x = 0; x < 3; x++) {
for (let i = 0; i < jsk_data.length; i++) {
if (jsk_data[i].regionLevel == x + 1 && x + 1 == 1) {
str.push({
id: jsk_data[i].id,
label: jsk_data[i].regionName,
short: jsk_data[i].short,
value: jsk_data[i].parentId,
children: jsk_data[i].id == 900000 ? undefined : [],
});
} else if (jsk_data[i].regionLevel == x + 1 && x + 1 == 2 && str) {
for (let j = 0; j < str.length; j++) {
if (str[j].id == jsk_data[i].parentId) {
str[j].children.push({
id: jsk_data[i].id,
label: jsk_data[i].regionName,
short: jsk_data[i].short,
value: jsk_data[i].parentId,
children: [],
});
}
}
} else if (jsk_data[i].regionLevel == x + 1 && x + 1 == 3) {
for (let j = 0; j < str.length; j++) {
if (str[j].children) {
for (let k = 0; k < str[j].children.length; k++) {
if (str[j].children[k].id == jsk_data[i].parentId) {
str[j].children[k].children.push({
id: jsk_data[i].id,
label: jsk_data[i].regionName,
short: jsk_data[i].short,
value: jsk_data[i].parentId,
});
}
}
}
}
}
}
}
this.addressList = str;
},
reset() {
Object.assign(this.$data, this.$options.data.call(this)); //重置data
this.init();
},
init() {
this.getDicts("owner_labels").then(res => {
if (res.code == 200) {
const result = res.data;
this.ownerLabels = result;
}
}).finally(() => {
this.search();
this.addressListfn();
});
},
// 业主标签全选中
allOwnerLabelBtn(val) {
this.currentOwnerLabels = [];
this.checkOwnerLabel = true;
this.search();
},
// 业主标签选中变化
OwnerLabelChange(val) {
if (val.length > 0) {
this.checkOwnerLabel = false;
} else if (val.length == 0) {
this.checkOwnerLabel = true;
this.currentOwnerLabels = [this.ownerLabels[0].dictValue];
}
if (val.length >= 2) {
this.tagCodeQueryType = "or";
}
this.search();
},
// 关系单选变化
tagRadioChange(value) {
this.search();
},
handsequencingList(index) {
this.fieldshow = false;
this.sort = this.fieldOptions[index].key;
for (let i = 0; i < this.fieldOptions.length; i++) {
this.fieldOptions[i].status = false;
}
this.fieldText = this.fieldOptions[index].value;
this.fieldOptions[index].status = true;
this.search();
},
handleCurrentChange(pageNum) {
this.pageNum = pageNum;
this.search(pageNum, this.pageSize);
},
handleSizeChange(pageSize) {
this.pageSize = pageSize;
this.search(this.pageNum, pageSize);
},
reloadPage() {
this.pageFlag = false;
this.$nextTick(() => {
this.pageFlag = true;
});
},
async handleHistoryClaim() {
let res = await api.historyClaim(this.companyName);
if (res.code == 200) {
this.dialogVisible2 = false;
this.search();
} else {
this.$message.error(res.msg);
}
},
claimbtn(item) {
if (item.claimStatus == 1) {
return this.dialogVisible2 = true;
}
this.companyId = item.id;
let info = {};
api.infoHeader({ companyId: this.companyId }).then(res => {
info = res.data;
let params = {
companyId: item.id,
companyName: item.name.replace(/<font color='red'>/g, '').replace(/<\/font>/g, ''),
creditLevel: info.bratingSubjectLevel,
legalPerson: info.corporatePerson,
registerCapital: info.registeredCapital,
provinceId: info.provinceId,
cityId: info.cityId,
districtId: info.districtCode,
registerAddress: info.provinceName + '-' + info.cityName + '-' + info.districtName,
creditCode: info.creditCode,
};
info.uipId ? params["uipId"] = info.uipId : null;
api.claim(params).then(res1 => {
if (res1.code == 200) {
this.dialogVisible = true;
this.customerId = res1.data.customerId;
}
}).catch(error => {
});
}).catch(error => {
});
},
cancelClaim(companyName, index) {
this.dialogVisible1 = true;
this.companyName = companyName;
this.cancelIndex = index;
},
confirm() {
api.cancelClaim(this.companyName).then(res => {
if (res.code == 200) {
this.dialogVisible1 = false;
this.tableData[this.cancelIndex].claimStatus = 0;
} else {
this.$message.error(res.msg);
}
});
},
claimopen(companyId, customerId) {
this.$router.push({
path: '/enterprise/' + encodeStr(companyId),
query: {
'customerId': customerId,
'path': 'business'
},
});
this.dialogVisible = false;
this.search();
},
search(pageNum, pageSize, exportFlag) {
this.dialogVisible = false;
if (!pageNum) {
this.pageNum = 1;
}
if (!pageSize) {
this.pageSize = 20;
}
if (!pageNum && !pageSize) {
this.reloadPage();
}
// 默认传递参数
let params = {
aptitudeQueryDto: {
},
page: {
page: this.pageNum,
limit: this.pageSize,
order: "desc",
field: this.sort
}
};
var data = JSON.parse(JSON.stringify(this.jskBidQueryDto));
// 搜索关键词处理
if (this.keys) {
params.aptitudeQueryDto['ename'] = this.keys.split(' ');
}
// 处理地区选择
if (data.provinceIds.length > 0) {
params.aptitudeQueryDto['province'] = data.provinceIds.join(",");
}
if (data.cityIds.length > 0) {
params.aptitudeQueryDto['city'] = data.cityIds.join(",");
}
if (data.areaIds.length > 0) {
params.aptitudeQueryDto['county'] = data.areaIds.join(",");
}
// 业主标签选中处理
if (this.ownerLabels.length > 0) {
params.aptitudeQueryDto["tagCode"] = this.currentOwnerLabels.join(",");
}
// 选中大于等于两个业主标签 添加 任意均可 或 同时具备条件
if (this.currentOwnerLabels.length >= 2) {
params.aptitudeQueryDto["tagCodeQueryType"] = this.tagCodeQueryType;
}
this.isSkeleton = true;
api.searchOwnerUnitListApi(params).then(res => {
if (res.code == 200) {
this.isSkeleton = false;
this.tableData = res.data?.list ? res.data.list : [];
this.total = res.data?.total ? res.data?.total : 0;
this.addHeaderListener();
}
}).catch(error => {
});
},
renlin() {
this.dialogVisible = false;
// this.$router.push({path:'/home',query: {id:'1'}})
// 跳转地址
},
},
};
</script>
<style lang="scss" scoped>
.search-the-owner {
width: 100%;
height: 100%;
padding: 16px 24px;
box-sizing: border-box;
.content-outer-container {
overflow: hidden;
background: #ffffff;
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
.content {
background: unset;
margin-bottom: 26px;
.content_item {
margin-top: 16px;
padding: 0px;
.label {
width: auto;
min-width: 56px;
margin-right: 32px;
}
::v-deep .content_right {
width: calc(100% - 148px);
.el-checkbox-group {
.el-checkbox {
.el-checkbox__label {
color: #333333;
}
&.is-checked {
.el-checkbox__label {
color: #0081ff;
}
}
}
}
}
::v-deep .multiple-owner-label {
line-height: 22px;
margin-top: 16px;
display: flex;
align-items: center;
.multiple-tip-box {
display: flex;
align-items: center;
& > span {
color: rgba(35, 35, 35, 0.8);
font-size: 14px;
margin-right: 9px;
}
.multiple-tip-icon {
display: flex;
align-items: center;
& > i {
color: #a7a7a7;
font-size: 14px;
cursor: pointer;
}
}
}
.el-radio-group {
display: flex;
align-items: center;
margin-left: 17px;
.el-radio {
margin-right: 24px;
line-height: 22px;
.el-radio__input {
.el-radio__inner::after {
width: 6px;
height: 6px;
}
}
.el-radio__label {
font-size: 14px;
color: #333333;
}
&.is-checked {
.el-radio__label {
color: #0081ff;
}
}
}
}
}
}
}
}
::v-deep .ename_input {
.el-input-group__append {
box-sizing: border-box;
.btn-search {
width: 60px;
}
}
}
}
::v-deep .dialog-renlin {
margin-top: 40vh !important;
.el-dialog__body {
padding: 0;
text-align: center;
padding-bottom: 24px;
}
.el-dialog__footer {
padding: 0px;
padding-bottom: 24px;
.dialog-footer {
display: inline-flex;
align-items: center;
justify-content: center;
width: 100%;
.dialog-footer-btn1 {
cursor: pointer;
width: 72px;
height: 28px;
background: #0081ff;
border-radius: 2px 2px 2px 2px;
font-size: 12px;
font-weight: 400;
color: #ffffff;
line-height: 28px;
text-align: center;
margin-right: 8px;
&:hover {
background: #006ad1;
}
}
.dialog-footer-btn2 {
cursor: pointer;
width: 72px;
height: 28px;
border-radius: 2px 2px 2px 2px;
border: 1px solid #cccccc;
line-height: 28px;
text-align: center;
font-size: 12px;
font-weight: 400;
color: rgba(35, 35, 35, 0.8);
&:hover {
background: #f3f4f5;
}
}
}
}
}
.content {
padding: 0px 16px;
border-radius: 4px 4px 4px 4px;
background: #ffffff;
.content_item {
padding-top: 20px;
display: -webkit-box;
align-items: flex-start;
.label {
width: 84px;
font-size: 14px;
font-weight: 400;
color: rgba(35, 35, 35, 0.8);
margin-right: 28px;
}
.content_right {
width: calc(100% - 112px);
.ename_input {
width: 400px;
}
}
.item_ckquery_list {
display: flex;
align-items: center;
.qualifications-tab {
margin-right: 4px;
border: 1px solid #e0e0e0;
padding: 2px 3px;
border-radius: 2px;
height: 34px;
margin-top: 1px;
span {
background: #fff;
display: inline-block;
cursor: pointer;
float: left;
border-radius: 2px;
padding: 3px 8px;
margin-top: 0.5px;
}
.action {
color: #ffffff;
background: #0081ff;
}
}
.ckquery_list_right {
width: 670px;
}
}
.item_ckquery_list .el-input__icon {
position: relative;
top: 1px;
}
.ckquery_list_right {
width: 640px;
}
.register_count_ipt {
margin-left: 0px;
}
.register_count_ipt .el-input__inner {
width: 174px;
}
::v-deep .el-input-group__prepend {
padding: 0 8px;
}
.content-projecttype {
display: flex;
align-items: center;
justify-content: center;
.projecttype {
font-weight: 400;
color: #232323;
padding: 1px 5px;
margin-right: 4px;
cursor: pointer;
border-radius: 3px 3px 3px 3px;
font-size: 14px;
}
.projecttype:first-child {
padding-left: 0px;
}
.projecttype:hover {
background: #f3f4f5;
padding: 1px 5px;
}
.activetype {
background: #f3f4f5;
padding: 1px 5px !important;
}
}
}
.content_item1 {
.checkbox-content {
display: block;
.el-checkbox {
margin-bottom: 20px;
}
}
}
.content_item_padding0 {
padding: 0;
}
}
.bottomlist {
width: 100%;
background-color: #ffffff;
border-radius: 4px 4px 4px 4px;
.bottomlist-title {
display: flex;
justify-content: space-between;
align-items: center;
margin-top: 12px;
padding: 16px;
.title-right {
display: flex;
align-items: center;
p:last-child {
display: flex;
align-items: center;
font-size: 14px;
font-weight: 400;
color: rgba(35, 35, 35, 0.8);
}
img {
width: 18px;
height: 18px;
}
.excel {
cursor: pointer;
}
}
}
.bottomlist-title-left {
display: inline-flex;
align-items: center;
.title-left {
height: 16px;
line-height: 16px;
font-size: 12px;
font-weight: 400;
color: #3d3d3d;
}
.sort-mode {
color: rgba(35, 35, 35, 0.8);
&:hover {
color: #232323;
}
}
}
.bottomlist-content {
padding-bottom: 0px;
}
::v-deep .table-item-jf {
.el-table {
th,
td {
.cell {
font-size: 12px;
}
}
.el-table__fixed {
.el-table__fixed-header-wrapper {
pointer-events: none;
}
}
}
padding: 0px 16px;
.list-titel-a {
color: #0081ff;
}
::v-deep .el-table--border .el-table__cell:first-child .cell {
padding: 0px 8px;
padding-left: 12px;
font-size: 12px;
font-weight: 400;
}
::v-deep .el-table th.el-table__cell > .cell {
padding: 0px 8px;
padding-left: 12px;
font-size: 12px;
font-weight: 400;
}
::v-deep .el-table th.el-table__cell.is-leaf,
::v-deep .el-table td.el-table__cell {
border-bottom: 1px solid #e6eaf1;
}
::v-deep .el-table--border .el-table__cell {
border-right: 1px solid #e6eaf1;
}
::v-deep.el-table__fixed::before {
height: 0;
}
.renling {
display: flex;
align-items: center;
.list-titel-a {
width: 264px;
margin-right: 12px;
}
.renling-btn {
display: flex;
align-items: center;
cursor: pointer;
opacity: 0;
transition: opacity 0.3s;
white-space: nowrap;
.renling-img-true {
width: 16px;
height: 16px;
margin-right: 8px;
background-image: url("../../../../assets/images/owner/renling1.png");
background-size: 100% 100%;
background-repeat: no-repeat;
}
.renling-img-false {
width: 16px;
height: 16px;
margin-right: 8px;
background-image: url("../../../../assets/images/owner/renling2.png");
background-size: 100% 100%;
background-repeat: no-repeat;
}
.renling-hui {
font-size: 13px;
font-weight: 400;
color: rgba(35, 35, 35, 0.4);
}
.renling-hei {
font-size: 13px;
font-weight: 400;
color: #3d3d3d;
}
}
.high-quality-enterprise {
padding: 0px 8px;
line-height: 22px;
box-sizing: border-box;
background: #ebf1ff;
border-radius: 2px;
color: #2a6aff;
font-size: 12px;
margin-right: 25px;
white-space: nowrap;
}
&.show-claim {
.renling-btn {
opacity: 1;
}
}
}
}
.table-item1 {
::v-deep .el-table__body-wrapper {
color: #232323;
}
}
.fixed-table {
overflow: initial;
::v-deep .el-table__header-wrapper {
position: sticky;
top: 56px;
z-index: 9;
}
::v-deep .el-table__fixed-header-wrapper {
position: sticky;
z-index: 9;
top: 56px;
}
::v-deep .el-table__fixed {
overflow-x: clip;
overflow-y: clip;
}
}
.table-item-jf1 {
border-top: 1px solid #efefef;
}
.pagination {
padding: 14px;
.el-pagination {
float: right;
}
}
}
</style>
<style lang="scss">
.multiple-tip-el-tooltip {
.multiple-tip-content {
display: flex;
flex-direction: column;
line-height: 22px;
& > span {
font-size: 14px;
&:first-of-type {
margin-bottom: 8px;
}
}
}
&.el-tooltip__popper.is-dark {
padding: 8px 12px;
box-sizing: border-box;
background: rgba(0, 0, 0, 0.6);
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.3);
.popper__arrow {
border-top-color: rgba(0, 0, 0, 0.3);
&::after {
border-top-color: rgba(0, 0, 0, 0.3);
}
}
}
}
</style>
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