Commit 1593724c authored by yht15023815643's avatar yht15023815643

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

parents 1f8f212d a8339010
package com.dsk.web.controller.dsk; package com.dsk.web.controller.dsk;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson2.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.dsk.common.core.controller.BaseController; import com.dsk.common.core.controller.BaseController;
import com.dsk.common.core.domain.AjaxResult; import com.dsk.common.core.domain.AjaxResult;
import com.dsk.common.core.domain.R; import com.dsk.common.core.domain.R;
import com.dsk.common.core.page.TableDataInfo; import com.dsk.common.core.page.TableDataInfo;
import com.dsk.common.utils.poi.ExcelUtil;
import com.dsk.system.domain.dsk.dto.JskCombineCertificateDto; import com.dsk.system.domain.dsk.dto.JskCombineCertificateDto;
import com.dsk.system.domain.dsk.dto.JskCombineSearchDto; import com.dsk.system.domain.dsk.dto.JskCombineSearchDto;
import com.dsk.system.domain.dsk.vo.JskCombineBidProjectExportVo;
import com.dsk.system.domain.dsk.vo.JskCombineWinBidProjectExportVo;
import com.dsk.system.dskService.JskCombineInfoService; import com.dsk.system.dskService.JskCombineInfoService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.poi.util.IOUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletResponse;
import java.util.Date;
import java.util.List;
import java.util.Map;
/** /**
* 集团户相关信息 * 集团户相关信息
*
* @author lcl * @author lcl
* @create 2023/8/7 * @create 2023/8/7
*/ */
...@@ -59,6 +68,7 @@ public class JskCombineInfoController extends BaseController { ...@@ -59,6 +68,7 @@ public class JskCombineInfoController extends BaseController {
public TableDataInfo certificateList(@RequestBody JskCombineSearchDto dto) throws Exception { public TableDataInfo certificateList(@RequestBody JskCombineSearchDto dto) throws Exception {
return baseService.certificateList(dto); return baseService.certificateList(dto);
} }
/** /**
* 集团成员资质列表 * 集团成员资质列表
*/ */
...@@ -138,4 +148,28 @@ public class JskCombineInfoController extends BaseController { ...@@ -138,4 +148,28 @@ public class JskCombineInfoController extends BaseController {
public AjaxResult centralEnterprseSocialPage(@RequestBody JSONObject object) { public AjaxResult centralEnterprseSocialPage(@RequestBody JSONObject object) {
return baseService.centralEnterprseSocialPage(object); return baseService.centralEnterprseSocialPage(object);
} }
/**
* 导出中标业绩
*/
@PostMapping("/export/win/bid")
@PreAuthorize("@ss.hasPermi('combine:info:export:win:bid')")
public void exportWinBid(@RequestBody JskCombineSearchDto dto, HttpServletResponse response) {
List<JskCombineWinBidProjectExportVo> list = baseService.exportWinBid(dto);
ExcelUtil<JskCombineWinBidProjectExportVo> util = new ExcelUtil<>(JskCombineWinBidProjectExportVo.class);
util.exportExcel(response, list, "集团中标", dto.getCombineName().concat("中标业绩清单"), true);
// String fileName = util.localInit(list, "集团中标", dto.getCombineName().concat("中标业绩清单"), true);
}
/**
* 导出招标业绩
*/
@PostMapping("/export/bid")
@PreAuthorize("@ss.hasPermi('combine:info:export:bid')")
public void exportBid(@RequestBody JskCombineSearchDto dto, HttpServletResponse response) {
List<JskCombineBidProjectExportVo> list = baseService.exportBid(dto);
ExcelUtil<JskCombineBidProjectExportVo> util = new ExcelUtil<>(JskCombineBidProjectExportVo.class);
util.exportExcel(response, list, "集团招标", dto.getCombineName().concat("招标公告清单"), true);
}
} }
...@@ -207,11 +207,7 @@ ...@@ -207,11 +207,7 @@
hzqkList:[], hzqkList:[],
creditLevel:[], creditLevel:[],
chartDom: '', chartDom: '',
myChart: '',
option: '',
chartDom1: '', chartDom1: '',
myChart1: '',
option1: '',
pageNum:1, pageNum:1,
pageSize:10, pageSize:10,
recordlist:[], recordlist:[],
...@@ -234,19 +230,7 @@ ...@@ -234,19 +230,7 @@
this.getFollowList() this.getFollowList()
}, },
mounted(){ mounted(){
this.$nextTick(()=>{
this.chartDom = document.getElementById("hzqk-echarts")
this.myChart = echarts.init(this.chartDom)
this.chartDom1 = document.getElementById("zxpj-echarts")
this.myChart1 = echarts.init(this.chartDom1)
})
window.addEventListener("resize", this.resizeEcharts);
},
beforeDestroy(){
window.removeEventListener("resize", this. resizeEcharts);
},
activated() {
this.resizeEcharts()
}, },
methods: { methods: {
getData(){ getData(){
...@@ -285,7 +269,6 @@ ...@@ -285,7 +269,6 @@
pageNum:this.pageNum,//页码 pageNum:this.pageNum,//页码
pageSize:this.pageSize, pageSize:this.pageSize,
} }
console.log(this.params)
if(this.params.startTime){ if(this.params.startTime){
param.startTime=this.params.startTime param.startTime=this.params.startTime
} }
...@@ -302,13 +285,6 @@ ...@@ -302,13 +285,6 @@
}) })
}) })
}, },
resizeEcharts (){
const self = this
setTimeout(function(){ //图表跟随页面大小变化宽度
self.myChart.resize()
self.myChart1.resize()
}, 10)
},
initChart(list){ initChart(list){
let data=[] let data=[]
if(list.length > 10){ if(list.length > 10){
...@@ -318,8 +294,10 @@ ...@@ -318,8 +294,10 @@
}else { }else {
data=list data=list
} }
this.$nextTick(()=>{
let myChart = echarts.init(document.getElementById("hzqk-echarts"))
//业主单位合作情况 //业主单位合作情况
this.option ={ let option ={
tooltip: { tooltip: {
trigger: 'axis', trigger: 'axis',
axisPointer: { axisPointer: {
...@@ -424,11 +402,17 @@ ...@@ -424,11 +402,17 @@
} }
] ]
} }
this.option && this.myChart.setOption(this.option) myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
})
}, },
initChart1(data){ initChart1(data){
this.$nextTick(()=>{
let myChart = echarts.init(document.getElementById("zxpj-echarts"))
//客户资信评级 //客户资信评级
this.option1 = { let option = {
tooltip: { tooltip: {
trigger: 'axis', trigger: 'axis',
axisPointer: { axisPointer: {
...@@ -473,12 +457,18 @@ ...@@ -473,12 +457,18 @@
return '客户数量 '+value return '客户数量 '+value
} }
}, },
itemStyle:{ itemStyle: {
normal: { normal:{
barBorderRadius: [9, 9, 0, 0], color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
color: '#165DFF' offset: 0,
} color: '#56A5FF'
}, {
offset: 1,
color: '#1B8EFF'
}]),
barBorderRadius:[20,20, 0, 0]
} }
},
} }
], ],
...@@ -489,7 +479,11 @@ ...@@ -489,7 +479,11 @@
}, },
} }
} }
this.option1 && this.myChart1.setOption(this.option1) myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
})
}, },
handleCurrentChange(val) { handleCurrentChange(val) {
this.pageNum=1; this.pageNum=1;
......
...@@ -20,6 +20,10 @@ public class JskCombineSearchDto implements Serializable { ...@@ -20,6 +20,10 @@ public class JskCombineSearchDto implements Serializable {
*/ */
@NotNull(message = "集团id不能为空!") @NotNull(message = "集团id不能为空!")
private String combineId; private String combineId;
/**
* 集团名称
*/
private String combineName;
/** /**
* 筛选参数 * 筛选参数
*/ */
......
package com.dsk.system.domain.dsk.vo;
import com.dsk.common.annotation.Excel;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 集团中标业绩
* @author lcl
* @create 2023/8/28
*/
@Data
public class JskCombineBidProjectExportVo implements Serializable {
@Excel(name = "序号", width = 6)
private Integer id;
@Excel(name = "招标发布时间", width = 15, dateFormat = "yyyy/MM/dd")
private Date bidTime;
@Excel(name = "招标成员", width = 30)
private String companyName;
@Excel(name = "持股比例", suffix = "%" , width = 15)
private Double stockPercent;
@Excel(name = "成员等级", width = 15)
private String memberLevel;
@Excel(name = "项目名称", width = 50)
private String projectName;
@Excel(name = "预算金额" , suffix = "万元")
private Double bidAmount;
@Excel(name = "项目地区", width = 20)
private String address;
@Excel(name = "招标采购分类", width = 15)
private String bidType;
@Excel(name = "项目类型", width = 15)
private String projectType;
@Excel(name = "代理单位", width = 30)
private String projectUnit;
}
package com.dsk.system.domain.dsk.vo;
import com.dsk.common.annotation.Excel;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 集团中标业绩
* @author lcl
* @create 2023/8/28
*/
@Data
public class JskCombineWinBidProjectExportVo implements Serializable {
@Excel(name = "序号", width = 6)
private Integer id;
@Excel(name = "中标时间", width = 15, dateFormat = "yyyy/MM/dd")
private Date bidTime;
@Excel(name = "成员名称", width = 30)
private String companyName;
@Excel(name = "持股比例", suffix = "%" , width = 15)
private Double stockPercent;
@Excel(name = "成员等级", width = 15)
private String memberLevel;
@Excel(name = "项目名称", width = 50)
private String projectName;
@Excel(name = "中标金额" , suffix = "万元")
private Double bidAmount;
@Excel(name = "中标地区", width = 20)
private String address;
@Excel(name = "业绩类型", width = 15)
private String boundType;
@Excel(name = "项目类型", width = 15)
private String projectType;
@Excel(name = "业主单位", width = 30)
private String projectUnit;
}
...@@ -57,8 +57,41 @@ public class EnterpriseBussinessService { ...@@ -57,8 +57,41 @@ public class EnterpriseBussinessService {
} }
public TableDataInfo clientPage(EnterpriseBussinessClientPageBody body) throws Exception { public TableDataInfo clientPage(EnterpriseBussinessClientPageBody body) throws Exception {
if (body.isVaildCid()) return new TableDataInfo(new ArrayList<>(), 0); if (body.isVaildCid()) {
return new TableDataInfo(new ArrayList<>(), 0);
}
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/enterpriseBussiness/clientPage2", BeanUtil.beanToMap(body, false, false)); Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/enterpriseBussiness/clientPage2", BeanUtil.beanToMap(body, false, false));
Map data = MapUtils.getMap(map, "data", null);
List<Object> list = CommonUtils.assertAsArray(MapUtils.getObject(data, "list", ""));
if (CollectionUtils.isEmpty(list)) {
return new TableDataInfo(list, 0);
}
ArrayList<Long> cIds = new ArrayList<>();
for (Object dataMap : list) {
cIds.add(MapUtils.getLong(CommonUtils.assertAsMap(dataMap), "companyId"));
}
HashMap<String, Object> paramMap = new HashMap<>();
paramMap.put("ids", cIds);
Map<String, Object> uipIdMap = dskOpenApiUtil.requestBody("/operate/enterprise/getUipIdByCid", paramMap);
Object uipIdData = uipIdMap.get("data");
List<Map<String, Object>> mapList = new ArrayList<>();
if (ObjectUtil.isNotEmpty(uipIdData)) {
mapList = (List<Map<String, Object>>)uipIdData;
}
for (Object dataMap : list) {
Map<String, Object> companyMap = CommonUtils.assertAsMap(dataMap);
Long cusCompanyId = MapUtils.getLong(companyMap, "companyId", 0L);
companyMap.put("uipId", null);
for (Map<String, Object> m : mapList) {
String uipId = MapUtils.getString(m, "uipId", null);
Long companyId = MapUtils.getLong(m, "companyId", 0L);
if (cusCompanyId.equals(companyId)) {
companyMap.put("uipId", uipId);
}
}
}
return dskOpenApiUtil.responsePage(map); return dskOpenApiUtil.responsePage(map);
} }
......
package com.dsk.system.dskService; package com.dsk.system.dskService;
import cn.hutool.core.bean.BeanException;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.map.MapUtil;
import com.alibaba.fastjson2.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.dsk.common.core.domain.AjaxResult; import com.dsk.common.core.domain.AjaxResult;
import com.dsk.common.core.domain.R; import com.dsk.common.core.domain.R;
import com.dsk.common.core.page.TableDataInfo; import com.dsk.common.core.page.TableDataInfo;
import com.dsk.common.exception.ServiceException;
import com.dsk.common.utils.DskOpenApiUtil; import com.dsk.common.utils.DskOpenApiUtil;
import com.dsk.system.domain.dsk.dto.JskCombineCertificateDto; import com.dsk.system.domain.dsk.dto.JskCombineCertificateDto;
import com.dsk.system.domain.dsk.dto.JskCombineSearchDto; import com.dsk.system.domain.dsk.dto.JskCombineSearchDto;
import com.dsk.system.domain.dsk.vo.JskCombineBidProjectExportVo;
import com.dsk.system.domain.dsk.vo.JskCombineWinBidProjectExportVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.MapUtils; import org.apache.commons.collections4.MapUtils;
import org.apache.ibatis.util.MapUtil;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -81,7 +81,7 @@ public class JskCombineInfoService { ...@@ -81,7 +81,7 @@ public class JskCombineInfoService {
return dskOpenApiUtil.responsePage(map); return dskOpenApiUtil.responsePage(map);
} }
public TableDataInfo menberCertificateList(JskCombineCertificateDto dto)throws Exception { public TableDataInfo menberCertificateList(JskCombineCertificateDto dto) throws Exception {
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/combine/member/certificateList", BeanUtil.beanToMap(dto, false, false)); Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/combine/member/certificateList", BeanUtil.beanToMap(dto, false, false));
// if (!ObjectUtils.isEmpty(map.get("data"))) { // if (!ObjectUtils.isEmpty(map.get("data"))) {
// Map<String, Object> data = BeanUtil.beanToMap(map.get("data")); // Map<String, Object> data = BeanUtil.beanToMap(map.get("data"));
...@@ -141,4 +141,65 @@ public class JskCombineInfoService { ...@@ -141,4 +141,65 @@ public class JskCombineInfoService {
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/enterprice/centralEnterprse/social/page", object); Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/enterprice/centralEnterprse/social/page", object);
return BeanUtil.toBean(map, AjaxResult.class); return BeanUtil.toBean(map, AjaxResult.class);
} }
public List<JskCombineWinBidProjectExportVo> exportWinBid(JskCombineSearchDto dto) {
if (ObjectUtils.isEmpty(dto.getPageSize())) throw new ServiceException("导出条数不能为空!");
if (dto.getPageSize() > 2000) dto.setPageSize(2000);
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/combine/businessList", BeanUtil.beanToMap(dto, false, false));
if (ObjectUtils.isEmpty(map.get("data"))) throw new ServiceException("导出失败,系统错误!");
Map<String, Object> data = BeanUtil.beanToMap(map.get("data"));
if (ObjectUtils.isEmpty(data.get("list"))) throw new ServiceException("导出失败,系统错误!");
List<Map<String, Object>> list = (List<Map<String, Object>>) data.get("list");
if (ObjectUtils.isEmpty(list)) throw new ServiceException("导出失败,无数据导出!");
List<JskCombineWinBidProjectExportVo> result = new ArrayList<>();
for (int i = 0; i < list.size(); i++) {
JskCombineWinBidProjectExportVo vo = new JskCombineWinBidProjectExportVo();
vo.setId(i + 1);
vo.setBidTime(MapUtil.getDate(list.get(i),"bidTime"));
vo.setCompanyName(MapUtil.getStr(list.get(i),"companyName"));
vo.setStockPercent(MapUtil.getDouble(list.get(i),"stockPercent"));
vo.setMemberLevel(MapUtil.getStr(list.get(i),"memberLevel"));
vo.setProjectName(MapUtil.getStr(list.get(i),"projectName"));
vo.setBidAmount(MapUtil.getDouble(list.get(i),"bidAmount"));
vo.setAddress(MapUtil.getStr(list.get(i),"address"));
vo.setBoundType(MapUtil.getStr(list.get(i),"boundType"));
vo.setProjectType(MapUtil.getStr(list.get(i),"projectType"));
vo.setProjectUnit(MapUtil.getStr(list.get(i),"projectUnit"));
result.add(vo);
}
return result;
}
public List<JskCombineBidProjectExportVo> exportBid(JskCombineSearchDto dto) {
if (ObjectUtils.isEmpty(dto.getPageSize())) throw new ServiceException("导出条数不能为空!");
if (dto.getPageSize() > 2000) dto.setPageSize(2000);
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/combine/businessList", BeanUtil.beanToMap(dto, false, false));
if (ObjectUtils.isEmpty(map.get("data"))) throw new ServiceException("导出失败,系统错误!");
Map<String, Object> data = BeanUtil.beanToMap(map.get("data"));
if (ObjectUtils.isEmpty(data.get("list"))) throw new ServiceException("导出失败,系统错误!");
List<Map<String, Object>> list = (List<Map<String, Object>>) data.get("list");
if (ObjectUtils.isEmpty(list)) throw new ServiceException("导出失败,无数据导出!");
List<JskCombineBidProjectExportVo> result = new ArrayList<>();
for (int i = 0; i < list.size(); i++) {
JskCombineBidProjectExportVo vo = new JskCombineBidProjectExportVo();
vo.setId(i + 1);
vo.setBidTime(MapUtil.getDate(list.get(i),"bidTime"));
vo.setCompanyName(MapUtil.getStr(list.get(i),"companyName"));
vo.setStockPercent(MapUtil.getDouble(list.get(i),"stockPercent"));
vo.setMemberLevel(MapUtil.getStr(list.get(i),"memberLevel"));
vo.setProjectName(MapUtil.getStr(list.get(i),"projectName"));
vo.setBidAmount(MapUtil.getDouble(list.get(i),"bidAmount"));
vo.setAddress(MapUtil.getStr(list.get(i),"address"));
vo.setBidType(MapUtil.getStr(list.get(i),"boundType"));
vo.setProjectType(MapUtil.getStr(list.get(i),"projectType"));
vo.setProjectUnit(MapUtil.getStr(list.get(i),"projectUnit"));
result.add(vo);
}
return result;
}
} }
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