288 lines
7.1 KiB
Vue
Raw Normal View History

2025-01-25 02:48:00 +00:00
<template>
<div class="layout-header-warp">
<div class="layout-header">
<div class="layout-header-top">
<div class="layout-header-top-left">
<span class="welcome-msg">您好欢迎来到农业产业服务平台</span>
<div class="left-link">
<div class="iconfont icon-bigScreen"></div>
<span>数据大屏</span>
</div>
<div class="left-link">
<div class="iconfont icon-operation" style="font-size: 12px"></div>
<span>产业运营管理</span>
</div>
</div>
<div class="layout-header-top-right">
<span>商家中心</span>
2025-04-11 17:32:55 +08:00
<span @click="toUserCenter">个人中心</span>
<span @click="toHome" class="back-home">
<div class="iconfont icon-home" style="font-size: 12px"></div>
<span>返回首页</span>
</span>
</div>
2025-01-25 02:48:00 +00:00
</div>
<div class="layout-header-bottom">
<div class="layout-header-bottom-left">
<div class="layout-header-bottom-search">
<div class="title">
<img :src="getAssetsFile('images/logo.png')" />
</div>
<div class="search-warp">
<el-input v-model="keyword" placeholder="请输入关键词进行搜索"></el-input>
<el-button type="primary" @click="Search">搜索</el-button>
</div>
</div>
2025-01-25 02:48:00 +00:00
</div>
<div class="layout-header-bottom-right">
<div class="layout-header-bottom-right-qr">
<div class="layout-header-bottom-right-qr-img">
<img :src="qrImg" alt="" />
<p>下载数农App</p>
</div>
<div class="layout-header-bottom-right-qr-img">
<img :src="qrImg" alt="" />
<p>打开数农小程序</p>
</div>
</div>
</div>
</div>
<div class="layout-header-menu">
2025-01-25 02:48:00 +00:00
<el-menu ellipsis class="layout-header-bottom-menu" mode="horizontal">
<app-link v-for="(item, index) in meuns" :key="index" :to="item.path">
<el-menu-item active-text-color="#25BF82">{{ item.label }}</el-menu-item>
2025-01-25 02:48:00 +00:00
</app-link>
</el-menu>
</div>
</div>
</div>
</template>
<script setup name="layout-header">
2025-04-14 02:39:31 +01:00
import { ref } from 'vue';
2025-01-25 02:48:00 +00:00
import { qrImg } from './base64img';
import AppLink from '../Menu/Link.vue';
2025-04-14 02:39:31 +01:00
import { useRouter } from 'vue-router';
import { getAssetsFile } from '@/utils';
2025-01-25 02:48:00 +00:00
const router = useRouter();
2025-01-25 02:48:00 +00:00
const keyword = ref('');
const meuns = ref([
{
label: '智慧种植',
2025-04-09 10:21:21 +01:00
path: '/sub-operation-service/ecommerce',
2025-01-25 02:48:00 +00:00
},
{
label: '农事服务',
2025-04-09 10:21:21 +01:00
path: '/sub-operation-service/ecommerce',
2025-01-25 02:48:00 +00:00
},
{
label: '涉农金融',
2025-04-09 10:21:21 +01:00
path: '/sub-operation-service/ecommerce',
2025-01-25 02:48:00 +00:00
},
{
label: '电商交易',
path: '/sub-operation-service/ecommerce',
2025-01-25 02:48:00 +00:00
},
{
label: '分拣包装',
2025-04-09 10:21:21 +01:00
path: '/sub-operation-service/ecommerce',
2025-01-25 02:48:00 +00:00
},
{
label: '仓储物流',
2025-04-09 10:21:21 +01:00
path: '/sub-operation-service/ecommerce',
2025-01-25 02:48:00 +00:00
},
{
label: '公共品牌运营',
2025-04-09 10:21:21 +01:00
path: '/sub-operation-service/ecommerce',
2025-01-25 02:48:00 +00:00
},
]);
function Search() {
console.log(keyword.value, 'search');
}
const toHome = () => {
console.info('toHome', router);
2025-04-09 10:21:21 +01:00
router.push('/sub-operation-service/home');
};
2025-04-11 17:32:55 +08:00
const toUserCenter = () => {
router.push('/sub-operation-service/userCenter');
};
2025-01-25 02:48:00 +00:00
</script>
<style lang="scss" scoped>
.layout-header-warp {
width: 100%;
text-align: center;
2025-04-14 09:33:57 +08:00
background: $color-fff;
.layout-header-menu {
width: 100%;
::v-deep() {
.el-menu {
justify-content: space-around;
border: none !important;
}
.el-menu-item {
font-size: 24px;
}
.el-menu-item:hover {
background: none !important;
color: $color-main;
}
.el-menu-item:active {
background: none !important;
color: $color-main;
}
}
}
}
2025-01-25 02:48:00 +00:00
.layout {
// width: 100%;
// height: 100%;
// box-sizing: border-box;
&-header {
width: 1200px;
2025-01-25 02:48:00 +00:00
height: 206px;
overflow: hidden;
margin: auto;
2025-01-25 02:48:00 +00:00
&-top {
display: flex;
height: 44px;
justify-content: space-between;
align-items: center;
padding: 0 32px;
&-left {
line-height: 36px;
.welcome-msg {
font-size: 12px;
color: $color-5a;
}
.left-link {
color: $color-main;
margin: 0 10px;
font-size: 12px;
2025-01-25 02:48:00 +00:00
cursor: pointer;
display: inline-block;
.iconfont {
color: $color-main;
display: inline-block;
margin-right: 2px;
}
.iconfont,
span {
vertical-align: middle;
}
2025-01-25 02:48:00 +00:00
}
}
&-right {
span {
color: $color-000;
2025-01-25 02:48:00 +00:00
margin-left: 25px;
line-height: 36px;
font-size: 12px;
2025-01-25 02:48:00 +00:00
text-align: center;
cursor: pointer;
&:nth-child(1) {
margin-left: 0;
}
&.back-home {
.iconfont {
display: inline-block;
vertical-align: middle;
color: $color-main;
}
span {
margin-left: 6px;
display: inline-block;
vertical-align: middle;
}
color: $color-main;
2025-01-25 02:48:00 +00:00
}
}
}
}
&-bottom {
display: flex;
padding: 20px 32px 0;
&-left {
flex-grow: 1;
display: flex;
flex-direction: column;
justify-content: space-between;
width: calc(100% - 300px);
.layout-header-bottom-search {
display: flex;
align-items: center;
.title {
font-size: 45px;
white-space: nowrap;
}
.search-warp {
width: 100%;
padding-left: 36px;
position: relative;
.el-input {
flex-grow: 1;
height: 50px;
font-size: 18px;
width: 100%;
2025-04-14 02:39:31 +01:00
:deep(.el-input__wrapper) {
padding-right: 100px;
}
}
.el-button {
position: absolute;
right: 8px;
top: 50%;
transform: translateY(-50%);
font-size: 18px;
padding: 0 24px;
height: 42px;
}
2025-01-25 02:48:00 +00:00
}
}
.layout-header-bottom-menu {
justify-content: space-around;
border: none;
.el-menu-item {
font-size: 24px;
}
}
}
&-right {
margin-top: -10px;
width: 240px;
padding-left: 20px;
p {
text-align: center;
}
&-qr {
display: flex;
justify-content: space-between;
&-img {
img {
width: 48px;
height: 48px;
2025-01-25 02:48:00 +00:00
}
p {
text-align: center;
}
}
}
}
}
}
&-main {
width: 100%;
height: calc(100% - 206px);
background-color: #f8f8f8;
}
}
</style>