Commit ee1ca657 authored by danfuman's avatar danfuman

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

parents 7047a3b4 a17e00d5
package com.dsk.common.utils;
import java.math.BigDecimal;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
......@@ -51,7 +52,8 @@ public class CheckUtils {
* @return
*/
public static int checkIntegerPlaces(Double number) {
String strNumber = Double.toString(Math.abs(number));
BigDecimal bigDecimal = new BigDecimal(number);
String strNumber = bigDecimal.toString();
int integerPlaces = strNumber.indexOf('.');
if (integerPlaces == -1) {
return strNumber.length();
......@@ -66,7 +68,8 @@ public class CheckUtils {
* @return
*/
public static int checkDecimalPlaces(Double number) {
String strNumber = Double.toString(Math.abs(number));
BigDecimal bigDecimal = new BigDecimal(number);
String strNumber = bigDecimal.toString();
int decimalPlaces = 0;
int index = strNumber.indexOf('.');
if (index != -1) {
......
......@@ -394,8 +394,11 @@ ul, li {
}
}
}
}
.el-table__body tr.hover-row > td.el-table__cell{
background-color: #DCEBFF;
}
.common-title{
border-left: 2px solid #445781;
padding-left: 8px;
......
......@@ -1008,7 +1008,7 @@
position: fixed;
top: 0;
left: 0;
z-index: 3;
z-index: 10;
.upload{
width: 528px;
height: 430px;
......
......@@ -155,7 +155,7 @@ export const constantRoutes = [
path: '/biddetail/:id(\\d+)',
component: () => import('@/views/detail//biddetail/index'),
name: 'Biddetail',
meta: { title: '中标业绩详情'}
meta: { title: '中标业绩详情',icon: 'enterprise'}
}
]
},
......
......@@ -35,7 +35,7 @@
</span>
<label class="label">中标时间</label>
<span>{{info.winBidTime||"--"}}</span>
<label class="label">中标金额(万)</label>
<label class="label">中标金额</label>
<span>{{info.winBidAmount||"--"}}</span>
</p>
<p>
......@@ -49,7 +49,7 @@
<p>
<label class="label">工期(天)</label>
<span>{{info.period||"--"}}</span>
<label class="label">下浮率</label>
<label class="label">下浮率(%)</label>
<span>{{info.lowerRate||"--"}}</span>
<label class="label">建设性质</label>
<span>{{info.projectNature||"--"}}</span>
......
......@@ -3,7 +3,7 @@
<div class="content">
<div class="content_item">
<div class="content_right item_ckquery_list">
<el-input class="ename_input" placeholder="请输入企业名称关键字" v-model="keys" >
<el-input class="ename_input" placeholder="请输入企业名称关键字" clearable v-model="keys" >
<div slot="append" class="btn-search" @click="search()">搜索</div>
</el-input>
......@@ -137,13 +137,15 @@
</div>
</div>
<div class="table-item-jf table-item-jf1" v-if="tableData.length==0">
<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>
<div class=" table-item-jf" v-if="tableData.length>0">
<el-table :data="tableData" v-loading="loading" :header-cell-style="{ background:'#f0f3fa',color: 'rgba(35,35,35,0.8)'}" element-loading-text="Loading" class="table-item1 fixed-table" border highlight-current-row>
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton>
<div class=" table-item-jf" v-if="!isSkeleton&&tableData.length>0">
<el-table :data="tableData" :header-cell-style="{ background:'#f0f3fa',color: 'rgba(35,35,35,0.8)'}" class="table-item1 fixed-table" border highlight-current-row>
<el-table-column type="index" label="序号" fixed width="60">
<template slot-scope="scope">
<span>{{(pageNum - 1) *20 + scope.$index + 1}}</span>
......@@ -484,12 +486,15 @@
<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';
export default {
name: 'Owner',
components:{skeleton},
data() {
return {
encodeStr,
encodeStr,
isSkeleton:true,
keys:'',
addressList: [],
addressType: [],
......@@ -498,10 +503,7 @@ export default {
expandTrigger: "hover",
value: "id",
},
loading:false,
pageSize: 20,
jskBidQueryDto: {
provinceIds: [],
cityIds: [],
......@@ -918,9 +920,9 @@ export default {
}else{
delete params.equityRelationship
}
this.loading = true;
this.isSkeleton = true;
api.uipSerach(params).then(res=>{
this.loading = false;
this.isSkeleton = false
// console.log(res)
if (res.code==200) {
this.tableData=res.rows;
......@@ -928,7 +930,6 @@ export default {
}
}).catch(error=>{
this.loading = false;
});
},
......
......@@ -4,7 +4,7 @@
<div class="content">
<div class="content_item content_item_padding0">
<div class="content_right item_ckquery_list">
<el-input class="ename_input" placeholder="请输入关键字,如企业名称、统一社会信用代码等" v-model="ename" @input="projectNamebtn('ename',ename,'关键字:')">
<el-input class="ename_input" clearable placeholder="请输入关键字,如企业名称、统一社会信用代码等" v-model="ename" @input="projectNamebtn('ename',ename,'关键字:')">
<div slot="append" class="btn-search" @click="search()">搜索</div>
</el-input>
<!-- <template v-if="ename">
......@@ -454,12 +454,13 @@
</div>
</div>
<div class="table-item-jf1" v-if="tableData.length==0">
<div class="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>
<ul class="bottomlist-content" v-if="tableData.length>0">
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton>
<ul class="bottomlist-content" v-if="!isSkeleton&&tableData.length>0">
<li class="info-list" v-for="(item,index) in tableData" :key="index">
<div class="info-list-left">
<img v-if="item.logoUrl" :src="item.logoUrl" :alt="item.name.replace(/<font color='#FF204E'>/g,'').replace(/<\/font>/g,'')" />
......@@ -584,8 +585,10 @@
import options from '@/assets/json/options.json';
import api from '@/api/enterpriseData/enterpriseData.js';
import {encodeStr} from "@/assets/js/common.js"
import skeleton from '@/views/project/projectList/component/skeleton'
export default {
name: 'EnterpriseQuery',
components:{skeleton},
directives: {
numberOnly: {
bind: function(el) {
......@@ -605,6 +608,7 @@
return {
encodeStr,
ename: '',
isSkeleton:true,
enameQueryTypeList: [{
key: 'and',
status: false,
......@@ -2752,7 +2756,9 @@
data.aptitudeQueryDto['aptitudeDtoList'] = aptitudeDtoList;
data.aptitudeQueryDto['aptitudeSource'] = 'new';
}
this.isSkeleton = true;
api.enterprisePage(data).then(res=>{
this.isSkeleton = false
if (res.code==200) {
this.tableData=res.data.list;
this.total=res.data.total;
......
......@@ -225,7 +225,7 @@ export default {
img{
width: 28px;
height: 28px;
margin-bottom: -9px;
// margin-bottom: -9px;
margin-right: 17px;
}
}
......
......@@ -12,12 +12,12 @@
</div>
<el-form class="popform j" :model="queryParam" :rules="rules" ref="ruleForm" label-width="130px">
<el-form-item label="项目名称:" class="row" prop="projectName">
<el-input type="text" placeholder="请输入" v-model="queryParam.projectName" @input="getProject"></el-input>
<el-input type="text" placeholder="请输入" v-model="queryParam.projectName" @input="getProject" :οnkeyup="queryParam.projectName=queryParam.projectName.replace(/^\s+|\s+$/g,'')"></el-input>
<div class="resultlist" v-if="proList.length>0" id="box1">
<div v-for="(item,index) in proList" @click="selProject(item)"><span v-html="item.projectName"></span></div>
</div>
</el-form-item>
<el-form-item label="业主单位:" class="row" prop="ownerCompany">
<el-form-item label="招采单位:" class="row" prop="ownerCompany">
<el-input type="text" placeholder="请输入" v-model="queryParam.ownerCompany" @input="getCompany" :οnkeyup="queryParam.ownerCompany=queryParam.ownerCompany.replace(/^\s+|\s+$/g,'')"></el-input>
<div class="resultlist" v-if="showlist" id="box">
<div v-for="(item,index) in companData" @click="selCompany(item)"><span v-html="item.name"></span></div>
......@@ -78,7 +78,7 @@
userId:'',//用户id
projectName:'',// 项目名称
companyId:'',//企业id
ownerCompany:'',//业主单位
ownerCompany:'',//招采单位
projectStage:null,//项目阶段
projectType:null,//项目类型
projectCategory:null,//项目类别
......@@ -205,7 +205,7 @@
this.queryParam = {
projectName:'',// 项目名称
companyId:'',//企业id
ownerCompany:'',//业主单位
ownerCompany:'',//招采单位
projectStage:null,//项目阶段
projectType:null,//项目类型
projectCategory:null,//项目类别
......
......@@ -61,11 +61,11 @@
</template>
</el-table-column>
<el-table-column
prop="responsiblePerson"
prop="phone"
label="负责人联系方式"
width="">
<template slot-scope="scope">
{{scope.row.responsiblePerson || '--'}}
{{scope.row.phone || '--'}}
</template>
</el-table-column>
<el-table-column
......
......@@ -87,7 +87,10 @@
</p>
<p>
<label class="label">项目联系方式</label>
<span>{{textList.personTel||'--'}}</span>
<span v-if="textList.personTel && textList.personTel.length>0">
<template v-for="item in JSON.parse(textList.personTel)">{{ item.tel }} </template>
</span>
<span v-else>--</span>
<label class="label">行业分类</label>
<span>{{textList.projectIndustry||'--'}}</span>
</p>
......
......@@ -119,7 +119,11 @@
</div>
<div class="bottomlist">
<div class="bottomlist-title">
<div></div>
<div class="bottomlist-title-left" >
<p class="title-left">
查询结果
</p>
</div>
<div class="title-right">
<p>共有{{total}}</p>
<p>
......@@ -129,12 +133,13 @@
</div>
</div>
<div class="table-item-jf1" v-if="tableData.length==0">
<div class="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>
<ul class="bottomlist-content" v-if="tableData.length>0">
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton>
<ul class="bottomlist-content" v-if="tableData.length>0&& !isSkeleton">
<li class="bottomlist-list" v-for="item in tableData">
<p class="list-titel">
<router-link :to="'/radar/BidRecord/details/'+ item.id" tag="a" class="list-titel-a" v-html="item.projectName"></router-link>
......@@ -184,11 +189,14 @@
<script>
import jsk_data from '../../../../../public/jsk.json';
import {encodeStr} from "@/assets/js/common.js"
import skeleton from '@/views/project/projectList/component/skeleton'
import api from '@/api/radar/radar.js';
export default {
name: 'BidRecord',
components:{skeleton},
data() {
return {
isSkeleton:true,
addressList: [],
addressType: [],
props: {
......@@ -434,7 +442,9 @@ export default {
}else{
delete params.keywordNot
}
this.isSkeleton = true;
api.jskBidTenderPage(params).then(res=>{
this.isSkeleton = false;
if (res.code==200) {
this.tableData=res.data.list;
this.total=res.data.total;
......@@ -970,7 +980,20 @@ export default {
cursor: pointer;
}
}
.bottomlist-title-left{
display: inline-flex;;
align-items: center;
.title-left{
border-left:2px solid #445781;
padding-left:8px;
padding-right:32px;
font-size: 16px;
height:16px;
line-height: 16px;
font-weight: bold;
color: #232323;
}
}
}
.bottomlist-content{
......
......@@ -204,7 +204,11 @@
</div>
<div class="bottomlist">
<div class="bottomlist-title">
<div></div>
<div class="bottomlist-title-left" >
<p class="title-left">
查询结果
</p>
</div>
<div class="title-right">
<p>共有{{total}}</p>
<p>
......@@ -214,12 +218,13 @@
</div>
</div>
<div class="table-item-jf1" v-if="tableData.length==0">
<div class="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>
<ul class="bottomlist-content" v-if="tableData.length>0">
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton>
<ul class="bottomlist-content" v-if="tableData.length>0&& !isSkeleton">
<li class="bottomlist-list" v-for="item in tableData">
<p class="list-titel">
<router-link :to="'/radar/Bidding/details/'+ item.id" tag="a" class="list-titel-a" v-html="item.projectName" ></router-link>
......@@ -306,12 +311,15 @@
<script>
import jsk_data from '../../../../../public/jsk.json';
import {encodeStr} from "@/assets/js/common.js"
import skeleton from '@/views/project/projectList/component/skeleton'
import api from '@/api/radar/radar.js';
export default {
name: 'Bidding',
components:{skeleton},
data() {
return {
encodeStr,
isSkeleton:true,
IssueTimeOptions: [
{
label: "不限",
......@@ -590,7 +598,9 @@ export default {
}else{
delete params.keywordNot
}
this.isSkeleton = true;
api.jskBidPlanPage(params).then(res=>{
this.isSkeleton = false;
if (res.code==200) {
this.tableData=res.data.list;
this.total=res.data.total;
......@@ -1151,7 +1161,20 @@ export default {
margin-top: 12px;
padding: 16px ;
border-bottom: 1px solid #EFEFEF;
.bottomlist-title-left{
display: inline-flex;;
align-items: center;
.title-left{
border-left:2px solid #445781;
padding-left:8px;
padding-right:32px;
font-size: 16px;
height:16px;
line-height: 16px;
font-weight: bold;
color: #232323;
}
}
.title-right{
display: flex;
align-items: center;
......
......@@ -175,7 +175,11 @@
</div>
<div class="bottomlist">
<div class="bottomlist-title">
<div></div>
<div class="bottomlist-title-left" >
<p class="title-left">
查询结果
</p>
</div>
<div class="title-right">
<p>共有{{total}}</p>
<p>
......@@ -185,12 +189,13 @@
</div>
</div>
<div class="table-item-jf1" v-if="tableData.length==0">
<div class="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>
<ul class="bottomlist-content" v-if="tableData.length>0">
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton>
<ul class="bottomlist-content" v-if="tableData.length>0&& !isSkeleton">
<li class="bottomlist-list" v-for="item in tableData">
<p class="list-titel">
<router-link :to="'/radar/Establishment/details/'+ item.id" tag="a" class="list-titel-a" v-html="item.projectName" ></router-link>
......@@ -269,14 +274,15 @@
<script>
import jsk_data from '../../../../../public/jsk.json';
import {encodeStr} from "@/assets/js/common.js"
import skeleton from '@/views/project/projectList/component/skeleton'
import api from '@/api/radar/radar.js';
export default {
name: 'Establishment',
components: {
},
components:{skeleton},
data() {
return {
encodeStr,
isSkeleton:true,
//是否为向民间推介项目
isProjectOptions: [{
value: 0,
......@@ -625,8 +631,9 @@
},
establishmentDto: data,
};
this.isSkeleton = true;
api.establishmentPage(params).then(res=>{
this.isSkeleton = false;
if (res.code==200) {
this.tableData=res.data.list;
this.total=res.data.total;
......@@ -1264,7 +1271,20 @@
cursor: pointer;
}
}
.bottomlist-title-left{
display: inline-flex;;
align-items: center;
.title-left{
border-left:2px solid #445781;
padding-left:8px;
padding-right:32px;
font-size: 16px;
height:16px;
line-height: 16px;
font-weight: bold;
color: #232323;
}
}
}
.bottomlist-content{
......
......@@ -202,19 +202,24 @@
<div class="bottomlist">
<div class="bottomlist-title">
<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" >
{{fieldText}}<i class="el-icon-arrow-down"
:style="{transform:fieldshow?'rotate(180deg)':''}"></i>
</span>
</el-popover>
<div class="bottomlist-title-left" >
<p class="title-left">
查询结果
</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" >
{{fieldText}}<i class="el-icon-arrow-down"
:style="{transform:fieldshow?'rotate(180deg)':''}"></i>
</span>
</el-popover>
</div>
<div class="title-right">
<p>共有{{total}}</p>
<p>
......@@ -224,13 +229,13 @@
</div>
</div>
<div class="table-item-jf1" v-if="tableData.length==0">
<div class="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>
<ul class="bottomlist-content" v-if="tableData.length>0">
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton>
<ul class="bottomlist-content" v-if="tableData.length>0&& !isSkeleton">
<li class="bottomlist-list" v-for="item in tableData">
<p class="list-titel">
<router-link :to="'/radar/Land/details/'+ item.id" tag="a" class="list-titel-a" v-html="item.projectName"></router-link>
......@@ -312,13 +317,16 @@
<script>
import {encodeStr} from "@/assets/js/common.js"
import skeleton from '@/views/project/projectList/component/skeleton'
import api from '@/api/radar/radar.js';
import jsk_data from '../../../../../public/jsk.json';
export default {
name: 'Land',
components:{skeleton},
data() {
return {
encodeStr,
isSkeleton:true,
conditionTitles: {
keyword: "关键词:",
landAddr: "土地坐落:",
......@@ -612,7 +620,9 @@
},
landMarketDto: data,
};
this.isSkeleton = true;
api.landMarketPage(params).then(res=>{
this.isSkeleton = false;
if (res.code==200) {
this.tableData=res.data.list;
this.total=res.data.total;
......@@ -1041,7 +1051,20 @@
margin-top: 12px;
padding: 16px ;
border-bottom: 1px solid #EFEFEF;
.bottomlist-title-left{
display: inline-flex;;
align-items: center;
.title-left{
border-left:2px solid #445781;
padding-left:8px;
padding-right:32px;
font-size: 16px;
height:16px;
line-height: 16px;
font-weight: bold;
color: #232323;
}
}
.title-right{
display: flex;
align-items: center;
......
......@@ -177,19 +177,26 @@
</div>
<div class="bottomlist">
<div class="bottomlist-title">
<p>共有{{total}}</p>
<p>
<img src="@/assets/images/EXCEL.png" alt="">
<span class="excel" @click="$message({message: '功能正在开发中',type: 'warning'})">导出EXCEL</span>
</p>
<div class="bottomlist-title-left" >
<p class="title-left">
查询结果
</p>
</div>
<div class="title-right">
<p>共有{{total}}</p>
<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-jf1" v-if="tableData.length==0">
<div class="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>
<ul class="bottomlist-content" v-if="tableData.length>0">
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton>
<ul class="bottomlist-content" v-if="tableData.length>0&& !isSkeleton">
<li class="bottomlist-list" v-for="item in tableData">
<p class="list-titel">
<router-link :to="'/radar/Tender/details/'+ item.id" tag="a" class="list-titel-a" v-html="item.projectName"></router-link>
......@@ -285,18 +292,20 @@
import Select from "./Select.vue";
import jsk_data from '../../../../../public/jsk.json';
import {encodeStr} from "@/assets/js/common.js"
import skeleton from '@/views/project/projectList/component/skeleton'
import api from '@/api/radar/radar.js';
export default {
name: 'Tender',
components: {
Select
Select,skeleton
},
data() {
return {
//有无联系方式
encodeStr,
isSkeleton:true,
phonePointType: [{
value: '',
label: '不限'
......@@ -787,8 +796,9 @@
};
params.keyword = this.keyword;
params.keywordNot = this.keywordNot;
this.isSkeleton = true;
api.jskBidPage(params).then(res=>{
this.isSkeleton = false;
if (res.code==200) {
this.tableData=res.data.list;
this.total=res.data.total;
......@@ -1232,31 +1242,48 @@
.bottomlist-title {
display: flex;
justify-content: end;
justify-content: space-between;
align-items: center;
margin-top: 12px;
padding: 24px;
padding: 16px ;
border-bottom: 1px solid #EFEFEF;
p:first-child {
font-size: 12px;
font-weight: 400;
color: #3D3D3D;
margin-right: 10px;
}
p:last-child {
font-size: 14px;
font-weight: 400;
color: rgba(35, 35, 35, 0.8);
}
img {
width: 18px;
height: 18px;
.bottomlist-title-left{
display: inline-flex;;
align-items: center;
.title-left{
border-left:2px solid #445781;
padding-left:8px;
padding-right:32px;
font-size: 16px;
height:16px;
line-height: 16px;
font-weight: bold;
color: #232323;
}
}
.excel{
cursor: pointer;
.title-right{
display: flex;
align-items: center;
p:first-child{
font-size: 12px;
font-weight: 400;
color: #3D3D3D;
margin-right: 10px;
}
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;
}
}
}
......
......@@ -331,7 +331,11 @@
</div>
<div class="bottomlist">
<div class="bottomlist-title">
<div></div>
<div class="bottomlist-title-left" >
<p class="title-left">
查询结果
</p>
</div>
<div class="title-right">
<p>共有{{total}}条</p>
<p>
......@@ -341,13 +345,13 @@
</div>
</div>
<div class="table-item-jf1" v-if="tableData.length==0">
<div class="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>
<div class="table-item" v-if="tableData.length>0">
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton>
<div class="table-item" v-if="tableData.length>0&& !isSkeleton">
<el-table :data="tableData" element-loading-text="Loading" border fit highlight-current-row>
<el-table-column label="序号" width="60">
<template slot-scope="scope">
......@@ -486,15 +490,17 @@
import jsk_data from '../../../../../public/jsk.json';
import Keyword from "@/components/Keyword";
import {encodeStr} from "@/assets/js/common.js"
import skeleton from '@/views/project/projectList/component/skeleton'
import api from '@/api/radar/radar.js';
export default {
name: "bxprozbgg",
components: {
Keyword
Keyword,skeleton
},
data(){
return{
encodeStr,
encodeStr,
isSkeleton:true,
allDownloadList:[],
province:[
{
......@@ -1635,7 +1641,9 @@
params.keyword = this.keyword;
params.keywordNot = this.keywordNot;
this.currentPage = params.page.page;
this.isSkeleton = true;
api.jskBidNewsPage(params).then(res=>{
this.isSkeleton = false;
if (res.code==200) {
this.tableData=res.data.list;
this.total=res.data.total;
......@@ -1987,7 +1995,20 @@
align-items: center;
margin-top: 12px;
padding: 16px ;
.bottomlist-title-left{
display: inline-flex;;
align-items: center;
.title-left{
border-left:2px solid #445781;
padding-left:8px;
padding-right:32px;
font-size: 16px;
height:16px;
line-height: 16px;
font-weight: bold;
color: #232323;
}
}
.title-right{
display: flex;
align-items: center;
......@@ -2030,7 +2051,6 @@
}
}
}
}
.bottomlist-content{
......
......@@ -91,20 +91,26 @@
<div class="bottomlist">
<div class="bottomlist-title">
<p>共有{{total}}条</p>
<p>
<img src="@/assets/images/EXCEL.png" alt="">
<span class="excel" @click="$message({message: '功能正在开发中',type: 'warning'})">导出EXCEL</span>
</p>
<div class="bottomlist-title-left" >
<p class="title-left">
查询结果
</p>
</div>
<div class="title-right">
<p>共有{{total}}条</p>
<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-jf1" v-if="tableData.length==0">
<div class="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>
<ul class="bottomlist-content" v-if="tableData.length>0">
<skeleton style="margin-left:16px;" v-if="isSkeleton"></skeleton>
<ul class="bottomlist-content" v-if="!isSkeleton&&tableData.length>0">
<li class="bottomlist-list" v-for="item in tableData">
<p class="list-titel">
<router-link :to="'/radar/debtProject/details/'+ item.uuid" tag="a" class="list-titel-a" v-html="item.projectName" ></router-link>
......@@ -180,13 +186,16 @@
<script>
import {encodeStr} from "@/assets/js/common.js"
import skeleton from '@/views/project/projectList/component/skeleton'
import api from '@/api/radar/radar.js';
import jsk_data from '../../../../../public/jsk.json';
export default {
name: 'debtProject',
components:{skeleton},
data() {
return {
encodeStr,
isSkeleton:true,
projectName:'',
nameTypeList: [{
key: 'like',
......@@ -250,7 +259,7 @@
this.search();
},
searchDic(){
api.searchDic().then(res=>{
api.searchDic().then(res=>{
this.specialBondProjectType=res.specialBondProjectType;
}).catch(error=>{
......@@ -490,8 +499,9 @@
if(this.projectType.length>0&&this.projectType[0]!='不限'){
params.specialBondProjectDto['projectType'] = this.projectType.join(',');
}
this.isSkeleton = true;
api.bondProjectPage(params).then(res=>{
this.isSkeleton = false;
if (res.code==200) {
this.tableData=res.data.list;
this.total=res.data.total;
......@@ -672,28 +682,48 @@
border-radius: 4px 4px 4px 4px;
.bottomlist-title{
display: flex;
justify-content: end;
justify-content: space-between;
align-items: center;
margin-top: 12px;
padding: 24px ;
padding: 16px ;
border-bottom: 1px solid #EFEFEF;
p:first-child{
font-size: 12px;
font-weight: 400;
color: #3D3D3D;
margin-right: 10px;
}
p:last-child{
font-size: 14px;
font-weight: 400;
color: rgba(35,35,35,0.8);
}
img{
width: 18px;
height: 18px;
.bottomlist-title-left{
display: inline-flex;;
align-items: center;
.title-left{
border-left:2px solid #445781;
padding-left:8px;
padding-right:32px;
font-size: 16px;
height:16px;
line-height: 16px;
font-weight: bold;
color: #232323;
}
}
.excel{
cursor: pointer;
.title-right{
display: flex;
align-items: center;
p:first-child{
font-size: 12px;
font-weight: 400;
color: #3D3D3D;
margin-right: 10px;
}
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-content{
......
......@@ -149,31 +149,34 @@ public class EnterpriseService {
return new TableDataInfo(new ArrayList<>(), 0);
}
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/enterprise/investment", BeanUtil.beanToMap(body, false, false));
Integer code = MapUtils.getInteger(map, "code", 300);
if (!code.equals(HttpStatus.OK.value())) {
throw new RuntimeException();
}
Map data = MapUtils.getMap(map, "data", null);
List<Object> list = CommonUtils.assertAsArray(MapUtils.getObject(data, "list", ""));
if (CollectionUtils.isEmpty(list)) {
return new TableDataInfo(list, 0);
}
List<Object> newList = new ArrayList<>(20);
for (Object companyObj : list) {
Map<String, Object> companyMap = CommonUtils.assertAsMap(companyObj);
String businessStatus = MapUtils.getString(companyMap, "businessStatus");
if (!"注销".equals(businessStatus)) {
newList.add(companyMap);
}
}
for (Object companyObj : list) {
Map<String, Object> companyMap = CommonUtils.assertAsMap(companyObj);
String businessStatus = MapUtils.getString(companyMap, "businessStatus");
if ("注销".equals(businessStatus)) {
newList.add(companyMap);
}
}
return new TableDataInfo(newList, MapUtils.getInteger(data, "totalCount", 0));
return dskOpenApiUtil.responsePage(map);
// Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/enterprise/investment", BeanUtil.beanToMap(body, false, false));
// Integer code = MapUtils.getInteger(map, "code", 300);
// if (!code.equals(HttpStatus.OK.value())) {
// throw new RuntimeException();
// }
// Map data = MapUtils.getMap(map, "data", null);
// List<Object> list = CommonUtils.assertAsArray(MapUtils.getObject(data, "list", ""));
// if (CollectionUtils.isEmpty(list)) {
// return new TableDataInfo(list, 0);
// }
// List<Object> newList = new ArrayList<>(20);
// for (Object companyObj : list) {
// Map<String, Object> companyMap = CommonUtils.assertAsMap(companyObj);
// String businessStatus = MapUtils.getString(companyMap, "businessStatus");
// if (!"注销".equals(businessStatus)) {
// newList.add(companyMap);
// }
// }
// for (Object companyObj : list) {
// Map<String, Object> companyMap = CommonUtils.assertAsMap(companyObj);
// String businessStatus = MapUtils.getString(companyMap, "businessStatus");
// if ("注销".equals(businessStatus)) {
// newList.add(companyMap);
// }
// }
// return new TableDataInfo(newList, MapUtils.getInteger(data, "totalCount", 0));
}
public TableDataInfo affiliates(EnterpriseAffiliatesBody body) throws Exception {
......@@ -256,6 +259,18 @@ public class EnterpriseService {
//按照城投企业id合并两个list
for (Object companyObj : list) {
Map<String, Object> companyMap = CommonUtils.assertAsMap(companyObj);
companyMap.put("cid", MapUtils.getString(companyMap, "companyId"));
companyMap.put("bratingSubjectLevel", null);
Map<String, Object> bondCreditRatingMap = dskOpenApiUtil.requestBody("/operate/enterprise/bondCreditRating", companyMap);
Integer codeRating = MapUtils.getInteger(bondCreditRatingMap, "code", 300);
if (codeRating.equals(HttpStatus.OK.value())) {
Object object = bondCreditRatingMap.get("data");
if (ObjectUtil.isNotEmpty(object)) {
ArrayList obj = (ArrayList)object;
Map<String, Object> bondCreditRating = (Map<String, Object>)obj.get(0);
companyMap.put("bratingSubjectLevel", bondCreditRating.get("bratingSubjectLevel"));
}
}
String uipId = MapUtils.getString(companyMap, "uipId");
companyMap.put("bondBalance",MapUtils.getDouble(companyMap, "bondBalance")==null?null:String.format("%.2f", MapUtils.getDouble(companyMap, "bondBalance")));
companyMap.put("totalAssets",MapUtils.getDouble(companyMap, "totalAssets")==null?null:String.format("%.2f", MapUtils.getDouble(companyMap, "totalAssets")));
......
......@@ -35,6 +35,7 @@ import com.dsk.system.mapper.BusinessUserMapper;
import com.dsk.system.service.IBusinessInfoService;
import com.dsk.system.service.ICustomerService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -141,7 +142,13 @@ public class BusinessInfoServiceImpl implements IBusinessInfoService {
@Override
public List<BusinessLikeProjectNameListVo> selectProjectName(BusinessListDto dto) {
return businessInfoMapper.selectProjectName(dto);
List<BusinessLikeProjectNameListVo> vos = businessInfoMapper.selectProjectName(dto);
if (!CollectionUtils.isEmpty(vos)) {
for (BusinessLikeProjectNameListVo vo : vos) {
vo.setProjectName(vo.getProjectName().replace(dto.getProjectName(), "<font color='#FF204E'>" + dto.getProjectName() + "</font>"));
}
}
return vos;
}
@Override
......
......@@ -3,10 +3,12 @@ package com.dsk.system.service.impl;
import cn.hutool.core.bean.BeanException;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.dsk.common.core.domain.R;
import com.dsk.common.exception.ServiceException;
import com.dsk.common.utils.SecurityUtils;
import com.dsk.common.utils.StringUtils;
import com.dsk.system.domain.customer.Customer;
import com.dsk.system.domain.customer.CustomerUser;
import com.dsk.system.domain.customer.dto.CustomerBusinessSearchDto;
......@@ -179,36 +181,53 @@ public class CustomerServiceImpl implements ICustomerService {
private void dealWithcustomerData(Customer customer) {
if (ObjectUtils.isEmpty(customer.getCompanyName())) throw new BeanException("企业名称不能为空");
if (ObjectUtils.isEmpty(customer.getCompanyId())) {
try {
Map<String, Object> map = opportunityRadarService.enterpriseByName(customer.getCompanyName());
if (!ObjectUtils.isEmpty(map.get("data"))) {
customer.setCompanyId(MapUtil.getInt(BeanUtil.beanToMap(map.get("data")), "jskEid"));
if (ObjectUtils.isEmpty(customer.getLegalPerson())) {
customer.setLegalPerson(MapUtil.getStr(map, "legalPerson"));
}
if (ObjectUtils.isEmpty(customer.getRegisterCapital())) {
customer.setRegisterCapital(MapUtil.getStr(map, "registeredCapitalStr"));
}
if (ObjectUtils.isEmpty(customer.getProvinceId())) {
customer.setProvinceId(MapUtil.getInt(map, "provinceId"));
}
if (ObjectUtils.isEmpty(customer.getCityId())) {
customer.setCityId(MapUtil.getInt(map, "cityId"));
}
if (ObjectUtils.isEmpty(customer.getDistrictId())) {
customer.setDistrictId(MapUtil.getInt(map, "countyId"));
}
if (ObjectUtils.isEmpty(customer.getRegisterAddress())) {
customer.setRegisterAddress(MapUtil.getStr(map, "domicile"));
}
if (ObjectUtils.isEmpty(customer.getCreditCode())) {
customer.setCreditCode(MapUtil.getStr(map, "creditCode"));
try {
Map<String, Object> map = opportunityRadarService.enterpriseByName(customer.getCompanyName());
if (!ObjectUtils.isEmpty(map.get("data"))) {
Map<String, Object> data = BeanUtil.beanToMap(map.get("data"));
Integer companyId = MapUtil.getInt(data, "jskEid");
if(ObjectUtil.isNotEmpty(customer.getCompanyId()) && !customer.getCompanyId().equals(companyId)) {
return;
}
customer.setCompanyId(companyId);
if (ObjectUtils.isEmpty(customer.getLegalPerson())) {
customer.setLegalPerson(MapUtil.getStr(data, "legalPerson"));
}
if (ObjectUtils.isEmpty(customer.getRegisterCapital())) {
customer.setRegisterCapital(MapUtil.getStr(data, "registeredCapitalStr"));
}
if (ObjectUtils.isEmpty(customer.getProvinceId())) {
customer.setProvinceId(MapUtil.getInt(data, "provinceId"));
}
if (ObjectUtils.isEmpty(customer.getCityId())) {
customer.setCityId(MapUtil.getInt(data, "cityId"));
}
if (ObjectUtils.isEmpty(customer.getDistrictId())) {
customer.setDistrictId(MapUtil.getInt(data, "countyId"));
}
if (ObjectUtils.isEmpty(customer.getRegisterAddress())) {
if(ObjectUtil.isNotEmpty(MapUtil.getStr(data, "domicile"))){
customer.setRegisterAddress(MapUtil.getStr(data, "domicile"));
}else {
String address = null;
if (ObjectUtils.isEmpty(MapUtil.getStr(data, "province"))) {
address = MapUtil.getStr(data, "province");
if (ObjectUtils.isEmpty(MapUtil.getStr(data, "city"))) {
address = address.concat("-").concat(MapUtil.getStr(data, "city"));
if (ObjectUtils.isEmpty(MapUtil.getStr(data, "county"))) {
address = address.concat("-").concat(MapUtil.getStr(data, "county"));
}
}
}
customer.setRegisterAddress(address);
}
}
} catch (Exception e) {
log.debug("获取企业id错误!error:{}", e.getMessage());
if (ObjectUtils.isEmpty(customer.getCreditCode())) {
customer.setCreditCode(MapUtil.getStr(data, "creditCode"));
}
}
} catch (Exception e) {
log.debug("获取企业id错误!error:{}", e.getMessage());
}
}
......
package com.dsk.system.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil;
import com.dsk.acc.openapi.client.util.CommonUtils;
import com.dsk.common.core.domain.AjaxResult;
import com.dsk.common.dtos.UrbanInvestmentPlatformDto;
......@@ -58,6 +59,18 @@ public class UrbanInvestmentPlatformServiceImpl implements UrbanInvestmentPlatfo
//按照城投企业id合并两个list
for (Object companyObj : list) {
Map<String, Object> companyMap = CommonUtils.assertAsMap(companyObj);
companyMap.put("bratingSubjectLevel", null);
companyMap.put("cid", MapUtils.getString(companyMap, "companyId"));
Map<String, Object> bondCreditRatingMap = dskOpenApiUtil.requestBody("/operate/enterprise/bondCreditRating", companyMap);
Integer codeRating = MapUtils.getInteger(bondCreditRatingMap, "code", 300);
if (codeRating.equals(HttpStatus.OK.value())) {
Object object = bondCreditRatingMap.get("data");
if (ObjectUtil.isNotEmpty(object)) {
ArrayList obj = (ArrayList)object;
Map<String, Object> bondCreditRating = (Map<String, Object>)obj.get(0);
companyMap.put("bratingSubjectLevel", bondCreditRating.get("bratingSubjectLevel"));
}
}
String uipId = MapUtils.getString(companyMap, "uipId");
companyMap.put("claimStatus", 0);
for (CustomerStatusListVo vo : customerStatusListVos) {
......
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