Merge remote-tracking branch 'origin/feature/v1.3_主agent_rxd' into test
This commit is contained in:
BIN
src/assets/img/agent/icon-history.png
Normal file
BIN
src/assets/img/agent/icon-history.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.0 KiB |
@ -96,7 +96,7 @@ export default defineComponent({
|
|||||||
const renderMenuList = () => {
|
const renderMenuList = () => {
|
||||||
return currentMenuList.value.map((item) => {
|
return currentMenuList.value.map((item) => {
|
||||||
if (!item.children) {
|
if (!item.children) {
|
||||||
return renderMenuItem(item, sidebarStore.menuCollapse);
|
return renderMenuItem(item, collapsed.value);
|
||||||
}
|
}
|
||||||
return (
|
return (
|
||||||
<Dropdown
|
<Dropdown
|
||||||
@ -115,7 +115,7 @@ export default defineComponent({
|
|||||||
},
|
},
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
{renderMenuItem(item, sidebarStore.menuCollapse)}
|
{renderMenuItem(item, collapsed.value)}
|
||||||
</Dropdown>
|
</Dropdown>
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
@ -161,39 +161,39 @@ export default defineComponent({
|
|||||||
trigger
|
trigger
|
||||||
onCollapse={setCollapsed}
|
onCollapse={setCollapsed}
|
||||||
>
|
>
|
||||||
<Menu
|
<Menu class={`siderBar-wrap w-full flex flex-col px-16px pt-16px ${collapsed.value ? 'menu-fold' : ''}`}>
|
||||||
class={`siderBar-wrap p-16px w-full h-full flex flex-col ${sidebarStore.menuCollapse ? 'menu-fold' : ''}`}
|
|
||||||
>
|
|
||||||
{showAiSearch.value && (
|
{showAiSearch.value && (
|
||||||
<>
|
<>
|
||||||
<Menu.Item class={`menu-item !mb-0 ${isHomeRoute.value ? 'active' : ''}`} onClick={handleUserHome}>
|
<Menu.Item class={`menu-item !mb-0 ${isHomeRoute.value ? 'active' : ''}`} onClick={handleUserHome}>
|
||||||
<img src={icon1} width={18} height={18} />
|
<img src={icon1} width={18} height={18} />
|
||||||
{!sidebarStore.menuCollapse && (
|
{!collapsed.value && <span class="cts label">开始工作</span>}
|
||||||
<span class="cts label">开始工作</span>
|
|
||||||
)}
|
|
||||||
</Menu.Item>
|
</Menu.Item>
|
||||||
<div class="line w-full h-1px bg-#211F24 my-12px"></div>
|
<div class="line w-full h-1px bg-#211F24 my-12px"></div>
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
<div class="flex flex-col flex-1">
|
<div class="flex flex-col flex-1">
|
||||||
<div class="menu-list flex-1">{renderMenuList()}</div>
|
<div class="menu-list flex-1">{renderMenuList()}</div>
|
||||||
<div class="flex justify-center items-center">
|
</div>
|
||||||
|
</Menu>
|
||||||
<div
|
<div
|
||||||
class="flex fold-btn items-center cursor-pointer"
|
class={`bg-#F6F5FC flex items-center absolute bottom-0 w-full pt-8px px-16px pb-16px right-0 ${
|
||||||
|
collapsed.value ? 'justify-center' : 'justify-end'
|
||||||
|
}`}
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
class="flex fold-btn items-center cursor-pointer h-22px "
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
sidebarStore.setMenuCollapse();
|
sidebarStore.setMenuCollapse();
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
{sidebarStore.menuCollapse ? (
|
{collapsed.value ? (
|
||||||
<icon-menu-unfold size={16} class="color-#55585F icon mr-4px" />
|
<icon-menu-unfold size={16} class="color-#55585F icon mr-4px" />
|
||||||
) : (
|
) : (
|
||||||
<icon-menu-fold size={16} class="color-#55585F icon mr-4px" />
|
<icon-menu-fold size={16} class="color-#55585F icon mr-4px" />
|
||||||
)}
|
)}
|
||||||
{!sidebarStore.menuCollapse && <span class="cts !color-#55585F flex-shrink-0">收起</span>}
|
{!collapsed.value && <span class="cts !color-#55585F flex-shrink-0">收起</span>}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</Menu>
|
|
||||||
</Layout.Sider>
|
</Layout.Sider>
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|||||||
@ -44,7 +44,11 @@
|
|||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.siderBar-wrap {
|
.ant-layout-sider {
|
||||||
|
.ant-layout-sider-children {
|
||||||
|
position: relative;
|
||||||
|
// padding: 16px 0;
|
||||||
|
.siderBar-wrap {
|
||||||
background: transparent !important;
|
background: transparent !important;
|
||||||
border: none !important;
|
border: none !important;
|
||||||
color: inherit;
|
color: inherit;
|
||||||
@ -62,6 +66,8 @@
|
|||||||
.line {
|
.line {
|
||||||
opacity: 0.06;
|
opacity: 0.06;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
.fold-btn {
|
.fold-btn {
|
||||||
&:hover {
|
&:hover {
|
||||||
.cts,
|
.cts,
|
||||||
@ -70,4 +76,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -15,6 +15,7 @@ interface sidebarState {
|
|||||||
currentMenuList: any[];
|
currentMenuList: any[];
|
||||||
unreadInfo: number[];
|
unreadInfo: number[];
|
||||||
menuCollapse: boolean;
|
menuCollapse: boolean;
|
||||||
|
hasMenuList: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
let unreadInfoTimer: number | null = null;
|
let unreadInfoTimer: number | null = null;
|
||||||
@ -25,11 +26,12 @@ export const useSidebarStore = defineStore('sidebar', {
|
|||||||
currentMenuList: [], // 菜单信息
|
currentMenuList: [], // 菜单信息
|
||||||
unreadInfo: [], // 未读消息
|
unreadInfo: [], // 未读消息
|
||||||
menuCollapse: false, // 菜单是否折叠
|
menuCollapse: false, // 菜单是否折叠
|
||||||
|
hasMenuList: true, // 是否有菜单
|
||||||
}),
|
}),
|
||||||
getters: {
|
getters: {
|
||||||
showSider(): boolean {
|
showSider(): boolean {
|
||||||
const route = router.currentRoute.value;
|
const route = router.currentRoute.value;
|
||||||
return !route.meta?.hideSidebar && this.currentMenuList.length > 0;
|
return !route.meta?.hideSidebar && this.hasMenuList;
|
||||||
},
|
},
|
||||||
sidebarWidth(): number {
|
sidebarWidth(): number {
|
||||||
if (!this.showSider) return 0;
|
if (!this.showSider) return 0;
|
||||||
@ -49,8 +51,9 @@ export const useSidebarStore = defineStore('sidebar', {
|
|||||||
clearMenuCollapse() {
|
clearMenuCollapse() {
|
||||||
this.menuCollapse = false;
|
this.menuCollapse = false;
|
||||||
},
|
},
|
||||||
setCurrentMenuList(val: any[]) {
|
setCurrentMenuList(newMenuList: any[]) {
|
||||||
this.currentMenuList = val;
|
this.currentMenuList = newMenuList;
|
||||||
|
this.hasMenuList = newMenuList.length > 0;
|
||||||
},
|
},
|
||||||
// navbar菜单列表由企业对应权限决定
|
// navbar菜单列表由企业对应权限决定
|
||||||
// getUserNavbarMenuList() {
|
// getUserNavbarMenuList() {
|
||||||
|
|||||||
@ -3,10 +3,12 @@
|
|||||||
backdrop-filter: blur(20px);
|
backdrop-filter: blur(20px);
|
||||||
background: rgba(255, 255, 255, 0.9);
|
background: rgba(255, 255, 255, 0.9);
|
||||||
.history-conversation-btn {
|
.history-conversation-btn {
|
||||||
border-radius: 8px 0 0 8px;
|
background: url('@/assets/img/agent/icon-history.png') center center no-repeat;
|
||||||
border-top: 1px solid #eabaff;
|
background-size: cover;
|
||||||
border-bottom: 1px solid #eabaff;
|
// border-radius: 8px 0 0 8px;
|
||||||
border-left: 1px solid #eabaff;
|
// border-top: 1px solid #eabaff;
|
||||||
|
// border-bottom: 1px solid #88DDFF;
|
||||||
|
// border-left: 1px solid #AC8EFF;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 50%;
|
top: 50%;
|
||||||
right: 0;
|
right: 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user