<template>
    <!-- 图书馆 -->
    <div class="eb-container" ref="appRef">
        <MainTitle class="title" :title="title"></MainTitle>
        <div class="main-container">
            <div class="left-box">
                <div class="base-info">
                    <div class="title-box-samll">
                        <span>基本概况</span>
                    </div>
                    <div class="content-info">
                        <div class="data-item">
                            <img
                                :src="require('@/assets/screenView/xiaqu.png')"
                            />
                            <div class="content">
                                <span>建筑面积(㎡)</span>
                                <span>{{
                                    baseInfo[0] && baseInfo[0].value
                                }}</span>
                            </div>
                        </div>
                        <div class="data-item">
                            <img
                                :src="require('@/assets/screenView/gendi.png')"
                            />
                            <div class="content">
                                <span>馆内座位(座)</span>
                                <span>{{
                                    baseInfo[1] && baseInfo[1].value
                                }}</span>
                            </div>
                        </div>
                        <div class="data-item">
                            <img
                                :src="require('@/assets/screenView/hushu.png')"
                            />
                            <div class="content">
                                <span>现有图书(册)</span>
                                <span>{{
                                    baseInfo[2] && baseInfo[2].value
                                }}</span>
                            </div>
                        </div>
                        <div class="data-item">
                            <img
                                :src="require('@/assets/screenView/renkou.png')"
                            />
                            <div class="content">
                                <span>馆藏图书(册)</span>
                                <span>{{
                                    baseInfo[3] && baseInfo[3].value
                                }}</span>
                            </div>
                        </div>
                    </div>
                </div>
                <div class="activity-info">
                    <div class="title-box-samll">
                        <span>活动信息</span>
                    </div>
                    <div class="content-info" id="barChart"></div>
                </div>
                <div class="hot-rank">
                    <div class="title-box-samll">
                        <span>热度排行</span>
                    </div>
                    <div class="content-info">
                        <vue-seamless-scroll
                            :data="rankList"
                            :class-option="rankOption"
                            style="width: 100%; height: 100%; overflow: hidden"
                        >
                            <div class="hot-scenic-info">
                                <div
                                    class="hot-scenic-item"
                                    v-for="(item, index) in rankList"
                                    :key="index"
                                >
                                    <div class="ranking">
                                        No.{{ index + 1 }}
                                    </div>
                                    <div class="scenicNmae">
                                        {{ item.label }}
                                    </div>
                                    <div class="numvote">{{ item.value }}</div>
                                </div>
                            </div>
                        </vue-seamless-scroll>
                    </div>
                </div>
            </div>
            <div class="center-box">
                <div class="video-box">
                    <common-live-player :video-url="videoUrl" :live="true" :muted="false"></common-live-player>
                    <div class="video-list" @click="changeVideo($event)">
                        <vue-seamless-scroll
                            :data="videoList"
                            :class-option="videoOption"
                            style="width: 100%; height: 100%; overflow: hidden"
                        >
                            <div class="list">
                                <div
                                    class="video-item"
                                    v-for="(item, index) in videoList"
                                    :key="index"
                                    :data-index="index"
                                >
                                    <img :src="item.coverImage" :data-index="index" />
                                    <div class="title" :data-index="index">{{ item.title }}</div>
                                </div>
                            </div>
                        </vue-seamless-scroll>
                    </div>
                </div>
                <div class="books">
                    <div class="title-box-medium" style="width: 860px;">
                        <span>图书推荐</span>
                    </div>
                    <div class="content-info" @click="openInfo($event, bookList)">
                        <vue-seamless-scroll
                            :data="bookList"
                            :class-option="bookOption"
                            style="width: 100%; height: 100%; overflow: hidden"
                        >
                            <div class="list">
                                <div
                                    class="book-item"
                                    v-for="(item, index) in bookList"
                                    :key="index"
                                    :data-index="index"
                                >
                                    <img :src="item.coverImage" :data-index="index" />
                                    <span class="title" :data-index="index">{{ item.title }}</span>
                                </div>
                            </div>
                        </vue-seamless-scroll>
                    </div>
                </div>
            </div>
            <div class="right-box">
                <div class="borrowing-info">
                    <div class="title-box-samll">
                        <span>借阅分析</span>
                    </div>
                    <div class="content-info">
                        <div class="data-item">
                            <img
                                :src="require('@/assets/screenView/xiaqu.png')"
                            />
                            <div class="content">
                                <span>今日读者(人)</span>
                                <span>{{
                                    borrowList[0] && borrowList[0].value
                                }}</span>
                            </div>
                        </div>
                        <div class="data-item">
                            <img
                                :src="require('@/assets/screenView/gendi.png')"
                            />
                            <div class="content">
                                <span>本月读者(人)</span>
                                <span>{{
                                    borrowList[1] && borrowList[1].value
                                }}</span>
                            </div>
                        </div>
                        <div class="data-item">
                            <img
                                :src="require('@/assets/screenView/hushu.png')"
                            />
                            <div class="content">
                                <span>本月借阅(本)</span>
                                <span>{{
                                    borrowList[2] && borrowList[2].value
                                }}</span>
                            </div>
                        </div>
                        <div class="data-item">
                            <img
                                :src="require('@/assets/screenView/renkou.png')"
                            />
                            <div class="content">
                                <span>本月归还(本)</span>
                                <span>{{
                                    borrowList[3] && borrowList[3].value
                                }}</span>
                            </div>
                        </div>
                    </div>
                </div>
                <div class="classify-info">
                    <div class="title-box-samll">
                        <span>图书分类</span>
                    </div>
                    <div class="content-info" id="lineChart"></div>
                </div>
                <div class="info-list">
                    <div class="title-box-samll">
                        <span>图书馆资讯</span>
                    </div>
                    <div class="content-info" @click="openInfo($event, queryContentInfoList)">
                        <vue-seamless-scroll
                            :data="queryContentInfoList"
                            :class-option="infoOption"
                            style="width: 100%; height: 100%; overflow: hidden"
                        >
                            <div class="list">
                                <div
                                    class="info-item"
                                    style="
                                        display: flex;
                                        overflow: hidden;
                                        gap: 15px;
                                        margin-bottom: 10px;
                                    "
                                    v-for="(
                                        item, index
                                    ) in queryContentInfoList"
                                    :key="index"
                                    :data-index="index"
                                >
                                    <img
                                        :src="item.coverImage"
                                        style="width: 50%; height: 120px"
                                        :data-index="index"
                                    />
                                    <div
                                        style="
                                            width: 50%;
                                            display: flex;
                                            flex-direction: column;
                                            justify-content: space-between;
                                        "
                                        :data-index="index"
                                    >
                                        <div
                                            style="font-size: 16px"
                                            class="title"
                                            :data-index="index"
                                        >
                                            {{ item.title }}
                                        </div>
                                        <div
                                            style="
                                                margin-top: 10px;
                                                font-size: 14px;
                                                color: #c1c1c1;
                                            "
                                            :data-index="index"
                                        >
                                            {{ item.createTime }}
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </vue-seamless-scroll>
                    </div>
                </div>
            </div>
        </div>
        <div class="page-bottom-bg"></div>
<div class="page-left-bg"></div>
<div class="page-right-bg"></div>
        <common-modal v-model="imgTextModal" @close="imgTextModal = false" :title="info.title" width="600">
            <modalDetail :current-activity="info" :imgTextModal="imgTextModal"></modalDetail>
        </common-modal>
    </div>
</template>

<script>
import { useIndex } from "../../utils/utilsDramAdmin";
import MainTitle from "./components/MainTitle.vue";
import { echartsFocus, echartsClear } from "@/utils/autoEcharts";
import * as echarts from "echarts";
import vueSeamlessScroll from "vue-seamless-scroll";
import CommonLivePlayer from "@/views/common-components/common-live-player.vue";
import commonModal from '@/views/common-components/common-modal.vue'
import modalDetail from './components/modalDetail.vue'

export default {
    name: "LibraryCenter",
    components: { MainTitle, vueSeamlessScroll, CommonLivePlayer, commonModal, modalDetail },
    data() {
        return {
            title: "翠屏区图书馆",
            areaCode: "2021030823390054",
            baseInfo: [],
            borrowList: [],
            rankList: [],
            rankOption: {
                step: 0.2, // 数值越大速度滚动越快
                limitMoveNum: 4, // 开始无缝滚动的数据量 this.dataList.length
                hoverStop: true, // 是否开启鼠标悬停stop
                direction: 1, // 0向下 1向上 2向左 3向右
                openWatch: true, // 开启数据实时监控刷新dom
                singleHeight: 0, // 单步运动停止的高度(默认值0是无缝不停止的滚动) direction => 0/1
                singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3
                waitTime: 1000, // 单步运动停止的时间(默认值1000ms)
            },
            videoList: [],
            videoOption: {
                step: 0.2, // 数值越大速度滚动越快
                limitMoveNum: 4, // 开始无缝滚动的数据量 this.dataList.length
                hoverStop: true, // 是否开启鼠标悬停stop
                direction: 2, // 0向下 1向上 2向左 3向右
                openWatch: true, // 开启数据实时监控刷新dom
                singleHeight: 0, // 单步运动停止的高度(默认值0是无缝不停止的滚动) direction => 0/1
                singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3
                waitTime: 1000, // 单步运动停止的时间(默认值1000ms)
            },
            bookList: [],
            bookOption: {
                step: 0.2, // 数值越大速度滚动越快
                limitMoveNum: 4, // 开始无缝滚动的数据量 this.dataList.length
                hoverStop: true, // 是否开启鼠标悬停stop
                direction: 2, // 0向下 1向上 2向左 3向右
                openWatch: true, // 开启数据实时监控刷新dom
                singleHeight: 0, // 单步运动停止的高度(默认值0是无缝不停止的滚动) direction => 0/1
                singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3
                waitTime: 1000, // 单步运动停止的时间(默认值1000ms)
            },

            queryContentInfoList: [],
            infoOption: {
                step: 0.2, // 数值越大速度滚动越快
                limitMoveNum: 4, // 开始无缝滚动的数据量 this.dataList.length
                hoverStop: true, // 是否开启鼠标悬停stop
                direction: 1, // 0向下 1向上 2向左 3向右
                openWatch: true, // 开启数据实时监控刷新dom
                singleHeight: 0, // 单步运动停止的高度(默认值0是无缝不停止的滚动) direction => 0/1
                singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3
                waitTime: 1000, // 单步运动停止的时间(默认值1000ms)
            },
            videoUrl: "",
            imgTextModal: false,
            info: {}
        };
    },
    computed: {},
    created() {},
    beforeDestroy() {
        echartsClear();
    },
    mounted() {
        const { calcRate, windowDraw } = useIndex(this.$refs.appRef);
        calcRate();
        windowDraw();
        this.queryContentInfo();
        this.queryVideo()
        // 基本概况
        this.initDataInfo("libarayBaseInfo", data => {
            this.baseInfo = data
        })
        // 活动信息
        this.initDataInfo("libarayActivity", data => {
            let xData = data.map(item => item.label)
            let yData = data.map(item => Number(item.value))
            this.initBarChart(xData, yData)
        })
        // 热度排行
        this.initDataInfo("libarayHotRank", data => {
            this.rankList = data
        })
        // 借阅分析
        this.initDataInfo("libarayPersonSpecial", data => {
            this.borrowList = data
        })
        // 图书分类
        this.initDataInfo("libarayclassify", data => {
            let xData = data.map(item => item.label)
            let yData = data.map(item => Number(item.value))
            this.initlineChart2(xData, yData)
        })
        // 图书推荐
        this.queryRecommend()
    },
    beforeDestroy() {},
    methods: {
        initBarChart(xData, yData) {
            let myChart = echarts.init(document.getElementById("barChart"));
            let option = {
                tooltip: {
                    trigger: "axis",
                    axisPointer: {
                        type: "cross",
                        label: {
                            backgroundColor: "#6a7985",
                        },
                    },
                },
                xAxis: {
                    type: "category",
                    axisLabel: {
                        margin: 10,
                        interval: 0,
                        color: "#ffffff",
                        textStyle: {
                            fontSize: 12,
                        },
                    },
                    data: xData,
                },
                yAxis: {
                    type: "value",
                    splitLine: {
                        show: true,
                        lineStyle: {
                            type: "dashed",
                            color: "#35414c",
                        },
                    },
                    axisLabel: {
                        color: "#ffffff",
                        textStyle: {
                            fontSize: 12,
                        },
                    },
                },
                grid: {
                    top: "10%",
                    bottom: "15%",
                    width: "87%",
                    height: "75%",
                },
                series: [
                    {
                        data: yData,
                        type: "bar",
                        barWidth: "16px",
                        itemStyle: {
                            color: new echarts.graphic.LinearGradient(
                                0,
                                1,
                                0,
                                0,
                                [
                                    {
                                        offset: 1,
                                        color: "#105071",
                                    },
                                    {
                                        offset: 0,
                                        color: "#1892c2",
                                    },
                                ]
                            ),
                        },
                    },
                ],
            };
            myChart.setOption(option);
            echartsFocus(myChart, xData.length);
        },
        initlineChart2(xData, yData) {
            let myChart = echarts.init(document.getElementById("lineChart"));
            let num = 0;
            yData.forEach((item) => {
                num = num + Number(item);
            });
            let img =
                "data:image/png;base64,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";
            let data = [];
            for (let i = 0; i < yData.length; i++) {
                data.push({
                    value: yData[i],
                    name: xData[i],
                    itemStyle: {
                        normal: {
                            borderWidth: 1,
                            shadowBlur: 20,
                        },
                    },
                });
            }
            var seriesOption = [
                {
                    name: "",
                    type: "pie",
                    clockWise: false,
                    center: ["21%", "50%"],
                    radius: [70, 84],
                    hoverAnimation: false,
                    itemStyle: {
                        normal: {
                            label: {
                                show: false,
                                position: "outside",
                                color: "#ddd",
                                formatter: function (params) {
                                    var percent = 0;
                                    var total = 0;
                                    for (var i = 0; i < yData.length; i++) {
                                        total += yData[i];
                                    }
                                    percent = (
                                        (params.value / total) *
                                        100
                                    ).toFixed(0);
                                    if (params.name !== "") {
                                        return (
                                            params.name +
                                            "\n" +
                                            "\n" +
                                            "占百分比：" +
                                            percent +
                                            "%"
                                        );
                                    } else {
                                        return "";
                                    }
                                },
                            },
                            labelLine: {
                                length: 30,
                                length2: 100,
                                show: true,
                                color: "#00ffff",
                            },
                        },
                    },
                    data: data,
                },
            ];
            let option = {
                title: [
                    {
                        text: "{name|" + num + "本" + "}",
                        top: "center",
                        left: "10%",
                        textStyle: {
                            rich: {
                                name: {
                                    fontSize: 18,
                                    fontWeight: "bold",
                                    color: "#fff",
                                    padding: [0, 0, 0, 0],
                                },
                                val: {
                                    fontSize: 14,
                                    fontWeight: "bold",
                                    color: "#fff",
                                    padding: [0, 0, 5, 0],
                                },
                            },
                        },
                    },
                ],
                graphic: {
                    elements: [
                        {
                            type: "image",
                            z: 3,
                            style: {
                                image: img,
                                width: 110,
                                height: 110,
                            },
                            left: "8%",
                            top: "center",
                            position: [100, 100],
                        },
                    ],
                },
                tooltip: {
                    show: true,
                },
                legend: {
                    show: true,
                    data: xData,
                    left: "50%",
                    width: "50%",
                    icon: "circle",
                    itemHeight: "12",
                    textStyle: {
                        color: "#FFF",
                        fontSize: "10px",
                    },
                },
                toolbox: {
                    show: false,
                },
                series: seriesOption,
            };
            myChart.setOption(option);
            echartsFocus(myChart, xData.length);
        },
        queryContentInfo() {
            this.$http
                .post(
                    "/content/queryContentInfo",
                    this.common.request({
                        areaCode: "",
                        hasParent: "0",
                        page: 1,
                        typeCode: "TSGINFO",
                        pageSize: 10,
                    })
                )
                .then((res) => {
                    if (res.data.code === 200) {
                        this.queryContentInfoList = res.data.data.records;
                    }
                });
        },
        queryRecommend() {
            this.$http
                .post(
                    "/content/queryContentInfo",
                    this.common.request({
                        areaCode: "",
                        hasParent: "0",
                        page: 1,
                        typeCode: "RECOMMEND",
                        pageSize: 10,
                    })
                )
                .then((res) => {
                    if (res.data.code === 200) {
                        this.bookList = res.data.data.records;
                    }
                });
        },
        // 获取数据
        initDataInfo(type, callback) {
            let params = {
                page: 1,
                pageSize: 100,
                areaCode: this.areaCode,
                type,
            };
            this.$http
                .post("screen/getScreenSurveyPage", this.common.request(params))
                .then((res) => {
                    if (res.data.code === 200) {
                        let data = res.data.data.records;
                        callback(data);
                    }
                });
        },
        // 查询视频
        queryVideo() {
            this.$http.post("/screen/getScreenVideoList", this.common.request({ areaCode: this.areaCode, type: "libaray", state: "0" }))
                .then(res => {
                    if (res.data.code === 200) {
                        this.videoList = res.data.data.length && res.data.data
                        this.videoUrl = this.videoList[0].urlList
                    }
                })
        },
        // 切换视频
        changeVideo(e){
            let index = e.target.dataset.index
            let data = this.videoList[index]
            this.videoUrl = data.urlList
        },
        // 打开资讯
        openInfo(e, list){
            let index = e.target.dataset.index
            let data = list[index]
            if (data.contentType == "3") {
                this.common.openWindow(data);
            } else {
                this.info = data
                this.imgTextModal = true
            }
        }
    },
};
</script>

<style lang="less" scoped>
@import "../../styles/pbStyle.less";
.eb-container {
    width: 1920px;
    height: 1080px;
    transform: scale(var(--scale)) translate(-50%, -50%);
    transform-origin: 0 0;
    position: absolute;
    left: 50%;
    top: 50%;
    background-image: url("../../assets/largeScreen/page-bg.png");
    background-size: 100%;

    .main-container {
        width: 1804px;
        height: 920px;
        position: absolute;
        top: 100px;
        left: 50%;
        transform: translateX(-50%);
        display: flex;
        justify-content: space-between;

        .left-box {
            width: 458px;
            height: 100%;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            .base-info {
                width: 100%;
                height: 250px;
                .content-info {
                    .content-pub-style(100%, calc(100% - 44px));
                    padding: 20px;
                    display: grid;
                    grid-template-columns: 50% 50%;
                    grid-template-rows: 50% 50%;
                    .data-item {
                        // width: 188px;
                        // height: 53px;
                        // margin-bottom: 20px;
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        img {
                            width: 60px;
                            height: 60px;
                        }

                        .content {
                            width: 130px;
                            height: 53px;
                            display: flex;
                            flex-direction: column;
                            justify-content: space-between;
                            margin-left: 10px;

                            span:nth-child(1) {
                                font-family: "PingFang SC";
                                font-size: 16px;
                                font-weight: 400;
                                color: #ffffff;
                                text-align: left;
                            }

                            span:nth-child(2) {
                                font-family: "DIN";
                                font-size: 28px;
                                font-weight: 400;
                                color: #ffffff;
                                text-align: left;
                            }
                        }
                    }
                }
            }
            .activity-info {
                width: 100%;
                height: 300px;
                .content-info {
                    .content-pub-style(100%, calc(100% - 44px));
                }
            }
            .hot-rank {
                width: 100%;
                height: 350px;
                .content-info {
                    .content-pub-style(100%, calc(100% - 44px));
                    .hot-scenic-info {
                        width: 100%;
                        display: flex;
                        flex-direction: column;
                        align-items: center;

                        .hot-scenic-item {
                            display: flex;
                            align-items: center;
                            width: 430px;
                            height: 34px;
                            margin-bottom: 10px;
                            background-image: url("../../assets/screenView/hot.png");
                            background-size: 100%;
                            justify-content: space-between;
                            position: relative;

                            .ranking {
                                width: 93px;
                                height: 34px;
                                font-family: "YouSheBiaoTiHei";
                                font-size: 18px;
                                text-align: center;
                                color: #c3d4ea;

                                background-image: url("../../assets/screenView/NoDefault.png");
                                background-size: 100% 100%;
                            }

                            .scenicNmae {
                                font-family: "YouSheBiaoTiHei";
                                font-size: 16px;
                                font-weight: 400;
                                color: #ffffff;
                                width: 60%;
                                height: 100%;
                                display: flex;
                                justify-content: center;
                                align-items: center;
                                overflow: hidden;
                                white-space: nowrap;
                                text-overflow: ellipsis;
                                position: absolute;
                                left: 100px;
                            }

                            .numvote {
                                font-family: "Furore";
                                font-size: 16px;
                                font-weight: 400;
                                text-align: right;
                                color: #ffffff;
                                padding-right: 15px;
                            }
                        }

                        .hot-scenic-item:nth-child(1) .ranking {
                            width: 93px;
                            height: 34px;
                            background-image: url("../../assets/screenView/No1.png");
                            background-size: 100% 100%;
                        }

                        .hot-scenic-item:nth-child(2) .ranking {
                            width: 93px;
                            height: 34px;
                            background-image: url("../../assets/screenView/No2.png");
                            background-size: 100% 100%;
                        }

                        .hot-scenic-item:nth-child(3) .ranking {
                            width: 93px;
                            height: 34px;
                            background-image: url("../../assets/screenView/No3.png");
                            background-size: 100% 100%;
                        }
                    }
                }
            }
        }
        .center-box {
            width: 860px;
            height: 100%;
            display: flex;
            flex-direction: column;
            justify-content: space-between;

            .video-box {
                width: 100%;
                height: 650px;
                display: flex;
                flex-direction: column;
                justify-content: space-between;

                .video-list {
                    width: 100%;
                    height: 150px;

                    .list {
                        height: 100%;
                        display: flex;

                        .video-item {
                            width: 260px;
                            height: 100%;
                            margin-right: 10px;
                            position: relative;

                            img {
                                width: 100%;
                                height: 150px;
                                border-radius: 8px;
                            }
                            .title {
                                position: absolute;
                                left: 0;
                                bottom: 5px;
                                width: 100%;
                                height: 30px;
                                border-radius: 0 0 8px 8px;
                                background-color: rgba(0, 0, 0, 0.2);
                                display: flex;
                                justify-content: center;
                                align-items: center;
                                color: #fff;
                                font-size: 14px;
                            }
                        }
                    }
                }
            }

            .books {
                width: 100%;
                height: 250px;
                display: flex;
                flex-direction: column;
                justify-content: space-between;
                .content-info {
                    .content-pub-style(100%, calc(100% - 50px));
                    background: unset;
                    .list {
                        height: 100%;
                        display: flex;

                        .book-item {
                            width: 116px;
                            height: 100%;
                            margin-right: 10px;
                            display: flex;
                            flex-direction: column;

                            img {
                                width: 100%;
                                height: 180px;
                                border-radius: 4px;
                            }
                            .title {
                                width: 100%;
                                height: 20px;
                                display: flex;
                                justify-content: center;
                                align-items: center;
                                color: #fff;
                                font-size: 14px;
                                overflow: hidden;
                                white-space: nowrap;
                                text-overflow: ellipsis;
                            }
                        }
                    }
                }
            }
        }
        .right-box {
            width: 458px;
            height: 100%;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            .borrowing-info {
                width: 100%;
                height: 250px;
                .content-info {
                    .content-pub-style(100%, calc(100% - 44px));
                    padding: 20px;
                    display: grid;
                    grid-template-columns: 50% 50%;
                    grid-template-rows: 50% 50%;
                    .data-item {
                        // width: 188px;
                        // height: 53px;
                        // margin-bottom: 20px;
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        img {
                            width: 60px;
                            height: 60px;
                        }

                        .content {
                            width: 130px;
                            height: 53px;
                            display: flex;
                            flex-direction: column;
                            justify-content: space-between;
                            margin-left: 10px;

                            span:nth-child(1) {
                                font-family: "PingFang SC";
                                font-size: 16px;
                                font-weight: 400;
                                color: #ffffff;
                                text-align: left;
                            }

                            span:nth-child(2) {
                                font-family: "DIN";
                                font-size: 28px;
                                font-weight: 400;
                                color: #ffffff;
                                text-align: left;
                            }
                        }
                    }
                }
            }
            .classify-info {
                width: 100%;
                height: 300px;
                .content-info {
                    .content-pub-style(100%, calc(100% - 44px));
                    padding: 10px;
                }
            }
            .info-list {
                width: 100%;
                height: 350px;
                .content-info {
                    .content-pub-style(100%, calc(100% - 44px));
                    padding: 10px;
                    color: #ffffff;
                    .list {
                        width: 100%;
                        display: flex;
                        flex-direction: column;
                        align-items: center;

                        .info-item {
                            width: 100%;
                            height: 120px;
                            position: relative;
                            margin-right: 20px;

                            .title {
                                display: -webkit-box; /* 必须结合的属性 ，将对象作为弹性伸缩盒子模型显示 。*/
                                -webkit-box-orient: vertical; /* 必须结合的属性 ，设置或检索伸缩盒对象的子元素的排列方式 。*/
                                text-overflow: ellipsis; /* 可以用来多行文本的情况下，用省略号“…”隐藏超出范围的文本 。*/
                                -webkit-line-clamp: 2;
                                overflow: hidden;
                            }
                        }
                    }
                }
            }
        }
    }
}
</style>
