var filters = {
    // 去除视频标题中的.mp4
    removeExtension(videoTitle){
        return videoTitle.split('.')[0];
    },


    // 过滤器里面兼容ios 的时间格式 2019-09-21T10:58:53.087 => 2019/09/21 10:58:53
    compatibleDate(val) {
        return val.split('T').join(' ').split('-').join('/').split('.')[0];
    },

    // 获得日期  2019-09-21T10:58:53.087 => 2019-09-21
    getTime(value) {
        if (value) {
            return value.split('T')[0];
        } else {
            return '暂无'
        }
    },
    // 获得周几 2019-09-21T10:58:53.087 => 星期六
    getWeek(value) {
        if (value) {
            var str = filters.compatibleDate(value);
            var arr = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"];
            return arr[new Date(str).getDay()]
        } else {
            return '暂无'
        }
    },

    // 根据日期获得年龄 2019-09-21T10:58:53.087 => 1
    getAge(value) {
        if (value) {
            var str = filters.compatibleDate(value);
            var birthDayTime = new Date(str).getTime();
            var nowTime = new Date().getTime();
            return Math.ceil((nowTime - birthDayTime) / 31536000000);
        }
    },

    // 年月日时间过滤 2019-09-21T10:58:53.087 =>2019年9月21日
    filterTime(value) {
        if (value) {
            var str = filters.compatibleDate(value);
            let newDate = new Date(str);
            let year = newDate.getFullYear();
            let month = newDate.getMonth() + 1;
            let day = newDate.getDate();
            return year + "年" + month + "月" + day + "日";
        }
    },

    //手机号过滤  12345678910 =>123****8910
    filterMobile(value) {
        if (typeof value !== 'string') return '';
        return value.substr(0, 3) + '****' + value.substr(7)
    },

    // 性别过滤 1=>男  2 =>女
    filterSex(gender) {
        let arr = ['未知', '男', '女'];
        return arr[gender];
    },

    // 关系筛选  1=>本人。。。
    filterRelation(index) {
        let arr = ['未知', '本人', '父母', '夫妻', '儿女', '其他'];
        return arr[index];
    },

    // 职称筛选  1=>主任医生 。。。
    filterDoctorTitles(index) {
        let arr = ['', '主任医生', '副主任医生', '主治医生', '医师'];
        return arr[index]
    },

    // 医院等级筛选 1 => 三级甲等
    filterHospitalLevel(index) {
        if (index > -1) {
            var obj = {
                0: '三级特等',
                1: '三级甲等',
                2: '三级乙等',
                3: '三级丙等',
                4: '二级甲等',
                5: '二级已等',
                6: '二级丙等',
                7: '一级甲等',
                8: '一级已等',
                9: '一级丙等',
            }
            return obj[index];
        }
    },

    //获得价钱 val 是以为分单位的价钱字段可用 1000 => 10
    getPrice(val) {
        return (val / 100).toFixed(2);
    },

    // 筛选订单状态 val = 订单状态，OrderStatus = 订单模式  1=普通坐诊 , 2=义诊，3拼团
    filterOrderStatus(val, OrderStatus, VisitDay) {
        let time = Date.now() - new Date(VisitDay.split('T')[0].split('-').join('/') + ' 18:00:00');
        let obj = {
            1: (() => {
                return time > 0 ? "已完成" : "待就诊";
            })(),
            2: '已报名',
            3: '已取消',
            4: '后台取消',
            // 3: (()=>{ //普通坐诊取消订单 = 已退款 。义诊取消预约 = 已取消
            //     return OrderStatus ==2&&val==3?'已取消':'已退款';
            // })(),
            // 4: (()=>{ //普通坐诊取消订单 = 已退款 。义诊取消预约 = 后台取消
            //     return OrderStatus ==2&&val==4?'后台取消':'已退款'
            // })(),
            5: '预约失败',
            6: '待支付',
            7: '已退款',
            8: '退款失败'
        }
        return obj[val];
    },

    // 获得上午还是下午 14:00 => 下午
    getTimeSlot(val) {
        if (!val) {
            return;
        }
        var arr = [{
            cn: '凌晨',
            h: [2, 3, 4, 5]
        },
        {
            cn: '早晨',
            h: [6, 7, 8]
        },
        {
            cn: '上午',
            h: [9, 10, 11, 12]
        },
        {
            cn: '下午',
            h: [13, 14, 15, 16, 17, 18]
        },
        {
            cn: '晚上',
            h: [19, 20, 21, 22]
        },
        {
            cn: '深夜',
            h: [23, 0, 1]
        }
        ];
        var cn = '时间';
        arr.forEach(key => {
            if (key.h.includes(parseInt(val))) {
                cn = key.cn;
            }
        })
        return cn;
    },
    // 手术预约状态
    getSurgeryStatus(status) {
        // 1待支付，2待安排 3预约成功，4预约失败已退款 , 5  已取消 ，6 退款失败
        let arr = ['', '待支付', '待审核', '预约成功', '预约失败', '已取消', '退款失败']
        return arr[status]
    }
}

export default {
    filters: filters
}