perf: 桌面版头部菜单
This commit is contained in:
parent
1d788750fb
commit
b32112b3db
@ -11,8 +11,9 @@ ALTER TABLE `visualization_link_jump_target_view_info`
|
||||
ADD COLUMN `target_type` varchar(50) NULL COMMENT '联动目标类型 view 图表 filter 过滤组件 outParams 外部参数';
|
||||
|
||||
ALTER TABLE `visualization_link_jump_target_view_info`
|
||||
MODIFY COLUMN `target_view_id` varchar(50) NULL DEFAULT NULL COMMENT '目标图表ID' AFTER `source_field_active_id`,
|
||||
MODIFY COLUMN `target_field_id` varchar(50) NULL DEFAULT NULL COMMENT '目标字段ID' AFTER `target_view_id`;
|
||||
MODIFY COLUMN `target_view_id` varchar(50) NULL DEFAULT NULL COMMENT '目标图表ID';
|
||||
ALTER TABLE `visualization_link_jump_target_view_info`
|
||||
MODIFY COLUMN `target_field_id` varchar(50) NULL DEFAULT NULL COMMENT '目标字段ID';
|
||||
|
||||
update visualization_link_jump_target_view_info set target_type = 'view';
|
||||
ALTER TABLE `data_visualization_info`
|
||||
|
||||
55
core/core-frontend/src/layout/components/DesktopSetting.vue
Normal file
55
core/core-frontend/src/layout/components/DesktopSetting.vue
Normal file
@ -0,0 +1,55 @@
|
||||
<script lang="ts" setup>
|
||||
import iconSetting from '@/assets/svg/icon-setting.svg'
|
||||
import { useRouter } from 'vue-router'
|
||||
import { useAppearanceStoreWithOut } from '@/store/modules/appearance'
|
||||
import { computed } from 'vue'
|
||||
|
||||
const appearanceStore = useAppearanceStoreWithOut()
|
||||
const navigateBg = computed(() => appearanceStore.getNavigateBg)
|
||||
const { push, resolve } = useRouter()
|
||||
const redirectUser = () => {
|
||||
const sysMenu = resolve('/sys-setting')
|
||||
const kidPath = sysMenu.matched[0].children[0].path
|
||||
push(`${sysMenu.path}/${kidPath}`)
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<el-tooltip class="box-item" effect="dark" content="系统设置" placement="top">
|
||||
<div
|
||||
class="sys-setting in-iframe-setting"
|
||||
:class="{
|
||||
'is-light-setting': navigateBg && navigateBg === 'light'
|
||||
}"
|
||||
>
|
||||
<el-icon @click="redirectUser">
|
||||
<Icon class="icon-setting" name="icon-setting"
|
||||
><iconSetting class="svg-icon icon-setting"
|
||||
/></Icon>
|
||||
</el-icon>
|
||||
</div>
|
||||
</el-tooltip>
|
||||
</template>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.sys-setting {
|
||||
margin: 0 10px 0 0;
|
||||
padding: 5px;
|
||||
height: 28px;
|
||||
width: 28px;
|
||||
border-radius: 4px;
|
||||
overflow: hidden;
|
||||
cursor: pointer;
|
||||
&:hover {
|
||||
background-color: #1e2738;
|
||||
}
|
||||
}
|
||||
.in-iframe-setting {
|
||||
margin-left: 10px !important;
|
||||
}
|
||||
.is-light-setting {
|
||||
&:hover {
|
||||
background-color: #1f23291a !important;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@ -23,6 +23,7 @@ import AiComponent from '@/layout/components/AiComponent.vue'
|
||||
import { findBaseParams } from '@/api/aiComponent'
|
||||
import AiTips from '@/layout/components/AiTips.vue'
|
||||
import CopilotCom from '@/layout/components/Copilot.vue'
|
||||
import DesktopSetting from './DesktopSetting.vue'
|
||||
|
||||
const appearanceStore = useAppearanceStoreWithOut()
|
||||
const { push } = useRouter()
|
||||
@ -211,6 +212,9 @@ onMounted(() => {
|
||||
<div v-if="showOverlay && appearanceStore.getShowAi" class="overlay"></div>
|
||||
<div v-if="showOverlayCopilot && appearanceStore.getShowCopilot" class="overlay"></div>
|
||||
</div>
|
||||
<div v-else class="operate-setting">
|
||||
<desktop-setting />
|
||||
</div>
|
||||
</el-header>
|
||||
</template>
|
||||
|
||||
|
||||
@ -7,10 +7,11 @@ import { useRouter } from 'vue-router'
|
||||
import AccountOperator from '@/layout/components/AccountOperator.vue'
|
||||
import { useAppearanceStoreWithOut } from '@/store/modules/appearance'
|
||||
import { useI18n } from '@/hooks/web/useI18n'
|
||||
import { isDesktop } from '@/utils/ModelUtil'
|
||||
const appearanceStore = useAppearanceStoreWithOut()
|
||||
const { push } = useRouter()
|
||||
const { t } = useI18n()
|
||||
|
||||
const desktop = isDesktop()
|
||||
const props = withDefaults(
|
||||
defineProps<{
|
||||
title: string
|
||||
@ -43,7 +44,7 @@ const navigate = computed(() => appearanceStore.getNavigate)
|
||||
<span class="work">{{ t('work_branch.back_to_work_branch') }}</span>
|
||||
</span>
|
||||
|
||||
<AccountOperator />
|
||||
<AccountOperator v-if="!desktop" />
|
||||
</div>
|
||||
</el-header>
|
||||
</template>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user