PurchaseOrderLineTraceEdit.vue 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. <template>
  2. <a-layout>
  3. <a-page-header title="物料采购订单跟踪" />
  4. <a-layout-content style="padding: 24px;">
  5. <a-form layout="inline" :model="purchaseOrderLineQueryParam">
  6. <a-form-item label="关键字">
  7. <a-input v-model:value="purchaseOrderLineQueryParam.condition" placeholder="请输入关键字,包括工作令、存货名称、存货编码、规格型号" />
  8. </a-form-item>
  9. <a-form-item v-if="purchaseOrderLineQueryParam.advancedQuery" label="下单时间">
  10. <a-date-picker v-model:value="startTime" format="YYYY-MM-DD" />
  11. <a-date-picker v-model:value="endTime" format="YYYY-MM-DD" />
  12. </a-form-item>
  13. <a-form-item label="采购订单编号">
  14. <a-input v-model:value="purchaseOrderLineQueryParam.documentNo" placeholder="输入采购订单编号" />
  15. </a-form-item>
  16. <a-space>
  17. <a-button type="primary" @click="searchPurchaseOrderLine">搜索</a-button>
  18. <a-button @click="purchaseOrderLineQueryParam.advancedQuery =!purchaseOrderLineQueryParam.advancedQuery">
  19. {{ purchaseOrderLineQueryParam.advancedQuery ? '关闭高级搜索' : '高级搜索' }}
  20. </a-button>
  21. <a-button @click="clean">清空搜索条件</a-button>
  22. <a-button-group>
  23. <a-button :class="{ 'ant-btn-primary': status === 0 }" @click="chooseStatus(0)">全部</a-button>
  24. <a-button :class="{ 'ant-btn-primary': status === 1 }" @click="chooseStatus(1)">已到货</a-button>
  25. <a-button :class="{ 'ant-btn-primary': status === 2 }" @click="chooseStatus(2)">未到货</a-button>
  26. </a-button-group>
  27. </a-space>
  28. </a-form>
  29. <a-table
  30. :data-source="purchaseOrderLines"
  31. :columns="columns"
  32. :row-key="record => record.id"
  33. :pagination="pagination"
  34. @change="handleTableChange"
  35. />
  36. </a-layout-content>
  37. </a-layout>
  38. </template>
  39. <script>
  40. import Common from '../common/Common.js';
  41. export default {
  42. data() {
  43. return {
  44. purchaseOrderLineQueryParam: {
  45. condition: '',
  46. orderStartTime: null,
  47. orderEndTime: null,
  48. documentNo: '',
  49. advancedQuery: false,
  50. status: 0,
  51. range: {
  52. start: 0,
  53. length: 20,
  54. },
  55. },
  56. defaultStartTime: new Date(),
  57. defaultEndTime: new Date(),
  58. startTime: '',
  59. endTime: '',
  60. status: 0,
  61. pagination: {
  62. current: 1,
  63. pageSize: Common.pageSize,
  64. total: 0,
  65. },
  66. purchaseOrderLines: [],
  67. columns: [
  68. { title: '序号', dataIndex: 'index' },
  69. { title: '存货编码', dataIndex: 'invCode' },
  70. { title: '存货名称', dataIndex: 'invName' },
  71. { title: '规格型号', dataIndex: 'invType' },
  72. { title: '工作令', dataIndex: 'projectInvName' },
  73. { title: '所属部件', dataIndex: 'componentInvName' },
  74. { title: '主关件', dataIndex: 'importantComponent' },
  75. { title: '加急件', dataIndex: 'urgentComponent' },
  76. { title: '计划到货日期', dataIndex: 'estimateArrivalDate' },
  77. { title: '订单数量', dataIndex: 'quantity' },
  78. { title: '已到货数量', dataIndex: 'receivedQuatity' },
  79. ],
  80. };
  81. },
  82. mounted() {
  83. this.init();
  84. },
  85. methods: {
  86. init() {
  87. this.defaultStartTime.setFullYear(2000);
  88. this.purchaseOrderLineQueryParam.orderStartTime = this.defaultStartTime;
  89. this.purchaseOrderLineQueryParam.orderEndTime = this.defaultEndTime;
  90. },
  91. searchPurchaseOrderLine() {
  92. this.purchaseOrderLines = [];
  93. this.purchaseOrderLineQueryParam.orderStartTime = this.defaultStartTime;
  94. this.purchaseOrderLineQueryParam.orderEndTime = this.defaultEndTime;
  95. this.purchaseOrderLineQueryParam.range.start = (this.pagination.current - 1) * this.pagination.pageSize;
  96. this.purchaseOrderLineQueryParam.range.length = this.pagination.pageSize;
  97. if (this.purchaseOrderLineQueryParam.advancedQuery) {
  98. if (this.startTime) {
  99. this.purchaseOrderLineQueryParam.orderStartTime = this.startTime;
  100. }
  101. if (this.endTime) {
  102. this.purchaseOrderLineQueryParam.orderEndTime = this.endTime;
  103. }
  104. }
  105. $.ajax({
  106. url: Common.getApiURL('PurchaseOrderLineResource/queryByParams'),
  107. type: 'post',
  108. dataType: 'json',
  109. contentType: 'application/json',
  110. beforeSend: request => {
  111. Common.addTokenToRequest(request);
  112. },
  113. data: JSON.stringify(this.purchaseOrderLineQueryParam),
  114. success: data => {
  115. this.purchaseOrderLines = data.purchaseOrderLineTraceEditDtos;
  116. this.pagination.total = data.totalCount;
  117. },
  118. error: (XMLHttpRequest, textStatus, errorThrown) => {
  119. Common.processException(XMLHttpRequest, textStatus, errorThrown);
  120. },
  121. });
  122. },
  123. clean() {
  124. this.purchaseOrderLineQueryParam.condition = '';
  125. this.startTime = '';
  126. this.endTime = '';
  127. this.purchaseOrderLineQueryParam.documentNo = '';
  128. this.defaultStartTime = new Date();
  129. this.defaultStartTime.setFullYear(2000);
  130. this.defaultEndTime = new Date();
  131. },
  132. chooseStatus(status) {
  133. this.status = status;
  134. this.purchaseOrderLineQueryParam.status = status;
  135. this.pagination.current = 1;
  136. this.searchPurchaseOrderLine();
  137. },
  138. handleTableChange(pagination) {
  139. this.pagination.current = pagination.current;
  140. this.pagination.pageSize = pagination.pageSize;
  141. this.searchPurchaseOrderLine();
  142. },
  143. },
  144. };
  145. </script>
  146. <style scoped>
  147. /* 可根据需要添加自定义样式 */
  148. </style>