|
@@ -9,98 +9,123 @@
|
|
</div>
|
|
</div>
|
|
</el-header>
|
|
</el-header>
|
|
<el-main style="background-color:white;">
|
|
<el-main style="background-color:white;">
|
|
- <el-form style=" background-color: rgba(0,0,0,0%);" :inline="true" :model="queryLine"
|
|
|
|
- class="demo-form-inline">
|
|
|
|
- <el-form-item label="数据名称">
|
|
|
|
- <el-input v-model="queryLine.dataName" placeholder="请输入数据名称" clearable/>
|
|
|
|
- </el-form-item>
|
|
|
|
- <!-- <el-form-item label="数据标签">-->
|
|
|
|
- <!-- <el-input v-model="queryLine.teamName" placeholder="请输入数据标签" clearable/>-->
|
|
|
|
- <!-- </el-form-item>-->
|
|
|
|
- <el-form-item label="设备名称">
|
|
|
|
- <el-input v-model="queryLine.equipmentName" placeholder="请输入设备名称" clearable/>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="设备类型">
|
|
|
|
- <el-input v-model="queryLine.equipmentTypeName" placeholder="请输入设备类型" clearable/>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="触发器名称">
|
|
|
|
- <el-input v-model="queryLine.triggerName" placeholder="请输入触发器名称" clearable/>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="触发器类型">
|
|
|
|
- <el-input v-model="queryLine.triggerTypeName" placeholder="请输入触发器类型" clearable/>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item>
|
|
|
|
- <el-button type="danger" @click="onSubmit">查询</el-button>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item>
|
|
|
|
- <el-button type="danger" @click="onSubmit">重置</el-button>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-form>
|
|
|
|
- <el-button type="primary" @click="algorithmImport">地图更新</el-button>
|
|
|
|
- <el-button type="primary" @click="algorithmImport">地图更新统计</el-button>
|
|
|
|
- <el-button type="primary" @click="algorithmImport">地图续扫提醒阈值</el-button>
|
|
|
|
- <el-button type="primary" @click="algorithmImport">地图续扫提醒</el-button>
|
|
|
|
- <el-button type="primary" @click="dialogVisible = true">算法镜像导入</el-button>
|
|
|
|
- <el-dialog
|
|
|
|
- v-model="dialogVisible"
|
|
|
|
- title="请输入算法版本"
|
|
|
|
- width="300"
|
|
|
|
- :before-close="handleClose"
|
|
|
|
- >
|
|
|
|
- <template #footer>
|
|
|
|
- <div class="dialog-footer">
|
|
|
|
- <el-form :model="form" label-width="auto">
|
|
|
|
- <el-form-item style="margin-bottom: 10px" label="sudo密码:">
|
|
|
|
- <el-input v-model="form.sudoPassword"/>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item style="margin-bottom: 10px" label="算法版本:">
|
|
|
|
- <el-input v-model="form.tag"/>
|
|
|
|
- </el-form-item>
|
|
|
|
- </el-form>
|
|
|
|
- <!-- -->
|
|
|
|
- <!-- <el-button @click="dialogVisible = false">取消</el-button>-->
|
|
|
|
- <el-button type="primary" @click="algorithmImport">选择镜像文件</el-button>
|
|
|
|
- </div>
|
|
|
|
- </template>
|
|
|
|
- </el-dialog>
|
|
|
|
- <el-button style="margin-left: 10px;" type="primary" @click="onSubmit">算法镜像选择</el-button>
|
|
|
|
- <el-switch
|
|
|
|
- style="margin-left: 10px;"
|
|
|
|
- v-model="value"
|
|
|
|
- size="large"
|
|
|
|
- inactive-text="算法容器"
|
|
|
|
- />
|
|
|
|
-<!-- <el-switch-->
|
|
|
|
-<!-- v-model="algorithmContainerState"-->
|
|
|
|
-<!-- class="ml-2"-->
|
|
|
|
-<!-- inline-prompt-->
|
|
|
|
-<!-- style="margin-left: 100px;--el-switch-on-color: #13ce66; --el-switch-off-color: #ff4949"-->
|
|
|
|
-<!-- active-text="算法容器已开启"-->
|
|
|
|
-<!-- inactive-text="算法容器已关闭"-->
|
|
|
|
-<!-- />-->
|
|
|
|
- <!-- <el-switch-->
|
|
|
|
- <!-- v-model="gazeboState"-->
|
|
|
|
- <!-- class="ml-2"-->
|
|
|
|
- <!-- inline-prompt-->
|
|
|
|
- <!-- style="margin-left: 100px; --el-switch-on-color: #13ce66; --el-switch-off-color: #ff4949"-->
|
|
|
|
- <!-- active-text="Gazebo 已开启"-->
|
|
|
|
- <!-- inactive-text="Gazebo 已关闭"-->
|
|
|
|
- <!-- @click="gazebo"-->
|
|
|
|
- <!-- />-->
|
|
|
|
- <!-- <el-switch-->
|
|
|
|
- <!-- v-model="rvizState"-->
|
|
|
|
- <!-- class="ml-2"-->
|
|
|
|
- <!-- inline-prompt-->
|
|
|
|
- <!-- style="margin-left: 100px;--el-switch-on-color: #13ce66; --el-switch-off-color: #ff4949"-->
|
|
|
|
- <!-- active-text="Rviz 已开启"-->
|
|
|
|
- <!-- inactive-text="Rviz 已关闭"-->
|
|
|
|
- <!-- @click="rviz"-->
|
|
|
|
- <!-- />-->
|
|
|
|
- <el-button style="margin-left: 100px;" type="primary" @click="onSubmit">仿真测试记录</el-button>
|
|
|
|
- <br>
|
|
|
|
- <br>
|
|
|
|
|
|
+ <div class="topbar">
|
|
|
|
+ <el-form style=" background-color: rgba(0,0,0,0%);" :inline="true" :model="queryLine"
|
|
|
|
+ class="demo-form-inline">
|
|
|
|
+ <el-form-item label="数据名称">
|
|
|
|
+ <el-input v-model="queryLine.dataName" placeholder="请输入数据名称" clearable/>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <!-- <el-form-item label="数据标签">-->
|
|
|
|
+ <!-- <el-input v-model="queryLine.teamName" placeholder="请输入数据标签" clearable/>-->
|
|
|
|
+ <!-- </el-form-item>-->
|
|
|
|
+ <el-form-item label="设备名称">
|
|
|
|
+ <el-input v-model="queryLine.equipmentName" placeholder="请输入设备名称" clearable/>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="设备类型">
|
|
|
|
+ <el-input v-model="queryLine.equipmentTypeName" placeholder="请输入设备类型" clearable/>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="触发器名称">
|
|
|
|
+ <el-input v-model="queryLine.triggerName" placeholder="请输入触发器名称" clearable/>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="触发器类型">
|
|
|
|
+ <el-input v-model="queryLine.triggerTypeName" placeholder="请输入触发器类型" clearable/>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item>
|
|
|
|
+ <el-button type="danger" @click="onSubmit">查询</el-button>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item>
|
|
|
|
+ <el-button type="danger" @click="onSubmit">重置</el-button>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-form>
|
|
|
|
+ <el-button type="primary" @click="goToMapUpdate">地图更新</el-button>
|
|
|
|
+ <el-button type="primary" @click="goToUpdateStat">地图更新统计</el-button>
|
|
|
|
+ <el-button type="primary" @click="mapDialogVisible = true">地图续扫提醒阈值</el-button>
|
|
|
|
+ <el-button type="primary" @click="algorithmImport">地图续扫提醒</el-button>
|
|
|
|
+ <el-button type="primary" @click="algorithmDialogVisible = true">算法镜像导入</el-button>
|
|
|
|
+ <el-dialog
|
|
|
|
+ v-model="algorithmDialogVisible"
|
|
|
|
+ title="请输入算法版本"
|
|
|
|
+ width="300"
|
|
|
|
+ :before-close="handleClose"
|
|
|
|
+ >
|
|
|
|
+ <template #footer>
|
|
|
|
+ <div class="dialog-footer">
|
|
|
|
+ <el-form :model="form" label-width="auto">
|
|
|
|
+ <el-form-item style="margin-bottom: 10px" label="sudo密码:">
|
|
|
|
+ <el-input v-model="form.sudoPassword"/>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item style="margin-bottom: 10px" label="算法版本:">
|
|
|
|
+ <el-input v-model="form.tag"/>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-form>
|
|
|
|
+ <!-- -->
|
|
|
|
+ <!-- <el-button @click="algorithmDialogVisible = false">取消</el-button>-->
|
|
|
|
+ <el-button type="primary" @click="algorithmImport">选择镜像文件</el-button>
|
|
|
|
+ </div>
|
|
|
|
+ </template>
|
|
|
|
+ </el-dialog>
|
|
|
|
+
|
|
|
|
+ <el-dialog
|
|
|
|
+ v-model="mapDialogVisible"
|
|
|
|
+ title="地图续扫提醒"
|
|
|
|
+ width="400"
|
|
|
|
+ :before-close="handleClose"
|
|
|
|
+ >
|
|
|
|
+ <el-form :model="form">
|
|
|
|
+ <el-form-item label="请输入地图续扫提醒阈值" label-width="170">
|
|
|
|
+ <el-input v-model="form.name">
|
|
|
|
+ <template #suffix>
|
|
|
|
+ <i slot="suffix" style="color: #181818">%</i>
|
|
|
|
+ </template>
|
|
|
|
+ </el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+
|
|
|
|
+ </el-form>
|
|
|
|
+ <template #footer>
|
|
|
|
+ <div class="dialog-footer">
|
|
|
|
+ <el-button type="primary" @click="mapDialogVisible = false">
|
|
|
|
+ 确认
|
|
|
|
+ </el-button>
|
|
|
|
+ </div>
|
|
|
|
+ </template>
|
|
|
|
+ </el-dialog>
|
|
|
|
+ <el-button style="margin-left: 10px;" type="primary" @click="onSubmit">算法镜像选择</el-button>
|
|
|
|
+ <el-switch
|
|
|
|
+ style="margin-left: 10px;"
|
|
|
|
+ v-model="value"
|
|
|
|
+ size="large"
|
|
|
|
+ inactive-text="算法容器"
|
|
|
|
+ />
|
|
|
|
+ <!-- <el-switch-->
|
|
|
|
+ <!-- v-model="algorithmContainerState"-->
|
|
|
|
+ <!-- class="ml-2"-->
|
|
|
|
+ <!-- inline-prompt-->
|
|
|
|
+ <!-- style="margin-left: 100px;--el-switch-on-color: #13ce66; --el-switch-off-color: #ff4949"-->
|
|
|
|
+ <!-- active-text="算法容器已开启"-->
|
|
|
|
+ <!-- inactive-text="算法容器已关闭"-->
|
|
|
|
+ <!-- />-->
|
|
|
|
+ <!-- <el-switch-->
|
|
|
|
+ <!-- v-model="gazeboState"-->
|
|
|
|
+ <!-- class="ml-2"-->
|
|
|
|
+ <!-- inline-prompt-->
|
|
|
|
+ <!-- style="margin-left: 100px; --el-switch-on-color: #13ce66; --el-switch-off-color: #ff4949"-->
|
|
|
|
+ <!-- active-text="Gazebo 已开启"-->
|
|
|
|
+ <!-- inactive-text="Gazebo 已关闭"-->
|
|
|
|
+ <!-- @click="gazebo"-->
|
|
|
|
+ <!-- />-->
|
|
|
|
+ <!-- <el-switch-->
|
|
|
|
+ <!-- v-model="rvizState"-->
|
|
|
|
+ <!-- class="ml-2"-->
|
|
|
|
+ <!-- inline-prompt-->
|
|
|
|
+ <!-- style="margin-left: 100px;--el-switch-on-color: #13ce66; --el-switch-off-color: #ff4949"-->
|
|
|
|
+ <!-- active-text="Rviz 已开启"-->
|
|
|
|
+ <!-- inactive-text="Rviz 已关闭"-->
|
|
|
|
+ <!-- @click="rviz"-->
|
|
|
|
+ <!-- />-->
|
|
|
|
+ <el-button style="margin-left: 100px;" type="primary" @click="onSubmit">仿真测试记录</el-button>
|
|
|
|
+ </div>
|
|
<el-table stripe style="background-color: rgba(255,0,0,99%);width: 100%" border :data="tableData"
|
|
<el-table stripe style="background-color: rgba(255,0,0,99%);width: 100%" border :data="tableData"
|
|
- fixed ref="multipleTableRef">
|
|
|
|
|
|
+ fixed ref="multipleTableRef" :cell-style="{ textAlign: 'center'}" :header-cell-style="{ textAlign: 'center'}">
|
|
<el-table-column type="selection" width="55"/>
|
|
<el-table-column type="selection" width="55"/>
|
|
<el-table-column prop="dataName" label="数据名称"/>
|
|
<el-table-column prop="dataName" label="数据名称"/>
|
|
<el-table-column prop="dataSize" label="数据容量" :formatter="dataSizeFormatter"/>
|
|
<el-table-column prop="dataSize" label="数据容量" :formatter="dataSizeFormatter"/>
|
|
@@ -110,7 +135,7 @@
|
|
<el-table-column prop="triggerTypeName" label="触发器类型"/>
|
|
<el-table-column prop="triggerTypeName" label="触发器类型"/>
|
|
<el-table-column prop="callbackTime" label="上报时间"/>
|
|
<el-table-column prop="callbackTime" label="上报时间"/>
|
|
<el-table-column prop="dataStateName" label="数据状态"/>
|
|
<el-table-column prop="dataStateName" label="数据状态"/>
|
|
- <el-table-column width="100" fixed="right" label="操作">
|
|
|
|
|
|
+ <el-table-column width="300" fixed="right" label="操作">
|
|
<el-button size="small" type="danger" @click="goToDetail">生成world</el-button>
|
|
<el-button size="small" type="danger" @click="goToDetail">生成world</el-button>
|
|
<el-button size="small" type="danger" @click="goToDetail">仿真测试</el-button>
|
|
<el-button size="small" type="danger" @click="goToDetail">仿真测试</el-button>
|
|
<!-- <el-button size="small" type="danger" @click="goToDetail">算法评价</el-button>-->
|
|
<!-- <el-button size="small" type="danger" @click="goToDetail">算法评价</el-button>-->
|
|
@@ -152,7 +177,8 @@ const gazeboState = ref(false)
|
|
const rvizState = ref(false)
|
|
const rvizState = ref(false)
|
|
const multipleTableRef = ref<InstanceType<typeof ElTable>>
|
|
const multipleTableRef = ref<InstanceType<typeof ElTable>>
|
|
|
|
|
|
-const dialogVisible = ref(false)
|
|
|
|
|
|
+const algorithmDialogVisible = ref(false)
|
|
|
|
+const mapDialogVisible = ref(false)
|
|
|
|
|
|
const handleClose = (done: () => void) => {
|
|
const handleClose = (done: () => void) => {
|
|
done()
|
|
done()
|
|
@@ -173,7 +199,7 @@ const currentTag = ref('')
|
|
|
|
|
|
|
|
|
|
const algorithmImport = async () => {
|
|
const algorithmImport = async () => {
|
|
- dialogVisible.value = false
|
|
|
|
|
|
+ algorithmDialogVisible.value = false
|
|
try {
|
|
try {
|
|
const result = await window.electronAPI.openFileManager();
|
|
const result = await window.electronAPI.openFileManager();
|
|
console.log('用户选择的文件路径为:', result, ',版本为:', form.tag);
|
|
console.log('用户选择的文件路径为:', result, ',版本为:', form.tag);
|
|
@@ -187,6 +213,14 @@ const goToDetail = () => {
|
|
router.push('/about')
|
|
router.push('/about')
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+const goToMapUpdate = () => {
|
|
|
|
+ router.push('/map_update')
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+const goToUpdateStat = () => {
|
|
|
|
+ router.push('/update_stat')
|
|
|
|
+}
|
|
|
|
+
|
|
// 数据容量单位从B转成MB
|
|
// 数据容量单位从B转成MB
|
|
const dataSizeFormatter = (row, column, cellValue, index) => {
|
|
const dataSizeFormatter = (row, column, cellValue, index) => {
|
|
// 假设 1MB = 1024 * 1024 字节
|
|
// 假设 1MB = 1024 * 1024 字节
|
|
@@ -346,7 +380,6 @@ const handleClick = () => {
|
|
</script>
|
|
</script>
|
|
<style scoped>
|
|
<style scoped>
|
|
|
|
|
|
-
|
|
|
|
.demo-pagination-block + .demo-pagination-block {
|
|
.demo-pagination-block + .demo-pagination-block {
|
|
margin-top: 10px;
|
|
margin-top: 10px;
|
|
}
|
|
}
|
|
@@ -385,6 +418,10 @@ const handleClick = () => {
|
|
margin-bottom: 20px;
|
|
margin-bottom: 20px;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+.topbar {
|
|
|
|
+ margin-bottom: 15px;
|
|
|
|
+}
|
|
|
|
+
|
|
/* 假设 .el-pager__item 是分页按钮的类名,这可能需要你根据实际的 Element UI 版本和源码进行调整 */
|
|
/* 假设 .el-pager__item 是分页按钮的类名,这可能需要你根据实际的 Element UI 版本和源码进行调整 */
|
|
.el-pager__item {
|
|
.el-pager__item {
|
|
background-color: rgba(255, 0, 0, 50%) !important; /* 修改背景色 */
|
|
background-color: rgba(255, 0, 0, 50%) !important; /* 修改背景色 */
|