src/main/java/com/whyc/controller/ProductBomApprovingController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/ProductBomApprovingService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/util/DwgToPdfUtil.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/whyc/controller/ProductBomApprovingController.java
@@ -8,10 +8,7 @@ import io.swagger.annotations.ApiOperation; import org.apache.poi.openxml4j.exceptions.InvalidFormatException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.io.IOException; @@ -51,5 +48,10 @@ return service.zipParse(file); } @GetMapping("dwgReview") @ApiOperation("dwg文件预览") public Response dwgReview(@RequestParam String dwgUrl) throws IOException { return service.dwgReview(dwgUrl); } } src/main/java/com/whyc/service/ProductBomApprovingService.java
@@ -6,10 +6,7 @@ import com.whyc.pojo.DocUser; import com.whyc.pojo.ProductBomApproving; import com.whyc.pojo.WorksheetMain; import com.whyc.util.ActionUtil; import com.whyc.util.CommonUtil; import com.whyc.util.FileUtil; import com.whyc.util.Zip4jUtil; import com.whyc.util.*; import io.swagger.models.auth.In; import org.apache.poi.openxml4j.exceptions.InvalidFormatException; import org.apache.poi.ss.usermodel.*; @@ -266,4 +263,15 @@ System.out.println(substring); System.out.println(s2); } public Response dwgReview(String dwgUrl) throws IOException { //绝对路径xxx/doc_file String rootFile = CommonUtil.getRootFile(); String dwgSubFilePath = dwgUrl.substring(dwgUrl.indexOf("doc_file")+8); String dwgSubFileDirPath = dwgSubFilePath.substring(0,dwgSubFilePath.lastIndexOf(File.separator)); File dwgFile = new File(rootFile + dwgSubFilePath); String pdfFileName = DwgToPdfUtil.dwg2Pdf(dwgFile); return new Response().set(1,"doc_file"+dwgSubFileDirPath+File.separator+pdfFileName); } } src/main/java/com/whyc/util/DwgToPdfUtil.java
@@ -15,7 +15,7 @@ @Slf4j public class DwgToPdfUtil { public static File Dwg2Pdf(File dwgFile) throws IOException { public static String dwg2Pdf(File dwgFile) throws IOException { FileInputStream fileInputStream; //将dwg文件转换成InputStream输入流 fileInputStream = new FileInputStream(dwgFile); @@ -36,7 +36,7 @@ pdfOptions.setVectorRasterizationOptions(rasterizationOptions); //输出文件 File outputFile = new File(dwgFile.getName().substring(0,dwgFile.getName().lastIndexOf("."))+".pdf"); File outputFile = new File(dwgFile.getParent()+File.separator+dwgFile.getName().substring(0,dwgFile.getName().lastIndexOf("."))+"-dwg.pdf"); //存放地址 try { objImage.save(outputFile.getPath(), pdfOptions); @@ -47,17 +47,9 @@ fileInputStream.close(); } log.info("文件转换成功{}",dwgFile.getName()); return outputFile; return outputFile.getName(); } public static void main(String[] args) throws IOException { long l = System.currentTimeMillis(); File file = new File("C:\\Users\\29550\\Desktop\\当前项目\\202207图纸管理\\IDCE-6006NT(5ST3010+接触器替换5ST3040)(双天线)结构件_A09(2022-7-5)\\IDCE-6006NT(5ST3010+接触器替换5ST3040) PCBA专用结构件BOM表_A08(2022-6-10)\\IDCE2415CT-701(2016-3-8).dwg"); File file1 = Dwg2Pdf(file); System.out.println(file1.getAbsolutePath()); long l1 = System.currentTimeMillis(); System.out.println((l1-l)/1000); } }