<!-- 搜索表单 --> 6
<template>
  <el-form
    label-width="77px"
    class="ele-form-search"
    @keyup.enter.native="search"
    @submit.native.prevent
  >
    <el-row :gutter="15">
      <el-col v-bind="styleResponsive ? { lg: 6, md: 10 } : { span: 6 }">
        <el-form-item label="批次号:">
          <el-input clearable v-model="where.batchNo" placeholder="请输入" />
        </el-form-item>
      </el-col>

      <el-col v-bind="styleResponsive ? { lg: 6, md: 10 } : { span: 6 }">
        <el-form-item label="计划号:">
          <el-input
            clearable
            v-model="where.standardCode"
            placeholder="请输入"
          />
        </el-form-item>
      </el-col>
      <el-col v-bind="styleResponsive ? { lg: 6, md: 10 } : { span: 6 }">
        <el-form-item label="产品编码:">
          <el-input
            clearable
            v-model="where.productCode"
            placeholder="请输入"
          />
        </el-form-item>
      </el-col>
      <el-col v-bind="styleResponsive ? { lg: 6, md: 10 } : { span: 6 }">
        <el-form-item label="产品规格:">
          <el-input
            clearable
            v-model="where.specification"
            placeholder="请输入"
          />
        </el-form-item>
      </el-col>

      <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
        <el-form-item label="组织机构:">
          <auth-selection
            data-type="Array"
            v-model="where.deptIds"
            style="width: 100%"
          ></auth-selection>
        </el-form-item>
      </el-col>
      <el-col
        v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }"
        style="width: 300px"
      >
        <el-form-item label="日期" prop="createTime">
          <el-date-picker
            v-model="params.createTime"
            style="width: 240px"
            value-format="yyyy-MM-dd HH:mm:ss"
            type="daterange"
            range-separator="-"
            start-placeholder="开始日期"
            end-placeholder="结束日期"
            :default-time="['00:00:00', '23:59:59']"
          />
        </el-form-item>
      </el-col>
      <el-col
        style="display: flex; justify-content: flex-end"
        v-bind="styleResponsive ? { lg: 18, md: 18 } : { span: 18 }"
      >
        <div class="ele-form-actions">
          <el-button
            type="primary"
            icon="el-icon-search"
            class="ele-btn-icon"
            @click="search"
          >
            查询
          </el-button>
          <el-button @click="reset">重置</el-button>
        </div>
      </el-col>
    </el-row>
  </el-form>
</template>

<script>
export default {
  data() {
    // 默认表单数据
    const defaultWhere = {
      batchNo: '',
      productName: '',
      productCode: '',
      specification: '',
      deptIds: [],
      createTime: []
    };
    return {
      defaultWhere,
      // 表单数据
      where: { ...defaultWhere }
    };
  },
  computed: {
    // 是否开启响应式布局
    styleResponsive() {
      return this.$store.state.theme.styleResponsive;
    }
  },
  methods: {
    /* 搜索 */
    search() {
      const where = { ...this.where };
      if (where.createTime?.length) {
        where.startTime = where.createTime[0];
        where.endTime = where.createTime[1];
      }
      delete where.createTime;
      this.$emit('search', where);
    },
    /*  重置 */
    reset() {
      this.where = { ...this.defaultWhere };
      this.search();
    }
  }
};
</script>
