<template>
    <basic-container>
        <avue-crud :option="option" :table-loading="loading" :data="data" v-model="form" v-model:page="page" ref="crud"
            @row-del="rowDel" @search-change="searchChange" @search-reset="searchReset"
            @selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
            @refresh-change="refreshChange" @on-load="onLoad">
            <template #menu-left>
                <el-button type="primary" @click="processSubmitData()">审核通过</el-button>
               
            </template>
            <template #menu-right>
                 <el-button type="primary" @click="switchClick(true)" plain>已评审未审核</el-button>
                <el-button type="primary" @click="switchClick(false)" plain>未评审</el-button>
            </template>
            <template #menu="scope">

            </template>

        </avue-crud>
    </basic-container>
</template>
<script>
export default {
    components: {

    },
    data() {
        return {
            selectionList: [],
            option: {
                height: 'auto',
                calcHeight: 32,
                tip: false,
                // size: 'medium',
                simplePage: true,
                searchShow: true,
                searchMenuSpan: 6,
                searchIcon: true,
                searchIndex: 3,
                tree: false,
                border: true,
                index: true,
                selection: false,
                viewBtn: false,
                delBtn: false,
                addBtn: false,
                editBtn: false,
                addBtnText: '申请',
                editBtnText: '修改',
                viewBtnIcon: ' ',
                delBtnIcon: ' ',
                editBtnIcon: ' ',
                viewBtnText: '详情',
                labelWidth: 120,
                menuWidth: 180,
                dialogWidth: 640,
                dialogClickModal: false,
                searchEnter: true,
                excelBtn: false,
                filterBtn: true,
                searchShowBtn: false,
                columnSort: true,
                excelBtn: true,
                columnSort: true,
                showOverflowTooltip: true,
                menu: false,
                searchLabelPosition: 'left',
                searchGutter: 24,
                searchSpan: 6,
                menuAlign: 'left',
                gridBtn: false,
                searchMenuPosition: 'right',
                addBtnIcon: ' ',
                viewBtnIcon: ' ',
                delBtnIcon: ' ',
                editBtnIcon: ' ',
                align: 'center',
                column: [
                    {
                        label: '工艺能力',
                        prop: 'plate',
                        sortable: true,
                        filter: true,
                        span: 24,
                        search: false,
                         width: 130,
                        type:'select',
                        dicData:[
                            {
                                label:'镀金'
                            },
                            {
                                label:'镀银'
                            }
                        ]
                    },
                    {
                        label: '厂家代码',
                        prop: 'bsOemCustomer.ocCode',
                        bind: 'bsOemCustomer.ocCode',
                        search: false,
                        sortable: true,
                        filter: true,
                        span: 24,
                        width: 120,
                    },
                    {
                        label: '厂家名称',
                        prop: 'bsOemCustomer.ocName',
                        bind: 'bsOemCustomer.ocName',
                        search: false,
                        sortable: true,
                        filter: true,
                        span: 24,
                        width: 120,
                    },

                    {
                        label: '状态',
                        prop: 'omStatus',
                        type: 'select',
                        search: false,
                        sortable: true,
                        span: 24,
                        dicData: [
                            {
                                value: 1,
                                label: '新建'
                            },
                            {
                                value: 2,
                                label: '填写中'
                            },
                            {
                                value: 3,
                                label: '已评审'
                            },
                            {
                                value: 4,
                                label: '已审核'
                            }
                        ]

                    },
                    {
                        label: '计划准时完成',
                        children: [
                            {
                                label: '目标值(%)',
                                prop: 'jhzsTarget',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                            {
                                label: '实际值(%)',
                                prop: 'jhzsReality',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                            {
                                label: '绩效得分',
                                prop: 'jhzsNum',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                        ]
                    },
                    {
                        label: '重点零件完成率',
                        children: [
                            {
                                label: '目标值(%)',
                                prop: 'zdljTarget',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                            {
                                label: '实际值(%)',
                                prop: 'zdljReality',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                            {
                                label: '绩效得分',
                                prop: 'zdljNum',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                        ]
                    },
                    {
                        label: '清欠项',
                        children: [
                            {
                                label: '目标值',
                                prop: 'qqxTarget',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                            {
                                label: '实际值',
                                prop: 'qqxReality',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                            {
                                label: '绩效得分',
                                prop: 'qqxNum',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                        ]
                    },
                    {
                        label: '客户投诉(扣分项)',
                        children: [
                            {
                                label: '目标值',
                                prop: 'produceTsTarget',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                            {
                                label: '实际值',
                                prop: 'produceTsReality',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                            {
                                label: '绩效得分',
                                prop: 'produceTsNum',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                        ]
                    },
                    {
                        label: '交付绩效',
                        prop: 'payMerits',
                        search: false,
                        sortable: true,
                        filter: true,
                        span: 24,
                        width: 120,
                    },
                    {
                        label: '后工序审理单',
                        children: [
                            {
                                label: '目标值',
                                prop: 'hgxTarget',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                            {
                                label: '实际值',
                                prop: 'hgxReality',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                            {
                                label: '绩效得分',
                                prop: 'hgxNum',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                        ]
                    },
                    {
                        label: 'DPPM',
                        children: [
                            {
                                label: '目标值',
                                prop: 'dppmTarget',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                            {
                                label: '实际值',
                                prop: 'dppmReality',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                            {
                                label: '绩效得分',
                                prop: 'dppmNum',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                        ]
                    },
                    {
                        label: '低级错误',
                        children: [
                            {
                                label: '目标值',
                                prop: 'djcwTarget',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                            {
                                label: '实际值',
                                prop: 'djcwReality',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                            {
                                label: '绩效得分',
                                prop: 'djcwNum',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                        ]
                    },
                    {
                        label: '顾客投诉(扣分项)',
                        children: [
                            {
                                label: '目标值',
                                prop: 'qualityTsTarget',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                            {
                                label: '实际值',
                                prop: 'qualityTsReality',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                            {
                                label: '绩效得分',
                                prop: 'qualityTsNum',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                        ]
                    },
                    {
                        label: '批次性(扣分项)',
                        children: [
                            {
                                label: '目标值',
                                prop: 'pcxTarget',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                            {
                                label: '实际值',
                                prop: 'pcxReality',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                            {
                                label: '绩效得分',
                                prop: 'pcxNum',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                        ]
                    },
                    {
                        label: '多余物(扣分项)',
                        children: [
                            {
                                label: '目标值',
                                prop: 'dywTarget',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                            {
                                label: '实际值',
                                prop: 'dywReality',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                            {
                                label: '绩效得分',
                                prop: 'dywNum',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                        ]
                    },
                    {
                        label: '清零问题(扣分项)',
                        children: [
                            {
                                label: '目标值',
                                prop: 'qlwtTarget',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                            {
                                label: '实际值',
                                prop: 'qlwtReality',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                            {
                                label: '绩效得分',
                                prop: 'qlwtNum',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                            },
                        ]
                    },
                    {
                        label: '质量绩效',
                        prop: 'qualityMerits',
                        search: false,
                        sortable: true,
                        filter: true,
                        span: 24,
                        width: 120,
                    },
                    {
                        label: '发展能力',
                        children: [
                            {
                                label: '加分',
                                prop: 'growAbility',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                        ]
                    },
                    {
                        label: '重大事项',
                        children: [
                            {
                                label: '加分',
                                prop: 'ajorIssues',
                                search: false,
                                sortable: true,
                                filter: true,
                                span: 24,
                                width: 120,
                                cell: true,
                                rules: [
                                    { required: true, message: '请输入姓名', trigger: 'blur' }
                                ]
                            },
                        ]
                    },
                    {
                        label: '最终得分',
                        prop: 'endScore',
                        search: false,
                        sortable: true,
                        filter: true,
                        span: 24,
                        width: 120,
                    },
                    {
                        label: '绩效等级',
                        prop: 'meritsScore',
                        search: false,
                        sortable: true,
                        filter: true,
                        span: 24,
                        width: 120,
                    },
                    {
                        label: '排名',
                        prop: 'ranking',
                        search: false,
                        sortable: true,
                        filter: true,
                        span: 24,
                    },
                ]
            },
            form: {

            },
            page: {
                pageSize: 10,
                currentPage: 1,
                total: 0,
            },
            omId: null,
            isOpen: false
        }
    },
    methods: {
        processSubmitData() {
            this.$confirm('选中数据是否审核通过?', '提示', {
                confirmButtonText: '确认',
                cancelButtonText: '取消',
                type: 'warning'
            })
                .then(() => {

                })
            // const dataList = this.$refs.myTable.getTableData().tableData;
            // if (dataList.length === 0) {
            //     this.$message.warning('没有需要审核的数据');
            //     return;
            // }
            // this.$ajax
            //     .post('oemMerits/processSubmit', {
            //         dataList
            //     })
            //     .then((res) => {
            //         if (res.code === 0) {
            //             this.$message.success('审核成功');
            //             this.queryTable();
            //         }
            //     });
        },
        switchClick(flag) {
            this.isOk = flag;
            //   this.queryTable();
        },
        updateData() {
            // this.$refs.myTable.fullValidate((errMap) => {
            //     if (errMap) {
            //         return;
            //     }
            //     const dataList = this.$refs.myTable.getRecordset().updateRecords;
            //     this.$ajax
            //         .post('oemMerits/updateData', {
            //             dataList
            //         })
            //         .then((res) => {
            //             if (res.code === 0) {
            //                 this.$message.success('重新计算成功');
            //                 this.queryTable();
            //             }
            //         });
            // });
        },
        submitData() {
            //   this.$refs.myTable.fullValidate((errMap) => {
            //     if (errMap) {
            //       return;
            //     }
            //     const dataList = this.$refs.myTable.getTableData().tableData;
            //     this.$ajax
            //       .post('oemMerits/submitData', {
            //         dataList
            //       })
            //       .then((res) => {
            //         if (res.code === 0) {
            //           this.$message.success('保存成功');
            //           this.tableData = [];
            //         }
            //       });
            //   });
        },

        addEdit() {
            this.isOpen = true
        },
        closeDialog() {
            this.isOpen = false
        },
        deleteClick(omId) {
            this.$confirm('是否删除此数据?', '提示', {
                confirmButtonText: '确认',
                cancelButtonText: '取消',
                type: 'warning'
            })
                .then(() => {
                    // this.$ajax.get('oemMerits/deleteByKey/' + omId).then((res) => {
                    //     if (this.$ifAjax(res)) {
                    //         this.$message.success(this.$t('global.deleteOk'));
                    //         this.$refs.myTable.load();
                    //     }
                    // });
                })
                .catch(() => {
                    this.$message.info('已取消');
                });
        },
        async editClick(omId) {
            this.omId = omId;
            // const res = await this.$ajax.get('oemMerits/getByKey/' + omId);
            // if (this.$ifAjax(res)) {
            //     this.rowItem = res.data;
            //     this.editOpen = true;
            // }
        },

        handleDelete() {
            if (this.selectionList.length === 0) {
                this.$message.warning('请选择至少一条数据');
                return;
            }
            this.$confirm('确定将选择数据删除?', {
                confirmButtonText: '确定',
                cancelButtonText: '取消',
                type: 'warning',
            }).then(() => {
            })
        },
        // 多选
        selectionChange(list) {
            this.selectionList = list;
        },
        onLoad() {
            this.loading = true
            this.data = [
                {
                    "bsOemCustomer": {
                        "abbreviation": "L076",
                        "address": "aaa",
                        "codeAndName": "L076/L076",
                        "contactMan": "aaa",
                        "contactPhone": "aaa",
                        "craftAbility": "镀银、挂镀银、喷砂、涂色标、铜合金化学镀镍、电镀镍、DL零件包装",
                        "curStatus": 0,
                        "curStatusText": "正常供货",
                        "email": "aaa",
                        "keyValue": 21,
                        "limitType": 0,
                        "ocCode": "L076",
                        "ocId": 21,
                        "ocName": "L076",
                        "oemPassword": null,
                        "partCodeYesOrNo": false,
                        "qualification": 10,
                        "qualificationTitle": null,
                        "region": "陕西省",
                        "updateTime": "2023-04-14 18:33:49"
                    },
                    "createMan": {
                        "userId": 541,
                        "userName": "崔殿龙"
                    },
                    "createTime": "2023-11-10 18:06:40",
                    "keyValue": 1,
                    "oaaId": 1,
                    "plate": "222"
                },
                {
                    "bsOemCustomer": {
                        "abbreviation": "L120",
                        "address": "aaa",
                        "codeAndName": "L120/L120",
                        "contactMan": "aaa",
                        "contactPhone": "aaa",
                        "craftAbility": "不锈钢涂福斯润滑剂、DL零件包装、",
                        "curStatus": 0,
                        "curStatusText": "正常供货",
                        "email": "aaa",
                        "keyValue": 2,
                        "limitType": 0,
                        "ocCode": "L120",
                        "ocId": 2,
                        "ocName": "L120",
                        "oemPassword": null,
                        "partCodeYesOrNo": false,
                        "qualification": 0,
                        "qualificationTitle": "民品&普军",
                        "region": "江苏省",
                        "updateTime": "2023-04-14 18:33:49"
                    },
                    "createMan": {
                        "userId": 541,
                        "userName": "崔殿龙"
                    },
                    "createTime": "2023-11-10 18:06:40",
                    "keyValue": 4,
                    "oaaId": 4,
                    "plate": "222"
                },
                {
                    "bsOemCustomer": {
                        "abbreviation": "L070",
                        "address": "aaa",
                        "codeAndName": "L070/L070",
                        "contactMan": "aaa",
                        "contactPhone": "aaa",
                        "craftAbility": "滚镀金或振镀金、局部镀厚金、闪镀金、镀铂金、局部退火",
                        "curStatus": 0,
                        "curStatusText": "正常供货",
                        "email": "aaa",
                        "keyValue": 5,
                        "limitType": 0,
                        "ocCode": "L070",
                        "ocId": 5,
                        "ocName": "L070",
                        "oemPassword": null,
                        "partCodeYesOrNo": false,
                        "qualification": 10,
                        "qualificationTitle": null,
                        "region": "江苏省",
                        "updateTime": "2023-04-14 18:33:49"
                    },
                    "createMan": {
                        "userId": 541,
                        "userName": "崔殿龙"
                    },
                    "createTime": "2023-12-06 17:24:48",
                    "keyValue": 21,
                    "oaaId": 21,
                    "plate": "222"
                }
            ]
            this.page.total = this.data.length
            this.loading = false
            setTimeout(() => {
                this.selectionClear()
            }, 500)
        }
    }
}
</script>
<style lang="scss" scoped></style>