<template>
    <global-page title="筛选">
        <view class="search-form">
            <up-form labelPosition="left" labelWidth="auto">
                <up-form-item label="状态" prop="state" :borderBottom="true">
                    <global-picker v-model="formData.state" pickAlign="right" clearable dictkey="wa_state"></global-picker>
                </up-form-item>
                <up-form-item label="机号" prop="machineNumber" :borderBottom="true">
                    <global-picker pickAlign="right" v-model="formData.machineNumber" :options="deviceNumList" clearable filter></global-picker>
                </up-form-item>
                <up-form-item label="机型" prop="model" :borderBottom="true">
                    <global-picker v-model="formData.model" pickAlign="right" :options="baseStore.getTypeSelect" clearable filter></global-picker>
                </up-form-item>
                <up-form-item label="航司" prop="aviation" :borderBottom="true">
                    <global-picker
                        v-model="formData.aviation"
                        pickAlign="right"
                        :options="baseStore.getAirlineSelect"
                        clearable
                        filter
                    ></global-picker>
                </up-form-item>
                <up-form-item label="航站" prop="terminal" :borderBottom="true">
                    <global-picker
                        pickAlign="right"
                        v-model="formData.terminal"
                        clearable
                        :options="baseStore.getTerminalSelect"
                        filter
                    ></global-picker>
                </up-form-item>
                <up-form-item label="专业类别" prop="major" :borderBottom="true">
                    <global-picker pickAlign="right" v-model="formData.major" clearable :options="baseStore.getTerminalSelect" filter></global-picker>
                </up-form-item>
                <up-form-item label="AOG级别" prop="aogLevel" :borderBottom="true">
                    <global-picker
                        pickAlign="right"
                        v-model="formData.aogLevel"
                        clearable
                        :options="baseStore.getTerminalSelect"
                        filter
                    ></global-picker>
                </up-form-item>
                <up-form-item label="发生日期" :borderBottom="true">
                    <global-calendar
                        pickAlign="right"
                        v-model:startTime="formData.happenDateStart"
                        v-model:endTime="formData.happenDateEnd"
                        clearable
                    ></global-calendar>
                </up-form-item>
                <up-form-item label="AOG启动日期" :borderBottom="true">
                    <global-calendar
                        pickAlign="right"
                        v-model:startTime="formData.aogStartTimeStart"
                        v-model:endTime="formData.aogStartTimeEnd"
                        clearable
                    ></global-calendar>
                </up-form-item>
                <up-form-item label="发生地点" prop="happenAddr" :borderBottom="true">
                    <global-picker
                        pickAlign="right"
                        v-model="formData.happenAddr"
                        clearable
                        :options="baseStore.getTerminalSelect"
                        filter
                    ></global-picker>
                </up-form-item>
                <up-form-item label="故障描述" prop="faultDesc" :borderBottom="true">
                    <up-input v-model="formData.faultDesc" inputAlign="right" border="none" placeholder="请输入" clearable></up-input>
                </up-form-item>
            </up-form>
        </view>
        <template #bottom>
            <view class="footer-btn">
                <up-row gutter="10">
                    <up-col span="6">
                        <global-button type="primary" plain size="large" :radius="5" @tap="handleReset">重置</global-button>
                    </up-col>
                    <up-col span="6"><global-button type="primary" size="large" :radius="5" @tap="handleConfirm">确定</global-button></up-col>
                </up-row>
            </view>
        </template>
    </global-page>
</template>

<script setup>
import useBaseStore from 'mocp/store/base'
import { storeToRefs } from 'pinia'
import { cloneDeep } from 'lodash'
import { ref } from 'vue'
import useAogStore from 'mocp/store/aog'

//获取下拉框选项
const baseStore = useBaseStore()
const {
    selectList: { deviceNumList }
} = useBaseStore()
const aogStore = useAogStore()
//获取查询表单数据
const { searchData } = storeToRefs(aogStore)
const formData = ref(cloneDeep(searchData.value))
const handleReset = () => {
    aogStore.resetForm()
    uni.$mocpJump.redirectTo('/panel/aog/list')
    uni.$emit('aogReload')
}
const handleConfirm = () => {
    aogStore.setState('searchData', formData.value)
    uni.$mocpJump.redirectTo('/panel/aog/list')
    uni.$emit('aogReload')
}
</script>
<style lang="scss" scoped>
.search-form {
    padding: 24rpx 24rpx 0 24rpx;
    background: #fff;
}
.footer-btn {
    padding: 24rpx 32rpx;
    background-color: #fff;
}
</style>
