Commit 1b27f490 authored by caixingbing's avatar caixingbing
parents dac8bcd8 06cc01ac
...@@ -83,7 +83,7 @@ public class CustomerController extends BaseController { ...@@ -83,7 +83,7 @@ public class CustomerController extends BaseController {
return AjaxResult.success(baseService.add(customer)); return AjaxResult.success(baseService.add(customer));
} }
private void dealWithcustomerData(Customer customer){ private void dealWithcustomerData(Customer customer) {
if (ObjectUtils.isEmpty(customer.getCompanyName())) throw new BeanException("企业名称不能为空"); if (ObjectUtils.isEmpty(customer.getCompanyName())) throw new BeanException("企业名称不能为空");
if (ObjectUtils.isEmpty(customer.getCompanyId())) { if (ObjectUtils.isEmpty(customer.getCompanyId())) {
try { try {
...@@ -131,6 +131,7 @@ public class CustomerController extends BaseController { ...@@ -131,6 +131,7 @@ public class CustomerController extends BaseController {
public AjaxResult importData(@RequestPart("file") MultipartFile file) throws Exception { public AjaxResult importData(@RequestPart("file") MultipartFile file) throws Exception {
List<Customer> customerList = new ExcelUtil<>(Customer.class).importExcel(file.getInputStream(), 2); List<Customer> customerList = new ExcelUtil<>(Customer.class).importExcel(file.getInputStream(), 2);
List<String> resultList = new ArrayList<>(); List<String> resultList = new ArrayList<>();
int successCount = 0;
for (Customer customer : customerList) { for (Customer customer : customerList) {
if (ObjectUtils.isEmpty(customer.getCompanyName())) { if (ObjectUtils.isEmpty(customer.getCompanyName())) {
continue; continue;
...@@ -152,10 +153,13 @@ public class CustomerController extends BaseController { ...@@ -152,10 +153,13 @@ public class CustomerController extends BaseController {
customer.setCreditCode(MapUtil.getStr(obj, "creditCode")); customer.setCreditCode(MapUtil.getStr(obj, "creditCode"));
} }
baseService.add(customer); baseService.add(customer);
successCount++;
} catch (Exception e) { } catch (Exception e) {
resultList.add(customer.getCompanyName().concat(":").concat(e.getMessage())); resultList.add(customer.getCompanyName().concat(":").concat(e.getMessage()));
} }
} }
return AjaxResult.success(resultList); AjaxResult success = AjaxResult.success(resultList);
success.put("successCount", successCount);
return success;
} }
} }
...@@ -95,7 +95,7 @@ public class EnterpriseController { ...@@ -95,7 +95,7 @@ public class EnterpriseController {
@ApiOperation(value = "工商股东信息(openApi)") @ApiOperation(value = "工商股东信息(openApi)")
@PostMapping(value = "bestStockPage") @PostMapping(value = "bestStockPage")
public TableDataInfo bestStockPage(@RequestBody @Valid EnterpriseKeymembersBody vo) throws Exception { public TableDataInfo bestStockPage(@RequestBody @Valid EnterpriseBestStockPageBody vo) throws Exception {
return enterpriseService.bestStockPage(vo); return enterpriseService.bestStockPage(vo);
} }
......
...@@ -73,19 +73,19 @@ public class EnterpriseProjectController { ...@@ -73,19 +73,19 @@ public class EnterpriseProjectController {
@ApiOperation(value = "专项债项目列表") @ApiOperation(value = "专项债项目列表")
@RequestMapping(value = "/specialDebtProjectPage", method = RequestMethod.POST) @RequestMapping(value = "/specialDebtProjectPage", method = RequestMethod.POST)
public TableDataInfo specialDebtProjectPage(@RequestBody @Valid Object body) throws Exception { public TableDataInfo specialDebtProjectPage(@RequestBody @Valid EnterpriseProjectSpecialDebtProjectPageBody body) throws Exception {
return enterpriseProjectService.specialDebtProjectPage(body); return enterpriseProjectService.specialDebtProjectPage(body);
} }
@ApiOperation(value = "专项债项目详情") @ApiOperation(value = "专项债项目详情")
@RequestMapping(value = "/specialDebtProjectDetail", method = RequestMethod.POST) @RequestMapping(value = "/specialDebtProjectDetail", method = RequestMethod.POST)
public R specialDebtProjectDetail(@RequestBody @Valid Object body) throws Exception { public R specialDebtProjectDetail(@RequestBody @Valid EnterpriseProjectSpecialDebtProjectDetailBody body) throws Exception {
return enterpriseProjectService.specialDebtProjectDetail(body); return enterpriseProjectService.specialDebtProjectDetail(body);
} }
@ApiOperation(value = "专项债列表") @ApiOperation(value = "专项债列表")
@RequestMapping(value = "/specialDebtPage", method = RequestMethod.POST) @RequestMapping(value = "/specialDebtPage", method = RequestMethod.POST)
public TableDataInfo specialDebtPage(@RequestBody @Valid Object body) throws Exception { public TableDataInfo specialDebtPage(@RequestBody @Valid EnterpriseProjectSpecialDebtPageBody body) throws Exception {
return enterpriseProjectService.specialDebtPage(body); return enterpriseProjectService.specialDebtPage(body);
} }
......
...@@ -20,14 +20,14 @@ ...@@ -20,14 +20,14 @@
<!-- 日志文件名格式 --> <!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/operate-sys-info.%d{yyyy-MM-dd}.log</fileNamePattern> <fileNamePattern>${log.path}/operate-sys-info.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 --> <!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory> <maxHistory>10</maxHistory>
</rollingPolicy> </rollingPolicy>
<encoder> <encoder>
<pattern>${log.pattern}</pattern> <pattern>${log.pattern}</pattern>
</encoder> </encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter"> <filter class="ch.qos.logback.classic.filter.LevelFilter">
<!-- 过滤的级别 --> <!-- 过滤的级别 -->
<level>INFO</level> <level>DEBUG</level>
<!-- 匹配时的操作:接收(记录) --> <!-- 匹配时的操作:接收(记录) -->
<onMatch>ACCEPT</onMatch> <onMatch>ACCEPT</onMatch>
<!-- 不匹配时的操作:拒绝(不记录) --> <!-- 不匹配时的操作:拒绝(不记录) -->
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
<!-- 日志文件名格式 --> <!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/operate-sys-error.%d{yyyy-MM-dd}.log</fileNamePattern> <fileNamePattern>${log.path}/operate-sys-error.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 --> <!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory> <maxHistory>10</maxHistory>
</rollingPolicy> </rollingPolicy>
<encoder> <encoder>
<pattern>${log.pattern}</pattern> <pattern>${log.pattern}</pattern>
...@@ -64,7 +64,7 @@ ...@@ -64,7 +64,7 @@
<!-- 按天回滚 daily --> <!-- 按天回滚 daily -->
<fileNamePattern>${log.path}/operate-sys-user.%d{yyyy-MM-dd}.log</fileNamePattern> <fileNamePattern>${log.path}/operate-sys-user.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 --> <!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory> <maxHistory>10</maxHistory>
</rollingPolicy> </rollingPolicy>
<encoder> <encoder>
<pattern>${log.pattern}</pattern> <pattern>${log.pattern}</pattern>
......
...@@ -17,6 +17,8 @@ public class EnterpriseAffiliatesBody extends BasePage { ...@@ -17,6 +17,8 @@ public class EnterpriseAffiliatesBody extends BasePage {
//企业Id //企业Id
@NotNull(message = "企业id不能为空") @NotNull(message = "企业id不能为空")
private Integer cid; private Integer cid;
private Integer hasBid;
} }
...@@ -17,6 +17,9 @@ public class EnterpriseInvestmentBody extends BasePage { ...@@ -17,6 +17,9 @@ public class EnterpriseInvestmentBody extends BasePage {
//企业Id //企业Id
@NotNull(message = "企业id不能为空") @NotNull(message = "企业id不能为空")
private Integer cid; private Integer cid;
private Integer hasBid;
private double stockPercentageMin;
private double stockPercentageMax;
} }
package com.dsk.common.core.domain.model;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import javax.validation.constraints.NotNull;
@Data
@ToString
@NoArgsConstructor
@EqualsAndHashCode(callSuper = false)
public class EnterpriseProjectSpecialDebtPageBody extends BasePage {
/**
* id
*/
@NotNull(message = "id不能为空")
private String id;
}
package com.dsk.common.core.domain.model;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import javax.validation.constraints.NotNull;
@Data
@ToString
@NoArgsConstructor
@EqualsAndHashCode(callSuper = false)
public class EnterpriseProjectSpecialDebtProjectDetailBody {
/**
* id
*/
@NotNull(message = "id不能为空")
private String id;
}
package com.dsk.common.core.domain.model;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import javax.validation.constraints.NotNull;
@Data
@ToString
@NoArgsConstructor
@EqualsAndHashCode(callSuper = false)
public class EnterpriseProjectSpecialDebtProjectPageBody extends BasePage {
/**
* 企业id
*/
@NotNull(message = "企业id不能为空")
private Integer cid;
/**
* 查询关键字
*/
private String keys;
/*
* 排序字段:1总投资金额倒序,2总投资金额正序,17项目资本金倒序,18项目资本金正序,19专项债用作资本金倒序,20专项债用作资本金正序
*/
@NotNull(message = "排序条件不能为空")
private Integer sort;
}
...@@ -42,6 +42,15 @@ let uipSerach= function uipSerach(param) { ...@@ -42,6 +42,15 @@ let uipSerach= function uipSerach(param) {
data: param data: param
}) })
} }
// 认领用户
let claim= function claim(param) {
return request({
url: '/customer/claim',
method: 'post',
data: param
})
}
export default {aptitudeCode,personCert,searchDic,regionWebList,uipGroupData,uipSerach} export default {aptitudeCode,personCert,searchDic,regionWebList,uipGroupData,uipSerach,claim}
\ No newline at end of file \ No newline at end of file
...@@ -174,6 +174,31 @@ export function enterprise(param) { ...@@ -174,6 +174,31 @@ export function enterprise(param) {
}) })
} }
//城投平台-企业查询选项
export function uipGroupData() {
return request({
url: '/enterprise/uipGroupData',
method: 'POST'
})
}
//城投平台-分页列表
export function urbanInvestmentPage(param) {
return request({
url: '/urbanInvestment/page',
method: 'POST',
data: param
})
}
//城投平台-城投平台统计
export function urbanInvestmentStatistics(param) {
return request({
url: '/urbanInvestment/statistics',
method: 'POST',
data: param
})
}
......
dsk-operate-ui/src/assets/images/add.png

148 Bytes | W: | H:

dsk-operate-ui/src/assets/images/add.png

140 Bytes | W: | H:

dsk-operate-ui/src/assets/images/add.png
dsk-operate-ui/src/assets/images/add.png
dsk-operate-ui/src/assets/images/add.png
dsk-operate-ui/src/assets/images/add.png
  • 2-up
  • Swipe
  • Onion skin
dsk-operate-ui/src/assets/images/delete.png

327 Bytes | W: | H:

dsk-operate-ui/src/assets/images/delete.png

531 Bytes | W: | H:

dsk-operate-ui/src/assets/images/delete.png
dsk-operate-ui/src/assets/images/delete.png
dsk-operate-ui/src/assets/images/delete.png
dsk-operate-ui/src/assets/images/delete.png
  • 2-up
  • Swipe
  • Onion skin
dsk-operate-ui/src/assets/images/edit.png

245 Bytes | W: | H:

dsk-operate-ui/src/assets/images/edit.png

488 Bytes | W: | H:

dsk-operate-ui/src/assets/images/edit.png
dsk-operate-ui/src/assets/images/edit.png
dsk-operate-ui/src/assets/images/edit.png
dsk-operate-ui/src/assets/images/edit.png
  • 2-up
  • Swipe
  • Onion skin
dsk-operate-ui/src/assets/images/follow.png

260 Bytes | W: | H:

dsk-operate-ui/src/assets/images/follow.png

312 Bytes | W: | H:

dsk-operate-ui/src/assets/images/follow.png
dsk-operate-ui/src/assets/images/follow.png
dsk-operate-ui/src/assets/images/follow.png
dsk-operate-ui/src/assets/images/follow.png
  • 2-up
  • Swipe
  • Onion skin
...@@ -244,6 +244,7 @@ ...@@ -244,6 +244,7 @@
>img{ >img{
float: left; float: left;
margin-right: 8px; margin-right: 8px;
width: 56px;
} }
.i{ .i{
font-size: 18px; font-size: 18px;
...@@ -337,6 +338,7 @@ ...@@ -337,6 +338,7 @@
>img{ >img{
float:left; float:left;
margin: 2px 4px 0 0; margin: 2px 4px 0 0;
width: 16px;
} }
} }
.bottems{ .bottems{
...@@ -572,6 +574,16 @@ ...@@ -572,6 +574,16 @@
position: relative; position: relative;
padding-top: 25px; padding-top: 25px;
display: flex; display: flex;
.sels{
position: relative;
>img{
position: absolute;
left: 10px;
z-index: 1;
top: 8px;
width: 16px;
}
}
.el-input{ .el-input{
display: inline-block; display: inline-block;
margin-right: 12px; margin-right: 12px;
...@@ -610,6 +622,7 @@ ...@@ -610,6 +622,7 @@
position: absolute; position: absolute;
left: 8px; left: 8px;
top: 8px; top: 8px;
width: 16px;
z-index: 1; z-index: 1;
} }
.el-input{ .el-input{
...@@ -960,6 +973,7 @@ ...@@ -960,6 +973,7 @@
} }
.up_img{ .up_img{
margin: 56px auto 13px; margin: 56px auto 13px;
width: 50px;
} }
.up_text{ .up_text{
color: #666; color: #666;
......
...@@ -492,6 +492,7 @@ export default { ...@@ -492,6 +492,7 @@ export default {
.img.img1{ .img.img1{
margin-right: 2px; margin-right: 2px;
background: url('../../../../src/assets/images/project/add_2.png')no-repeat center center; background: url('../../../../src/assets/images/project/add_2.png')no-repeat center center;
background-size: 100%;
} }
.w88{ .w88{
width: 88px; width: 88px;
...@@ -528,7 +529,8 @@ export default { ...@@ -528,7 +529,8 @@ export default {
} }
>img{ >img{
float: right; float: right;
margin: 3px 0 0 4px margin: 3px 0 0 4px;
width: 14px;
} }
} }
} }
......
...@@ -43,6 +43,7 @@ ...@@ -43,6 +43,7 @@
<template v-if="form.type==4"> <template v-if="form.type==4">
<el-select <el-select
class="form-content-width" class="form-content-width"
:class="form.value.length > 1 ? 'selectTag' : ''"
v-model="form.value" v-model="form.value"
multiple multiple
collapse-tags collapse-tags
...@@ -247,6 +248,22 @@ export default { ...@@ -247,6 +248,22 @@ export default {
::v-deep .form-content-width{ ::v-deep .form-content-width{
width: 170px; width: 170px;
} }
::v-deep .selectTag{
.el-select__tags{
.el-tag{
&:first-child{
width: 90px;
}
}
}
}
::v-deep .el-select__tags{
.el-tag{
&:first-child{
width: 100%;
}
}
}
} }
.ability-total{ .ability-total{
font-size: 12px; font-size: 12px;
......
...@@ -143,12 +143,7 @@ export default { ...@@ -143,12 +143,7 @@ export default {
components: { components: {
Detail Detail
}, },
props: { props: ['customerIds'],
customerIds: {
type: String,
default: ''
}
},
data() { data() {
return { return {
ifEmpty:false, ifEmpty:false,
...@@ -522,7 +517,7 @@ export default { ...@@ -522,7 +517,7 @@ export default {
::v-deep .cooperate-detail{ ::v-deep .cooperate-detail{
.miantitle, .app-container{ .miantitle, .app-container{
margin: 12px 0; //margin: 12px 0;
} }
} }
......
...@@ -81,12 +81,7 @@ export default { ...@@ -81,12 +81,7 @@ export default {
components: { components: {
Tables Tables
}, },
props: { props: ['customerIds'],
customerIds: {
type: String,
default: ''
}
},
data() { data() {
return { return {
ifEmpty:false, ifEmpty:false,
......
...@@ -160,12 +160,7 @@ export default { ...@@ -160,12 +160,7 @@ export default {
components: { components: {
}, },
props: { props: ['customerIds'],
customerIds: {
type: String,
default: ''
}
},
data() { data() {
return { return {
autosize: { autosize: {
......
...@@ -33,12 +33,7 @@ export default { ...@@ -33,12 +33,7 @@ export default {
components: { components: {
}, },
props: { props: ['companyId'],
companyId: {
type: Number,
default: 0
}
},
data() { data() {
return { return {
queryParams: { queryParams: {
......
...@@ -35,12 +35,7 @@ export default { ...@@ -35,12 +35,7 @@ export default {
components: { components: {
}, },
props: { props: ['companyId'],
companyId: {
type: Number,
default: 0
}
},
data() { data() {
return { return {
queryParams: { queryParams: {
......
...@@ -33,12 +33,7 @@ export default { ...@@ -33,12 +33,7 @@ export default {
components: { components: {
}, },
props: { props: ['companyId'],
companyId: {
type: Number,
default: 0
}
},
data() { data() {
return { return {
queryParams: { queryParams: {
......
...@@ -32,12 +32,7 @@ export default { ...@@ -32,12 +32,7 @@ export default {
components: { components: {
}, },
props: { props: ['companyId'],
companyId: {
type: Number,
default: 0
}
},
data() { data() {
return { return {
queryParams: { queryParams: {
......
...@@ -41,12 +41,7 @@ export default { ...@@ -41,12 +41,7 @@ export default {
components: { components: {
}, },
props: { props: ['companyId'],
companyId: {
type: Number,
default: 0
}
},
data() { data() {
return { return {
queryParams: { queryParams: {
......
...@@ -41,12 +41,7 @@ export default { ...@@ -41,12 +41,7 @@ export default {
components: { components: {
}, },
props: { props: ['companyId'],
companyId: {
type: Number,
default: 0
}
},
data() { data() {
return { return {
queryParams: { queryParams: {
......
...@@ -41,12 +41,7 @@ export default { ...@@ -41,12 +41,7 @@ export default {
components: { components: {
}, },
props: { props: ['companyId'],
companyId: {
type: Number,
default: 0
}
},
data() { data() {
return { return {
queryParams: { queryParams: {
......
...@@ -37,12 +37,7 @@ export default { ...@@ -37,12 +37,7 @@ export default {
components: { components: {
}, },
props: { props: ['companyId'],
companyId: {
type: Number,
default: 0
}
},
data() { data() {
return { return {
queryParams: { queryParams: {
......
...@@ -35,16 +35,7 @@ export default { ...@@ -35,16 +35,7 @@ export default {
components: { components: {
}, },
props: { props: ['companyId','companyInfo'],
companyId: {
type: Number,
default: 0
},
companyInfo: {
type: Object,
default: {}
}
},
data() { data() {
return { return {
addressList:'', addressList:'',
......
...@@ -118,16 +118,7 @@ export default { ...@@ -118,16 +118,7 @@ export default {
components: { components: {
}, },
props: { props: ['companyId', 'companyInfo'],
companyId: {
type: Number,
default: 0
},
companyInfo: {
type: Object,
default: {}
}
},
data() { data() {
return { return {
queryParams: { queryParams: {
......
...@@ -138,257 +138,296 @@ ...@@ -138,257 +138,296 @@
</div> </div>
</div> </div>
<div class=" table-item-jf"> <div class=" table-item-jf table-item-jf1"v-if="tableData.length==0">
<div class="item-jf-text">暂无数据!</div>
</div>
<div class=" table-item-jf" v-if="tableData.length>0">
<el-table :data="tableData" :header-cell-style="{ background:'#F0F3FA'}" element-loading-text="Loading" border highlight-current-row> <el-table :data="tableData" :header-cell-style="{ background:'#F0F3FA'}" element-loading-text="Loading" border highlight-current-row>
<el-table-column label="序号" width="60"> <el-table-column type="index" label="序号" width="60">
<template slot-scope="scope"> <template slot-scope="scope">
1 <span>{{(pageNum - 1) *10 + scope.$index + 1}}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="公司名称" width="430" > <el-table-column label="公司名称" width="430" >
<template slot-scope="scope"> <template slot-scope="scope">
<router-link :to="'/radar/bxprozbgg/details/'+ 1" tag="a" class="list-titel-a" >绿色节能型压缩机基础件、汽车零配件新建项目 (芜湖旭日机械制造有限公司)</router-link> <div class="renling">
</template> <router-link :to="'/radar/bxprozbgg/details/'+ 1" tag="a" class="list-titel-a" >{{scope.row.companyName}}</router-link>
<div class="renling-btn">
<img src="@/assets/images/owner/renling1.png" alt="">
<span v-if="scope.row.claimStatus" class="renling-hui">
已认领
</span>
<span v-else class="renling-hei" @click="claimbtn(scope.row)" >
认领
</span>
</div>
</div>
</template>
</el-table-column> </el-table-column>
<el-table-column label="区域" width="60" > <el-table-column label="区域" width="120">
<template slot-scope="scope">
<router-link :to="'/radar/bxprozbgg/details/'+ 1" tag="a" class="list-titel-a" >
{{scope.row.province}}
<template v-if="scope.row.city">
-
</template>
{{scope.row.city}}
<template v-if="scope.row.area">
-
</template>
{{scope.row.area}}
</router-link>
</template>
</el-table-column> </el-table-column>
<el-table-column label="招标数量" width="72" > <el-table-column label="招标数量" width="72" >
<template slot-scope="scope"> <template slot-scope="scope">
-- {{scope.row.biddingCount||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="城投拿地" width="72" > <el-table-column label="城投拿地" width="72" >
<template slot-scope="scope"> <template slot-scope="scope">
28 {{scope.row.landInfoCount||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="供应商" width="72" > <el-table-column label="供应商" width="72" >
<template slot-scope="scope"> <template slot-scope="scope">
28 {{scope.row.supplierCount||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="主体评级" width="72" > <el-table-column label="主体评级" width="72" >
<template slot-scope="scope"> <template slot-scope="scope">
28 {{scope.row.bratingSubjectLevel||"--"}}
</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">
28 {{scope.row.bondBalance||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="行政级别" width="72" > <el-table-column label="行政级别" width="72" >
<template slot-scope="scope"> <template slot-scope="scope">
28 {{scope.row.uipExecutiveLevel||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="股东背景" width="84" > <el-table-column label="股东背景" width="84" >
<template slot-scope="scope"> <template slot-scope="scope">
28 {{scope.row.shareholderBg||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="股权关系" width="84" > <el-table-column label="股权关系" width="84" >
<template slot-scope="scope"> <template slot-scope="scope">
28 {{scope.row.equityRelationship||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="平台重要性" width="84" > <el-table-column label="平台重要性" width="84" >
<template slot-scope="scope"> <template slot-scope="scope">
28 {{scope.row.platformImportance||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="城投业务类型" width="94" > <el-table-column label="城投业务类型" width="94" >
<template slot-scope="scope"> <template slot-scope="scope">
28 {{scope.row.uipBusinessType||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="实控人" width="290" > <el-table-column label="实控人" width="290" >
<template slot-scope="scope"> <template slot-scope="scope">
28 <router-link v-if="scope.row.actualController" :to="'/radar/bxprozbgg/details/'+ 1" tag="a" class="list-titel-a" >
{{scope.row.actualController}}
</router-link>
<template v-else>
{{scope.row.actualController||"--"}}
</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">
2021-12-13 {{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">
2021-12-13 {{scope.row.totalAssets||"--"}}
</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">
2021-12-13 {{scope.row.belongNetAssets||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="货币资金(亿元)" width="120" > <el-table-column label="货币资金(亿元)" width="120" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.monetaryFunds||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="土地资产(亿元)" width="120" > <el-table-column label="土地资产(亿元)" width="120" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.landAssets||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="受限资产(亿元)" width="120" > <el-table-column label="受限资产(亿元)" width="120" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.restrictedAssets||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="应收账款(亿元)" width="120" > <el-table-column label="应收账款(亿元)" width="120" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.accountsReceivable||"--"}}
</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">
2021-12-13 {{scope.row.econData_001||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="政府补助(亿元)" width="120" > <el-table-column label="政府补助(亿元)" width="120" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.govSubsidy||"--"}}
</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">
2021-12-13 {{scope.row.specialPayable||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="营业收入(亿元)" width="120" > <el-table-column label="营业收入(亿元)" width="120" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.operatingIncome||"--"}}
</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">
2021-12-13 {{scope.row.belongNetProfit||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="净资产收益率" width="96" > <el-table-column label="净资产收益率" width="96" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.roe||"--"}}
</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">
2021-12-13 {{scope.row.netOperatingCashFlow||"--"}}
</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">
2021-12-13 {{scope.row.netFinancingCashFlow||"--"}}
</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">
2021-12-13 {{scope.row.netInvestmentCashFlow||"--"}}
</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">
2021-12-13 {{scope.row.totalLiabilities||"--"}}
</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">
2021-12-13 {{scope.row.uipInterestBearingDebt||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="有息债务/总负债" width="114" > <el-table-column label="有息债务/总负债" width="114" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.econData_002||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="综合融资成本" width="96" > <el-table-column label="综合融资成本" width="96" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.ofcb||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="现金比率" width="72" > <el-table-column label="现金比率" width="72" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.cashRatio||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="现金流量比率" width="96" > <el-table-column label="现金流量比率" width="96" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.cashFlowRatio||"--"}}
</template>
</el-table-column>
<el-table-column label="现金到期债务比" width="112" >
<template slot-scope="scope">
{{scope.row.cashDebtRatio||"--"}}
</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">
2021-12-13 {{scope.row.creditBalance||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="授信余额/全部债务" width="126" > <el-table-column label="授信余额/全部债务" width="126" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.econData_003||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="EBITDA保障倍数" width="116" > <el-table-column label="EBITDA保障倍数" width="116" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.ebitdaIcr||"--"}}
</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">
2021-12-13 {{scope.row.ppnBalanceProp||"--"}}
</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">
2021-12-13 {{scope.row.econData_004||"--"}}
</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">
2021-12-13 {{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">
2021-12-13 {{scope.row.loan||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="借款/有息债务" width="102" > <el-table-column label="借款/有息债务" width="102" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{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">
2021-12-13 {{scope.row.nonStandardBalance||"--"}}
</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">
2021-12-13 {{scope.row.nonStandardRatio||"--"}}
</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">
2021-12-13 {{scope.row.guaranteeAmount||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="对外担保比例" width="96" > <el-table-column label="对外担保比例" width="96" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.guaranteeAmount||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="所属开发区" width="84" > <el-table-column label="所属开发区" width="84" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.developmentZone||"--"}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="开发区类别" width="84" > <el-table-column label="开发区类别" width="84" >
<template slot-scope="scope"> <template slot-scope="scope">
2021-12-13 {{scope.row.developmentZone||"--"}}
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -405,6 +444,19 @@ ...@@ -405,6 +444,19 @@
</div> </div>
</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="renlin()">立即完善</span>
<span class="dialog-footer-btn2" @click="search(pageNum, pageSize)">稍后</span>
</div>
</el-dialog>
</div> </div>
</template> </template>
...@@ -480,9 +532,10 @@ export default { ...@@ -480,9 +532,10 @@ export default {
}, },
], ],
dialogVisible: false,
tableData:[], tableData:[],
total:6000, total:0,
pageNum:1, pageNum:1,
pageSize:20 pageSize:20
}; };
...@@ -720,7 +773,33 @@ export default { ...@@ -720,7 +773,33 @@ export default {
this.pageFlag = true; this.pageFlag = true;
}); });
}, },
claimbtn(item){
var params={
companyId:item.companyId,
uipId:item.uipId,
companyName:item.companyName,
// creditLevel:item.bratingSubjectLevel,
// legalPerson:item.legalPerson,
// registerCapital:item.registerCapital,
// provinceId:item.provinceId,
// cityId:item.cityId,
// districtId:item.districtId,
// registerAddress:item.registerAddress,
// creditCode:item.creditCode,
}
api.claim(params).then(res=>{
// console.log(res)
if (res.code==200) {
this.dialogVisible=true;
}
}).catch(error=>{
});
},
search(pageNum, pageSize,exportFlag) { search(pageNum, pageSize,exportFlag) {
this.dialogVisible=false;
if (!pageNum) { if (!pageNum) {
this.pageNum = 1; this.pageNum = 1;
} }
...@@ -783,9 +862,10 @@ export default { ...@@ -783,9 +862,10 @@ export default {
delete params.equityRelationship delete params.equityRelationship
} }
api.uipSerach(params).then(res=>{ api.uipSerach(params).then(res=>{
console.log(res) // console.log(res)
if (res.code==200) { if (res.code==200) {
// 行政等级 this.tableData=res.rows;
this.total=res.total;
} }
}).catch(error=>{ }).catch(error=>{
...@@ -793,12 +873,59 @@ export default { ...@@ -793,12 +873,59 @@ export default {
}); });
}, },
renlin(){
this.dialogVisible=false;
// 跳转地址
},
}, },
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
::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;
}
.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);
}
}
}
}
.content{ .content{
padding: 0px 16px; padding: 0px 16px;
border-radius: 4px 4px 4px 4px; border-radius: 4px 4px 4px 4px;
...@@ -1079,12 +1206,54 @@ export default { ...@@ -1079,12 +1206,54 @@ export default {
::v-deep .el-table--border .el-table__cell{ ::v-deep .el-table--border .el-table__cell{
border-right:1px solid #E6EAF1; border-right:1px solid #E6EAF1;
} }
.item-jf-text{
width: 100%;
text-align: center;
padding: 56px 0px;
font-size: 18px;
font-weight: 400;
color: rgba(35,35,35,0.8);
}
.renling{
display: flex;
align-items: center;
.list-titel-a{
width: 264px;
margin-right: 12px;
}
.renling-btn{
display: flex;
align-items: center;
img{
width: 16px;
height: 16px;
margin-right: 8px;
}
.renling-hui{
font-size: 12px;
font-weight: 400;
color: rgba(35,35,35,0.4);
}
.renling-hei{
cursor: pointer;
font-size: 12px;
font-weight: 400;
color: #3D3D3D;
}
.renling-hei:hover{
color: #0081FF;
}
}
}
} }
.table-item-jf1{
border-top:1px solid #EFEFEF;
}
.pagination{ .pagination{
padding: 14px ; padding: 14px ;
.el-pagination{ .el-pagination{
float: right; float: right ;
} }
} }
} }
......
...@@ -24,7 +24,11 @@ ...@@ -24,7 +24,11 @@
highlight-current-row highlight-current-row
@sort-change="sortChange" @sort-change="sortChange"
> >
<el-table-column prop="province" label="下辖区" width="100" :formatter="formatStatus"/> <el-table-column prop="province" label="下辖区" width="170" :formatter="formatStatus">
<template slot-scope="scope">
{{ scope.row.province}}{{scope.row.city ? '-': ''}}{{ scope.row.city}}{{scope.row.area ? '-': ''}}{{ scope.row.area}}
</template>
</el-table-column>
<el-table-column prop="gdp" label="GDP(亿元)" sortable width="120" :formatter="formatStatus"/> <el-table-column prop="gdp" label="GDP(亿元)" sortable width="120" :formatter="formatStatus"/>
<el-table-column prop="gdpGrowth" label="GDP增速" sortable width="100" :formatter="formatStatus"/> <el-table-column prop="gdpGrowth" label="GDP增速" sortable width="100" :formatter="formatStatus"/>
<el-table-column prop="gdpPerCapita" label="人均GDP(元)" sortable width="130" :formatter="formatStatus"/> <el-table-column prop="gdpPerCapita" label="人均GDP(元)" sortable width="130" :formatter="formatStatus"/>
......
...@@ -182,10 +182,11 @@ export default { ...@@ -182,10 +182,11 @@ export default {
var year = date.getFullYear() var year = date.getFullYear()
var month = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1 var month = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1
var day = date.getDate() < 10 ? '0' + date.getDate() : date.getDate() var day = date.getDate() < 10 ? '0' + date.getDate() : date.getDate()
var hours = date.getHours() < 10 ? '0' + date.getHours() : date.getHours() // var hours = date.getHours() < 10 ? '0' + date.getHours() : date.getHours()
var minutes = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes() // var minutes = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()
var seconds = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds() // var seconds = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds()
return year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds // return year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds
return year + '-' + month + '-' + day
} }
} }
} }
......
...@@ -139,6 +139,7 @@ export default { ...@@ -139,6 +139,7 @@ export default {
let arr=this.tableData.sort((old,New)=>{ let arr=this.tableData.sort((old,New)=>{
return New.value - old.value return New.value - old.value
}) })
console.log(arr)
let data=[] let data=[]
for(let i=0; i<10; i++){ for(let i=0; i<10; i++){
data.push(arr[i]) data.push(arr[i])
...@@ -215,13 +216,12 @@ export default { ...@@ -215,13 +216,12 @@ export default {
for(var i=0;i<res.data.length;i++){ for(var i=0;i<res.data.length;i++){
var obj={}; var obj={};
obj.name=res.data[i].projectType; obj.name=res.data[i].projectType;
obj.value=res.data[i].count; obj.value=res.data[i].totalInvestment;
obj.totalInvestment=res.data[i].totalInvestment; obj.number=res.data[i].count;
obj.proportion=res.data[i].proportion; obj.proportion=res.data[i].proportion;
list.push(obj) list.push(obj)
} }
this.tableData=list; this.tableData=list;
}) })
}, },
......
...@@ -41,9 +41,9 @@ ...@@ -41,9 +41,9 @@
<el-table-column label="序号" width="50" align="left" fixed> <el-table-column label="序号" width="50" align="left" fixed>
<template slot-scope="scope">{{ pageIndex * pageSize - pageSize + scope.$index + 1 }}</template> <template slot-scope="scope">{{ pageIndex * pageSize - pageSize + scope.$index + 1 }}</template>
</el-table-column> </el-table-column>
<el-table-column label="地区" min-width="70" align="left" fixed> <el-table-column label="地区" min-width="150" align="left" fixed>
<template slot-scope="scope"> <template slot-scope="scope">
<router-link :to="{path:'/macro/economies',query:{id:scope.row.id,provinceId:scope.row.provinceId}}" tag="a" class="a-link">{{ scope.row.province}}</router-link> <router-link :to="{path:'/macro/economies',query:{id:scope.row.id,provinceId:scope.row.provinceId}}" tag="a" class="a-link">{{ scope.row.province}}{{scope.row.city ? '-': ''}}{{ scope.row.city}}{{scope.row.area ? '-': ''}}{{ scope.row.area}}</router-link>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="年度明细" prop="id" width="90" align="center" fixed> <el-table-column label="年度明细" prop="id" width="90" align="center" fixed>
......
...@@ -7,121 +7,123 @@ ...@@ -7,121 +7,123 @@
</div> </div>
</div> </div>
<div class="search"> <div class="search">
<el-radio v-model="radio" label="1">含下属辖区</el-radio> <el-radio-group v-model="queryParams.radio" @change="querySubmit">
<el-radio v-model="radio" label="2">本级</el-radio> <el-radio label="1">含下属辖区</el-radio>
<el-radio label="2">本级</el-radio>
</el-radio-group>
<div class="search-box"> <div class="search-box">
<span style="cursor: pointer;" @click="handleSearch">筛选<i class="el-icon-caret-bottom" style="color:rgba(35,35,35,0.4);margin-left: 5px"></i></span> <span style="cursor: pointer;" @click="handleSearch">筛选<i class="el-icon-caret-bottom" style="color:rgba(35,35,35,0.4);margin-left: 5px"></i></span>
<div v-show="searchState" ref="showContent" class="search-main"> <div v-show="searchState" ref="showContent" class="search-main">
<div class="item"> <div class="item">
<span class="wrap_label">行政等级</span> <span class="wrap_label">行政等级</span>
<div class="item_ckquery"> <div class="item_ckquery">
<span :class="{color_text:xzdjCalss == ''}" @click="changeXZDJ('')">全部</span> <span :class="{color_text:xzdjCalss == ''}" @click="changeXZDJ('','')">全部</span>
<template v-for="(item,index) in xzdj"> <template v-for="(item,index) in typeList.uipExecutiveLevel">
<span :class="{color_text:index+1 === xzdjCalss}" @click="changeXZDJ(index+1)">{{item.name}}</span> <span :class="{color_text:index+1 === xzdjCalss}" @click="changeXZDJ(index+1,item)">{{item}}</span>
</template> </template>
</div> </div>
</div> </div>
<div class="item"> <div class="item">
<span class="wrap_label">城投业务类型</span> <span class="wrap_label">城投业务类型</span>
<div class="item_ckquery"> <div class="item_ckquery">
<span>全部</span> <span :class="{'color_text':queryParams.uipBusinessType.length === 0}" @click="changeType('',1)">全部</span>
<template v-for="(item,index) in typeList"> <template v-for="(item,index) in typeList.uipBusinessType">
<span>{{item}}</span> <span :class="{'color_text':queryParams.uipBusinessType.indexOf(item)!=-1}" @click="changeType(item,1)">{{item}}</span>
</template> </template>
</div> </div>
</div> </div>
<div class="item"> <div class="item">
<span class="wrap_label">主体评级</span> <span class="wrap_label">主体评级</span>
<div class="item_ckquery"> <div class="item_ckquery">
<span>全部</span> <span :class="{'color_text':queryParams.bratingSubjectLevel.length === 0}" @click="changeType('',2)">全部</span>
<template v-for="(item,index) in ztpj"> <template v-for="(item,index) in typeList.bratingSubjectLevel">
<span>{{item}}</span> <span :class="{'color_text':queryParams.bratingSubjectLevel.indexOf(item)!=-1}" @click="changeType(item,2)">{{item}}</span>
</template> </template>
</div> </div>
</div> </div>
<div class="item"> <div class="item">
<span class="wrap_label">股东背景</span> <span class="wrap_label">股东背景</span>
<div class="item_ckquery"> <div class="item_ckquery">
<span>全部</span> <span :class="{'color_text':queryParams.shareholderBg.length === 0}" @click="changeType('',3)">全部</span>
<template v-for="(item,index) in gdbj"> <template v-for="(item,index) in typeList.shareholderBg">
<span>{{item}}</span> <span :class="{'color_text':queryParams.shareholderBg.indexOf(item)!=-1}" @click="changeType(item,3)">{{item}}</span>
</template> </template>
</div> </div>
</div> </div>
<div class="item"> <div class="item">
<span class="wrap_label">股权关系</span> <span class="wrap_label">股权关系</span>
<div class="item_ckquery"> <div class="item_ckquery">
<span>全部</span> <span :class="{'color_text':queryParams.equityRelationship.length === 0}" @click="changeType('',4)">全部</span>
<template v-for="(item,index) in gqgx"> <template v-for="(item,index) in typeList.equityRelationship">
<span>{{item}}</span> <span :class="{'color_text':queryParams.equityRelationship.indexOf(item)!=-1}" @click="changeType(item,4)">{{item}}</span>
</template> </template>
</div> </div>
</div> </div>
<div class="item"> <div class="item">
<span class="wrap_label">平台重要性</span> <span class="wrap_label">平台重要性</span>
<div class="item_ckquery"> <div class="item_ckquery">
<span>全部</span> <span :class="{'color_text':queryParams.platformImportance.length === 0}" @click="changeType('',5)">全部</span>
<template v-for="(item,index) in pt"> <template v-for="(item,index) in typeList.platformImportance">
<span>{{item}}</span> <span :class="{'color_text':queryParams.platformImportance.indexOf(item)!=-1}" @click="changeType(item,5)">{{item}}</span>
</template>
</div>
</div>
<div class="item">
<span class="wrap_label" style="width: 78px;">开发区类别</span>
<div class="item_ckquery">
<span>全部</span>
<template v-for="(item,index) in lfqType">
<span>{{item}}</span>
</template> </template>
</div> </div>
</div> </div>
<!--<div class="item">-->
<!--<span class="wrap_label" style="width: 78px;">开发区类别</span>-->
<!--<div class="item_ckquery">-->
<!--<span>全部</span>-->
<!--<template v-for="(item,index) in lfqType">-->
<!--<span>{{item}}</span>-->
<!--</template>-->
<!--</div>-->
<!--</div>-->
<div class="item"> <div class="item">
<span class="wrap_label">更多筛选</span> <span class="wrap_label">更多筛选</span>
<div class="item_ckquery"> <div class="item_ckquery">
<span :class="addresslength>0?'select-active':''">注册地区{{addresslength>0?(addresslength+'项'):''}}</span> <span :class="addresslength>0?'select-active':''">注册地区{{addresslength>0?(addresslength+'项'):''}}</span>
<el-cascader ref="address" class="cascader-region" popper-class='cascader-region-addd' <el-cascader ref="address" class="cascader-region" popper-class='cascader-region-addd'
@input="addressListbtn" v-model="addressType" :options="addressList" :props="props" collapse-tags></el-cascader> @input="addressListbtn" v-model="queryParams.address" :options="addressList" :props="props" collapse-tags></el-cascader>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<el-input class="search-input" placeholder="输入企业名称关键词" v-model="queryParams.key"> <el-input class="search-input" placeholder="输入企业名称关键词" v-model="queryParams.keyword">
<template slot="prepend"><i class="el-icon-search"></i></template> <template slot="prepend"><i class="el-icon-search"></i></template>
<el-button slot="append">搜索</el-button> <el-button slot="append" @click="querySubmit">搜索</el-button>
</el-input> </el-input>
</div> </div>
<div class="list-box"> <div class="list-box">
<div class="item"> <div class="item">
<div class="left"> <div class="left">
<p>115<span></span></p> <p>{{statistics.count}}<span></span></p>
<span>平台家数</span> <span>平台家数</span>
</div> </div>
<img src="@/assets/images/urban/img1.png"> <img src="@/assets/images/urban/img1.png">
</div> </div>
<div class="item"> <div class="item">
<div class="left"> <div class="left">
<p>18,737.90<span>亿元</span></p> <p>{{statistics.creditBalance}}<span>亿元</span></p>
<span>授信余额</span> <span>授信余额</span>
</div> </div>
<img src="@/assets/images/urban/img2.png"> <img src="@/assets/images/urban/img2.png">
</div> </div>
<div class="item"> <div class="item">
<div class="left"> <div class="left">
<p>18,737.90<span>亿元</span></p> <p>{{statistics.totalAssets}}<span>亿元</span></p>
<span>资产总额</span> <span>资产总额</span>
</div> </div>
<img src="@/assets/images/urban/img3.png"> <img src="@/assets/images/urban/img3.png">
</div> </div>
<div class="item"> <div class="item">
<div class="left"> <div class="left">
<p>18,737.90<span>亿元</span></p> <p>{{statistics.accountsReceivable}}<span>亿元</span></p>
<span>营收账款</span> <span>营收账款</span>
</div> </div>
<img src="@/assets/images/urban/img4.png"> <img src="@/assets/images/urban/img4.png">
</div> </div>
<div class="item"> <div class="item">
<div class="left"> <div class="left">
<p>18,737.90<span>亿元</span></p> <p>{{statistics.nonStandardBalance}}<span>亿元</span></p>
<span>非标余额</span> <span>非标余额</span>
</div> </div>
<img src="@/assets/images/urban/img5.png"> <img src="@/assets/images/urban/img5.png">
...@@ -142,6 +144,7 @@ ...@@ -142,6 +144,7 @@
v-loading="tableLoading" v-loading="tableLoading"
:data="tableData" :data="tableData"
element-loading-text="Loading" element-loading-text="Loading"
@sort-change="sortChange"
border border
fit fit
highlight-current-row highlight-current-row
...@@ -149,23 +152,28 @@ ...@@ -149,23 +152,28 @@
<el-table-column label="序号" width="50" align="left" fixed> <el-table-column label="序号" width="50" align="left" fixed>
<template slot-scope="scope">{{ pageIndex * pageSize - pageSize + scope.$index + 1 }}</template> <template slot-scope="scope">{{ pageIndex * pageSize - pageSize + scope.$index + 1 }}</template>
</el-table-column> </el-table-column>
<el-table-column prop="name" label="公司名称" width="250" fixed> <el-table-column prop="companyName" label="公司名称" width="300" fixed>
<template slot-scope="scope">{{ scope.row.name }} <template slot-scope="scope">
<span class="table-span" style="color: #3D3D3D;" v-if="scope.row.state === 0"><img src="@/assets/images/urban/rl_icon1.png"/>认领</span> <p class="companyName">{{ scope.row.companyName }}</p>
<span class="table-span" style="color: rgba(35,35,35,0.4);" v-if="scope.row.state === 1"><img src="@/assets/images/urban/rl_icon2.png"/>已认领</span> <span class="table-span" style="color: #3D3D3D;" v-if="scope.row.claimStatus === 0"><img src="@/assets/images/urban/rl_icon1.png"/>认领</span>
<span class="table-span" style="color: rgba(35,35,35,0.4);" v-if="scope.row.claimStatus === 1"><img src="@/assets/images/urban/rl_icon2.png"/>已认领</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="value" label="区域" width="100" /> <el-table-column prop="city" label="区域" :formatter="formatStatus" width="100">
<el-table-column prop="pm" label="招标数量" sortable width="120" /> <!--<template slot-scope="scope">-->
<el-table-column prop="bl" label="城投拿地" sortable width="140" /> <!--{{ scope.row.province}}{{scope.row.city ? '-': ''}}{{ scope.row.city}}{{scope.row.area ? '-': ''}}{{ scope.row.area}}-->
<el-table-column prop="bl" label="供应商" sortable width="170" /> <!--</template>-->
<el-table-column prop="bl" label="主体评级" sortable width="140" /> </el-table-column>
<el-table-column prop="bl" label="债券余额(亿元)" sortable width="140" /> <el-table-column prop="biddingCount" label="招标数量" :formatter="formatStatus" sortable="custom" width="120" />
<el-table-column prop="bl" label="行政级别" width="140" /> <el-table-column prop="landInfoCount" label="城投拿地" :formatter="formatStatus" sortable="custom" width="140" />
<el-table-column prop="bl" label="股东背景" width="140" /> <el-table-column prop="supplierCount" label="供应商" :formatter="formatStatus" sortable="custom" width="170" />
<el-table-column prop="bl" label="股权关系" width="140" /> <el-table-column prop="bratingSubjectLevel" label="主体评级" :formatter="formatStatus" sortable="custom" width="140" />
<el-table-column prop="bl" label="平台重要性" width="140" /> <el-table-column prop="bondBalance" label="债券余额(亿元)" :formatter="formatStatus" sortable="custom" width="140" />
<el-table-column prop="bl" label="城投业务类型" width="140" > <el-table-column prop="uipExecutiveLevel" label="行政级别" :formatter="formatStatus" width="140" />
<el-table-column prop="shareholderBg" label="股东背景" :formatter="formatStatus" width="140" />
<el-table-column prop="equityRelationship" label="股权关系" :formatter="formatStatus" width="140" />
<el-table-column prop="platformImportance" label="平台重要性" :formatter="formatStatus" width="140" />
<el-table-column prop="uipBusinessType" label="城投业务类型" :formatter="formatStatus" width="140" >
<template slot="header" slot-scope="scope"> <template slot="header" slot-scope="scope">
<span>城投业务类型 <span>城投业务类型
<el-tooltip popper-class="tips" effect="light" content=" 根据主营业务构成划分为土地开发整理、基础设施建设、交通建设运营、棚改保障房建设、公用事业等8大类型。" placement="top"> <el-tooltip popper-class="tips" effect="light" content=" 根据主营业务构成划分为土地开发整理、基础设施建设、交通建设运营、棚改保障房建设、公用事业等8大类型。" placement="top">
...@@ -174,46 +182,47 @@ ...@@ -174,46 +182,47 @@
</span> </span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="bl" label="实控人" width="200" /> <el-table-column prop="actualController" label="实控人" :formatter="formatStatus" width="200" />
<el-table-column prop="bl" label="最新报告期" width="120" /> <el-table-column prop="latestReportPeriod" label="最新报告期" :formatter="formatStatus" width="120" />
<el-table-column prop="bl" label="总资产(亿元)" sortable width="120" /> <el-table-column prop="totalAssets" label="总资产(亿元)" :formatter="formatStatus" sortable="custom" width="120" />
<el-table-column prop="bl" label="归母净资产(亿元)" sortable width="160" /> <el-table-column prop="belongNetAssets" label="归母净资产(亿元)" :formatter="formatStatus" sortable="custom" width="160" />
<el-table-column prop="bl" label="货币资金(亿元)" sortable width="160" /> <el-table-column prop="monetaryFunds" label="货币资金(亿元)" :formatter="formatStatus" sortable="custom" width="160" />
<el-table-column prop="bl" label="土地资产(亿元)" sortable width="160" /> <el-table-column prop="landAssets" label="土地资产(亿元)" :formatter="formatStatus" sortable="custom" width="160" />
<el-table-column prop="bl" label="受限资产(亿元)" sortable width="160" /> <el-table-column prop="restrictedAssets" label="受限资产(亿元)" :formatter="formatStatus" sortable="custom" width="160" />
<el-table-column prop="bl" label="应收账款(亿元)" sortable width="160" /> <el-table-column prop="accountsReceivable" label="应收账款(亿元)" :formatter="formatStatus" sortable="custom" width="160" />
<el-table-column prop="bl" label="其他应收款(亿元)" sortable width="160" /> <el-table-column prop="otherReceivable" label="其他应收款(亿元)" :formatter="formatStatus" sortable="custom" width="160" />
<el-table-column prop="bl" label="公益性&准公益性主营占比(%)" width="160" /> <el-table-column prop="econData001" label="公益性&准公益性主营占比(%)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="应收类款项来自政府占比(%)" width="160" /> <el-table-column prop="receivableFromGovRatio" label="应收类款项来自政府占比(%)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="政府补助(亿元)" width="120" /> <el-table-column prop="govSubsidy" label="政府补助(亿元)" :formatter="formatStatus" width="120" />
<el-table-column prop="bl" label="专项应付款(亿元)" width="140" /> <el-table-column prop="specialPayable" label="专项应付款(亿元)" :formatter="formatStatus" width="140" />
<el-table-column prop="bl" label="营业收入(亿元)" width="140" /> <el-table-column prop="operatingIncome" label="营业收入(亿元)" :formatter="formatStatus" width="140" />
<el-table-column prop="bl" label="归母净利润(亿元)" width="140" /> <el-table-column prop="belongNetProfit" label="归母净利润(亿元)" :formatter="formatStatus" width="140" />
<el-table-column prop="bl" label="净资产收益率(%)" width="140" /> <el-table-column prop="roe" label="净资产收益率(%)" :formatter="formatStatus" width="140" />
<el-table-column prop="bl" label="经营现金流量净额(亿元)" width="160" /> <el-table-column prop="netOperatingCashFlow" label="经营现金流量净额(亿元)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="筹资现金流量净额(亿元)" width="160" /> <el-table-column prop="netFinancingCashFlow" label="筹资现金流量净额(亿元)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="投资现金流量净额(亿元)" width="160" /> <el-table-column prop="netInvestmentCashFlow" label="投资现金流量净额(亿元)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="总负债(亿元)" width="160" /> <el-table-column prop="totalLiabilities" label="总负债(亿元)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="有息债务(亿元)" width="160" /> <el-table-column prop="uipInterestBearingDebt" label="有息债务(亿元)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="有息债务/总负债(%)" width="160" /> <el-table-column prop="econData002" label="有息债务/总负债(%)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="资产负债率(%)" width="160" /> <el-table-column prop="tdr" label="资产负债率(%)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="综合融资成本(%)" width="160" /> <el-table-column prop="ofcb" label="综合融资成本(%)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="现金比率" width="160" /> <el-table-column prop="cashRatio" label="现金比率" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="现金流量比率" width="160" /> <el-table-column prop="cashFlowRatio" label="现金流量比率" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="现金到期债务比" width="160" /> <el-table-column prop="cashDebtRatio" label="现金到期债务比" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="授信余额/全部债务(%)" width="160" /> <el-table-column prop="creditBalance" label="授信余额(亿元)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="EBITDA保障倍数" width="160" /> <el-table-column prop="econData003" label="授信余额/全部债务(%)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="私募债余额占比(%)" width="160" /> <el-table-column prop="ebitdaIcr" label="EBITDA保障倍数" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="一年内到期债权占比(%)" width="160" /> <el-table-column prop="ppnBalanceProp" label="私募债余额占比(%)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="债券余额/有息债务(%)" width="160" /> <el-table-column prop="econData004" label="一年内到期债权占比(%)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="借款余额(亿元)" width="160" /> <el-table-column prop="econData005" label="债券余额/有息债务(%)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="借款/有息债务(%)" width="160" /> <el-table-column prop="loan" label="借款余额(亿元)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="非标余额(亿元)" width="160" /> <el-table-column prop="econData006" label="借款/有息债务(%)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="非标余额/有息债务(%)" width="160" /> <el-table-column prop="nonStandardBalance" label="非标余额(亿元)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="对外担保金额(亿元)" width="160" /> <el-table-column prop="nonStandardRatio" label="非标余额/有息债务(%)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="对外担保比例(%)" width="160" /> <el-table-column prop="guaranteeAmount" label="对外担保金额(亿元)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="所属开发区" width="160" /> <el-table-column prop="guaranteeRatio" label="对外担保比例(%)" :formatter="formatStatus" width="160" />
<el-table-column prop="bl" label="开发区类别" width="160" /> <el-table-column prop="developmentZone" label="所属开发区" :formatter="formatStatus" width="160" />
<!--<el-table-column prop="bl" label="开发区类别" width="160" />-->
</el-table> </el-table>
</div> </div>
<div class="pagination-box"> <div class="pagination-box">
...@@ -225,64 +234,38 @@ ...@@ -225,64 +234,38 @@
<script> <script>
import dataRegion from '@/assets/json/dataRegion' import dataRegion from '@/assets/json/dataRegion'
import { uipGroupData,urbanInvestmentPage,urbanInvestmentStatistics } from '@/api/macro/macro'
export default { export default {
name: 'Urban', name: 'Urban',
data() { data() {
return { return {
queryParams:{ queryParams:{
key:'' keyword:'',
uipExecutiveLevel:'', //行政级别
uipBusinessType:[], //城投业务类型
bratingSubjectLevel:[], //主体评级
shareholderBg:[], //股东背景
equityRelationship:[], //股权关系
platformImportance:[], //平台重要性
address:[],
radio:'1',
}, },
tableData:[ tableData:[],
{
name:'重庆市江北区国有资本投资运营管理集团有限公司',
pm:'1/306',
value:'江北区',
bl:'129.386',
state:1
},
{
name:'重庆市江北区国有资本投资运营管理集团有限公司',
pm:'1/306',
value:'江北区',
bl:'129.386',
state:0
},
],
tableLoading: false, tableLoading: false,
pageIndex: 1, pageIndex: 1,
pageSize: 10, pageSize: 10,
tableDataTotal: 120, tableDataTotal: 120,
radio:'2',
xzdj:[
{
name:'省级',
key:1,
},
{
name:'地级市',
key:2,
},
{
name:'区县级',
key:3,
}
],
selected:[], selected:[],
xzdjCalss:'', xzdjCalss:'',
typeList:['土地开发整理','基础设施建设','棚改保障房建设','公用事业','文化旅游','交通建设运营','产投平台'],
ztpj:['AAA','AA+','AA','A+','A','A-','BBB+','其他'],
gdbj:['政府','财政','国资委','其他'],
gqgx:['直接控股','间接控股'],
pt:['重要平台','主要平台','一般平台'],
lfqType:['国家级经开','国家级高新区','国家海关监管区域','国家级新区','国家边和区','其他国家级','省级新区','省级开发区'],
props: { props: {
value: 'id', value: 'id',
multiple: true, multiple: true,
}, },
addressList: [], addressList: [],
addressType: [],
addresslength: 0, addresslength: 0,
searchState:false, searchState:false,
typeList:[],
statistics:{}
} }
}, },
watch:{ watch:{
...@@ -300,8 +283,89 @@ export default { ...@@ -300,8 +283,89 @@ export default {
}, },
created() { created() {
this.dataRegion() this.dataRegion()
this.getType()
this.querySubmit()
}, },
methods: { methods: {
getType(){
uipGroupData().then(res => {
console.log(res.data)
this.typeList=res.data;
})
},
// 查询提交
async querySubmit() {
this.tableLoading = true
const params = { pageNum: this.pageIndex, pageSize: this.pageSize,type:Number(this.queryParams.radio)}
const param={}
if(this.queryParams.address.length > 0){
let arr = this.$refs.address.getCheckedNodes();
let provinceCode = [],cityCode = [],countyCode = [];
for (var i in arr) {
if (arr[i].parent) {
if (!arr[i].parent.checked) {
arr[i].hasChildren && cityCode.push(arr[i].value);
!arr[i].hasChildren && countyCode.push(arr[i].value);
}
} else {
provinceCode.push(arr[i].value)
}
}
if(provinceCode.length > 0){
params.provinceIds=provinceCode
param.provinceIds=provinceCode
}
if(cityCode.length > 0){
params.cityIds=cityCode
param.cityIds=cityCode
}
if(countyCode.length > 0){
params.areaIds=countyCode
param.areaIds=countyCode
}
}
if(this.queryParams.uipExecutiveLevel){
params.uipExecutiveLevel=this.queryParams.uipExecutiveLevel;
param.uipExecutiveLevel=this.queryParams.uipExecutiveLevel;
}
if(this.queryParams.uipBusinessType.length > 0){
params.uipBusinessType=this.queryParams.uipBusinessType;
param.uipBusinessType=this.queryParams.uipBusinessType;
}
if(this.queryParams.bratingSubjectLevel.length > 0){
params.bratingSubjectLevel=this.queryParams.bratingSubjectLevel;
param.bratingSubjectLevel=this.queryParams.bratingSubjectLevel;
}
if(this.queryParams.shareholderBg.length > 0){
params.shareholderBg=this.queryParams.shareholderBg;
param.shareholderBg=this.queryParams.shareholderBg;
}
if(this.queryParams.equityRelationship.length > 0){
params.equityRelationship=this.queryParams.equityRelationship;
param.equityRelationship=this.queryParams.equityRelationship;
}
if(this.queryParams.platformImportance.length > 0){
params.platformImportance=this.queryParams.platformImportance;
param.platformImportance=this.queryParams.platformImportance;
}
if(this.queryParams.field){
params.field=this.queryParams.field
}
if(this.queryParams.order){
params.order=this.queryParams.order
}
urbanInvestmentPage(params).then(res => {
this.tableLoading = false
this.tableData = res.data.list;
this.tableDataTotal = res.data.totalCount
})
urbanInvestmentStatistics(param).then(res => {
this.statistics=res.data;
})
},
//地区 //地区
async dataRegion() { async dataRegion() {
// await axios.post("https://files.jiansheku.com/file/json/common/dataRegion.json", {}, { // await axios.post("https://files.jiansheku.com/file/json/common/dataRegion.json", {}, {
...@@ -359,12 +423,12 @@ export default { ...@@ -359,12 +423,12 @@ export default {
handleSizeChange(val) { handleSizeChange(val) {
this.pageIndex = 1 this.pageIndex = 1
this.pageSize = val this.pageSize = val
// this.querySubmit() this.querySubmit()
}, },
// 跳转指定页数 // 跳转指定页数
handleCurrentChange(val) { handleCurrentChange(val) {
this.pageIndex = val this.pageIndex = val
// this.querySubmit() this.querySubmit()
}, },
handleSearch(event){ handleSearch(event){
// this.searchState=!this.searchState; // this.searchState=!this.searchState;
...@@ -374,19 +438,10 @@ export default { ...@@ -374,19 +438,10 @@ export default {
document.removeEventListener('click', this.handleSearch); document.removeEventListener('click', this.handleSearch);
} }
}, },
active(index, item) { changeXZDJ(index,name) {
// this.selected.indexOf(item) 判断item下标是否为-1,
// 是-1则数组中匹配不到该数据,添加
// 不是-1则说明匹配到了,抹除
if (this.selected.indexOf(item) !== -1) {
this.selected.splice(this.selected.indexOf(item), 1); //取消
} else {
this.selected.push(item);//选中添加到数组里
}
console.log(JSON.parse(JSON.stringify(this.selected)));
},
changeXZDJ(index) {
this.xzdjCalss = index; this.xzdjCalss = index;
this.queryParams.uipExecutiveLevel=name;
this.querySubmit()
}, },
addressListbtn() { addressListbtn() {
let arr = this.$refs.address.getCheckedNodes(); let arr = this.$refs.address.getCheckedNodes();
...@@ -406,6 +461,63 @@ export default { ...@@ -406,6 +461,63 @@ export default {
} else { } else {
this.addresslength = 0; this.addresslength = 0;
} }
this.querySubmit()
},
changeType(item,index){
switch (index) {
case 1:
if (this.queryParams.uipBusinessType.indexOf(item) !== -1) {
this.queryParams.uipBusinessType.splice(this.queryParams.uipBusinessType.indexOf(item), 1);
} else {
this.queryParams.uipBusinessType.push(item);
}
break;
case 2:
if (this.queryParams.bratingSubjectLevel.indexOf(item) !== -1) {
this.queryParams.bratingSubjectLevel.splice(this.queryParams.bratingSubjectLevel.indexOf(item), 1);
} else {
this.queryParams.bratingSubjectLevel.push(item);
}
break;
case 3:
if (this.queryParams.shareholderBg.indexOf(item) !== -1) {
this.queryParams.shareholderBg.splice(this.queryParams.shareholderBg.indexOf(item), 1);
} else {
this.queryParams.shareholderBg.push(item);
}
break;
case 4:
if (this.queryParams.equityRelationship.indexOf(item) !== -1) {
this.queryParams.equityRelationship.splice(this.queryParams.equityRelationship.indexOf(item), 1);
} else {
this.queryParams.equityRelationship.push(item);
}
break;
case 5:
if (this.queryParams.platformImportance.indexOf(item) !== -1) {
this.queryParams.platformImportance.splice(this.queryParams.platformImportance.indexOf(item), 1);
} else {
this.queryParams.platformImportance.push(item);
}
break;
}
this.querySubmit()
},
formatStatus: function(row, column, cellValue) {
return cellValue? cellValue : '-'
},
sortChange({ column, prop, order }){
this.queryParams.field = prop
if(column.order === "ascending"){
this.queryParams.order = 'asc'
}else if(column.order === "descending"){
this.queryParams.order = 'desc'
}else {
this.queryParams.order=''
this.queryParams.field=''
}
this.pageIndex = 1;
this.querySubmit()
}, },
}, },
} }
...@@ -434,21 +546,22 @@ export default { ...@@ -434,21 +546,22 @@ export default {
box-shadow: 0px 4px 10px 0px rgba(0,0,0,0.1); box-shadow: 0px 4px 10px 0px rgba(0,0,0,0.1);
border-radius: 4px; border-radius: 4px;
width: 880px; width: 880px;
height: 337px; /*height: 337px;*/
padding: 16px; padding: 16px;
position: absolute; position: absolute;
top: 25px; top: 25px;
left: 0; left: 0;
z-index: 99; z-index: 9999;
.item{ .item{
margin-bottom: 5px; margin-bottom: 5px;
display: flex; /*display: flex;*/
/*align-items: center;*/ /*align-items: center;*/
font-size: 14px; font-size: 14px;
.wrap_label{ .wrap_label{
color: rgba(35,35,35,0.8); color: rgba(35,35,35,0.8);
margin-right: 12px; margin-right: 12px;
line-height: 30px; line-height: 30px;
float: left;
} }
.item_ckquery{ .item_ckquery{
position: relative; position: relative;
...@@ -457,6 +570,7 @@ export default { ...@@ -457,6 +570,7 @@ export default {
padding: 5px 12px; padding: 5px 12px;
display: inline-block; display: inline-block;
cursor: pointer; cursor: pointer;
margin-right: 8px;
} }
.color_text{ .color_text{
background: #F3F4F5; background: #F3F4F5;
...@@ -511,13 +625,19 @@ export default { ...@@ -511,13 +625,19 @@ export default {
.table-item{ .table-item{
margin-top: 22px; margin-top: 22px;
} }
.companyName{
width: 200px;
display: inline-block;
margin: 0;
}
.table-span{ .table-span{
float: right;
img{ img{
width: 16px; width: 16px;
height: 16px; height: 16px;
margin-bottom: -4px; margin-bottom: -4px;
margin-right: 5px; margin-right: 5px;
margin-left: 20px; /*margin-left: 20px;*/
} }
} }
.list-box{ .list-box{
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
</div> </div>
<div class="top-icons"> <div class="top-icons">
<img class="top-img" src="@/assets/images/project/icon_8.png"> <img class="top-img" src="@/assets/images/project/icon_8.png">
<div class="name">即将开项目</div> <div class="name">即将开项目</div>
<div class="number">39</div> <div class="number">39</div>
<div class="compare">较上月<span class="ss">+3 <img src="@/assets/images/project/ss.png"></span></div> <div class="compare">较上月<span class="ss">+3 <img src="@/assets/images/project/ss.png"></span></div>
</div> </div>
...@@ -504,10 +504,18 @@ export default { ...@@ -504,10 +504,18 @@ export default {
.ss{ .ss{
color: #0CBC6D; color: #0CBC6D;
padding-left: 3px; padding-left: 3px;
>img{
width: 8px;
margin-top: -3px;
}
} }
.xj{ .xj{
color: #FF3C3C; color: #FF3C3C;
padding-left: 3px; padding-left: 3px;
>img{
width: 8px;
margin-top: -3px;
}
} }
} }
} }
...@@ -642,6 +650,9 @@ export default { ...@@ -642,6 +650,9 @@ export default {
text-align: center; text-align: center;
font-size: 12px; font-size: 12px;
padding-top: 16px; padding-top: 16px;
>img{
height: 48px;
}
>div{ >div{
line-height: 14px; line-height: 14px;
} }
......
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
<div class="p3"> <div class="p3">
<img src="@/assets/images/project/success.png">查询成功 <img src="@/assets/images/project/success.png">查询成功
</div> </div>
<div class="p2">成功导入{{titletext}}信息</div> <div class="p2">成功导入{{successCount}}{{titletext}}信息</div>
<div class="btns"> <div class="btns">
<div class="btn btn_primary h32" @click="getmsg">查看</div> <div class="btn btn_primary h32" @click="getmsg">查看</div>
</div> </div>
...@@ -73,10 +73,10 @@ ...@@ -73,10 +73,10 @@
}, },
downloadhref:'',//样例地址 downloadhref:'',//样例地址
titletext:'', titletext:'',
successCount:0,//成功条数
} }
}, },
created(){ created(){
console.log(this.importtype )
if(this.importtype == 'project'){//项目管理 if(this.importtype == 'project'){//项目管理
this.downloadhref = '/file/projectTemplate.xlsx' this.downloadhref = '/file/projectTemplate.xlsx'
this.titletext = '商机' this.titletext = '商机'
...@@ -93,15 +93,35 @@ ...@@ -93,15 +93,35 @@
this.$emit('getdatas') this.$emit('getdatas')
}, },
handleFileListChange(file, fileList) { handleFileListChange(file, fileList) {
var testmsg = file.name.substring(file.name.lastIndexOf(".") + 1);
const extension = testmsg === "xlsx";
const extension1 = testmsg === "xls";
if (!extension && !extension1 ) {
this.$message({
message: "上传文件只能是.xls,.xlsx格式!",
type: "warning",
});
return false;
}
const isLt2M = file.size / 1024 / 1024 < 2
if (!isLt2M) {
this.$refs.upload.clearFiles()
this.$message({
message: '上传文件大小不能超过 2MB!',
type: 'warning'
})
return false
}
if (fileList.length > 0) { if (fileList.length > 0) {
this.fileList = [fileList[fileList.length - 1]]; this.fileList = [fileList[fileList.length - 1]];
this.isUpload = true this.isUpload = true
} }
}, },
onSuccess(res, file, fileList) { onSuccess(res, file, fileList) {
if(res.code == 200 ) if (res.code == 200) {
this.successCount = res.successCount
this.addsuccess = true this.addsuccess = true
else { }else {
this.importCancel() this.importCancel()
this.$message.error({ message: res.msg, showClose: true }) this.$message.error({ message: res.msg, showClose: true })
} }
......
...@@ -15,26 +15,34 @@ ...@@ -15,26 +15,34 @@
<el-input v-model="addParam.content" placeholder="新建一条跟进记录,如:周五上午预约客户上门拜访"></el-input> <el-input v-model="addParam.content" placeholder="新建一条跟进记录,如:周五上午预约客户上门拜访"></el-input>
</div> </div>
<div class="wr_bot"> <div class="wr_bot">
<el-select v-model="addParam.visitMode" class="w128" placeholder="拜访方式"> <div class="sels" v-model="addParam.visitMode">
<i slot="prefix" class="el-input__icon"><img src="@/assets/images/project/ico_1.png"></i> <img src="@/assets/images/project/ico_1.png">
<el-select class="w128" placeholder="拜访方式">
<el-option v-for="(item,index) in bffslist" :key="index" :label="item.dictLabel" :value="item.dictValue"></el-option> <el-option v-for="(item,index) in bffslist" :key="index" :label="item.dictLabel" :value="item.dictValue"></el-option>
</el-select>
<template v-if="!customerIds">
<el-select v-if="showtype == 'gjdt'" v-model="addParam.customerId" class="w128" placeholder="关联企业">
<i slot="prefix" class="el-input__icon"><img src="@/assets/images/project/ico_1.png"></i>
<el-option v-for="(item,index) in glqylist" :key="index" :label="item.companyName" :value="item.customerId"></el-option>
</el-select> </el-select>
</template> </div>
<el-select v-if="showtype == 'projectgjdt'" v-model="projectId" class="w128" placeholder="关联项目"> <div class="sels" v-if="!customerIds && showtype == 'gjdt'">
<i slot="prefix" class="el-input__icon"><img src="@/assets/images/project/ico_1.png"></i> <img src="@/assets/images/project/ico_1.png">
<el-option v-for="(item,index) in projectList" :key="index" :label="item.projectName" :value="item.id"></el-option> <el-select v-model="addParam.customerId" class="w128" placeholder="关联企业">
</el-select> <el-option v-for="(item,index) in glqylist" :key="index" :label="item.companyName" :value="item.customerId"></el-option>
<el-input v-model="addParam.name" placeholder="拜访对象" style="width: 100px;"> </el-select>
<i slot="prefix" class="el-input__icon"><img src="@/assets/images/project/ico_2.png"></i> </div>
</el-input> <div class="sels" v-if="showtype == 'projectgjdt'">
<el-input v-model="addParam.position" placeholder="客户职位" style="width: 100px;"> <img src="@/assets/images/project/ico_1.png">
<i slot="prefix" class="el-input__icon"><img src="@/assets/images/project/ico_3.png"></i> <el-select v-model="projectId" class="w128" placeholder="关联项目">
</el-input> <el-option v-for="(item,index) in projectList" :key="index" :label="item.projectName" :value="item.id"></el-option>
</el-select>
</div>
<div class="sels">
<img src="@/assets/images/project/ico_2.png">
<el-input v-model="addParam.name" placeholder="拜访对象" style="width: 100px;">
</el-input>
</div>
<div class="sels">
<img src="@/assets/images/project/ico_3.png">
<el-input v-model="addParam.position" placeholder="客户职位" style="width: 100px;">
</el-input>
</div>
<div class="times"><img src="@/assets/images/project/ico_4.png"> <div class="times"><img src="@/assets/images/project/ico_4.png">
<el-date-picker class="w128" <el-date-picker class="w128"
v-model="addParam.nextVisitTime" v-model="addParam.nextVisitTime"
......
...@@ -209,5 +209,6 @@ ...@@ -209,5 +209,6 @@
.img.img1{ .img.img1{
margin-right: 8px; margin-right: 8px;
background: url('../../../../../src/assets/images/project/add_2.png')no-repeat center center; background: url('../../../../../src/assets/images/project/add_2.png')no-repeat center center;
background-size: 100%;
} }
</style> </style>
...@@ -286,10 +286,12 @@ ...@@ -286,10 +286,12 @@
.img.img1{ .img.img1{
margin-right: 4px; margin-right: 4px;
background: url('../../../../../src/assets/images/project/add_2.png')no-repeat center center; background: url('../../../../../src/assets/images/project/add_2.png')no-repeat center center;
background-size: 100%;
} }
.img.img2{ .img.img2{
margin-right: 4px; margin-right: 4px;
background: url('../../../../../src/assets/images/upload.png')no-repeat center center; background: url('../../../../../src/assets/images/upload.png')no-repeat center center;
background-size: 100%;
} }
.box-card{ .box-card{
position: relative; position: relative;
......
...@@ -276,6 +276,8 @@ ...@@ -276,6 +276,8 @@
} }
</script> </script>
<style scoped> <style scoped lang="scss">
.select-popper{
top: 3px;
}
</style> </style>
...@@ -301,6 +301,7 @@ ...@@ -301,6 +301,7 @@
margin-right: 4px; margin-right: 4px;
transform: rotateX(180deg); transform: rotateX(180deg);
background: url('../../../../../src/assets/images/import.png')no-repeat center center; background: url('../../../../../src/assets/images/import.png')no-repeat center center;
background-size: 100%;
} }
.box-card{ .box-card{
position: relative; position: relative;
......
...@@ -178,7 +178,7 @@ ...@@ -178,7 +178,7 @@
} }
}, },
created(){ created(){
this.thistag = this.$route.query.tag this.thistag = this.$route.query.tag ? this.$route.query.tag : this.thistag
this.prvinceTree() this.prvinceTree()
this.id = this.detailId ? this.detailId : this.$route.query.id this.id = this.detailId ? this.detailId : this.$route.query.id
//项目阶段 //项目阶段
...@@ -347,6 +347,9 @@ ...@@ -347,6 +347,9 @@
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.select-popper{
top: 0;
}
.head{ .head{
.titles{ .titles{
line-height: 31px; line-height: 31px;
...@@ -376,7 +379,7 @@ ...@@ -376,7 +379,7 @@
&:hover{ &:hover{
background-color: #DFE0E2; background-color: #DFE0E2;
} }
>img{ img{
float: left; float: left;
width: 16px; width: 16px;
margin-top: 3px; margin-top: 3px;
...@@ -417,6 +420,7 @@ ...@@ -417,6 +420,7 @@
width: 10px; width: 10px;
height: 32px; height: 32px;
background: url("../../../assets/images/project/icol1.png") no-repeat top center #fff; background: url("../../../assets/images/project/icol1.png") no-repeat top center #fff;
background-size: 100%;
position: absolute; position: absolute;
left: 0; left: 0;
top: 0; top: 0;
...@@ -428,14 +432,17 @@ ...@@ -428,14 +432,17 @@
width: 10px; width: 10px;
height: 32px; height: 32px;
background: url("../../../assets/images/project/icor1.png") no-repeat top center #fff; background: url("../../../assets/images/project/icor1.png") no-repeat top center #fff;
background-size: 100%;
} }
&:hover{ &:hover{
background: #E3E6EA; background: #E3E6EA;
.left{ .left{
background: url("../../../assets/images/project/icol2.png") no-repeat top center #fff; background: url("../../../assets/images/project/icol2.png") no-repeat top center #fff;
background-size: 100%;
} }
.right{ .right{
background: url("../../../assets/images/project/icor2.png") no-repeat top center #fff; background: url("../../../assets/images/project/icor2.png") no-repeat top center #fff;
background-size: 100%;
} }
} }
...@@ -444,9 +451,11 @@ ...@@ -444,9 +451,11 @@
color: #fff; color: #fff;
.left{ .left{
background: url("../../../assets/images/project/icol3.png") no-repeat top center #fff; background: url("../../../assets/images/project/icol3.png") no-repeat top center #fff;
background-size: 100%;
} }
.right{ .right{
background: url("../../../assets/images/project/icor3.png") no-repeat top center #fff; background: url("../../../assets/images/project/icor3.png") no-repeat top center #fff;
background-size: 100%;
} }
} }
} }
......
...@@ -136,7 +136,7 @@ ...@@ -136,7 +136,7 @@
<el-divider v-if="index != datalist.length-1"></el-divider> <el-divider v-if="index != datalist.length-1"></el-divider>
<div class="operates" v-if="activeName=='first'"> <div class="operates" v-if="activeName=='first'">
<div class="i1"><img src="@/assets/images/follow.png" @click="toDetail(item.id,'gjjl')">跟进</div> <div class="i1"><img src="@/assets/images/follow.png" @click="toDetail(item.id,'gjjl')">跟进</div>
<div class="i2"><img src="@/assets/images/edit.png" @click="toDetail(item.id,'xmsl')">编辑</div> <div class="i2"><img src="@/assets/images/edit1.png" @click="toDetail(item.id,'xmsl')">编辑</div>
<div class="i3" @click="deldetail(index)"><img src="@/assets/images/delete.png">删除</div> <div class="i3" @click="deldetail(index)"><img src="@/assets/images/delete.png">删除</div>
</div> </div>
<div class="delform" v-if="activeName=='first' && ondel == index"> <div class="delform" v-if="activeName=='first' && ondel == index">
...@@ -447,14 +447,17 @@ export default { ...@@ -447,14 +447,17 @@ export default {
z-index: 2; z-index: 2;
.img.img1{ .img.img1{
background: url('../../../../src/assets/images/add.png')no-repeat center center; background: url('../../../../src/assets/images/add.png')no-repeat center center;
background-size: 100%;
} }
.btn_default:hover{ .btn_default:hover{
.img1{ .img1{
background: url('../../../../src/assets/images/add_1.png')no-repeat center center; background: url('../../../../src/assets/images/add_1.png')no-repeat center center;
background-size: 100%;
} }
} }
.img.img2{ .img.img2{
background: url('../../../../src/assets/images/import.png')no-repeat center center; background: url('../../../../src/assets/images/import.png')no-repeat center center;
background-size: 100%;
} }
} }
.scbtns{ .scbtns{
...@@ -536,6 +539,7 @@ export default { ...@@ -536,6 +539,7 @@ export default {
>img{ >img{
float: left; float: left;
margin-right: 5px; margin-right: 5px;
width: 16px;
} }
} }
.i1:hover{ .i1:hover{
......
...@@ -61,6 +61,6 @@ public class BusinessAddDto { ...@@ -61,6 +61,6 @@ public class BusinessAddDto {
private String customerId; private String customerId;
public Double getInvestmentAmount() { public Double getInvestmentAmount() {
return StringUtils.isEmpty(investmentAmount) ? 0 :Double.parseDouble(investmentAmount); return StringUtils.isEmpty(investmentAmount) ? null :Double.parseDouble(investmentAmount);
} }
} }
...@@ -66,18 +66,18 @@ public class EnterpriseProjectService { ...@@ -66,18 +66,18 @@ public class EnterpriseProjectService {
} }
public TableDataInfo specialDebtProjectPage(Object body) throws Exception { public TableDataInfo specialDebtProjectPage(EnterpriseProjectSpecialDebtProjectPageBody body) throws Exception {
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/enterpriseProject/specialDebtProjectPage", BeanUtil.beanToMap(body, false, false)); Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/enterpriseProject/specialDebtProjectPage", BeanUtil.beanToMap(body, false, false));
return dskOpenApiUtil.responsePage(map); return dskOpenApiUtil.responsePage(map);
} }
public R specialDebtProjectDetail(Object body) throws Exception { public R specialDebtProjectDetail(EnterpriseProjectSpecialDebtProjectDetailBody body) throws Exception {
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/enterpriseProject/specialDebtProjectDetail", BeanUtil.beanToMap(body, false, false)); Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/enterpriseProject/specialDebtProjectDetail", BeanUtil.beanToMap(body, false, false));
return BeanUtil.toBean(map, R.class); return BeanUtil.toBean(map, R.class);
} }
public TableDataInfo specialDebtPage(Object body) throws Exception { public TableDataInfo specialDebtPage(EnterpriseProjectSpecialDebtPageBody body) throws Exception {
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/enterpriseProject/specialDebtPage", BeanUtil.beanToMap(body, false, false)); Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/enterpriseProject/specialDebtPage", BeanUtil.beanToMap(body, false, false));
return dskOpenApiUtil.responsePage(map); return dskOpenApiUtil.responsePage(map);
} }
......
...@@ -132,7 +132,7 @@ public class EnterpriseService { ...@@ -132,7 +132,7 @@ public class EnterpriseService {
return dskOpenApiUtil.responsePage(map); return dskOpenApiUtil.responsePage(map);
} }
public TableDataInfo bestStockPage(EnterpriseKeymembersBody body) throws Exception { public TableDataInfo bestStockPage(EnterpriseBestStockPageBody body) throws Exception {
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/enterprise/bestStockPage", BeanUtil.beanToMap(body, false, false)); Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/enterprise/bestStockPage", BeanUtil.beanToMap(body, false, false));
return dskOpenApiUtil.responsePage(map); return dskOpenApiUtil.responsePage(map);
} }
......
...@@ -126,7 +126,7 @@ public class BusinessInfoServiceImpl implements IBusinessInfoService { ...@@ -126,7 +126,7 @@ public class BusinessInfoServiceImpl implements IBusinessInfoService {
Integer errorCount = 0;//失败条数 Integer errorCount = 0;//失败条数
List<String> result = new LinkedList();//导入结果汇总 List<String> result = new LinkedList();//导入结果汇总
List<BusinessExcelDto> businessInfoList = readBusinessInfoExcel.getExcelInfo(file); List<BusinessExcelDto> businessInfoList = readBusinessInfoExcel.getExcelInfo(file);
if(CollectionUtil.isEmpty(businessInfoList))return AjaxResult.error("文档中无项目信息!"); if(CollectionUtil.isEmpty(businessInfoList))return AjaxResult.error("文档中无项目信息,请按照模板文档格式上传");
for (BusinessExcelDto businessInfo : businessInfoList) { for (BusinessExcelDto businessInfo : businessInfoList) {
//查询已有的项目名称 //查询已有的项目名称
Integer count = businessInfoMapper.isRepetitionProjectName(businessInfo.getProjectName(), userId.intValue()); Integer count = businessInfoMapper.isRepetitionProjectName(businessInfo.getProjectName(), userId.intValue());
...@@ -147,7 +147,9 @@ public class BusinessInfoServiceImpl implements IBusinessInfoService { ...@@ -147,7 +147,9 @@ public class BusinessInfoServiceImpl implements IBusinessInfoService {
} }
result.add("导入项目成功条数" + rowSuccess); result.add("导入项目成功条数" + rowSuccess);
result.add("导入项目失败条数" + errorCount); result.add("导入项目失败条数" + errorCount);
return errorCount == businessInfoList.size() ? AjaxResult.error(String.join(",", result)) : AjaxResult.success(String.join(",", result)); AjaxResult success = AjaxResult.success(String.join(",", result));
success.put("successCount",rowSuccess);
return success;
} }
/** /**
......
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