index.vue 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. <template>
  2. <view class="content-box">
  3. <uni-nav-bar
  4. fixed="true"
  5. statusBar="true"
  6. left-icon="back"
  7. title="投料单"
  8. background-color="#F7F9FA"
  9. color="#000"
  10. @clickLeft="back"
  11. ></uni-nav-bar>
  12. <view class="list_box">
  13. <u-list @scrolltolower="scrolltolower" key="dataList">
  14. <view class="card_box" v-for="(item, index) in dataList" :key="index">
  15. <view class="item_box rx-bc">
  16. <view class="round">{{ index + 1 }}</view>
  17. <view class="time">投料时间:{{ item.executorTime }} </view>
  18. </view>
  19. <view class="item_box rx-bc">
  20. <view class="time">工序名称: {{ item.taskName }}</view>
  21. </view>
  22. <view v-for="(it, idx) in item.orderInfoList" :key="idx">
  23. <workOrderBom :item="it" :isDetails="true"></workOrderBom>
  24. <deviceBom
  25. v-if="it.equipmentList.length != 0"
  26. :list="it.equipmentList"
  27. :ishuoWei="false"
  28. :wordItem="it"
  29. :isDetails="true"
  30. ></deviceBom>
  31. <productsBom
  32. v-if="
  33. Object.prototype.hasOwnProperty.call(it, 'inProductList') &&
  34. it.inProductList[0]
  35. "
  36. :productsObj="it.inProductList"
  37. ></productsBom>
  38. <modelBom v-if="it.modelList.length != 0" :list="it.modelList">
  39. </modelBom>
  40. <instanceBom
  41. v-if="it.instanceList.length != 0"
  42. :isDetails="true"
  43. :list="it.instanceList"
  44. :currentTaskDiagram="currentTaskDiagram"
  45. :equipmentList="it.equipmentList"
  46. ></instanceBom>
  47. <semiProductBom
  48. v-if="it.taskType != 3 && it.semiProductList.length != 0"
  49. :isDetails="true"
  50. :list="it.semiProductList"
  51. :currentTaskDiagram="currentTaskDiagram"
  52. :equipmentList="it.equipmentList"
  53. :workInfo="it"
  54. ></semiProductBom>
  55. <!-- 周转车 -->
  56. <turnoverBom
  57. v-if="it.turnover.length != 0"
  58. :list="it.turnover"
  59. :isDetails="true"
  60. :wordItem="it"
  61. pattern="feed"
  62. ></turnoverBom>
  63. <packingBom
  64. v-if="it.packingList.length != 0"
  65. :list="it.packingList"
  66. ></packingBom>
  67. <palletBom
  68. v-if="Object.prototype.hasOwnProperty.call(it, 'palletList')"
  69. :palletList="it.palletList"
  70. ></palletBom>
  71. <revolvingDiskBom
  72. v-if="
  73. Object.prototype.hasOwnProperty.call(it, 'revolvingDiskList')
  74. "
  75. :revolvingDiskList="it.revolvingDiskList"
  76. ></revolvingDiskBom>
  77. <inspectionBom
  78. v-if="
  79. it.taskType == 3 &&
  80. Object.prototype.hasOwnProperty.call(it, 'semiProductList') &&
  81. it.semiProductList
  82. "
  83. :semiProductList="it.semiProductList"
  84. :isDetails="true"
  85. ></inspectionBom>
  86. </view>
  87. </view>
  88. </u-list>
  89. </view>
  90. </view>
  91. </template>
  92. <script>
  93. import workOrderBom from "../components/workOrderBom.vue";
  94. import deviceBom from "../components/deviceBom.vue";
  95. import modelBom from "../components/modelBom.vue";
  96. import instanceBom from "../components/instanceBom.vue";
  97. import semiProductBom from "../components/semiProductBom";
  98. import packingBom from "../components/packingBom.vue";
  99. import palletBom from "../components/palletBom";
  100. import revolvingDiskBom from "../components/revolvingDiskBom";
  101. import productsBom from "../components/productsBom.vue";
  102. import turnoverBom from "../components/turnoverBom.vue";
  103. import inspectionBom from "../../sample/components/inspectionBom";
  104. import { feedByOrderIds } from "@/api/pda/feeding.js";
  105. export default {
  106. components: {
  107. workOrderBom,
  108. deviceBom,
  109. modelBom,
  110. instanceBom,
  111. packingBom,
  112. palletBom,
  113. revolvingDiskBom,
  114. semiProductBom,
  115. productsBom,
  116. turnoverBom,
  117. inspectionBom,
  118. },
  119. data() {
  120. return {
  121. ids: [],
  122. taskId: null,
  123. dataList: [],
  124. currentTaskDiagram: {
  125. isFirstTask: 0,
  126. },
  127. };
  128. },
  129. onLoad(option) {
  130. this.ids = [option.id];
  131. this.taskId = option.taskId;
  132. this.getList();
  133. },
  134. methods: {
  135. async getList() {
  136. let param = {
  137. ids: this.ids,
  138. taskId: this.taskId,
  139. };
  140. const res = await feedByOrderIds(param);
  141. this.dataList = res;
  142. },
  143. scrolltolower() {},
  144. },
  145. };
  146. </script>
  147. <style lang="scss" scoped>
  148. .content-box {
  149. height: 100vh;
  150. overflow: hidden;
  151. display: flex;
  152. flex-direction: column;
  153. }
  154. .item_box {
  155. margin-top: 10rpx;
  156. margin-bottom: 16rpx;
  157. width: 706rpx;
  158. .round {
  159. width: 40rpx;
  160. height: 40rpx;
  161. line-height: 40rpx;
  162. border-radius: 50%;
  163. background: $theme-color;
  164. color: #fff;
  165. text-align: center;
  166. font-size: 20rpx;
  167. }
  168. .time {
  169. color: #000;
  170. font-family: PingFang HK;
  171. font-size: 28rpx;
  172. font-style: normal;
  173. font-weight: 600;
  174. margin-left: 16rpx;
  175. }
  176. }
  177. .list_box {
  178. flex: 1;
  179. overflow: hidden;
  180. padding: 4rpx 0;
  181. .u-list {
  182. height: 100% !important;
  183. }
  184. .card_box {
  185. padding: 16rpx 24rpx;
  186. }
  187. }
  188. </style>