diff --git a/pom.xml b/pom.xml index 31efe1e..96ed8f2 100644 --- a/pom.xml +++ b/pom.xml @@ -5,14 +5,14 @@ org.springframework.boot spring-boot-starter-parent - 3.5.0 + 3.2.0 - com.goeing - zipship + com.goeing.zipship + zipshipPrintService 0.0.1-SNAPSHOT - goeingPrintService - goeingPrintService + zipshipPrintService + zipshipPrintService @@ -87,6 +87,7 @@ org.projectlombok lombok + ${lombok.version} diff --git a/src/main/java/com/goeing/printserver/main/PrintController.java b/src/main/java/com/goeing/printserver/main/PrintController.java index 78aa3e6..b33141f 100644 --- a/src/main/java/com/goeing/printserver/main/PrintController.java +++ b/src/main/java/com/goeing/printserver/main/PrintController.java @@ -33,7 +33,7 @@ public class PrintController implements PrintService { @Autowired private PrintServerConfig config; - private final String rootPath = "/Users/fl0919/work_space/goeingPrintServer/pdf"; + private final String rootPath = "pdfTemp"; /** * 获取所有可用打印机列表 @@ -139,6 +139,8 @@ public class PrintController implements PrintService { // 下载文件 log.info("正在从以下地址下载文件: {}", fileUrl); HttpUtil.downloadFile(fileUrl, filePath); + + log.info("文件下载地址为:",filePath); if (!pdfFile.exists() || pdfFile.length() == 0) { throw new RuntimeException("Downloaded file is empty or does not exist"); diff --git a/src/main/java/com/goeing/printserver/main/gui/PrintNotificationService.java b/src/main/java/com/goeing/printserver/main/gui/PrintNotificationService.java index 73e512f..e3028b5 100644 --- a/src/main/java/com/goeing/printserver/main/gui/PrintNotificationService.java +++ b/src/main/java/com/goeing/printserver/main/gui/PrintNotificationService.java @@ -3,6 +3,7 @@ package com.goeing.printserver.main.gui; import com.goeing.printserver.main.domain.request.PrintRequest; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import java.awt.*; @@ -19,7 +20,7 @@ public class PrintNotificationService { private boolean headless = false; @Autowired - public PrintNotificationService(PrintSettingsPanel settingsPanel) { + public PrintNotificationService(@Lazy PrintSettingsPanel settingsPanel) { this.settingsPanel = settingsPanel; // 检查是否在无头模式下运行 this.headless = GraphicsEnvironment.isHeadless() || Boolean.getBoolean("app.headless.mode"); @@ -29,6 +30,7 @@ public class PrintNotificationService { } @Autowired + @Lazy public void setPrintServerTray(PrintServerTray printServerTray) { this.printServerTray = printServerTray; } diff --git a/src/main/java/com/goeing/printserver/main/gui/PrintSettingsPanel.java b/src/main/java/com/goeing/printserver/main/gui/PrintSettingsPanel.java index 37d3824..b4657f7 100644 --- a/src/main/java/com/goeing/printserver/main/gui/PrintSettingsPanel.java +++ b/src/main/java/com/goeing/printserver/main/gui/PrintSettingsPanel.java @@ -9,6 +9,7 @@ import com.goeing.printserver.main.utils.MessageUtils; import com.goeing.printserver.main.service.PrintQueueService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.context.event.EventListener; import org.springframework.stereotype.Component; @@ -52,7 +53,7 @@ public class PrintSettingsPanel extends JPanel implements LocaleChangeListener { private JButton resetButton; @Autowired - public PrintSettingsPanel(PrintQueueService printQueueService, PrintServerConfig config, PrintController printController, PrinterClient printerClient) { + public PrintSettingsPanel(@Lazy PrintQueueService printQueueService, PrintServerConfig config, @Lazy PrintController printController, @Lazy PrinterClient printerClient) { this.printQueueService = printQueueService; this.config = config; this.printController = printController; diff --git a/src/main/java/com/goeing/printserver/main/service/PrintQueueService.java b/src/main/java/com/goeing/printserver/main/service/PrintQueueService.java index da7c09e..4b49e26 100644 --- a/src/main/java/com/goeing/printserver/main/service/PrintQueueService.java +++ b/src/main/java/com/goeing/printserver/main/service/PrintQueueService.java @@ -9,6 +9,7 @@ import jakarta.websocket.Session; import lombok.extern.slf4j.Slf4j; import jakarta.annotation.PreDestroy; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import java.io.IOException; @@ -30,12 +31,15 @@ import java.time.LocalDateTime; public class PrintQueueService { @Autowired + @Lazy private PrintService printService; @Autowired + @Lazy private PrintNotificationService notificationService; @Autowired + @Lazy private PrintStatisticsPanel statisticsPanel; @Autowired diff --git a/src/main/java/com/goeing/printserver/main/sse/PrinterClient.java b/src/main/java/com/goeing/printserver/main/sse/PrinterClient.java index 99460c5..1b80afb 100644 --- a/src/main/java/com/goeing/printserver/main/sse/PrinterClient.java +++ b/src/main/java/com/goeing/printserver/main/sse/PrinterClient.java @@ -1,18 +1,16 @@ package com.goeing.printserver.main.sse; -import cn.hutool.extra.spring.SpringUtil; import cn.hutool.json.JSONUtil; import com.alibaba.fastjson.JSON; -import com.goeing.printserver.main.PrintController; import com.goeing.printserver.main.config.PrintServerConfig; import com.goeing.printserver.main.domain.dto.WebSocketMessageDTO; import com.goeing.printserver.main.domain.request.PrintRequest; import com.goeing.printserver.main.service.PrintQueueService; import jakarta.websocket.*; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Component; import jakarta.annotation.PreDestroy; @@ -39,7 +37,7 @@ public class PrinterClient implements ApplicationRunner { private boolean isConnecting = false; // 构造函数,注入PrintQueueService和PrintServerConfig - public PrinterClient(PrintQueueService printQueueService, PrintServerConfig config) { + public PrinterClient(@Lazy PrintQueueService printQueueService, PrintServerConfig config) { this.printQueueService = printQueueService; this.config = config; // 构造函数不做连接操作,在run方法中进行连接 diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 4062958..20ce655 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -1,7 +1,7 @@ spring.application.name=goeingPrintServer server.port=9090 -print.websocket.url=ws://127.0.0.1:8080/print-websocket -#print.websocket.url=ws://3.144.140.114:8080/print-websocket +print.websocket.url=ws://zipship.goeing.com/prod-api/print-websocket +#print.websocket.url=ws://127.0.0.1:8080/print-websocket print.printer.id=123456 print.websocket.apiKey=519883ab-3677-ce4b-59ba-7263870d0a26 diff --git a/src/main/resources/icon.icns b/src/main/resources/icon.icns new file mode 100644 index 0000000..6087e7d Binary files /dev/null and b/src/main/resources/icon.icns differ