<template>
    <div class="bus-button">        
        <c-button type="primary" v-on:click="save">{{ $t('buttons.submit') }}</c-button>
        <c-button type="primary" v-on:click="pedding">{{ $t('buttons.stash') }}</c-button>
        <c-button type="primary" v-on:click="check">{{ $t('buttons.check') }}</c-button>
        <c-button v-on:click="exit">{{ $t('buttons.quit') }}</c-button>
    </div>
</template>
<script>
import commonApi from "~/mixin/commonApi"
import Utils from "~/utils"

export default {
    props:["$pntvm"],
    data(){
        return{            
        }
    },
    methods:{
        async save(){
            console.log(123)
            let vm = this.getVM();
            let result = await vm.save()
            console.log(result)
            if (result.respCode == SUCCESS) {
                this.$notify({
                    title: '成功',
                    message: '保存成功',
                    type: 'success'
                });
                this.$router.history.push("/business/trnrel")
            } else {
                this.$notify({
                    title: '失败',
                    message: '保存失败',
                    type: 'error'
                });
            }
        },
        async pedding(){
            let result = await this.getVM().pedding()
            console.log(result)
            if (result.respCode == SUCCESS) {
                this.$notify({
                    title: '成功',
                    message: '暂存成功',
                    type: 'success'
                });
                this.$router.history.push("/business/sptsel")
            } else {
                this.$notify({
                    title: '失败',
                    message: '暂存失败',
                    type: 'error'
                });
            }
        },
        async check(){
            let result = await this.getVM().checkAll()
            if(result.respCode != SUCCESS) {
                this.$notify.error({title: '错误',message: result.respMsg});
            } else {
                // 清除之前的校验状态
                this.getVM().$refs.modelForm.clearValidate()
                const fields = this.getVM().$refs.modelForm.fields
                const fieldErrors = result.fieldErrors;
                this.getVM().updateModel(result.data)
                Utils.positioningErrorMsg(fieldErrors, fields)
                const tab = Utils.positioningErrorMsg(fieldErrors, fields);
                if(tab) {
                    // tab切换之后，需出发tab-click的事件
                    this.getVM().tabClick(tab);
                }
            }
        },
        exit(){
            this.$confirm('您有未保存的数据，确定退出吗, 是否继续?', '提示', {
                confirmButtonText: '确定',
                cancelButtonText: '取消',
                type: 'warning'
            }).then(()=>{
                this.$router.history.push("/home")
            })
        },
        getVM(){
            return this.$pntvm
        }
    }
}
</script>
<style>
.bus-button {
    margin-bottom: 10px;
}

.bus-button :first-child {
    margin-left: 0;
}
</style>