<template>
    <!-- 储备粮油月报 -->
    <div class="financialBox">
        <el-tabs v-model="activeCode" @tab-click="handleClick">
            <el-tab-pane label="区级储备粮油" name="3"></el-tab-pane>
            <el-tab-pane label="市级储备粮油" name="2"></el-tab-pane>
            <el-tab-pane label="地方储备粮油合计" name="1"></el-tab-pane>
            <div class="content-main">
                <el-row class="search-bm-boder">
                    <el-form :inline="true" :model="searchForm" class="demo-form-inline">
                        <el-form-item label="月份:">
                            <el-select class="inputWidth" placeholder="请选择" v-model="searchTime" clearable>
                                <el-option v-for="i in yfOptions"
                                           :key="i.id"
                                           :label="i.yf"
                                           :value="i.yf">
                                </el-option>
                            </el-select>
                        </el-form-item>
                        <el-form-item>
                            <div class="search-button">
                                <span class="search-line"></span>
                                <el-button type="primary" @click="getList" size="small" class="iconfont iconchaxun">查询</el-button>
                                <el-button type="primary" @click="clearInfo" size="small" class="iconfont iconzhongzhi">重置</el-button>
                            </div>
                        </el-form-item>
                    </el-form>
                </el-row>
                <el-row class="addBtnBg">
                    <el-button type="primary" class="iconfont icondaochu11" size="small" @click="exportSubmit">导出</el-button>
                    <el-upload style="display: inline-block;" :show-file-list="false" :action="actionUrl" :headers="uploadHeader"
                               :data="uploadBody" class="daoru" :on-success="handleSuccess" :on-change="changeFj"
                               accept="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-excel">
                        <el-button type="primary" class="iconfont icondaoru1" size="small">导入</el-button>
                    </el-upload>
                </el-row>
                <el-row>
                    <el-table :data="tableData" style="width: 100%" stripe border fit highlight-current-row>
                        <el-table-column :label="activeName" align="center">
                            <el-table-column>
                                <el-table-column label="品种指标" width="170" header-align="center">
                                    <template slot-scope="scope">
                                        <span style="white-space: pre-wrap" :class="scope.row.isFont ? 'isFontSize':''">{{scope.row.pzzb}}</span>
                                    </template>
                                </el-table-column>
                                <el-table-column label="期初库存" align="center" prop="qckc"></el-table-column>
                            </el-table-column>
                            <el-table-column :label="currentDate" align="center">
                                <el-table-column label="收入合计" align="center">
                                    <el-table-column label="小计" align="center" prop="srhjxj"></el-table-column>
                                    <el-table-column label="从生产者购进" align="center">
                                        <el-table-column label="小计" align="center" prop="srhjcsczgjxj"></el-table-column>
                                        <el-table-column label="省外" align="center" prop="srhjcsczgjsw"></el-table-column>
                                    </el-table-column>
                                    <el-table-column label="从企业购进" align="center">
                                        <el-table-column label="小计" align="center" prop="srhjcqygjxj"></el-table-column>
                                        <el-table-column label="省外" align="center" prop="srhjcqygjsw"></el-table-column>
                                    </el-table-column>
                                    <el-table-column label="商品粮油转入" align="center" prop="srhjsplyzr" width="100"></el-table-column>
                                    <el-table-column label="进口" align="center" prop="srhjjk"></el-table-column>
                                    <el-table-column label="其他收入" align="center" prop="srhjqtsr"></el-table-column>
                                </el-table-column>
                                <el-table-column label="支出合计" align="center">
                                    <el-table-column label="小计" align="center" prop="zchjxj"></el-table-column>
                                    <el-table-column label="销售" align="center">
                                        <el-table-column label="小计" align="center" prop="zchjxsxj"></el-table-column>
                                        <el-table-column label="省外" align="center" prop="zchjxssw"></el-table-column>
                                    </el-table-column>
                                    <el-table-column label="转作商品粮油" align="center" prop="zchjzzsply" width="100"></el-table-column>
                                    <el-table-column label="出口" align="center" prop="zchjck"></el-table-column>
                                    <el-table-column label="其他支出" align="center" prop="zchjqtzc"></el-table-column>
                                </el-table-column>
                                <el-table-column label="期末库存" align="center">
                                    <el-table-column label="小计" align="center" prop="qmkcxj"></el-table-column>
                                    <el-table-column label="按生产年度划分" align="center">
                                        <el-table-column label="小计" align="center" prop="qmkcascndhfxj"></el-table-column>
                                        <el-table-column label="2019年" align="center" prop="qmkcerlingyijiu"></el-table-column>
                                        <el-table-column label="2020年" align="center" prop="qmkcerlingerling"></el-table-column>
                                        <el-table-column label="2021年" align="center" prop="qmkcerlingeryi"></el-table-column>
                                        <el-table-column label="2022年" align="center" prop="qmkcerlingerer"></el-table-column>
                                        <el-table-column label="2023年" align="center" prop="qmkcerlingersan"></el-table-column>
                                        <el-table-column label="2024年" align="center" prop="qmkcerlingersi"></el-table-column>
                                    </el-table-column>
                                    <el-table-column label="小包装" align="center" prop="qmkcxbz"></el-table-column>
                                    <el-table-column label="省外储存" align="center" prop="qmkcswcc"></el-table-column>
                                </el-table-column>
                            </el-table-column>
                            <el-table-column label="计量单位:吨" align="center" width="100">
                                <el-table-column label="动态储备[S]" align="center" prop="dtcb" width="100"></el-table-column>
                            </el-table-column>
                        </el-table-column>
                    </el-table>
                </el-row>
            </div>
        </el-tabs>
    </div>
</template>

<script>
    import {getInfoList, exportByObject} from '@/api/emergencyReport/cbly/index';
    import {file, baseServer} from '@/api';

    export default {
        data() {
            return {
                // table 切换标记
                activeName: '区级储备粮油',
                activeCode: '3',
                // 第二个表头年月
                currentDate: '',
                // 搜索条件
                searchForm: {type: 3, yuebaoornianbao: 1, baobiaoshijian: ''},
                // 搜索条件缓存
                searchTime: '',
                // 搜索下拉选数据
                yfOptions: [
                    {id: 1, yf: '1月'},{id: 2, yf: '2月'},{id: 3, yf: '3月'},{id: 4, yf: '4月'},{id: 5, yf: '5月'},{id: 6, yf: '6月'},
                    {id: 7, yf: '7月'},{id: 8, yf: '8月'},{id: 9, yf: '9月'},{id: 10, yf: '10月'},{id: 11, yf: '11月'},{id: 12, yf: '12月'}
                ],
                // 列表数据
                tableData: [],
                // 导入URL
                actionUrl: baseServer + "/chubeilyBb/importByEntity",
                // 导入
                uploadHeader: {
                    token: sessionStorage.getItem('TOKENL')
                },
                uploadBody: {
                    baobiaoshijian: '',
                    cjdw: sessionStorage.getItem('orgCode'),
                    yuebaoornianbao: 1
                }
            }
        },
        created() {
            // 默认查询当前年份年报
            // this.searchTime = this.getYearMonth();
            this.getList();
        },
        methods: {
            // 切换列表
            handleClick(tab, event) {
                /*console.log("tab:", tab);
                console.log("event:", event);*/
                // 地方1,市级2,区级3
                if (this.activeCode === 1) {
                    this.activeName = '地方储备粮油合计';
                } else if (this.activeCode === 2) {
                    this.activeName = '市级储备粮油';
                } else {
                    this.activeName = '区级储备粮油';
                }
                this.searchForm.type = this.activeCode;
                // 1月报,2年报
                this.searchForm.yuebaoornianbao = 1;
                this.getList();
            },
            // 查询
            getList() {
                let sf = this.searchForm;
                // 拼接查询条件
                const date = new Date();
                const year = date.getFullYear();
                sf.baobiaoshijian = year + '年' + this.searchTime;
                // console.log("sf:", sf);
                getInfoList(sf).then(res => {
                    // console.log("sf.res:", res);
                    // 表头报表时间
                    if (res.length > 0) {
                        let btsj = res[0].baobiaoshijian;
                        if (btsj === null || btsj === '' || btsj === undefined) {
                            this.currentDate = this.getYearMonth();
                        } else {
                            this.currentDate = btsj;
                        }
                    } else {
                        this.currentDate = this.getYearMonth();
                    }
                    // console.log("this.currentDate:", this.currentDate);
                    // 创建临时缓存数组
                    const resultList = [];
                    // 获取列表需要的数据并排序
                    res.forEach((item, index) => {
                        if (item.pzzb === '粮食品种') {
                            // 添加空格样式
                            item.pzzb = '粮食品种';
                            item.isFont = true;
                            resultList.splice(0, 0, item);
                        }
                        if (item.pzzb === '折合原粮合计') {
                            // 添加空格样式
                            item.pzzb = '  折合原粮合计';
                            item.isFont = true;
                            resultList.splice(1, 0, item);
                        }
                        if (item.pzzb === '实际粮合计[S]') {
                            // 添加空格样式
                            item.pzzb = '    实际粮合计[S]';
                            resultList.splice(2, 0, item);
                        }
                        // 贸易粮合计
                        if (item.pzzb === '贸易粮合计') {
                            // 添加空格样式
                            item.pzzb = '  贸易粮合计';
                            resultList.splice(3, 0, item);
                        }
                        // 谷物合计
                        if (item.pzzb === '谷物合计') {
                            // 添加空格样式
                            item.pzzb = '  谷物合计';
                            item.isFont = true;
                            resultList.splice(4, 0, item);
                        }
                        // 小麦及小麦粉
                        if (item.pzzb === '小麦及小麦粉') {
                            // 添加空格样式
                            item.pzzb = '    小麦及小麦粉';
                            item.isFont = true;
                            resultList.splice(5, 0, item);
                        }
                        if (item.pzzb === '折合小麦') {
                            // 添加空格样式
                            item.pzzb = '      折合小麦';
                            resultList.splice(6, 0, item);
                        }
                        if (item.pzzb === '实际小麦') {
                            // 添加空格样式
                            item.pzzb = '      实际小麦';
                            resultList.splice(7, 0, item);
                        }

                        if (item.pzzb === '实际面粉') {
                            // 添加空格样式
                            item.pzzb = '      实际面粉';
                            resultList.splice(8, 0, item);
                        }
                        // 稻谷及大米
                        if (item.pzzb === '稻谷及大米') {
                            // 添加空格样式
                            item.pzzb = '    稻谷及大米';
                            item.isFont = true;
                            resultList.splice(9, 0, item);
                        }
                        if (item.pzzb === '折合稻谷合计') {
                            // 添加空格样式
                            item.pzzb = '      折合稻谷合计';
                            item.isFont = true;
                            resultList.splice(10, 0, item);
                        }
                        if (item.pzzb === '折合早籼稻') {
                            // 添加空格样式
                            item.pzzb = '      折合早籼稻';
                            resultList.splice(11, 0, item);
                        }
                        if (item.pzzb === '折合中晚籼稻') {
                            // 添加空格样式
                            item.pzzb = '      折合中晚籼稻';
                            resultList.splice(12, 0, item);
                        }
                        if (item.pzzb === '折合粳稻') {
                            // 添加空格样式
                            item.pzzb = '      折合粳稻';
                            resultList.splice(13, 0, item);
                        }
                        // 折合大米合计
                        if (item.pzzb === '折合大米合计') {
                            // 添加空格样式
                            item.pzzb = '      折合大米合计';
                            item.isFont = true;
                            resultList.splice(14, 0, item);
                        }
                        if (item.pzzb === '折合早籼米') {
                            // 添加空格样式
                            item.pzzb = '        折合早籼米';
                            resultList.splice(15, 0, item);
                        }
                        if (item.pzzb === '折合中晚籼米') {
                            // 添加空格样式
                            item.pzzb = '        折合中晚籼米';
                            resultList.splice(16, 0, item);
                        }
                        if (item.pzzb === '折合粳米') {
                            // 添加空格样式
                            item.pzzb = '        折合粳米';
                            resultList.splice(17, 0, item);
                        }
                        // 实际稻谷合计
                        if (item.pzzb === '实际稻谷合计') {
                            // 添加空格样式
                            item.pzzb = '      实际稻谷合计';
                            item.isFont = true;
                            resultList.splice(18, 0, item);
                        }
                        if (item.pzzb === '实际早籼稻') {
                            // 添加空格样式
                            item.pzzb = '        实际早籼稻';
                            resultList.splice(19, 0, item);
                        }
                        if (item.pzzb === '实际中晚籼稻') {
                            // 添加空格样式
                            item.pzzb = '        实际中晚籼稻';
                            resultList.splice(20, 0, item);
                        }
                        if (item.pzzb === '实际粳稻') {
                            // 添加空格样式
                            item.pzzb = '        实际粳稻';
                            resultList.splice(21, 0, item);
                        }
                        // 实际大米合计
                        if (item.pzzb === '实际大米合计') {
                            // 添加空格样式
                            item.pzzb = '      实际大米合计';
                            item.isFont = true;
                            resultList.splice(22, 0, item);
                        }
                        if (item.pzzb === '实际早籼米') {
                            // 添加空格样式
                            item.pzzb = '        实际早籼米';
                            resultList.splice(23, 0, item);
                        }
                        if (item.pzzb === '实际中晚籼米') {
                            // 添加空格样式
                            item.pzzb = '        实际中晚籼米';
                            resultList.splice(24, 0, item);
                        }
                        if (item.pzzb === '实际粳米') {
                            // 添加空格样式
                            item.pzzb = '        实际粳米';
                            resultList.splice(25, 0, item);
                        }
                        // 折合玉米
                        if (item.pzzb === '折合玉米') {
                            // 添加空格样式
                            item.pzzb = '    折合玉米';
                            item.isFont = true;
                            resultList.splice(26, 0, item);
                        }
                        if (item.pzzb === '实际玉米') {
                            // 添加空格样式
                            item.pzzb = '      实际玉米';
                            resultList.splice(27, 0, item);
                        }
                        if (item.pzzb === '实际玉米面和玉米渣') {
                            // 添加空格样式
                            item.pzzb = '      实际玉米面和玉米渣';
                            resultList.splice(28, 0, item);
                        }
                        // 高粱
                        if (item.pzzb === '高粱') {
                            // 添加空格样式
                            item.pzzb = '    高粱';
                            resultList.splice(29, 0, item);
                        }
                        if (item.pzzb === '大麦') {
                            // 添加空格样式
                            item.pzzb = '    大麦';
                            resultList.splice(30, 0, item);
                        }
                        if (item.pzzb === '谷子') {
                            // 添加空格样式
                            item.pzzb = '    谷子';
                            resultList.splice(31, 0, item);
                        }
                        if (item.pzzb === '其他谷物') {
                            // 添加空格样式
                            item.pzzb = '    其他谷物';
                            resultList.splice(32, 0, item);
                        }
                        // 豆类合计
                        if (item.pzzb === '豆类合计') {
                            // 添加空格样式
                            item.pzzb = '  豆类合计';
                            item.isFont = true;
                            resultList.splice(33, 0, item);
                        }
                        if (item.pzzb === '折合大豆') {
                            // 添加空格样式
                            item.pzzb = '    折合大豆';
                            item.isFont = true;
                            resultList.splice(34, 0, item);
                        }
                        if (item.pzzb === '实际大豆') {
                            // 添加空格样式
                            item.pzzb = '      实际大豆';
                            resultList.splice(35, 0, item);
                        }
                        if (item.pzzb === '实际豆饼豆粕') {
                            // 添加空格样式
                            item.pzzb = '      实际豆饼豆粕';
                            resultList.splice(36, 0, item);
                        }
                        if (item.pzzb === '其他豆类') {
                            // 添加空格样式
                            item.pzzb = '    其他豆类';
                            resultList.splice(37, 0, item);
                        }
                        // 豆类合计
                        if (item.pzzb === '薯类折粮合计') {
                            // 添加空格样式
                            item.pzzb = '  薯类折粮合计';
                            item.isFont = true;
                            resultList.splice(38, 0, item);
                        }
                        if (item.pzzb === '马铃薯折粮') {
                            // 添加空格样式
                            item.pzzb = '    马铃薯折粮';
                            resultList.splice(39, 0, item);
                        }
                        if (item.pzzb === '其他薯类折粮') {
                            // 添加空格样式
                            item.pzzb = '    其他薯类折粮';
                            resultList.splice(40, 0, item);
                        }
                        if (item.pzzb === '其他粮合计') {
                            // 添加空格样式
                            item.pzzb = '  其他粮合计';
                            resultList.splice(41, 0, item);
                        }
                        if (item.pzzb === '成品粮合计') {
                            // 添加空格样式
                            item.pzzb = '  成品粮合计';
                            resultList.splice(42, 0, item);
                        }
                        // 油脂油料品种
                        if (item.pzzb === '油脂油料品种') {
                            // 添加空格样式
                            item.pzzb = '油脂油料品种';
                            item.isFont = true;
                            resultList.splice(43, 0, item);
                        }
                        // 油及料折油合计
                        if (item.pzzb === '油及料折油合计') {
                            // 添加空格样式
                            item.pzzb = '  油及料折油合计';
                            resultList.splice(44, 0, item);
                        }
                        if (item.pzzb === '油脂合计') {
                            // 添加空格样式
                            item.pzzb = '  油脂合计';
                            resultList.splice(45, 0, item);
                        }
                        if (item.pzzb === '油料合计') {
                            // 添加空格样式
                            item.pzzb = '  油料合计';
                            resultList.splice(46, 0, item);
                        }
                        // 折合菜籽油
                        if (item.pzzb === '折合菜籽油') {
                            // 添加空格样式
                            item.pzzb = '  折合菜籽油';
                            item.isFont = true;
                            resultList.splice(47, 0, item);
                        }
                        if (item.pzzb === '实际菜籽油') {
                            // 添加空格样式
                            item.pzzb = '    实际菜籽油';
                            resultList.splice(48, 0, item);
                        }
                        if (item.pzzb === '实际油菜籽') {
                            // 添加空格样式
                            item.pzzb = '    实际油菜籽';
                            resultList.splice(49, 0, item);
                        }
                        // 折合花生油
                        if (item.pzzb === '折合花生油') {
                            // 添加空格样式
                            item.pzzb = '  折合花生油';
                            item.isFont = true;
                            resultList.splice(50, 0, item);
                        }
                        if (item.pzzb === '实际花生油') {
                            // 添加空格样式
                            item.pzzb = '    实际花生油';
                            resultList.splice(51, 0, item);
                        }
                        if (item.pzzb === '实际花生果') {
                            // 添加空格样式
                            item.pzzb = '    实际花生果';
                            resultList.splice(52, 0, item);
                        }
                        if (item.pzzb === '实际大豆油') {
                            // 添加空格样式
                            item.pzzb = '  实际大豆油';
                            resultList.splice(53, 0, item);
                        }
                        if (item.pzzb === '实际棉籽油') {
                            // 添加空格样式
                            item.pzzb = '  实际棉籽油';
                            resultList.splice(54, 0, item);
                        }
                        if (item.pzzb === '实际棕榈油') {
                            // 添加空格样式
                            item.pzzb = '  实际棕榈油';
                            resultList.splice(55, 0, item);
                        }
                        if (item.pzzb === '折合葵花油') {
                            // 添加空格样式
                            item.pzzb = '  折合葵花油';
                            item.isFont = true;
                            resultList.splice(56, 0, item);
                        }
                        if (item.pzzb === '实际葵花油') {
                            // 添加空格样式
                            item.pzzb = '    实际葵花油';
                            resultList.splice(57, 0, item);
                        }
                        if (item.pzzb === '实际葵花籽') {
                            // 添加空格样式
                            item.pzzb = '    实际葵花籽';
                            resultList.splice(58, 0, item);
                        }
                        if (item.pzzb === '实际油茶籽油') {
                            // 添加空格样式
                            item.pzzb = '  实际油茶籽油';
                            resultList.splice(59, 0, item);
                        }
                        if (item.pzzb === '折合芝麻油') {
                            // 添加空格样式
                            item.pzzb = '  折合芝麻油';
                            item.isFont = true;
                            resultList.splice(60, 0, item);
                        }
                        if (item.pzzb === '实际芝麻油') {
                            // 添加空格样式
                            item.pzzb = '    实际芝麻油';
                            resultList.splice(61, 0, item);
                        }
                        if (item.pzzb === '实际芝麻') {
                            // 添加空格样式
                            item.pzzb = '    实际芝麻';
                            resultList.splice(62, 0, item);
                        }
                        if (item.pzzb === '实际玉米油') {
                            // 添加空格样式
                            item.pzzb = '  实际玉米油';
                            resultList.splice(63, 0, item);
                        }
                        if (item.pzzb === '实际米糠油') {
                            // 添加空格样式
                            item.pzzb = '  实际米糠油';
                            resultList.splice(64, 0, item);
                        }
                        if (item.pzzb === '实际调和油') {
                            // 添加空格样式
                            item.pzzb = '  实际调和油';
                            resultList.splice(65, 0, item);
                        }
                        if (item.pzzb === '其他油及其他油料折油') {
                            // 添加空格样式
                            item.pzzb = '  其他油及其他油料折油';
                            item.isFont = true;
                            resultList.splice(66, 0, item);
                        }
                        if (item.pzzb === '实际其他油') {
                            // 添加空格样式
                            item.pzzb = '    实际其他油';
                            resultList.splice(67, 0, item);
                        }
                        if (item.pzzb === '实际其他油料') {
                            // 添加空格样式
                            item.pzzb = '    实际其他油料';
                            resultList.splice(68, 0, item);
                        }
                    });
                    this.tableData = resultList;
                }).catch((err) => {
                    this.$message.error(err);
                });
            },
            // 导出
            exportSubmit() {
                const dc = this.searchForm;
                dc.type = '';
                exportByObject(dc).then(res => {
                    let blob = new Blob([res], {type: 'application/vnd.ms-excel;charset=utf-8'});
                    if (!!window.ActiveXObject || "ActiveXObject" in window) {
                        window.navigator.msSaveOrOpenBlob(blob, '储备粮油月报.xls');
                    } else {
                        const link = document.createElement('a');
                        link.style.display = 'none';
                        link.href = URL.createObjectURL(blob);
                        link.setAttribute('download', '储备粮油月报.xls');
                        document.body.appendChild(link);
                        link.click();
                        document.body.removeChild(link);
                    }
                }).catch((err) => {
                    this.$message.error(err);
                });
            },
            //附件上传
            changeFj(file, fileList) {
                console.log('changeFj|file=', file);
                console.log('changeFj|fileList=', fileList);
            },
            //导入
            handleSuccess(response) {
                console.log('handleSuccess=', response);
                this.$message.success(response.msg);
                this.getList();
            },
            // 重置
            clearInfo() {
                this.searchTime = '';
                this.getList();
            },
            // 获取表头年月
            getYearMonth () {
                const date = new Date();
                const year = date.getFullYear();
                const month = date.getMonth();
                const monthPlus = month + 1;
                return year + '年' + monthPlus + '月';
            },
        }
    }
</script>

<style scoped>
    .financialBox{
        overflow-y: auto;
        margin: 10px;
        border: 1px solid #f4f5f8;
        padding: 10px;
        min-width: 960px;
    }
    .inputWidth {
        width: 80%;
    }
    .isFontSize {
        font-weight: bold;
    }
</style>