org-user-search.vue 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. <!-- 搜索表单 -->
  2. <template>
  3. <el-form
  4. size="small"
  5. class="ele-form-search"
  6. @keyup.enter.native="search"
  7. @submit.native.prevent
  8. >
  9. <el-row :gutter="24">
  10. <el-col v-bind="styleResponsive ? { md: 3 } : { span: 3 }">
  11. <el-form-item>
  12. <el-input
  13. clearable
  14. size="small"
  15. v-model.trim="where.jobNumber"
  16. placeholder="请输入工号"
  17. />
  18. </el-form-item>
  19. </el-col>
  20. <el-col v-bind="styleResponsive ? { md: 3 } : { span: 3 }">
  21. <el-form-item>
  22. <el-input
  23. clearable
  24. size="small"
  25. v-model.trim="where.loginName"
  26. placeholder="请输入用户账号"
  27. />
  28. </el-form-item>
  29. </el-col>
  30. <el-col v-bind="styleResponsive ? { md: 3 } : { span: 3 }">
  31. <el-form-item>
  32. <el-input
  33. clearable
  34. size="small"
  35. v-model.trim="where.name"
  36. placeholder="请输入姓名"
  37. />
  38. </el-form-item>
  39. </el-col>
  40. <el-col v-bind="styleResponsive ? { md: 6 } : { span: 6 }">
  41. <DictSelection
  42. dictName="岗位"
  43. clearable
  44. filterable
  45. v-model="where.postId"
  46. multiple
  47. >
  48. </DictSelection>
  49. </el-col>
  50. <el-col v-bind="styleResponsive ? { md: 6 } : { span: 6 }">
  51. <el-form-item>
  52. <el-button
  53. size="small"
  54. type="primary"
  55. icon="el-icon-search"
  56. class="ele-btn-icon"
  57. @click="search"
  58. >
  59. 查询
  60. </el-button>
  61. <el-button
  62. size="small"
  63. icon="el-icon-search"
  64. class="ele-btn-icon"
  65. @click="reset()"
  66. >
  67. 重置
  68. </el-button>
  69. <slot></slot>
  70. </el-form-item>
  71. </el-col>
  72. </el-row>
  73. </el-form>
  74. </template>
  75. <script>
  76. export default {
  77. data() {
  78. // 默认表单数据
  79. const defaultWhere = {
  80. jobNumber: '',
  81. loginName: '',
  82. name: '',
  83. postId:[],
  84. };
  85. return {
  86. // 表单数据
  87. where: { ...defaultWhere }
  88. };
  89. },
  90. computed: {
  91. // 是否开启响应式布局
  92. styleResponsive() {
  93. return this.$store.state.theme.styleResponsive;
  94. }
  95. },
  96. methods: {
  97. /* 搜索 */
  98. search() {
  99. this.$emit('search', this.where);
  100. },
  101. /* 重置 */
  102. reset() {
  103. this.where = { ...this.defaultWhere };
  104. this.search();
  105. },
  106. geValue() {
  107. return this.where;
  108. }
  109. }
  110. };
  111. </script>