| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274 | import {    ApiModel} from "../../utils/api";const _Http = new ApiModel();const handleList = require("../../utils/processingData")Page({    /**     * 页面的初始数据     */    data: {        //轮播图列表        swiperBannerList: [],        liveList: [], //云展会直播大厅        showLiveList: [], //显示直播列表        liveClassifyList: [], //直播分类        liveSelectClassify: '全部', //直播分类选择        agentList: [], //热门展商        showAgentList: [], //显示热门展商        agentClassifyList: [], //热门展商分类        agentSelectClassify: '全部', //展商分类选择        prodList: [], //热门展品        fagentcount: null, //展示商        flivecount: null, //正在直播        ftotalcustcount: null, //观众总数        showDownIndex: -1, //显示下拉下标    },    /**     * 生命周期函数--监听页面加载     */    onLoad: function (options) {        let data = {            "classname": "publicmethod.live.live",            "method": "getLiveChannelData",            "content": {                "tactivityid": options.id,                "siteid": "BWJ"            }        }        /* 云展会直播大厅 */        _Http.basic(data).then(res => {            console.log(res)            if (res.msg != "成功") {                wx.showToast({                    title: '直播大厅加载失败,请重新进入页面',                    icon: "none",                    duration: 5000                })            } else {                let data = JSON.parse(JSON.stringify(res.data.tlivelist));                const ClassifyList = this.setClassifyList(data);                const liveList = handleList.twoDimensionalArr(data, 4, 10);                this.setData({                    liveList: res.data.tlivelist,                    showLiveList: liveList,                    liveClassifyList: ClassifyList,                    fagentcount: res.data.fagentcount,                    flivecount: res.data.flivecount,                    ftotalcustcount: res.data.ftotalcustcount                })            }        });        /* 热门展商 */        data.method = "agentList";        _Http.basic(data).then(res => {            if (res.msg != "成功") {                wx.showToast({                    title: '热门展商加载失败,请重新进入页面',                    icon: "error",                    duration: 5000                })            } else {                data = JSON.parse(JSON.stringify(res.data));                const classifyList = this.setClassifyList(data);                const list = handleList.imageType(data, "brandcover");                const List = handleList.twoDimensionalArr(list, 4, 10);                this.setData({                    agentList: res.data,                    showAgentList: List,                    agentClassifyList: classifyList                })            }        });        /* 热门展品 */        data.method = "prodList";        _Http.basic(data).then(res => {            if (res.msg != "成功") {                wx.showToast({                    title: '热门展品加载失败,请重新进入页面',                    icon: "error",                    duration: 5000                })            } else {                const prodList = handleList.twoDimensionalArr(res.data, 6, 10);                this.setData({                    prodList,                })            }        });        /* 获取轮播图 */        const bannerList = wx.getStorageSync('bannerDataList').filter(value => value.flocation == 'activity_head');        this.setData({            swiperBannerList: bannerList[0].banner        });    },    /* 分类 */    setClassifyList(data) {        let List = [];        for (let i = 0; i < data.length; i++) {            const cur = data[i].flocationclass            if (cur != null && cur != undefined && cur != '' && cur != [] && cur != {}) List.push(cur)        };        let arr = List.reduce((pre, cur) => {            if (!pre.includes(cur)) {                return pre.concat(cur)            } else {                return pre            }        }, [])        arr.unshift('全部');        return arr    },    /* 直播大厅搜索 */    searchBlur(e) {        const {            value        } = e.detail;        const va = value.trim();        let data = JSON.parse(JSON.stringify(this.data.liveList));        if (this.data.liveSelectClassify == '全部') {            if (va == '') {                this.setData({                    showLiveList: handleList.twoDimensionalArr(data, 4, 10)                })            } else {                let arrList = data.filter(item => {                    let arr = [];                    for (let i in item) {                        if (item[i] != null || item[i] != undefined) arr.push(item[i])                    }                    if (arr.includes(va)) {                        return item                    }                });                this.setData({                    showLiveList: handleList.twoDimensionalArr(arrList, 4, 10)                })            }        } else {            let cList = data.filter(item => item.flocationclass == this.data.liveSelectClassify),                list = cList;            if (va != '') {                list = cList.filter(item => {                    let arr = [];                    for (let i in item) {                        if (item[i] != null || item[i] != undefined) arr.push(item[i])                    }                    if (arr.includes(va)) {                        return item                    }                })            }            this.setData({                showLiveList: handleList.twoDimensionalArr(list, 4, 10)            })        }    },    /* 显示下拉 */    showPullDown(e) {        const {            index        } = e.target.dataset;        if (this.data.showDownIndex == index) return this.setData({            showDownIndex: -1        });        this.setData({            showDownIndex: index        })    },    /* 关闭 */    closeTheDropDown() {        this.setData({            showDownIndex: -1        })    },    /* 选择分类 */    modeSelect(e) {        const {            name,            index        } = e.target.dataset;        if (this.data.showDownIndex == 1) {            let list = JSON.parse(JSON.stringify(this.data.liveList));            if (name == '全部') {                var List = list;            } else {                var List = list.filter(value => value.flocationclass == name);            };            var liveList = handleList.twoDimensionalArr(List, 4, 10);            //直播大厅            this.setData({                showDownIndex: -1,                liveSelectClassify: name,                showLiveList: liveList            });        } else {            //热门展商            let list = JSON.parse(JSON.stringify(this.data.agentList));            if (name == '全部') {                var List = list;            } else {                var List = list.filter(value => value.flocationclass == name);            };            var agentList = handleList.twoDimensionalArr(List, 4, 10);            this.setData({                showDownIndex: -1,                agentSelectClassify: name,                showAgentList: agentList            });        }    },    /**     * 生命周期函数--监听页面初次渲染完成     */    onReady: function () {    },    /**     * 生命周期函数--监听页面显示     */    onShow: function () {    },    /**     * 生命周期函数--监听页面隐藏     */    onHide: function () {    },    /**     * 生命周期函数--监听页面卸载     */    onUnload: function () {    },    /**     * 页面相关事件处理函数--监听用户下拉动作     */    onPullDownRefresh: function () {    },    /**     * 页面上拉触底事件的处理函数     */    onReachBottom: function () {    },    /**     * 用户点击右上角分享     */    onShareAppMessage: function () {    }})
 |