search.vue 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <!-- 搜索表单 -->
  2. 6
  3. <template>
  4. <el-form label-width="77px" class="ele-form-search" @keyup.enter.native="search" @submit.native.prevent>
  5. <el-row :gutter="15">
  6. <el-col v-bind="styleResponsive ? { lg: 5, md: 8 } : { span: 4 }">
  7. <el-form-item label="编码:">
  8. <el-input clearable v-model="where.sampleCode" placeholder="请输入" />
  9. </el-form-item>
  10. </el-col>
  11. <el-col v-bind="styleResponsive ? { lg: 5, md: 8 } : { span: 4 }">
  12. <el-form-item label="物品编码:">
  13. <el-input clearable v-model="where.categoryCode" placeholder="请输入" />
  14. </el-form-item>
  15. </el-col>
  16. <el-col v-bind="styleResponsive ? { lg: 5, md: 8 } : { span: 4 }">
  17. <el-form-item label="物品名称:">
  18. <el-input clearable v-model="where.categoryName" placeholder="请输入" />
  19. </el-form-item>
  20. </el-col>
  21. <el-col v-bind="styleResponsive ? { lg: 5, md: 8 } : { span: 4 }">
  22. <el-form-item label="质检状态:">
  23. <el-select
  24. v-model="where.qualityResults"
  25. placeholder="请选择"
  26. style="width: 100%"
  27. >
  28. <el-option label="合格" :value="1" />
  29. <el-option label="不合格" :value="2" />
  30. </el-select>
  31. </el-form-item>
  32. </el-col>
  33. <el-col style="display: flex; justify-content: flex-end"
  34. v-bind="styleResponsive ? { lg: 4, md: 6 } : { span: 12 }">
  35. <div class="ele-form-actions">
  36. <el-button type="primary" icon="el-icon-search" class="ele-btn-icon" @click="search">
  37. 查询
  38. </el-button>
  39. <el-button @click="reset">重置</el-button>
  40. </div>
  41. </el-col>
  42. </el-row>
  43. </el-form>
  44. </template>
  45. <script>
  46. export default {
  47. data() {
  48. // 默认表单数据
  49. const defaultWhere = {
  50. code: '',
  51. produceTaskName: '',
  52. deptIds: ''
  53. };
  54. return {
  55. defaultWhere,
  56. // 表单数据
  57. where: { ...defaultWhere }
  58. };
  59. },
  60. computed: {
  61. // 是否开启响应式布局
  62. styleResponsive() {
  63. return this.$store.state.theme.styleResponsive;
  64. }
  65. },
  66. methods: {
  67. /* 搜索 */
  68. search() {
  69. this.$emit('search', this.where);
  70. },
  71. /* 重置 */
  72. reset() {
  73. this.where = { ...this.defaultWhere };
  74. this.search();
  75. }
  76. }
  77. };
  78. </script>