
const order = {
    state: {
        tickListSettle: {}, //菜单信息
        selectTicket:{}
    },
    mutations: {
        // 清除优惠卷信息
        cleanInfo(state) {
            state.tickListSettle = {}
            state.selectTicket = JSON.parse(JSON.stringify({}))
        },
        // 设置结算页面优惠卷信息
        setTickerList(state, data) {
            console.log(data)
            const canuse = data.fitable.map((item,index)=>{
                let timeStart = ''
                let timeEnd = ''
                if(item.useStartTime){
                    timeStart = (Date.parse(item.useStartTime.replace(/-/g,'/'))<new Date().valueOf()&&new Date().valueOf()<Date.parse(item.useEndTime.replace(/-/g,'/')))?'':item.useStartTime.slice(0,11).replace(new RegExp('-','g'), '.')
                }
                if(item.useEndTime){
                    timeEnd = item.useEndTime.slice(0,11).replace(new RegExp('-','g'), '.')
                }
                return {
                    index:index+1,
                    allLength:data.fitable.length,
                    id: item.id,
                    status: 0,
                    couponType: item.type,
                    typeDesc: item.categoryName,
                    price: item.priceDiscount===0?'免单':item.priceDiscount,
                    priceDesc: item.ruleDesc,
                    categoryDesc:item.categoryDesc,
                    checkStatus: false,
                    title: item.name,
                    time: [timeStart,timeEnd],
                    shopList: [item.areaLimitDesc],
                    goodList: [item.goodLimitDesc],
                    useScence: ['小程序下单可用'],
                    useDesc: ['*不可与其他优惠券同时使用','*不可与门店优惠共享','*订单完成后选择退款，只退回实际支付金额，优惠券不予退回'],
                    zkRule: item.type===1?'抵扣后实付金额无法小于0':item.type===2?'整单最高抵扣50元':'可享受规定范围内饮品免单',
                    reson: item.notFitableDesc,
                    couponAmount:item.couponAmount,
                    fitItem:item
                }
            }).sort((a,b)=>{
                return b.couponAmount - a.couponAmount
            })
            for(let i=0;i<canuse.length;i++){
                if(i===0){
                    canuse[i].checkStatus = true
                } else {
                    canuse[i].checkStatus = false
                    canuse[i].status = 1
                    canuse[i].reson = '不可与已勾选券叠加使用'
                }
            }
            if(canuse.length!=0)canuse[0].checkStatus = true
            const cantUse = data.notfitable.map(item=>{
                let timeStart = ''
                let timeEnd = ''
                if(item.useStartTime){
                    timeStart = (Date.parse(item.useStartTime.replace(/-/g,'/'))<new Date().valueOf()&&new Date().valueOf()<Date.parse(item.useEndTime.replace(/-/g,'/')))?'':item.useStartTime.slice(0,11).replace(new RegExp('-','g'), '.')
                }
                if(item.useEndTime){
                    timeEnd = item.useEndTime.slice(0,11).replace(new RegExp('-','g'), '.')
                }
                return {
                    id: item.id,
                    status: 1,
                    couponType: item.type,
                    typeDesc: item.categoryName,
                    price: item.priceDiscount===0?'免单':item.priceDiscount,
                    priceDesc: item.ruleDesc,
                    categoryDesc:item.categoryDesc,
                    checkStatus: false,
                    title: item.name,
                    time: [timeStart,timeEnd],
                    shopList: [item.areaLimitDesc],
                    goodList: [item.goodLimitDesc],
                    useScence: ['小程序下单可用'],
                    useDesc: ['*不可与其他优惠券同时使用','*不可与门店优惠共享','*订单完成后选择退款，只退回实际支付金额，优惠券不予退回'],
                    zkRule: item.type===1?'抵扣后实付金额无法小于0':item.type===2?'整单最高抵扣50元':'可享受规定范围内饮品免单',
                    reson: item.notFitableDesc,
                    couponAmount:item.couponAmount,
                    fitItem:item
                }
            })
            state.tickListSettle.canuse = [...canuse]
            state.tickListSettle.cantuse = [...cantUse]
            // status:1, // 0可使用 1不可使用/已过期/已失效
            // couponType:0, // 0满减 1折扣 2抵扣
            // typeDesc:'最大字数最大字', // 左上角文案描述
            // mjPrice:'30', // 满减金额
            // zkPrice:'7', // 折扣金额
            // dkPrice:'免单', // 抵扣金额
            // priceDesc:'满130可用', // 条件描述
            // checkStatus:false, // 优惠券选中状态
            // title:'最大字数最大字数最大', // 优惠券标题
            // time:['2022.07.24.17:20'], // 过期时间
            // shopList:['全门店可用'], // 可用门店
            // goodList:['全品类可用'], // 可用品类 
            // useScence:['小程序下单可用'], // 使用场景
            // useDesc:['*不可与其他优惠券同时使用','*不可与门店优惠共享','*订单完成后选择退款，只退回实际支付金额，优惠券不予退回'], // 使用说明
            // zkRule:'整单最高抵扣50元', // 折扣规则
            // reson:'不可与已勾选券叠加使用' // 不可使用原因
            // state.menuAllInfo = menuAllInfo;
        },
        // 设置已选择的优惠卷信息
        setSelectTicket(state, data) {
            state.selectTicket = {...data}
        }
    },

    actions: {

    }
}

export default order
