yusheng 1 rok temu
rodzic
commit
49c606d48d

+ 2 - 2
src/components/addDoc/api/index.js

@@ -112,8 +112,8 @@ export async function getCode(id) {
   return Promise.reject(new Error(res.data.message));
 }
 // 编码方案
-export async function listCode() {
-  const res = await request.get(`/main/business_code_category/listCode/WD0001`);
+export async function listCode(code) {
+  const res = await request.get(`/main/business_code_category/listCode/`+code);
   if (res.data.code == 0) {
     return res.data.data;
   }

+ 46 - 24
src/components/addDoc/file-edit.vue

@@ -10,9 +10,28 @@
     :title="title"
     ref="Emodal"
     :maxable="true"
+    :resizable="true"
   >
     <el-form ref="form" :model="form" :rules="rules" label-width="82px">
       <el-row :gutter="15">
+        <el-col :span="24">
+          <el-form-item label="文档位置" prop="directoryId">
+            <el-cascader
+              style="width: 100%"
+              v-model="form.directoryId"
+              :options="folderList"
+              @change="initFileCode"
+              ref="cascaderRef"
+              :props="{
+                value: 'id',
+                label: 'name',
+                children: 'sonDirectoryList',
+                emitPath: false,
+                checkStrictly: true
+              }"
+            ></el-cascader>
+          </el-form-item>
+        </el-col>
         <el-col :span="24">
           <el-form-item label="编码分类" prop="codeType">
             <ele-tree-select
@@ -68,22 +87,7 @@
             </div>
           </el-form-item>
         </el-col>
-        <el-col :span="24">
-          <el-form-item label="文档位置" prop="directoryId">
-            <el-cascader
-              style="width: 100%"
-              v-model="form.directoryId"
-              :options="folderList"
-              :props="{
-                value: 'id',
-                label: 'name',
-                children: 'sonDirectoryList',
-                emitPath: false,
-                checkStrictly: true
-              }"
-            ></el-cascader>
-          </el-form-item>
-        </el-col>
+
         <el-col :span="24">
           <el-form-item label="备注" prop="remark">
             <el-input
@@ -121,7 +125,7 @@
     data() {
       const defaultForm = {
         name: '', //名称
-        type: '', //类型
+        type: '1', //类型
         sizeUnit: '', //大小,
         unit: '', //单位
         remark: '', //备注
@@ -156,7 +160,8 @@
         loading: false,
         showEditFlag: false,
         title: '',
-        type: '新建附件'
+        type: '新建附件',
+        nodeDataCode: ''
       };
     },
     computed: {
@@ -175,15 +180,31 @@
       setFolderList(this.folderList); //权限过滤
     },
     methods: {
-      async open() {
-        this.showEditFlag = true;
-        this.list = await selectTreeList();
-        this.options = await listCode();
+      async getTreeCode() {
+        let nodeData = {};
+        await this.$nextTick(() => {
+          nodeData = this.$refs.cascaderRef.getCheckedNodes();
+        });
+        this.nodeDataCode = nodeData[0]?.data?.code;
+      },
+      async initFileCode() {
+        await this.getTreeCode();
+        this.options = this.nodeDataCode
+          ? await listCode(this.nodeDataCode)
+          : [];
         if (this.options.length > 0) {
           this.form.businessCodeId = this.options[0].id;
+        }else{
+          this.form.businessCodeId=''
         }
+      },
+      async open() {
+        this.showEditFlag = true;
+        this.list = await selectTreeList();
+        await this.initFileCode();
         this.setTree(this.list);
       },
+
       setTree(data) {
         data.forEach((item) => {
           item.sonDirectoryList = item.sonDirectoryList.filter(
@@ -198,7 +219,8 @@
         let data = await listParentId({
           pageNum: 1,
           size: 100,
-          parentId: val
+          parentId: val,
+          code: this.nodeDataCode
         });
         this.options = data.list.filter((item) => item.type == 2);
         this.form.businessCodeId = '';
@@ -234,7 +256,7 @@
       },
 
       cancel() {
-        this.form = { ...this.defaultForm };
+        this.form = { ...this.defaultForm, directoryId: this.form.directoryId };
         this.$refs.form.clearValidate();
         this.showEditFlag = false;
       }

+ 1 - 10
src/components/addDoc/getCode.vue

@@ -9,6 +9,7 @@
     @close="cancel"
     title="申请编码"
     :maxable="true"
+    :resizable="true"
   >
     <el-form ref="form" :model="form" :rules="rules" label-width="82px">
       <el-row :gutter="15">
@@ -121,16 +122,6 @@
       },
       async type1Change(val) {
         this.form.code = await getCode(val);
-        // let data = await pageSegment({
-        //   pageNum: 1,
-        //   size: 100,
-        //   businessCodeCategoryId: val
-        // });
-        // data.list.map((item) =>{
-        //   console.log(item,'dsds')
-        // });
-        // console.log(code, 'ds');
-        // this.options = data.list.map((item) => item.type == 2);
       },
       /* 保存编辑 */
       save() {

+ 0 - 1
src/components/addDoc/index.vue

@@ -53,7 +53,6 @@
     watch: {
       value: {
         handler(newVal) {
-          console.log(newVal, '=======');
           this.selectVal = newVal || [];
         },
         immediate: true

+ 129 - 127
src/components/addDoc/main.vue

@@ -7,6 +7,7 @@
     append-to-body
     ref="Emodal"
     :maxable="true"
+    :resizable="true"
   >
     <!-- 数据表格 -->
     <ele-pro-table
@@ -62,6 +63,7 @@
       custom-class="ele-dialog-form"
       append-to-body
       :maxable="true"
+    :resizable="true"
     >
       <doc_template
         :disabledTableList="tableList"
@@ -77,140 +79,140 @@
 </template>
 
 <script>
-  import doc_template from './doc_template.vue';
-  import fileEdit from './file-edit.vue';
-  import browse from './browse.vue';
-  import { queryIds } from './api';
+import doc_template from './doc_template.vue';
+import fileEdit from './file-edit.vue';
+import browse from './browse.vue';
+import { queryIds } from './api';
 
-  export default {
-    components: { doc_template, fileEdit, browse },
+export default {
+  components: { doc_template, fileEdit, browse },
 
-    data() {
-      return {
-        fileId: [],
-        fileShow: false,
-        showEditFlag: false,
-        tableList: [],
-        type: 'add',
-        columns: [
-          {
-            label: '编码',
-            prop: 'code',
-            width: 180,
-            align: 'center',
-            showOverflowTooltip: true
-          },
-          {
-            prop: 'name',
-            label: '文档名称',
-            align: 'center',
-            slot: 'name',
-            showOverflowTooltip: true,
-            minWidth: 200
-          },
-          {
-            prop: 'storagePath',
-            label: '文件名称',
-            align: 'center',
+  data() {
+    return {
+      fileId: [],
+      fileShow: false,
+      showEditFlag: false,
+      tableList: [],
+      type: 'add',
+      columns: [
+        {
+          label: '编码',
+          prop: 'code',
+          width: 180,
+          align: 'center',
+          showOverflowTooltip: true
+        },
+        {
+          prop: 'name',
+          label: '文档名称',
+          align: 'center',
+          slot: 'name',
+          showOverflowTooltip: true,
+          minWidth: 200
+        },
+        {
+          prop: 'storagePath',
+          label: '文件名称',
+          align: 'center',
 
-            showOverflowTooltip: true,
-            minWidth: 200,
-            formatter: (_row, _column, cellValue) => {
-              return cellValue && cellValue[0]?.name;
-            }
-          },
-          {
-            prop: 'version',
-            label: '版本',
-            align: 'center',
-            showOverflowTooltip: true,
-            minWidth: 100
-          },
-
-          {
-            prop: 'createUserName',
-            label: '创建人',
-            align: 'center',
-            showOverflowTooltip: true,
-            minWidth: 100
-          },
-          {
-            prop: 'createTime',
-            label: '创建时间',
-            align: 'center',
-            showOverflowTooltip: true,
-            minWidth: 160
-          },
+          showOverflowTooltip: true,
+          minWidth: 200,
+          formatter: (_row, _column, cellValue) => {
+            return cellValue && cellValue[0]?.name;
+          }
+        },
+        {
+          prop: 'version',
+          label: '版本',
+          align: 'center',
+          showOverflowTooltip: true,
+          minWidth: 100
+        },
 
-          {
-            prop: 'sizeUnit',
-            label: '文档大小',
-            align: 'center',
-            showOverflowTooltip: true,
-            minWidth: 100
-          },
+        {
+          prop: 'createUserName',
+          label: '创建人',
+          align: 'center',
+          showOverflowTooltip: true,
+          minWidth: 100
+        },
+        {
+          prop: 'createTime',
+          label: '创建时间',
+          align: 'center',
+          showOverflowTooltip: true,
+          minWidth: 160
+        },
 
-          {
-            columnKey: 'action',
-            label: '操作',
-            width: 200,
-            align: 'center',
-            resizable: false,
-            slot: 'action',
-            showOverflowTooltip: true
-          }
-        ]
-      };
-    },
-    created() {},
+        {
+          prop: 'sizeUnit',
+          label: '文档大小',
+          align: 'center',
+          showOverflowTooltip: true,
+          minWidth: 100
+        },
 
-    methods: {
-      open(fileId, type) {
-        //查看详情:view 新增:add
-        this.showEditFlag = true;
-        this.fileId = fileId || [];
-        if (type) {
-          this.type = type;
+        {
+          columnKey: 'action',
+          label: '操作',
+          width: 200,
+          align: 'center',
+          resizable: false,
+          slot: 'action',
+          showOverflowTooltip: true
         }
-        this.init();
-      },
-      fileEditOpen() {
-        this.$refs.fileEditRef.open();
-      },
-      remove(row) {
-        this.tableList = this.tableList.filter((item) => item.code != row.code);
-        this.fileId = this.tableList.map((item) => item.id);
-      },
-      async init() {
-        if (this.fileId.length > 0) {
-          this.tableList = await queryIds({ ids: "'" + this.fileId + "'" });
-        } else {
-          this.tableList = [];
-        }
-      },
-      done(id) {
-        this.fileId.push(...id);
-        this.init();
-      },
-      browseOpen(row) {
-        this.$refs.browseRef.open(row);
-      },
-      addFile() {
-        this.$emit(
-          'success',
-          this.tableList.map((item) => item.id)
-        );
-        this.showEditFlag = false;
-      },
-      addTemplate() {
-        let list = this.$refs.doc_templateRef.getTableList();
-        this.fileShow = false;
-        if (list.length == 0) {
-          this.$message.error('请选择一条数据');
-          return;
-        }
-        this.tableList.push(...list);
+      ]
+    };
+  },
+  created() {},
+
+  methods: {
+    open(fileId, type) {
+      //查看详情:view 新增:add
+      this.showEditFlag = true;
+      this.fileId = fileId || [];
+      if (type) {
+        this.type = type;
+      }
+      this.init();
+    },
+    fileEditOpen() {
+      this.$refs.fileEditRef.open();
+    },
+    remove(row) {
+      this.tableList = this.tableList.filter((item) => item.code != row.code);
+      this.fileId = this.tableList.map((item) => item.id);
+    },
+    async init() {
+      if (this.fileId.length > 0) {
+        this.tableList = await queryIds({ ids: "'" + this.fileId + "'" });
+      } else {
+        this.tableList = [];
+      }
+    },
+    done(id) {
+      this.fileId.push(...id);
+      this.init();
+    },
+    browseOpen(row) {
+      this.$refs.browseRef.open(row);
+    },
+    addFile() {
+      this.$emit(
+        'success',
+        this.tableList.map((item) => item.id)
+      );
+      this.showEditFlag = false;
+    },
+    addTemplate() {
+      let list = this.$refs.doc_templateRef.getTableList();
+      this.fileShow = false;
+      if (list.length == 0) {
+        this.$message.error('请选择一条数据');
+        return;
       }
+      this.tableList.push(...list);
     }
-  };
+  }
+};
 </script>

+ 255 - 0
src/components/seekPage.vue

@@ -0,0 +1,255 @@
+<template>
+  <div class="index_box">
+    <el-form label-width="90px" :inline="true">
+      <el-form-item v-for="(item, i) in seekList" :key="i">
+        <el-form-item
+          :label="item.label"
+          :label-width="item.labelWidth + 'px'"
+          v-if="i <= formLength - 1"
+        >
+          <!-- input 输入 -->
+          <div>
+            <div v-if="item.type == 'input'">
+              <el-input
+                clearable
+                v-model="defaultWhere[item.value]"
+                :placeholder="item.placeholder || '请输入内容'"
+                :style="{ width: item.width ? item.width + 'px' : '220px' }"
+              />
+            </div>
+            <div v-if="item.type == 'select'">
+              <el-select
+                clearable
+                :v-model="defaultWhere[item.value]"
+                :placeholder="item.placeholder || '请输入内容'"
+                :multiple="item.multiple ? item.multiple : false"
+                :filterable="item.filterable ? item.filterable : true"
+                :style="{ width: item.width ? item.width + 'px' : '220px' }"
+              >
+                <el-option
+                  v-for="(op, i) in item.selectList"
+                  :label="op.label"
+                  :value="op.value"
+                  :key="i"
+                ></el-option>
+              </el-select>
+            </div>
+            <div v-if="item.type == 'date'">
+              <el-date-picker
+                v-model="defaultWhere[item.value]"
+                @visible-change="change"
+                :type="item.dateType || 'daterange'"
+                range-separator="至"
+                start-placeholder="开始日期"
+                end-placeholder="结束日期"
+                value-format="yyyy-MM-dd HH:mm:ss"
+                :style="{ width: item.width ? item.width + 'px' : '220px' }"
+              >
+              </el-date-picker>
+            </div>
+            <div v-if="item.type == 'personSelect'">
+              <personSelect
+              v-model="defaultWhere[item.value]"
+                :style="{ width: item.width ? item.width + 'px' : '220px' }"
+              ></personSelect>
+            </div>
+          </div>
+        </el-form-item>
+      </el-form-item>
+
+      <el-form-item>
+        <el-dropdown
+          ref="dropdownref"
+          trigger="click"
+          :hide-on-click="false"
+          v-model="dropdownVisible"
+        >
+          <div v-if="seekList.length > formLength">
+            <span class="el-dropdown-link">
+              更多选项<i class="el-icon-arrow-down el-icon--right"></i>
+            </span>
+            <el-dropdown-menu slot="dropdown">
+              <div class="padding">
+                <el-form label-position="left">
+                  <el-form-item
+                    v-for="(item, i) in deboListRow"
+                    :key="i"
+                    :inline="true"
+                    label-position="left"
+                  >
+                    <el-form-item
+                      :label-width="
+                        item.labelWidth ? item.labelWidth : '90' + 'px'
+                      "
+                      :inline="true"
+                      :label="item.label"
+                    >
+                      <div v-if="item.type == 'input'">
+                        <el-input
+                          clearable
+                          v-model="defaultWhere[item.value]"
+                          :placeholder="item.placeholder || '请输入内容'"
+                          :style="{
+                            width: item.width ? item.width + 'px' : '220px'
+                          }"
+                        />
+                      </div>
+                      <div v-if="item.type == 'select'">
+                        <el-select
+                          clearable
+                          v-model="defaultWhere[item.value]"
+                          :multiple="item.multiple ? item.multiple : false"
+                          :filterable="item.filterable ? item.filterable : true"
+                          :placeholder="item.placeholder || '请输入内容'"
+                          :style="{
+                            width: item.width ? item.width + 'px' : '220px'
+                          }"
+                          @visible-change="change"
+                          @change="handerChange"
+                        >
+                          <el-option
+                            v-for="(op, i) in item.selectList"
+                            :label="op.label"
+                            :value="op.value"
+                            :key="i"
+                          ></el-option>
+                        </el-select>
+                      </div>
+
+                      <div v-if="item.type == 'date'">
+                        <el-date-picker
+                          v-model="defaultWhere[item.value]"
+                          @blur="change"
+                          :type="item.dateType || 'daterange'"
+                          range-separator="至"
+                          start-placeholder="开始日期"
+                          end-placeholder="结束日期"
+                          value-format="yyyy-MM-dd HH:mm:ss"
+                          :style="{
+                            width: item.width ? item.width + 'px' : '220px'
+                          }"
+                        >
+                        </el-date-picker>
+                      </div>
+                    </el-form-item>
+                  </el-form-item>
+                </el-form>
+              </div>
+            </el-dropdown-menu>
+          </div>
+        </el-dropdown>
+      </el-form-item>
+
+      <el-form-item>
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          class="ele-btn-icon"
+          @click="search"
+        >
+          查询
+        </el-button>
+        <el-button @click="reset" icon="el-icon-refresh-left" type="primary"
+          >重置</el-button
+        >
+      </el-form-item>
+    </el-form>
+  </div>
+</template>
+
+<script>
+  import personSelect from '@/components/CommomSelect/person-select.vue';
+
+  let defaultWhere = {};
+  export default {
+    props: {
+      seekList: {
+        type: Array,
+        default: () => []
+      },
+      formLength: {
+        type: [Number],
+        default: 3
+      }
+    },
+
+    components: { personSelect },
+    watch: {
+      seekList: {
+        handler(val) {
+          val.forEach((item) => {
+            defaultWhere[item.value] = null;
+          });
+
+          this.$nextTick(() => {
+            if (Array.isArray(val) && val.length <= this.formLength) {
+              this.seekListRow = val;
+            } else if (Array.isArray(val) && val.length >= this.formLength) {
+              this.seekListRow = val.slice(0, this.formLength);
+              this.deboListRow = val.slice(this.formLength);
+            }
+          });
+        },
+        deep: true,
+        immediate: true
+      }
+    },
+
+    data() {
+      return {
+        defaultWhere: {},
+        dropdownVisible: true,
+        deboListRow: [],
+        seekListRow: []
+      };
+    },
+
+    computed: {
+      info() {
+        return this.$store.state.user.info;
+      }
+    },
+
+    created() {},
+    methods: {
+      change(visible) {
+        this.dropdownVisible = visible;
+        this.$refs.dropdownref.show();
+      },
+      handerChange() {
+        this.$refs.dropdownref.show();
+      },
+
+      search() {
+        let valueAr = this.seekList.filter((item) => item.valueAr);
+        valueAr.forEach((item) => {
+          let data = this.defaultWhere[item.value];
+          if (data) {
+            this.defaultWhere[item.valueAr[0]] = data[0];
+            this.defaultWhere[item.valueAr[1]] = data[1];
+          }
+          delete this.defaultWhere[item.value];
+        });
+
+        this.$emit('search', this.defaultWhere);
+      },
+      // 重置
+      reset() {
+        this.defaultWhere = {};
+        this.search();
+      }
+
+      //  折叠悬浮中样式调整
+    }
+  };
+</script>
+
+<style scoped>
+  .index_box {
+    display: flex;
+  }
+
+  .padding {
+    padding: 20px;
+  }
+</style>

+ 2 - 0
src/main.js

@@ -23,9 +23,11 @@ import 'bpmn-js/dist/assets/diagram-js.css';
 import 'bpmn-js/dist/assets/bpmn-font/css/bpmn.css';
 import 'bpmn-js/dist/assets/bpmn-font/css/bpmn-codes.css';
 import 'bpmn-js/dist/assets/bpmn-font/css/bpmn-embedded.css';
+import seekPage from '@/components/seekPage';
 
 // // register globally
 import '@/icons';
+Vue.component('seekPage', seekPage);
 
 Vue.component('DictSelection', DictSelection);
 Vue.config.productionTip = false;

+ 11 - 1
src/utils/dict/operationManage.js

@@ -7,7 +7,17 @@ export const repairStatus = [
   // { code: 6, label: '未修复' },
   { code: 7, label: '委外中' }
 ];
-
+// 报修状态
+export const repairStatus1 = [
+  { code: 0, label: '未计划' },
+  { code: 1, label: '待审核' },
+  { code: 2, label: '已派单' },
+  { code: 3, label: '执行中' },
+  { code: 4, label: '待验收' },
+  { code: 5, label: '已完成' },
+  { code: 6, label: '未修复' },
+  { code: 7, label: '委外中' },
+];
 // 工单状态
 export const workorderStatus = [
   { code: 0, label: '待接收' },

+ 3 - 1
src/views/maintenance/repair/repairNotes/index.vue

@@ -84,6 +84,8 @@
   import EntrustDialog from './components/entrustDialog.vue';
   import DetailsDialog from '../components/RepairDetailsDialog.vue';
   import dictMixins from '@/mixins/dictMixins';
+  import { repairStatus1 } from '@/utils/dict/operationManage';
+
   export default {
     mixins: [dictMixins],
     components: {
@@ -162,7 +164,7 @@
             showOverflowTooltip: true,
             minWidth: 110,
             formatter: (_row, _column, cellValue) => {
-              return this.getDictValue('报修状态', _row.status);
+              return repairStatus1.find(item=>item.code==_row.status)?.label 
             }
           },
           {

+ 44 - 122
src/views/maintenance/repair/workOrder/components/workorder-search.vue

@@ -1,141 +1,63 @@
 <!-- 搜索表单 -->
 <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: 5, md: 12 } : { span: 5 }">
-        <el-form-item label="单号:">
-          <el-input clearable v-model="where.code" placeholder="请输入" />
-        </el-form-item>
-      </el-col>
-      <el-col v-bind="styleResponsive ? { lg: 5, md: 12 } : { span: 5 }">
-        <el-form-item label="状态:">
-          <el-select v-model="where.status" placeholder="请选择状态">
-            <el-option
-              v-for="item in workorderStatus"
-              :label="item.label"
-              :value="item.code"
-              :key="item.code"
-            >
-            </el-option>
-          </el-select>
-          <!-- <DictSelection dictName="规则状态" clearable v-model="where.status">
-          </DictSelection> -->
-        </el-form-item>
-      </el-col>
-      <el-col v-bind="styleResponsive ? { lg: 5, md: 12 } : { span: 5 }">
-        <el-form-item label="执行人:" label-width="80px">
-          <personSelect v-model="where.executeUserId" />
-        </el-form-item>
-      </el-col>
-      <el-col v-bind="styleResponsive ? { lg: 5, md: 12 } : { span: 9 }">
-        <el-form-item label="创建时间:">
-          <el-date-picker
-            v-model="where.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: 5 }">
-        <el-form-item label="报修时间:">
-          <el-date-picker
-            style="width: 100%"
-            v-model="where.time"
-            type="daterange"
-            @change="timeChange"
-            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> -->
-      <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-row>
-  </el-form>
+  <seekPage :seekList="seekList" :formLength="4" @search="search"></seekPage>
 </template>
 
 <script>
   import { workorderStatus } from '@/utils/dict/operationManage';
-  import personSelect from '@/components/CommomSelect/person-select.vue';
   export default {
-    components: { personSelect },
+    components: {},
     data() {
-      // 默认表单数据
-      const defaultWhere = {
-        status: '',
-        code: '',
-        time: [],
-        statusType: 0,
-        executeUserName: ''
-      };
-      return {
-        workorderStatus,
-        // 表单数据
-        where: { ...defaultWhere },
-        treeData: []
-      };
+      return {};
     },
     computed: {
-      // 是否开启响应式布局
-      styleResponsive() {
-        return this.$store.state.theme.styleResponsive;
+      // 表格列配置
+      seekList() {
+        return [
+          {
+            label: '单号:',
+            value: 'code',
+            type: 'input',
+            placeholder: ''
+          },
+          {
+            label: '计划单号:',
+            value: 'planCode',
+            type: 'input',
+            placeholder: ''
+          },
+          {
+            label: '状态:',
+            value: 'status',
+            type: 'select',
+            selectList: workorderStatus,
+            placeholder: ''
+          },
+          {
+            label: '执行人:',
+            value: 'executeUserId',
+            type: 'personSelect',
+            placeholder: ''
+          },
+          {
+            label: '创建时间:',
+            value: 'time',
+            type: 'date',
+            dateType: 'datetimerange',
+            placeholder: '',
+            width: 380,
+            valueAr: ['startTime', 'endTime']
+          }
+        ];
       }
     },
     created() {},
     methods: {
       /* 搜索 */
-      search() {
-        const where = this.where;
-
-        if (where.time?.length) {
-          where.startTime = where.time[0];
-          where.endTime = where.time[1];
-        }
-        delete where.time;
-        this.$emit('search', where);
-      },
-      /*  重置 */
-      reset() {
-        this.where = { ...this.defaultWhere };
-        this.search();
+      search(e) {
+        this.$emit('search', {...e});
       }
     }
   };
 </script>
-<style lang="scss" scoped>
-  .ele-form-actions {
-    display: flex;
-    align-items: center;
-    justify-content: flex-end;
-  }
-</style>
+<style lang="scss" scoped></style>