<template>
    <HomePageHead></HomePageHead>
    <HomePageNavigation></HomePageNavigation>
    <HomeAdvertising :imgurl="adImg1"></HomeAdvertising>
    <!-- 商品列表 goods-->
    <main class="index_main">
        <section class="index_1 clearfix">
            <div class="shop_head_1 clearfix">
                <div class="shop_head_1_name">
                    <NuxtLink :to="`/${targetSegment}/index.html`"> {{ parent_name }}</NuxtLink>
                </div>
            </div>
            <div class="shop_nav_2">
                <a class="shop_nav_2_a" :href="`/${targetSegment}/${item.aLIas_pinyin}/list-1.html`" title=""
                    v-for="(item, index) in secondNav" :key="index">{{ item.alias }}</a>
            </div>
        </section>
        <!-- 地区选择 -->
        <GoodsSubMenu1></GoodsSubMenu1>
        <!-- 三农市场网-商城-商品列表 1-->
        <section class="">
            <div class="breadcrumb">
                <div class="inner">
                    <span class="location">当前位置 :</span>
                    <el-breadcrumb :separator-icon="ArrowRight">
                        <el-breadcrumb-item>
                            <NuxtLink to="/">首页</NuxtLink>
                        </el-breadcrumb-item>
                        <el-breadcrumb-item v-if="parent_name != ''">
                            <NuxtLink :to="`/${targetSegment}/index.html`"> {{ parent_name }}</NuxtLink>
                        </el-breadcrumb-item>
                        <el-breadcrumb-item>{{ navTitle }}</el-breadcrumb-item>
                    </el-breadcrumb>
                </div>
            </div>
            <!-- 商品列表 -->
            <div class="categ_table clearfix">
                <div class="categ_table_head_box">
                    <div class="categ_table_td_1">产品图片</div>
                    <div class="categ_table_td_2">供求信息/公司</div>
                    <div class="categ_table_td_3">发布时间</div>
                    <div class="categ_table_td_4">地区</div>
                </div>
                <div class="categ_table_li" v-for="(item, index) in goodsList" :key="index">
                    <a class="categ_table_li_a" :href="`/${item.pinyin}/${item.id}.html`" title="">
                        <div class="categ_table_td_1">
                            <img class="categ_table_td_1_img" :src="item.imgurl" title="" alt="">
                        </div>
                        <div class="categ_table_td_2 ">
                            <div class="categ_table_td_2_in">
                                <div class="categ_table_td_2_dot1 dot1">
                                    {{ item.name }}
                                </div>
                                <div class="categ_table_td_2_dot2 dot2">
                                    {{ item.description }}
                                </div>
                            </div>
                        </div>
                        <div class="categ_table_td_3">{{ getTime(item.updated_at, 'year', 1) }}</div>
                        <div class="categ_table_td_4 dot1">{{ item.city_name }}</div>
                    </a>
                </div>
                <div class="empty" v-if="goodsList == false">
                    <img src="@/public/topic/empty.png" alt="" class="empty_img">
                    <span class="empty_text">当前暂无数据</span>
                </div>
            </div>
            <div class="pagination1" v-if="goodstotal > 0">
                <el-pagination background layout="prev, pager, next" :total="goodstotal" :page-size="pageSize_goods"
                    prev-text="上一页" next-text="下一页" />
            </div>
        </section>
        <!-- 三农市场网-商城-商品列表 2-->
    </main>
    <HomeAdvertising :imgurl="adImg2"></HomeAdvertising>
    <HomeFoot></HomeFoot>
</template>

<script setup>
//0.加载页面依赖 start ---------------------------------------->
import { ref, onMounted } from 'vue';
import { ElMessage, ElBreadcrumb, ElBreadcrumbItem, ElPagination } from 'element-plus';
import { ArrowRight } from '@element-plus/icons-vue'
import { NuxtLink } from '#components';
//0.加载页面依赖 end ---------------------------------------->

//1.获得路由id start ---------------------------------------->
const targetSegment = getRoutePath(1);
const targetSegment1 = getRoutePath(2);
const route = useRoute();
let cityid = route.query.cityid;
let cityId = ref(0)
cityId.value = parseFloat(cityid)

//1.1 获得当前的路由id
let routeId;
let routeType;
let navTitle = ref('')//二级导航标题
let navCid = ref('')//二级导航id
//通过导航路径反向查询导航id
const getRouteId = await requestDataPromise('/web/getWebsiteRoute', {
    method: 'GET',
    query: {
        'pinyin': targetSegment1,
    },
});
console.log("getRouteId", getRouteId);

if (getRouteId.code == 200) {
    navTitle.value = getRouteId.data.alias
    navCid.value = getRouteId.data.category_id
} else {
    console.log("获得路由id出错！", getRouteId.message)
}
//1.2 获取父级栏目
let parent_name = ref('');//父级名称
let parent_id = ref('');//父级id
let parent_pinyin = ref('');//父级拼音
const getRoutePName = await requestDataPromise('/web/getWebsiteRoute', {
    method: 'GET',
    query: {
        'pinyin': targetSegment,
    },
});
console.log("getRoutePName", getRoutePName);

if (getRoutePName.code == 200) {
    routeId = getRoutePName.data.category_id
    parent_id.value = getRoutePName.data.category_id
    parent_name.value = getRoutePName.data.alias
    routeType = getRoutePName.data.type
} else {
    console.log("获得路由id出错！", getRoutePName.message)
}
//1.3 获取某个栏目
const getParentId = await requestDataPromise('/web/getOneWebsiteCategory', {
    method: 'GET',
    query: {
        'catid': parent_id.value,
    },
});
console.log("getParentId", getParentId);

if (getParentId.code == 200) {
    parent_pinyin.value = getParentId.data.aLIas_pinyin
} else {
    console.log("获得路由id出错！", getParentId.message)
}
//1.获得路由id end ---------------------------------------->

//2.选项卡 start ---------------------------------------->
let showTabs = ref(1)
let qhtabs = function (number) {
    console.log(number)
    showTabs.value = number
}
//2.选项卡 end ---------------------------------------->

//3.广告 start ---------------------------------------->
let adImg1 = ref({})
let adImg2 = ref({})
onMounted(async () => {
    //从客户端获取行政职能部门 加快打开速度
    const { $webUrl, $CwebUrl } = useNuxtApp();
    //广告1
    let url = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nzgxw_list_0001`
    const responseAd1 = await fetch(url, {
        headers: {
            'Content-Type': 'application/json',
            'Userurl': $CwebUrl,
            'Origin': $CwebUrl
        }
    });
    const resultAd1 = await responseAd1.json();
    adImg1.value = resultAd1.data[0];

    //广告2
    let url2 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nzgxw_list_0002`
    const responseAd2 = await fetch(url2, {
        headers: {
            'Content-Type': 'application/json',
            'Userurl': $CwebUrl,
            'Origin': $CwebUrl
        }
    });
    const resultAd2 = await responseAd2.json();
    adImg2.value = resultAd2.data[0];
})
//3.广告 end ---------------------------------------->

//4.页面数据 start ---------------------------------------->
const secondNav = ref([]);
let getSecondNav = async () => {
    const listData = await requestDataPromise('/web/getWebsiteModelCategory', {
        method: 'GET',
        query: {
            'placeid': 1,
            'pid': parent_id.value,
            'num': 20,
            'type': 1
        },
    });
    console.log('listData', listData);

    if (listData.code == 200) {
        secondNav.value = listData.data;
    } else {
        console.log("错误位置：获取二级栏目列表")
    }
}
getSecondNav()

// 获取商品数据列表 start--------------------------------------->
const goodsList = ref()
const page_goods = ref(1)
const pageSize_goods = ref(20)
const goodstotal = ref()

let getshop = async () => {
    let params = {
        'catid': navCid.value,
        'city_id': cityId.value,
        'page': page_goods.value,
        'pageSize': pageSize_goods.value,
        'ismix': 1
    }
    if (cityId.value == undefined || cityId.value == '' || cityId.value == 'NaN') {
        //删除变量params中的city_id参数
        delete params.city_id
    } else {
        params.city_id = parseFloat(cityId.value)
    }

    const getGoodsList = await requestDataPromise('/web/getWebsiteshopList', {
        method: 'GET',
        query: params
    });
    console.log("获取数据列表goods", getGoodsList);

    if (getGoodsList.code == 200) {
        goodsList.value = getGoodsList.data.goods
        goodstotal.value = getGoodsList.data.count
    }
}

let getshop1 = async () => {
    let params = {
        'catid': navCid.value,
        'page': page_goods.value,
        'pageSize': pageSize_goods.value,
        'ismix': 1
    }

    const getGoodsList = await requestDataPromise('/web/getWebsiteshopList', {
        method: 'GET',
        query: params
    });
    // console.log("获取数据列表goods", getGoodsList);

    if (getGoodsList.code == 200) {
        goodsList.value = getGoodsList.data.goods
        goodstotal.value = getGoodsList.data.count
    }

}
// getshop1()
//4.4.1 监听cityid
watch(() => route.query.cityid, (newVal, oldVal) => {
    if (newVal != undefined) {
        cityId.value = parseFloat(newVal)
        getshop()
    } else {
        getshop1()
    }
}, {
    deep: true,
    immediate: true
})


// 获取商品数据 end----------------------------------------->

//4.页面数据 end ---------------------------------------->

//5.设置seo信息 start---------------------------------------->
const setData = await requestDataPromise('/web/getWebsiteCategoryHead', {
    method: 'GET',
    query: {
        'catid': routeId
    },
});

if (setData.code == 200) {
    let seoTitle = setData.data.seo_title;
    let seoDescription = setData.data.seo_description;
    let seoKeywords = setData.data.seo_keywords;
    let seoSuffix = setData.data.suffix;
    let seoName = setData.data.website_name;

    useSeoMeta({
        title: seoTitle + "_" + seoSuffix,
        meta: [
            { name: 'keywords', content: seoKeywords + "_" + seoName + "_" + seoSuffix, tagPriority: 10 },
            { name: 'description', content: seoDescription + "_" + seoName + "_" + seoSuffix, tagPriority: 10 }
        ]
    });
} else {
    console.log("设置频道页SEO出错！", setData.message)
}
//5.设置seo信息 end---------------------------------------->
</script>
<style lang="less" scoped>
@import url("@/assets/css/shop/goodsList.less");

.empty {
    width: 100%;
    height: 300px;
    line-height: 300px;
    text-align: center;
}

.empty_img {
    vertical-align: -30px;
    margin-right: 20px;
}

.empty_text {
    font-size: 26px;
    color: #999;
}

.pagination {
    height: 100px;
    margin-top: 20px;
}

.pagination1 {
    height: 100px;
    margin-top: 20px;
}
</style>