<template>
    <hc-new-dialog is-table widths="90%" :show="isShow" title="预变更清单添加" @save="addModalSave" @close="addModalClose">
        <hc-card-item>
            <template #header>
                <div class="w-60">
                    <el-input v-model="searchForm.key1" placeholder="清单编号" />
                </div>
            </template>
            <template #extra>
                <el-link type="primary">显示已分解</el-link>
            </template>
            <hc-table
                :column="tableColumn" :datas="tableData" :loading="tableLoading"
                is-new :index-style="{ width: 60 }" is-check :check-style="{ width: 29 }"
                @selection-change="tableCheckChange"
            />
            <template #action>
                <hc-pages :pages="searchForm" @change="pageChange" />
            </template>
        </hc-card-item>
    </hc-new-dialog>
</template>

<script setup>
import { ref, watch } from 'vue'

const props = defineProps({
    ids: {
        type: [String, Number],
        default: '',
    },
})

//事件
const emit = defineEmits(['finish', 'close'])

//双向绑定
// eslint-disable-next-line no-undef
const isShow = defineModel('modelValue', {
    default: false,
})

//监听
watch(() => [
    props.ids,
], ([ids]) => {
    console.log('ids', ids)
}, { immediate: true })

//监听
watch(isShow, (val) => {
    if (val) {
        console.log('isShow', val)
    }
})

//搜索表单
const searchForm = ref({
    key1: null, current: 1, size: 10, total: 0,
})

//分页
const pageChange = ({ current, size }) => {
    searchForm.value.current = current
    searchForm.value.size = size
}

//表格数据
const tableLoading = ref(false)
const tableColumn = ref([
    { key: 'key1', name: '清单编号' },
    { key: 'key2', name: '清单名称' },
    { key: 'key3', name: '现行单价(元)' },
    { key: 'key4', name: '合同数量' },
    { key: 'key5', name: '合同变更后数量' },
    { key: 'key6', name: '已分解量' },
    { key: 'key7', name: '是否增补' },
])
const tableData = ref([
    { key1: '1111' },
])

const tableCheckChange = () => {

}

const addModalSave = () => {
    emit('finish')
    addModalClose()
}

//关闭弹窗
const addModalClose = () => {
    isShow.value = false
    emit('close')
}
</script>

<style scoped lang="scss">

</style>
