From d1022dab44c4916c2935d10f5b04c7e7bbaa5dad Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期四, 21 十一月 2024 16:26:34 +0800 Subject: [PATCH] 调整 --- inspect-server/src/main/java/com/yuanchu/mom/utils/FuSheUtils.java | 108 +++++++++++++++++++++++++++--------------------------- 1 files changed, 54 insertions(+), 54 deletions(-) diff --git a/inspect-server/src/main/java/com/yuanchu/mom/utils/FuSheUtils.java b/inspect-server/src/main/java/com/yuanchu/mom/utils/FuSheUtils.java index 6249c85..1593dd4 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/utils/FuSheUtils.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/utils/FuSheUtils.java @@ -1,5 +1,6 @@ package com.yuanchu.mom.utils; +import cn.hutool.core.lang.UUID; import com.deepoove.poi.XWPFTemplate; import com.deepoove.poi.config.Configure; import com.deepoove.poi.config.ConfigureBuilder; @@ -11,8 +12,10 @@ import com.yuanchu.mom.exception.ErrorException; import com.yuanchu.mom.mapper.InsOrderFileMapper; import com.yuanchu.mom.mapper.InsOrderMapper; +import com.yuanchu.mom.mapper.InsSampleMapper; import com.yuanchu.mom.pojo.InsOrder; import com.yuanchu.mom.pojo.InsOrderFile; +import com.yuanchu.mom.pojo.InsSample; import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.StringUtils; import org.apache.poi.openxml4j.util.ZipSecureFile; @@ -28,8 +31,6 @@ import javax.annotation.Resource; import java.io.*; -import java.nio.file.Files; -import java.nio.file.Paths; import java.util.*; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -44,7 +45,7 @@ InsOrderFileMapper insOrderFileMapper; @Resource - InsOrderMapper insOrderMapper; + InsSampleMapper insSampleMapper; public void getFuSheWord1(String sonLaboratory, InsOrderFile insOrderFile) { //璇诲彇excel鏂囦欢鍐呭 @@ -87,8 +88,7 @@ default: System.out.print("NULL\t"); } - } - else { + } else { switch (cell.getCellType()) { case STRING: if (StringUtils.isNotEmpty(s)) { @@ -201,8 +201,8 @@ HashMap<String, Object> map2 = new HashMap<>(); List<Map<String, Object>> list = new ArrayList<>(); XWPFDocument document = new XWPFDocument(); - String jiaodu=""; - String port=""; + String jiaodu = ""; + String port = ""; try (CSVReader reader = new CSVReader(new InputStreamReader(new FileInputStream(excelFilePath), fileEncoding))) { List<String[]> records = reader.readAll(); for (int i = 0; i < records.size(); i++) { @@ -213,13 +213,13 @@ for (int i1 = 0; i1 < record.length; i1++) { String value = record[i1]; if (i == 0) { - project.put(i1,value); + project.put(i1, value); } if (i == 1) { - biaozhun.put(project.get(i1).toString(),value); + biaozhun.put(project.get(i1).toString(), value); } - if (i>2) { - if (i1==0&&StringUtils.isNotEmpty(value)) { + if (i > 2) { + if (i1 == 0 && StringUtils.isNotEmpty(value)) { if (map2.size() != 0) { map2.put(port, list); @@ -227,16 +227,16 @@ map2 = new HashMap<>(); } datas1.put(value, ""); - jiaodu=value; + jiaodu = value; } else if (i1 == 1 && StringUtils.isNotEmpty(value)) { if (list.size() != 0) { map2.put(port, list); list = new ArrayList<>(); } map2.put(value, ""); - port=value; + port = value; } else if (StringUtils.isNotEmpty(value)) { - if (value.equals("鏈�澶у��")||value.equals("鏈�灏忓��")||value.equals("鎸囨爣")||value.equals("绫诲埆")) { + if (value.equals("鏈�澶у��") || value.equals("鏈�灏忓��") || value.equals("鎸囨爣") || value.equals("绫诲埆")) { break; } else if (value.equals("骞冲潎鍊�")) { for (int i2 = 0; i2 < record.length; i2++) { @@ -244,24 +244,24 @@ if (value1.equals("骞冲潎鍊�")) { continue; } - pingjun.put(project.get(i2).toString(),value1); + pingjun.put(project.get(i2).toString(), value1); } break; } - map1.put(project.get(i1).toString(),value); + map1.put(project.get(i1).toString(), value); } } System.out.print(value + " "); } - if (map1.size()!=0) { + if (map1.size() != 0) { list.add(map1); } - if (pingjun.size()!=0) { - pingjunzhi.put(jiaodu,pingjun); + if (pingjun.size() != 0) { + pingjunzhi.put(jiaodu, pingjun); } - if (i==records.size()-1) { - map2.put(port,list); - datas1.put(jiaodu,map2); + if (i == records.size() - 1) { + map2.put(port, list); + datas1.put(jiaodu, map2); } System.out.println(); } @@ -276,23 +276,23 @@ HashMap<String, Object> map = new HashMap<>(); for (String s : datas1.keySet()) { - Map<String, List<HashMap<String,Object>>> numbers = (Map<String, List<HashMap<String,Object>>>) datas1.get(s); + Map<String, List<HashMap<String, Object>>> numbers = (Map<String, List<HashMap<String, Object>>>) datas1.get(s); for (String s1 : numbers.keySet()) { List<HashMap<String, Object>> hashMaps = numbers.get(s1); List<Integer> floatList = new ArrayList<>(); for (Map<String, Object> number : hashMaps) { number.put("绔彛", s1); - floatList.add( Integer.parseInt((String) number.get("娴嬭瘯棰戠巼(MHZ)"))); + floatList.add(Integer.parseInt((String) number.get("娴嬭瘯棰戠巼(MHZ)"))); } Integer maxValue = Collections.max(floatList); Integer minValue = Collections.min(floatList); - if (map.get(minValue + "-" + maxValue+"-"+s) == null) { - map.put(minValue + "-" + maxValue+"-"+s, s1); + if (map.get(minValue + "-" + maxValue + "-" + s) == null) { + map.put(minValue + "-" + maxValue + "-" + s, s1); } else { - Object o = map.get(minValue + "-" + maxValue+"-"+s); - map.put(minValue + "-" + maxValue+"-"+s, s1 + "," + o); + Object o = map.get(minValue + "-" + maxValue + "-" + s); + map.put(minValue + "-" + maxValue + "-" + s, s1 + "," + o); } } @@ -307,9 +307,9 @@ int size1 = -1; for (String s : datas1.keySet()) { - Map<String, List<HashMap<String,Object>>> o1 = (Map<String, List<HashMap<String,Object>>>)datas1.get(s); + Map<String, List<HashMap<String, Object>>> o1 = (Map<String, List<HashMap<String, Object>>>) datas1.get(s); for (String s3 : o1.keySet()) { - List<HashMap<String, Object>> numbers = o1.get(s3); + List<HashMap<String, Object>> numbers = o1.get(s3); for (String s2 : collect) { if (s3.equals(s2)) { if (numbers.size() > size1) { @@ -325,7 +325,7 @@ System.out.println(map); try { - createWord2(sonLaboratory,document,exceldata, map,pingjunzhi,biaozhun,insOrderFile); + createWord2(sonLaboratory, document, exceldata, map, pingjunzhi, biaozhun, insOrderFile); } catch (IOException e) { e.printStackTrace(); } @@ -520,24 +520,25 @@ paragraph11.setAlignment(ParagraphAlignment.CENTER); XWPFRun run11 = paragraph11.createRun(); double v = count / (Double.parseDouble(s1.toString()) * Double.parseDouble(i1.toString())); - run11.setText(String.format("%.2f",v)); + run11.setText(String.format("%.2f", v)); size++; } } // 杈撳嚭鍒版枃浠� try { - InsOrder insOrder = insOrderMapper.selectById(insOrderFile.getInsOrderId()); + InsSample insSample = insSampleMapper.selectById(insOrderFile.getInsSampleId()); String[] split = insOrderFile.getFileName().split("\\."); String name = insOrderFile.getFileName().substring(0, (insOrderFile.getFileName().length() - split[split.length - 1].length())); - FileOutputStream out = new FileOutputStream(wordUrl + "/" + insOrder.getEntrustCode() + "&" + sonLaboratory + name + "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�.docx"); + FileOutputStream out = new FileOutputStream(wordUrl + "/" + UUID.randomUUID() + "_" + insSample.getSampleCode() + "&" + sonLaboratory + name + "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�.docx"); document.write(out); out.close(); document.close(); InsOrderFile orderFile = new InsOrderFile(); orderFile.setInsOrderId(insOrderFile.getInsOrderId()); - orderFile.setFileUrl(insOrder.getEntrustCode() + "&" + sonLaboratory + name + "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�.docx"); + orderFile.setInsSampleId(insOrderFile.getInsSampleId()); + orderFile.setFileUrl(UUID.randomUUID() + "_" + insSample.getSampleCode() + "&" + sonLaboratory + name + "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�.docx"); orderFile.setType(2); - orderFile.setFileName(insOrder.getEntrustCode() + "&" + sonLaboratory + name + "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�.docx"); + orderFile.setFileName(insSample.getSampleCode() + "&" + sonLaboratory + name + "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�.docx"); orderFile.setSonLaboratory(sonLaboratory); insOrderFileMapper.insert(orderFile); } catch (IOException e) { @@ -545,19 +546,19 @@ } } - public void createWord2(String sonLaboratory,XWPFDocument document,Exceldata exceldata, HashMap<String, Object> map,HashMap<String,Object> pj,HashMap<String,Object> bz,InsOrderFile insOrderFile) throws IOException { + public void createWord2(String sonLaboratory, XWPFDocument document, Exceldata exceldata, HashMap<String, Object> map, HashMap<String, Object> pj, HashMap<String, Object> bz, InsOrderFile insOrderFile) throws IOException { int size = 1; for (String s : map.keySet()) { Map<String, Object> dataRow = exceldata.getDataRow(); String result = s.substring(s.lastIndexOf("-") + 1); - String result1 = s.substring(0,s.lastIndexOf("-")); + String result1 = s.substring(0, s.lastIndexOf("-")); String o = map.get(s).toString(); String[] split = o.split(","); Integer s1 = Integer.parseInt(split[split.length - 1]); Integer i1 = split.length - 1; int row = 3 + s1; int cell = 6 + i1; - HashMap<String,Object> o2 =(HashMap<String,Object>) pj.get(result); + HashMap<String, Object> o2 = (HashMap<String, Object>) pj.get(result); XWPFTable table1 = document.createTable(2, cell); @@ -580,7 +581,7 @@ XWPFRun run15 = paragraph15.createRun(); run15.setText("鏍囧噯瑕佹眰"); - XWPFParagraph paragraph16 = table1.getRow(0).getCell(cell-1).getParagraphArray(0); + XWPFParagraph paragraph16 = table1.getRow(0).getCell(cell - 1).getParagraphArray(0); XWPFRun run16 = paragraph16.createRun(); run16.setText("妫�楠岀粨璁�"); @@ -590,8 +591,7 @@ XWPFParagraph paragraph18 = table1.getRow(1).getCell(0).getParagraphArray(0); XWPFRun run18 = paragraph18.createRun(); - run18.setText("棰戞锛� "+result1+"MHz "+"涓嬪�捐"+result); - + run18.setText("棰戞锛� " + result1 + "MHz " + "涓嬪�捐" + result); List<String> collect = Arrays.stream(split).collect(Collectors.toList()); @@ -606,7 +606,7 @@ Map<String, List<Map<String, Object>>> o1 = (Map<String, List<Map<String, Object>>>) dataRow.get(result); for (String s2 : collect) { - if (s2.contains("绔彛")||s2.contains("P")) { + if (s2.contains("绔彛") || s2.contains("P")) { List<Map<String, Object>> mapList = o1.get(s2); list.addAll(mapList); } @@ -624,7 +624,7 @@ for (String s2 : aggregatedMap.keySet()) { - if (s2.equals("绔彛")||s2.equals("娴嬭瘯棰戠巼(MHZ)")) { + if (s2.equals("绔彛") || s2.equals("娴嬭瘯棰戠巼(MHZ)")) { continue; } List<Map<String, Object>> mapList = aggregatedMap.get(s2); @@ -674,7 +674,6 @@ } - XWPFParagraph paragraph3 = table.getRow(0).getCell(3).getParagraphArray(0); XWPFRun run3 = paragraph3.createRun(); run3.setText(bz.get(s2).toString()); @@ -706,7 +705,7 @@ for (int i = 0; i < collect.size(); i++) { String s3 = collect.get(i); - if (s3.contains("绔彛")||s3.contains("P")) { + if (s3.contains("绔彛") || s3.contains("P")) { XWPFParagraph paragraph10 = table.getRow(1).getCell(5 + i).getParagraphArray(0); XWPFRun run10 = paragraph10.createRun(); run10.setText(s3); @@ -714,7 +713,7 @@ } Map<Integer, List<Map<String, Object>>> group = mapList.stream() - .collect(Collectors.groupingBy(item -> Integer.parseInt(item.get("娴嬭瘯棰戠巼(MHZ)").toString()) )); + .collect(Collectors.groupingBy(item -> Integer.parseInt(item.get("娴嬭瘯棰戠巼(MHZ)").toString()))); int hang = 2; @@ -728,7 +727,7 @@ if (text.equals(port)) { XWPFParagraph paragraph10 = table.getRow(hang).getCell(i).getParagraphArray(0); XWPFRun run10 = paragraph10.createRun(); - count=Double.parseDouble(stringObjectMap.get(s2).toString())+count; + count = Double.parseDouble(stringObjectMap.get(s2).toString()) + count; String project = stringObjectMap.get(s2).toString(); run10.setText(project); } @@ -742,7 +741,7 @@ hang++; } - XWPFParagraph paragraph11 = table.getRow(row-1).getCell(5).getParagraphArray(0); + XWPFParagraph paragraph11 = table.getRow(row - 1).getCell(5).getParagraphArray(0); XWPFRun run11 = paragraph11.createRun(); double v = count / (Double.parseDouble(s1.toString()) * Double.parseDouble(i1.toString())); run11.setText(o2.get(s2).toString()); @@ -754,18 +753,19 @@ // 杈撳嚭鍒版枃浠� try { - InsOrder insOrder = insOrderMapper.selectById(insOrderFile.getInsOrderId()); + InsSample insSample = insSampleMapper.selectById(insOrderFile.getInsSampleId()); String[] split = insOrderFile.getFileName().split("\\."); - String name = insOrderFile.getFileName().replace("#","&").substring(0, (insOrderFile.getFileName().length() - split[split.length - 1].length())); - FileOutputStream out = new FileOutputStream(wordUrl + "/" + insOrder.getEntrustCode() + "&" + sonLaboratory + name + "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�.docx"); + String name = insOrderFile.getFileName().replace("#", "&").substring(0, (insOrderFile.getFileName().length() - split[split.length - 1].length())); + FileOutputStream out = new FileOutputStream(wordUrl + "/" + UUID.randomUUID() + "_" + insSample.getSampleCode() + "&" + sonLaboratory + name + "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�.docx"); document.write(out); out.close(); document.close(); InsOrderFile orderFile = new InsOrderFile(); orderFile.setInsOrderId(insOrderFile.getInsOrderId()); - orderFile.setFileUrl(insOrder.getEntrustCode() + "&" + sonLaboratory + name + "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�.docx"); + orderFile.setInsSampleId(insOrderFile.getInsSampleId()); + orderFile.setFileUrl(UUID.randomUUID() + "_" + insSample.getSampleCode() + "&" + sonLaboratory + name + "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�.docx"); orderFile.setType(2); - orderFile.setFileName(insOrder.getEntrustCode() + "&" + sonLaboratory + name + "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�.docx"); + orderFile.setFileName(insSample.getSampleCode() + "&" + sonLaboratory + name + "瑙f瀽鐨勮緪灏勭珯鐐规姤鍛�.docx"); orderFile.setSonLaboratory(sonLaboratory); insOrderFileMapper.insert(orderFile); } catch (IOException e) { -- Gitblit v1.9.3