batchRecordTable.vue 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. <template>
  2. <div>
  3. <seek-page :seekList="seekList" @search="search"></seek-page>
  4. <ele-pro-table
  5. ref="table"
  6. row-key="id"
  7. :columns="columns"
  8. :datasource="datasource"
  9. :cache-key="cacheKeyUrl"
  10. autoAmendPage
  11. height="calc(86vh - 230px)"
  12. >
  13. <template v-slot:action="{ row }">
  14. <el-link type="primary" :underline="false" @click="goToDetail(row)">
  15. 详情
  16. </el-link>
  17. </template>
  18. <template v-slot:code="{ row }">
  19. <el-link type="primary" @click="goToDetail(row)">{{
  20. row.code
  21. }}</el-link>
  22. </template>
  23. </ele-pro-table>
  24. <editModal ref="editModalRef"></editModal>
  25. </div>
  26. </template>
  27. <script>
  28. import dictMixins from '@/mixins/dictMixins';
  29. import tableColumnsMixin from '@/mixins/tableColumnsMixin';
  30. import { producetaskrulerecordPage } from '@/api/producetaskrulerecord/index';
  31. import editModal from '../editModal.vue';
  32. export default {
  33. mixins: [dictMixins, tableColumnsMixin],
  34. components: { editModal },
  35. props: {
  36. tableQuery: {
  37. type: Object,
  38. default: () => {
  39. return {};
  40. }
  41. }
  42. },
  43. data() {
  44. return {
  45. columns: [
  46. {
  47. width: 50,
  48. type: 'index',
  49. columnKey: 'index',
  50. align: 'center',
  51. label: '序号'
  52. },
  53. {
  54. prop: 'code',
  55. label: '记录编码',
  56. align: 'center',
  57. minWidth: 110,
  58. showOverflowTooltip: true,
  59. slot: 'code'
  60. },
  61. {
  62. prop: 'ruleName',
  63. label: '事项名称',
  64. align: 'center',
  65. showOverflowTooltip: true,
  66. minWidth: 150
  67. },
  68. {
  69. prop: 'workOrderCode',
  70. label: '关联生产工单号',
  71. align: 'center',
  72. showOverflowTooltip: true,
  73. minWidth: 150
  74. },
  75. {
  76. prop: 'createUserName',
  77. label: '来源列表',
  78. align: 'center',
  79. showOverflowTooltip: true,
  80. minWidth: 150
  81. },
  82. {
  83. label: '状态',
  84. minWidth: 180,
  85. prop: 'executeStatus',
  86. formatter: (row) => {
  87. switch (row.executeStatus) {
  88. case 0:
  89. return '未执行';
  90. case 1:
  91. return '执行中';
  92. default:
  93. return '已执行';
  94. }
  95. }
  96. },
  97. {
  98. label: '审核状态',
  99. prop: 'approvalStatus',
  100. minWidth: 180,
  101. formatter: (row) => {
  102. switch (row.approvalStatus) {
  103. case 0:
  104. return '未提交';
  105. case 1:
  106. return '审核中';
  107. case 2:
  108. return '审核通过';
  109. case 3:
  110. return '审核不通过';
  111. case 4:
  112. return '终止审核中';
  113. case 5:
  114. return '终止审核通过';
  115. case 7:
  116. return '流程废止';
  117. default:
  118. return '';
  119. }
  120. }
  121. },
  122. {
  123. prop: 'createTime',
  124. label: '创建时间',
  125. align: 'center',
  126. showOverflowTooltip: true,
  127. minWidth: 150
  128. },
  129. {
  130. label: '操作',
  131. columnKey: 'action',
  132. slot: 'action',
  133. showOverflowTooltip: true,
  134. minWidth: 110,
  135. align: 'center',
  136. fixed: 'right'
  137. }
  138. ],
  139. cacheKeyUrl: 'mes-259231507-batchRecord-table'
  140. };
  141. },
  142. computed: {
  143. seekList() {
  144. return [
  145. {
  146. label: '工单编码:',
  147. value: 'workOrderCode',
  148. type: 'input',
  149. placeholder: '请输入'
  150. },
  151. {
  152. label: '记录编码:',
  153. value: 'code',
  154. type: 'input',
  155. placeholder: '请输入'
  156. },
  157. {
  158. label: '产品名称:',
  159. value: 'productName',
  160. type: 'input',
  161. placeholder: '请输入'
  162. },
  163. {
  164. label: '状态:',
  165. value: 'executeStatus',
  166. type: 'select',
  167. placeholder: '请选择',
  168. planList: [
  169. {
  170. label: '未执行',
  171. value: 0
  172. },
  173. {
  174. label: '执行中',
  175. value: 1
  176. },
  177. {
  178. label: '已执行',
  179. value: 2
  180. }
  181. ]
  182. }
  183. ];
  184. }
  185. },
  186. methods: {
  187. // 刷新表格
  188. reload(where = {}) {
  189. this.$refs.table.reload({
  190. where,
  191. ...this.tableQuery
  192. });
  193. },
  194. /* 表格数据源 */
  195. datasource({ page, limit, where, order }) {
  196. // 参数
  197. const body = {
  198. ...where,
  199. ...order,
  200. pageNum: page,
  201. size: limit,
  202. // 查询生产记录
  203. itemType: '2',
  204. ...this.tableQuery
  205. };
  206. return producetaskrulerecordPage(body);
  207. },
  208. search(where) {
  209. this.reload(where);
  210. },
  211. goToDetail(row) {
  212. this.$refs.editModalRef.open('detail', row);
  213. }
  214. }
  215. };
  216. </script>
  217. <style></style>