完成小区相关的接口对接

This commit is contained in:
Zy
2026-04-07 18:02:18 +08:00
parent ee55b4dca7
commit b87a594d4e
32 changed files with 913 additions and 384 deletions

View File

@@ -1,10 +1,7 @@
<template>
<div class="navbar" :class="'nav' + navType">
<!-- <hamburger id="hamburger-container" :is-active="appStore.sidebar.opened" class="hamburger-container" @toggle-click="toggleSideBar" /> -->
<!-- <breadcrumb v-if="navType == NavTypeEnum.LEFT" id="breadcrumb-container" class="breadcrumb-container" /> -->
<div class="right-menu flex align-center">
<template v-if="appStore.device !== 'mobile'">
<!-- 消息 -->
<el-tooltip :content="proxy.$t('navbar.message')" effect="dark" placement="bottom">
<div>
<el-popover placement="bottom" trigger="click" transition="el-zoom-in-top" :width="300" :persistent="false">
@@ -31,12 +28,9 @@
<el-dropdown-item divided command="changecommunity">
<span>{{ proxy.$t('navbar.community') }}</span>
</el-dropdown-item>
<router-link v-if="!dynamic" to="/user/profile">
<router-link to="/user/profile">
<el-dropdown-item>{{ proxy.$t('navbar.personalCenter') }}</el-dropdown-item>
</router-link>
<el-dropdown-item v-if="settingsStore.showSettings" command="setLayout">
<span>{{ proxy.$t('navbar.layoutSetting') }}</span>
</el-dropdown-item>
<el-dropdown-item divided command="logout">
<span>{{ proxy.$t('navbar.logout') }}</span>
</el-dropdown-item>
@@ -93,7 +87,6 @@ const logout = async () => {
const routerPush = useRouter();
const changecommunity = () => {
console.log('change community');
routerPush.push({
path: '/community'
});
@@ -152,8 +145,9 @@ watch(
height: 50px;
overflow: hidden;
position: relative;
background: var(--el-bg-color);
border-bottom: 1px solid var(--el-border-color-lighter);
background: #1a75ff;
color: #fff;
border-bottom: 1px solid #1a75ff;
box-shadow: none;
display: flex;
align-items: center;
@@ -218,16 +212,16 @@ watch(
padding: 0 8px;
height: 100%;
font-size: 18px;
color: var(--el-text-color-regular);
color: #fff;
vertical-align: text-bottom;
&.hover-effect {
cursor: pointer;
transition: background 0.3s;
&:hover {
background: var(--el-fill-color-lighter);
}
// &:hover {
// background: var(--el-fill-color-lighter);
// }
}
}

View File

@@ -1,8 +1,5 @@
<template>
<div
class="sidebar-logo-container"
:class="{ collapse: collapse }"
>
<div class="sidebar-logo-container" :class="{ collapse: collapse }">
<transition :enter-active-class="proxy?.animate.logoAnimate.enter" mode="out-in">
<router-link v-if="collapse" key="collapse" class="sidebar-logo-link" to="/">
<img v-if="logo" :src="logo" class="sidebar-logo" />
@@ -11,7 +8,6 @@
</h1>
</router-link>
<router-link v-else key="expand" class="sidebar-logo-link" to="/">
<img v-if="logo" :src="logo" class="sidebar-logo" />
<h1 class="sidebar-title">
{{ title }}
</h1>
@@ -41,24 +37,24 @@ const sideTheme = computed(() => settingsStore.sideTheme);
// 获取Logo背景色
const getLogoBackground = computed(() => {
if (settingsStore.isDark) {
return 'var(--sidebar-bg)'
return 'var(--sidebar-bg)';
}
if (settingsStore.navType == NavTypeEnum.TOP) {
return variables.menuLightBackground
return variables.menuLightBackground;
}
return sideTheme.value === 'theme-dark' ? variables.menuBg : variables.menuLightBackground
})
return sideTheme.value === 'theme-dark' ? variables.menuBg : variables.menuLightBackground;
});
// 获取Logo文字颜色
const getLogoTextColor = computed(() => {
if (settingsStore.isDark) {
return 'var(--sidebar-text)'
return 'var(--sidebar-text)';
}
if (settingsStore.navType == NavTypeEnum.TOP) {
return variables.logoLightTitleColor
return variables.logoLightTitleColor;
}
return sideTheme.value === 'theme-dark' ? variables.logoTitleColor : variables.logoLightTitleColor
})
return sideTheme.value === 'theme-dark' ? variables.logoTitleColor : variables.logoLightTitleColor;
});
</script>
<style lang="scss" scoped>
@@ -75,9 +71,10 @@ const getLogoTextColor = computed(() => {
position: relative;
height: 50px;
line-height: 50px;
background: v-bind(getLogoBackground);
background-color: #1a75ff;
text-align: center;
overflow: hidden;
box-shadow: none;
& .sidebar-logo-link {
height: 100%;
@@ -98,7 +95,12 @@ const getLogoTextColor = computed(() => {
font-weight: 600;
line-height: 50px;
font-size: 14px;
font-family: Avenir, Helvetica Neue, Arial, Helvetica, sans-serif;
font-family:
Avenir,
Helvetica Neue,
Arial,
Helvetica,
sans-serif;
vertical-align: middle;
}
}

View File

@@ -50,7 +50,6 @@ const activeMenu = computed(() => {
}
return path;
});
const bgColor = computed(() => (sideTheme.value === 'theme-dark' ? variables.menuBackground : variables.menuLightBackground));
const textColor = computed(() => (sideTheme.value === 'theme-dark' ? variables.menuColor : variables.menuLightColor));
</script>

View File

@@ -12,7 +12,7 @@
@click.middle="!isAffix(tag) ? closeSelectedTag(tag) : ''"
@contextmenu.prevent="openMenu(tag, $event)"
>
<svg-icon v-if="tagsIcon && tag.meta && tag.meta.icon && tag.meta.icon !== '#'" :icon-class="tag.meta.icon"/>
<svg-icon v-if="tagsIcon && tag.meta && tag.meta.icon && tag.meta.icon !== '#'" :icon-class="tag.meta.icon" />
<span class="tags-view-item-title">{{ tag.title }}</span>
<span v-if="!isAffix(tag)" @click.prevent.stop="closeSelectedTag(tag)">
<close class="el-icon-close" style="width: 1em; height: 1em; vertical-align: middle" />
@@ -52,7 +52,7 @@ const router = useRouter();
const visitedViews = computed(() => useTagsViewStore().getVisitedViews());
const routes = computed(() => usePermissionStore().getRoutes());
const theme = computed(() => useSettingsStore().theme);
const tagsIcon = computed(() => useSettingsStore().tagsIcon)
const tagsIcon = computed(() => useSettingsStore().tagsIcon);
watch(route, () => {
addTags();
@@ -261,7 +261,11 @@ onMounted(() => {
margin-left: 5px;
margin-top: 4px;
border-radius: var(--app-radius-md);
transition: box-shadow 0.2s ease, transform 0.2s ease, border-color 0.2s ease, color 0.2s ease;
transition:
box-shadow 0.2s ease,
transform 0.2s ease,
border-color 0.2s ease,
color 0.2s ease;
&:hover {
color: var(--el-color-primary);
border-color: var(--el-color-primary-light-5);