details.vue 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259
  1. <template>
  2. <view class="content-box">
  3. <uni-nav-bar fixed="true" statusBar="true" left-icon="back" :title="title" background-color="#F7F9FA"
  4. color="#000" @clickLeft="back">
  5. </uni-nav-bar>
  6. <view class="list_box">
  7. <u-list @scrolltolower="scrolltolower" v-if='taskType != 5'>
  8. <view class="card_box" v-for="(objData,index) in list" :key='index'>
  9. <view class="rx-bc title_card">
  10. <view>{{index + 1}}</view>
  11. <view>报工时间: {{objData.createTime}}</view>
  12. </view>
  13. <workOrderBom :item='objData' v-if='objData' :isDetails='true'></workOrderBom>
  14. <deviceBom v-if='objData.equipmentList.length != 0' :list='objData.equipmentList'></deviceBom>
  15. <modelBom v-if='objData.modelList.length != 0' :list='objData.modelList'>
  16. </modelBom>
  17. <qualityStat :normalQuality='objData.normalQuality' v-if='objData && taskType == 3'></qualityStat>
  18. <sampleBom :item='objData.quality' v-if='objData.quality && taskType == 2'
  19. :workReportInfo='objData.workReportInfo' :isDetails='true'></sampleBom>
  20. <jobBom :item='objData' v-if="objData.notFormedList" :palletList='objData.palletList'
  21. :notFormed='objData.notFormedList' :isDetails='true'></jobBom>
  22. <palletBom v-if="objData.palletList.length != 0" :palletList='objData.palletList' :isDetails='true'>
  23. </palletBom>
  24. <revolvingDiskBom v-if="objData.revolvingDiskList.length > 0"
  25. :revolvingDiskList="objData.revolvingDiskList"></revolvingDiskBom>
  26. <oneJobBom v-if='objData.instanceList && objData.instanceList.length != 0 & taskType != 6'
  27. :list='objData.instanceList' :item='objData' :isDetails='true'> </oneJobBom>
  28. <oneJobQualityBom v-if='objData.instanceList && objData.instanceList.length != 0 & taskType == 6'
  29. :list='objData.instanceList' :item='objData' :isDetails='true'></oneJobQualityBom>
  30. <byProductBom v-if='objData.productRecycleList.length != 0 ' :list='objData.productRecycleList'
  31. :isDetails='true'>
  32. </byProductBom>
  33. <turnoverBom v-if='objData.turnover.length != 0' :list='objData.turnover' :wordItem='objData'
  34. pattern='job' :isDetails='true'>
  35. </turnoverBom>
  36. <aridRegion v-if='objData.aridRegionList.length != 0' :list='objData.aridRegionList'
  37. :remainingTime='0' :isType='true'></aridRegion>
  38. <packingTgBom
  39. v-if='objData.packInfo && objData.packInfo.pickOutInList && objData.packInfo.pickOutInList != 0 && taskType == 4 && clientEnvironmentId == 3 '
  40. :list='objData.packInfo.pickOutInList' :isWarehousing='true' :isDetails="true"></packingTgBom>
  41. <packingBom v-if="objData.packInfo && clientEnvironmentId == 2" :packInfo="objData.packInfo">
  42. </packingBom>
  43. </view>
  44. </u-list>
  45. <u-list @scrolltolower="scrolltolower" v-if='taskType == 5'>
  46. <view class="card_box" v-for="(objData,index) in list" :key='index'>
  47. <view class="rx-bc title_card">
  48. <view>{{index + 1}}</view>
  49. <view>报工时间: {{objData.createTime}}</view>
  50. </view>
  51. <workOrderBom2 :item='objData' v-if='objData' :isDetails='true'></workOrderBom2>
  52. <detailsBom v-if='objData.detailList.length != 0' :detailList='objData.detailList'></detailsBom>
  53. </view>
  54. </u-list>
  55. <view v-if='list.length == 0'>
  56. <view style='margin-top: 20vh;'>
  57. <u-empty iconSize='150' textSize='32' text='暂无报工详情'>
  58. </u-empty>
  59. </view>
  60. </view>
  61. </view>
  62. </view>
  63. </template>
  64. <script>
  65. import {
  66. listWorkReport,
  67. listApplystorage,
  68. } from '@/api/pda/workOrder.js'
  69. import workOrderBom from '../../feeding/components/workOrderBom.vue'
  70. import deviceBom from '../../feeding/components/deviceBom.vue'
  71. import modelBom from '../../feeding/components/modelBom.vue'
  72. import jobBom from '../../jobBooking/components/jobBom.vue'
  73. import oneJobBom from '../../jobBooking/components/oneJobBom.vue'
  74. import oneJobQualityBom from '../../jobBooking/components/oneJobQualityBom.vue'
  75. import byProductBom from '../../jobBooking/components/byProductBom'
  76. import turnoverBom from '../../jobBooking/components/turnoverBom.vue'
  77. import aridRegion from '../../feeding/components/aridRegion.vue'
  78. import paramBom from '../../feeding/components/paramBom.vue'
  79. import qualityStat from '../../sample/components/qualityStat.vue'
  80. import sampleBom from '../../sample/components/sampleBom.vue'
  81. import palletBom from '../../feeding/components/palletBom.vue'
  82. import revolvingDiskBom from '../../feeding/components/revolvingDiskBom.vue'
  83. import packingTgBom from '../../jobBooking/components/packingTgBom.vue'
  84. import packingBom from '../../jobBooking/components/packingBomDetails.vue'
  85. //
  86. import detailsBom from '../../warehousing/components/detailsBom.vue'
  87. import workOrderBom2 from '../../warehousing/components/workOrderBom.vue'
  88. export default {
  89. components: {
  90. workOrderBom,
  91. deviceBom,
  92. modelBom,
  93. jobBom,
  94. oneJobBom,
  95. oneJobQualityBom,
  96. byProductBom,
  97. turnoverBom,
  98. aridRegion,
  99. paramBom,
  100. qualityStat,
  101. sampleBom,
  102. palletBom,
  103. revolvingDiskBom,
  104. packingTgBom,
  105. packingBom,
  106. detailsBom,
  107. workOrderBom2
  108. },
  109. data() {
  110. return {
  111. workOrderId: null,
  112. taskId: null,
  113. list: [],
  114. taskType: 1,
  115. clientEnvironmentId: uni.getStorageSync("userInfo") && uni.getStorageSync("userInfo")
  116. .clientEnvironmentId, // *1 主环境-601环境 2 soll-索尔环境 3 tg-碳谷环境
  117. }
  118. },
  119. onLoad(options) {
  120. this.title = options.taskName ? options.taskName + '-报工详情' : '报工详情'
  121. this.workOrderId = options.id
  122. this.taskId = options.taskId
  123. this.taskType = options.taskType
  124. this.getList()
  125. },
  126. methods: {
  127. getList() {
  128. let param = {
  129. workOrderId: this.workOrderId,
  130. taskId: this.taskId
  131. }
  132. let URL = this.taskType == 5 ? listApplystorage : listWorkReport
  133. URL(param).then(res => {
  134. this.list = res
  135. })
  136. },
  137. scrolltolower() {}
  138. }
  139. }
  140. </script>
  141. <style lang="scss" scoped>
  142. .content-box {
  143. height: 100vh;
  144. overflow: hidden;
  145. display: flex;
  146. flex-direction: column;
  147. }
  148. .list_box {
  149. flex: 1;
  150. overflow: hidden;
  151. padding: 4rpx 0;
  152. .u-list {
  153. height: 100% !important;
  154. }
  155. .card_box {
  156. padding: 16rpx;
  157. }
  158. }
  159. .bottom-wrapper {
  160. .btn_box {
  161. width: 750rpx;
  162. height: 88rpx;
  163. line-height: 88rpx;
  164. background: $theme-color;
  165. text-align: center;
  166. font-size: 36rpx;
  167. font-style: normal;
  168. font-weight: 400;
  169. color: #fff;
  170. }
  171. }
  172. .operate_box {
  173. padding: 10rpx 160rpx;
  174. /deep/ .u-button {
  175. width: 160rpx;
  176. }
  177. }
  178. .title_card {
  179. height: 70rpx;
  180. width: 100%;
  181. background: #157A2C;
  182. font-size: 30rpx;
  183. color: #fff;
  184. line-height: 70rpx;
  185. padding: 0 22rpx;
  186. box-sizing: border-box;
  187. }
  188. </style>