From c4c438cc7c57d6453a84f7a264b8bb4f3fc24bb1 Mon Sep 17 00:00:00 2001 From: zhaohe Date: Tue, 14 Jan 2025 18:29:30 +0800 Subject: [PATCH] update --- src/main/java/a8k/app/a8ktype/ui/ZAppPromopt.java | 22 ++++ .../app/service/data/ReactionRecordMgrService.java | 2 +- .../java/a8k/extui/mgr/ExtApiPageGroupCfgMgr.java | 4 +- .../extsetting/db/ReactionRecordDebugPage.java | 104 ------------------- .../extsetting/db/ReactionRecordMgrDebugPage.java | 111 +++++++++++++++++++++ .../frond_end_test/VirtualEventGeneratorPage.java | 17 ++-- src/main/java/a8k/teststate/VirtualDevice.java | 4 +- 7 files changed, 146 insertions(+), 118 deletions(-) delete mode 100644 src/main/java/a8k/extui/page/extsetting/db/ReactionRecordDebugPage.java create mode 100644 src/main/java/a8k/extui/page/extsetting/db/ReactionRecordMgrDebugPage.java diff --git a/src/main/java/a8k/app/a8ktype/ui/ZAppPromopt.java b/src/main/java/a8k/app/a8ktype/ui/ZAppPromopt.java index 6f7f29c..78b44a4 100644 --- a/src/main/java/a8k/app/a8ktype/ui/ZAppPromopt.java +++ b/src/main/java/a8k/app/a8ktype/ui/ZAppPromopt.java @@ -10,6 +10,7 @@ public class ZAppPromopt implements Serializable { @Schema(description = "消息等级") public MessageLevel messageLevel; + public String title; @Schema(description = "主信息") public String info; @@ -22,6 +23,16 @@ public class ZAppPromopt implements Serializable { @Schema(description = "异常栈信息") public ZAppErrorStackInfo stackInfo; + void setDefaultTitle() { + if(messageLevel == MessageLevel.Error) { + this.title = "错误"; + } else if(messageLevel == MessageLevel.Warn) { + this.title = "警告"; + } else if(messageLevel == MessageLevel.Info) { + this.title = "信息"; + } + } + public ZAppPromopt(MessageLevel type, String info, ZAppErrorStackInfo stackInfo, List detailInfos) { this.messageLevel = type; @@ -29,6 +40,8 @@ public class ZAppPromopt implements Serializable { this.stackInfo = stackInfo; this.detailInfo = detailInfos; this.detailInfoType = ZAppPromoptDetailInfoType.Forms; + + setDefaultTitle(); } public ZAppPromopt(MessageLevel type, String info, ZAppErrorStackInfo stackInfo, String detailInfos) { @@ -37,6 +50,9 @@ public class ZAppPromopt implements Serializable { this.stackInfo = stackInfo; this.detailInfo = detailInfos; this.detailInfoType = ZAppPromoptDetailInfoType.Text; + + setDefaultTitle(); + } public ZAppPromopt(MessageLevel type, String info, ZAppErrorStackInfo stackInfo, ZAppPromoptTable detailInfos) { @@ -45,6 +61,8 @@ public class ZAppPromopt implements Serializable { this.stackInfo = stackInfo; this.detailInfo = detailInfos; this.detailInfoType = ZAppPromoptDetailInfoType.Table; + setDefaultTitle(); + } @@ -52,11 +70,15 @@ public class ZAppPromopt implements Serializable { this.messageLevel = type; this.info = info; this.stackInfo = stackInfo; + setDefaultTitle(); + } public ZAppPromopt(MessageLevel type, String info) { this.messageLevel = type; this.info = info; + setDefaultTitle(); + } diff --git a/src/main/java/a8k/app/service/data/ReactionRecordMgrService.java b/src/main/java/a8k/app/service/data/ReactionRecordMgrService.java index 3e1dfae..329d958 100644 --- a/src/main/java/a8k/app/service/data/ReactionRecordMgrService.java +++ b/src/main/java/a8k/app/service/data/ReactionRecordMgrService.java @@ -98,7 +98,7 @@ public class ReactionRecordMgrService { public void printfRecord(Integer id) { ReactionReport record = reactionReportDao.findById(id); - logger.info("printfRecord: {}", ZJsonHelper.objectToJson(record)); + logger.info("printfRecord: {}", ZJsonHelper.objToPrettyJson(record)); } public void deleteRecord(Integer id) { diff --git a/src/main/java/a8k/extui/mgr/ExtApiPageGroupCfgMgr.java b/src/main/java/a8k/extui/mgr/ExtApiPageGroupCfgMgr.java index d9faeba..6167799 100644 --- a/src/main/java/a8k/extui/mgr/ExtApiPageGroupCfgMgr.java +++ b/src/main/java/a8k/extui/mgr/ExtApiPageGroupCfgMgr.java @@ -3,7 +3,7 @@ package a8k.extui.mgr; import a8k.extui.page.debug.*; import a8k.extui.page.extsetting.db.DeviceActionParameterSettingPage; import a8k.extui.page.extsetting.db.ProjInfoMgrPage; -import a8k.extui.page.extsetting.db.ReactionRecordDebugPage; +import a8k.extui.page.extsetting.db.ReactionRecordMgrDebugPage; import a8k.extui.page.init.BackgroudProcessCtrlPage; import a8k.extui.page.init.DeviceInitPage; import a8k.extui.page.measurement.*; @@ -153,7 +153,7 @@ public class ExtApiPageGroupCfgMgr { new Menu("数据库", List.of( new Menu(DeviceActionParameterSettingPage.class, "设备动作参数设置"), new Menu(ProjInfoMgrPage.class, "项目信息管理"), - new Menu(ReactionRecordDebugPage.class, "反应记录") + new Menu(ReactionRecordMgrDebugPage.class, "反应记录") )) )) diff --git a/src/main/java/a8k/extui/page/extsetting/db/ReactionRecordDebugPage.java b/src/main/java/a8k/extui/page/extsetting/db/ReactionRecordDebugPage.java deleted file mode 100644 index 50a03f2..0000000 --- a/src/main/java/a8k/extui/page/extsetting/db/ReactionRecordDebugPage.java +++ /dev/null @@ -1,104 +0,0 @@ -package a8k.extui.page.extsetting.db; - -import a8k.app.a8ktype.exception.AppException; -import a8k.app.controler.filemgr.StorageControler; -import a8k.app.dao.db.type.ReactionReport; -import a8k.app.dao.db.type.a8kidcard.zenum.A8kOptType; -import a8k.extui.factory.A8kScanCurveFactory; -import a8k.app.service.data.FileMgrService; -import a8k.app.service.data.ProjIdCardInfoMgrService; -import a8k.app.service.data.ProjInfoMgrService; -import a8k.app.service.data.ReactionRecordMgrService; -import a8k.extui.mgr.ExtApiPageMgr; -import a8k.extui.type.ExtUIPageCfg; -import a8k.extui.type.ExtUiTable; -import a8k.extui.type.ret.A8kScanCurve; -import a8k.extui.type.ret.ExtUIDownloadTasks; -import a8k.extui.type.ret.FileToBeDownload; -import jakarta.annotation.PostConstruct; -import jakarta.annotation.Resource; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Component; - -import java.io.IOException; - -@Slf4j -@Component -public class ReactionRecordDebugPage { - @Resource - ExtApiPageMgr extApiPageMgr; - - @Resource - ProjIdCardInfoMgrService projIdCardInfoMgrService; - - @Resource - ProjInfoMgrService projInfoMgrService; - - @Resource - ReactionRecordMgrService reactionRecordMgrService; - - @Resource - FileMgrService fileMgrService; - - public ExtUiTable getReactionRecordList() { - var results = reactionRecordMgrService.getAllDesc(); - return new ExtUiTable(ReactionReport.class, results); - } - - public Object getReactionResult(Integer id) { - return reactionRecordMgrService.findById(id); - } - - public void deleteAll() { - reactionRecordMgrService.deleteAll(); - } - - public ExtUIDownloadTasks downloadOptData(Integer id) throws IOException, AppException { - ExtUIDownloadTasks tasks = new ExtUIDownloadTasks(); - ReactionReport report = reactionRecordMgrService.findById(id); - if (report.detailOptData.isEmpty()) { - throw AppException.ofSimplePrompt("没有光学数据"); - } - for (var optData : report.detailOptData) { - tasks.urls.add(fileMgrService.storageOptReport(report.projName, report.projId, optData)); - } - return tasks; - } - - public FileToBeDownload exportReactionRecords() { - return new FileToBeDownload(StorageControler.getDoloadPath(reactionRecordMgrService.export())); - } - - - public A8kScanCurve displayOptCurve(Integer id, A8kOptType optType) throws AppException { - ReactionReport report = reactionRecordMgrService.findById(id); - if (report == null) { - throw AppException.ofSimplePrompt("没有找到记录"); - } - for (var optdate : report.detailOptData) { - if (optdate.rawData.optType.equals(optType)) { - return A8kScanCurveFactory.createScanCurve1200Point(optdate.rawData.rawData); - } - } - throw AppException.ofSimplePrompt("当前项目没有%s光学扫描曲线", optType); - } - - - @PostConstruct - void init() { - ExtUIPageCfg page = new ExtUIPageCfg(this); - - page.addFunction("查看记录", this::getReactionRecordList); - page.addFunction("查看记录详情", this::getReactionResult); - page.addFunction("删除所有记录", this::deleteAll); - - page.newGroup("导出"); - page.addFunction("导出所有记录", this::exportReactionRecords); - page.addFunction("导出指定项目光学数据", this::downloadOptData); - - page.newGroup("光学曲线"); - page.addFunction("查看光学曲线", this::displayOptCurve); - - extApiPageMgr.addPage(page); - } -} diff --git a/src/main/java/a8k/extui/page/extsetting/db/ReactionRecordMgrDebugPage.java b/src/main/java/a8k/extui/page/extsetting/db/ReactionRecordMgrDebugPage.java new file mode 100644 index 0000000..866ebee --- /dev/null +++ b/src/main/java/a8k/extui/page/extsetting/db/ReactionRecordMgrDebugPage.java @@ -0,0 +1,111 @@ +package a8k.extui.page.extsetting.db; + +import a8k.app.a8ktype.exception.AppException; +import a8k.app.controler.filemgr.StorageControler; +import a8k.app.dao.db.type.ReactionReport; +import a8k.app.dao.db.type.a8kidcard.zenum.A8kOptType; +import a8k.extui.factory.A8kScanCurveFactory; +import a8k.app.service.data.FileMgrService; +import a8k.app.service.data.ProjIdCardInfoMgrService; +import a8k.app.service.data.ProjInfoMgrService; +import a8k.app.service.data.ReactionRecordMgrService; +import a8k.extui.mgr.ExtApiPageMgr; +import a8k.extui.type.ExtUIPageCfg; +import a8k.extui.type.ExtUiTable; +import a8k.extui.type.ret.A8kScanCurve; +import a8k.extui.type.ret.ExtUIDownloadTasks; +import a8k.extui.type.ret.FileToBeDownload; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.Resource; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +import java.io.IOException; + +@Slf4j +@Component +public class ReactionRecordMgrDebugPage { + @Resource + ExtApiPageMgr extApiPageMgr; + + @Resource + ProjIdCardInfoMgrService projIdCardInfoMgrService; + + @Resource + ProjInfoMgrService projInfoMgrService; + + @Resource + ReactionRecordMgrService reactionRecordMgrService; + + @Resource + FileMgrService fileMgrService; + + public ExtUiTable getReactionRecordList() { + var results = reactionRecordMgrService.getAllDesc(); + return new ExtUiTable(ReactionReport.class, results); + } + + public Object getReactionResult(Integer id) { + return reactionRecordMgrService.findById(id); + } + + public void deleteAll() { + reactionRecordMgrService.deleteAll(); + } + + public ExtUIDownloadTasks downloadOptData(Integer id) throws IOException, AppException { + ExtUIDownloadTasks tasks = new ExtUIDownloadTasks(); + ReactionReport report = reactionRecordMgrService.findById(id); + if (report.detailOptData.isEmpty()) { + throw AppException.ofSimplePrompt("没有光学数据"); + } + for (var optData : report.detailOptData) { + tasks.urls.add(fileMgrService.storageOptReport(report.projName, report.projId, optData)); + } + return tasks; + } + + public FileToBeDownload exportReactionRecords() { + return new FileToBeDownload(StorageControler.getDoloadPath(reactionRecordMgrService.export())); + } + + + public A8kScanCurve displayOptCurve(Integer id, A8kOptType optType) throws AppException { + ReactionReport report = reactionRecordMgrService.findById(id); + if (report == null) { + throw AppException.ofSimplePrompt("没有找到记录"); + } + for (var optdate : report.detailOptData) { + if (optdate.rawData.optType.equals(optType)) { + return A8kScanCurveFactory.createScanCurve1200Point(optdate.rawData.rawData); + } + } + throw AppException.ofSimplePrompt("当前项目没有%s光学扫描曲线", optType); + } + + public void printfRecord(Integer id) { + reactionRecordMgrService.printfRecord(id); + } + + + @PostConstruct + void init() { + ExtUIPageCfg page = new ExtUIPageCfg(this); + + page.addFunction("查看记录", this::getReactionRecordList); + page.addFunction("查看记录详情", this::getReactionResult); + page.addFunction("删除所有记录", this::deleteAll); + + page.newGroup("导出"); + page.addFunction("导出所有记录", this::exportReactionRecords); + page.addFunction("导出指定项目光学数据", this::downloadOptData); + + page.newGroup("光学曲线"); + page.addFunction("查看光学曲线", this::displayOptCurve); + + page.newGroup("打印"); + page.addFunction("打印记录", this::printfRecord); + + extApiPageMgr.addPage(page); + } +} diff --git a/src/main/java/a8k/extui/page/test/frond_end_test/VirtualEventGeneratorPage.java b/src/main/java/a8k/extui/page/test/frond_end_test/VirtualEventGeneratorPage.java index 285e4b3..227dc32 100644 --- a/src/main/java/a8k/extui/page/test/frond_end_test/VirtualEventGeneratorPage.java +++ b/src/main/java/a8k/extui/page/test/frond_end_test/VirtualEventGeneratorPage.java @@ -25,16 +25,17 @@ public class VirtualEventGeneratorPage { ZAppPromoptTable table = new ZAppPromoptTable(); table.addHeader("耗材名称", "需求量", "使用量"); table.addType("String", "String", "String"); - table.addVar(new ZAppPromoptTable.Val("ABC"), new ZAppPromoptTable.Val("11"), new ZAppPromoptTable.Val(MessageLevel.Error, "20")); - table.addVar(new ZAppPromoptTable.Val("DEF"), new ZAppPromoptTable.Val("22"), new ZAppPromoptTable.Val(MessageLevel.Info, "10")); - table.addVar(new ZAppPromoptTable.Val("GHI"), new ZAppPromoptTable.Val("33"), new ZAppPromoptTable.Val(MessageLevel.Warn, "33")); + table.addVar(new ZAppPromoptTable.Val("小缓冲液"), new ZAppPromoptTable.Val("11"), new ZAppPromoptTable.Val(MessageLevel.Error, "20")); + table.addVar(new ZAppPromoptTable.Val("大瓶缓冲液"), new ZAppPromoptTable.Val("22"), new ZAppPromoptTable.Val(MessageLevel.Info, "10")); + table.addVar(new ZAppPromoptTable.Val("板夹"), new ZAppPromoptTable.Val("33"), new ZAppPromoptTable.Val(MessageLevel.Warn, "33")); return table; } List buildZAppPromoptFormsItem() { List formsItems = new ArrayList<>(); - formsItems.add(new ZAppPromoptFormsItem("姓名", "ABC")); - formsItems.add(new ZAppPromoptFormsItem("年龄", "12")); + formsItems.add(new ZAppPromoptFormsItem("相关指令", "motorMoveTo")); + formsItems.add(new ZAppPromoptFormsItem("相关模块", "板夹仓横向移动电机")); + formsItems.add(new ZAppPromoptFormsItem("详细错误", "指令超时")); return formsItems; } @@ -42,13 +43,13 @@ public class VirtualEventGeneratorPage { public void buildInfoPromoptEvent(MessageLevel level, ZAppPromoptDetailInfoType infoType) { switch (infoType) { case Text: - eventBus.pushEvent(new AppPromptEvent(new ZAppPromopt(level, "测试消息", null, "一二三四五一二三四五一二三四五一二三四五一二三四五"))); + eventBus.pushEvent(new AppPromptEvent(new ZAppPromopt(level, "硬件异常", null, "子设备断开连接了......"))); break; case Forms: - eventBus.pushEvent(new AppPromptEvent(new ZAppPromopt(level, "测试表单", null, buildZAppPromoptFormsItem()))); + eventBus.pushEvent(new AppPromptEvent(new ZAppPromopt(level, "板夹仓硬件异常", null, buildZAppPromoptFormsItem()))); break; case Table: - eventBus.pushEvent(new AppPromptEvent(new ZAppPromopt(level, "测试表格", null, buildZAppPromoptTable()))); + eventBus.pushEvent(new AppPromptEvent(new ZAppPromopt(level, "耗材不足", null, buildZAppPromoptTable()))); break; } } diff --git a/src/main/java/a8k/teststate/VirtualDevice.java b/src/main/java/a8k/teststate/VirtualDevice.java index 1b90da3..519830e 100644 --- a/src/main/java/a8k/teststate/VirtualDevice.java +++ b/src/main/java/a8k/teststate/VirtualDevice.java @@ -37,9 +37,7 @@ public class VirtualDevice { UIMessage.info(log, "执行,%s[%.1f] ", msg, i / 3.0 * 100); OS.forceSleep(1000); } - UIMessage.info(log, "执行,%s[100%] ", msg); + UIMessage.info(log, "执行,%s[100%%] ", msg); } - - }