Commit 66b6ca1d authored by liangyb's avatar liangyb

#272 切换含税不含税导致界面报告有问题

parent c37b8c75
#\u7cfb\u7edf\u7248\u672c
version=OBEV7.7.9.
version=OBEV7.7.9.20240611
keyCharacter=
#\u6b63\u5f0f\u7248\u672c\u68c0\u67e5\u5347\u7ea7\u7f16\u7801
versionUpdateType=OBE_FinalService
......
......@@ -285,8 +285,6 @@ public abstract class BaseDateSet implements IWordDataSet{
if(wordTable.isCross()){
if(null != wordTable.getRowList()){
assembleListDataSet(wordTable.getRowList(), wordTable.getParams());
}else if(null != wordTable.getColList()){
assembleListDataSet(wordTable.getRowList(), wordTable.getParams());
}
}else{
if(null != wordTable.getRowList()){
......@@ -824,7 +822,6 @@ public abstract class BaseDateSet implements IWordDataSet{
String[] fields;
if(isStruct) {
fields = new String[] {
"投标人名称 &&supplierName0",
"开标价格 --(含税)&&bidPrice0",
"开标价格 --(不含税)&&bidPrice1",
"修正后投标报价(含税)&&evaluationPrice0",
......@@ -836,7 +833,6 @@ public abstract class BaseDateSet implements IWordDataSet{
};
}else {
fields = new String[] {
"投标人名称&&supplierName0",
"开标价格 --&&bidPrice0",
"修正后投标报价&&evaluationPrice0",
"修正原因&&modifyReason0",
......@@ -891,7 +887,7 @@ public abstract class BaseDateSet implements IWordDataSet{
supplierMap.put("priceFinalScore", BigDecimalUtils.round(ObjectUtils.getObjBigDecimal(supplierMap.get("priceFinalScore")), 2));
evaluationPriceSupplierList.add(supplierMap);
}
String unit = supplierMapList.size() > 0 ? (String)((Map<String, Object>) supplierMapList.get(0).get("supplierOpeningResult")).get("priceUnit") : null;
String unit = supplierMapList.size() > 0 && supplierMapList.get(0).get("supplierOpeningResult") != null ? (String)((Map<String, Object>) supplierMapList.get(0).get("supplierOpeningResult")).get("priceUnit") : null;
tableColList = getTableColNameList(fields, unit);
getStructCrossData(tableColList, supplierMapList);
reportDataSet.put("tableColList", tableColList);
......@@ -910,7 +906,7 @@ public abstract class BaseDateSet implements IWordDataSet{
List<Map<String, Object>> factorList = new ArrayList<Map<String, Object>>();
int index = 1;
for(String field : fields){
if(field.contains("--")) {
if(field.contains("--") && unit != null) {
field = field.replaceAll("--", unit);
}
Map<String, Object> colMap = new HashMap<String, Object>();
......
......@@ -11,6 +11,9 @@ import java.util.Random;
import java.util.UUID;
import java.util.stream.Collectors;
import org.dom4j.Document;
import com.gx.obe.common.file.enumeration.FileConstants;
import com.gx.obe.common.file.utils.ParsingXmlUtils;
import com.gx.obe.business.entity.SupplierEvaluationStep;
import com.gx.obe.business.entity.Worker;
import com.gx.obe.business.enumeration.ExpertEnum;
......@@ -20,6 +23,7 @@ import com.gx.obe.components.core.enumeration.EvaluationStepEnum;
import com.gx.obe.components.core.enumeration.TenderProjectEnum;
import com.gx.obe.components.core.util.MoneyUtils;
import com.gx.obe.formula.PriceParam;
import com.gx.obe.message.Messages;
import com.gx.obe.report.utils.Bean2MapUtils;
import com.gx.obe.util.utils.BigDecimalUtils;
import com.gx.obe.util.utils.ListSortUtils;
......@@ -37,6 +41,7 @@ import com.gx.obe.web.entity.price.BidPrice;
import com.gx.obe.web.entity.price.BidPriceResult;
import com.gx.obe.web.entity.tender.TenderProjectEntity;
import com.report.word.WordTemplate;
import com.gx.obe.util.utils.XmlUtils;
public class JingNengEvaluationReportDataSet extends BaseDateSet {
......@@ -774,15 +779,25 @@ public class JingNengEvaluationReportDataSet extends BaseDateSet {
private void getFactorMessage() {
EvaluationFactor evaluationFactor =evaluationFactorService.getPriceEvaluationFactor(tenderProject.getId());
String formula = null;
String evalStructMessage = null;
PriceParam priceParam =null;
if(evaluationFactor != null) {
priceParam = PriceParam.deserializePriceParam(evaluationFactor.getComputerParams());
}
if (priceParam != null) {
String separator=System.getProperty("line.separator");
formula = priceParam.getFormula();
evalStructMessage = priceParam.getEvalStructMessage();
}
if (!StringUtils.isEmpty(formula)) {
boolean isStruct = parserStructProject();
if (!StringUtils.isEmpty(evalStructMessage) && isStruct) {
formula = formula + "\n\n" + Messages.EvalExplainPrice + ":" + evalStructMessage + "\n\n" + Messages.BidExplainPrice + ":"+ evaluationFactor.getMemo();
}
if(!StringUtils.isEmpty(evaluationFactor.getMemo()) && !isStruct) {
formula = formula + "\n\n" + Messages.EvalExplain + ":" + evaluationFactor.getMemo();
}
reportDataSet.putParam("formula", formula);
}
//获取商务技术打分权重
......@@ -804,5 +819,28 @@ public class JingNengEvaluationReportDataSet extends BaseDateSet {
reportDataSet.putParam("priWeight", step.getScore());
}
}
}
}
public boolean parserStructProject() {
// 获得招标文件的指标Document
Document factorDoc = XmlUtils.getXmlDocument(FileConstants.getBiddingFilePath(tenderProject.getId()) + FileConstants.PST_XML);
// 未找到招标文件的指标,则获得投标文件的指标。
if(null == factorDoc){
// 获得投标人集合
List<Supplier> supplierList = supplierService.getSupplierOpenBidList(tenderProject.getId());
if(null != supplierList && supplierList.size() > 0){
// 遍历投标人信息
for(Supplier supplier : supplierList){
if(null != factorDoc){
break;
}
// 获得投标人投标文件下的指标路径
String supplierFactorXmlPath = FileConstants.getBidFilePath(tenderProject.getId(), supplier.getId()) + FileConstants.PST_XML;
// 获得投标文件的指标Document
factorDoc = XmlUtils.getXmlDocument(supplierFactorXmlPath);
}
}
}
return factorDoc == null ? false:ParsingXmlUtils.parsingDocStructXML(factorDoc);
}
}
......@@ -486,9 +486,9 @@ public class ParsingXmlUtils {
Element rootElement = factorDoc.getRootElement();
// 查找 isTemplate 元素
Element isTemplateElement = rootElement.element("isTemplate");
Element isTemplateElement = rootElement.element("isNewVersionFile");
if (isTemplateElement != null) {
return Boolean.parseBoolean(isTemplateElement.getText());
return isTemplateElement.getText().equals("01");
}
return false;
}
......
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