<template>
    <fieldset>
        <legend>
            <el-tag type="info">按需操作</el-tag>
        </legend>
        <div class="op-header">
            <div class="left-panel">
                <el-button icon="el-icon-unlock" @click="table_batch_status(1)" :disabled="dataSelect.length>0?false:true">启用</el-button>
                <el-button icon="el-icon-lock" type="danger" @click="table_batch_status(2)" :disabled="dataSelect.length>0?false:true">禁用</el-button>
                <el-button type="warning" icon="el-icon-connection" @click="table_sync()">同步POI</el-button>
            </div>
        </div>
    </fieldset>
    <formMain ref="formMain" @success="handleSuccess"></formMain>
</template>

<script>
import formMain from './form';
export default {
    components: {
        formMain
    },
    props: {
        dataSelect: { type: Array, default: () => [] },
        dataSelectFull: { type: Array, default: () => [] }
    },
    data(){
        return {

        }
    },
    methods: {
        table_sync(){
            this.$confirm(`发起同步后，请耐心等待1-2分钟后再刷新当前数据列表`, '提示', {
                type: 'warning'
            }).then(async () => {
                var resp = await this.$API.store.sync.get();
                if (resp.code == 0) {
                    return this.$message.error(resp.msg);
                }
                this.$message.success(resp.msg);
                this.$emit("success");
            }).catch(() => {

            })
        },
        async table_batch_status(status){
            if (this.dataSelect.length == 0) {
                return this.$message.error("请选择修改数据")
            }
            var loading = this.$loading()
            let submitData = {"id":this.dataSelect,"value":status,"field":"status","type":"batch"};
            loading.close()
            var resp = await this.$API.store.batch.post(submitData);
            if (resp.code == 0) {
                return this.$message.error(resp.msg);
            }
            this.$message.success(resp.msg);
            this.$emit("success");
        },
        handleSuccess(){
            this.$emit("success");
        },
        table_add(){
            this.$nextTick(() => {
                this.$refs.formMain.open("add")
            })
        },
    }
}
</script>