|
|
@@ -2,6 +2,7 @@ package com.hotent.project.manager.impl;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
@@ -18,24 +19,21 @@ import com.hotent.baseInfo.model.CostDocumentTemplateFile;
|
|
|
import com.hotent.baseInfo.model.CostDocumentWh;
|
|
|
import com.hotent.config.EipConfig;
|
|
|
import com.hotent.constant.BaseConstant;
|
|
|
-import com.hotent.project.manager.CostProjectApprovalManager;
|
|
|
-import com.hotent.project.manager.CostProjectDocumentFileManager;
|
|
|
-import com.hotent.project.manager.CostProjectTaskEvidenceManager;
|
|
|
-import com.hotent.project.model.CostProjectApproval;
|
|
|
-import com.hotent.project.model.CostProjectDocument;
|
|
|
+import com.hotent.project.manager.*;
|
|
|
+import com.hotent.project.model.*;
|
|
|
import com.hotent.project.dao.CostProjectDocumentDao;
|
|
|
-import com.hotent.project.manager.CostProjectDocumentManager;
|
|
|
import com.hotent.base.manager.impl.BaseManagerImpl;
|
|
|
-import com.hotent.project.model.CostProjectDocumentFile;
|
|
|
-import com.hotent.project.model.CostProjectTaskEvidence;
|
|
|
import com.hotent.project.req.CostProjectDocumentPageReq;
|
|
|
import com.hotent.project.req.CostProjectDocumentReq;
|
|
|
import com.hotent.project.resp.CostProjectDocumentResp;
|
|
|
import com.hotent.uc.api.model.IUser;
|
|
|
import com.hotent.uc.exception.BaseException;
|
|
|
+import com.hotent.uc.manager.OrgManager;
|
|
|
import com.hotent.uc.manager.UserManager;
|
|
|
+import com.hotent.uc.model.Org;
|
|
|
import com.hotent.uc.model.User;
|
|
|
import com.hotent.uc.util.ContextUtil;
|
|
|
+import com.hotent.util.CostDataUtil;
|
|
|
import com.hotent.util.FileUtils;
|
|
|
import com.hotent.util.HtmlUtils;
|
|
|
import com.hotent.util.wordexcelutils.*;
|
|
|
@@ -54,9 +52,12 @@ import java.time.LocalDate;
|
|
|
import java.time.LocalDateTime;
|
|
|
import java.time.YearMonth;
|
|
|
import java.util.*;
|
|
|
+import java.util.regex.Matcher;
|
|
|
+import java.util.regex.Pattern;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
import com.hotent.util.FileUploadUtil;
|
|
|
+import springfox.documentation.spring.web.json.Json;
|
|
|
|
|
|
import static org.apache.tools.ant.util.DateUtils.ISO8601_DATE_PATTERN;
|
|
|
|
|
|
@@ -87,6 +88,9 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
private CostProjectTaskEvidenceManager costProjectTaskEvidenceManager;
|
|
|
|
|
|
@Autowired
|
|
|
+ private CostProjectTaskManager costProjectTaskManager;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
private CostDocumentWhManager costDocumentWhManager;
|
|
|
|
|
|
@Autowired
|
|
|
@@ -97,6 +101,8 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
|
|
|
@Autowired
|
|
|
private CostDocumentTemplateFileManager costTemplateFileManager;
|
|
|
+ @Autowired
|
|
|
+ private OrgManager orgManager;
|
|
|
|
|
|
@Override
|
|
|
public CostProjectDocument getDetail(String id) {
|
|
|
@@ -212,11 +218,7 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
if (costDocumentTemplate == null || BaseConstant.DELETE_FLAG.equals(costDocumentTemplate.getIsDeleted())) {
|
|
|
throw new BaseException("文书模板不存在");
|
|
|
}
|
|
|
- if (!costDocumentTemplate.getAlias().equals("cbjsgzdg")
|
|
|
- &&!costDocumentTemplate.getAlias().equals("cbjsjtsyjl")
|
|
|
- &&!costDocumentTemplate.getAlias().equals("cbshcbyjb1")
|
|
|
- &&!costDocumentTemplate.getAlias().equals("cbjstqzldjb")
|
|
|
- && ObjectUtil.isEmpty(req.getDocumentNumber())) {
|
|
|
+ if (costDocumentTemplate.getIsWh().equals("1")) {
|
|
|
throw new BaseException("请填写通知文号");
|
|
|
}
|
|
|
if (ObjectUtil.isEmpty(req.getEnterpriseId())) {
|
|
|
@@ -235,12 +237,9 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
//返回文号
|
|
|
String whNo;
|
|
|
|
|
|
- if (!costDocumentTemplate.getAlias().equals("cbjsgzdg")
|
|
|
- &&!costDocumentTemplate.getAlias().equals("cbjsjtsyjl")
|
|
|
- &&!costDocumentTemplate.getAlias().equals("cbshcbyjb1")
|
|
|
- &&!costDocumentTemplate.getAlias().equals("cbjstqzldjb")) {
|
|
|
+ if (costDocumentTemplate.getIsWh().equals("0")) {
|
|
|
costDocumentWh= costDocumentWhManager.get(req.getDocumentWhId());
|
|
|
- if (costDocumentWh == null || BaseConstant.DELETE_FLAG.equals(costDocumentWh.getIsDeleted())) {
|
|
|
+ if (costDocumentWh == null) {
|
|
|
throw new BaseException("文书文号不存在");
|
|
|
}
|
|
|
//返回文号
|
|
|
@@ -259,6 +258,7 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
IUser iUser = ContextUtil.getCurrentUser();
|
|
|
User user = userService.getByAccount(iUser.getAccount());
|
|
|
CostProjectApproval costProjectApproval = costProjectApprovalManager.get(req.getProjectId());
|
|
|
+ Org org = orgManager.getById(costProjectApproval.getOrgId());
|
|
|
//类型转换
|
|
|
CostProjectDocument costProjectDocument = new CostProjectDocument();
|
|
|
BeanUtil.copyProperties(req, costProjectDocument);
|
|
|
@@ -280,7 +280,7 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
break;
|
|
|
}
|
|
|
if (StringUtils.isNotBlank(costProjectDocumentFile.getTableName())){
|
|
|
- if(StringUtil.isEmpty(costProjectDocumentFile.getWhereValue())){
|
|
|
+ if(StringUtil.isEmpty(costProjectDocumentFile.getWhereValue()) && StringUtil.isNotEmpty(costProjectDocumentFile.getWhereName())){
|
|
|
costProjectDocumentFile.setWhereValue(costProjectApproval.getProjectId());
|
|
|
} else if (costProjectDocument.getDocumentAlias().equals("cbjsgzdg")
|
|
|
&&!costProjectDocument.getDocumentAlias().equals("cbjsjtsyjl")
|
|
|
@@ -290,20 +290,33 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
String replace = whereValue1.replace("?", "'" + costProjectApproval.getProjectId() + "'");
|
|
|
String replaced = replace.replace("&", auditedUnit.getUnitId());
|
|
|
costProjectDocumentFile.setWhereValue(replaced);
|
|
|
+ String colValue = costTemplateFileManager.getColValue(costProjectDocumentFile.getTableName(), costProjectDocumentFile.getColName(), costProjectDocumentFile.getWhereName(), costProjectDocumentFile.getWhereValue());
|
|
|
+ //获取whereValue字段值
|
|
|
+ costProjectDocumentFile.setDataValue(colValue);
|
|
|
+ } else if (StringUtil.isEmpty(costProjectDocumentFile.getWhereName()) && StringUtil.isEmpty(costProjectDocumentFile.getWhereValue())) {
|
|
|
+ String tableName = costProjectDocumentFile.getTableName();
|
|
|
+ List<CostProjectTask> taskByProjectId = costProjectTaskManager.findTaskByProjectId(costProjectApproval.getProjectId(), auditedUnit.getUnitId());
|
|
|
+ if (taskByProjectId!=null && !taskByProjectId.isEmpty()) {
|
|
|
+ String replace = tableName.replace("?", "'" + taskByProjectId.get(0).getId() + "'");
|
|
|
+ String colValue = costTemplateFileManager.getColValue2(replace);
|
|
|
+ costProjectDocumentFile.setDataValue(colValue);
|
|
|
+ }
|
|
|
+
|
|
|
} else {
|
|
|
String whereValue1 = costProjectDocumentFile.getWhereValue();
|
|
|
String replace = whereValue1.replace("?", "'" + costProjectApproval.getProjectId() + "'");
|
|
|
costProjectDocumentFile.setWhereValue(replace);
|
|
|
+ String colValue = costTemplateFileManager.getColValue(costProjectDocumentFile.getTableName(), costProjectDocumentFile.getColName(), costProjectDocumentFile.getWhereName(), costProjectDocumentFile.getWhereValue());
|
|
|
+ //获取whereValue字段值
|
|
|
+ costProjectDocumentFile.setDataValue(colValue);
|
|
|
}
|
|
|
- String colValue = costTemplateFileManager.getColValue(costProjectDocumentFile.getTableName(), costProjectDocumentFile.getColName(), costProjectDocumentFile.getWhereName(), costProjectDocumentFile.getWhereValue());
|
|
|
- //获取whereValue字段值
|
|
|
- costProjectDocumentFile.setDataValue(colValue);
|
|
|
+
|
|
|
}
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
- if (!costDocumentTemplate.getAlias().equals("sdhz")) {
|
|
|
+ if (costDocumentTemplate.getIsWh().equals("0")) {
|
|
|
|
|
|
CostDocumentTemplate templateManagerById = costDocumentTemplateManager.getByAlias("sdhz");
|
|
|
if (templateManagerById==null) {
|
|
|
@@ -317,19 +330,9 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
projectDocument.setId(UniqueIdUtil.getSuid());
|
|
|
projectDocument.setCreateBy(user.getAccount());
|
|
|
projectDocument.setCreateTime(LocalDateTime.now());
|
|
|
- /*QueryWrapper<CostDocumentWh> wrapper = new QueryWrapper<>();
|
|
|
- wrapper.eq("wh_type","187");
|
|
|
- List<CostDocumentWh> list = costDocumentWhManager.list(wrapper);
|
|
|
-
|
|
|
- if (list == null || list.isEmpty()) {
|
|
|
- throw new BaseException("文书文号不存在");
|
|
|
- }
|
|
|
|
|
|
- CostDocumentWh costDocument = list.get(0);
|
|
|
- //返回文号
|
|
|
- String whno = this.getWH(costDocument);*/
|
|
|
|
|
|
- projectDocument.setDocumentNumber(whNo);
|
|
|
+ projectDocument.setDocumentNumber(costProjectDocument.getDocumentNumber());
|
|
|
projectDocument.setElectronicDocumentUrl(templateManagerById.getFileUrl());
|
|
|
if(costDocumentWh!=null){
|
|
|
projectDocument.setDocumentWhId(costDocumentWh.getId());
|
|
|
@@ -353,14 +356,16 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
costProjectDocumentFile.setProjectDocumentId(projectDocument.getId());
|
|
|
//costProjectDocumentFile.setProjectId(costProjectDocument.getProjectId());
|
|
|
switch (f.getPinyin()) {
|
|
|
- case "JiaGeZhuGuanBuMenHuoChengBenDiaoChaJiGou":
|
|
|
- costProjectDocumentFile.setDataValue(costProjectApproval.getOrgName());
|
|
|
+ case "JiaGeZhuGuanBuMenHuoChengBenJianShenJiGou":
|
|
|
+ costProjectDocumentFile.setDataValue(org.getName());
|
|
|
break;
|
|
|
case "SongDaWenShuMingCheng":
|
|
|
- costProjectDocumentFile.setDataValue(costDocumentWh.getWhName());
|
|
|
+ if (costDocumentWh!=null) {
|
|
|
+ costProjectDocumentFile.setDataValue(costDocumentWh.getWhName());
|
|
|
+ }
|
|
|
break;
|
|
|
case "SongDaWenShuWenHao":
|
|
|
- costProjectDocumentFile.setDataValue(projectDocument.getDocumentNumber());
|
|
|
+ costProjectDocumentFile.setDataValue(costProjectDocument.getDocumentNumber());
|
|
|
break;
|
|
|
case "ShouSongDaRen":
|
|
|
costProjectDocumentFile.setDataValue(auditedUnit.getContactName());
|
|
|
@@ -369,7 +374,7 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
costProjectDocumentFile.setDataValue(auditedUnit.getAddress());
|
|
|
break;
|
|
|
case "TongZhiSongDaShiJian":
|
|
|
- costProjectDocumentFile.setDataValue(DateUtils.format(new Date(),"yyyy-MM-dd HH:mm:ss"));
|
|
|
+ costProjectDocumentFile.setDataValue(DateUtils.format(new Date(),"yyyy-MM-dd"));
|
|
|
break;
|
|
|
case "BeiJianShenDanWeiLianXiRenDianHua":
|
|
|
costProjectDocumentFile.setDataValue(auditedUnit.getContactMobile());
|
|
|
@@ -378,18 +383,7 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
costProjectDocumentFile.setDataValue("");
|
|
|
break;
|
|
|
}
|
|
|
- /*if (StringUtils.isNotBlank(f.getTableName())){
|
|
|
- if(StringUtil.isEmpty(costProjectDocumentFile.getWhereValue())){
|
|
|
- costProjectDocumentFile.setWhereValue(costProjectApproval.getProjectId());
|
|
|
- }else {
|
|
|
- String whereValue1 = costProjectDocumentFile.getWhereValue();
|
|
|
- String replace = whereValue1.replace("?", "'" + costProjectApproval.getProjectId() + "'");
|
|
|
- costProjectDocumentFile.setWhereValue(replace);
|
|
|
- }
|
|
|
- String colValue = costTemplateFileManager.getColValue(costProjectDocumentFile.getTableName(), costProjectDocumentFile.getColName(), costProjectDocumentFile.getWhereName(), costProjectDocumentFile.getWhereValue());
|
|
|
- //获取whereValue字段值
|
|
|
- costProjectDocumentFile.setDataValue(colValue);
|
|
|
- }*/
|
|
|
+
|
|
|
arrayList.add(costProjectDocumentFile);
|
|
|
});
|
|
|
costProjectDocumentFileManager.saveBatch(arrayList);
|
|
|
@@ -454,9 +448,8 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
if (ObjectUtil.isEmpty(req.getProjectId())) {
|
|
|
throw new BaseException("请选择项目");
|
|
|
}
|
|
|
- if (ObjectUtil.isEmpty(req.getDocumentNumber())) {
|
|
|
- throw new BaseException("请填写通知文号");
|
|
|
- }
|
|
|
+
|
|
|
+
|
|
|
if (ObjectUtil.isEmpty(req.getEnterpriseId())) {
|
|
|
throw new BaseException("请选择监审单位");
|
|
|
}
|
|
|
@@ -468,19 +461,24 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
req.setIsPushed("1");
|
|
|
|
|
|
CostDocumentTemplate costDocumentTemplate = this.costDocumentTemplateManager.get(req.getDocumentId());
|
|
|
+
|
|
|
if (costDocumentTemplate == null || BaseConstant.DELETE_FLAG.equals(costDocumentTemplate.getIsDeleted())) {
|
|
|
throw new BaseException("文书模板不存在");
|
|
|
}
|
|
|
+ if (costDocumentTemplate.getIsWh().equals("1")) {
|
|
|
+ throw new BaseException("请填写通知文号");
|
|
|
+ }
|
|
|
req.setDocumentAlias(costDocumentTemplate.getAlias());
|
|
|
AuditedUnit auditedUnit = auditedUnitManager.get(req.getEnterpriseId());
|
|
|
if (auditedUnit == null || BaseConstant.DELETE_FLAG.equals(auditedUnit.getIsDeleted())) {
|
|
|
throw new BaseException("被监审单位不存在");
|
|
|
}
|
|
|
CostDocumentWh costDocumentWh = costDocumentWhManager.get(req.getDocumentWhId());
|
|
|
- if (costDocumentWh == null || BaseConstant.DELETE_FLAG.equals(costDocumentWh.getIsDeleted())) {
|
|
|
- throw new BaseException("文书文号不存在");
|
|
|
+ if(costDocumentTemplate.getIsWh().equals("1")){
|
|
|
+ if (costDocumentWh == null || BaseConstant.DELETE_FLAG.equals(costDocumentWh.getIsDeleted())) {
|
|
|
+ throw new BaseException("文书文号不存在");
|
|
|
+ }
|
|
|
}
|
|
|
-
|
|
|
LambdaQueryWrapper<CostProjectDocument> qw = new LambdaQueryWrapper<>();
|
|
|
qw.eq(CostProjectDocument::getProjectId, req.getProjectId());
|
|
|
qw.eq(CostProjectDocument::getDocumentId, req.getDocumentId());
|
|
|
@@ -496,16 +494,7 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
// 类型转换
|
|
|
BeanUtil.copyProperties(req,selectCostProjectDocument);
|
|
|
super.update(selectCostProjectDocument);
|
|
|
- /*costProjectDocumentFileManager.remove(new LambdaQueryWrapper<CostProjectDocumentFile>().eq(CostProjectDocumentFile::getProjectId,selectCostProjectDocument.getProjectId()));
|
|
|
- List<CostProjectDocumentFile> costProjectDocumentFiles = req.getCostProjectDocumentFiles();
|
|
|
- if (costProjectDocumentFiles != null){
|
|
|
- for (CostProjectDocumentFile costProjectDocumentFile : costProjectDocumentFiles) {
|
|
|
- costProjectDocumentFile.setDocumentId(selectCostProjectDocument.getDocumentId());
|
|
|
- costProjectDocumentFile.setProjectId(selectCostProjectDocument.getProjectId());
|
|
|
- //costProjectDocumentFile.setProjectDocumentId(selectCostProjectDocument.);
|
|
|
- }
|
|
|
|
|
|
- }*/
|
|
|
req.getCostProjectDocumentFiles().forEach(f->{
|
|
|
f.setProjectDocumentId(selectCostProjectDocument.getId());
|
|
|
});
|
|
|
@@ -565,42 +554,56 @@ public class CostProjectDocumentManagerImpl extends BaseManagerImpl<CostProjectD
|
|
|
XWPFDocument document = new XWPFDocument(fis);
|
|
|
FileOutputStream fos = FileUtils.createFileOutputStream(outputPath);) {
|
|
|
|
|
|
- //FileOutputStream fos = new FileOutputStream(outputPath);
|
|
|
- //SimpleStylePreserver.smartReplaceKeepStyle(document,map);
|
|
|
- //BestPracticeReplacer.replaceTextBestPractice(document,map);
|
|
|
- //BestPracticeReplacer.applySmartStyles(document);
|
|
|
- if (!costProjectDocument.getDocumentAlias().equals("cbjstqzldjb")) {
|
|
|
- SmartTemplateWriter.writeToTemplate(document,map);
|
|
|
- }else {
|
|
|
- List<CostProjectTaskEvidence> costProjectTaskEvidences= costProjectTaskEvidenceManager.findEvidenceListByTaskIds(costProjectDocument.getProjectId(),costProjectDocument.getEnterpriseId());
|
|
|
+
|
|
|
+ if (costProjectDocument.getDocumentAlias().equals("cbjstqzldjb")) {
|
|
|
+ List<CostProjectTaskEvidence> costProjectTaskEvidences= costProjectTaskEvidenceManager.findEvidenceListByTaskIds(costProjectDocument.getProjectId(),costProjectDocument.getEnterpriseId());
|
|
|
if (!costProjectTaskEvidences.isEmpty()) {
|
|
|
List<CompleteTemplateProcessor.TableRowData> mapList = costProjectTaskEvidences.stream().map(c -> {
|
|
|
CompleteTemplateProcessor.TableRowData tableRowData = new CompleteTemplateProcessor.TableRowData();
|
|
|
- /*Map<String, Object> hashMap = new HashMap<>();
|
|
|
- hashMap.put("pageCount",c.getPageCount());
|
|
|
- hashMap.put("remark",c.getRemark());
|
|
|
- hashMap.put("documentName",c.getMaterialName());*/
|
|
|
+
|
|
|
tableRowData.setDocumentName(c.getMaterialName());
|
|
|
tableRowData.setRemark(c.getRemark());
|
|
|
tableRowData.setPageCount(c.getPageCount());
|
|
|
return tableRowData;
|
|
|
}).collect(Collectors.toList());
|
|
|
- //int sum = costProjectTaskEvidences.stream().mapToInt(CostProjectTaskEvidence::getPageCount).sum();
|
|
|
- //SimpleTableFiller.fillTableSimple(document,null,mapList,costProjectTaskEvidences.size(),sum,DateUtils.format(new Date(),ISO8601_DATE_PATTERN));
|
|
|
AuditedUnit auditedUnit = auditedUnitManager.get(costProjectDocument.getEnterpriseId());
|
|
|
|
|
|
CompleteTemplateProcessor.processTemplateComplete(document,auditedUnit.getUnitName(),mapList,DateUtils.format(new Date(),ISO8601_DATE_PATTERN));
|
|
|
}
|
|
|
+ } else if (costProjectDocument.getDocumentAlias().equals("zfdjcbjsjlbg")) {
|
|
|
+ CostProjectApproval costProjectApproval = costProjectApprovalManager.get(costProjectDocument.getProjectId());
|
|
|
+
|
|
|
+ List<CostProjectTask> taskByProjectId = costProjectTaskManager.findTaskByProjectId(costProjectApproval.getProjectId(), costProjectDocument.getEnterpriseId());
|
|
|
+
|
|
|
+ List<Map<String,Object>> maps= costTemplateFileManager.getSurveyTemplate(taskByProjectId.get(0).getId());
|
|
|
+
|
|
|
+ CostDataUtil costDataUtil = new CostDataUtil();
|
|
|
+ Map<String, Object> map1 = costDataUtil.convertToCostFormat(maps);
|
|
|
+ @SuppressWarnings("unchecked")
|
|
|
+ List<String> years = (List<String>)map1.get("years");
|
|
|
+ @SuppressWarnings("unchecked")
|
|
|
+ List<Map<String, Object>> costItems = (List<Map<String, Object>>) map1.get("costItems");
|
|
|
+
|
|
|
+ // 处理文档
|
|
|
+ RobustComplexDocumentProcessor.processDocumentWithMaps(
|
|
|
+ document,
|
|
|
+ map,
|
|
|
+ years,
|
|
|
+ costItems
|
|
|
+ );
|
|
|
+
|
|
|
+ } else {
|
|
|
+ SmartTemplateWriter.writeToTemplate(document,map);
|
|
|
}
|
|
|
document.write(fos);
|
|
|
} catch (IOException e) {
|
|
|
throw new RuntimeException("处理Word文档时出错", e);
|
|
|
}
|
|
|
|
|
|
- // DocumentProcessor.processWordDocument(templatePath,outputPath,map,new LinkedHashMap<>());
|
|
|
return EipConfig.getImgUrl()+FileUploadUtil.getPathFileName(outputPath,fileName);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
@Override
|
|
|
public void feedbackDocumentUrl(CostProjectDocumentReq req) {
|
|
|
if (ObjectUtil.isEmpty(req.getId())) {
|