Browse Source

优化左右菜单栏显示隐藏逻辑

master
ctw 2 months ago
parent
commit
1838c436f3
  1. 2
      ruoyi-admin/src/main/resources/application-druid.yml
  2. 1
      ruoyi-ui/src/store/getters.js
  3. 7
      ruoyi-ui/src/store/modules/user.js
  4. 2
      ruoyi-ui/src/views/childRoom/RightPanel.vue
  5. 26
      ruoyi-ui/src/views/childRoom/index.vue
  6. 50
      ruoyi-ui/src/views/dialogs/PlatformEditDialog.vue
  7. 6
      ruoyi-ui/src/views/selectRoom/index.vue
  8. 2
      ruoyi-ui/vue.config.js

2
ruoyi-admin/src/main/resources/application-druid.yml

@ -8,7 +8,7 @@ spring:
master:
url: jdbc:mysql://localhost:3306/ry?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
password: A20040303ctw!
password: 123456
# 从库数据源
slave:
# 从数据源开关/默认关闭

1
ruoyi-ui/src/store/getters.js

@ -13,6 +13,7 @@ const getters = {
introduction: state => state.user.introduction,
roles: state => state.user.roles,
permissions: state => state.user.permissions,
userLevel: state => state.user.userLevel,
permission_routes: state => state.permission.routes,
topbarRouters: state => state.permission.topbarRouters,
defaultRoutes: state => state.permission.defaultRoutes,

7
ruoyi-ui/src/store/modules/user.js

@ -13,7 +13,8 @@ const user = {
nickName: '',
avatar: '',
roles: [],
permissions: []
permissions: [],
userLevel: ''
},
mutations: {
@ -37,6 +38,9 @@ const user = {
},
SET_PERMISSIONS: (state, permissions) => {
state.permissions = permissions
},
SET_USER_LEVEL: (state, userLevel) => {
state.userLevel = userLevel
}
},
@ -77,6 +81,7 @@ const user = {
commit('SET_NAME', user.userName)
commit('SET_NICK_NAME', user.nickName)
commit('SET_AVATAR', avatar)
commit('SET_USER_LEVEL', user.userLevel || '')
/* 初始密码提示 */
if(res.isDefaultModifyPwd) {
MessageBox.confirm('您的密码还是初始密码,请修改密码!', '安全提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => {

2
ruoyi-ui/src/views/childRoom/RightPanel.vue

@ -27,7 +27,6 @@
新建
</el-button>
</div>
<div class="route-list">
<div
v-for="route in routes"
@ -55,7 +54,6 @@
</div>
</div>
</div>
<div v-if="selectedRouteDetails" class="section">
<div class="section-title">航点列表</div>
<div class="waypoint-list">

26
ruoyi-ui/src/views/childRoom/index.vue

@ -135,7 +135,6 @@
class="compact-slider blue-slider"
/>
</div>
<div class="playback-controls">
<button
class="control-btn blue-control-btn"
@ -144,7 +143,6 @@
>
<i :class="isPlaying ? 'el-icon-video-pause' : 'el-icon-video-play'"></i>
</button>
<div class="speed-control">
<button
class="control-btn blue-control-btn"
@ -246,7 +244,6 @@ export default {
//
isRightPanelHidden: true, //
// K
showKTimePopup: false,
@ -352,7 +349,6 @@ export default {
},
methods: {
// 线
//
openPlatformDialog(platform) {
this.selectedPlatform = platform;
@ -463,6 +459,11 @@ export default {
this.$message.info('显示右侧面板');
},
//
selectTopNav(item) {
this.activeMenu = item.id;
},
//
savePlan() {
this.$message.success('保存计划');
@ -653,6 +654,11 @@ export default {
selectMenu(item) {
this.activeMenu = item.id;
//
if (item.id === 'file' || item.id === 'start' || item.id === 'insert') {
this.drawDom = false;
}
//
if (item.id === 'file') {
//
@ -680,11 +686,19 @@ export default {
}
} else if(item.id === 'modify'){
this.drawDom = !this.drawDom
//
this.isRightPanelHidden = true;
console.log(this.drawDom,999999)
}
if (item.id === 'deduction') {
} else if (item.id === 'deduction') {
// /K
this.showKTimePopup = !this.showKTimePopup;
//
this.drawDom = false;
} else {
//
this.isRightPanelHidden = true;
//
this.drawDom = false;
}
},

50
ruoyi-ui/src/views/dialogs/PlatformEditDialog.vue

@ -2,21 +2,21 @@
<div v-if="value" class="platform-edit-dialog">
<!-- 遮罩层 -->
<div class="dialog-overlay" @click="closeDialog"></div>
<!-- 弹窗内容 -->
<div class="dialog-content">
<div class="dialog-header">
<h3>平台编辑</h3>
<div class="close-btn" @click="closeDialog">×</div>
</div>
<div class="dialog-body">
<el-form :model="formData" :rules="rules" ref="formRef" label-width="80px" size="small">
<!-- 基本信息 -->
<el-form-item label="名称" prop="name">
<el-input v-model="formData.name" placeholder="请输入平台名称"></el-input>
</el-form-item>
<el-form-item label="位置">
<div class="location-inputs">
<el-input v-model="formData.location.lat" placeholder="纬度" style="width: 120px;"></el-input>
@ -24,54 +24,54 @@
<el-input v-model="formData.location.lng" placeholder="经度" style="width: 120px;"></el-input>
</div>
</el-form-item>
<el-form-item label="速度" prop="speed">
<el-input v-model="formData.speed" placeholder="请输入速度" suffix="km/h"></el-input>
</el-form-item>
<el-form-item label="油耗表" prop="fuelConsumption">
<el-input-number
v-model="formData.fuelConsumption"
:min="0"
:precision="2"
<el-input-number
v-model="formData.fuelConsumption"
:min="0"
:precision="2"
placeholder="请输入油耗"
style="width: 100%;"
suffix="L/km"
></el-input-number>
</el-form-item>
<el-form-item label="高度限制">
<div class="altitude-inputs">
<el-input-number
v-model="formData.altitude.min"
:min="0"
<el-input-number
v-model="formData.altitude.min"
:min="0"
placeholder="最低高度"
style="width: 120px;"
suffix="m"
></el-input-number>
<span class="altitude-separator">~</span>
<el-input-number
v-model="formData.altitude.max"
:min="0"
<el-input-number
v-model="formData.altitude.max"
:min="0"
placeholder="最高高度"
style="width: 120px;"
suffix="m"
></el-input-number>
</div>
</el-form-item>
<el-form-item label="威力区/扇区">
<div class="sector-inputs">
<el-input-number
v-model="formData.sector.radius"
:min="0"
<el-input-number
v-model="formData.sector.radius"
:min="0"
placeholder="半径"
style="width: 100px;"
suffix="km"
></el-input-number>
<el-input-number
v-model="formData.sector.angle"
:min="0"
<el-input-number
v-model="formData.sector.angle"
:min="0"
:max="360"
placeholder="角度"
style="width: 100px;"
@ -81,7 +81,7 @@
</el-form-item>
</el-form>
</div>
<div class="dialog-footer">
<el-button @click="closeDialog">取消</el-button>
<el-button type="primary" @click="savePlatform">保存</el-button>
@ -292,4 +292,4 @@ export default {
border-top: 1px solid #e8e8e8;
gap: 10px;
}
</style>
</style>

6
ruoyi-ui/src/views/selectRoom/index.vue

@ -46,7 +46,6 @@
</div>
</div>
</div>
<div v-if="expandedRooms.includes(room.id)" class="child-rooms">
<div
v-for="childRoom in getChildRooms(room.id)"
@ -75,14 +74,12 @@
</div>
</div>
</div>
<div v-if="getParentRooms.length === 0" class="empty-state">
<i class="fa fa-sitemap"></i>
<h3>暂无房间</h3>
<p>点击下方按钮创建您的第一个房间</p>
</div>
</div>
<div class="action-buttons">
<button @click="showAddRoomDialog" class="btn-secondary">
<i class="fa fa-plus"></i> 新增大房间
@ -97,12 +94,10 @@
</button>
</div>
</div>
<div class="footer-info">
<p>© 2026 网络化任务规划系统 | 支持Windows/国产化系统互通</p>
</div>
</div>
<div
v-if="contextMenu.visible"
:style="{ left: contextMenu.x + 'px', top: contextMenu.y + 'px' }"
@ -117,7 +112,6 @@
<span>删除房间</span>
</div>
</div>
<el-dialog
:title="dialog.mode === 'add' ? '新增房间' : '修改房间'"
:visible.sync="dialog.visible"

2
ruoyi-ui/vue.config.js

@ -10,7 +10,7 @@ const CompressionPlugin = require('compression-webpack-plugin')
const CopyWebpackPlugin = require('copy-webpack-plugin')
const name = process.env.VUE_APP_TITLE || '若依管理系统' // 网页标题
const baseUrl = 'http://192.168.50.30:8080' // 后端接口
const baseUrl = 'http://192.168.50.145:8080' // 后端接口
const port = process.env.port || process.env.npm_config_port || 80 // 端口
// 定义 Cesium 源码路径

Loading…
Cancel
Save