<template>
  <div>
    <el-dialog title="高级查询" :visible="moreQueryVisible" @close="close" width="66%">
      <el-form inline ref="queryForm" label-position="top" :model="formData">
        <el-form-item label="货主" prop="ownerCode">
          <PublicQuery
            title="货主"
            baseUrl="/crd_web/crdweb"
            cfgKey="crdWmsCustomer"
            :valueField.sync="formData.ownerCode"
            :textField.sync="formData.ownerName"
          ></PublicQuery>
        </el-form-item>
        <el-form-item label="质检单号" prop="qcNo">
          <el-input v-model="formData.qcNo"></el-input>
        </el-form-item>
        <el-form-item label="质检阶段" prop="qcPhase">
          <el-select multiple v-model="formData.qcPhase">
            <el-option label="收货前" value="RCV"></el-option>
            <el-option label="收货后上架前" value="PA"></el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="状态" prop="status">
          <el-select multiple v-model="formData.status">
            <el-option label="创建" value="00"></el-option>
            <el-option label="部分质检" value="10"></el-option>
            <el-option label="完全质检" value="20"></el-option>
            <el-option label="关闭订单" value="99"></el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="审核状态" prop="auditStatus">
          <el-select multiple v-model="formData.auditStatus">
            <el-option label="不审核" value="90"></el-option>
            <el-option label="已审核" value="99"></el-option>
          </el-select>
        </el-form-item>
       <el-form-item label="单据号" prop="orderNo">
          <el-input v-model="formData.orderNo"></el-input>
        </el-form-item>
        <el-form-item label="单据类型" prop="orderType">
          <el-select  v-model="formData.orderType">
            <el-option label="入库单" value="ASN"></el-option>
            <el-option label="出库单" value="SO"></el-option>
            <el-option label="装车单" value="LD"></el-option>
            <el-option label="调整单" value="AD"></el-option>
            <el-option label="转移单" value="TF"></el-option>
            <el-option label="质检单" value="QC"></el-option>
            <el-option label="加工单" value="KIT"></el-option>
            <el-option label="补货单" value="RP"></el-option>
            <el-option label="移动单" value="MV"></el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="优先级别" prop="priority">
          <el-select  v-model="formData.priority">
            <el-option label="1最高" value="1"></el-option>
            <el-option label="2普通+" value="2"></el-option>
            <el-option label="3普通" value="3"></el-option>
            <el-option label="4普通-" value="4"></el-option>
            <el-option label="5最低" value="5"></el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="订单时间" prop="asnType">
          <el-date-picker
            v-model="date"
            type="datetimerange"
            format="yyyy-MM-dd HH:mm"
            value-format="yyyy-MM-dd HH:mm:ss"
            :default-time="['00:00:00', '23:59:59']"
            range-separator="至"
            start-placeholder="开始日期"
            end-placeholder="结束日期"
            :picker-options="pickerOptions2"
            @change="getSTime">
          </el-date-picker>
        </el-form-item>
      </el-form>
      <div class="more-query-btn">
        <el-button v-auth="50300030101" type="primary" @click="submitForm">查询</el-button>
        <el-button v-auth="50300030101" @click="resetForm('queryForm')">重置</el-button>
      </div>
    </el-dialog>
  </div>
</template>
<script>
import { time } from 'apec-fe-utils'
import { today, yesterday, week, month, twoMonths, threeMonths } from '@/config/shortcuts'
export default {
  data () {
    return {
      formData: {
        asnType: [],
        soNo: [],
      },
      pickerOptions2: {
        shortcuts: [today, yesterday, week, month, twoMonths, threeMonths]
      },
      date: '',
    }
  },
  mounted () {
  },
  props: {
    moreQueryVisible: Boolean
  },
  methods: {
    // 获得时间
    getSTime (val) {
      this.formData.orderTimeFm = val ? val[0] : ''
      this.formData.orderTimeTo = val ? val[1] : ''
    },

    // 关闭弹窗
    close () {
      this.$emit('close')
    },

    // 提交表单
    submitForm () {
      this.format()
      this.$emit('toGetList', this.formData)
      this.$refs['queryForm'].resetFields()
    },

    // 重置表单
    resetForm () {
      this.$refs['queryForm'].resetFields()
    },

    // 格式化对象数据
    format () {
      for (const key in this.formData) {
        if (this.formData.hasOwnProperty(key)) {
          const element = this.formData[key]
          if (Array.isArray(element)) {
            this.formData[key] = element.join(',')
          }
        }
      }
      return this.formData
    }
  }
}
</script>
