invoiceList.vue 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. <template>
  2. <div class="ele-body">
  3. <el-card shadow="never" v-loading="loading">
  4. <div class="ele-border-lighter form-content" v-loading="loading">
  5. <!-- 数据表格 -->
  6. <ele-pro-table
  7. ref="table"
  8. :columns="columns"
  9. :datasource="datasource"
  10. height="calc(100vh - 385px)"
  11. full-height="calc(100vh - 116px)"
  12. tool-class="ele-toolbar-form"
  13. :selection.sync="selection"
  14. cache-key="eomContactPageTable"
  15. >
  16. <!-- 查看详情列 -->
  17. <template v-slot:receiveNo="{ row }">
  18. <el-link
  19. type="primary"
  20. :underline="false"
  21. @click="openorderDetail(row, 'receiveNo')"
  22. >
  23. {{ row.receiveNo }}</el-link
  24. >
  25. </template>
  26. </ele-pro-table>
  27. </div>
  28. </el-card>
  29. <detail-dialog ref="DetailDialogRef"></detail-dialog>
  30. </div>
  31. </template>
  32. <script>
  33. import detailDialog from '@/views/purchasingManage/purchaseOrder/invoice/components/detailDialog.vue';
  34. import { reviewStatusEnum } from '@/enum/dict';
  35. import { getReceiveTableList } from '@/api/purchasingManage/purchaseorderreceive';
  36. import dictMixins from '@/mixins/dictMixins';
  37. export default {
  38. mixins: [dictMixins],
  39. props: {
  40. orderId: String
  41. },
  42. components: {
  43. detailDialog
  44. },
  45. data() {
  46. return {
  47. activeComp: 'saleorder',
  48. selection: [], //单选中集合
  49. delVisible: false, //批量删除弹框状态
  50. loading: false, // 加载状态
  51. columns: [
  52. {
  53. columnKey: 'index',
  54. label: '序号',
  55. type: 'index',
  56. width: 55,
  57. align: 'center',
  58. showOverflowTooltip: true,
  59. fixed: 'left'
  60. },
  61. {
  62. prop: 'receiveNo',
  63. label: '收货单编码',
  64. align: 'center',
  65. slot: 'receiveNo',
  66. showOverflowTooltip: true,
  67. minWidth: 200
  68. },
  69. // {
  70. // prop: 'orderNo',
  71. // label: '采购订单编码',
  72. // align: 'center',
  73. // slot: 'orderNo',
  74. // showOverflowTooltip: true,
  75. // minWidth: 200
  76. // },
  77. {
  78. prop: 'supplierName',
  79. label: '供应商名称',
  80. align: 'center',
  81. showOverflowTooltip: true,
  82. minWidth: 180
  83. },
  84. {
  85. prop: 'sendNoteNo',
  86. label: '送货单号',
  87. align: 'center',
  88. showOverflowTooltip: true,
  89. minWidth: 180
  90. },
  91. // {
  92. // prop: 'replied',
  93. // label: '是否回执',
  94. // align: 'center',
  95. // showOverflowTooltip: true,
  96. // minWidth: 200,
  97. // formatter: (_row, _column, cellValue) => {
  98. // return _row.replied==1?'是':'否';
  99. // }
  100. // },
  101. {
  102. prop: 'reviewStatus',
  103. label: '状态',
  104. align: 'center',
  105. showOverflowTooltip: true,
  106. minWidth: 200,
  107. formatter: (_row, _column, cellValue) => {
  108. return reviewStatusEnum[_row.reviewStatus].label;
  109. }
  110. },
  111. {
  112. prop: 'createTime',
  113. label: '创建时间',
  114. align: 'center',
  115. showOverflowTooltip: true,
  116. minWidth: 170
  117. }
  118. ]
  119. };
  120. },
  121. computed: {},
  122. methods: {
  123. /* 表格数据源 */
  124. datasource({ page, limit, where, order }) {
  125. return getReceiveTableList({
  126. pageNum: page,
  127. size: limit,
  128. orderId: this.orderId,
  129. ...where
  130. });
  131. },
  132. /* 刷新表格 */
  133. reload(where) {
  134. this.$refs.table.reload({ page: 1, where });
  135. },
  136. //查看详情
  137. openorderDetail(row, type) {
  138. this.$refs.DetailDialogRef.open(row);
  139. }
  140. }
  141. };
  142. </script>
  143. <style lang="scss" scoped>
  144. .ele-body {
  145. padding-top: 0;
  146. padding-bottom: 0;
  147. }
  148. :deep .el-card__body {
  149. padding: 0;
  150. }
  151. :deep(.el-link--inner) {
  152. margin-left: 0px !important;
  153. }
  154. .sys-organization-list {
  155. height: calc(100vh - 264px);
  156. box-sizing: border-box;
  157. border-width: 1px;
  158. border-style: solid;
  159. overflow: auto;
  160. }
  161. .sys-organization-list :deep(.el-tree-node__content) {
  162. height: 40px;
  163. & > .el-tree-node__expand-icon {
  164. margin-left: 10px;
  165. }
  166. }
  167. .switch_left ul .active {
  168. border-top: 4px solid var(--color-primary);
  169. color: var(--color-primary-5);
  170. }
  171. .switch {
  172. padding-bottom: 20px;
  173. }
  174. .el-dropdown-link {
  175. cursor: pointer;
  176. color: var(--color-primary-5);
  177. }
  178. .el-icon-arrow-down {
  179. font-size: 12px;
  180. }
  181. </style>