百色农校

This commit is contained in:
2025-04-17 16:22:32 +08:00
parent fe348ae97b
commit 7078da29f2
35 changed files with 516 additions and 114 deletions

View File

@@ -1,6 +1,6 @@
<template>
<!-- 底部菜单 -->
<TabBar />
<TabBar class="bg-red-500" />
</template>
<script lang="ts" setup>

View File

@@ -1,7 +1,7 @@
<template>
<!-- 主体部分 -->
<div class="xl:w-screen-xl m-auto py-4 mt-12 px-4 sm:px-0 sm:mt-20">
<div class="xl:w-screen-xl m-auto py-4 mt-12 px-4 sm:px-0 sm:mt-[220px]">
<el-page-header :icon="ArrowLeft" @back="goBack">
<template #content>
<span class="text-large font-600"> {{ page.title }} </span>
@@ -41,7 +41,7 @@ import { ArrowLeft,View,Search } from '@element-plus/icons-vue'
import {useLayout, usePage} from "~/composables/configState";
import type {CmsNavigation} from "~/api/cms/cmsNavigation/model";
import type {CmsArticle, CmsArticleParam} from "~/api/cms/cmsArticle/model";
import {getNavIdByParamsId, getViews, paramsId} from "~/utils/common";
import {getImage, getNavIdByParamsId, getViews, paramsId} from "~/utils/common";
import dayjs from "dayjs";
import {getCmsNavigation, listCmsNavigation} from "~/api/cms/cmsNavigation";
import {pageCmsArticle} from "~/api/cms/cmsArticle";
@@ -97,7 +97,10 @@ const reload = async () => {
pageCmsArticle(where).then(response => {
if(response){
total.value = response?.count;
list.value = response?.list;
list.value = response?.list.map(d => {
d.image = getImage(d.image);
return d;
});
}
})
})

View File

@@ -1,7 +1,7 @@
<!-- 文章详情 -->
<template>
<!-- 主体部分 -->
<div class="xl:w-screen-xl m-auto py-4 mt-12 px-4 sm:px-0 sm:mt-20">
<div class="xl:w-screen-xl m-auto py-4 mt-12 px-4 sm:px-0 sm:mt-[220px]">
<el-page-header :icon="ArrowLeft" @back="goBack">
<template #content>
<span class="font-600 mr-3"> 文章详情 </span>
@@ -88,6 +88,7 @@ import {listCmsNavigation} from "~/api/cms/cmsNavigation";
import CmsArticleRecently from "~/components/CmsRecently.vue";
import Tags from "~/components/Tags.vue";
import Content from "~/components/Content.vue";
import {FILE_SERVER} from "~/config";
// 引入状态管理
const route = useRoute();
@@ -213,6 +214,10 @@ const reload = async () => {
category.value = list;
})
}
// 拼接图片路径
if(data.content){
form.content = form.content?.replace(/src="\//g, 'src="' + FILE_SERVER + '/');
}
if(form.permission === 1){
console.log('登录可见')

View File

@@ -3,23 +3,17 @@
<!-- 幻灯片轮播 -->
<Carousel/>
<!-- 着陆页 -->
<!-- <LandingHero/>-->
<Ad421 />
<!-- 站点列表 -->
<!-- <SiteList/>-->
<!-- 插件列表 -->
<!-- <MarketList />-->
<Ad422 />
<!-- 热点新闻 -->
<HotNews title="热点新闻" :categoryId="650"/>
<BNNews title="百农新闻"/>
<ZSNews />
<!-- 媒体视角 -->
<HotNews title="媒体视角" :categoryId="652"/>
<!-- 客户案例 -->
<!-- <CaseList/>-->
<HotNews title="校园风光" :categoryId="4144"/>
<!-- 合作伙伴 -->
<Partners/>
@@ -41,13 +35,13 @@ import {pageCmsLink} from "~/api/cms/cmsLink";
import {addCmsOrder} from "~/api/cms/cmsOrder";
import {getCaptcha} from "~/api/passport/login";
import Carousel from "~/components/Index/Carousel.vue";
import LandingHero from "~/components/Index/LandingHero.vue";
import SiteList from "~/components/Index/SiteList.vue";
import MarketList from "~/components/Index/MarketList.vue";
import HotNews from "~/components/Index/HotNews.vue";
import CaseList from "~/components/Index/CaseList.vue"
import Partners from "~/components/Index/Partners.vue";
import Customized from "~/components/Index/Customized.vue";
import BNNews from "~/components/Index/BNNews.vue";
import Ad421 from "~/components/Index/Ad421.vue";
import Ad422 from "~/components/Index/Ad422.vue";
import ZSNews from "~/components/Index/ZSNews.vue";
const route = useRoute();
const i18n = useI18n();

View File

@@ -1,7 +1,7 @@
<template>
<!-- 主体部分 -->
<div class="xl:w-screen-xl m-auto py-4 mt-12 px-4 sm:px-0 sm:mt-20">
<div class="xl:w-screen-xl m-auto py-4 mt-12 px-4 sm:px-0 sm:mt-[220px]">
<el-page-header :icon="ArrowLeft" @back="goBack">
<template #content>
<span class="text-large font-600"> {{ page.title }} </span>

View File

@@ -1,7 +1,7 @@
<template>
<!-- 主体部分 -->
<div class="xl:w-screen-xl m-auto py-4 mt-12 px-4 sm:px-0 sm:mt-20">
<div class="xl:w-screen-xl m-auto py-4 mt-12 px-4 sm:px-0 sm:mt-[220px]">
<el-page-header :icon="ArrowLeft" @back="goBack">
<template #content>
<span class="text-large font-600 line-clamp-1"> 网址导航 </span>
@@ -32,24 +32,15 @@
</el-dialog>
</template>
<el-row id="container" :gutter="24" class="clearfix">
<el-col v-for="(item,index) in list" :key="index" :sm="4" :xs="12" class="left mb-8">
<el-col v-for="(item,index) in list" :key="index" :sm="6" :xs="12" class="left mb-8">
<nuxt-link :to="`${item.url}`" class="flex-1 cursor-pointer flex flex-col text-center" target="_blank">
<el-card :body-style="{ padding: '0px' }" class="items-center flex justify-center" shadow="hover">
<el-popover
:content="item.comments"
:width="200"
placement="bottom"
trigger="hover"
>
<template #reference>
<div class="flex-1 py-5 sm:p-4 !p-4">
<el-space class="text-gray-700 dark:text-white text-base font-semibold h-[28px] flex justify-center items-center">
<el-image v-if="item.icon" :alt="item.name" :src="item.icon" style="height: 32px"/>
<span :title="item.name" class="text-lg line-clamp-1">{{ item.name }}</span>
</el-space>
</div>
</template>
</el-popover>
<div class="flex-1 py-5 sm:p-4 !p-4">
<el-space class="text-gray-700 dark:text-white text-base font-semibold h-[28px] flex justify-center items-center">
<el-image v-if="item.icon" :alt="item.name" :src="item.icon" style="height: 32px"/>
<span :title="item.name" class="text-lg line-clamp-1">{{ item.name }}</span>
</el-space>
</div>
</el-card>
</nuxt-link>
</el-col>

View File

@@ -3,7 +3,7 @@
<!-- Banner -->
<Banner :layout="layout"/>
<!-- 主体部分 -->
<div class="xl:w-screen-xl m-auto py-4 mt-12 px-4 sm:px-0 sm:mt-20">
<div class="xl:w-screen-xl m-auto py-4 mt-12 px-4 sm:px-0 sm:mt-[220px]">
<el-page-header :icon="ArrowLeft" @back="goBack">
<template #content>
<span class="text-large font-600"> {{ page.title }} </span>

View File

@@ -3,7 +3,7 @@
<!-- Banner -->
<Banner :layout="layout"/>
<!-- 主体部分 -->
<div class="xl:w-screen-xl m-auto py-4 mt-12 px-4 sm:px-0 sm:mt-20">
<div class="xl:w-screen-xl m-auto py-4 mt-12 px-4 sm:px-0 sm:mt-[220px]">
<el-page-header :icon="ArrowLeft" @back="goBack">
<template #content>
<span class="text-large font-600"> {{ page.title }} </span>

View File

@@ -2,7 +2,7 @@
<!-- Banner -->
<Banner :layout="layout" />
<!-- 主体部分 -->
<div class="xl:w-screen-xl m-auto py-4 px-4 sm:px-0">
<div class="xl:w-screen-xl m-auto mt-12 py-4 px-4 sm:px-0">
<el-page-header :icon="ArrowLeft" @back="goBack">
<template #content>
<span class="text-large font-600"> {{ page.title || '页面标题' }} </span>

View File

@@ -1,6 +1,6 @@
<template>
<!-- 主体部分 -->
<div class="xl:w-screen-xl m-auto py-4 mt-20">
<div class="xl:w-screen-xl m-auto py-4 mt-[220px]">
<el-page-header :icon="ArrowLeft" @back="goBack">
<template #content>
<span class="text-large font-600"> {{ '站内搜索' }} </span>
@@ -14,7 +14,7 @@
<el-row :gutter="24" id="container" class="clearfix">
<el-col v-for="(item,index) in list" :key="index" :span="6" class="left mb-6">
<el-card shadow="hover" :body-style="{ padding: '0px' }" class=" hover:bg-gray-50 cursor-pointer">
<nuxt-link :to="`/${item.detail}/${item.articleId}.html`">
<nuxt-link :to="`/detail/${item.articleId}.html`">
<el-image
:src="item.image"
fit="cover"