From 17cbd5b9f612f3d29f02f2722357ea334ede2b41 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期四, 31 七月 2025 19:17:43 +0800
Subject: [PATCH] 提交再次试验需要将检验项目的结论重置为null
---
inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java | 1418 +++++++++++++++++++++++++++++++---------------------------
1 files changed, 747 insertions(+), 671 deletions(-)
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java b/inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java
index 5f1dd3c..d0defa3 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/utils/WordUtils.java
@@ -11,26 +11,31 @@
import com.deepoove.poi.config.ConfigureBuilder;
import com.deepoove.poi.data.*;
import com.deepoove.poi.data.style.*;
+import com.deepoove.poi.data.style.Style;
import com.deepoove.poi.util.TableTools;
-import com.yuanchu.mom.dto.InsReportDto1;
-import com.yuanchu.mom.dto.InsReportDto2;
-import com.yuanchu.mom.dto.SampleProductDto;
+import com.spire.doc.FileFormat;
+import com.yuanchu.mom.dto.*;
import com.yuanchu.mom.exception.ErrorException;
import com.yuanchu.mom.mapper.*;
import com.yuanchu.mom.pojo.*;
import com.yuanchu.mom.vo.InsProductResult2VO;
+import lombok.extern.slf4j.Slf4j;
import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.StringUtils;
import org.apache.poi.openxml4j.util.ZipSecureFile;
import org.apache.poi.xwpf.usermodel.*;
-import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTHMerge;
-import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTcPr;
-import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTVMerge;
-import org.openxmlformats.schemas.wordprocessingml.x2006.main.STMerge;
+import org.docx4j.XmlUtils;
+import org.docx4j.jaxb.Context;
+import org.docx4j.openpackaging.packages.WordprocessingMLPackage;
+import org.docx4j.wml.*;
+import org.docx4j.wml.STBrType;
+import org.openxmlformats.schemas.wordprocessingml.x2006.main.*;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
+import javax.xml.bind.JAXBElement;
import java.io.*;
import java.nio.file.Files;
import java.nio.file.Paths;
@@ -39,8 +44,11 @@
import java.util.*;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicReference;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
import java.util.stream.Collectors;
+@Slf4j
@Component
public class WordUtils {
@@ -67,9 +75,6 @@
@Resource
StandardMethodListMapper standardMethodListMapper;
-
- @Value("${twoCode}")
- private String twoCode;
@Resource
private InsProductMapper insProductMapper;
@@ -158,7 +163,8 @@
if (inspectionItemSubclass.contains("浜掕皟")) {
aa += (angles + 1) * portRow * often;
}
- } else {
+ }
+ else {
if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�")) {
aa += (angles + 1) * portRow;
}
@@ -274,7 +280,7 @@
style.setFontFamily("瀹嬩綋");
style.setColor("000000");
textRenderData.setStyle(style);
- if (i == 0) {
+ if (i == 1) {
//绗竴琛�
textRenderData.setText("棰戞锛�" + s + "鈭�0" + lable);
renderData.add(textRenderData);
@@ -282,7 +288,8 @@
paragraphRenderDataList.add(paragraphRenderData);
cellRenderData.setParagraphs(paragraphRenderDataList);
cells.add(cellRenderData);
- } else {
+ }
+ else {
if (insOrderState.getVersion() == 1) {
//闈炵數璋冪増鏈�(绠�鍗曠増)
if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�") && i <= 2 * portRow) {
@@ -353,7 +360,7 @@
textRenderData.setText("涓嶅垽瀹�");
}
} else {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
}
renderData.add(textRenderData);
paragraphRenderData.setContents(renderData);
@@ -799,7 +806,7 @@
} else if (j == 4) {
//绗簲鍒�
if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
- textRenderData.setText("瑙掑害");
+ textRenderData.setText("棰戞");
} else {
textRenderData.setText(result2s.get(0).getAngle().split(",")[(i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 2) % (angles + 1)]);
}
@@ -811,7 +818,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
if (products.get(0).getInsResult() == 1) {
textRenderData.setText("鍚堟牸鈭�8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
@@ -904,10 +911,11 @@
paragraphRenderDataList.add(paragraphRenderData);
cellRenderData.setParagraphs(paragraphRenderDataList);
cells.add(cellRenderData);
- } else if (j == bb - 1) {
+ }
+ else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if (i % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -1012,7 +1020,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - cc) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -1135,7 +1143,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (dd == 0 ? cc : dd)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -1258,7 +1266,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -1381,7 +1389,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -1486,7 +1494,7 @@
//绗簲鍒�
if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
//瑙掑害
- textRenderData.setText("瑙掑害");
+ textRenderData.setText("棰戞");
} else {
//鍊�
textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]);
@@ -1499,7 +1507,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -1596,7 +1604,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -1689,7 +1697,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -1786,7 +1794,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -1893,7 +1901,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn) : pp)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -1946,7 +1954,7 @@
int k = (angles + 1) * portRow2;
int rr = qq == 0 ? (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn) : pp) : qq;
if (i > rr && i <= rr + k) {
- ss = (rr + k) ;
+ ss = (rr + k);
if (itemSet.add("鏈�澶х浉浣嶅亸宸�")) {
index.getAndIncrement();
}
@@ -2000,7 +2008,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - rr) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -2051,7 +2059,7 @@
int length = result2s.get(0).getPort().split(",").length;
int portRow2 = (length % 8 == 0 ? length / 8 : length / 8 + 1);
int k = (angles + 1) * portRow2;
- int rr =ss==0?( qq == 0 ? (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn) : pp) : qq) : ss;
+ int rr = ss == 0 ? (qq == 0 ? (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn) : pp) : qq) : ss;
if (i > ss) {
if (itemSet.add("鐩镐綅缁濆鍊�")) {
index.getAndIncrement();
@@ -2106,7 +2114,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - ss) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -2320,7 +2328,8 @@
}
result2VOS.add(insProductResult2VO1);
}
- } else {
+ }
+ else {
insProductResult2VO.setValue(value.replace("\"", ""));
result2VOS.add(insProductResult2VO);
}
@@ -2577,78 +2586,455 @@
//鐢熸垚鎬绘姤鍛�
public void generateReport(Integer orderId, InsReportDto1 insReportDto1) {
- LocalDateTime now = LocalDateTime.now();
InsOrder insOrder = insOrderMapper.selectById(orderId);
- //濮旀墭閮ㄩ棬 departLims
- String departLims = userMapper.selectDepartLims(insOrder.getPrepareUser());
SampleProductDto insSample = insSampleMapper.selectSampleProductListByOrderId(insReportDto1.getSampleId());
- String sampleCode = insSample.getSampleCode();
+ SampleProductDto s = insSample;
+ List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+ .eq(InsProduct::getInsSampleId, insSample.getId())
+ .eq(InsProduct::getState, 1));
+ /*棣栭〉*/
+ //浜у搧鍚嶇О
+ String sampleName = insSample.getSample();
+ //鍨嬪彿瑙勬牸
+ int indexOf = s.getModel().indexOf("-");
+ String models = (indexOf!=-1?s.getModel().substring(indexOf + 1):s.getModel());
+ //濮旀墭鍗曚綅
+ Custom custom = customMapper.selectById(insOrder.getCompanyId());
+ //鎶ュ憡鍙戝竷鏃ユ湡
+ LocalDateTime now = LocalDateTime.now();
+ //鎶ュ憡缂栧彿
InsReport insReport = new InsReport();
insReport.setCode(giveCode.giveCode("TXJC-", "ins_report", "-", "yyMMdd"));
insReport.setInsSampleId(insSample.getId());
insReport.setInsOrderId(orderId);
- Set<String> standardMethod = new HashSet<>();
- Set<String> deviceSet = new HashSet<>();
- Set<String> models = new HashSet<>();
+ /*妫�娴嬫姤鍛婃弿杩�*/
+ //鏍峰搧鍚嶇О,鍨嬪彿瑙勬牸,鏃堕棿鎸夌収棣栭〉鐨勬潵,order閲岄潰鐨勪俊鎭湁insOrder
+ //濮旀墭浜哄拰鐢佃瘽瀛楁鍒ゆ柇
+ if (ObjectUtils.isEmpty(insOrder.getPrepareUser())) {
+ insOrder.setPrepareUser("/");
+ }
+ if (ObjectUtils.isEmpty(insOrder.getPhone())) {
+ insOrder.setPhone("/");
+ }
+ //濮旀墭閮ㄩ棬
+ String departLims = userMapper.selectDepartLims(insOrder.getPrepareUser());
+ //鏍峰搧缂栧彿
+ String sampleCode = insSample.getSampleCode();
+ //妫�娴嬩緷鎹�
+ Set<String> standardMethod = new HashSet<>();
+ standardMethod.addAll(insProducts.stream()
+ .map(insProduct -> {
+ String standardMethodName = standardMethodListMapper.getStandardMethodName(insProduct.getMethodS());
+ return insProduct.getMethodS()+" "+standardMethodName;
+ }).distinct().collect(Collectors.toList()));
+ StringBuilder standardMethod2 = new StringBuilder();
+ for (String s1 : standardMethod) {
+ standardMethod2.append("锛沑n").append(s1);
+ }
+ standardMethod2.replace(0, 1, "");
+ //妫�娴嬬粨璁�
AtomicReference<Integer> productSize = new AtomicReference<>(0);
- AtomicReference<Integer> productSize1 = new AtomicReference<>(0);
AtomicReference<Integer> productSize2 = new AtomicReference<>(0);
AtomicReference<Integer> productSize3 = new AtomicReference<>(0);
- String[] monthNames = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};
- SampleProductDto s = insSample;
- models.add(s.getModel());
- standardMethod.addAll(standardMethodListMapper.selectList(Wrappers.<StandardMethodList>lambdaQuery()
- .in(StandardMethodList::getId, Arrays.stream(s.getStandardMethodListId().replaceAll("[\\[\\]]", "").split(","))
- .map(String::trim).map(Integer::parseInt).collect(Collectors.toList()))).stream().map(aa -> {
- return aa.getCode() + " " + aa.getName();
- }).distinct().collect(Collectors.toList()));
//鎬绘暟
- Long productCount = insProductMapper.selectCount(Wrappers.<InsProduct>lambdaQuery()
- .eq(InsProduct::getInsSampleId, s.getId()));
- productSize.set(productSize.get() + Integer.parseInt(productCount + ""));
- //涓嶅垽瀹�
- Long productCount1 = insProductMapper.selectCount(Wrappers.<InsProduct>lambdaQuery()
- .eq(InsProduct::getInsSampleId, s.getId())
- .eq(InsProduct::getInsResult, 3));
-// productSize1.set(productSize1.get() + Integer.parseInt(productCount1 + ""));
- productSize1.set(productSize1.get() + Integer.parseInt(0 + ""));
+ long productCount = insProducts.size();
//涓嶅悎鏍�
- Long productCount2 = insProductMapper.selectCount(Wrappers.<InsProduct>lambdaQuery()
- .eq(InsProduct::getInsSampleId, s.getId())
- .eq(InsProduct::getInsResult, 0));
- productSize2.set(productSize2.get() + Integer.parseInt(productCount2 + ""));
- //鍚堟牸
- Long productCount3 = insProductMapper.selectCount(Wrappers.<InsProduct>lambdaQuery()
- .eq(InsProduct::getInsSampleId, s.getId())
- .eq(InsProduct::getInsResult, 1));
-// productSize3.set(productSize3.get() + Integer.parseInt(productCount3 + ""));
- productSize3.set(productSize3.get() + Integer.parseInt(productCount3+productCount1 + ""));
- //灏嗛」鐩寜鐓х珯鐐硅繘琛屽垎绫�
- Map<String, List<InsProduct>> listMap = s.getInsProduct().stream().collect(Collectors.groupingBy(InsProduct::getSonLaboratory));
- // 鍒涘缓涓�涓� Map 灏嗙珯鐐瑰拰椤圭洰ID鐨勬槧灏勫叧绯�
- Map<String, Set<Integer>> labToDeviceMap = new HashMap<>();
- // 鑾峰彇鎵�鏈夌珯鐐圭殑椤圭洰ID 鍒楄〃
- for (Map.Entry<String, List<InsProduct>> entry : listMap.entrySet()) {
- Set<Integer> productIds = entry.getValue().stream()
- .map(InsProduct::getId)
- .collect(Collectors.toSet());
- labToDeviceMap.put(entry.getKey(), productIds);
- }
- for (InsReportDto2 insReportDto2 : insReportDto1.getInsReportDto2s()) {
- String laboratory = insReportDto2.getLaboratory();
- if (!labToDeviceMap.containsKey(laboratory)) {
- continue;
+ long productCount2 = insProducts.stream().filter(insProduct -> insProduct.getInsResult() == 0).count();
+ //鍚堟牸=(涓嶅垽瀹�+鍚堟牸)
+ long productCount1 = insProducts.stream().filter(insProduct -> insProduct.getInsResult() == 3).count();
+ long productCount3 = productCount1 + insProducts.stream().filter(insProduct -> insProduct.getInsResult() == 1).count();
+ //鍒ゆ柇鏄惁鏈夎緪灏勯」鐩�
+ List<InsProduct> fusheProducts = insProducts.stream().filter(insProduct -> insProduct.getInspectionItem().equals("杈愬皠璇曢獙")).collect(Collectors.toList());
+ if (fusheProducts.size() > 0) {
+ for (InsProduct fusheProduct : fusheProducts) {
+ List<Long> vValues = new ArrayList<>();
+ String insValue = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery()
+ .eq(InsProductResult::getInsProductId, fusheProduct.getId())).get(0).getInsValue();
+ Pattern pattern = Pattern.compile("\"v\":\"(\\d+)\"");
+ Matcher matcher = pattern.matcher(insValue);
+ while (matcher.find()) {
+ vValues.add(Long.parseLong(matcher.group(1)));
+ }
+ if (vValues.size() > 0) {
+ //涓嶅悎鏍�
+ if (vValues.get(1) != 0) {
+ productCount2 = productCount2 + vValues.get(1);
+ }
+ //鍚堟牸
+ if (vValues.get(0) != 0) {
+ if (fusheProduct.getInsResult() == 1) {
+ productCount3 = productCount3 + vValues.get(0);
+ }
+ }
+ // 鍒ゅ畾鏄惁鍑忔帀杈愬皠妫�楠岄」鏈韩
+ if (fusheProduct.getInsResult() == 1) {
+ productCount3 = productCount3 - 1;
+ }else if(fusheProduct.getInsResult() == 0){
+ productCount2 = productCount2 - 1;
+ }
+ //鎬绘暟=椤圭洰鎬绘暟-杈愬皠椤圭洰鏁伴噺+杈愬皠鍏蜂綋鐨�(鍚堟牸+涓嶅悎鏍�)鏁伴噺
+ productCount = productCount - 1 + vValues.stream().mapToLong(Long::longValue).sum();
+ }
}
- Set<Integer> productIds = labToDeviceMap.get(laboratory);
- Integer num = insReportDto2.getNum();
- //鏅�氳瘯楠岀粨鏋滆〃
- List<InsProductResult> insProductResults = insProductResultMapper.selectList(
- Wrappers.<InsProductResult>lambdaQuery()
- .eq(InsProductResult::getNum, num)
- .in(InsProductResult::getInsProductId, productIds));
- for (InsProductResult insProductResult : insProductResults) {
- List<JSONObject> jsonObjects = JSON.parseArray(insProductResult.getEquipValue(), JSONObject.class);
+ }
+ productSize.set(productSize.get() + Integer.parseInt(productCount + ""));
+ productSize2.set(productSize2.get() + Integer.parseInt(productCount2 + ""));
+ productSize3.set(productSize3.get() + Integer.parseInt(productCount3 + ""));
+
+ /*妫�楠屾儏鍐典竴瑙堣〃*/
+ List<InsProductWordDto> insProductList = new ArrayList<>();
+ int index1=1;
+ for (InsProduct insPro : insProducts) {
+ InsProductWordDto insProductWordDto = new InsProductWordDto();
+ insProductWordDto.setIndex(index1+"");//搴忓彿
+ if (insPro.getInspectionItem().contains("鐢佃矾璇曢獙")){
+ insProductWordDto.setTerm("鐢垫�ц兘鍙傛暟-"+insPro.getInspectionItemSubclass());//妫�楠岄」鐩�
+ }else if (insPro.getInspectionItem().contains("杈愬皠璇曢獙")){
+ insProductWordDto.setTerm("杈愬皠鎬ц兘鍙傛暟"+insPro.getInspectionItemSubclass());//妫�楠岄」鐩�
+ }else {
+ insProductWordDto.setTerm(insPro.getInspectionItem()+"-"+insPro.getInspectionItemSubclass());//妫�楠岄」鐩�
+ }
+ if (ObjectUtils.isNotNull(insPro.getInsResult()) && insPro.getInsResult()==0) {
+ insProductWordDto.setResult("涓嶅悎鏍�");//缁撹
+ } else {
+ insProductWordDto.setResult("鍚堟牸");//缁撹
+ }
+ insProductList.add(insProductWordDto);
+ index1++;
+ }
+
+ /*妫�娴嬬粨鏋�*/
+ //鑾峰彇鎵�鏈夋楠岀殑绔欑偣淇℃伅
+ List<String> strings = insReportDto1.getInsReportDto2s().stream()
+ .map(InsReportDto2::getLaboratory).distinct().collect(Collectors.toList());
+ //鐢佃矾琛ㄦ牸
+ List<Map<String, Object>> tables2 = new ArrayList<>();
+ if (strings.contains("鐢佃矾璇曢獙")) {
+ /*鍕鹃�夌殑鐢佃矾璇曢獙琛�*/
+ List<InsReportDto2> dto2s = insReportDto1.getInsReportDto2s().stream().filter(insReportDto2 -> insReportDto2.getLaboratory().equals("鐢佃矾璇曢獙")).collect(Collectors.toList());
+ for (InsReportDto2 insReportDto2 : dto2s) {
+ InsOrderUser insOrderUser = insOrderUserMapper.selectById(insReportDto2.getInsOrderUsersId());
+ InsOrderState orderState = insOrderStateMapper.selectById(insOrderUser.getInsOrderStateId());
+ orderState.setNum(insOrderUser.getNum());
+ if (!insOrder.getSampleType().equals("鏃犳簮鍣ㄤ欢")) {
+ getWord1(insOrderUser.getTerm(), orderState, tables2);
+ } else {
+ getWord2(insOrderUser.getTerm(), orderState, tables2);
+ }
+ }
+ }
+ //杈愬皠琛ㄦ牸
+ List<Map<String, Object>> tables3 = new ArrayList<>();
+ List<InsOrderFile> insOrderDocFiles = new ArrayList<>();; // 鏆傚瓨闇�瑕佸悎骞惰〃鍗曞埌鐢熸垚word鏂囦欢鐨刣ocx鏂囦欢
+ // 缁熻杈愬皠瀹為獙琛ㄦ暟閲�
+ int radiationReportNum = 0;
+ if (strings.contains("杩戝満") || strings.contains("杩滃満")) {
+ /*杈愬皠鐨勮瘯楠岃〃*/
+ List<InsOrderFile> insOrderFiles = insOrderFileMapper.selectList(Wrappers.<InsOrderFile>lambdaQuery()
+ .eq(InsOrderFile::getInsOrderId, orderId)
+ .eq(InsOrderFile::getInsSampleId, insReportDto1.getSampleId())
+ .like(InsOrderFile::getFileName, "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�")
+ .and(wrapper -> wrapper
+ .eq(InsOrderFile::getSonLaboratory, "杩滃満")
+ .or()
+ .eq(InsOrderFile::getSonLaboratory, "杩戝満")
+ ));
+ insOrderDocFiles.addAll(insOrderFiles);
+ radiationReportNum = insOrderFiles.size();
+// if (insOrderFiles.size() > 0) {
+// int aa = 0;
+// for (InsOrderFile insOrderFile : insOrderFiles) {
+// try {
+// XWPFDocument circuitParamsDoc = new XWPFDocument(new FileInputStream(wordUrl + "/" + insOrderFile.getFileUrl()));
+// // 閬嶅巻鐢佃矾鍙傛暟鏂囦欢鐨勬墍鏈夊厓绱狅紝娈佃惤鍜岃〃鏍�
+// for (IBodyElement element : circuitParamsDoc.getBodyElements()) {
+// Map<String, Object> table3 = new HashMap<>();
+// TableRenderData tableData = new TableRenderData();
+// List<RowRenderData> rows = new ArrayList<>();
+// if (element instanceof XWPFTable) {
+// aa += 1;
+// XWPFTable tab = (XWPFTable) element;
+// List<XWPFTableRow> row = tab.getRows();
+// for (int i = 0; i < row.size(); i++) {
+// RowRenderData rowRenderData = new RowRenderData();
+// List<CellRenderData> cells = new ArrayList<>();
+// List<XWPFTableCell> cell = row.get(i).getTableCells();
+// for (int j = 0; j < cell.size(); j++) {
+// CellRenderData cellRenderData = new CellRenderData();
+// List<ParagraphRenderData> paragraphRenderDataList = new ArrayList<>();
+// ParagraphRenderData paragraphRenderData = new ParagraphRenderData();
+// ParagraphStyle paragraphStyle = new ParagraphStyle();
+// paragraphStyle.setAlign(ParagraphAlignment.CENTER);
+// paragraphRenderData.setParagraphStyle(paragraphStyle);
+// List<RenderData> renderData = new ArrayList<>();
+// TextRenderData textRenderData = new TextRenderData();
+// Style style = new Style();
+// style.setFontFamily("瀹嬩綋");
+// style.setColor("000000");
+// textRenderData.setStyle(style);
+// CTTcPr tcPr = cell.get(j).getCTTc().getTcPr();
+// if (tcPr != null) {
+// //鍚堝苟鍒�
+// CTHMerge hMerge = tcPr.getHMerge();
+// if (ObjectUtils.isNotEmpty(hMerge)) {
+// if (STMerge.RESTART.equals(hMerge.getVal()) || STMerge.CONTINUE.equals(hMerge.getVal())) {
+// int index = j;
+// String text = null;
+// while (text == null || text.equals("")) {
+// if (index < 0) {
+// text = "/";
+// }
+// text = cell.get(index).getText();
+// index--;
+// }
+// textRenderData.setText(text + "鈭�88" + aa + i);
+// }
+// }
+// //鍚堝苟琛�
+// CTVMerge vMerge = tcPr.getVMerge();
+// if (ObjectUtils.isNotEmpty(vMerge)) {
+// if (STMerge.RESTART.equals(vMerge.getVal()) || STMerge.CONTINUE.equals(vMerge.getVal())) {
+// int index = i;
+// String text = null;
+// while (text == null || text.equals("")) {
+// if (index < 0) {
+// text = "/";
+// break;
+// }
+// text = row.get(index).getCell(j).getText();
+// index--;
+// }
+// if (text.equals("鍚堟牸") || text.equals("涓嶅悎鏍�")) {
+// textRenderData.setText(text + "鈭�25" + aa + j);
+// } else {
+// textRenderData.setText(text + "鈭�22" + aa + j);
+// }
+// }
+// }
+// } else {
+// textRenderData.setText(cell.get(j).getText());
+// }
+// renderData.add(textRenderData);
+// paragraphRenderData.setContents(renderData);
+// paragraphRenderDataList.add(paragraphRenderData);
+// cellRenderData.setParagraphs(paragraphRenderDataList);
+// cells.add(cellRenderData);
+// }
+// rowRenderData.setCells(cells);
+// rows.add(rowRenderData);
+// }
+// tableData.setRows(rows);
+// table3.put("table3", tableData);
+// tables3.add(table3);
+// }
+// }
+// } catch (IOException e) {
+// e.printStackTrace();
+// }
+// }
+// }
+ }
+ //杈愬皠鐨勬爣棰�
+ String title3 = "";
+ if (radiationReportNum > 0) {
+ title3 = "杈愬皠鎬ц兘鍙傛暟";
+ }
+ //鐜琛ㄦ牸
+ List<Map<String, Object>> tables4 = new ArrayList<>();
+ //鍒涘缓鐜璇曢獙鏉′欢琛�2*(椤圭洰鏁�+1)
+ List<InsProduct> products = insSample.getInsProduct().stream()
+ .filter(insProduct -> !insProduct.getInspectionItem().equals("鐢佃矾璇曢獙"))
+ .filter(insProduct -> !insProduct.getInspectionItem().equals("杈愬皠璇曢獙"))
+ .map(insProduct -> {
+ InsProduct product = new InsProduct();
+ product.setInspectionItemSubclass(insProduct.getInspectionItemSubclass());
+ product.setTell(insProduct.getTell());
+ return product;
+ }).distinct().collect(Collectors.toList());
+ if (products.size()>0) {
+ List<RowRenderData> rows = new ArrayList<>();
+ //琛屾暟
+ for (int i = 0; i < products.size() + 1; i++) {
+ RowRenderData rowRenderData = new RowRenderData();
+ RowStyle rowStyle = new RowStyle();
+ rowStyle.setHeight(40);
+ rowRenderData.setRowStyle(rowStyle);
+ List<CellRenderData> cells = new ArrayList<>();
+ //鍒楁暟
+ for (int j = 0; j < 3; j++) {
+ CellRenderData cellRenderData = new CellRenderData();
+ CellStyle cellStyle = new CellStyle();
+ cellStyle.setVertAlign(XWPFTableCell.XWPFVertAlign.CENTER);
+ cellRenderData.setCellStyle(cellStyle);
+ List<ParagraphRenderData> paragraphRenderDataList = new ArrayList<>();
+ ParagraphRenderData paragraphRenderData = new ParagraphRenderData();
+ ParagraphStyle paragraphStyle = new ParagraphStyle();
+ paragraphStyle.setAlign(ParagraphAlignment.CENTER);
+ paragraphRenderData.setParagraphStyle(paragraphStyle);
+ List<RenderData> renderData = new ArrayList<>();
+ TextRenderData textRenderData = new TextRenderData();
+ Style style = new Style();
+ style.setFontFamily("瀹嬩綋");
+ style.setColor("000000");
+ textRenderData.setStyle(style);
+ if (i == 0) {
+ //绗竴琛�
+ if (j == 0) {
+ //绗竴鍒�
+ textRenderData.setText("椤圭洰");
+ renderData.add(textRenderData);
+ paragraphRenderData.setContents(renderData);
+ paragraphRenderDataList.add(paragraphRenderData);
+ cellRenderData.setParagraphs(paragraphRenderDataList);
+ cells.add(cellRenderData);
+ } else if (j == 1) {
+ //绗簩鍒�
+ textRenderData.setText("璇曢獙瑕佹眰");
+ renderData.add(textRenderData);
+ paragraphRenderData.setContents(renderData);
+ paragraphRenderDataList.add(paragraphRenderData);
+ cellRenderData.setParagraphs(paragraphRenderDataList);
+ cells.add(cellRenderData);
+ } else {
+ //绗笁鍒�
+ textRenderData.setText("瀹為獙缁撴灉");
+ renderData.add(textRenderData);
+ paragraphRenderData.setContents(renderData);
+ paragraphRenderDataList.add(paragraphRenderData);
+ cellRenderData.setParagraphs(paragraphRenderDataList);
+ cells.add(cellRenderData);
+ }
+ } else {
+ //鍏朵綑琛�
+ if (j == 0) {
+ //绗竴鍒�
+ textRenderData.setText(products.get(i - 1).getInspectionItemSubclass());
+ renderData.add(textRenderData);
+ paragraphRenderData.setContents(renderData);
+ paragraphRenderDataList.add(paragraphRenderData);
+ cellRenderData.setParagraphs(paragraphRenderDataList);
+ cells.add(cellRenderData);
+ } else if (j == 1) {
+ //绗簩鍒�
+ textRenderData.setText(products.get(i - 1).getTell());
+ renderData.add(textRenderData);
+ paragraphRenderData.setContents(renderData);
+ paragraphRenderDataList.add(paragraphRenderData);
+ cellRenderData.setParagraphs(paragraphRenderDataList);
+ cells.add(cellRenderData);
+ } else {
+ //绗笁鍒�
+ //鑾峰彇妫�楠岄」鐩拰缁撹
+ InsProduct insProduct = products.get(i - 1);
+ String shiyanjieguo = "鏃犲紓甯�";
+ if (ObjectUtils.isNotNull(insProduct.getInsResult())) {
+ shiyanjieguo = insProduct.getInsResult() == 0 ? "涓嶅悎鏍�" : "鏃犲紓甯�";
+ }
+ textRenderData.setText("缁忚繃" + insProduct.getInspectionItemSubclass() + "涔嬪悗锛屾牱鍝�" + shiyanjieguo + "銆�");
+ renderData.add(textRenderData);
+ paragraphRenderData.setContents(renderData);
+ paragraphRenderDataList.add(paragraphRenderData);
+ cellRenderData.setParagraphs(paragraphRenderDataList);
+ cells.add(cellRenderData);
+ }
+ }
+ }
+ rowRenderData.setCells(cells);
+ if (rowRenderData.getCells().size() != 0) {
+ rows.add(rowRenderData);
+ }
+ }
+ TableRenderData tableRenderData = new TableRenderData();
+ tableRenderData.setRows(rows);
+ int countSize = tableRenderData.getRows().get(0).getCells().size();
+ for (RowRenderData row : tableRenderData.getRows()) {
+ if (row.getCells().size() != countSize) {
+ throw new ErrorException("姣忚鍗曞厓鏍间笉鐩哥瓑");
+ }
+ }
+ TableStyle tableStyle = new TableStyle();
+ tableStyle.setWidth(XWPFTable.DEFAULT_PERCENTAGE_WIDTH);
+ tableStyle.setAlign(TableRowAlign.CENTER);
+ BorderStyle borderStyle = new BorderStyle();
+ borderStyle.setColor("000000");
+ borderStyle.setType(XWPFTable.XWPFBorderType.THICK);
+ borderStyle.setSize(4);
+ tableStyle.setLeftBorder(borderStyle);
+ tableStyle.setTopBorder(borderStyle);
+ tableStyle.setRightBorder(borderStyle);
+ tableStyle.setBottomBorder(borderStyle);
+ tableRenderData.setTableStyle(tableStyle);
+ Map<String, Object> table4 = new HashMap<>();
+ table4.put("table4", tableRenderData);
+ tables4.add(table4);
+ }
+
+ /*妫�楠屾牱鍝佷俊鎭�*/
+ //鏍峰搧鐓х墖
+ List<UrlListDto> urlList = new ArrayList<>();
+ //鑾峰彇闄勪欢鍥剧墖绫诲瀷
+ List<InsOrderFile> insOrderFiles = insOrderFileMapper.selectList(Wrappers.<InsOrderFile>lambdaQuery()
+ .eq(InsOrderFile::getType, 1)
+ .eq(InsOrderFile::getInsSampleId,insReportDto1.getSampleId())
+ .eq(InsOrderFile::getInsOrderId, orderId));
+ if (CollectionUtils.isNotEmpty(insOrderFiles)) {
+ UrlListDto urlListDto = new UrlListDto();
+ for (int i = 0; i < insOrderFiles.size(); i++) {
+ if (i % 2 == 0) {
+ urlListDto = new UrlListDto();
+ urlListDto.setImageOne(Pictures.ofLocal(imgUrl + "/" + insOrderFiles.get(i).getFileUrl()).create());
+ if (i == insOrderFiles.size() - 1) {
+ urlList.add(urlListDto);
+ }
+ } else {
+ urlListDto.setImageTwo(Pictures.ofLocal(imgUrl + "/" + insOrderFiles.get(i).getFileUrl()).create());
+ urlList.add(urlListDto);
+ }
+
+ }
+ }
+ //鏍峰搧缂栧彿鍙傜収涓婅堪sampleCode
+
+
+ /*妫�娴嬩汉鍛樹俊鎭�*/
+ List<InsUserDto> insUsers = new ArrayList<>();
+ //鏌ヨ姣忎釜绔欑偣鐨勬楠屼汉鍛樹笌澶嶆牳浜哄憳
+ List<InsSampleUser> insSampleUsers = insSampleUserMapper.selectList(Wrappers.<InsSampleUser>lambdaQuery()
+ .eq(InsSampleUser::getInsSampleId, insReportDto1.getSampleId()));
+ //鏍规嵁绔欑偣杩涜鍒嗙被
+ Map<String, List<InsSampleUser>> listMap = insSampleUsers.stream().collect(Collectors.groupingBy(InsSampleUser::getSonLaboratory));
+ int index2=1;
+ for (Map.Entry<String, List<InsSampleUser>> entry : listMap.entrySet()) {
+ InsUserDto insUserDto = new InsUserDto();
+ insUserDto.setIndex(index2+"");//搴忓彿
+ insUserDto.setInsProduct(entry.getKey());//椤圭洰
+ List<InsSampleUser> insUserList = entry.getValue().stream().filter(insSampleUser -> insSampleUser.getState() == 0).collect(Collectors.toList());//妫�楠屼汉
+ String insUser = insUserList.stream().map(insSampleUser -> {
+ User user = userMapper.selectById(insSampleUser.getUserId());
+ return user.getName();
+ }).distinct().collect(Collectors.joining(","));
+ insUserDto.setInsUser(insUser);//娴嬭瘯浜哄憳
+ List<InsSampleUser> checkUserList = entry.getValue().stream().filter(insSampleUser -> insSampleUser.getState() == 1).collect(Collectors.toList());//澶嶆牳浜�
+ String checkUser = checkUserList.stream().map(insSampleUser -> {
+ User user = userMapper.selectById(insSampleUser.getUserId());
+ return user.getName();
+ }).distinct().collect(Collectors.joining(","));
+ insUserDto.setCheckUser(checkUser);//瀹℃牳浜哄憳
+ insUsers.add(insUserDto);
+ index2++;
+ }
+
+ /*娴嬭瘯浠〃*/
+ Set<String> deviceSet = new HashSet<>();
+ //鏌ヨ鎵�鏈夐」鐩殑璁惧
+ List<Integer> productIds = insProducts.stream().map(InsProduct::getId).collect(Collectors.toList());
+ //鏅��
+ List<InsProductResult> results = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery()
+ .in(InsProductResult::getInsProductId, productIds));
+ if (results.size()>0){
+ for (InsProductResult result : results) {
+ List<JSONObject> jsonObjects = JSON.parseArray(result.getEquipValue(), JSONObject.class);
if (ObjectUtils.isNotEmpty(jsonObjects)) {
for (JSONObject jsonObject : jsonObjects) {
String value = jsonObject.getString("v");
@@ -2658,540 +3044,63 @@
}
}
}
- //鐢佃矾璇曢獙缁撴灉琛�
- List<InsProductResult2> insProductResult2s = insProductResult2Mapper.selectList(
- Wrappers.<InsProductResult2>lambdaQuery()
- .eq(InsProductResult2::getNum, num)
- .in(InsProductResult2::getInsProductId, productIds));
- for (InsProductResult2 result2 : insProductResult2s) {
+ }
+ //鐢佃矾
+ List<InsProductResult2> result2s = insProductResult2Mapper.selectList(Wrappers.<InsProductResult2>lambdaQuery()
+ .in(InsProductResult2::getInsProductId, productIds));
+ if (result2s.size()>0){
+ for (InsProductResult2 result2 : result2s) {
String equipValue = result2.getEquipValue();
if (equipValue != null && !equipValue.isEmpty()) {
deviceSet.add(equipValue);
}
}
}
-
-
- /*妫�楠屾儏鍐典竴瑙堣〃*/
- List<Map<String, String>> tables = new ArrayList<>();
- List<Map<String, Object>> tables2 = new ArrayList<>();
- List<Map<String, Object>> tables3 = new ArrayList<>();
- List<Map<String, Object>> tables4 = new ArrayList<>();
- Integer indexs = 1;
- //鍒ゆ柇鏄惁鏈夌數璺瘯楠�,鐜璇曢獙
- List<String> strings = insReportDto1.getInsReportDto2s().stream().map(InsReportDto2::getLaboratory).distinct().collect(Collectors.toList());
- if (strings.contains("杩戝満") || strings.contains("杩滃満")) {
- Map<String, String> table = new HashMap<>();
- table.put("indexs", indexs + "");
- indexs += 1;
- table.put("term", "杈愬皠鏂瑰悜鍥惧弬鏁�");
- table.put("result", "涓嶅垽瀹�");
- tables.add(table);
- /*杈愬皠鐨勮瘯楠岃〃*/
- List<InsOrderFile> insOrderFiles = insOrderFileMapper.selectList(Wrappers.<InsOrderFile>lambdaQuery()
- .eq(InsOrderFile::getInsOrderId, orderId)
- .eq(InsOrderFile::getInsSampleId, insReportDto1.getSampleId())
- .like(InsOrderFile::getFileName, "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�")
- .and(wrapper -> wrapper
- .eq(InsOrderFile::getSonLaboratory, "杩滃満")
- .or()
- .eq(InsOrderFile::getSonLaboratory, "杩戝満")
- ));
- if (insOrderFiles.size() > 0) {
- int aa = 0;
- for (InsOrderFile insOrderFile : insOrderFiles) {
- try {
- XWPFDocument circuitParamsDoc = new XWPFDocument(new FileInputStream(wordUrl + "/" + insOrderFile.getFileUrl()));
- // 閬嶅巻鐢佃矾鍙傛暟鏂囦欢鐨勬墍鏈夊厓绱狅紝娈佃惤鍜岃〃鏍�
- for (IBodyElement element : circuitParamsDoc.getBodyElements()) {
- Map<String, Object> table3 = new HashMap<>();
- TableRenderData tableData = new TableRenderData();
- List<RowRenderData> rows = new ArrayList<>();
- if (element instanceof XWPFTable) {
- aa += 1;
- XWPFTable tab = (XWPFTable) element;
- List<XWPFTableRow> row = tab.getRows();
- for (int i = 0; i < row.size(); i++) {
- RowRenderData rowRenderData = new RowRenderData();
- List<CellRenderData> cells = new ArrayList<>();
- List<XWPFTableCell> cell = row.get(i).getTableCells();
- for (int j = 0; j < cell.size(); j++) {
- CellRenderData cellRenderData = new CellRenderData();
- List<ParagraphRenderData> paragraphRenderDataList = new ArrayList<>();
- ParagraphRenderData paragraphRenderData = new ParagraphRenderData();
- ParagraphStyle paragraphStyle = new ParagraphStyle();
- paragraphStyle.setAlign(ParagraphAlignment.CENTER);
- paragraphRenderData.setParagraphStyle(paragraphStyle);
- List<RenderData> renderData = new ArrayList<>();
- TextRenderData textRenderData = new TextRenderData();
- Style style = new Style();
- style.setFontFamily("瀹嬩綋");
- style.setColor("000000");
- textRenderData.setStyle(style);
- CTTcPr tcPr = cell.get(j).getCTTc().getTcPr();
- if (tcPr != null) {
- //鍚堝苟鍒�
- CTHMerge hMerge = tcPr.getHMerge();
- if (ObjectUtils.isNotEmpty(hMerge)) {
- if (STMerge.RESTART.equals(hMerge.getVal()) || STMerge.CONTINUE.equals(hMerge.getVal())) {
- int index = j;
- String text = null;
- while (text == null || text.equals("")) {
- if (index < 0) {
- text = "/";
- }
- text = cell.get(index).getText();
- index--;
- }
- textRenderData.setText(text + "鈭�88" + aa + i);
- }
- }
- //鍚堝苟琛�
- CTVMerge vMerge = tcPr.getVMerge();
- if (ObjectUtils.isNotEmpty(vMerge)) {
- if (STMerge.RESTART.equals(vMerge.getVal()) || STMerge.CONTINUE.equals(vMerge.getVal())) {
- int index = i;
- String text = null;
- while (text == null || text.equals("")) {
- if (index < 0) {
- text = "/";
- break;
- }
- text = row.get(index).getCell(j).getText();
- index--;
- }
- if (text.equals("鍚堟牸") || text.equals("涓嶅悎鏍�")) {
- textRenderData.setText(text + "鈭�25" + aa + j);
- } else {
- textRenderData.setText(text + "鈭�22" + aa + j);
- }
- }
- }
- } else {
- textRenderData.setText(cell.get(j).getText());
- }
- renderData.add(textRenderData);
- paragraphRenderData.setContents(renderData);
- paragraphRenderDataList.add(paragraphRenderData);
- cellRenderData.setParagraphs(paragraphRenderDataList);
- cells.add(cellRenderData);
- }
- rowRenderData.setCells(cells);
- rows.add(rowRenderData);
- }
- tableData.setRows(rows);
- table3.put("table3", tableData);
- tables3.add(table3);
- }
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
+ List<DevListDto> devList = new ArrayList<>();
+ if (deviceSet.size() != 0) {
+ devList = insOrderMapper.selectDeviceList(deviceSet);
}
- if (strings.contains("鐢佃矾璇曢獙")) {
- strings.remove("鐢佃矾璇曢獙");
- strings.remove("杩戝満");
- strings.remove("杩滃満");
- List<Integer> productIdes = insSample.getInsProduct().stream().map(InsProduct::getId).collect(Collectors.toList());
- List<Integer> collect = insProductResult2Mapper.selectList(Wrappers.<InsProductResult2>lambdaQuery()
- .in(InsProductResult2::getInsProductId, productIdes))
- .stream().map(InsProductResult2::getResult).distinct().collect(Collectors.toList());
- //濡傛灉鏈夌幆澧冭瘯楠�
- if (strings.size() > 0) {
- Map<String, String> table1 = new HashMap<>();
- table1.put("indexs", indexs + "");
- table1.put("term", "鐜璇曢獙鍓嶇數璺弬鏁�");
- if (collect.contains(0)) {
- table1.put("result", "涓嶅悎鏍�");
- } else {
- table1.put("result", "鍚堟牸");
- }
- tables.add(table1);
- indexs += 1;
- Map<String, String> table2 = new HashMap<>();
- table2.put("indexs", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
- table2.put("term", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
- table2.put("result", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
- tables.add(table2);
-
- Map<String, String> table3 = new HashMap<>();
- table3.put("indexs", indexs + "");
- table3.put("term", "鐜璇曢獙鍚庣數璺弬鏁�");
- if (collect.contains(0)) {
- table3.put("result", "涓嶅悎鏍�");
- } else {
- table3.put("result", "鍚堟牸");
- }
- tables.add(table3);
- indexs += 1;
-
- /*鍒涘缓鐜璇曢獙鏉′欢琛�2*(椤圭洰鏁�+1)*/
- List<InsProduct> products = insSample.getInsProduct().stream()
- .filter(insProduct -> !insProduct.getInspectionItem().equals("鐢佃矾璇曢獙"))
- .filter(insProduct -> !insProduct.getInspectionItem().equals("杈愬皠璇曢獙"))
- .map(insProduct -> {
- InsProduct product = new InsProduct();
- product.setInspectionItemSubclass(insProduct.getInspectionItemSubclass());
- product.setTell(insProduct.getTell());
- return product;
- }).distinct().collect(Collectors.toList());
- List<RowRenderData> rows = new ArrayList<>();
- //琛屾暟
- for (int i = 0; i < products.size() + 1; i++) {
- RowRenderData rowRenderData = new RowRenderData();
- RowStyle rowStyle = new RowStyle();
- rowStyle.setHeight(40);
- rowRenderData.setRowStyle(rowStyle);
- List<CellRenderData> cells = new ArrayList<>();
- //鍒楁暟
- for (int j = 0; j < 2; j++) {
- CellRenderData cellRenderData = new CellRenderData();
- CellStyle cellStyle = new CellStyle();
- cellStyle.setVertAlign(XWPFTableCell.XWPFVertAlign.CENTER);
- cellRenderData.setCellStyle(cellStyle);
- List<ParagraphRenderData> paragraphRenderDataList = new ArrayList<>();
- ParagraphRenderData paragraphRenderData = new ParagraphRenderData();
- ParagraphStyle paragraphStyle = new ParagraphStyle();
- paragraphStyle.setAlign(ParagraphAlignment.CENTER);
- paragraphRenderData.setParagraphStyle(paragraphStyle);
- List<RenderData> renderData = new ArrayList<>();
- TextRenderData textRenderData = new TextRenderData();
- Style style = new Style();
- style.setFontFamily("瀹嬩綋");
- style.setColor("000000");
- textRenderData.setStyle(style);
- if (i == 0) {
- //绗竴琛�
- if (j == 0) {
- //绗竴鍒�
- textRenderData.setText("椤圭洰");
- renderData.add(textRenderData);
- paragraphRenderData.setContents(renderData);
- paragraphRenderDataList.add(paragraphRenderData);
- cellRenderData.setParagraphs(paragraphRenderDataList);
- cells.add(cellRenderData);
- } else {
- //绗簩鍒�
- textRenderData.setText("璇曢獙瑕佹眰");
- renderData.add(textRenderData);
- paragraphRenderData.setContents(renderData);
- paragraphRenderDataList.add(paragraphRenderData);
- cellRenderData.setParagraphs(paragraphRenderDataList);
- cells.add(cellRenderData);
- }
- } else {
- //鍏朵綑琛�
- if (j == 0) {
- //绗竴鍒�
- textRenderData.setText(products.get(i - 1).getInspectionItemSubclass());
- renderData.add(textRenderData);
- paragraphRenderData.setContents(renderData);
- paragraphRenderDataList.add(paragraphRenderData);
- cellRenderData.setParagraphs(paragraphRenderDataList);
- cells.add(cellRenderData);
- } else {
- textRenderData.setText(products.get(i - 1).getTell());
- renderData.add(textRenderData);
- paragraphRenderData.setContents(renderData);
- paragraphRenderDataList.add(paragraphRenderData);
- cellRenderData.setParagraphs(paragraphRenderDataList);
- cells.add(cellRenderData);
- }
- }
- }
- rowRenderData.setCells(cells);
- if (rowRenderData.getCells().size() != 0) {
- rows.add(rowRenderData);
- }
- }
- TableRenderData tableRenderData = new TableRenderData();
- tableRenderData.setRows(rows);
- int countSize = tableRenderData.getRows().get(0).getCells().size();
- for (RowRenderData row : tableRenderData.getRows()) {
- if (row.getCells().size() != countSize) {
- throw new ErrorException("姣忚鍗曞厓鏍间笉鐩哥瓑");
- }
- }
- TableStyle tableStyle = new TableStyle();
- tableStyle.setWidth(XWPFTable.DEFAULT_PERCENTAGE_WIDTH);
- tableStyle.setAlign(TableRowAlign.CENTER);
- BorderStyle borderStyle = new BorderStyle();
- borderStyle.setColor("000000");
- borderStyle.setType(XWPFTable.XWPFBorderType.THICK);
- borderStyle.setSize(4);
- tableStyle.setLeftBorder(borderStyle);
- tableStyle.setTopBorder(borderStyle);
- tableStyle.setRightBorder(borderStyle);
- tableStyle.setBottomBorder(borderStyle);
- tableRenderData.setTableStyle(tableStyle);
- Map<String, Object> table4 = new HashMap<>();
- table4.put("table4", tableRenderData);
- tables4.add(table4);
- } else {
- Map<String, String> table = new HashMap<>();
- table.put("indexs", indexs + "");
- table.put("term", "鐢佃矾鍙傛暟");
- if (collect.contains(0)) {
- table.put("result", "涓嶅悎鏍�");
- } else {
- table.put("result", "鍚堟牸");
- }
- tables.add(table);
- indexs += 1;
- }
- /*鍕鹃�夌殑鐢佃矾璇曢獙琛�*/
- for (InsReportDto2 insReportDto2 : insReportDto1.getInsReportDto2s()) {
- InsOrderUser insOrderUser = insOrderUserMapper.selectById(insReportDto2.getInsOrderUsersId());
- InsOrderState orderState = insOrderStateMapper.selectById(insOrderUser.getInsOrderStateId());
- if (orderState.getLaboratory().equals("鐢佃矾璇曢獙")) {
- orderState.setNum(insOrderUser.getNum());
- if (!insOrder.getSampleType().equals("鏃犳簮鍣ㄤ欢")) {
- getWord1(insOrderUser.getTerm(), orderState, tables2);
- } else {
- getWord2(insOrderUser.getTerm(), orderState, tables2);
- }
- }
- }
- } else {
- //濡傛灉鍙湁鐜璇曢獙娌℃湁鐢佃矾璇曢獙
- strings.remove("杩戝満");
- strings.remove("杩滃満");
- if (strings.size() > 0) {
- Map<String, String> table2 = new HashMap<>();
- table2.put("indexs", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
- table2.put("term", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
- table2.put("result", "鐜璇曢獙:" + String.join("銆�", strings) + "鈭�1");
- tables.add(table2);
-
- /*鍒涘缓鐜璇曢獙鏉′欢琛�2*(椤圭洰鏁�+1)*/
- List<InsProduct> products = insSample.getInsProduct().stream()
- .filter(insProduct -> !insProduct.getInspectionItem().equals("鐢佃矾璇曢獙"))
- .filter(insProduct -> !insProduct.getInspectionItem().equals("杈愬皠璇曢獙"))
- .map(insProduct -> {
- InsProduct product = new InsProduct();
- product.setInspectionItemSubclass(insProduct.getInspectionItemSubclass());
- product.setTell(insProduct.getTell());
- return product;
- }).distinct().collect(Collectors.toList());
- List<RowRenderData> rows = new ArrayList<>();
- //琛屾暟
- for (int i = 0; i < products.size() + 1; i++) {
- RowRenderData rowRenderData = new RowRenderData();
- RowStyle rowStyle = new RowStyle();
- rowStyle.setHeight(40);
- rowRenderData.setRowStyle(rowStyle);
- List<CellRenderData> cells = new ArrayList<>();
- //鍒楁暟
- for (int j = 0; j < 2; j++) {
- CellRenderData cellRenderData = new CellRenderData();
- CellStyle cellStyle = new CellStyle();
- cellStyle.setVertAlign(XWPFTableCell.XWPFVertAlign.CENTER);
- cellRenderData.setCellStyle(cellStyle);
- List<ParagraphRenderData> paragraphRenderDataList = new ArrayList<>();
- ParagraphRenderData paragraphRenderData = new ParagraphRenderData();
- ParagraphStyle paragraphStyle = new ParagraphStyle();
- paragraphStyle.setAlign(ParagraphAlignment.CENTER);
- paragraphRenderData.setParagraphStyle(paragraphStyle);
- List<RenderData> renderData = new ArrayList<>();
- TextRenderData textRenderData = new TextRenderData();
- Style style = new Style();
- style.setFontFamily("瀹嬩綋");
- style.setColor("000000");
- textRenderData.setStyle(style);
- if (i == 0) {
- //绗竴琛�
- if (j == 0) {
- //绗竴鍒�
- textRenderData.setText("椤圭洰");
- renderData.add(textRenderData);
- paragraphRenderData.setContents(renderData);
- paragraphRenderDataList.add(paragraphRenderData);
- cellRenderData.setParagraphs(paragraphRenderDataList);
- cells.add(cellRenderData);
- } else {
- //绗簩鍒�
- textRenderData.setText("璇曢獙瑕佹眰");
- renderData.add(textRenderData);
- paragraphRenderData.setContents(renderData);
- paragraphRenderDataList.add(paragraphRenderData);
- cellRenderData.setParagraphs(paragraphRenderDataList);
- cells.add(cellRenderData);
- }
- } else {
- //鍏朵綑琛�
- if (j == 0) {
- //绗竴鍒�
- textRenderData.setText(products.get(i - 1).getInspectionItemSubclass());
- renderData.add(textRenderData);
- paragraphRenderData.setContents(renderData);
- paragraphRenderDataList.add(paragraphRenderData);
- cellRenderData.setParagraphs(paragraphRenderDataList);
- cells.add(cellRenderData);
- } else {
- textRenderData.setText(products.get(i - 1).getTell());
- renderData.add(textRenderData);
- paragraphRenderData.setContents(renderData);
- paragraphRenderDataList.add(paragraphRenderData);
- cellRenderData.setParagraphs(paragraphRenderDataList);
- cells.add(cellRenderData);
- }
- }
- }
- rowRenderData.setCells(cells);
- if (rowRenderData.getCells().size() != 0) {
- rows.add(rowRenderData);
- }
- }
- TableRenderData tableRenderData = new TableRenderData();
- tableRenderData.setRows(rows);
- int countSize = tableRenderData.getRows().get(0).getCells().size();
- for (RowRenderData row : tableRenderData.getRows()) {
- if (row.getCells().size() != countSize) {
- throw new ErrorException("姣忚鍗曞厓鏍间笉鐩哥瓑");
- }
- }
- TableStyle tableStyle = new TableStyle();
- tableStyle.setWidth(XWPFTable.DEFAULT_PERCENTAGE_WIDTH);
- tableStyle.setAlign(TableRowAlign.CENTER);
- BorderStyle borderStyle = new BorderStyle();
- borderStyle.setColor("000000");
- borderStyle.setType(XWPFTable.XWPFBorderType.THICK);
- borderStyle.setSize(4);
- tableStyle.setLeftBorder(borderStyle);
- tableStyle.setTopBorder(borderStyle);
- tableStyle.setRightBorder(borderStyle);
- tableStyle.setBottomBorder(borderStyle);
- tableRenderData.setTableStyle(tableStyle);
- Map<String, Object> table4 = new HashMap<>();
- table4.put("table4", tableRenderData);
- tables4.add(table4);
- }
- }
+ /*鐢熸垚鎶ュ憡*/
ZipSecureFile.setMinInflateRatio(0.0001);
InputStream inputStream = this.getClass().getResourceAsStream("/static/report-template.docx");
- StringBuilder standardMethod2 = new StringBuilder();
- for (String s1 : standardMethod) {
- standardMethod2.append("锛沑n").append(s1);
- }
- standardMethod2.append("锛沑n").append("GB/T 9410-2008 銆婄Щ鍔ㄩ�氫俊澶╃嚎閫氱敤鎶�鏈鑼冦��");
- standardMethod2.replace(0, 1, "");
- List<Map<String, String>> deviceList = null;
- if (deviceSet.size() != 0) {
- deviceList = insOrderMapper.selectDeviceList(deviceSet);
- }
- Map<String, String> codeStr = new HashMap<>();
- codeStr.put("鎶ュ憡缂栧彿", insReport.getCode());
- codeStr.put("鏍峰搧鍚嶇О", insSample.getSample());
- codeStr.put("瑙勬牸鍨嬪彿", insSample.getModel());
- codeStr.put("鍙戞斁鏃ユ湡", now.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
- String codePath;
- try {
- codePath = new MatrixToImageWriter().code(JackSonUtil.marshal(codeStr).replaceAll("\\{", "")
- .replaceAll("}", "").replaceAll(",", "").replaceAll("\"", ""), twoCode);
- } catch (Exception e) {
- throw new RuntimeException(e);
- }
- String modelStr = "";
- for (String model : models) {
- modelStr += "," + model;
- }
- String finalModelStr = modelStr;
- String sampleEn = insSampleMapper.getSampleEn(insOrder.getSample());
- String orderType = insOrderMapper.getEnumLabelByValue(insOrder.getOrderType());
- String formType = insOrderMapper.getEnumLabelByValue(insOrder.getFormType());
- ConfigureBuilder builder = Configure.builder();
- builder.useSpringEL(true);
- List<Map<String, String>> finalDeviceList = deviceList;
- List<Map<String, String>> sampleList = insSampleMapper.selectSampleList(orderId);
- Integer userId = insSampleUserMapper.selectOne(Wrappers.<InsSampleUser>lambdaQuery()
- .eq(InsSampleUser::getInsSampleId, insReportDto1.getSampleId())
- .eq(InsSampleUser::getState, 0)
- .last("limit 1")).getUserId();
- String signatureUrl;
- try {
- signatureUrl = userMapper.selectById(userId).getSignatureUrl();
- } catch (Exception e) {
- throw new ErrorException("鎵句笉鍒版楠屼汉鐨勭鍚�");
- }
- if (ObjectUtils.isEmpty(signatureUrl) || signatureUrl.equals("")) {
- throw new ErrorException("鎵句笉鍒版楠屼汉鐨勭鍚�");
- }
- Custom custom = customMapper.selectById(insOrder.getCompanyId());
-
- /*鑾峰彇闄勪欢鍥剧墖绫诲瀷*/
- List<Map<String, Object>> images = new ArrayList<>();
- List<InsOrderFile> insOrderFiles = insOrderFileMapper.selectList(Wrappers.<InsOrderFile>lambdaQuery().eq(InsOrderFile::getType, 1).eq(InsOrderFile::getInsOrderId, orderId));
- if (CollectionUtils.isNotEmpty(insOrderFiles)) {
- insOrderFiles.forEach(insOrderFile -> {
- Map<String, Object> image = new HashMap<>();
- PictureRenderData pictureRenderData = Pictures.ofLocal(imgUrl + "/" + insOrderFile.getFileUrl()).sizeInCm(17, 20).create();
- image.put("url", pictureRenderData);
- image.put("report", insReport);
- images.add(image);
- });
- }
- //濮旀墭浜哄拰鐢佃瘽瀛楁鍒ゆ柇
- if (ObjectUtils.isEmpty(insOrder.getPrepareUser())) {
- insOrder.setPrepareUser("/");
- }
- if (ObjectUtils.isEmpty(insOrder.getPhone())) {
- insOrder.setPhone("/");
- }
- //妫�楠岄」鐩殑鐜
- InsProduct insProduct = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
- .eq(InsProduct::getState, 1)
- .eq(InsProduct::getInsSampleId, insReportDto1.getSampleId())).get(0);
- String environment = "";
- environment = (ObjectUtils.isNotEmpty(insProduct.getTemperature()) ? insProduct.getTemperature() + "鈩� " : "") + (ObjectUtils.isNotEmpty(insProduct.getHumidity()) ? insProduct.getHumidity() + "%" : "");
- String finalEnvironment = environment;
- String title3 = "";
- if (tables3.size() > 0) {
- title3 = "杈愬皠鏂瑰悜鍥惧弬鏁�";
- }
+ Configure configure = Configure.builder()
+ .bind("insProductList", new HackLoopTableRenderPolicy())
+ .bind("devList", new HackLoopTableRenderPolicy())
+ .bind("insUsers", new HackLoopTableRenderPolicy())
+ .bind("urlList", new HackLoopTableRenderPolicy())
+ .build();
+ List<DevListDto> finalDevList = devList;
String finalTitle = title3;
- XWPFTemplate template = XWPFTemplate.compile(inputStream, builder.build()).render(
+ XWPFTemplate template = XWPFTemplate.compile(inputStream, configure).render(
new HashMap<String, Object>() {{
- put("order", insOrder);
- put("report", insReport);
- put("departLims", departLims);
- put("sampleCode", sampleCode);
- put("environment", finalEnvironment);
- put("custom", custom);
- put("sampleSize", "1");
- put("standardMethod", (standardMethod2.toString().equals("null") ? "" : standardMethod2));
- put("deviceList", finalDeviceList);
- put("tables", tables);
- put("tables2", tables2);
- put("title3", finalTitle);
- put("tables3", tables3);
- put("tables4", tables4);
- put("sampleList", sampleList);
- put("twoCode", Pictures.ofLocal(codePath).create());
- put("models", finalModelStr.replace(",", ""));
- put("productSize", productSize);
- put("productSize1", productSize1);
- put("productSize2", productSize2);
- put("productSize3", productSize3);
- put("createTime", now.format(DateTimeFormatter.ofPattern("yyyy骞碝M鏈坉d鏃�")));
-// put("createTimeEn", monthNames[now.getMonthValue() - 1] + " " + now.getDayOfMonth() + ", " + now.getYear());
- put("insTime", insOrder.getInsTime().format(DateTimeFormatter.ofPattern("yyyy骞碝M鏈坉d鏃�")));
- put("insTimeEn", monthNames[insOrder.getInsTime().getMonthValue() - 1] + " " + insOrder.getInsTime().getDayOfMonth() + ", " + insOrder.getInsTime().getYear());
- put("writeUrl", null);
- put("insUrl", Pictures.ofLocal(imgUrl + "/" + signatureUrl).create());
- put("images", images);
- put("examineUrl", null);
- put("ratifyUrl", null);
- put("sampleEn", sampleEn);
- put("orderType", orderType);
- put("getTime", insOrder.getExamineTime().format(DateTimeFormatter.ofPattern("yyyy骞碝M鏈坉d鏃�")));
- put("getTimeEn", monthNames[insOrder.getExamineTime().getMonthValue() - 1] + " " + insOrder.getExamineTime().getDayOfMonth() + ", " + insOrder.getExamineTime().getYear());
- put("seal1", null);
- put("seal2", null);
- put("formTypeCh", formType);
- put("formTypeEn", insOrder.getFormType());
+ put("sampleName", sampleName); //浜у搧鍚嶇О
+ put("models",models); //鍨嬪彿瑙勬牸
+ put("custom", custom); //濮旀墭鍗曚綅
+ put("createTime", now.format(DateTimeFormatter.ofPattern("yyyy骞碝M鏈坉d鏃�"))); //鎶ュ憡鍙戝竷鏃ユ湡
+ put("departLims", departLims); //濮旀墭閮ㄩ棬
+ put("sampleCode", sampleCode); //鏍峰搧缂栧彿
+ put("order", insOrder); //璁㈠崟涓讳綋淇℃伅
+ put("getTime", insOrder.getExamineTime().format(DateTimeFormatter.ofPattern("yyyy骞碝M鏈坉d鏃�"))); //鏉ユ牱鏃ユ湡
+ put("insTime", insOrder.getInsTime().format(DateTimeFormatter.ofPattern("yyyy骞碝M鏈坉d鏃�"))); //妫�娴嬫棩鏈�
+ put("standardMethod", (standardMethod2.toString().equals("null") ? "" : standardMethod2)); //妫�娴嬩緷鎹�
+ put("productSize", productSize); //妫�娴嬬粨璁�
+ put("productSize2", productSize2); //妫�娴嬬粨璁�
+ put("productSize3", productSize3); //妫�娴嬬粨璁�
+ put("report", insReport); //鎶ュ憡缂栧彿
+ put("insProductList", insProductList); //妫�楠屾儏鍐典竴瑙堣〃
+ put("tables2", tables2); //妫�娴嬬粨鏋�
+ put("title3", finalTitle); //妫�娴嬬粨鏋�
+ put("tables3", null); //妫�娴嬬粨鏋�
+ put("tables4", tables4); //妫�娴嬬粨鏋�
+ put("urlList", urlList); //鏍峰搧鐓х墖
+ put("insUsers", insUsers); //妫�娴嬩汉鍛樹俊鎭�
+ put("devList", finalDevList); //娴嬭瘯浠〃
+ put("writeUrl", null); //鎻愪氦浜�
+ put("examineUrl", null); //瀹℃牳浜�
+ put("ratifyUrl", null); //鎵瑰噯浜�
+ put("seal1", null); //鍗扮珷
+ put("seal2", null); //鍗扮珷
}});
try {
ZipSecureFile.setMinInflateRatio(0.0001);
@@ -3211,7 +3120,7 @@
FileInputStream stream = new FileInputStream(path);
XWPFDocument document = new XWPFDocument(stream);
List<XWPFTable> xwpfTables = document.getTables();
- for (int i = 1; i < xwpfTables.size() - (deviceList == null ? 1 : 2); i++) {
+ for (int i = 1; i < xwpfTables.size() - (devList == null ? 1 : 2); i++) {
Set<String> set1 = new HashSet<>();
Map<String, Map<String, Integer>> maps = new HashMap<>();
for (int j = 0; j < xwpfTables.get(i).getRows().size(); j++) {
@@ -3283,7 +3192,7 @@
FileInputStream stream1 = new FileInputStream(path);
XWPFDocument document1 = new XWPFDocument(stream1);
List<XWPFTable> xwpfTables1 = document1.getTables();
- for (int i = 1; i < xwpfTables1.size() - (deviceList == null ? 1 : 2); i++) {
+ for (int i = 1; i < xwpfTables1.size() - (devList == null ? 1 : 2); i++) {
for (int j = 0; j < xwpfTables1.get(i).getRows().size(); j++) {
for (int k = 0; k < xwpfTables1.get(i).getRows().get(j).getTableCells().size(); k++) {
if (xwpfTables1.get(i).getRows().get(j).getTableCells().get(k).getText().contains("@")) {
@@ -3310,14 +3219,57 @@
} catch (IOException e) {
throw new RuntimeException(e);
}
+ // 鏇存柊琛ㄥ崟
+ try {
+ WordprocessingMLPackage targetDoc = WordprocessingMLPackage.load(new File(path));
+ List<Object> targetContent = targetDoc.getMainDocumentPart().getContent();
+ int targetIndex = findFirstTargetIndex(targetDoc, title3);
+ if (targetIndex != -1) {
+ List<Object> forms = new ArrayList<>();
+ for (InsOrderFile insOrderFile : insOrderDocFiles) {
+ // 鍔犺浇婧愭枃妗e苟鎻愬彇琛ㄥ崟鍐呭锛堝亣璁句负琛ㄦ牸锛�
+ WordprocessingMLPackage sourceDoc = WordprocessingMLPackage.load(new File(wordUrl + "/" + insOrderFile.getFileUrl()));
+ List<Object> sourceContent = sourceDoc.getMainDocumentPart().getContent();
+ for (Object obj : sourceContent) {
+ if (obj instanceof JAXBElement) { // 妫�鏌ユ槸鍚︿负 JAXBElement
+ JAXBElement jaxbElement = (JAXBElement)obj;
+ Tbl table = (Tbl) XmlUtils.deepCopy(jaxbElement.getValue());
+ targetIndex++;
+ // 鎻掑叆鍒扮洰鏍囨钀戒箣鍚�
+ targetContent.add(targetIndex, table);
+ forms.add(table);
+ // 鎻掑叆鍒嗛〉绗�
+ P paragraphWithPageBreak = Context.getWmlObjectFactory().createP();
+ R run = Context.getWmlObjectFactory().createR();
+ Br br = Context.getWmlObjectFactory().createBr();
+ br.setType(STBrType.PAGE); // 璁剧疆鍒嗛〉绗︾被鍨�
+ run.getContent().add(br);
+ paragraphWithPageBreak.getContent().add(run);
+ targetIndex++;
+ targetContent.add(targetIndex, paragraphWithPageBreak);
+ }
+ }
+ }
+ }
+ // 淇濆瓨淇敼鍚庣殑鏂囨。
+ targetDoc.save(new File(path));
+ com.spire.doc.Document document = new com.spire.doc.Document();
+ document.loadFromFile(path);
+ // 鏇存柊鐩綍
+ document.updateTableOfContents();
+ // 淇濆瓨鏂囨。
+ document.saveToFile(path, FileFormat.Docx);
+ document.close();
+ }catch (Exception e){
+ log.error(e.getMessage());
+ }
}
-
//鐢佃矾鎶ュ憡鐢ㄤ簬鎬绘姤鍛婄殑鏂规硶(澶╃嚎)
private void getWord1(String term, InsOrderState insOrderState, List<Map<String, Object>> tables2) {
AtomicInteger lable = new AtomicInteger(1);
AtomicInteger index = new AtomicInteger();
- String title = term + "鐢佃矾鍙傛暟";
+ String title = term + "鐢垫�ц兘鍙傛暟";
InsSample insSample = insSampleMapper.selectById(insOrderState.getInsSampleId());
//鏌ヨ椤圭洰
List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
@@ -3371,7 +3323,8 @@
if (inspectionItemSubclass.contains("浜掕皟")) {
aa += (angles + 1) * portRow * often;
}
- } else {
+ }
+ else {
if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�")) {
aa += (angles + 1) * portRow;
}
@@ -3463,7 +3416,7 @@
int qq = 0;
int ss = 0;
//琛ㄦ牸鐨勮鏁�
- for (int i = 0; i <= aa; i++) {
+ for (int i = 0; i <= aa+1; i++) {
RowRenderData rowRenderData = new RowRenderData();
RowStyle rowStyle = new RowStyle();
rowStyle.setHeight(40);
@@ -3487,7 +3440,57 @@
style.setFontFamily("瀹嬩綋");
style.setColor("000000");
textRenderData.setStyle(style);
- if (i == 0) {
+ if (i==0){
+ if (j==0){
+ textRenderData.setText("搴忓彿");
+ renderData.add(textRenderData);
+ paragraphRenderData.setContents(renderData);
+ paragraphRenderDataList.add(paragraphRenderData);
+ cellRenderData.setParagraphs(paragraphRenderDataList);
+ cells.add(cellRenderData);
+ }
+ else if (j == 1) {
+ textRenderData.setText("妫�楠岄」鐩�");
+ renderData.add(textRenderData);
+ paragraphRenderData.setContents(renderData);
+ paragraphRenderDataList.add(paragraphRenderData);
+ cellRenderData.setParagraphs(paragraphRenderDataList);
+ cells.add(cellRenderData);
+ }
+ else if (j == 2) {
+ textRenderData.setText("鍗曚綅");
+ renderData.add(textRenderData);
+ paragraphRenderData.setContents(renderData);
+ paragraphRenderDataList.add(paragraphRenderData);
+ cellRenderData.setParagraphs(paragraphRenderDataList);
+ cells.add(cellRenderData);
+ }
+ else if (j == 3) {
+ textRenderData.setText("鏍囧噯涓庤姹�");
+ renderData.add(textRenderData);
+ paragraphRenderData.setContents(renderData);
+ paragraphRenderDataList.add(paragraphRenderData);
+ cellRenderData.setParagraphs(paragraphRenderDataList);
+ cells.add(cellRenderData);
+ }
+ else if (j == bb-1) {
+ textRenderData.setText("妫�楠岀粨璁�");
+ renderData.add(textRenderData);
+ paragraphRenderData.setContents(renderData);
+ paragraphRenderDataList.add(paragraphRenderData);
+ cellRenderData.setParagraphs(paragraphRenderDataList);
+ cells.add(cellRenderData);
+ }
+ else {
+ textRenderData.setText("妫�楠岀粨鏋溾垜5476" + i);
+ renderData.add(textRenderData);
+ paragraphRenderData.setContents(renderData);
+ paragraphRenderDataList.add(paragraphRenderData);
+ cellRenderData.setParagraphs(paragraphRenderDataList);
+ cells.add(cellRenderData);
+ }
+ }
+ else if (i == 1) {
//绗竴琛�
textRenderData.setText("棰戞锛�" + s + "鈭�0" + lable);
renderData.add(textRenderData);
@@ -3495,7 +3498,10 @@
paragraphRenderDataList.add(paragraphRenderData);
cellRenderData.setParagraphs(paragraphRenderDataList);
cells.add(cellRenderData);
- } else {
+ }
+ else {
+ int u = i;
+ i=i-1;
if (insOrderState.getVersion() == 1) {
//闈炵數璋冪増鏈�(绠�鍗曠増)
if (inspectionItemSubclass.contains("鐢靛帇椹绘尝姣�") && i <= 2 * portRow) {
@@ -3554,7 +3560,8 @@
paragraphRenderDataList.add(paragraphRenderData);
cellRenderData.setParagraphs(paragraphRenderDataList);
cells.add(cellRenderData);
- } else if (j == bb - 1) {
+ }
+ else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if (i % 2 == 0) {
//缁撹
@@ -3566,20 +3573,22 @@
textRenderData.setText("涓嶅垽瀹�");
}
} else {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
}
renderData.add(textRenderData);
paragraphRenderData.setContents(renderData);
paragraphRenderDataList.add(paragraphRenderData);
cellRenderData.setParagraphs(paragraphRenderDataList);
cells.add(cellRenderData);
- } else {
+ }
+ else {
//鍏朵綑鍒�
if (i % 2 == 0) {
//鏈�宸��
String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", "");
+ String text = value.split(",")[(j - 5) + (i - 1) / 2 * (Math.min(ports, 8))];
try {
- textRenderData.setText(value.split(",")[(j - 5) + (i - 1) / 2 * (Math.min(ports, 8))]);
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -3667,7 +3676,8 @@
} else if (j % 2 == 0) {
String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", "");
try {
- textRenderData.setText(value.split(",")[(j - 6) / 2 + (i - cc - 1) * 4] + "鈭�5" + i + (j - 6));
+ String text = value.split(",")[(j - 6) / 2 + (i - cc - 1) * 4];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 6));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -3679,7 +3689,8 @@
} else {
String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", "");
try {
- textRenderData.setText(value.split(",")[(j - 5) / 2 + (i - cc - 1) * 4] + "鈭�5" + i + (j - 5));
+ String text = value.split(",")[(j - 5) / 2 + (i - cc - 1) * 4];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 5));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -3759,7 +3770,8 @@
} else if (j % 2 == 0) {
String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", "");
try {
- textRenderData.setText(value.split(",")[(j - 6) / 2 + (i - (dd == 0 ? cc : dd) - 1) * 4] + "鈭�5" + i + (j - 6));
+ String text = value.split(",")[(j - 6) / 2 + (i - (dd == 0 ? cc : dd) - 1) * 4];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 6));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -3771,7 +3783,8 @@
} else {
String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", "");
try {
- textRenderData.setText(value.split(",")[(j - 5) / 2 + (i - (dd == 0 ? cc : dd) - 1) * 4] + "鈭�5" + i + (j - 5));
+ String text = value.split(",")[(j - 5) / 2 + (i - (dd == 0 ? cc : dd) - 1) * 4];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 5));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -3851,7 +3864,8 @@
} else if (j % 2 == 0) {
String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", "");
try {
- textRenderData.setText(value.split(",")[(j - 6) / 2 + (i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 1) * 4] + "鈭�5" + i + (j - 6));
+ String text = value.split(",")[(j - 6) / 2 + (i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 1) * 4];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 6));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -3863,7 +3877,8 @@
} else {
String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", "");
try {
- textRenderData.setText(value.split(",")[(j - 5) / 2 + (i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 1) * 4] + "鈭�5" + i + (j - 5));
+ String text = value.split(",")[(j - 5) / 2 + (i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) - 1) * 4];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 5));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -3943,7 +3958,8 @@
} else if (j % 2 == 0) {
String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", "");
try {
- textRenderData.setText(value.split(",")[(j - 6) / 2 + (i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) - 1) * 4] + "鈭�5" + i + (j - 6));
+ String text = value.split(",")[(j - 6) / 2 + (i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) - 1) * 4];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 6));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -3955,7 +3971,8 @@
} else {
String value = result2s.get(0).getValue().replaceAll("[\\[\\]\"]", "");
try {
- textRenderData.setText(value.split(",")[(j - 5) / 2 + (i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) - 1) * 4] + "鈭�5" + i + (j - 5));
+ String text = value.split(",")[(j - 5) / 2 + (i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) - 1) * 4];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 5));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -4012,7 +4029,7 @@
} else if (j == 4) {
//绗簲鍒�
if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
- textRenderData.setText("瑙掑害");
+ textRenderData.setText("棰戞");
} else {
textRenderData.setText(result2s.get(0).getAngle().split(",")[(i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 2) % (angles + 1)]);
}
@@ -4024,7 +4041,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
if (products.get(0).getInsResult() == 1) {
textRenderData.setText("鍚堟牸鈭�8" + index + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) + (angles - 1)) / (angles + 1) - 1));
@@ -4046,7 +4063,8 @@
String[] value = result2s.get((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) / portRow / (angles + 2)).getValue().split("\\],\\[");
String[] split = value[(i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 2) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
try {
- textRenderData.setText(split[((j - 5) + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 1) / (angles + 1) % portRow) * (Math.min(ports, 8)))]);
+ String text = split[((j - 5) + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 1) / (angles + 1) % portRow) * (Math.min(ports, 8)))];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -4120,7 +4138,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if (i % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -4150,7 +4168,8 @@
String[] value = result2s.get(0).getValue().split("\\],\\[");
String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
try {
- textRenderData.setText(split[(j - 5) + ((i + (angles - 1)) / (angles + 1) - 1) * (Math.min(ports, 8))]);
+ String text = split[(j - 5) + ((i + (angles - 1)) / (angles + 1) - 1) * (Math.min(ports, 8))];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -4225,7 +4244,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - cc) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -4265,13 +4284,15 @@
String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
if (j % 2 == 0) {
try {
- textRenderData.setText(split[(j - 6) / 2 + ((i - cc) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 6));
+ String text = split[(j - 6) / 2 + ((i - cc) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 6));
} catch (Exception e) {
textRenderData.setText("");
}
} else {
try {
- textRenderData.setText(split[(j - 5) / 2 + ((i - cc) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 5));
+ String text = split[(j - 5) / 2 + ((i - cc) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 5));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -4348,7 +4369,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (dd == 0 ? cc : dd)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -4388,13 +4409,15 @@
String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
if (j % 2 == 0) {
try {
- textRenderData.setText(split[(j - 6) / 2 + ((i - (dd == 0 ? cc : dd)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 6));
+ String text = split[(j - 6) / 2 + ((i - (dd == 0 ? cc : dd)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 6));
} catch (Exception e) {
textRenderData.setText("");
}
} else {
try {
- textRenderData.setText(split[(j - 5) / 2 + ((i - (dd == 0 ? cc : dd)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 5));
+ String text = split[(j - 5) / 2 + ((i - (dd == 0 ? cc : dd)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 5));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -4471,7 +4494,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -4511,13 +4534,15 @@
String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
if (j % 2 == 0) {
try {
- textRenderData.setText(split[(j - 6) / 2 + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 6));
+ String text = split[(j - 6) / 2 + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 6));
} catch (Exception e) {
textRenderData.setText("");
}
} else {
try {
- textRenderData.setText(split[(j - 5) / 2 + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 5));
+ String text = split[(j - 5) / 2 + ((i - (ee == 0 ? ((dd == 0 ? cc : dd)) : ee)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 5));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -4594,7 +4619,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -4633,13 +4658,15 @@
String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
if (j % 2 == 0) {
try {
- textRenderData.setText(split[(j - 6) / 2 + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 6));
+ String text = split[(j - 6) / 2 + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 6));
} catch (Exception e) {
textRenderData.setText("");
}
} else {
try {
- textRenderData.setText(split[(j - 5) / 2 + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)] + "鈭�5" + i + (j - 5));
+ String text = split[(j - 5) / 2 + ((i - (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff)) / (angles + 2)) * (ports > 8 ? 4 : (ports + 1) / 2)];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�5" + i + (j - 5));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -4699,7 +4726,7 @@
//绗簲鍒�
if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
//瑙掑害
- textRenderData.setText("瑙掑害");
+ textRenderData.setText("棰戞");
} else {
//鍊�
textRenderData.setText(result2s.get(0).getAngle().split(",")[(i + (angles - 1)) % (angles + 1)]);
@@ -4712,7 +4739,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -4738,7 +4765,8 @@
String[] value = result2s.get((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg)) / portRow / (angles + 2)).getValue().split("\\],\\[");
String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
try {
- textRenderData.setText(split[((j - 5) + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 1) / (angles + 1) % portRow) * (Math.min(ports, 8)))]);
+ String text = split[((j - 5) + ((i - (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) - 1) / (angles + 1) % portRow) * (Math.min(ports, 8)))];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -4809,7 +4837,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -4834,7 +4862,8 @@
//鏈�宸��
String[] value = result2s.get(0).getValue().split("\\],\\[");
String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
- textRenderData.setText(split[0] + "鈭�7" + i);
+ String text = split[0];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�7" + i);
}
renderData.add(textRenderData);
paragraphRenderData.setContents(renderData);
@@ -4902,7 +4931,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -4927,7 +4956,8 @@
//鏈�宸��
String[] value = result2s.get(0).getValue().split("\\],\\[");
String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
- textRenderData.setText(split[0] + "鈭�7" + i);
+ String text = split[0];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)) + "鈭�7" + i);
}
renderData.add(textRenderData);
paragraphRenderData.setContents(renderData);
@@ -4999,7 +5029,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -5029,7 +5059,8 @@
String[] value = result2s.get(0).getValue().split("\\],\\[");
String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
try {
- textRenderData.setText(split[(j - 5) + ((i - (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn)) / (angles + 2)) * Math.min(length, 8)]);
+ String text = split[(j - 5) + ((i - (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn)) / (angles + 2)) * Math.min(length, 8)];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -5106,7 +5137,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn) : pp)) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -5136,7 +5167,8 @@
String[] value = result2s.get(0).getValue().split("\\],\\[");
String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
try {
- textRenderData.setText(split[(j - 5) + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn) : pp)) / (angles + 2)) * Math.min(length, 8)]);
+ String text = split[(j - 5) + ((i - (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn) : pp)) / (angles + 2)) * Math.min(length, 8)];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -5159,7 +5191,7 @@
int k = (angles + 1) * portRow2;
int rr = qq == 0 ? (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn) : pp) : qq;
if (i > rr && i <= rr + k) {
- ss = (rr + k) ;
+ ss = (rr + k);
if (itemSet.add("鏈�澶х浉浣嶅亸宸�")) {
index.getAndIncrement();
}
@@ -5213,7 +5245,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - rr) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -5243,7 +5275,8 @@
String[] value = result2s.get(0).getValue().split("\\],\\[");
String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
try {
- textRenderData.setText(split[(j - 5) + ((i - rr) / (angles + 2)) * Math.min(length, 8)]);
+ String text = split[(j - 5) + ((i - rr) / (angles + 2)) * Math.min(length, 8)];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -5264,7 +5297,7 @@
int length = result2s.get(0).getPort().split(",").length;
int portRow2 = (length % 8 == 0 ? length / 8 : length / 8 + 1);
int k = (angles + 1) * portRow2;
- int rr =ss==0?( qq == 0 ? (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn) : pp) : qq) : ss;
+ int rr = ss == 0 ? (qq == 0 ? (pp == 0 ? (nn == 0 ? (mm == 0 ? (hh == 0 ? (gg == 0 ? (ff == 0 ? (ee == 0 ? ((dd == 0 ? cc : dd)) : ee) : ff) : gg) : hh) : mm) : nn) : pp) : qq) : ss;
if (i > ss) {
if (itemSet.add("鐩镐綅缁濆鍊�")) {
index.getAndIncrement();
@@ -5319,7 +5352,7 @@
} else if (j == bb - 1) {
//鏈�鍚庝竴鍒�
if ((i - ss) % (angles + 1) == 1) {
- textRenderData.setText("/");
+ textRenderData.setText("鍒ゅ畾");
} else {
//缁撹
if (products.get(0).getInsResult() == 1) {
@@ -5349,7 +5382,8 @@
String[] value = result2s.get(0).getValue().split("\\],\\[");
String[] split = value[(i + (angles - 1)) % (angles + 1)].replaceAll("[\\[\\]\"]", "").split(",");
try {
- textRenderData.setText(split[(j - 5) + ((i - ss) / (angles + 2)) * Math.min(length, 8)]);
+ String text = split[(j - 5) + ((i - ss) / (angles + 2)) * Math.min(length, 8)];
+ textRenderData.setText(String.format("%.2f",Double.parseDouble(text)));
} catch (Exception e) {
textRenderData.setText("");
}
@@ -5363,6 +5397,7 @@
}
}
}
+ i=u;
}
}
rowRenderData.setCells(cells);
@@ -5401,7 +5436,7 @@
//鐢佃矾鎶ュ憡鐢ㄤ簬鎬绘姤鍛婄殑鏂规硶(鏃犳簮鍣ㄤ欢)
private void getWord2(String term, InsOrderState insOrderState, List<Map<String, Object>> tables2) {
AtomicInteger index = new AtomicInteger();
- String title = term + "鐢佃矾鍙傛暟";
+ String title = term + "鐢垫�ц兘鍙傛暟";
//鏌ヨ鏍峰搧
InsSample insSample = insSampleMapper.selectById(insOrderState.getInsSampleId());
//鏌ヨ椤圭洰
@@ -5467,7 +5502,8 @@
paragraphRenderDataList.add(paragraphRenderData);
cellRenderData.setParagraphs(paragraphRenderDataList);
cells.add(cellRenderData);
- } else if (j == 1) {
+ }
+ else if (j == 1) {
//绗簩鍒�(妫�楠岄」鐩�)
textRenderData.setText(result2VOS.get(i).getInspectionItemSubclass() + "鈭�2" + index);
renderData.add(textRenderData);
@@ -5475,7 +5511,8 @@
paragraphRenderDataList.add(paragraphRenderData);
cellRenderData.setParagraphs(paragraphRenderDataList);
cells.add(cellRenderData);
- } else if (j == 2) {
+ }
+ else if (j == 2) {
//绗笁鍒�(鍗曚綅)
textRenderData.setText(result2VOS.get(i).getUnit() + "鈭�3" + index);
renderData.add(textRenderData);
@@ -5599,4 +5636,43 @@
}
}
}
+
+ // 鏌ユ壘鏂囨湰棣栨鍑虹幇琛�
+ private int findFirstTargetIndex(WordprocessingMLPackage targetDoc,String textStr){
+ int targetIndex = -1;
+ if(StringUtils.isEmpty(textStr)){
+ return targetIndex;
+ }
+ try {
+ List<Object> targetContent = targetDoc.getMainDocumentPart().getContent();
+ // 鏌ユ壘鐩爣娈佃惤
+ for (int i = 0; i < targetContent.size(); i++) {
+ Object obj = targetContent.get(i);
+ if (obj instanceof P) {
+ P paragraph = (P) obj;
+ for (Object runObj : paragraph.getContent()) {
+ if (runObj instanceof R) {
+ R run = (R) runObj;
+ for (Object textObj : run.getContent()) {
+ if (textObj instanceof JAXBElement) {
+ JAXBElement jaxbElement = (JAXBElement) textObj;
+ if(jaxbElement.getValue() instanceof Text){
+ Text text = (Text) jaxbElement.getValue();
+ if (text.getValue().contains(textStr)) {
+ targetIndex = i;
+ return targetIndex;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ } catch (Exception e) {
+ log.error("findFirstTargetIndex<<<<<<<<<<:{}",e.getMessage());
+ }finally {
+ return targetIndex;
+ }
+ }
}
--
Gitblit v1.9.3