|
|
@@ -1,111 +1,231 @@
|
|
|
<template>
|
|
|
<div id="home">
|
|
|
- <el-carousel height="500px">
|
|
|
- <el-carousel-item v-for="(item, index) in BannerList1" :key="index">
|
|
|
- <img
|
|
|
- style="width: 100%; height: 100%"
|
|
|
- :src="$methods.splitImgHost(item.ImageUrl)"
|
|
|
- alt=""
|
|
|
- />
|
|
|
- </el-carousel-item>
|
|
|
- </el-carousel>
|
|
|
- <div class="novt_box center_1200">
|
|
|
- <el-carousel height="350px" style="width: 560px" class="carousel">
|
|
|
- <el-carousel-item v-for="(item, index) in BannerList2" :key="index">
|
|
|
- <img
|
|
|
- style="width: 100%; height: 100%"
|
|
|
- :src="$methods.splitImgHost(item.ImageUrl)"
|
|
|
- alt=""
|
|
|
- />
|
|
|
- <h3>
|
|
|
- <span>{{ item.Title }}</span
|
|
|
- ><span>{{ $methods.onlyFormaHao(item.CreateTime, false) }}</span>
|
|
|
- </h3>
|
|
|
- </el-carousel-item>
|
|
|
- </el-carousel>
|
|
|
- <el-tabs type="border-card" style="width: 620px; height: 350px">
|
|
|
- <el-tab-pane label="通知通告" class="tabBox">
|
|
|
- <ul>
|
|
|
+ <div
|
|
|
+ style="width: 1200px; background-color: #fff; padding: 28px 28px 58px"
|
|
|
+ class="center_1200"
|
|
|
+ >
|
|
|
+ <div class="newClass">
|
|
|
+ <div class="logo"></div>
|
|
|
+ <ul class="uls">
|
|
|
+ <li class="lis" v-for="(item, index) in tableData">
|
|
|
+ <div class="top">
|
|
|
+ {{ item.Title }}
|
|
|
+ </div>
|
|
|
+ <div class="foot">
|
|
|
+ <div class="left">
|
|
|
+ {{ $methods.onlyFormaHao(item.CreateTime, false) }}
|
|
|
+ </div>
|
|
|
+ <div class="right" @click="jumpInfo(item)">【详细】</div>
|
|
|
+ </div>
|
|
|
+ </li>
|
|
|
+ </ul>
|
|
|
+ </div>
|
|
|
+ <div class="novt_box">
|
|
|
+ <el-tabs type="border-card" style="width: 620px; height: 350px">
|
|
|
+ <el-tab-pane label="通知通告" class="tabBox">
|
|
|
+ <ul>
|
|
|
+ <li
|
|
|
+ class="li_list"
|
|
|
+ v-for="(item, index) in notList"
|
|
|
+ :key="index"
|
|
|
+ @click="jumpInfo(item)"
|
|
|
+ >
|
|
|
+ <i>●</i>
|
|
|
+ <div class="title_li">{{ item.Title }}</div>
|
|
|
+ <div class="time_li">
|
|
|
+ {{ $methods.onlyFormaHao(item.NewsCreateTime, false) }}
|
|
|
+ </div>
|
|
|
+ </li>
|
|
|
+ </ul>
|
|
|
+ <div style="text-align: center">
|
|
|
+ <el-pagination
|
|
|
+ class="paginations"
|
|
|
+ @current-change="handleCurrentChange"
|
|
|
+ :current-page.sync="formData.pageindex"
|
|
|
+ :page-size="formData.pagesize"
|
|
|
+ layout="total, prev, pager, next"
|
|
|
+ :total="total"
|
|
|
+ >
|
|
|
+ </el-pagination>
|
|
|
+ </div>
|
|
|
+ </el-tab-pane>
|
|
|
+ </el-tabs>
|
|
|
+ <el-carousel height="350px" style="width: 560px" class="carousel">
|
|
|
+ <el-carousel-item v-for="(item, index) in BannerList2" :key="index">
|
|
|
+ <img
|
|
|
+ style="width: 100%; height: 100%"
|
|
|
+ :src="$methods.splitImgHost(item.ImageUrl)"
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ <h3>
|
|
|
+ <span>{{ item.Title }}</span
|
|
|
+ ><span>{{ $methods.onlyFormaHao(item.CreateTime, false) }}</span>
|
|
|
+ </h3>
|
|
|
+ </el-carousel-item>
|
|
|
+ </el-carousel>
|
|
|
+ </div>
|
|
|
+ <div class="margin_28">
|
|
|
+ <div
|
|
|
+ class="small_box"
|
|
|
+ v-for="(item, index) in smallBoxList"
|
|
|
+ :key="index"
|
|
|
+ @click="jumpPage(item)"
|
|
|
+ >
|
|
|
+ <img :src="item.img" alt="" />
|
|
|
+ <span>{{ item.label }}</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="dis_flex_px">
|
|
|
+ <div class="li_px">
|
|
|
+ <div class="header_px">
|
|
|
+ <span class="left">协会动态</span>
|
|
|
+ </div>
|
|
|
+ <ul class="ul_px">
|
|
|
+ <el-empty
|
|
|
+ :image-size="100"
|
|
|
+ description="暂无数据"
|
|
|
+ v-if="list1.length === 0"
|
|
|
+ ></el-empty>
|
|
|
<li
|
|
|
class="li_list"
|
|
|
- v-for="(item, index) in notList"
|
|
|
+ v-for="(item, index) in list1"
|
|
|
:key="index"
|
|
|
@click="jumpInfo(item)"
|
|
|
>
|
|
|
+ <i>●</i>
|
|
|
<div class="title_li">{{ item.Title }}</div>
|
|
|
<div class="time_li">
|
|
|
{{ $methods.onlyFormaHao(item.NewsCreateTime, false) }}
|
|
|
</div>
|
|
|
</li>
|
|
|
</ul>
|
|
|
- <el-pagination
|
|
|
- class="paginations"
|
|
|
- @current-change="handleCurrentChange"
|
|
|
- :current-page.sync="formData.pagesize"
|
|
|
- :page-size="formData.pageindex"
|
|
|
- layout="total, prev, pager, next"
|
|
|
- :total="total"
|
|
|
- >
|
|
|
- </el-pagination>
|
|
|
- </el-tab-pane>
|
|
|
- </el-tabs>
|
|
|
- </div>
|
|
|
- <div class="content_list center_1200">
|
|
|
- <div class="content_list_box">
|
|
|
- <h2 class="title">协会动态<i></i></h2>
|
|
|
- <ul>
|
|
|
- <template v-for="(item, index) in list1">
|
|
|
- <div
|
|
|
- v-if="index === 0"
|
|
|
- class="content_list_imgBox"
|
|
|
+ <div class="paginationBox">
|
|
|
+ <el-pagination
|
|
|
+ v-if="list1.length !== 0"
|
|
|
+ class="paginations"
|
|
|
+ @current-change="handleCurrentChange1"
|
|
|
+ :current-page.sync="formData1.pageindex"
|
|
|
+ :page-size="formData1.pagesize"
|
|
|
+ layout="total, prev, pager, next"
|
|
|
+ :total="total1"
|
|
|
+ >
|
|
|
+ </el-pagination>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="li_px">
|
|
|
+ <div class="header_px">
|
|
|
+ <span class="left">行业新闻</span>
|
|
|
+ </div>
|
|
|
+ <ul class="ul_px">
|
|
|
+ <el-empty
|
|
|
+ :image-size="100"
|
|
|
+ description="暂无数据"
|
|
|
+ v-if="list2.length === 0"
|
|
|
+ ></el-empty>
|
|
|
+ <li
|
|
|
+ class="li_list"
|
|
|
+ v-for="(item, index) in list2"
|
|
|
+ :key="index"
|
|
|
@click="jumpInfo(item)"
|
|
|
>
|
|
|
- <img :src="$methods.splitImgHost(item.NewsImg)" alt="" />
|
|
|
- <div class="footers">
|
|
|
- <div class="left">
|
|
|
- {{ item.Title }}
|
|
|
- </div>
|
|
|
- <div class="right">
|
|
|
- {{ $methods.onlyFormaHao(item.NewsCreateTime) }}
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <li v-else class="footers_li" @click="jumpInfo(item)">
|
|
|
- <div class="left">{{ item.Title }}</div>
|
|
|
- <div class="right">
|
|
|
- {{ $methods.onlyFormaHao(item.NewsCreateTime) }}
|
|
|
+ <i>●</i>
|
|
|
+ <div class="title_li">{{ item.Title }}</div>
|
|
|
+ <div class="time_li">
|
|
|
+ {{ $methods.onlyFormaHao(item.NewsCreateTime, false) }}
|
|
|
</div>
|
|
|
</li>
|
|
|
- </template>
|
|
|
- </ul>
|
|
|
- </div>
|
|
|
- <div class="content_list_box">
|
|
|
- <h2 class="title">行业新闻<i></i></h2>
|
|
|
- <ul>
|
|
|
- <template v-for="(item, index) in list2">
|
|
|
- <div
|
|
|
- v-if="index === 0"
|
|
|
- class="content_list_imgBox"
|
|
|
+ </ul>
|
|
|
+ <div class="paginationBox">
|
|
|
+ <el-pagination
|
|
|
+ v-if="list2.length !== 0"
|
|
|
+ class="paginations"
|
|
|
+ @current-change="handleCurrentChange2"
|
|
|
+ :current-page.sync="formData2.pageindex"
|
|
|
+ :page-size="formData2.pagesize"
|
|
|
+ layout="total, prev, pager, next"
|
|
|
+ :total="total2"
|
|
|
+ >
|
|
|
+ </el-pagination>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="li_px">
|
|
|
+ <div class="header_px">
|
|
|
+ <span class="left">政策法规</span>
|
|
|
+ </div>
|
|
|
+ <ul class="ul_px">
|
|
|
+ <el-empty
|
|
|
+ :image-size="100"
|
|
|
+ description="暂无数据"
|
|
|
+ v-if="list3.length === 0"
|
|
|
+ ></el-empty>
|
|
|
+ <li
|
|
|
+ class="li_list"
|
|
|
+ v-for="(item, index) in list3"
|
|
|
+ :key="index"
|
|
|
@click="jumpInfo(item)"
|
|
|
>
|
|
|
- <img :src="$methods.splitImgHost(item.NewsImg)" alt="" />
|
|
|
- <div class="footers">
|
|
|
- <div class="left">
|
|
|
- {{ item.Title }}
|
|
|
- </div>
|
|
|
- <div class="right">
|
|
|
- {{ $methods.onlyFormaHao(item.NewsCreateTime) }}
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <li v-else class="footers_li" @click="jumpInfo(item)">
|
|
|
- <div class="left">{{ item.Title }}</div>
|
|
|
- <div class="right">
|
|
|
- {{ $methods.onlyFormaHao(item.NewsCreateTime) }}
|
|
|
+ <i>●</i>
|
|
|
+ <div class="title_li">{{ item.Title }}</div>
|
|
|
+ <div class="time_li">
|
|
|
+ {{ $methods.onlyFormaHao(item.NewsCreateTime, false) }}
|
|
|
</div>
|
|
|
</li>
|
|
|
- </template>
|
|
|
- </ul>
|
|
|
+ </ul>
|
|
|
+ <div class="paginationBox">
|
|
|
+ <el-pagination
|
|
|
+ v-if="list3.length !== 0"
|
|
|
+ class="paginations"
|
|
|
+ @current-change="handleCurrentChange3"
|
|
|
+ :current-page.sync="formData3.pageindex"
|
|
|
+ :page-size="formData3.pagesize"
|
|
|
+ layout="total, prev, pager, next"
|
|
|
+ :total="total3"
|
|
|
+ >
|
|
|
+ </el-pagination>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="vipBox">
|
|
|
+ <div class="top">
|
|
|
+ <span class="left">会员天地</span
|
|
|
+ ><span class="right" @click="jumpPage({ label: '会员天地' })"
|
|
|
+ >更多+</span
|
|
|
+ >
|
|
|
+ </div>
|
|
|
+ <el-empty
|
|
|
+ :image-size="100"
|
|
|
+ description="暂无数据"
|
|
|
+ v-if="list4.length === 0"
|
|
|
+ ></el-empty>
|
|
|
+ <div class="swiperBox" v-else>
|
|
|
+ <i
|
|
|
+ v-if="list4.length > 4"
|
|
|
+ class="el-icon-arrow-left left"
|
|
|
+ @click="leftJump"
|
|
|
+ ></i>
|
|
|
+ <swiper
|
|
|
+ ref="swiper"
|
|
|
+ @swiper="onSwiper"
|
|
|
+ @slideChange="onSlideChange"
|
|
|
+ v-bind:options="swiperOptions"
|
|
|
+ >
|
|
|
+ <swiper-slide v-for="(item, index) in list4" :key="index">
|
|
|
+ <img
|
|
|
+ style="width: 100%; height: 170px"
|
|
|
+ :src="$methods.splitImgHost(item.NewsImg)"
|
|
|
+ alt=""
|
|
|
+ />
|
|
|
+ <p class="p_text">
|
|
|
+ {{ item.Title }}
|
|
|
+ </p>
|
|
|
+ </swiper-slide>
|
|
|
+ </swiper>
|
|
|
+ <i
|
|
|
+ v-if="list4.length > 4"
|
|
|
+ class="el-icon-arrow-right right"
|
|
|
+ @click="rightJump"
|
|
|
+ ></i>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div style="padding: 15px 0px; overflow: hidden">
|
|
|
@@ -116,56 +236,177 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+import { Swiper, SwiperSlide } from "vue-awesome-swiper";
|
|
|
+import "swiper/css/swiper.css";
|
|
|
import Scroller from "@/components/Scroller/index.vue";
|
|
|
export default {
|
|
|
- components: { Scroller },
|
|
|
+ components: {
|
|
|
+ Swiper,
|
|
|
+ SwiperSlide,
|
|
|
+ Scroller,
|
|
|
+ },
|
|
|
data() {
|
|
|
+ let self = this;
|
|
|
return {
|
|
|
+ smallBoxList: [
|
|
|
+ { img: require("@/assets/images/icon_pxjd@2x.png"), label: "培训鉴定" },
|
|
|
+ { img: require("@/assets/images/icon_zjzk@2x.png"), label: "专家智库" },
|
|
|
+ { img: require("@/assets/images/icon_hytd@2x.png"), label: "会员天地" },
|
|
|
+ { img: require("@/assets/images/icon_xhqk@2x.png"), label: "协会期刊" },
|
|
|
+ ],
|
|
|
+ swiperOptions: {
|
|
|
+ slidesPerView: 4,
|
|
|
+ spaceBetween: 20,
|
|
|
+ loop: false,
|
|
|
+ autoplay: {
|
|
|
+ delay: 3000,
|
|
|
+ disableOnInteraction: false,
|
|
|
+ },
|
|
|
+ on: {
|
|
|
+ click: function () {
|
|
|
+ // 这里有坑,需要注意的是:this 指向的是 swpier 实例,而不是当前的 vue, 因此借助 vm,来调用 methods 里的方法
|
|
|
+ // console.log(this); // -> Swiper
|
|
|
+ // 当前活动块的索引,与activeIndex不同的是,在loop模式下不会将 复制的块 的数量计算在内。
|
|
|
+ let initIndex =
|
|
|
+ this.clickedIndex - this.activeIndex + this.realIndex;
|
|
|
+ self.handleClickSlide(initIndex);
|
|
|
+ },
|
|
|
+ },
|
|
|
+ },
|
|
|
notList: [],
|
|
|
total: 0,
|
|
|
+ total1: 0,
|
|
|
+ total2: 0,
|
|
|
+ total3: 0,
|
|
|
+ total4: 0,
|
|
|
formData: {
|
|
|
- pageindex: 4, //每页内容条数
|
|
|
- pagesize: 1, //当前第几页
|
|
|
+ pagesize: 6, //每页内容条数
|
|
|
+ pageindex: 1, //当前第几页
|
|
|
+ },
|
|
|
+ formData1: {
|
|
|
+ pagesize: 5, //每页内容条数
|
|
|
+ pageindex: 1, //当前第几页
|
|
|
+ },
|
|
|
+ formData2: {
|
|
|
+ pagesize: 5, //每页内容条数
|
|
|
+ pageindex: 1, //当前第几页
|
|
|
+ },
|
|
|
+ formData3: {
|
|
|
+ pagesize: 5, //每页内容条数
|
|
|
+ pageindex: 1, //当前第几页
|
|
|
+ },
|
|
|
+ formData4: {
|
|
|
+ pagesize: 5, //每页内容条数
|
|
|
+ pageindex: 1, //当前第几页
|
|
|
},
|
|
|
lists: [], //友情链接
|
|
|
list1: [], //协会动态列表
|
|
|
list2: [], //行业新闻列表
|
|
|
+ list3: [], //政策法规列表
|
|
|
+ list4: [], //会员天地列表
|
|
|
BannerList1: [], //Banner1列表
|
|
|
BannerList2: [], //Banner2列表
|
|
|
+ tableData: [], //最新3条文章
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
|
this.getInit();
|
|
|
},
|
|
|
methods: {
|
|
|
+ jumpPage(e) {
|
|
|
+ for (let i = 0; i < this.$store.state.asyncRouter.length; i++) {
|
|
|
+ if (this.$store.state.asyncRouter[i].Name === e.label) {
|
|
|
+ if (
|
|
|
+ this.$store.state.asyncRouter[i].ChildList &&
|
|
|
+ this.$store.state.asyncRouter[i].ChildList.length > 0
|
|
|
+ ) {
|
|
|
+ this.$router.push({
|
|
|
+ path: `menuList?ParentId=${this.$store.state.asyncRouter[i].ChildList[0].ParentId}&MenuId=${this.$store.state.asyncRouter[i].ChildList[0].MenuId}`,
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ } else {
|
|
|
+ this.$message.error("请联系管理员新增对应路由");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ leftJump() {
|
|
|
+ this.$refs.swiper.$swiper.slidePrev();
|
|
|
+ },
|
|
|
+ rightJump() {
|
|
|
+ this.$refs.swiper.$swiper.slideNext();
|
|
|
+ },
|
|
|
+ handleClickSlide(index) {
|
|
|
+ this.jumpInfo(this.list4[index])
|
|
|
+ },
|
|
|
+ onSwiper(swiper) {
|
|
|
+ console.log(swiper);
|
|
|
+ },
|
|
|
+ onSlideChange() {},
|
|
|
getInit() {
|
|
|
this.getNewPositionList(); // 首页通告等
|
|
|
this.getBannerList(); // 获取首页广告轮播Banner列表
|
|
|
this.getWebFriendlinks(); // 获取友情链接列表
|
|
|
+ this.newList(); //获取最新3条文章
|
|
|
+ },
|
|
|
+ newList() {
|
|
|
+ this.$api.XfWebApiGetNewsReList().then((res) => {
|
|
|
+ this.tableData = res.Data.List || [];
|
|
|
+ });
|
|
|
},
|
|
|
// 首页通告等
|
|
|
getNewPositionList() {
|
|
|
- // seat:0全部,1通知通告,3协会动态,4行业新闻
|
|
|
+ // seat:0全部,1通知通告,3协会动态,4行业新闻,5政策法规,6会员天地
|
|
|
this.getList();
|
|
|
+ this.getList1();
|
|
|
+ this.getList2();
|
|
|
+ this.getList3();
|
|
|
+ this.getList4();
|
|
|
+ },
|
|
|
+ //通知列表
|
|
|
+ getList() {
|
|
|
this.$api
|
|
|
- .XfWebApiGetNewPositionList({ seat: 3, pageindex: 5, pagesize: 1 })
|
|
|
+ .XfWebApiGetNewPositionList({ seat: 1, ...this.formData })
|
|
|
.then((res) => {
|
|
|
- this.list1 = res.Data.List;
|
|
|
+ this.notList = res.Data.List || [];
|
|
|
+ this.total = res.Data.TotalCount;
|
|
|
});
|
|
|
-
|
|
|
+ },
|
|
|
+ //协会动态
|
|
|
+ getList1() {
|
|
|
this.$api
|
|
|
- .XfWebApiGetNewPositionList({ seat: 4, pageindex: 5, pagesize: 1 })
|
|
|
+ .XfWebApiGetNewPositionList({ seat: 3, ...this.formData1 })
|
|
|
.then((res) => {
|
|
|
- this.list2 = res.Data.List;
|
|
|
+ this.list1 = res.Data.List || [];
|
|
|
+ this.total1 = res.Data.TotalCount;
|
|
|
});
|
|
|
},
|
|
|
- //通知列表
|
|
|
- getList() {
|
|
|
+ //行业新闻
|
|
|
+ getList2() {
|
|
|
this.$api
|
|
|
- .XfWebApiGetNewPositionList({ seat: 1, ...this.formData })
|
|
|
+ .XfWebApiGetNewPositionList({ seat: 4, ...this.formData2 })
|
|
|
.then((res) => {
|
|
|
- this.notList = res.Data.List;
|
|
|
- this.total = res.Data.TotalCount;
|
|
|
+ this.list2 = res.Data.List || [];
|
|
|
+ this.total2 = res.Data.TotalCount;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //政策法规
|
|
|
+ getList3() {
|
|
|
+ this.$api
|
|
|
+ .XfWebApiGetNewPositionList({ seat: 5, ...this.formData3 })
|
|
|
+ .then((res) => {
|
|
|
+ this.list3 = res.Data.List || [];
|
|
|
+ this.total3 = res.Data.TotalCount;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //会员天地
|
|
|
+ getList4() {
|
|
|
+ this.$api
|
|
|
+ .XfWebApiGetNewPositionList({ seat: 6, ...this.formData4 })
|
|
|
+ .then((res) => {
|
|
|
+ this.list4 = res.Data.List || [];
|
|
|
+ this.total4 = res.Data.TotalCount;
|
|
|
});
|
|
|
},
|
|
|
// 获取首页广告轮播Banner列表
|
|
|
@@ -188,6 +429,22 @@ export default {
|
|
|
this.formData.pageindex = e;
|
|
|
this.getList();
|
|
|
},
|
|
|
+ handleCurrentChange1(e) {
|
|
|
+ this.formData1.pageindex = e;
|
|
|
+ this.getList1();
|
|
|
+ },
|
|
|
+ handleCurrentChange2(e) {
|
|
|
+ this.formData2.pageindex = e;
|
|
|
+ this.getList2();
|
|
|
+ },
|
|
|
+ handleCurrentChange3(e) {
|
|
|
+ this.formData3.pageindex = e;
|
|
|
+ this.getList3();
|
|
|
+ },
|
|
|
+ handleCurrentChange4(e) {
|
|
|
+ this.formData4.pageindex = e;
|
|
|
+ this.getList4();
|
|
|
+ },
|
|
|
//跳转详情页
|
|
|
jumpInfo(e) {
|
|
|
this.$router.push({
|
|
|
@@ -206,6 +463,191 @@ export default {
|
|
|
::v-deep .carousel .el-carousel__indicators--horizontal {
|
|
|
display: none;
|
|
|
}
|
|
|
+#home {
|
|
|
+ background: url("../../assets/images/BG_01@2x.png") no-repeat center center;
|
|
|
+ background-size: cover;
|
|
|
+}
|
|
|
+.p_text {
|
|
|
+ word-break: break-all;
|
|
|
+ text-overflow: ellipsis;
|
|
|
+ overflow: hidden;
|
|
|
+ display: -webkit-box;
|
|
|
+ -webkit-line-clamp: 2;
|
|
|
+ -webkit-box-orient: vertical;
|
|
|
+}
|
|
|
+.newClass {
|
|
|
+ margin-bottom: 28px;
|
|
|
+ padding: 3px 24px;
|
|
|
+ background-color: #fff1f3;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ .logo {
|
|
|
+ width: 102px;
|
|
|
+ height: 102px;
|
|
|
+ flex-shrink: 0;
|
|
|
+ background: url("../../assets/images/zxzx@2x.png") no-repeat center center;
|
|
|
+ background-size: cover;
|
|
|
+ }
|
|
|
+ .uls {
|
|
|
+ flex: 1;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ .lis {
|
|
|
+ margin-left: 45px;
|
|
|
+ flex: 1;
|
|
|
+ .top {
|
|
|
+ height: 36px;
|
|
|
+ color: #333333;
|
|
|
+ margin-bottom: 14px;
|
|
|
+ word-break: break-all;
|
|
|
+ text-overflow: ellipsis;
|
|
|
+ overflow: hidden;
|
|
|
+ display: -webkit-box;
|
|
|
+ -webkit-line-clamp: 2;
|
|
|
+ -webkit-box-orient: vertical;
|
|
|
+ }
|
|
|
+ .foot {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ .left {
|
|
|
+ color: #828282;
|
|
|
+ }
|
|
|
+ .right {
|
|
|
+ color: #c9001f;
|
|
|
+ user-select: none;
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+.margin_28 {
|
|
|
+ margin: 28px 0px;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ & > .small_box {
|
|
|
+ user-select: none;
|
|
|
+ cursor: pointer;
|
|
|
+ width: 269px;
|
|
|
+ height: 98px;
|
|
|
+ background-color: #ebebeb;
|
|
|
+ padding: 11px 24px;
|
|
|
+ box-sizing: border-box;
|
|
|
+ border: 1px solid #c9001f;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ transition: all 0.2s;
|
|
|
+ &:hover {
|
|
|
+ // transform: scale(1.1);
|
|
|
+ box-shadow: 0px 0px 8px 4px rgba($color: #c9001f, $alpha: 0.5);
|
|
|
+ }
|
|
|
+ img {
|
|
|
+ width: 88px;
|
|
|
+ height: 79px;
|
|
|
+ margin-right: 19px;
|
|
|
+ }
|
|
|
+ span {
|
|
|
+ color: #333333;
|
|
|
+ font-size: 24px;
|
|
|
+ font-weight: bold;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+.dis_flex_px {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ & > .li_px {
|
|
|
+ width: 368px;
|
|
|
+ height: 314px;
|
|
|
+ border: 1px solid #e0e0e0;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ & > .header_px {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ height: 45px;
|
|
|
+ border-bottom: 1px solid #e0e0e0;
|
|
|
+ & > .left {
|
|
|
+ width: 120px;
|
|
|
+ height: 45px;
|
|
|
+ line-height: 46px;
|
|
|
+ text-align: center;
|
|
|
+ font-weight: bold;
|
|
|
+ font-size: 20px;
|
|
|
+ color: #fff;
|
|
|
+ background-color: #c9001f;
|
|
|
+ }
|
|
|
+ & > .right {
|
|
|
+ user-select: none;
|
|
|
+ cursor: pointer;
|
|
|
+ font-size: 15px;
|
|
|
+ color: #c9001f;
|
|
|
+ margin-right: 20px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ & > .ul_px {
|
|
|
+ flex: 1;
|
|
|
+ height: 1px;
|
|
|
+ padding: 10px 20px 4px;
|
|
|
+ }
|
|
|
+ & > .paginationBox {
|
|
|
+ height: 34px;
|
|
|
+ text-align: center;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+.vipBox {
|
|
|
+ margin-top: 48px;
|
|
|
+ border: 1px solid #e0e0e0;
|
|
|
+ .top {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ padding: 0px 24px;
|
|
|
+ height: 46px;
|
|
|
+ background-color: #f0f0f0;
|
|
|
+ & > .left {
|
|
|
+ font-weight: bold;
|
|
|
+ font-size: 20px;
|
|
|
+ color: #333;
|
|
|
+ }
|
|
|
+ & > .right {
|
|
|
+ user-select: none;
|
|
|
+ cursor: pointer;
|
|
|
+ font-size: 15px;
|
|
|
+ color: #c9001f;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .swiperBox {
|
|
|
+ padding: 28px 0px 40px;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: space-between;
|
|
|
+ & > .left {
|
|
|
+ color: red;
|
|
|
+ font-size: 28px;
|
|
|
+ font-weight: bold;
|
|
|
+ margin-right: 10px;
|
|
|
+ cursor: pointer;
|
|
|
+ user-select: none;
|
|
|
+ }
|
|
|
+ & > .swiper-container{
|
|
|
+ flex: 1;
|
|
|
+ }
|
|
|
+ & > .right {
|
|
|
+ color: red;
|
|
|
+ font-size: 28px;
|
|
|
+ font-weight: bold;
|
|
|
+ margin-left: 10px;
|
|
|
+ cursor: pointer;
|
|
|
+ user-select: none;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
.el-carousel__item h3 {
|
|
|
color: #fff;
|
|
|
text-align: center;
|
|
|
@@ -346,22 +788,28 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
.li_list {
|
|
|
+ list-style-type: lower-latin;
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
- height: 60px;
|
|
|
- border-bottom: 1px dashed #ddd;
|
|
|
- font-size: 16px;
|
|
|
+ height: 41px;
|
|
|
+ font-size: 15px;
|
|
|
color: #666;
|
|
|
cursor: pointer;
|
|
|
transition: all 0.3s;
|
|
|
&:hover {
|
|
|
color: #c9001f;
|
|
|
}
|
|
|
+ & > i {
|
|
|
+ transform: scale(0.8);
|
|
|
+ color: #c9001f;
|
|
|
+ margin-right: 6px;
|
|
|
+ }
|
|
|
& > .title_li {
|
|
|
flex: 1;
|
|
|
white-space: nowrap;
|
|
|
overflow: hidden;
|
|
|
text-overflow: ellipsis;
|
|
|
+ padding-right: 10px;
|
|
|
}
|
|
|
& > .time_li {
|
|
|
font-size: 14px;
|