From f0aae4b39afbcbb18fb5a0b32e3ca689662c5ca7 Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期一, 10 三月 2025 08:21:31 +0800 Subject: [PATCH] jar --- src/main/java/com/example/server/utils/DownLoadTmpFile.java | 148 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 146 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/example/server/utils/DownLoadTmpFile.java b/src/main/java/com/example/server/utils/DownLoadTmpFile.java index 86bd15a..fa11450 100644 --- a/src/main/java/com/example/server/utils/DownLoadTmpFile.java +++ b/src/main/java/com/example/server/utils/DownLoadTmpFile.java @@ -1,15 +1,28 @@ package com.example.server.utils; import com.example.Application; +import com.example.server.progressTrack.model.DjJdgzTrackRecord; +import com.example.server.progressTrack.service.DjJdgzDismantTrackService; +import com.example.server.progressTrack.service.DjJdgzTrackRecordService; +import org.apache.commons.lang3.StringUtils; +import org.apache.poi.ss.usermodel.Cell; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.ss.usermodel.Sheet; +import org.apache.poi.ss.usermodel.Workbook; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import javax.swing.*; import java.io.*; import java.nio.file.Files; import java.nio.file.StandardCopyOption; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; +import java.util.List; public class DownLoadTmpFile { - public static void down(String name,JFrame frame1){ - name = "templateFile/" + name; + public static void down(String name, JFrame frame1) { InputStream inputStream = Application.class.getClassLoader().getResourceAsStream(name); if (inputStream == null) { @@ -50,4 +63,135 @@ tempFile.delete(); // 鍒犻櫎涓存椂鏂囦欢 } } + + public static void buildTrack(List<DjJdgzTrackRecord> list, String path, JFrame frame1) { + LocalDate currentDate = LocalDate.now(); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + // 灏嗗綋鍓嶆棩鏈熸牸寮忓寲涓哄瓧绗︿覆 + String date = currentDate.format(formatter); + + InputStream inputStream = Application.class.getClassLoader().getResourceAsStream(path); + + if (inputStream == null) { + try { + inputStream = new FileInputStream(path); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } + } + + try { + Workbook workbook = new XSSFWorkbook(inputStream); + // 鑾峰彇绗竴涓伐浣滆〃 + Sheet sheet = workbook.getSheetAt(0); + int num = 1; + + for (int i = 0; i < list.size(); i++) { + num = num + 1; + Row row = sheet.createRow(num); + + Cell cell = row.createCell(0); + cell.setCellValue(list.get(i).getId()); + + cell = row.createCell(1); + cell.setCellValue(date); + + cell = row.createCell(2); + cell.setCellValue(list.get(i).getLevel3NetworkName()); + + cell = row.createCell(12); + if (StringUtils.isNotBlank(list.get(i).getTrackPerson())) { + cell.setCellValue(list.get(i).getTrackPerson()); + } + cell = row.createCell(13); + if (StringUtils.isNotBlank(list.get(i).getTrackPersonContact())) { + cell.setCellValue(list.get(i).getTrackPersonContact()); + } + + cell = row.createCell(14); + if (StringUtils.isNotBlank(list.get(i).getTrackPersonUnit())) { + cell.setCellValue(list.get(i).getTrackPersonUnit()); + } + + cell = row.createCell(15); + if (StringUtils.isNotBlank(list.get(i).getTrackedPerson())) { + cell.setCellValue(list.get(i).getTrackPerson()); + } + cell = row.createCell(16); + if (StringUtils.isNotBlank(list.get(i).getTrackedPersonContact())) { + cell.setCellValue(list.get(i).getTrackPersonContact()); + } + + cell = row.createCell(17); + if (StringUtils.isNotBlank(list.get(i).getTrackedPersonUnit())) { + cell.setCellValue(list.get(i).getTrackPersonUnit()); + } + + cell = row.createCell(18); + if (StringUtils.isNotBlank(list.get(i).getGeneralRepairUnit())) { + cell.setCellValue(list.get(i).getGeneralRepairUnit()); + } + cell = row.createCell(19); + if (StringUtils.isNotBlank(list.get(i).getGeneralRepairUnitDirector())) { + cell.setCellValue(list.get(i).getGeneralRepairUnitDirector()); + } + cell = row.createCell(20); + if (StringUtils.isNotBlank(list.get(i).getGeneralRepairUnitContact())) { + cell.setCellValue(list.get(i).getGeneralRepairUnitDirector()); + } + cell = row.createCell(21); + if (StringUtils.isNotBlank(list.get(i).getRepairUnit())) { + cell.setCellValue(list.get(i).getRepairUnit()); + } + cell = row.createCell(22); + if (StringUtils.isNotBlank(list.get(i).getRepairUnitDirector())) { + cell.setCellValue(list.get(i).getRepairUnitDirector()); + } + cell = row.createCell(23); + if (StringUtils.isNotBlank(list.get(i).getRepairUnitContact())) { + cell.setCellValue(list.get(i).getRepairUnitContact()); + } + + if (i >= list.size() - 1) { + row = sheet.createRow(sheet.getLastRowNum() + 3); + cell = row.createCell(1); + cell.setCellValue("娉細"); + row = sheet.createRow(sheet.getLastRowNum() + 1); + cell = row.createCell(2); + cell.setCellValue("1. 璁惧鍚嶇О锛氬鍑烘ā鏉挎椂锛岀郴缁熻嚜鍔ㄧ敓鎴愯涓撲笟鐨勬墍鏈夎澶囷紝鐢ㄦ埛涓嶈淇敼"); + row = sheet.createRow(sheet.getLastRowNum() + 1); + cell = row.createCell(2); + cell.setCellValue("2. 榛勮壊鏍忕洰涓轰富瑕佸~鍐欎俊鎭紝鍏朵腑锛岄璁″畬鎴愭椂闂翠笉濉椂锛屽鍏ユ椂绯荤粺灏嗗綋鍓嶈妭鐐圭殑瑕佹眰瀹屾垚鏃堕棿浣滀负棰勮瀹屾垚鏃堕棿"); + row = sheet.createRow(sheet.getLastRowNum() + 1); + cell = row.createCell(2); + cell.setCellValue("3. 缁胯壊鏍忕洰涓哄鍑烘ā鏉挎椂甯︽湁鏁版嵁锛屽彲鏍规嵁闇�瑕佷慨鏀�"); + row = sheet.createRow(sheet.getLastRowNum() + 1); + cell = row.createCell(2); + cell.setCellValue("4. 鏁版嵁褰曞叆鏃堕棿涓鸿窡韪殑鏃堕棿锛屽鍏ュ悗绯荤粺鑷姩鎹㈢畻鎴愬懆"); + row = sheet.createRow(sheet.getLastRowNum() + 1); + cell = row.createCell(2); + cell.setCellValue("5. 鏁版嵁褰曞叆鏃堕棿鎴栬�呭綋鍓嶈妭鐐规爮鐩湭褰曟暟鎹椂锛屽鍏ユ椂绯荤粺鍒ゆ柇璇ヨ涓虹┖"); + row = sheet.createRow(sheet.getLastRowNum() + 1); + cell = row.createCell(2); + cell.setCellValue("6. 浠ヤ笅鏍忕洰涓轰笅鎷夐�夛細褰撳墠鑺傜偣銆佽窡韪柟寮忋�佽妭鐐硅繘灞曘�佹湁鏃犺劚鏈熼闄�"); + } + } + // 寮瑰嚭鏂囦欢閫夋嫨瀵硅瘽妗� + JFileChooser fileChooser = new JFileChooser(); + fileChooser.setSelectedFile(new File(path)); // 榛樿鏂囦欢鍚� + int result = fileChooser.showSaveDialog(frame1); + if (result == JFileChooser.APPROVE_OPTION) { + File selectedFile = fileChooser.getSelectedFile(); + try (FileOutputStream outputStream = new FileOutputStream(selectedFile)) { + workbook.write(outputStream); + JOptionPane.showMessageDialog(frame1, "鏂囦欢淇濆瓨鎴愬姛", "鎴愬姛", JOptionPane.INFORMATION_MESSAGE); + } catch (IOException e) { + JOptionPane.showMessageDialog(frame1, "鏂囦欢淇濆瓨澶辫触: " + e.getMessage(), "閿欒", JOptionPane.ERROR_MESSAGE); + } + } + } catch ( + IOException e) { + e.printStackTrace(); + } + } } -- Gitblit v1.9.1