<!-- 搜索表单 -->
<template>
  <el-form
    label-width="100px"
    class="ele-form-search"
    @keyup.enter.native="search"
    @submit.native.prevent
  >
    <el-row :gutter="15">
      <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
        <el-form-item label="关键字：" prop="searchName">
          <el-input
            clearable
            placeholder="编码/主题/来访单位/发起人"
            v-model="params.searchName"
          ></el-input>
        </el-form-item>
      </el-col>
      <el-col v-bind="styleResponsive ? { lg: 4, md: 12 } : { span: 4 }">
        <el-form-item label="类型" prop="type">
          <DictSelection
            dictName="市场活动类型"
            clearable
            v-model="params.type"
          >
          </DictSelection>
        </el-form-item>
      </el-col>

      <el-col v-bind="styleResponsive ? { lg: 4, md: 12 } : { span: 4 }">
        <el-form-item label="来访时间" prop="targetTime">
          <el-date-picker
            v-model="params.targetTime"
            type="datetime"
            value-format="yyyy-MM-dd HH:mm:ss"
          >
          </el-date-picker>
        </el-form-item>
      </el-col>
      <el-col
        style="display: flex; justify-content: end"
        v-bind="styleResponsive ? { lg: 4, md: 6 } : { span: 4 }"
      >
        <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>
import dictMixins from '@/mixins/dictMixins';

export default {
  mixins: [dictMixins],

  data() {
    // 默认表单数据
    const defaultParams = {
      // code: '',
      // name: '',
      targetTime:'',
      type:'',
      searchName:""
    };
    return {
      defaultParams,
      // 表单数据
      params: { ...defaultParams }
    };
  },
  computed: {
    // 是否开启响应式布局
    styleResponsive() {
      return this.$store.state.theme.styleResponsive;
    }
  },
  methods: {
    search() {
      this.$emit('search', {
        ...this.params
      });
    },
    /*  重置 */
    reset() {
      this.createTime = [];
      this.params = Object.assign({}, { ...this.defaultParams });
      this.search();
    }
  }
};
</script>
