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;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson2.JSONObject;
import com.dsk.common.core.controller.BaseController;
import com.dsk.common.core.domain.AjaxResult;
import com.dsk.common.core.domain.R;
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.JskCombineSearchDto;
import com.dsk.system.domain.dsk.vo.JskCombineBidProjectExportVo;
import com.dsk.system.domain.dsk.vo.JskCombineWinBidProjectExportVo;
import com.dsk.system.dskService.JskCombineInfoService;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.util.IOUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 集团户相关信息
*
* @author lcl
* @create 2023/8/7
*/
......@@ -59,6 +68,7 @@ public class JskCombineInfoController extends BaseController {
public TableDataInfo certificateList(@RequestBody JskCombineSearchDto dto) throws Exception {
return baseService.certificateList(dto);
}
/**
* 集团成员资质列表
*/
......@@ -138,4 +148,28 @@ public class JskCombineInfoController extends BaseController {
public AjaxResult centralEnterprseSocialPage(@RequestBody JSONObject 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 @@
hzqkList:[],
creditLevel:[],
chartDom: '',
myChart: '',
option: '',
chartDom1: '',
myChart1: '',
option1: '',
pageNum:1,
pageSize:10,
recordlist:[],
......@@ -234,19 +230,7 @@
this.getFollowList()
},
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: {
getData(){
......@@ -285,7 +269,6 @@
pageNum:this.pageNum,//页码
pageSize:this.pageSize,
}
console.log(this.params)
if(this.params.startTime){
param.startTime=this.params.startTime
}
......@@ -302,13 +285,6 @@
})
})
},
resizeEcharts (){
const self = this
setTimeout(function(){ //图表跟随页面大小变化宽度
self.myChart.resize()
self.myChart1.resize()
}, 10)
},
initChart(list){
let data=[]
if(list.length > 10){
......@@ -318,8 +294,10 @@
}else {
data=list
}
this.$nextTick(()=>{
let myChart = echarts.init(document.getElementById("hzqk-echarts"))
//业主单位合作情况
this.option ={
let option ={
tooltip: {
trigger: 'axis',
axisPointer: {
......@@ -424,11 +402,17 @@
}
]
}
this.option && this.myChart.setOption(this.option)
myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
})
},
initChart1(data){
this.$nextTick(()=>{
let myChart = echarts.init(document.getElementById("zxpj-echarts"))
//客户资信评级
this.option1 = {
let option = {
tooltip: {
trigger: 'axis',
axisPointer: {
......@@ -473,12 +457,18 @@
return '客户数量 '+value
}
},
itemStyle:{
normal: {
barBorderRadius: [9, 9, 0, 0],
color: '#165DFF'
}
itemStyle: {
normal:{
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
offset: 0,
color: '#56A5FF'
}, {
offset: 1,
color: '#1B8EFF'
}]),
barBorderRadius:[20,20, 0, 0]
}
},
}
],
......@@ -489,7 +479,11 @@
},
}
}
this.option1 && this.myChart1.setOption(this.option1)
myChart.setOption(option);
window.addEventListener("resize", function () {
myChart.resize();//图表跟随页面大小变化宽度
});
})
},
handleCurrentChange(val) {
this.pageNum=1;
......
......@@ -20,6 +20,10 @@ public class JskCombineSearchDto implements Serializable {
*/
@NotNull(message = "集团id不能为空!")
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 {
}
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 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);
}
......
package com.dsk.system.dskService;
import cn.hutool.core.bean.BeanException;
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.dsk.common.core.domain.AjaxResult;
import com.dsk.common.core.domain.R;
import com.dsk.common.core.page.TableDataInfo;
import com.dsk.common.exception.ServiceException;
import com.dsk.common.utils.DskOpenApiUtil;
import com.dsk.system.domain.dsk.dto.JskCombineCertificateDto;
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 org.apache.commons.collections4.MapUtils;
import org.apache.ibatis.util.MapUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
......@@ -81,7 +81,7 @@ public class JskCombineInfoService {
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));
// if (!ObjectUtils.isEmpty(map.get("data"))) {
// Map<String, Object> data = BeanUtil.beanToMap(map.get("data"));
......@@ -141,4 +141,65 @@ public class JskCombineInfoService {
Map<String, Object> map = dskOpenApiUtil.requestBody("/nationzj/enterprice/centralEnterprse/social/page", object);
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