<style>
@import url('../../assets/css/domestic/OrderDataStati.css');
</style>
<template>
    <div class="page_OrderDataStati">
        <div class="page_OrderDataStati_top">
            <div class="_tit">
                <div>
                    <span class="_tit_name">利润走势图(月)</span>
                    <span class="_fangkuai"> <i class=""></i> 实际利润</span>
                    <span class="_fangkuai _fangkuai2"> <i class=""></i> 预期利润</span>
                </div>
                <div class="_all_lirun">
                    <span>总预期利润 <i>¥{{allProfit}}</i></span>
                    <span class="margin_left_15">总实际利润 <i>¥{{allRealProfit}}</i></span>
                </div>
                <div class="_input">
                    <el-select v-model="Year" size="mini" @change="getDataMonth">
                        <el-option  v-for="item in yearList" :key="item" :label="item" :value="item"></el-option>
                    </el-select>
                    <el-select v-model="Month" size="mini" @change="getDataMonth" class="_month_input">
                        <el-option  v-for="item in MonthList" :key="item" :label="item" :value="item"></el-option>
                    </el-select>
                </div>
            </div>
            <div id="chartsMap" :style="{'height':clientHeight+'px','width':'100%'}"></div>    
        </div>
        <div class="page_OrderDataStati_bottom">
            <div class="_tit">
                <div>
                    <span class="_tit_name">利润走势图(年)</span>
                    <span class="_fangkuai"> <i class=""></i> 实际利润</span>
                    <span class="_fangkuai _fangkuai2"> <i class=""></i> 预期利润</span>
                </div>
                <div class="_all_lirun">
                    <span>总预期利润 <i>¥{{allProfitYear}}</i></span>
                    <span class="margin_left_15">总实际利润 <i>¥{{allRealProfitYear}}</i></span>
                </div>
                <div class="_input">
                    <el-select v-model="YearS" size="mini" @change="getDataYear">
                        <el-option  v-for="item in yearList" :key="item" :label="item" :value="item"></el-option>
                    </el-select>
                    <el-select v-model="MonthS" size="mini" @change="getDataMonth" class="_month_input _visibility">
                        <el-option v-for="item in MonthList" :key="item" :label="item" :value="item"></el-option>
                    </el-select>
                </div>
            </div>
            <div id="chartsMapYear" :style="{'height':clientHeight+'px','width':'100%'}"></div>    
        </div>
    </div>
</template>
<script>
export default {
    data(){
        return{
            Year:new Date().getFullYear(),
            Month:new Date().getMonth()+1,
            date:new Date().getDate(),
            YearS:new Date().getFullYear(),
            MonthS:'',
            clientHeight:'',
            yearList:[],
            MonthList:[],
            dayList:[],
            allRealProfit:0,
            allProfit:0,
            allRealProfitYear:0,
            allProfitYear:0,
        }
    },created(){
        this.clientHeight = (document.documentElement.clientHeight - 300)/2;
        let count = this.Year-(this.Year-8);
        this.yearList.push(2018);
        for(let i = 1;i<=count;i++){
            this.yearList.push(this.Year-i);
        }
    },mounted(){
        this.getDataMonth();
        this.getDataYear();
    },methods:{
        getDataMonth(){
            this.dayList =[];
            let msg = {
                Year:this.Year,
                Month:this.Month
            }            
            this.apipost('Domestic_Ticket_post_GetProfitList',msg,r=>{
                if(r.data.resultCode==1){
                    let data = r.data.data;
                    let ProfitList = [];
                    let RealProfitList = [];
                    let allProfit = 0;
                    let allRealProfit = 0;
                    data.forEach(y=>{
                        this.dayList.push(y.Day);
                        ProfitList.push(y.Profit);
                        RealProfitList.push(y.RealProfit);
                        allProfit = allProfit + y.Profit;
                        allRealProfit = allRealProfit + y.RealProfit;
                    })
                    this.allProfit = allProfit;
                    this.allRealProfit = allRealProfit;
                    this.chartsMap(ProfitList,RealProfitList);
                }else{}
            },null)
        },
        chartsMap(ProfitList,RealProfitList){  // 画饼
            var then = this;
            let myChart = this.$echarts.init(document.getElementById('chartsMap'));
            myChart.setOption({               
                title: {
                    left: 'left',
                    textStyle:{
                        fontWeight:'bold',
                        fontSize:14,
                        color:'#333333',
                        height:'30px'
                    },
                    padding: [
                        20,  // 上
                        20, // 右
                        20,  // 下
                        20, // 左
                    ]
                },
                backgroundColor: '#fff',
                tooltip: {
                    trigger: 'axis',
                    axisPointer: {
                        type: 'line',
                        animation: false,
                        label: {
                            backgroundColor: '#ccc',
                            borderColor: '#aaa',
                            borderWidth: 1,
                            shadowBlur: 0,
                            shadowOffsetX: 0,
                            shadowOffsetY: 0,
                            textStyle: {
                                color: '#222'
                            }
                        }
                    }
                },
                xAxis: {
                    type: 'category',
                    axisLine: {
                        show: false,
                        lineStyle:{
                            width:1
                        }
                    },                    
                    axisLabel:{},
                    axisTick:false,
                    data: then.dayList,
                },
                grid: {
                    x:25,
                    y:60,
                    x2:5,
                    y2:20,
                    containLabel: true
                },
                yAxis: {
                    type: 'category',
                    data:['10','20','30','40','50','60','70','80','90','100'],
                    axisLine: {show: false},
                    axisTick:false,
                    splitLine:{
                        show:false                    
                    },                    
                    scale: true,
                    minInterval:1,
                    type: 'value', 
                    axisLabel:{formatter:'{value} CNY'}    
                },
                series: [
                    {
                        name: '预期利润',
                        type: 'line',
                        smooth:false,  
                        data:ProfitList,
                        lineStyle:{
                            width:2,
                            color:'#0099F7',
                        },
                        itemStyle:{
                            borderWidth:2,
                            color:'#0099F7'
                        },
                        symbol:'none',
                        areaStyle:{
                            color: {
                                type: 'linear',
                                x: 0,
                                y: 0,
                                x2: 0,
                                y2: 1,
                                colorStops: [{
                                    offset: 0, color:'rgba(230,230,230,0)' // 0% 处的颜色
                                }, {
                                    offset: 1, color:'rgba(230,230,230,0)' // 100% 处的颜色
                                }],
                                globalCoord: false // 缺省为 false
                            }
                        }
                    },
                    {
                        name: '实际利润',
                        type: 'line',
                        smooth:false,  
                        data: RealProfitList,
                        lineStyle:{
                            width:2,
                            color:'#32DBBE',
                        },
                        itemStyle:{
                            borderWidth:2,
                            color:'#32DBBE'
                        },
                        symbol:'none',
                        areaStyle:{
                            color: {
                                type: 'linear',
                                x: 0,
                                y: 0,
                                x2: 0,
                                y2: 1,
                                colorStops: [{
                                    offset: 0, color:'rgba(230,230,230,0)' // 0% 处的颜色
                                }, {
                                    offset: 1, color:'rgba(230,230,230,0)' // 100% 处的颜色
                                }],
                                globalCoord: false // 缺省为 false
                            }
                        }
                    }
                ]
            },true)
        },
        getDataYear(){
            this.MonthList=[];
            let msg = {
                Year:this.YearS,
                Month:''
            }            
            this.apipost('Domestic_Ticket_post_GetProfitList',msg,r=>{
                if(r.data.resultCode==1){
                    let data = r.data.data;
                    let ProfitList = [];
                    let RealProfitList = [];
                    let allProfit = 0;
                    let allRealProfit = 0;
                    data.forEach(y=>{
                        this.MonthList.push(y.Month);
                        ProfitList.push(y.Profit);
                        RealProfitList.push(y.RealProfit);
                        allProfit = allProfit + y.Profit;
                        allRealProfit = allRealProfit + y.RealProfit;
                    })
                    this.allProfitYear = allProfit;
                    this.allRealProfitYear = allRealProfit;
                    this.chartsMap2(ProfitList,RealProfitList);
                }else{
                    
                }
            },null)
        },
        chartsMap2(ProfitList,RealProfitList){  // 画饼
            var then = this;
            let myChart = this.$echarts.init(document.getElementById('chartsMapYear'));
            myChart.setOption({
                title: {
                    left: 'left',
                    textStyle:{
                        fontWeight:'bold',
                        fontSize:14,
                        color:'#333333',
                        height:'30px'
                    },
                    padding: [
                        20,  // 上
                        20, // 右
                        20,  // 下
                        20, // 左
                    ]
                },
                backgroundColor: '#fff',
                tooltip: {
                    trigger: 'axis',
                    axisPointer: {
                        type: 'line',
                        animation: false,
                        label: {
                            backgroundColor: '#ccc',
                            borderColor: '#aaa',
                            borderWidth: 1,
                            shadowBlur: 0,
                            shadowOffsetX: 0,
                            shadowOffsetY: 0,
                            textStyle: {
                                color: '#222'
                            }
                        }
                    }
                },
                xAxis: {
                    type: 'category',
                    axisLine: {
                        show: false,
                        lineStyle:{
                            width:1
                        }
                    },
                    axisLabel:{},
                    axisTick:false,
                    data: then.MonthList,
                },
                grid: {
                    x:25,
                    y:60,
                    x2:5,
                    y2:20,
                    containLabel: true
                },
                yAxis: {
                    type: 'category',
                    axisLine: {show: false},
                    axisTick:false,
                    splitLine:{
                        show:false                    
                    },
                    scale: true,
                    minInterval:1,
                    type: 'value',
                    axisLabel:{formatter:'{value} CNY',} ,
                },
                series: [
                    {
                        name: '预期利润',
                        type: 'line',
                        smooth:false,  
                        data:ProfitList,
                        lineStyle:{
                            width:2,
                            color:'#0099F7',
                        },
                        itemStyle:{
                            borderWidth:2,
                            color:'#0099F7'
                        },
                        symbol:'none',
                        areaStyle:{
                            color: {
                                type: 'linear',
                                x: 0,
                                y: 0,
                                x2: 0,
                                y2: 1,
                                colorStops: [{
                                    offset: 0, color:'rgba(230,230,230,0)' // 0% 处的颜色
                                }, {
                                    offset: 1, color:'rgba(230,230,230,0)' // 100% 处的颜色
                                }],
                                globalCoord: false // 缺省为 false
                            }
                        }
                    },
                    {
                        name: '实际利润',
                        type: 'line',
                        smooth:false,  
                        data: RealProfitList,
                        lineStyle:{
                            width:2,
                            color:'#32DBBE',
                        },
                        itemStyle:{
                            borderWidth:2,
                            color:'#32DBBE'
                        },
                        symbol:'none',
                        areaStyle:{
                            color: {
                                type: 'linear',
                                x: 0,
                                y: 0,
                                x2: 0,
                                y2: 1,
                                colorStops: [{
                                    offset: 0, color:'rgba(230,230,230,0)' // 0% 处的颜色
                                }, {
                                    offset: 1, color:'rgba(230,230,230,0)' // 100% 处的颜色
                                }],
                                globalCoord: false // 缺省为 false
                            }
                        }
                    }
                ]
            },true)
        },
    }
}
</script>