<template>
    <div class="flex-container">
        <!-- 查询区域 -->
        <div class="table-page-search-wrapper">
            <!-- 搜索区域 -->
            <a-form layout="inline">
                <a-row :gutter="24">
                    <a-col :md="4" :sm="12">
                        <a-form-item  label="放号人：">
                            <a-input v-model="queryParam.userName"></a-input>
                        </a-form-item>
                    </a-col>

                    <a-col :md="5" :sm="12">
                        <a-form-item  label="放号人账号：">
                            <a-input v-model="queryParam.account"></a-input>
                        </a-form-item>
                    </a-col>

                    <a-col :md="4" :sm="12">
                        <a-form-item :labelCol="{span: 6}"  :wrapperCol="{span: 8, offset: 1}"  label="县分">
                            <a-select placeholder="请选择" @change="changeSubst" v-model="queryParam.substName" >
                                <a-select-option key="">请选择</a-select-option>
                                <a-select-option v-for="data in substList" :value="data">
                                    {{ data}}
                                </a-select-option>
                            </a-select>
                        </a-form-item>
                    </a-col>

                    <a-col :md="6" :sm="12">
                        <a-form-item :labelCol="{span: 6}" :wrapperCol="{span: 8, offset: 1}"  label="学校名称">
                            <a-select showSearch placeholder="请选择"  v-model="queryParam.schoolName"
                                      >
                                <a-select-option key="">请选择</a-select-option>
                                <a-select-option v-for="data in schoolList" :key="data.school_name" :value="data.school_name">
                                </a-select-option>
                            </a-select>
                        </a-form-item>
                    </a-col>

                    <span class="table-page-search-submitButtons" style="float: left; overflow: hidden;">
                        <a-col :md="6" :sm="24">
                            <a-button @click="search()" type="primary">查询</a-button>
                             <a-divider type="vertical"/>
                            <a-button @click="apply()" type="primary">提成申请</a-button>
                        </a-col>
                    </span>
                </a-row>
            </a-form>
           </div>

        <!--列表-->
        <s-table  :locale="emptyText" :columns="columns" :data="rowdata"  bordered ref="table" size="small" class="flex-filling"
                  :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }">

<!--            <template slot="operation" slot-scope="text,record">-->
<!--                <a  @click="modifyfunction(record)">编辑</a>-->
<!--                <a-divider type="vertical"/>-->
<!--                    <a-popconfirm title="是否要删除此行？" @confirm="deleteActivity(record.id)">-->
<!--                        <a>删除</a>-->
<!--                    </a-popconfirm>-->
<!--                <a-divider type="vertical"/>-->
<!--            </template>-->
        </s-table>

    </div>
</template>

<script>
    import STable from '@/components/table';
    import {applyDataList,productOrder,getSubstList,getSchoolList} from "@/api/school-center/bonusAPI"
    import {cloneObject} from '@/utils/util';
    export default {
        name: "bonusApply",
        components: {
            STable,
        },
        data: function () {
            return {
                emptyText: {emptyText: '暂无数据'},
                fileList: [
                ],
                // form
                Formtable: this.$form.createForm(this, {name: 'Formtable'}),
                substList: [],
                schoolList:[],
                chosePages:[],
                selectedRowKeys:[],
                applyIds:'',
                products:[],
                //输入框列表
                queryParam: {
                    userName: '',
                    account: '',
                    substName: '',
                    schoolName: '',
                    isBind: '',
                },
                columns: [
                    {dataIndex: 'substName', width: 200, title: '县分', align: "center"},
                    {dataIndex: 'schoolName', width: 200, title: '学校', align: "center"},
                    {dataIndex: 'account', width: 200, title: '账号', align: "center"},
                    {dataIndex: 'userName', width: 200, title: '放号人', align: "center"},
                    {dataIndex: 'bonus', width: 200, title: '佣金', align: "center"},
                    {dataIndex: 'isBind', width: 200, title: '是否绑定微信', align: "center"},
                    // {
                    //     dataIndex: 'operation',
                    //     width: 200,
                    //     title: '操作',
                    //     align: "center",
                    //     scopedSlots: {customRender: 'operation'},
                    //     fixed: "right"
                    // }
                    //
                    ]
                ,
                rowdata: parameter => {
                    let params = {
                        pageNo: parameter.pageNo,
                        pageSize: parameter.pageSize
                    }

                    if(this.substList == '') {
                        let param = {};
                        getSubstList(Object.assign(param, obj)).then(res => {
                            if (res.state == 'success') {
                                res.data.forEach((key) => {
                                    this.substList.push(key.sub_name)
                                })
                            }
                        })
                    }

                    //表示
                    let obj = cloneObject(this.queryParam)
                    return applyDataList(Object.assign(params, obj)).then(res => {
                        let data = {}
                        if (res.state !== 'success') {
                            this.emptyText.emptyText = '查询失败！'
                            this.$message.error("查询失败！", 5);
                            data = {
                                data: [],
                                pageSize: parameter.pageSize,
                                pageNo: 1,
                                totalCount: 0
                            }
                        } else {
                            if (res.data.records.length==0){
                                return data
                            }
                            data = {
                                data: res.data.records,
                                pageSize: parameter.pageSize,
                                pageNo: parameter.pageNo,
                                totalCount: res.data.total
                            }
                        }
                        return data
                    })
                }
            }
        },

        methods:{
            search() {
                this.$refs.table.refresh({search: true})
            },
            apply(){
                if(this.selectedRowKeys == ''){
                    this.$message.info("请勾选数据！",2);
                    return null;
                }

                let params = {};
                params.ids = this.applyIds;
                params.status = "1";

                productOrder(params).then(res => {
                    if(res.state == "success"){
                        this.$message.success("提交成功",2);
                        this.search();
                        return null;
                    }

                    this.$message.error("提交失败",2);
                })
            },
            changeSubst() {
                let param = {};
                param.substName = this.queryParam.substName;
                this.schoolList = [];
                this.queryParam.substSchool = "请选择";

                getSchoolList(param).then(res => {
                    if(res.state == "success"){
                        res.data.forEach(key => {
                            this.schoolList.push(key);
                        })
                    }
                })
            },
            onSelectChange(selectedRowKeys,selectedRows) {
                this.selectedRowKeys = selectedRowKeys;
                this.applyIds = '';

                selectedRows.forEach(data => {
                    this.applyIds += data.userId +",";
                })

                this.applyIds = this.applyIds.substring(0,this.applyIds.length-1);
            },
        }
    }
</script>

<style scoped>

</style>
