// pages/login/login.js
import WxValidate from '../../utils/wxValidate'
const app = getApp()
Page({
    /**
     * 页面的初始数据
     */
    data: {
        // 主体高度
        infoHeight: '',
        frameStyle: { useTop: true, name: '新增赛程编排', leftArrow: true, useBar: false },
        form: {
        },
        // 上传图片
        fileList: [],
        //比赛id
        id: '',
        //团队
        cateArray: [],
        cateIndex: 0,
        objectArray: [],
        cateIndex1: 0,
        objectArray1: [],
        index: 0,
        date: '2022-05-01',
        time: '08:00',
        red: {},
        blue: {},
    },
    //验证必填项
    initValidate() {
        const rules = { match_name: { required: true }, }
        // 验证字段的提示信息，若不传则调用默认的信息
        const messages = { match_name: { required: '请输入比赛名称' }, };
        this.WxValidate = new WxValidate(rules, messages)
    },
    back: function () {
        wx.navigateBack({ url: '/pages/me/index' })
    },
    //蓝方
    bindCatePickerChangeblue: function (e) {
        this.setData({ cateIndex: e.detail.value, blue: e.currentTarget.dataset.item, })
    },
    //红方
    bindCatePickerChangered: function (e) {
        this.setData({ cateIndex1: e.detail.value, red: e.currentTarget.dataset.item, })
    },
    //选择时间
    bindDateChange: function (e) {
        this.setData({date: e.detail.value})
    },
    bindTimeChange: function (e) {
        this.setData({time: e.detail.value})
    },
    //提交
    formSubmit: function (e) {
        const value = e.detail.value;
        value.match_id = this.data.id;
        value.red_id = this.data.red.team_id;
        value.red_name = this.data.red.team_name;
        value.red_logo = this.data.red.logo;
        value.red_members = this.data.red.members;
        value.blue_id = this.data.blue.team_id;
        value.blue_name = this.data.blue.team_name;
        value.blue_logo = this.data.blue.logo;
        value.blue_members = this.data.blue.members;
        value.match_time = this.data.date + '  ' + this.data.time;
        if (!this.WxValidate.checkForm(value)) {
            const error = this.WxValidate.errorList[0];
            wx.showToast({ title: `${error.msg}`, icon: 'error', duration: 2000 })
            return false
        } else {
            wx.request({
                url: `${app.globalData.publicUrl}/courtAdmin/api/schedule`, 
                method: "post",
                data: value,
                header: {},
                success: res => {
                    if (res.data.errcode == 0) {
                        wx.showToast({
                            title: '保存成功',
                            icon: 'success',
                            duration: 2000
                        })
                    } else {
                        wx.showToast({
                            title: '保存失败',
                            icon: 'success',
                            duration: 2000
                        })
                    }
                },
            })
        }
    },
    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        this.setData({ id: options.id })
        //验证规则函数
        this.initValidate();
        // 计算高度
        this.searchHeight();
        // 监听用户是否登录
        this.watchLogin();
    },
    // 监听用户是否登录
    watchLogin: function () {
        const that = this;
        let id = that.data.id;
        wx.getStorage({
            key: 'token',
            success: res => {
                wx.request({
                    url: `${app.globalData.publicUrl}/courtAdmin/api/match/${id}`,
                    method: 'get',
                    data: {},
                    success(res) {
                        that.setData({ form: res.data.data })
                    }
                })
                wx.request({
                    url: `${app.globalData.publicUrl}/courtAdmin/api/matchteam`,
                    method: 'get',
                    data: { match_id: id, status: 1 },
                    success(res) {
                        that.setData({ cateArray: res.data.data })
                    }
                })
            },
            fail: res => {
                return wx.redirectTo({ url: '/pages/login/index', })
            }
        })
    },

    // 计算高度
    searchHeight: function () {
        let frameStyle = this.data.frameStyle;
        let client = app.globalData.client;
        let infoHeight = client.windowHeight;
        // 是否去掉状态栏
        if (frameStyle.useTop) infoHeight = infoHeight - (client.statusBarHeight + client.getMenu.height + (client.getMenu.top - client.statusBarHeight) * 2);
        // 是否减去底部菜单
        if (frameStyle.useBar) infoHeight = infoHeight - 50;
        if (infoHeight) this.setData({ infoHeight: infoHeight })
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})