| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 |
- <!-- 搜索表单 -->
- <template>
- <el-form
- label-width="80px"
- 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="规则名称:">
- <el-input clearable v-model.trim="where.name" placeholder="请输入" />
- </el-form-item>
- <!-- <el-form-item label="规则状态:">
- <DictSelection
- dictName="规则状态"
- clearable
- v-model.trim="where.status"
- >
- </DictSelection>
- </el-form-item> -->
- <el-form-item label="创建时间:">
- <el-date-picker
- style="width: 100%"
- v-model="time"
- type="daterange"
- range-separator="至"
- start-placeholder="开始日期"
- end-placeholder="结束日期"
- value-format="yyyy-MM-dd HH:mm:ss"
- :default-time="['00:00:00', '23:59:59']"
- >
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
- <el-form-item label="规则编码:">
- <el-input clearable v-model.trim="where.code" placeholder="请输入" />
- </el-form-item>
- </el-col>
- <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
- <el-form-item label="规则类型:">
- <DictSelection
- dictName="规则类型"
- clearable
- v-model.trim="where.type"
- :listFormatte="listFormatte"
- >
- </DictSelection>
- </el-form-item>
- <!-- <el-form-item label="组织机构:">
- <auth-selection v-model.trim="where.deptIds" style="width: 100%"></auth-selection>
- </el-form-item> -->
- </el-col>
- <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
- <!-- <el-form-item label="创建人:">
- <el-input
- clearable
- v-model.trim="where.userName"
- placeholder="请输入"
- />
- </el-form-item> -->
- <div class="ele-form-actions">
- <el-button
- type="primary"
- icon="el-icon-search"
- class="ele-btn-icon"
- @click="search"
- size="small"
- >
- 查询
- </el-button>
- <el-button
- @click="reset"
- icon="el-icon-refresh-left"
- size="small"
- type="primary"
- >重置</el-button
- >
- </div>
- </el-col>
- </el-row>
- </el-form>
- </template>
- <script>
- export default {
- props: {
- filterType: {
- type: Array,
- default: () => {
- return [];
- }
- }
- },
- data() {
- // 默认表单数据
- const defaultWhere = {
- name: '',
- code: '',
- userName: '',
- type: '',
- status: 1,
- startTime: '',
- endTime: ''
- };
- return {
- // 表单数据
- where: { ...defaultWhere },
- treeData: [],
- time: []
- };
- },
- computed: {
- // 是否开启响应式布局
- styleResponsive() {
- return this.$store.state.theme.styleResponsive;
- }
- },
- created() {},
- methods: {
- listFormatte(list, valueName) {
- return list.filter((i) => ['1', '2', '5'].includes(i[valueName]));
- },
- /* 搜索 */
- search() {
- const [startTime = '', endTime = ''] = this.time || [];
- this.$emit('search', {
- ...this.where,
- startTime,
- endTime
- });
- },
- /* 重置 */
- reset() {
- this.time = [];
- this.where = { ...this.defaultWhere };
- this.search();
- }
- }
- };
- </script>
- <style lang="scss" scoped>
- .ele-form-actions {
- display: flex;
- align-items: center;
- justify-content: flex-end;
- }
- </style>
|