diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/vi/ViPlayOperateService.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/vi/ViPlayOperateService.java index c6a387e..7c5073a 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/vi/ViPlayOperateService.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/vi/ViPlayOperateService.java @@ -41,23 +41,23 @@ public class ViPlayOperateService implements VIOperateService { String audioPath = inputParams.getString("audioPath"); String terminalId = message.getTerminalId(); // log.info("播放语料成功,deviceId={},audioPath={},terminalId={}", deviceId, audioPath, terminalId); - edgeSpeakerService.playAudio(terminalId, deviceId, audioPath); - // 等待播放完成 - while (true) { - try { - Thread.sleep(1000); - } catch (InterruptedException e) { - throw new RuntimeException(e); - } - SpeakerCommand.GetSpeakerStateCommand.Feedback status = edgeSpeakerService.getStatus(terminalId, deviceId); - boolean isRunning = status.getState().getIsRunning(); - if (!isRunning) { - break; - } - } +// edgeSpeakerService.playAudio(terminalId, deviceId, audioPath); +// // 等待播放完成 +// while (true) { +// try { +// Thread.sleep(1000); +// } catch (InterruptedException e) { +// throw new RuntimeException(e); +// } +// SpeakerCommand.GetSpeakerStateCommand.Feedback status = edgeSpeakerService.getStatus(terminalId, deviceId); +// boolean isRunning = status.getState().getIsRunning(); +// if (!isRunning) { +// break; +// } +// } // todo 本机测试播放 -// playAudio(audioPath); + playAudio(audioPath); return TaskNodeExecuteResult.success(); } diff --git a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/vi/ViSchemeOperateService.java b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/vi/ViSchemeOperateService.java index cc70591..d321a09 100644 --- a/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/vi/ViSchemeOperateService.java +++ b/cmvr-iot-test/src/main/java/com/cmvr/test/flow/runtime/operator/vi/ViSchemeOperateService.java @@ -73,8 +73,17 @@ public class ViSchemeOperateService implements VIOperateService { obj -> obj.getString("parentId") )); - // 转成 List> + // 转成 List> 并排序 List> continuousCorpusGroup = new ArrayList<>(grouped.values()); + continuousCorpusGroup.sort((group1, group2) -> { + Integer sort1 = group1.get(0).getInteger("sortParent"); + Integer sort2 = group2.get(0).getInteger("sortParent"); + + if (sort1 == null && sort2 == null) return 0; + if (sort1 == null) return 1; // null 排后面 + if (sort2 == null) return -1; // null 排后面 + return Integer.compare(sort1, sort2); + }); output.put("testCorpus", continuousCorpusGroup); break; diff --git a/cmvr-iot-vi/src/main/java/com/cmvr/vi/model/domain/ViCorpus.java b/cmvr-iot-vi/src/main/java/com/cmvr/vi/model/domain/ViCorpus.java index 0af674e..51c39c6 100644 --- a/cmvr-iot-vi/src/main/java/com/cmvr/vi/model/domain/ViCorpus.java +++ b/cmvr-iot-vi/src/main/java/com/cmvr/vi/model/domain/ViCorpus.java @@ -49,6 +49,10 @@ public class ViCorpus extends BaseEntity { @ApiModelProperty("预期结果(预留)") private String expectedResult; + @Excel(name = "连续语料的顺序") + @ApiModelProperty("连续语料的顺序") + private Integer sortParent; + @Excel(name = "同一父语料下的顺序") @ApiModelProperty("同一父语料下的顺序") private Integer sortOrder; diff --git a/cmvr-iot-vi/src/main/java/com/cmvr/vi/model/vo/ViContinuousCorpusVO.java b/cmvr-iot-vi/src/main/java/com/cmvr/vi/model/vo/ViContinuousCorpusVO.java index 54c3ab1..a1ad0ea 100644 --- a/cmvr-iot-vi/src/main/java/com/cmvr/vi/model/vo/ViContinuousCorpusVO.java +++ b/cmvr-iot-vi/src/main/java/com/cmvr/vi/model/vo/ViContinuousCorpusVO.java @@ -23,6 +23,9 @@ public class ViContinuousCorpusVO { @ApiModelProperty("方言") private String dialect; + @ApiModelProperty("连续语料的顺序") + private Integer sortParent; + @ApiModelProperty("子语料列表") private List children; } diff --git a/cmvr-iot-vi/src/main/java/com/cmvr/vi/service/impl/IViCorpusServiceImpl.java b/cmvr-iot-vi/src/main/java/com/cmvr/vi/service/impl/IViCorpusServiceImpl.java index 46bcbee..238f391 100644 --- a/cmvr-iot-vi/src/main/java/com/cmvr/vi/service/impl/IViCorpusServiceImpl.java +++ b/cmvr-iot-vi/src/main/java/com/cmvr/vi/service/impl/IViCorpusServiceImpl.java @@ -98,6 +98,10 @@ public class IViCorpusServiceImpl extends ServiceImpl .orderByAsc(ViCorpus::getSortOrder) ); vo.setChildren(children); + if (CollUtil.isNotEmpty(children)) { + Integer sortParent = children.get(0).getSortParent(); + vo.setSortParent(sortParent); + } } return list;