<template>
	<div style="width: 100%;">
		<!-- Swiper 容器 -->
		<div class="group_666" style="position: relative;min-height: 450px;">
			<swiper class="swiper-container h-full" @swiper="onSwiperNews" v-bind="swiperOptionsNews">
				<swiper-slide>
					<img :src="`${cdnUrl}/img/societyduty/shehui.png`" style="width: 100%;height: 100%;object-fit: cover;">
				</swiper-slide>
				<swiper-slide>
					<img :src="`${cdnUrl}/img/societyduty/shehui.png`" style="width: 100%;height: 100%;object-fit: cover;">
				</swiper-slide>
			</swiper>
		</div>
		<div class="box_11 flex-col bottom_imgss">
			<!-- <div class="text-wrapper_10">
				<span class="text_41">公司荣誉</span>
			</div>
			<div class="text-wrapper_11">
				<span class="text_42">Company&nbsp;Honors&nbsp;</span>
			</div> -->
			<div class="group_14 flex-row justify-between align-center" style="flex-wrap: wrap;width: 1200px;padding-top: 30px;">
				<div class="flex-row">
					<div class="text_25">
						<span>
							<NuxtLink to="/societyDutyNew/">
								公司动态
							</NuxtLink>
						</span>
					</div>
					<div class="text_25">
						<span style="color: rgb(252, 116, 40);">活动影集（部分）</span>
						<div
							style="left: 20px;width: 100%;height: 1px;background-color: #fc7428;position: absolute;bottom: -21px;">
						</div>
					</div>
					
				</div>
				<div class="group_15" style="flex: 0 0 100%;"></div>
			</div>
			
			<div class="boxgs flex-row flex-wrap">

				<div class="box_con flex-col" v-for="(item,index) in newsList" :key="index">
					<div class="align-center"  style="justify-content: center;">
						<img width="277px" height="189px" :src="item.image" alt="">
					</div>
					<div class="flex-col" style="justify-content: center;margin-top: 5px;">
						<span class="text_tt">
							{{item.name}}
						</span>
						<!-- <span class="text_cc">
							{{item.value}}
						</span> -->
					</div>
				</div>	
			</div>	
		</div>
		<div class="flex flex-row justify-center py-5" style="background-color: #F8F8F8;padding-bottom: 40px;">
			<n-pagination v-model:page="page" :page-sizes="[10]" :item-count="total" size="large"
				@update:page="getPageList">
			</n-pagination>
		</div>
		
	</div>
</template>

<script lang="ts" setup>
import { NPagination } from 'naive-ui'
import { Swiper, SwiperSlide } from 'swiper/vue'
import { nextTick, ref } from 'vue'
import 'swiper/css'
import { Autoplay, Navigation, Pagination, Scrollbar, A11y, EffectCoverflow,EffectFade } from "swiper/modules";
import ScrollReveal from 'scrollreveal';
import { NNumberAnimation } from 'naive-ui'
let modules = [Autoplay, A11y, EffectCoverflow,EffectFade];

import "swiper/css";
import "swiper/css/navigation";
import "swiper/css/pagination";
import 'swiper/css/effect-coverflow';
import 'swiper/css/mousewheel'
import 'swiper/css/grid'
import 'swiper/css/effect-fade'
import 'swiper/css/autoplay'
import * as swiperAni from '@/assets/animate/animate.js'
import $api from '@/service/webRequest'
import { useI18n } from 'vue-i18n'
import { useStore } from '~/store'
const { locale } = useI18n()
const cdnUrl = useCdn()
let newsSwiper: any = null
const onSwiperNews = (swiper: any) => {
	newsSwiper = swiper
}
const swiperOptionsNews = {
	autoplay: {
		delay: 5000,
		disableOnInteraction: false,
	},
	direction: 'horizontal',
	slidesPerView: 1,
	speed: 500,
	effect: 'fade',
	loop: true,
	modules: [EffectFade,Autoplay,Navigation],
	navigation: {
		nextEl: '#swipen_prev',
		prevEl: '#swipen_next',
	},
}

// 新闻数据
onMounted(() => {
	const coMobile = /Mobi|Android|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
	if (coMobile) {
		window.location.href="/web/phone_societyDuty/";
	}
	getIndexNews();
	nextTick(() => {
		animate()
	})
})
const page = ref(1);
const total = ref(0);
const getPageList = async () => {
	page.value = page.value + 1;
	getIndexNews();
}

const newsList = ref([])
const getIndexNews = () => {
	$api.get(`/api/home.news/images?page=${page.value}limit=12`)
		.then((res: any) => {
			console.log(res)
			newsList.value = res.data.data.list
		})
		.catch((err) => {
			console.dir(err)
		})
}
const numberAnimationInstRef = ref()
const numberAnimationInstRefKH = ref()
const numberAnimationInstRefJS = ref()
const numberAnimationInstRefHY = ref()
const animate = () => {

	const sr = ScrollReveal();
	sr.reveal('.leftBox', {
		origin: "left",
		distance: "1000px",
		duration: 1300,
		delay: 100,
		opacity: 0,
		scale: 0.9,
		reset: true,
		mobile: true,
	})
	sr.reveal('.rightBox', {
		origin: "right",
		distance: "1000px",
		duration: 1300,
		delay: 100,
		opacity: 0,
		scale: 0.9,
		reset: true,
		mobile: true,
	})
	sr.reveal('.topBox', {
		origin: "top",
		distance: "1000px",
		duration: 1300,
		delay: 100,
		opacity: 0,
		scale: 0.9,
		reset: true,
		mobile: true,
	})
	sr.reveal('.bottomBox', {
		origin: "bottom",
		distance: "1000px",
		duration: 1300,
		delay: 100,
		opacity: 0,
		scale: 0.9,
		reset: true,
		mobile: true,
	})
	sr.reveal('.numberTopBox', {
		origin: "top",
		distance: "1000px",
		duration: 1300,
		delay: 100,
		opacity: 0,
		scale: 0.9,
		reset: true,
		mobile: true,
		beforeReveal: function (el: any) {
			numberAnimationInstRef.value.play()
			numberAnimationInstRefKH.value.play()
			numberAnimationInstRefJS.value.play()
			numberAnimationInstRefHY.value.play()
		},
	})
	sr.reveal('.topSj', {
		origin: "bottom",
		distance: "1000px",
		duration: 1300,
		delay: 5,
		opacity: 0,
		scale: 0.9,
		reset: true,
		mobile: true,
		useDelay: 'always',
		interval: 50,
	})
}
</script>

<style lang="scss" scoped>
@import "@/assets/animate/animate.min.css";
@import "@/assets/index.scss";
::v-deep .n-pagination .n-pagination-item:not(.n-pagination-item--disabled).n-pagination-item--active {
	color: #ffffff;
	background-color: #FC7428;
	border: 1px solid #FC7428;
}

::v-deep .n-pagination .n-pagination-item:not(.n-pagination-item--disabled):hover.n-pagination-item--button {
	color: #FC7428;
}

::v-deep .n-pagination .n-pagination-item:not(.n-pagination-item--disabled):hover {
	color: #FC7428;
	border: 1px solid #FC7428;
}

::v-deep .n-pagination .n-pagination-item {
	border: 1px solid #999999;
}



.group_666 .swiper-slide img {
  width: 100%;
  height: 500px;
  height: auto;
  transition: 1s linear 2s;
  transform: scale(1.1, 1.1);
}

.group_666 .swiper-slide-active img,
.swiper-slide-duplicate-active img {
  transition: 6s linear;
  transform: scale(1, 1);
}
.bottom_imgss{
	// background: url(/public/img/customer/bg-s.png);
	background: #F8F8F8;
    height: 100%;
    // background-size: 100%;
}
.boxgs{
    width: 1200px;
    margin: 0 auto;
	margin-top: 30px;
	padding-top: 20px;
	.box_con{
		margin:10px;
		background-color: #ffffff;
		width: 277px;
		height: 276px;
		font-family: Microsoft YaHei UI-Regular;
		border-radius:4px;
		.text_tt{
			display: inline-block;
			width: 100%;
			margin-top: 15px;
			color: #3D3D3D ;
			font-size: 16px;
			font-weight: 500;
			text-align: center;
			padding: 0 25px 20px 25px;
		}
		.text_cc{
			display: inline-block;
			width: 100%;
			height: 30px;
			overflow-wrap: break-word;
			color: #999999 ;
			font-size: 14px;
			font-weight: 400;
			text-align: center;
			line-height: 30px;
		}
	}
}
</style>
