评标报告下载

This commit is contained in:
517612449@qq.com
2021-03-02 14:13:29 +08:00
parent 97caf407a7
commit 076edce6ed
12 changed files with 394 additions and 112 deletions

View File

@ -64,4 +64,9 @@ public class BizSupplierRegister extends BaseEntity implements Serializable {
private String newPrice; private String newPrice;
/**
* 下载状态:[0:未下载标书][1:已下载标书][2:已上传投标文件]
*/
@ApiModelProperty(value = "下载状态:[0:未下载标书][1:已下载标书][2:已上传投标文件]")
private String downloadStatus;
} }

View File

@ -15,6 +15,11 @@ public enum ExportExceptionEnum implements BusinessExceptionAssert {
*/ */
FRAME_EXCEPTION_METHOD_IS_NOT_EXIXT(2000002, "方法不存在"), FRAME_EXCEPTION_METHOD_IS_NOT_EXIXT(2000002, "方法不存在"),
FRAME_EXCEPTION_GET_ROOM_DETAIL_FAIL(2000002, "根据评审室获取详细信息失败"),
FRAME_EXCEPTION_GET_TENDERL_FAIL(2000002, "根据评审室供应商信息失败"),
FRAME_EXCEPTION_GET_PROJECT_INFO(2200001, "获取项目信息失败"),
; ;

View File

@ -4,12 +4,15 @@ package com.chinaunicom.mall.ebtp.extend.export.feign;
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse; import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
import com.chinaunicom.mall.ebtp.extend.export.bean.BizAssessRoom; import com.chinaunicom.mall.ebtp.extend.export.bean.BizAssessRoom;
import com.chinaunicom.mall.ebtp.extend.export.feign.factory.ProcessFeignFallbackFactory; import com.chinaunicom.mall.ebtp.extend.export.feign.factory.ProcessFeignFallbackFactory;
import com.chinaunicom.mall.ebtp.extend.export.vo.ResultDetailVO;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam; import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PathVariable;
import java.util.List;
/** /**
* 评审流程 * 评审流程
*/ */

View File

@ -3,10 +3,7 @@ package com.chinaunicom.mall.ebtp.extend.export.feign;
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse; import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
import com.chinaunicom.mall.ebtp.extend.export.bean.*; import com.chinaunicom.mall.ebtp.extend.export.bean.*;
import com.chinaunicom.mall.ebtp.extend.export.feign.factory.ExportServiceFallback; import com.chinaunicom.mall.ebtp.extend.export.feign.factory.ExportServiceFallback;
import com.chinaunicom.mall.ebtp.extend.export.vo.BidEvalDetailSummaryVO; import com.chinaunicom.mall.ebtp.extend.export.vo.*;
import com.chinaunicom.mall.ebtp.extend.export.vo.JuryPrintVO;
import com.chinaunicom.mall.ebtp.extend.export.vo.SupplierRegisterPriceScoreVO;
import com.chinaunicom.mall.ebtp.extend.export.vo.SupplierRegisterVO;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam; import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
@ -120,6 +117,16 @@ public interface RsmsFeignService {
@RequestParam("isReviewMethod") String isReviewMethod, @RequestParam("isReviewMethod") String isReviewMethod,
@RequestBody List<ArchiveLink> list); @RequestBody List<ArchiveLink> list);
/**
* 通过评审室查询detail表数据
*
* @param assessRoomId
*
* @return
*/
@ApiOperation("通过评审室查询detail表数据")
@GetMapping("/v1/reviewresult/queryDetailByRoomId/{assessRoomId}")
BaseResponse<List<ResultDetailVO>> get(@ApiParam(value = "评审室id", required = true) @PathVariable String assessRoomId);
} }

View File

@ -0,0 +1,24 @@
package com.chinaunicom.mall.ebtp.extend.export.feign;
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
import com.chinaunicom.mall.ebtp.extend.export.bean.BizSupplierRegister;
import com.chinaunicom.mall.ebtp.extend.export.feign.factory.TenderFeignFallbackFactory;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import java.util.List;
/**
* 调用 TENDER_SERVICE
*/
@FeignClient(value = "${mconfig.feign.name.tender}", fallbackFactory = TenderFeignFallbackFactory.class)
public interface TenderFeignService {
@ApiOperation("查询评审室下初审投标状态")
@GetMapping("/v1/supplier_register/room/tender/{roomId}")
BaseResponse<List<BizSupplierRegister>> queryRoomTenderCount(@ApiParam(value = "评审室id", required = true) @PathVariable String roomId);
}

View File

@ -4,14 +4,12 @@ import cn.hutool.core.exceptions.ExceptionUtil;
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse; import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
import com.chinaunicom.mall.ebtp.extend.export.bean.*; import com.chinaunicom.mall.ebtp.extend.export.bean.*;
import com.chinaunicom.mall.ebtp.extend.export.feign.RsmsFeignService; import com.chinaunicom.mall.ebtp.extend.export.feign.RsmsFeignService;
import com.chinaunicom.mall.ebtp.extend.export.vo.BidEvalDetailSummaryVO; import com.chinaunicom.mall.ebtp.extend.export.vo.*;
import com.chinaunicom.mall.ebtp.extend.export.vo.JuryPrintVO;
import com.chinaunicom.mall.ebtp.extend.export.vo.SupplierRegisterPriceScoreVO;
import com.chinaunicom.mall.ebtp.extend.export.vo.SupplierRegisterVO;
import feign.hystrix.FallbackFactory; import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -96,6 +94,13 @@ public class ExportServiceFallback implements FallbackFactory<RsmsFeignService>
public BaseResponse<Map<String, List<ArchiveFileReturnVO>>> findReviewReportArchiveList(String sectionId, String isReviewMethod, List<ArchiveLink> list) { public BaseResponse<Map<String, List<ArchiveFileReturnVO>>> findReviewReportArchiveList(String sectionId, String isReviewMethod, List<ArchiveLink> list) {
return null; return null;
} }
@Override
public BaseResponse<List<ResultDetailVO>> get(String assessRoomId) {
log.error("评审室id{}", assessRoomId);
return BaseResponse.fail(new ArrayList<>());
}
}; };
log.error(ExceptionUtil.stacktraceToString(throwable)); log.error(ExceptionUtil.stacktraceToString(throwable));
return null; return null;

View File

@ -0,0 +1,31 @@
package com.chinaunicom.mall.ebtp.extend.export.feign.factory;
import cn.hutool.core.exceptions.ExceptionUtil;
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
import com.chinaunicom.mall.ebtp.extend.export.bean.BizSupplierRegister;
import com.chinaunicom.mall.ebtp.extend.export.feign.TenderFeignService;
import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
@Component
@Slf4j
public class TenderFeignFallbackFactory implements FallbackFactory<TenderFeignService> {
@Override
public TenderFeignService create(Throwable throwable) {
TenderFeignService back = new TenderFeignService() {
@Override
public BaseResponse<List<BizSupplierRegister>> queryRoomTenderCount(String roomId) {
log.error("评审室id{}", roomId);
return BaseResponse.fail(new ArrayList<>());
}
};
log.error(ExceptionUtil.stacktraceToString(throwable));
return back;
}
}

View File

@ -20,7 +20,7 @@ public interface ExportService {
public void doExport(ExportParame param, HttpServletRequest request, HttpServletResponse response); public void doExport(ExportParame param, HttpServletRequest request, HttpServletResponse response);
default File getExportTemplet(String path) { default File getExportTemplet(String path) {
File f = new File("/model/" + path); File f = new File("C:\\Users\\Administrator\\Desktop\\新建文件夹\\doc\\" + path);
return f; return f;
} }

View File

@ -1,13 +1,17 @@
package com.chinaunicom.mall.ebtp.extend.export.service.impl; package com.chinaunicom.mall.ebtp.extend.export.service.impl;
import cn.hutool.core.util.StrUtil;
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse; import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
import com.chinaunicom.mall.ebtp.extend.export.bean.BidEvalDetailDTO; import com.chinaunicom.mall.ebtp.extend.export.bean.*;
import com.chinaunicom.mall.ebtp.extend.export.bean.ExportParame; import com.chinaunicom.mall.ebtp.extend.export.enums.ExportExceptionEnum;
import com.chinaunicom.mall.ebtp.extend.export.feign.ProcessFeignClient;
import com.chinaunicom.mall.ebtp.extend.export.feign.ProjectFeignService;
import com.chinaunicom.mall.ebtp.extend.export.feign.RsmsFeignService; import com.chinaunicom.mall.ebtp.extend.export.feign.RsmsFeignService;
import com.chinaunicom.mall.ebtp.extend.export.feign.TenderFeignService;
import com.chinaunicom.mall.ebtp.extend.export.service.ExportService; import com.chinaunicom.mall.ebtp.extend.export.service.ExportService;
import com.chinaunicom.mall.ebtp.extend.export.service.TemplateFileService; import com.chinaunicom.mall.ebtp.extend.export.service.TemplateFileService;
import com.chinaunicom.mall.ebtp.extend.export.vo.BidEvalDetailSummaryVO;
import com.chinaunicom.mall.ebtp.extend.export.vo.JuryPrintVO; import com.chinaunicom.mall.ebtp.extend.export.vo.JuryPrintVO;
import com.chinaunicom.mall.ebtp.extend.export.vo.ResultDetailVO;
import com.deepoove.poi.XWPFTemplate; import com.deepoove.poi.XWPFTemplate;
import com.deepoove.poi.config.Configure; import com.deepoove.poi.config.Configure;
import com.deepoove.poi.policy.HackLoopTableRenderPolicy; import com.deepoove.poi.policy.HackLoopTableRenderPolicy;
@ -16,8 +20,10 @@ import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.InputStream; import java.io.InputStream;
import java.io.OutputStream; import java.io.OutputStream;
import java.math.BigDecimal;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
@ -32,10 +38,16 @@ import java.util.Map;
public class PbbgExportServiceImpl implements ExportService { public class PbbgExportServiceImpl implements ExportService {
private final RsmsFeignService rsmsFeignService; private final RsmsFeignService rsmsFeignService;
private final TemplateFileService templateFileService; private final TemplateFileService templateFileService;
private final ProcessFeignClient processFeignClient;
private final TenderFeignService tenderFeignService;
private final ProjectFeignService projectFeignClient;
public PbbgExportServiceImpl(RsmsFeignService rsmsFeignService, TemplateFileService templateFileService) { public PbbgExportServiceImpl(RsmsFeignService rsmsFeignService, TemplateFileService templateFileService, ProcessFeignClient processFeignClient, TenderFeignService tenderFeignService, ProjectFeignService projectFeignClient) {
this.rsmsFeignService = rsmsFeignService; this.rsmsFeignService = rsmsFeignService;
this.templateFileService = templateFileService; this.templateFileService = templateFileService;
this.processFeignClient = processFeignClient;
this.tenderFeignService = tenderFeignService;
this.projectFeignClient = projectFeignClient;
} }
/** /**
@ -48,13 +60,53 @@ public class PbbgExportServiceImpl implements ExportService {
@SneakyThrows @SneakyThrows
@Override @Override
public void doExport(ExportParame param, HttpServletRequest request, HttpServletResponse response) { public void doExport(ExportParame param, HttpServletRequest request, HttpServletResponse response) {
//表一假数据 BaseResponse<ProjectRecordVO> proj = projectFeignClient.getProjById(param.getProjectId());
ExportExceptionEnum.FRAME_EXCEPTION_GET_PROJECT_INFO.customValid(!proj.isSuccess());
ExportExceptionEnum.FRAME_EXCEPTION_GET_PROJECT_INFO.assertNotNull(proj.getData());
ProjectRecordVO project = proj.getData();
Map<String, Object> table9 = new HashMap<>();
String zbfs = "";
switch (project.getBidMethodDict()) {
case "procurement_mode_1":
case "procurement_mode_2":
zbfs = "公开招标";
break;
case "procurement_mode_3":
zbfs = "公开比选";
break;
case "procurement_mode_4":
zbfs = "招募";
break;
case "procurement_mode_5":
case "procurement_mode_6":
zbfs = "谈判";
break;
case "procurement_mode_7":
zbfs = "询价";
break;
case "procurement_mode_8":
zbfs = "竞拍";
break;
default:
zbfs = "";
}
BaseResponse<List<BizSupplierRegister>> roomTenderResponse = tenderFeignService.queryRoomTenderCount(param.getAssessRoomId());
ExportExceptionEnum.FRAME_EXCEPTION_GET_TENDERL_FAIL.customValid(!roomTenderResponse.isSuccess());
ExportExceptionEnum.FRAME_EXCEPTION_GET_TENDERL_FAIL.assertNotNull(roomTenderResponse.getData());
List<BizSupplierRegister> registerList = roomTenderResponse.getData();
//表一
List<Map<String, Object>> list1 = new ArrayList<>(); List<Map<String, Object>> list1 = new ArrayList<>();
for (int i = 0; i < 3; i++) { for (int i = 0; i < registerList.size(); i++) {
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>(16);
map.put("num", i); int num = i + 1;
map.put("name", "投标人" + i); BizSupplierRegister register = registerList.get(i);
map.put("type", "已投标"); map.put("num", num);
map.put("name", register.getCompanyName());
map.put("type", StrUtil.isBlank(register.getDownloadStatus()) ? "" : "2".equals(register.getDownloadStatus()) ? "已投递" : "1".equals(register.getDownloadStatus()) ? "已下载" : "未下载");
list1.add(map); list1.add(map);
} }
@ -72,116 +124,78 @@ public class PbbgExportServiceImpl implements ExportService {
//专家人员数据 //专家人员数据
BaseResponse<List<JuryPrintVO>> listBaseResponse = rsmsFeignService.queryReportPrintByRoomId(param.getAssessRoomId()); BaseResponse<List<JuryPrintVO>> listBaseResponse = rsmsFeignService.queryReportPrintByRoomId(param.getAssessRoomId());
ArrayList<Map<String, Object>> list3 = new ArrayList<>(); ArrayList<Map<String, Object>> list3 = new ArrayList<>();
String pbwyhzz = "";
if (listBaseResponse != null && listBaseResponse.getData() != null) { if (listBaseResponse != null && listBaseResponse.getData() != null) {
for (int i = 0; i < listBaseResponse.getData().size(); i++) { List<JuryPrintVO> juryPrintVOList = listBaseResponse.getData();
for (int i = 0; i < juryPrintVOList.size(); i++) {
int num = i + 1;
JuryPrintVO juryPrintVO = juryPrintVOList.get(i);
Map<String, Object> data = new HashMap<>(); Map<String, Object> data = new HashMap<>();
data.put("num", (i + 1)); data.put("num", num);
data.put("name", listBaseResponse.getData().get(i).getName()); data.put("work", juryPrintVO.getWorkunit());
data.put("name", juryPrintVO.getName());
data.put("job", juryPrintVO.getJobTitle());
data.put("unit", juryPrintVO.getWorkunit());
list3.add(data); list3.add(data);
if ("2".equals(juryPrintVO.getDuty())) {
pbwyhzz = juryPrintVO.getName();
}
} }
} }
//表四假数据 BaseResponse<List<ResultDetailVO>> baseResponse = rsmsFeignService.get(param.getAssessRoomId());
ExportExceptionEnum.FRAME_EXCEPTION_GET_ROOM_DETAIL_FAIL.customValid(!baseResponse.isSuccess());
ExportExceptionEnum.FRAME_EXCEPTION_GET_ROOM_DETAIL_FAIL.assertNotNull(baseResponse.getData());
List<ResultDetailVO> resultDetails = baseResponse.getData();
if (resultDetails.isEmpty()) {
return;
}
int size = resultDetails.size();
List<Map<String, Object>> list4 = new ArrayList<>(); List<Map<String, Object>> list4 = new ArrayList<>();
for (int i = 0; i < 4; i++) {
Map<String, Object> map = new HashMap<>();
map.put("num", i);
map.put("tbr", "投标人" + i);
map.put("jg", "结果" + i);
list4.add(map);
}
//表五假数据
List<Map<String, Object>> list5 = new ArrayList<>(); List<Map<String, Object>> list5 = new ArrayList<>();
for (int i = 0; i < 4; i++) {
Map<String, Object> map = new HashMap<>();
map.put("num", i);
map.put("zg", "没资格");
map.put("sm", "不合格理由");
list5.add(map);
}
BidEvalDetailDTO bidEvalDetailDTO = new BidEvalDetailDTO();
bidEvalDetailDTO.setAssessRoomId(param.getAssessRoomId());
bidEvalDetailDTO.setReviewTurnId(param.getReviewTurnId());
bidEvalDetailDTO.setReviewType(param.getReviewType());
BaseResponse<Map<String, List<BidEvalDetailSummaryVO>>> list = rsmsFeignService.findCategoryResultSummary(bidEvalDetailDTO);
//商务数据
List<BidEvalDetailSummaryVO> respondlist1 = list.getData().get("1");
//服务数据,或技术
List<BidEvalDetailSummaryVO> respondlist2 = list.getData().get("5");
//价格数据
List<BidEvalDetailSummaryVO> respondlist3 = list.getData().get("0");
// 综合汇总 表6和表8一份数据
List<BidEvalDetailSummaryVO> all1 = new ArrayList<>();
respondlist1.forEach(o -> {
BidEvalDetailSummaryVO object = new BidEvalDetailSummaryVO();
object.setSupplierRegisterId(o.getSupplierRegisterId());
object.setSupplierRegisterName(o.getSupplierRegisterName());
// object.setBusinessAllScore(o.getFinalScore());
all1.add(object);
});
all1.forEach(x -> {
respondlist2.forEach(y -> {
if (x.getSupplierRegisterId().equals(y.getSupplierRegisterId())) {
// x.setServiceAllScore(y.getFinalScore());
}
});
respondlist3.forEach(z -> {
if (x.getSupplierRegisterId().equals(z.getSupplierRegisterId())) {
// x.setPriceAllScore(z.getFinalScore());
}
});
// BigDecimal allPrice = (x.getBusinessAllScore().add(x.getServiceAllScore()).add(x.getPriceAllScore())).divide(BigDecimal.valueOf(3), 2, BigDecimal.ROUND_HALF_UP);
// x.setAllScore(allPrice);
});
//表六 详细评审数据
List<Map<String, Object>> list6 = new ArrayList<>(); List<Map<String, Object>> list6 = new ArrayList<>();
for (int i = 0; i < all1.size(); i++) {
Map<String, Object> map = new HashMap<>();
map.put("num", (i + 1));
map.put("tbr", all1.get(i).getSupplierRegisterName());
// map.put("js", all1.get(i).getServiceAllScore());
// map.put("sw", all1.get(i).getBusinessAllScore());
list6.add(map);
}
//表七 价格评审数据
List<Map<String, Object>> list7 = new ArrayList<>(); List<Map<String, Object>> list7 = new ArrayList<>();
for (int i = 0; i < 3; i++) {
Map<String, Object> map = new HashMap<>();
map.put("num", i);
map.put("tbr", all1.get(i).getSupplierRegisterName());
// map.put("bj", all1.get(i).getPriceAllScore());
map.put("psjg", "");
map.put("jgdf", "");
list7.add(map);
}
//表八 评审总结数据
List<Map<String, Object>> list8 = new ArrayList<>(); List<Map<String, Object>> list8 = new ArrayList<>();
for (int i = 0; i < all1.size(); i++) { for (int i = 0; i < size; i++) {
Map<String, Object> map = new HashMap<>(); int num = i + 1;
map.put("num", (i + 1)); ResultDetailVO detail = resultDetails.get(i);
map.put("tbr", all1.get(i).getSupplierRegisterName()); String tbr = detail.getCompanyName();
// map.put("sw", all1.get(i).getBusinessAllScore()); Map<String, Object> map = new HashMap<>(16);
// map.put("js", all1.get(i).getServiceAllScore()); //表4初步评审结果 投标人,投标结果
// map.put("jg", all1.get(i).getPriceAllScore()); map.put("num", num);
// map.put("zhdf", all1.get(i).getAllScore()); map.put("tbr", tbr);
map.put("bj", ""); map.put("jg", detail.getFirstRvwResult() == null ? "" : detail.getFirstRvwResult() == 0 ? "未通过" : "通过");
list4.add(map);
//表六 详细评审数据 投标人,技术分,商务分
map.put("js", StrUtil.isNotBlank(detail.getTechnicalScore()) ? detail.getTechnicalScore() : "");
map.put("sw", StrUtil.isNotBlank(detail.getBusinessScore()) ? detail.getBusinessScore() : "");
list6.add(map);
//表七 价格评审数据 投标人,投标价,评审价格,价格得分
map.put("bj", detail.getPrice() == null ? BigDecimal.ZERO : detail.getPrice());
map.put("psjg", detail.getPriceReview() == null ? BigDecimal.ZERO : detail.getPriceReview());
map.put("jgdf", StrUtil.isNotBlank(detail.getPriceScore()) ? detail.getPriceScore() : "");
list7.add(map);
//表八 评审总结数据
map.put("jgdf2", StrUtil.isNotBlank(detail.getPriceScore()) ? detail.getPriceScore() : "");
map.put("zhdf", StrUtil.isNotBlank(detail.getTotalScore()) ? detail.getTotalScore() : "");
list8.add(map); list8.add(map);
} }
String finalZbfs = zbfs;
String finalPbwyhzz = pbwyhzz;
Map<String, Object> all = new HashMap<String, Object>() {{ Map<String, Object> all = new HashMap<String, Object>() {{
put("table1", list1); put("table1", list1);
put("table2", list2); put("table2", list2);
@ -191,6 +205,10 @@ public class PbbgExportServiceImpl implements ExportService {
put("table6", list6); put("table6", list6);
put("table7", list7); put("table7", list7);
put("table8", list8); put("table8", list8);
put("zbdljg", project.getTenderAgencyName());
put("zbbh", project.getEbpProjectNumber());
put("zbfs", finalZbfs);
put("pbwyhzz", finalPbwyhzz);
}}; }};
@ -209,6 +227,7 @@ public class PbbgExportServiceImpl implements ExportService {
InputStream file = templateFileService.getExportTemplet("pbbg"); InputStream file = templateFileService.getExportTemplet("pbbg");
// File file = getExportTemplet("评标报告.docx");
XWPFTemplate template = XWPFTemplate.compile(file, config).render(all); XWPFTemplate template = XWPFTemplate.compile(file, config).render(all);
String fileName = new String("评标报告.docx".getBytes(StandardCharsets.UTF_8), StandardCharsets.ISO_8859_1); String fileName = new String("评标报告.docx".getBytes(StandardCharsets.UTF_8), StandardCharsets.ISO_8859_1);
@ -217,4 +236,26 @@ public class PbbgExportServiceImpl implements ExportService {
template.write(os); template.write(os);
} }
private List<ArchiveLink> getFirstArchiveLinks() {
List<ArchiveLink> archiveLinks = new ArrayList<>();
//初步评审表URL
archiveLinks.add(new ArchiveLink().setId("1").setArchiveDirectory("1"));
return archiveLinks;
}
private List<ArchiveLink> getDetailArchiveLinks() {
List<ArchiveLink> archiveLinks = new ArrayList<>();
//详细评审表URL
// archiveLinks.add(new ArchiveLink().setId("2").setArchiveDirectory("2"));
//专家打分表URL
archiveLinks.add(new ArchiveLink().setId("3").setArchiveDirectory("3"));
//价格打分表URL
archiveLinks.add(new ArchiveLink().setId("4").setArchiveDirectory("4"));
//打分汇总表URL
archiveLinks.add(new ArchiveLink().setId("5").setArchiveDirectory("5"));
//评审报告URL
// archiveLinks.add(new ArchiveLink().setId("6").setArchiveDirectory("6"));
return archiveLinks;
}
} }

View File

@ -0,0 +1,160 @@
package com.chinaunicom.mall.ebtp.extend.export.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 实体类 BizRsmsReviewResultDetail
*
* @author fqj
*/
@Data
@Accessors(chain = true)
@ApiModel
public class ResultDetailVO implements Serializable {
private static final Long serialVersionUID = 1L;
/**
*
*/
@ApiModelProperty(value = "")
private String id;
/**
* 供应商id
*/
@ApiModelProperty(value = " 供应商id")
private String companyId;
/**
* 供应商名称
*/
@ApiModelProperty(value = "供应商名称")
private String companyName;
/**
* 是否通过初审0未通过1通过
*/
@ApiModelProperty(value = "是否通过初审0未通过1通过")
private Integer firstRvwResult;
/**
* 排序
*/
@ApiModelProperty(value = "排序")
private Integer sort;
/**
* 投标价
*/
@ApiModelProperty(value = "投标价")
private BigDecimal price;
/**
* 评审价
*/
@ApiModelProperty(value = "评审价")
private BigDecimal priceReview;
/**
* 商务得分
*/
@ApiModelProperty(value = "商务得分")
private String businessScore;
/**
* 技术得分
*/
@ApiModelProperty(value = "技术得分")
private String technicalScore;
/**
* 服务得分
*/
@ApiModelProperty(value = "服务得分")
private String serviceScore;
/**
* 价格得分
*/
@ApiModelProperty(value = "价格得分")
private String priceScore;
/**
* 综合得分
*/
@ApiModelProperty(value = "综合得分")
private String totalScore;
/**
* 商务得分
*/
@ApiModelProperty(value = "商务得分")
private String firstBusinessScore;
/**
* 技术得分
*/
@ApiModelProperty(value = "技术得分")
private String firstTechnicalScore;
/**
* 服务得分
*/
@ApiModelProperty(value = "服务得分")
private String firstServiceScore;
/**
* 综合得分
*/
@ApiModelProperty(value = "综合得分")
private String firstTotalScore;
/**
* 拟签约金额(不含增值税)(元)
*/
@ApiModelProperty(value = "拟签约金额(不含增值税)(元)")
private BigDecimal contractedMoney;
/**
* 拟签约金额(含增值税)(元)
*/
@ApiModelProperty(value = "拟签约金额(含增值税)(元)")
private BigDecimal contractedMoneyTax;
/**
* 增值税税率(%
*/
@ApiModelProperty(value = "增值税税率(%")
private BigDecimal taxRate;
/**
* 增值税金额(元)
*/
@ApiModelProperty(value = "增值税金额(元)")
private BigDecimal taxRatePrice;
/**
* 是否中标候选人( 0:否 1:是)
*/
@ApiModelProperty(value = "是否中标候选人( 0:否 1:是)")
private Integer winnerCandidate;
/**
* 备注
*/
@ApiModelProperty(value = "备注")
private String remarks;
/**
* 专家打分json格式
*/
@ApiModelProperty(value = "专家打分json格式")
private String membersScore;
}

View File

@ -150,6 +150,7 @@ mconfig:
project: biz-service-ebtp-project #项目服务 project: biz-service-ebtp-project #项目服务
resps: biz-service-ebtp-resps #应答结构化服务 resps: biz-service-ebtp-resps #应答结构化服务
rsms: biz-service-ebtp-rsms #评审结构化服务 rsms: biz-service-ebtp-rsms #评审结构化服务
tender: biz-service-ebtp-tender #投标服务
# 用户暴露给 prometheus 的健康数据 # 用户暴露给 prometheus 的健康数据
management: management: