index.vue 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353
  1. <template>
  2. <div class="ele-body">
  3. <el-card shadow="never" v-loading="loading">
  4. <seek-page :seekList="seekList" @search="search"></seek-page>
  5. <ele-pro-table
  6. ref="table"
  7. :columns="columns"
  8. :datasource="datasource"
  9. :selection.sync="selection"
  10. row-key="id"
  11. cache-key="entrust_list_data"
  12. :height="tableHeight"
  13. :pageSize="20"
  14. @fullscreen-change="fullscreenChange"
  15. >
  16. <template v-slot:toolbar>
  17. <el-button
  18. size="small"
  19. type="primary"
  20. icon="el-icon-plus"
  21. class="ele-btn-icon"
  22. @click="detail"
  23. >
  24. 详情
  25. </el-button>
  26. </template>
  27. </ele-pro-table>
  28. </el-card>
  29. </div>
  30. </template>
  31. <script>
  32. import dictMixins from '@/mixins/dictMixins';
  33. export default {
  34. mixins: [dictMixins],
  35. data() {
  36. return {
  37. loading: false,
  38. factoryList: [],
  39. selection: [],
  40. tableHeight: 'calc(100vh - 320px)'
  41. };
  42. },
  43. computed: {
  44. columns() {
  45. return [
  46. {
  47. columnKey: 'selection',
  48. type: 'selection',
  49. width: 45,
  50. align: 'center',
  51. fixed: 'left'
  52. },
  53. {
  54. columnKey: 'index',
  55. label: '序号',
  56. type: 'index',
  57. width: 55,
  58. align: 'center',
  59. showOverflowTooltip: true,
  60. fixed: 'left'
  61. },
  62. {
  63. prop: 'type',
  64. label: '需求订单号',
  65. width: 100,
  66. align: 'center',
  67. showOverflowTooltip: true,
  68. slot: 'type'
  69. },
  70. {
  71. prop: 'type',
  72. label: '顶级产品编号',
  73. width: 120,
  74. align: 'center',
  75. showOverflowTooltip: true,
  76. slot: 'type'
  77. },
  78. {
  79. prop: 'type',
  80. label: '顶级产品名称',
  81. width: 120,
  82. align: 'center',
  83. showOverflowTooltip: true,
  84. slot: 'type'
  85. },
  86. {
  87. prop: 'type',
  88. label: '计划状态',
  89. width: 100,
  90. align: 'center',
  91. showOverflowTooltip: true,
  92. slot: 'type'
  93. },
  94. {
  95. prop: 'type',
  96. label: '计划编号',
  97. width: 100,
  98. align: 'center',
  99. showOverflowTooltip: true,
  100. slot: 'type'
  101. },
  102. {
  103. prop: 'type',
  104. label: '批次号',
  105. width: 100,
  106. align: 'center',
  107. showOverflowTooltip: true,
  108. slot: 'type'
  109. },
  110. {
  111. prop: 'type',
  112. label: '生产工单号',
  113. width: 100,
  114. align: 'center',
  115. showOverflowTooltip: true,
  116. slot: 'type'
  117. },
  118. {
  119. prop: 'type',
  120. label: '编码',
  121. width: 100,
  122. align: 'center',
  123. showOverflowTooltip: true,
  124. slot: 'type'
  125. },
  126. {
  127. prop: 'type',
  128. label: '名称',
  129. width: 100,
  130. align: 'center',
  131. showOverflowTooltip: true,
  132. slot: 'type'
  133. },
  134. {
  135. prop: 'type',
  136. label: '零部件图号',
  137. width: 100,
  138. align: 'center',
  139. showOverflowTooltip: true,
  140. slot: 'type'
  141. },
  142. {
  143. prop: 'type',
  144. label: '型号',
  145. width: 100,
  146. align: 'center',
  147. showOverflowTooltip: true,
  148. slot: 'type'
  149. },
  150. {
  151. prop: 'type',
  152. label: '规格',
  153. width: 100,
  154. align: 'center',
  155. showOverflowTooltip: true,
  156. slot: 'type'
  157. },
  158. {
  159. prop: 'type',
  160. label: '尺寸',
  161. width: 100,
  162. align: 'center',
  163. showOverflowTooltip: true,
  164. slot: 'type'
  165. },
  166. {
  167. prop: 'type',
  168. label: '计划数量',
  169. width: 100,
  170. align: 'center',
  171. showOverflowTooltip: true,
  172. slot: 'type'
  173. },
  174. {
  175. prop: 'type',
  176. label: '计量单位',
  177. width: 100,
  178. align: 'center',
  179. showOverflowTooltip: true,
  180. slot: 'type'
  181. },
  182. {
  183. prop: 'type',
  184. label: 'BOM类型',
  185. width: 100,
  186. align: 'center',
  187. showOverflowTooltip: true,
  188. slot: 'type'
  189. },
  190. {
  191. prop: 'type',
  192. label: 'BOM版本',
  193. width: 100,
  194. align: 'center',
  195. showOverflowTooltip: true,
  196. slot: 'type'
  197. },
  198. {
  199. prop: 'type',
  200. label: '牌号',
  201. width: 100,
  202. align: 'center',
  203. showOverflowTooltip: true,
  204. slot: 'type'
  205. },
  206. {
  207. prop: 'type',
  208. label: '加工类型',
  209. width: 100,
  210. align: 'center',
  211. showOverflowTooltip: true,
  212. slot: 'type'
  213. },
  214. {
  215. prop: 'type',
  216. label: '作业名称',
  217. width: 100,
  218. align: 'center',
  219. showOverflowTooltip: true,
  220. slot: 'type'
  221. },
  222. {
  223. prop: 'type',
  224. label: '承制单位',
  225. width: 100,
  226. align: 'center',
  227. showOverflowTooltip: true,
  228. slot: 'type'
  229. },
  230. {
  231. prop: 'type',
  232. label: '计划类别',
  233. width: 100,
  234. align: 'center',
  235. showOverflowTooltip: true,
  236. slot: 'type'
  237. },
  238. {
  239. prop: 'type',
  240. label: '投料控制清单号',
  241. width: 120,
  242. align: 'center',
  243. showOverflowTooltip: true,
  244. slot: 'type'
  245. },
  246. {
  247. prop: 'type',
  248. label: '创建人',
  249. width: 100,
  250. align: 'center',
  251. showOverflowTooltip: true,
  252. slot: 'type'
  253. },
  254. {
  255. prop: 'type',
  256. label: '创建时间',
  257. width: 100,
  258. align: 'center',
  259. showOverflowTooltip: true,
  260. slot: 'type'
  261. }
  262. ];
  263. },
  264. seekList() {
  265. return [
  266. {
  267. label: '计划编号:',
  268. value: 'name',
  269. type: 'input',
  270. labelWidth: 100
  271. },
  272. {
  273. label: '批次号:',
  274. value: 'name',
  275. type: 'input',
  276. labelWidth: 80
  277. },
  278. {
  279. label: '编码:',
  280. value: 'name',
  281. type: 'input',
  282. labelWidth: 50
  283. },
  284. {
  285. label: '需求订单号:',
  286. value: 'name',
  287. type: 'input',
  288. labelWidth: 100
  289. },
  290. {
  291. label: '顶级产品编号:',
  292. value: 'name',
  293. type: 'input',
  294. labelWidth: 100
  295. },
  296. {
  297. label: '顶级产品名称:',
  298. value: 'name',
  299. type: 'input',
  300. labelWidth: 100
  301. },
  302. {
  303. label: '计划状态:',
  304. value: 'name',
  305. type: 'select',
  306. labelWidth: 100,
  307. planList: this.factoryList
  308. },
  309. {
  310. label: '计划类别:',
  311. value: 'name',
  312. type: 'select',
  313. labelWidth: 100,
  314. planList: this.factoryList
  315. },
  316. {
  317. label: '承制单位:',
  318. value: 'name',
  319. type: 'select',
  320. labelWidth: 100,
  321. planList: this.factoryList
  322. }
  323. ];
  324. }
  325. },
  326. methods: {
  327. datasource() {},
  328. search() {},
  329. fullscreenChange(fullscreen) {
  330. if (fullscreen) {
  331. this.tableHeight = 'calc(100vh - 120px)';
  332. } else {
  333. this.tableHeight = 'calc(100vh - 320px)';
  334. }
  335. },
  336. detail() {
  337. this.$router.push({
  338. path: '/materialRequirement/requirementListOrder/details'
  339. });
  340. }
  341. }
  342. };
  343. </script>
  344. <style></style>