search.vue 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. <!-- 搜索表单 -->
  2. <template>
  3. <el-form label-width="90px" class="ele-form-search" @keyup.enter.native="search" @submit.native.prevent>
  4. <el-row :gutter="15">
  5. <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
  6. <el-form-item label="工单Code:">
  7. <el-input size="mini" clearable v-model="where.workOrderId" placeholder="请输入" />
  8. </el-form-item>
  9. </el-col>
  10. <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
  11. <el-form-item label="委外名称:">
  12. <el-input size="mini" clearable v-model="where.name" placeholder="请输入" />
  13. </el-form-item>
  14. </el-col>
  15. <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
  16. <el-form-item label="委外编码:">
  17. <el-input size="mini" clearable v-model="where.code" placeholder="请输入" />
  18. </el-form-item>
  19. </el-col>
  20. <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
  21. <el-form-item label="组织机构:">
  22. <auth-selection v-model="where.deptIds" style="width: 100%"></auth-selection>
  23. </el-form-item>
  24. </el-col>
  25. <el-col style="display: flex;justify-content: flex-end" v-bind="styleResponsive ? { lg: 24, md: 24 } : { span: 24 }">
  26. <el-form-item label-width="0px">
  27. <el-button size="mini" type="primary" icon="el-icon-search" class="ele-btn-icon" @click="search">
  28. 查询
  29. </el-button>
  30. <el-button size="mini" @click="reset" icon="el-icon-refresh-left" type="primary">重置</el-button>
  31. </el-form-item>
  32. </el-col>
  33. </el-row>
  34. </el-form>
  35. </template>
  36. <script>
  37. export default {
  38. props: [],
  39. data() {
  40. // 默认表单数据
  41. const defaultWhere = {
  42. workOrderId: '',
  43. name: '',
  44. code: ''
  45. };
  46. return {
  47. // 表单数据
  48. where: { ...defaultWhere },
  49. };
  50. },
  51. computed: {
  52. // 是否开启响应式布局
  53. styleResponsive() {
  54. return this.$store.state.theme.styleResponsive;
  55. }
  56. },
  57. watch: {},
  58. created() {
  59. },
  60. methods: {
  61. /* 搜索 */
  62. search() {
  63. this.$emit('search', this.where);
  64. },
  65. /* 重置 */
  66. reset() {
  67. this.where = { ...this.defaultWhere };
  68. this.search();
  69. },
  70. }
  71. };
  72. </script>
  73. <style lang="scss" scoped>
  74. .ele-form-actions {
  75. display: flex;
  76. align-items: center;
  77. justify-content: flex-end;
  78. }
  79. </style>