Commit cc2f4d33 authored by danfuman's avatar danfuman

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

# Conflicts:
#	dsk-operate-ui/src/views/detail/party-a/component/Sidebar.vue
parents d79c46c9 7cadd8c1
......@@ -12,8 +12,10 @@ import com.dsk.biz.domain.bo.BusinessListDto;
import com.dsk.biz.domain.bo.CustomerBusinessSearchDto;
import com.dsk.biz.domain.vo.*;
import com.dsk.biz.utils.ExcelUtils;
import com.dsk.biz.utils.OldFileUtils;
import com.dsk.common.annotation.DataColumn;
import com.dsk.common.annotation.DataPermission;
import com.dsk.common.utils.file.FileUploadUtils;
import com.dsk.jsk.service.EnterpriseService;
import com.dsk.biz.mapper.BusinessInfoMapper;
import com.dsk.biz.mapper.BusinessLabelMapper;
......@@ -131,7 +133,7 @@ public class BusinessInfoServiceImpl implements IBusinessInfoService {
businessBrowseVo.setFollowRecordCount(total.getFollowRecordCount());
businessBrowseVo.setRelateCompanyCount(total.getRelateCompanyCount());
//资料文档统计
// businessBrowseVo.setFileCount(FileUtils.getAllFileNames(ShuZhiHuaConfig.getProfile() + businessId).size());
businessBrowseVo.setFileCount(OldFileUtils.getAllFileNames(FileUploadUtils.getDefaultBaseDir() + businessId).size());
return businessBrowseVo;
}
......
......@@ -10,6 +10,7 @@ import com.dsk.common.core.page.TableDataInfo;
import com.dsk.common.core.service.OssService;
import com.dsk.jsk.domain.JskCombineBidPageDto;
import com.dsk.jsk.domain.JskCombineCertificateDto;
import com.dsk.jsk.domain.JskCombineCountDto;
import com.dsk.jsk.domain.JskCombineSearchDto;
import com.dsk.jsk.domain.vo.JskCombineBidProjectExportVo;
import com.dsk.jsk.domain.vo.JskCombineWinBidProjectExportVo;
......@@ -228,7 +229,7 @@ public class JskCombineInfoController extends BaseController {
*@date: 2023/9/12 16:05
*/
@RequestMapping(value = "/memberCount", method = RequestMethod.POST)
public R memberCount(@RequestBody JskCombineSearchDto dto) throws Exception {
public R memberCount(@RequestBody JskCombineCountDto dto) throws Exception {
return baseService.memberCount(dto);
}
}
package com.dsk.jsk.domain;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* 集团户相关查询条件实体类
*
* @author lcl
* @create 2023/8/7
*/
@Data
public class JskCombineCountDto implements Serializable {
/**
* 集团id
*/
@NotNull(message = "集团id不能为空!")
private String combineId;
/**
* 截止时间
*/
private String endTime;
/**
* 资质类型
*/
private Integer qualificationType;
}
package com.dsk.jsk.service;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.ObjectUtil;
import com.dsk.common.constant.CacheConstants;
import com.dsk.common.core.domain.AjaxResult;
import com.dsk.common.core.domain.R;
import com.dsk.common.core.page.TableDataInfo;
......@@ -11,9 +13,11 @@ import com.dsk.common.utils.DskOpenApiUtil;
import com.dsk.common.utils.StringUtils;
import com.dsk.jsk.domain.JskCombineBidPageDto;
import com.dsk.jsk.domain.JskCombineCertificateDto;
import com.dsk.jsk.domain.JskCombineCountDto;
import com.dsk.jsk.domain.JskCombineSearchDto;
import com.dsk.jsk.domain.vo.JskCombineBidProjectExportVo;
import com.dsk.jsk.domain.vo.JskCombineWinBidProjectExportVo;
import com.dsk.jsk.util.RedisCache;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.MapUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -21,9 +25,12 @@ import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
/**
* @author lcl
......@@ -38,6 +45,9 @@ public class JskCombineInfoService {
@Autowired
private EnterpriseService enterpriseService;
@Resource
private RedisCache redisCache;
public TableDataInfo memberList(JskCombineSearchDto dto) throws Exception {
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/combine/memberList", BeanUtil.beanToMap(dto, false, false));
return dskOpenApiUtil.responsePage(map);
......@@ -236,12 +246,23 @@ public class JskCombineInfoService {
*@Author: Dgm
*@date: 2023/9/12 16:05
*/
public R memberCount(JskCombineSearchDto dto) {
public R memberCount(JskCombineCountDto dto) {
String redisKey = CacheConstants.PERSONAL_LOCATION + dto.getCombineId();
if (ObjectUtil.isNotEmpty(redisKey)) {
Map<String, Object> cacheMap = redisCache.getCacheObject(redisKey);
if (MapUtils.isNotEmpty(cacheMap)) {
return R.ok(cacheMap);
}
}
dto.setQualificationType(209);
dto.setEndTime(DateUtil.formatDate(new Date()));
Map<String, Object> paramsMap = BeanUtil.beanToMap(dto, false, false);
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/combine/memberCount", paramsMap);
if (ObjectUtil.isNotEmpty(map.get("data"))) {
Map<String, Object> data = BeanUtil.beanToMap(map.get("data"));
data.put("performance", businessCount(paramsMap));
map.put("data", data);
redisCache.setCacheObject(redisKey, data,24, TimeUnit.HOURS);
}
return BeanUtil.toBean(map, R.class);
}
......
......@@ -31,183 +31,182 @@
</template>
<script>
import { financial } from '@/api/detail/party-a/financial'
export default {
name: 'Sidebar',
props: {
partBoxHeight: {
type: Number,
default: null
},
pathName: {
type: String,
default: null
},
customerId: {
type: String,
default: ''
},
isCompany: {
type: Boolean,
default: true
},
statisticObj:{
type:Object,
default: {}
},
isCustomer: {
type: Boolean,
default: false
}
import { financial } from '@/api/detail/party-a/financial'
export default {
name: 'Sidebar',
props: {
partBoxHeight: {
type: Number,
default: null
},
data() {
return {
searchText: '',
sideRoute: [
{title: '企业概要', pathName: '', children: [
{title: '企业速览', pathName: 'overview'},
{title: '工商信息', pathName: 'businfo'},
{title: '股东信息', pathName: 'holderinfo'},
{title: '高管信息', pathName: 'execuinfo'},
{title: '对外投资', pathName: 'overseas'},
{title: '分支机构', pathName: 'branch'}
]},
{title: '财务简析', pathName: 'financial'},
{title: '项目商机', pathName: '', children: [
{title: '土地交易', pathName: 'landtransaction'},
{title: '拟建项目', pathName: 'proposed'},
{title: '专项债项目', pathName: 'bond'},
{title: '招标计划', pathName: 'biddingplan'},
{title: '招标公告', pathName: 'announcement'},
{title: '标讯Pro', pathName: 'tencent'},
{title: '行政许可', pathName: 'administrative'}
]},
{title: '业务往来', pathName: '', children: [
{title: '客户', pathName: 'custom'},
{title: '供应商', pathName: 'supplier'},
{title: '招标代理', pathName: 'bidagency'},
{title: '历史发包', pathName: 'hiscontract'},
{title: '开标记录', pathName: 'bidrecords'}
]},
{title: '城投分析', pathName: '', children: [
{title: '区域经济', pathName: 'regionalEconomies'},
{title: '城投拿地', pathName: 'landAcquisition'},
{title: '同地区城投', pathName: 'sameRegion'}
]},
{title: '风险信息', pathName: '', children: [
{title: '行政处罚', pathName: 'punish'},
{title: '经营异常', pathName: 'businessAnomaly'},
{title: '被执行人', pathName: 'ifThePerson'},
{title: '失信被执行人', pathName: 'dishonesty'},
{title: '裁判文书', pathName: 'judgment'},
{title: '法院公告', pathName: 'courtNotice'},
{title: '开庭公告', pathName: 'openacourtsessionNotice'},
// {title: '信用中国', pathName: ''}
]},
{title: '商务信息', pathName: 'business'},
{title: '招标偏好', pathName: 'preference'},
{title: '合作情况', pathName: 'cooperate'},
{title: '联系人', pathName: 'decisionMaking'},
{title: '跟进记录', pathName: 'gjjl'}
],
sideRoute1: [
{title: '企业概要', pathName: '', children: [
{title: '企业速览', pathName: 'overview'},
{title: '工商信息', pathName: 'businfo'},
{title: '股东信息', pathName: 'holderinfo'},
{title: '高管信息', pathName: 'execuinfo'},
{title: '对外投资', pathName: 'overseas'},
{title: '分支机构', pathName: 'branch'}
]},
{title: '财务简析', pathName: 'financial'},
{title: '项目商机', pathName: '', children: [
{title: '土地交易', pathName: 'landtransaction'},
{title: '拟建项目', pathName: 'proposed'},
{title: '专项债项目', pathName: 'bond'},
{title: '招标计划', pathName: 'biddingplan'},
{title: '招标公告', pathName: 'announcement'},
{title: '标讯Pro', pathName: 'tencent'},
{title: '行政许可', pathName: 'administrative'}
]},
{title: '业务往来', pathName: '', children: [
{title: '客户', pathName: 'custom'},
{title: '供应商', pathName: 'supplier'},
{title: '招标代理', pathName: 'bidagency'},
{title: '历史发包', pathName: 'hiscontract'},
{title: '开标记录', pathName: 'bidrecords'}
]},
{title: '城投分析', pathName: '', children: [
{title: '区域经济', pathName: 'regionalEconomies'},
{title: '城投拿地', pathName: 'landAcquisition'},
{title: '同地区城投', pathName: 'sameRegion'}
]},
{title: '风险信息', pathName: '', children: [
{title: '行政处罚', pathName: 'punish'},
{title: '经营异常', pathName: 'businessAnomaly'},
{title: '被执行人', pathName: 'ifThePerson'},
{title: '失信被执行人', pathName: 'dishonesty'},
{title: '裁判文书', pathName: 'judgment'},
{title: '法院公告', pathName: 'courtNotice'},
{title: '开庭公告', pathName: 'openacourtsessionNotice'},
// {title: '信用中国', pathName: ''}
]},
{title: '商务信息', pathName: 'business'},
{title: '招标偏好', pathName: 'preference'},
{title: '合作情况', pathName: 'cooperate'},
{title: '联系人', pathName: 'decisionMaking'},
{title: '跟进记录', pathName: 'gjjl'}
],
defaultRoute: [],
customer:[
'business',
'preference',
'cooperate',
'decisionMaking',
'gjjl'
],
companys:[
'企业概要',
'财务简析',
'项目商机',
'业务往来',
'城投分析',
'风险信息',
],
uniqueOpened:false,
searchIndex: ''
}
pathName: {
type: String,
default: null
},
computed: {
sideHeight() {
let sideHeight = document.getElementById("detailPart")?document.getElementById("detailPart").offsetHeight:null, bowerHeight = document.body.clientHeight-170 || null
if(this.partBoxHeight<bowerHeight) {
sideHeight = bowerHeight
}else{
sideHeight = '1222'/*this.partBoxHeight*/
}
return sideHeight
},
routeIndex(){
let idx = this.getRouteIdx('', this.pathName) || '0-0'
return idx
}
customerId: {
type: String,
default: ''
},
created() {
this.defaultRoute = JSON.parse(JSON.stringify(this.sideRoute))
isCompany: {
type: Boolean,
default: true
},
watch:{
statisticObj:{
handler(val) {
this.sideRoute = JSON.parse(JSON.stringify(this.defaultRoute))
let arr = JSON.parse(JSON.stringify(val))
for(var i in arr){
for(var j in arr[i]){
switch (j) {
case 'ownershipStructure':
if(arr[i][j]<1){
this.sideRoute[0].children[2].disabled = true;
}
break;
statisticObj:{
type:Object,
default: {}
},
isCustomer: {
type: Boolean,
default: false
}
},
data() {
return {
searchText: '',
sideRoute: [
{title: '企业概要', pathName: '', children: [
{title: '企业速览', pathName: 'overview'},
{title: '工商信息', pathName: 'businfo'},
{title: '股东信息', pathName: 'holderinfo'},
{title: '高管信息', pathName: 'execuinfo'},
{title: '对外投资', pathName: 'overseas'},
{title: '分支机构', pathName: 'branch'}
]},
{title: '财务简析', pathName: 'financial'},
{title: '项目商机', pathName: '', children: [
{title: '土地交易', pathName: 'landtransaction'},
{title: '拟建项目', pathName: 'proposed'},
{title: '专项债项目', pathName: 'bond'},
{title: '招标计划', pathName: 'biddingplan'},
{title: '招标公告', pathName: 'announcement'},
{title: '标讯Pro', pathName: 'tencent'},
{title: '行政许可', pathName: 'administrative'}
]},
{title: '业务往来', pathName: '', children: [
{title: '客户', pathName: 'custom'},
{title: '供应商', pathName: 'supplier'},
{title: '招标代理', pathName: 'bidagency'},
{title: '历史发包', pathName: 'hiscontract'},
{title: '开标记录', pathName: 'bidrecords'}
]},
{title: '城投分析', pathName: '', children: [
{title: '区域经济', pathName: 'regionalEconomies'},
{title: '城投拿地', pathName: 'landAcquisition'},
{title: '同地区城投', pathName: 'sameRegion'}
]},
{title: '风险信息', pathName: '', children: [
{title: '行政处罚', pathName: 'punish'},
{title: '经营异常', pathName: 'businessAnomaly'},
{title: '被执行人', pathName: 'ifThePerson'},
{title: '失信被执行人', pathName: 'dishonesty'},
{title: '裁判文书', pathName: 'judgment'},
{title: '法院公告', pathName: 'courtNotice'},
{title: '开庭公告', pathName: 'openacourtsessionNotice'},
// {title: '信用中国', pathName: ''}
]},
{title: '商务信息', pathName: 'business'},
{title: '招标偏好', pathName: 'preference'},
{title: '合作情况', pathName: 'cooperate'},
{title: '联系人', pathName: 'decisionMaking'},
{title: '跟进记录', pathName: 'gjjl'}
],
sideRoute1: [
{title: '企业概要', pathName: '', children: [
{title: '企业速览', pathName: 'overview'},
{title: '工商信息', pathName: 'businfo'},
{title: '股东信息', pathName: 'holderinfo'},
{title: '高管信息', pathName: 'execuinfo'},
{title: '对外投资', pathName: 'overseas'},
{title: '分支机构', pathName: 'branch'}
]},
{title: '财务简析', pathName: 'financial'},
{title: '项目商机', pathName: '', children: [
{title: '土地交易', pathName: 'landtransaction'},
{title: '拟建项目', pathName: 'proposed'},
{title: '专项债项目', pathName: 'bond'},
{title: '招标计划', pathName: 'biddingplan'},
{title: '招标公告', pathName: 'announcement'},
{title: '标讯Pro', pathName: 'tencent'},
{title: '行政许可', pathName: 'administrative'}
]},
{title: '业务往来', pathName: '', children: [
{title: '客户', pathName: 'custom'},
{title: '供应商', pathName: 'supplier'},
{title: '招标代理', pathName: 'bidagency'},
{title: '历史发包', pathName: 'hiscontract'},
{title: '开标记录', pathName: 'bidrecords'}
]},
{title: '城投分析', pathName: '', children: [
{title: '区域经济', pathName: 'regionalEconomies'},
{title: '城投拿地', pathName: 'landAcquisition'},
{title: '同地区城投', pathName: 'sameRegion'}
]},
{title: '风险信息', pathName: '', children: [
{title: '行政处罚', pathName: 'punish'},
{title: '经营异常', pathName: 'businessAnomaly'},
{title: '被执行人', pathName: 'ifThePerson'},
{title: '失信被执行人', pathName: 'dishonesty'},
{title: '裁判文书', pathName: 'judgment'},
{title: '法院公告', pathName: 'courtNotice'},
{title: '开庭公告', pathName: 'openacourtsessionNotice'},
// {title: '信用中国', pathName: ''}
]},
{title: '商务信息', pathName: 'business'},
{title: '招标偏好', pathName: 'preference'},
{title: '合作情况', pathName: 'cooperate'},
{title: '联系人', pathName: 'decisionMaking'},
{title: '跟进记录', pathName: 'gjjl'}
],
defaultRoute: [],
customer:[
'business',
'preference',
'cooperate',
'decisionMaking',
'gjjl'
],
companys:[
'企业概要',
'财务简析',
'项目商机',
'业务往来',
'城投分析',
'风险信息',
],
uniqueOpened:false,
searchIndex: ''
}
},
computed: {
sideHeight() {
let sideHeight = document.getElementById("detailPart")?document.getElementById("detailPart").offsetHeight:null, bowerHeight = document.body.clientHeight-170 || null
if(this.partBoxHeight<bowerHeight) {
sideHeight = bowerHeight
}else{
sideHeight = '1222'/*this.partBoxHeight*/
}
return sideHeight
},
routeIndex(){
let idx = this.getRouteIdx('', this.pathName) || '0-0'
return idx
}
},
created() {
},
watch:{
statisticObj:{
handler(val) {
this.sideRoute = JSON.parse(JSON.stringify(this.defaultRoute))
let arr = JSON.parse(JSON.stringify(val))
for(var i in arr){
for(var j in arr[i]){
switch (j) {
case 'ownershipStructure':
if(arr[i][j]<1){
this.sideRoute[0].children[2].disabled = true;
}
break;
case 'leadingMember':
if(arr[i][j]<1){
this.sideRoute[0].children[3].disabled = true;
......
......@@ -643,9 +643,9 @@
for (var i in arr) {
if (arr[i].parent) {
if (!arr[i].parent.checked) {
arr[i].hasChildren && cityIds.push(arr[i].value)&&provinceIds.push(arr[i].parent.value);
arr[i].hasChildren && cityIds.push(arr[i].value);
arr[i].hasChildren && this.domicile.push(arr[i].label);
!arr[i].hasChildren && areaIds.push(arr[i].value)&& cityIds.push(arr[i].parent.value)&&provinceIds.push(arr[i].parent.parent.value);
!arr[i].hasChildren && areaIds.push(arr[i].value);
!arr[i].hasChildren && this.domicile.push(arr[i].label);
}
} else {
......
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