order-search.vue 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. <!-- 搜索表单 -->
  2. <template>
  3. <el-form
  4. label-width="90px"
  5. class="ele-form-search"
  6. @keyup.enter.native="search"
  7. @submit.native.prevent
  8. >
  9. <el-row :gutter="15">
  10. <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
  11. <el-form-item label="关键字:">
  12. <el-input clearable v-model="where.keyWord" 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 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. <el-input
  23. clearable
  24. v-model="where.productionPlanCode"
  25. placeholder="请输入"
  26. />
  27. </el-form-item>
  28. </el-col>
  29. <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
  30. <el-form-item label="工艺路线:">
  31. <el-input
  32. clearable
  33. v-model="where.produceRoutingName"
  34. placeholder="请输入"
  35. />
  36. </el-form-item>
  37. </el-col>
  38. <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
  39. <el-form-item label="产品编码:">
  40. <el-input
  41. clearable
  42. v-model="where.productCode"
  43. placeholder="请输入"
  44. />
  45. </el-form-item>
  46. </el-col>
  47. <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
  48. <el-form-item label="产品名称:">
  49. <el-input
  50. clearable
  51. v-model="where.productName"
  52. placeholder="请输入"
  53. />
  54. </el-form-item>
  55. </el-col>
  56. <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
  57. <el-form-item label="牌号:">
  58. <el-input clearable v-model="where.brandNo" placeholder="请输入" />
  59. </el-form-item>
  60. </el-col>
  61. <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
  62. <el-form-item label="状态:">
  63. <el-select
  64. v-model="where.status"
  65. placeholder="请选择"
  66. clearable
  67. class="ele-block"
  68. >
  69. <el-option
  70. v-for="item in statusOpt"
  71. :key="item.value"
  72. :label="item.label"
  73. :value="item.value"
  74. >
  75. </el-option>
  76. </el-select>
  77. </el-form-item>
  78. </el-col>
  79. <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
  80. <el-form-item label="型号:">
  81. <el-input clearable v-model="where.model" placeholder="请输入" />
  82. </el-form-item>
  83. </el-col>
  84. <el-col v-bind="styleResponsive ? { lg: 6, md: 6 } : { span: 6 }">
  85. <el-form-item label="创建时间:">
  86. <el-date-picker
  87. class="w100"
  88. v-model="where.createTime"
  89. type="daterange"
  90. range-separator="至"
  91. start-placeholder="开始日期"
  92. end-placeholder="结束日期"
  93. value-format="yyyy-MM-dd HH:mm:ss"
  94. :default-time="['00:00:00', '23:59:59']"
  95. >
  96. </el-date-picker>
  97. </el-form-item>
  98. </el-col>
  99. <el-col v-bind="styleResponsive ? { lg: 6, md: 6 } : { span: 6 }">
  100. <el-form-item label="组织机构:">
  101. <auth-selection
  102. data-type="Array"
  103. v-model="where.deptIds"
  104. style="width: 100%"
  105. ></auth-selection>
  106. </el-form-item>
  107. </el-col>
  108. <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
  109. <el-form-item label-width="0px">
  110. <el-button
  111. type="primary"
  112. icon="el-icon-search"
  113. class="ele-btn-icon"
  114. @click="search"
  115. >
  116. 查询
  117. </el-button>
  118. <el-button @click="reset" icon="el-icon-refresh-left" type="primary"
  119. >重置</el-button
  120. >
  121. </el-form-item>
  122. </el-col>
  123. </el-row>
  124. </el-form>
  125. </template>
  126. <script>
  127. export default {
  128. props: [],
  129. data() {
  130. // 默认表单数据
  131. const defaultWhere = {
  132. keyWord: '',
  133. code: '',
  134. productionPlanCode: '',
  135. produceRoutingName: '',
  136. productCode: '',
  137. productName: '',
  138. brandNo: '',
  139. model: '',
  140. status: '',
  141. createTime: []
  142. };
  143. return {
  144. // 表单数据
  145. where: { ...defaultWhere },
  146. statusOpt: [
  147. { label: '待下达', value: 8 },
  148. { label: '待生产', value: 4 },
  149. { label: '生产中', value: 5 }
  150. ],
  151. teamList: []
  152. };
  153. },
  154. computed: {
  155. // 是否开启响应式布局
  156. styleResponsive() {
  157. return this.$store.state.theme.styleResponsive;
  158. }
  159. },
  160. watch: {},
  161. created() {},
  162. methods: {
  163. /* 搜索 */
  164. search() {
  165. const where = { ...this.where };
  166. if (where.createTime?.length) {
  167. where.createTimeStart = where.createTime[0];
  168. where.createTimeEnd = where.createTime[1];
  169. }
  170. delete where.createTime;
  171. this.$emit('search', where);
  172. },
  173. /* 重置 */
  174. reset() {
  175. this.where = { ...this.defaultWhere };
  176. this.search();
  177. }
  178. }
  179. };
  180. </script>
  181. <style lang="scss" scoped>
  182. .ele-form-actions {
  183. display: flex;
  184. align-items: center;
  185. justify-content: flex-end;
  186. }
  187. </style>