@logwire/logwire-wms-pda-ui 1.1.19 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (525) hide show
  1. package/README.md +117 -134
  2. package/package.json +43 -69
  3. package/src/api/common/Msg.js +34 -26
  4. package/src/api/common/barcode.js +165 -165
  5. package/src/api/common/common.js +48 -33
  6. package/src/api/config/masterLocation/masterLocationConfig/action.js +61 -0
  7. package/src/api/config/masterLocation/masterLocationConfig/index.js +18 -0
  8. package/src/api/config/masterLocation/masterLocationQuery/action.js +28 -0
  9. package/src/api/{inner → config}/newProject/action.js +1 -1
  10. package/src/api/{inner → config}/newProject/index.js +0 -0
  11. package/src/api/inbound/receive.js +327 -8
  12. package/src/api/inner/borrow/index.js +51 -0
  13. package/src/api/inner/dead/action.js +24 -0
  14. package/src/api/inner/dead/large.js +78 -0
  15. package/src/api/inner/dead/small.js +96 -0
  16. package/src/api/inner/quality/action.js +51 -0
  17. package/src/api/inner/quality/sample.js +24 -0
  18. package/src/api/inner/reportAbnormal/index.js +1 -1
  19. package/src/api/inventory/inventory.js +63 -0
  20. package/src/api/outbound/bale/aloneBale/action.js +123 -0
  21. package/src/api/outbound/bale/aloneBale/index.js +24 -0
  22. package/src/api/outbound/bale/baleChange/action.js +51 -0
  23. package/src/api/outbound/bale/baleChange/addCheck.js +33 -0
  24. package/src/api/outbound/bale/checkBale/action.js +132 -123
  25. package/src/api/outbound/bale/checkBale/index.js +52 -52
  26. package/src/api/outbound/block/index.js +68 -0
  27. package/src/api/outbound/delivery/action.js +33 -1
  28. package/src/api/outbound/handover/index.js +33 -0
  29. package/src/api/outbound/handover/lpn.js +33 -0
  30. package/src/api/outbound/handover/mixin.js +42 -0
  31. package/src/api/outbound/handover/pageBox.js +24 -0
  32. package/src/api/outbound/pick/index.js +8 -0
  33. package/src/api/outbound/pick/sow.js +105 -0
  34. package/src/api/outbound/reprint-box/index.js +17 -0
  35. package/src/api/outbound/sow/action.js +1 -1
  36. package/src/api/outbound/stockout/index.js +54 -0
  37. package/src/api/outbound/transfer/index.js +23 -0
  38. package/src/api/receive/abnormal.js +1 -1
  39. package/src/api/receive/putaway.js +35 -1
  40. package/src/api/receive/receipt.js +7 -0
  41. package/src/assets/css/changeVant.less +29 -22
  42. package/src/assets/css/global.less +428 -411
  43. package/src/assets/css/var.less +99 -117
  44. package/src/assets/css//345/205/250/345/261/200/346/240/267/345/274/217.md +1 -31
  45. package/src/assets/img/close_red.png +0 -0
  46. package/src/assets/img/lwLoginModel/language.png +0 -0
  47. package/src/assets/img/lwLoginModel/timezone.png +0 -0
  48. package/src/assets/img/lwNotData/noneData.png +0 -0
  49. package/src/assets/img/menu/allotReceive.png +0 -0
  50. package/src/assets/img/menu/baleChange.png +0 -0
  51. package/src/assets/img/menu/borrowPick.png +0 -0
  52. package/src/assets/img/menu/boxTransfer.png +0 -0
  53. package/src/assets/img/menu/confirmStockOut.png +0 -0
  54. package/src/assets/img/menu/count.png +0 -0
  55. package/src/assets/img/menu/deadPutaway.png +0 -0
  56. package/src/assets/img/menu/disposeAbnormal.png +0 -0
  57. package/src/assets/img/menu/handover.png +0 -0
  58. package/src/assets/img/menu/lpnPack.png +0 -0
  59. package/src/assets/img/menu/mainData.png +0 -0
  60. package/src/assets/img/menu/mainLoc.png +0 -0
  61. package/src/assets/img/menu/mainLocSearch.png +0 -0
  62. package/src/assets/img/menu/moveUp.png +0 -0
  63. package/src/assets/img/menu/newConfig.png +0 -0
  64. package/src/assets/img/menu/outboundBlock.png +0 -0
  65. package/src/assets/img/menu/outboundReprint.png +0 -0
  66. package/src/assets/img/menu/pickContainer.png +0 -0
  67. package/src/assets/img/menu/process.png +0 -0
  68. package/src/assets/img/menu/processTable.png +0 -0
  69. package/src/assets/img/menu/quality.png +0 -0
  70. package/src/assets/img/menu/receive-case.png +0 -0
  71. package/src/assets/img/menu/receive-lpn.png +0 -0
  72. package/src/assets/img/menu/receive-sku.png +0 -0
  73. package/src/assets/img/menu/receive_random.png +0 -0
  74. package/src/assets/img/menu/stockSearch.png +0 -0
  75. package/src/assets/img/my/timezone.png +0 -0
  76. package/src/assets/img/timezone.png +0 -0
  77. package/src/components/module/AbnormalInput/index.js +11 -0
  78. package/src/components/module/AbnormalInput/index.vue +322 -0
  79. package/src/components/module/AbnormalInput//345/274/202/345/270/270/350/276/223/345/205/245/346/250/241/345/235/227.md +1 -0
  80. package/src/components/module/BoxInfo/index.js +10 -0
  81. package/src/components/module/BoxInfo/index.vue +69 -0
  82. package/src/components/{page/inbound/newProject/action/index.less → module/BoxInfo//346/237/245/347/234/213/347/256/261/344/277/241/346/201/257.md} +0 -0
  83. package/src/components/module/InnerAbnormal/index.js +11 -11
  84. package/src/components/module/InnerAbnormal/index.vue +120 -367
  85. package/src/components/module/InnerAbnormal//345/234/250/345/272/223/345/274/202/345/270/270/346/250/241/345/235/227.md +1 -0
  86. package/src/components/module/Login/index.vue +50 -19
  87. package/src/components/module/Login//347/231/273/345/275/225/346/250/241/345/235/227.md +1 -1
  88. package/src/components/module/Lot/index.vue +205 -181
  89. package/src/components/module/Lot//346/211/271/346/254/241/345/261/236/346/200/247.md +4 -2
  90. package/src/components/module/LotLook/index.vue +93 -80
  91. package/src/components/module/LotLook//346/225/260/346/215/256/346/237/245/347/234/213.md +3 -0
  92. package/src/components/module/Menu/index.vue +8 -4
  93. package/src/components/module/Menu//350/217/234/345/215/225/346/240/217.md +1 -1
  94. package/src/components/module/MsgItem/index.vue +124 -109
  95. package/src/components/module/MsgItem//346/266/210/346/201/257/345/210/227/350/241/250/345/217/212/345/210/206/351/241/265/346/250/241/345/235/227.md +1 -1
  96. package/src/components/module/OnLine/index.vue +195 -195
  97. package/src/components/module/OnLine//344/270/212/344/270/213/347/272/277/347/256/241/347/220/206/346/250/241/345/235/227.md +1 -1
  98. package/src/components/module/ReceiveAbnormal/index.vue +956 -865
  99. package/src/components/module/ReceiveAbnormal//346/224/266/350/264/247/345/274/202/345/270/270/346/250/241/345/235/227.md +1 -0
  100. package/src/components/module/ScanDataList/index.vue +333 -326
  101. package/src/components/module/ScanDataList//346/211/253/346/217/217/346/225/260/346/215/256/345/261/225/347/244/272/345/217/212/345/210/240/351/231/244.md +2 -0
  102. package/src/components/module/SkuInfo/index.vue +68 -65
  103. package/src/components/module/SkuInfo//346/237/245/347/234/213/345/225/206/345/223/201/344/277/241/346/201/257.md +4 -0
  104. package/src/components/module/SystemInfo/index.vue +227 -217
  105. package/src/components/module/SystemInfo//347/263/273/347/273/237/344/277/241/346/201/257/344/270/216/344/270/212/347/272/277/347/212/266/346/200/201/346/250/241/345/235/227.md +1 -1
  106. package/src/components/module/index.js +48 -42
  107. package/src/components/page/common/Device/index.vue +186 -186
  108. package/src/components/page/common/Language/index.vue +1 -0
  109. package/src/components/page/common/Login/index.vue +2 -4
  110. package/src/components/page/common/Menu/index.vue +16 -10
  111. package/src/components/page/common/Msg/index.vue +144 -36
  112. package/src/components/page/common/My/index.vue +47 -4
  113. package/src/components/page/common/Print/index.vue +311 -314
  114. package/src/components/page/common/Task/index.vue +18 -10
  115. package/src/components/page/common/Timezone/index.js +11 -0
  116. package/src/components/page/common/Timezone/index.vue +82 -0
  117. package/src/components/page/{inbound/newProject/index/index.less → common/Timezone//346/227/266/345/214/272/351/200/211/346/213/251/351/241/265.md} +0 -0
  118. package/src/components/page/common/Warehouse/index.vue +221 -216
  119. package/src/components/page/common/index.js +42 -39
  120. package/src/components/page/config/index.js +28 -0
  121. package/src/components/page/config/masterLocation/masterLocationConfig/action/index.js +11 -0
  122. package/src/components/page/{inbound/newProject//346/226/260/345/223/201/351/205/215/347/275/256.md → config/masterLocation/masterLocationConfig/action/index.less} +0 -0
  123. package/src/components/page/config/masterLocation/masterLocationConfig/action/index.vue +780 -0
  124. package/src/components/page/config/masterLocation/masterLocationConfig/index/index.js +11 -0
  125. package/src/components/page/{inner/lpnPutAway//344/270/212/346/236/266/347/247/273/345/212/250.md → config/masterLocation/masterLocationConfig/index/index.less} +0 -0
  126. package/src/components/page/config/masterLocation/masterLocationConfig/index/index.vue +112 -0
  127. package/src/components/page/{outbound/bale/components/mainPage//351/241/265/351/235/242/345/244/226/346/241/206/347/273/204/344/273/266.md → config/masterLocation/masterLocationConfig//344/270/273/345/272/223/344/275/215/351/205/215/347/275/256.md} +0 -0
  128. package/src/components/page/config/masterLocation/masterLocationQuery/action/index.js +18 -0
  129. package/src/components/page/config/masterLocation/masterLocationQuery/action/queryByLocationCode.vue +165 -0
  130. package/src/components/page/config/masterLocation/masterLocationQuery/action/queryBySkuCode.vue +168 -0
  131. package/src/components/page/config/masterLocation/masterLocationQuery/index/index.js +11 -0
  132. package/src/components/page/config/masterLocation/masterLocationQuery/index/index.less +0 -0
  133. package/src/components/page/config/masterLocation/masterLocationQuery/index/index.vue +114 -0
  134. package/src/components/page/config/masterLocation/masterLocationQuery//344/270/273/345/272/223/344/275/215/346/237/245/350/257/242.md +0 -0
  135. package/src/components/page/config/masterLocation//344/270/273/345/272/223/344/275/215.md +0 -0
  136. package/src/components/page/{inbound → config}/newProject/action/index.js +0 -0
  137. package/src/components/page/config/newProject/action/index.less +0 -0
  138. package/src/components/page/{inbound → config}/newProject/action/index.vue +562 -436
  139. package/src/components/page/{inbound → config}/newProject/index/index.js +0 -0
  140. package/src/components/page/config/newProject/index/index.less +0 -0
  141. package/src/components/page/{inbound → config}/newProject/index/index.vue +6 -6
  142. package/src/components/page/config/newProject//346/226/260/345/223/201/351/205/215/347/275/256.md +0 -0
  143. package/src/components/page/count/components/CountBoard.vue +7 -7
  144. package/src/components/page/count/components/RandomCount.vue +154 -154
  145. package/src/components/page/count/inv/action/index.vue +52 -30
  146. package/src/components/page/count/inv/index/index.vue +15 -15
  147. package/src/components/page/count/loc/action/index.vue +546 -546
  148. package/src/components/page/count/loc/index/index.vue +11 -11
  149. package/src/components/page/inbound/components/AllocReceiveResult.vue +129 -0
  150. package/src/components/page/inbound/components/AllocScanListItem.vue +147 -0
  151. package/src/components/page/inbound/components/AllocSkuListItem.vue +148 -0
  152. package/src/components/page/inbound/components/AsnInfo.vue +91 -29
  153. package/src/components/page/inbound/components/AsnSkuInfo.vue +27 -7
  154. package/src/components/page/inbound/components/QualityCard.vue +16 -16
  155. package/src/components/page/inbound/components/QualityTaskInfo.vue +12 -12
  156. package/src/components/page/inbound/components/SearchBar.vue +85 -0
  157. package/src/components/page/inbound/components/SkuReceiveInfo.vue +69 -0
  158. package/src/components/page/inbound/components/SnsList.vue +103 -99
  159. package/src/components/page/inbound/index.js +11 -5
  160. package/src/components/page/inbound/receive/home/index.vue +88 -16
  161. package/src/components/page/inbound/receive/index/index.vue +92 -89
  162. package/src/components/page/inbound/receive/quality/LwInboundQualityExecutePage.vue +457 -425
  163. package/src/components/page/inbound/receive/quality/LwInboundQualityTaskListPage.vue +164 -164
  164. package/src/components/page/inbound/receive/receive-alloc/LwInboundReceiveAllocSkuExecutePage.vue +595 -0
  165. package/src/components/page/inbound/receive/receive-alloc/LwInboundReceiveAllocSnExecutePage.vue +233 -0
  166. package/src/components/page/inbound/receive/receive-alloc/LwInboundReceiveAllocTabListPage.vue +247 -0
  167. package/src/components/page/inbound/receive/receive-alloc/index.js +19 -0
  168. package/src/components/page/inbound/receive/receive-case/LwInboundReceiveCaseExecutePage.vue +312 -0
  169. package/src/components/page/inbound/receive/receive-case/LwInboundReceiveCaseScanPage.vue +80 -0
  170. package/src/components/page/inbound/receive/receive-case/index.js +16 -0
  171. package/src/components/page/inbound/receive/receive-lpn/LwInboundReceiveLpnBatchExecutePage.vue +386 -0
  172. package/src/components/page/inbound/receive/receive-lpn/LwInboundReceiveLpnExecutePage.vue +216 -0
  173. package/src/components/page/inbound/receive/receive-lpn/LwInboundReceiveLpnScanPage.vue +80 -0
  174. package/src/components/page/inbound/receive/receive-lpn/index.js +19 -0
  175. package/src/components/page/inbound/receive/receive-random/LwInboundReceiveRandomSkuExecutePage.vue +340 -0
  176. package/src/components/page/inbound/receive/receive-random/LwInboundReceiveRandomSkuScanPage.vue +111 -0
  177. package/src/components/page/inbound/receive/receive-random/LwInboundReceiveRandomSkuSnExecutePage.vue +340 -0
  178. package/src/components/page/inbound/receive/receive-random/index.js +19 -0
  179. package/src/components/page/inbound/receive/receive-sku/LwInboundReceiveSkuAdvancePage.vue +330 -321
  180. package/src/components/page/inbound/receive/receive-sku/LwInboundReceiveSkuDirectPage.vue +424 -408
  181. package/src/components/page/inbound/receive/receive-sku/LwInboundReceiveSkuScanPage.vue +161 -150
  182. package/src/components/page/inbound/util/InboundUtils.js +72 -0
  183. package/src/components/page/index.js +41 -33
  184. package/src/components/page/inner/abnormalMove/index/index.vue +466 -468
  185. package/src/components/page/inner/borrow/action/index.js +11 -0
  186. package/src/components/page/inner/borrow/action/index.vue +831 -0
  187. package/src/components/page/inner/borrow/index/index.js +11 -0
  188. package/src/components/page/inner/borrow/index/index.vue +249 -0
  189. package/src/components/page/inner/borrow//345/200/237/344/273/266.md +0 -0
  190. package/src/components/page/inner/dead/components/abnPopup.vue +83 -0
  191. package/src/components/page/inner/dead/components/bagItem.vue +104 -0
  192. package/src/components/page/inner/dead/components/boxListItem.vue +135 -0
  193. package/src/components/page/inner/dead/components/dataInfo.vue +94 -0
  194. package/src/components/page/inner/dead/components/lackPopup.vue +190 -0
  195. package/src/components/page/inner/dead/components/lpnListItem.vue +115 -0
  196. package/src/components/page/inner/dead/components/taskItem.vue +570 -0
  197. package/src/components/page/inner/dead/components/waitOverLpn.vue +74 -0
  198. package/src/components/page/inner/dead/large/index.js +11 -0
  199. package/src/components/page/inner/dead/large/index.vue +376 -0
  200. package/src/components/page/inner/dead/large//344/270/255/345/244/247/344/273/266 - /346/211/223/346/211/230.md +0 -0
  201. package/src/components/page/inner/dead/putaway/action/index.js +11 -0
  202. package/src/components/page/inner/dead/putaway/action/index.vue +131 -0
  203. package/src/components/page/inner/dead/putaway/components/collapseItem.vue +128 -0
  204. package/src/components/page/inner/dead/putaway/index/index.js +11 -0
  205. package/src/components/page/inner/dead/putaway/index/index.vue +63 -0
  206. package/src/components/page/inner/dead/putaway//345/221/206/346/273/236/345/223/201/344/270/212/346/236/266.md +0 -0
  207. package/src/components/page/inner/dead/small/index.js +11 -0
  208. package/src/components/page/inner/dead/small/index.vue +656 -0
  209. package/src/components/page/inner/dead/small//345/260/217/344/273/266 - /350/243/205/347/256/261.md +0 -0
  210. package/src/components/page/inner/dead/taskEntrance/index.js +11 -0
  211. package/src/components/page/inner/dead/taskEntrance/index.vue +49 -0
  212. package/src/components/page/inner/dead/taskEntrance//344/273/273/345/212/241/345/205/245/345/217/243/351/241/265/351/235/242.md +0 -0
  213. package/src/components/page/inner/dead//345/221/206/346/273/236/345/223/201/346/225/264/347/220/206.md +0 -0
  214. package/src/components/page/inner/disposeAbnormal/action/index.vue +524 -524
  215. package/src/components/page/inner/disposeAbnormal/components/abnInfo/index.vue +55 -55
  216. package/src/components/page/inner/disposeAbnormal/components/disposePopup/index.vue +229 -229
  217. package/src/components/page/inner/disposeAbnormal/components/listItem/index.vue +12 -12
  218. package/src/components/page/inner/disposeAbnormal/components/searchBar/index.vue +264 -264
  219. package/src/components/page/inner/disposeAbnormal/index/index.vue +248 -237
  220. package/src/components/page/inner/index.js +57 -0
  221. package/src/components/page/inner/lpnMove/action/index.vue +243 -222
  222. package/src/components/page/inner/lpnMove/index/index.vue +155 -155
  223. package/src/components/page/inner/materialApply/action/index.vue +555 -563
  224. package/src/components/page/inner/materialApply/generate/index.vue +385 -376
  225. package/src/components/page/inner/movePutAway/index/index.vue +363 -363
  226. package/src/components/page/inner/quality/action/index.js +11 -0
  227. package/src/components/page/inner/quality/action/index.vue +720 -0
  228. package/src/components/page/inner/quality/components/lookData.vue +109 -0
  229. package/src/components/page/inner/quality/components/sampleInfo.vue +62 -0
  230. package/src/components/page/inner/quality/sample/index.js +11 -0
  231. package/src/components/page/inner/quality/sample/index.vue +426 -0
  232. package/src/components/page/inner/quality/sample//346/212/275/346/243/200.md +0 -0
  233. package/src/components/page/inner/quality//350/264/250/346/243/200.md +0 -0
  234. package/src/components/page/inner/randomMove/components/Down/index.vue +507 -470
  235. package/src/components/page/inner/randomMove/components/Up/index.vue +587 -523
  236. package/src/components/page/inner/reportAbnormal/action/index.vue +2 -4
  237. package/src/components/page/inner/reportAbnormal/index/index.vue +251 -251
  238. package/src/components/page/inner/taskMove/index/index.vue +181 -60
  239. package/src/components/page/inventory/index.js +17 -0
  240. package/src/components/page/inventory/inventoryItem/index.vue +127 -0
  241. package/src/components/page/inventory/inventoryLotPage/index.vue +208 -0
  242. package/src/components/page/inventory/queryInventory/index/index.js +11 -0
  243. package/src/components/page/inventory/queryInventory/index/index.less +0 -0
  244. package/src/components/page/inventory/queryInventory/index/index.vue +231 -0
  245. package/src/components/page/inventory/queryInventory/page/index.js +11 -0
  246. package/src/components/page/inventory/queryInventory/page/index.less +0 -0
  247. package/src/components/page/inventory/queryInventory/page/index.vue +525 -0
  248. package/src/components/page/outbound/bale/aloneBale/action/index.vue +779 -192
  249. package/src/components/page/outbound/bale/aloneBale/index/index.vue +69 -7
  250. package/src/components/page/outbound/bale/aloneBale/newBale/index.vue +17 -3
  251. package/src/components/page/outbound/bale/baleChange/action/index.js +11 -0
  252. package/src/components/page/outbound/bale/baleChange/action/index.vue +585 -0
  253. package/src/components/page/outbound/bale/baleChange/index/index.js +11 -0
  254. package/src/components/page/outbound/bale/baleChange/index/index.vue +67 -0
  255. package/src/components/page/outbound/bale/baleChange/skuCheck/index.js +11 -0
  256. package/src/components/page/outbound/bale/baleChange/skuCheck/index.vue +351 -0
  257. package/src/components/page/outbound/bale/baleChange//346/215/206/345/214/205/347/256/261/350/260/203/346/225/264.md +0 -0
  258. package/src/components/page/outbound/bale/checkBale/action/index.vue +941 -1330
  259. package/src/components/page/outbound/bale/checkBale/allCheck/index.vue +19 -19
  260. package/src/components/page/outbound/bale/checkBale/index/index.vue +11 -9
  261. package/src/components/page/outbound/bale/checkBale/newBale/index.vue +10 -4
  262. package/src/components/page/outbound/bale/components/allBlock/index.vue +5 -5
  263. package/src/components/page/outbound/bale/components/containerInfo/index.vue +242 -237
  264. package/src/components/page/outbound/bale/components/containerSkuQty/img.png +0 -0
  265. package/src/components/page/outbound/bale/components/containerSkuQty/index.vue +3 -3
  266. package/src/components/page/outbound/bale/components/containerSkuQty//345/275/223/345/211/215/346/215/206/345/214/205/345/256/271/345/231/250/345/217/212/345/223/201/347/247/215/346/225/260.md +1 -0
  267. package/src/components/page/outbound/bale/components/delSku/index.vue +317 -0
  268. package/src/components/page/outbound/bale/components/delSku//345/211/224/351/231/244/345/225/206/345/223/201/345/274/271/346/241/206.md +0 -0
  269. package/src/components/page/outbound/bale/components/partBlock/index.vue +201 -197
  270. package/src/components/page/outbound/bale/components/planCollapse/index.vue +392 -396
  271. package/src/components/page/outbound/bale/components/repeatCheck/index.vue +101 -0
  272. package/src/components/page/outbound/bale/components/repeatCheck//351/207/215/346/226/260/345/244/215/346/240/270/345/274/271/346/241/206.md +0 -0
  273. package/src/components/page/outbound/bale/components/storeInfo/index.vue +135 -135
  274. package/src/components/page/outbound/bale/components/storeInfoSkuList/index.vue +128 -121
  275. package/src/components/page/outbound/bale/components//346/215/206/345/214/205/344/275/277/347/224/250/347/232/204/347/273/204/344/273/266.md +0 -0
  276. package/src/components/page/outbound/bale/mixins.js +212 -0
  277. package/src/components/page/outbound/bale//346/215/206/345/214/205/347/233/270/345/205/263/351/241/265/351/235/242-/345/244/215/346/240/270/346/215/206/345/214/205-/347/213/254/347/253/213/346/215/206/345/214/205-/346/215/206/345/214/205/347/256/261/350/260/203/346/225/264.md +0 -0
  278. package/src/components/page/outbound/block/LwOutboundBlockBoxListPage.vue +67 -0
  279. package/src/components/page/outbound/block/LwOutboundBlockExecutePage.vue +316 -0
  280. package/src/components/page/outbound/block/components/BlockInfo.vue +56 -0
  281. package/src/components/page/outbound/block/index.js +16 -0
  282. package/src/components/page/outbound/block//345/207/272/345/272/223/346/213/246/346/210/252.txt +0 -0
  283. package/src/components/page/outbound/boxTransfer/action/index.js +11 -0
  284. package/src/components/page/outbound/boxTransfer/action/index.vue +214 -0
  285. package/src/components/page/outbound/boxTransfer/index/index.js +11 -0
  286. package/src/components/page/outbound/boxTransfer/index/index.vue +174 -0
  287. package/src/components/page/outbound/boxTransfer//346/273/236/347/225/231/344/273/266/350/275/254/345/255/230.md +0 -0
  288. package/src/components/page/outbound/delivery/action/index.vue +784 -646
  289. package/src/components/page/outbound/delivery/addOrder/index.vue +281 -281
  290. package/src/components/page/outbound/delivery/components/boxItem/index.vue +154 -118
  291. package/src/components/page/outbound/delivery/components/orderContent/index.vue +97 -63
  292. package/src/components/page/outbound/delivery/components/orderContentTitle/index.vue +400 -114
  293. package/src/components/page/outbound/delivery/components/soAndLpnItem/index.vue +199 -161
  294. package/src/components/page/outbound/delivery/index/index.vue +205 -154
  295. package/src/components/page/outbound/handover/components/boxInfo.vue +51 -0
  296. package/src/components/page/outbound/handover/components/boxNumList.vue +158 -0
  297. package/src/components/page/outbound/handover/components/collapseItem.vue +136 -0
  298. package/src/components/page/outbound/handover/components/customerAndLine.vue +179 -0
  299. package/src/components/page/outbound/handover/components/customerList.vue +94 -0
  300. package/src/components/page/outbound/handover/components/lineInfo.vue +129 -0
  301. package/src/components/page/outbound/handover/components/lpnListItem.vue +119 -0
  302. package/src/components/page/outbound/handover/components/nowScan.vue +59 -0
  303. package/src/components/page/outbound/handover/components/pageBox.vue +524 -0
  304. package/src/components/page/outbound/handover/components/storeInfo.vue +128 -0
  305. package/src/components/page/outbound/handover/customer/index.js +11 -0
  306. package/src/components/page/outbound/handover/customer/index.vue +34 -0
  307. package/src/components/page/outbound/handover/index/index.js +11 -0
  308. package/src/components/page/outbound/handover/index/index.vue +217 -0
  309. package/src/components/page/outbound/handover/line/index.js +11 -0
  310. package/src/components/page/outbound/handover/line/index.vue +32 -0
  311. package/src/components/page/outbound/handover/lpn/index.js +11 -0
  312. package/src/components/page/outbound/handover/lpn/index.vue +262 -0
  313. package/src/components/page/outbound/handover/mixin.js +207 -0
  314. package/src/components/page/outbound/handover//345/207/272/345/272/223/344/272/244/346/216/245.md +0 -0
  315. package/src/components/page/outbound/index.js +152 -94
  316. package/src/components/page/outbound/lpnPack/action/index.js +11 -0
  317. package/src/components/page/outbound/lpnPack/action/index.vue +287 -0
  318. package/src/components/page/outbound/lpnPack/components/lpnActionInfo.vue +113 -0
  319. package/src/components/page/outbound/lpnPack/components/lpnItem.vue +126 -0
  320. package/src/components/page/outbound/lpnPack/index/index.js +11 -0
  321. package/src/components/page/outbound/lpnPack/index/index.vue +166 -0
  322. package/src/components/page/outbound/lpnPack/newLpnPack/index.js +11 -0
  323. package/src/components/page/outbound/lpnPack/newLpnPack/index.vue +80 -0
  324. package/src/components/page/outbound/lpnPack/newLpnPack//346/226/260/346/211/223/346/211/230.md +0 -0
  325. package/src/components/page/outbound/lpnPack/over/index.js +11 -0
  326. package/src/components/page/outbound/lpnPack/over/index.vue +85 -0
  327. package/src/components/page/outbound/lpnPack/over//345/267/262/346/211/223/346/211/230.md +0 -0
  328. package/src/components/page/outbound/lpnPack//346/211/223/346/211/230.md +0 -0
  329. package/src/components/page/outbound/pick/alone/index.vue +504 -497
  330. package/src/components/page/outbound/pick/box/index.vue +371 -363
  331. package/src/components/page/outbound/pick/components/dataLookAndChange/index.vue +671 -748
  332. package/src/components/page/outbound/pick/components/skuLocationInfo/index.vue +13 -12
  333. package/src/components/page/outbound/pick/components/sowList.vue +190 -0
  334. package/src/components/page/outbound/pick/components/splitPutDown/index.vue +208 -208
  335. package/src/components/page/outbound/pick/components/taskInfo.vue +129 -0
  336. package/src/components/page/outbound/pick/index/index.vue +622 -624
  337. package/src/components/page/outbound/pick/lpn/index.vue +321 -305
  338. package/src/components/page/outbound/pick/mixin/all.js +98 -100
  339. package/src/components/page/outbound/pick/mixin/aloneAndNotAlone.js +132 -132
  340. package/src/components/page/outbound/pick/notAlone/index.vue +533 -524
  341. package/src/components/page/outbound/pick/sow/index.js +11 -0
  342. package/src/components/page/outbound/pick/sow/index.vue +1290 -0
  343. package/src/components/page/outbound/pick/sow//350/276/271/346/213/243/350/276/271/345/210/206.md +0 -0
  344. package/src/components/page/outbound/pickContainer/action/index.js +11 -0
  345. package/src/components/page/outbound/pickContainer/action/index.vue +219 -0
  346. package/src/components/page/outbound/pickContainer/index/index.js +11 -0
  347. package/src/components/page/outbound/pickContainer/index/index.vue +63 -0
  348. package/src/components/page/outbound/pickContainer//346/213/243/351/200/211/345/256/271/345/231/250/346/237/245/350/257/242.md +0 -0
  349. package/src/components/page/outbound/pickMerge/action/index.vue +37 -37
  350. package/src/components/page/outbound/pickMerge/components/containerInfo/index.vue +6 -6
  351. package/src/components/page/outbound/pickMerge/components/finishPopup/index.vue +4 -4
  352. package/src/components/page/outbound/pickMerge/components/skuInfo/index.vue +6 -6
  353. package/src/components/page/outbound/pickMerge/content/index.vue +170 -170
  354. package/src/components/page/outbound/pickMerge/index/index.vue +4 -4
  355. package/src/components/page/outbound/reprint-box/LwOutboundReprintBoxListPage.vue +206 -0
  356. package/src/components/page/outbound/reprint-box/index.js +13 -0
  357. package/src/components/page/outbound/reprint-box//347/256/261/347/245/250/350/241/245/346/211/223.txt +0 -0
  358. package/src/components/page/outbound/sow/action/index.vue +98 -112
  359. package/src/components/page/outbound/sow/components/sowLocationList/index.vue +23 -9
  360. package/src/components/page/outbound/sow/components/waitSowCollapse/index.vue +4 -4
  361. package/src/components/page/outbound/sow/index/index.vue +371 -374
  362. package/src/components/page/outbound/stockout/LwOutboundStockoutExecutePage.vue +108 -0
  363. package/src/components/page/outbound/stockout/LwOutboundStockoutListPage.vue +103 -0
  364. package/src/components/page/outbound/stockout/components/StockoutInfo.vue +42 -0
  365. package/src/components/page/outbound/stockout/index.js +16 -0
  366. package/src/components/page/outbound/stockout//347/274/272/350/264/247.txt +0 -0
  367. package/src/components/page/outbound/summary/box/index/index.vue +645 -645
  368. package/src/components/page/outbound/summary/lpn/action/index.vue +254 -253
  369. package/src/components/page/process/index.js +21 -0
  370. package/src/components/page/process/prepare/index.js +11 -0
  371. package/src/components/page/process/prepare/index.vue +841 -0
  372. package/src/components/page/process/process/action/index.js +11 -0
  373. package/src/components/page/process/process/action/index.vue +158 -0
  374. package/src/components/page/process/process/components/craftCollapse.vue +130 -0
  375. package/src/components/page/process/process/components/dockInfo.vue +79 -0
  376. package/src/components/page/process/process/components/dockTaskInfo.vue +192 -0
  377. package/src/components/page/process/process/components/overCollapse.vue +376 -0
  378. package/src/components/page/process/process/components/rawCollapse.vue +113 -0
  379. package/src/components/page/process/process/components/stopPopup.vue +90 -0
  380. package/src/components/page/process/process/console/index.js +11 -0
  381. package/src/components/page/process/process/console/index.vue +525 -0
  382. package/src/components/page/process/process/content/index.js +11 -0
  383. package/src/components/page/process/process/content/index.vue +367 -0
  384. package/src/components/page/process/process/index/index.js +11 -0
  385. package/src/components/page/process/process/index/index.vue +68 -0
  386. package/src/components/page/process//345/212/240/345/267/245.md +0 -0
  387. package/src/components/page/receive/index.js +6 -2
  388. package/src/components/page/receive/putaway/caseAction/index.js +9 -0
  389. package/src/components/page/receive/putaway/caseAction/index.vue +542 -0
  390. package/src/components/page/receive/putaway/components/CaseInfo/index.vue +178 -0
  391. package/src/components/page/receive/putaway/components/SkuInfo/index.vue +135 -91
  392. package/src/components/page/receive/putaway/components/SkuPutAwayInfo/index.vue +203 -203
  393. package/src/components/page/receive/putaway/components/TaskInfo/index.vue +40 -15
  394. package/src/components/page/receive/putaway/components/lpnBatchItem.vue +112 -0
  395. package/src/components/page/receive/putaway/components/overPutawayItem.vue +119 -0
  396. package/src/components/page/receive/putaway/index/index.vue +450 -288
  397. package/src/components/page/receive/putaway/lpnAction/index.vue +362 -332
  398. package/src/components/page/receive/putaway/lpnBatchAction/index.js +11 -0
  399. package/src/components/page/receive/putaway/lpnBatchAction/index.vue +213 -0
  400. package/src/components/page/receive/putaway/lpnBatchAction//346/225/264/346/211/230/347/233/230/346/211/271/351/207/217/344/270/212/346/236/266.md +0 -0
  401. package/src/components/page/receive/putaway/skuAction/index.vue +742 -742
  402. package/src/components/page/receive/receipt/action/index.vue +276 -260
  403. package/src/components/page/receive/receipt/index/index.vue +132 -124
  404. package/src/components/ui/BottomBar/index.vue +98 -72
  405. package/src/components/ui/BottomBarBtnHidden/index.vue +91 -91
  406. package/src/components/ui/BottomBarBtnHidden//345/272/225/351/203/250/346/214/211/351/222/256/346/240/217/351/232/220/350/227/217/345/244/232/344/275/231/346/214/211/351/222/256.md +1 -0
  407. package/src/components/ui/Button/index.vue +183 -183
  408. package/src/components/ui/CarPlate/index.vue +495 -378
  409. package/src/components/ui/Cell/index.vue +259 -259
  410. package/src/components/ui/CellPopupDate/index.vue +212 -167
  411. package/src/components/ui/CellPopupRadio/index.vue +136 -136
  412. package/src/components/ui/CutCard/index.vue +11 -0
  413. package/src/components/ui/DataLookBg/index.vue +72 -42
  414. package/src/components/ui/DataLookBg//346/225/260/346/215/256/347/234/213/346/235/277.md +1 -0
  415. package/src/components/ui/ErrorMsg/index.vue +1 -1
  416. package/src/components/ui/ImgLook/index.vue +105 -96
  417. package/src/components/ui/ImgUpload/index.vue +120 -120
  418. package/src/components/ui/ImgUpload/request.js +39 -39
  419. package/src/components/ui/Input/index.vue +581 -554
  420. package/src/components/ui/Loading/index.js +49 -49
  421. package/src/components/ui/NotData/index.vue +9 -3
  422. package/src/components/ui/Pages/index.vue +3 -2
  423. package/src/components/ui/Pagination/index.js +11 -0
  424. package/src/components/ui/Pagination/index.vue +274 -0
  425. package/src/components/ui/Pagination//345/210/206/351/241/265V2.md +1 -0
  426. package/src/components/ui/Popup/index.vue +242 -245
  427. package/src/components/ui/TitleValueCell/index.vue +88 -61
  428. package/src/components/ui/TitleValueCell//346/240/207/351/242/230/345/200/274/350/241/214.md +2 -0
  429. package/src/components/ui/index.js +87 -84
  430. package/src/mixins/loginAndInit/index.js +31 -27
  431. package/src/router/index.js +742 -405
  432. package/src/router/menu.js +638 -367
  433. package/src/test/file/index.js +11 -11
  434. package/src/utils/ApiUtils.js +59 -48
  435. package/src/utils/AppBack.js +43 -44
  436. package/src/utils/AppPower.js +191 -183
  437. package/src/utils/Axios.js +8 -4
  438. package/src/utils/BarcodeResolve.js +53 -12
  439. package/src/utils/DateTime.js +233 -219
  440. package/src/utils/DeepCopy.js +61 -61
  441. package/src/utils/Dialog.js +58 -0
  442. package/src/utils/Dict.js +73 -73
  443. package/src/utils/GetImgSrc.js +54 -53
  444. package/src/utils/Language.js +79 -59
  445. package/src/utils/LocalStorage.js +66 -30
  446. package/src/utils/Permissions.js +65 -51
  447. package/src/utils/Print.js +177 -179
  448. package/src/utils/README.md +60 -2
  449. package/src/utils/ScanRule.js +39 -150
  450. package/src/utils/SetColor.js +57 -22
  451. package/src/utils/TabBar.js +31 -30
  452. package/src/utils/Timezone.js +179 -0
  453. package/src/utils/Tip.js +26 -26
  454. package/src/utils/UUID.js +39 -33
  455. package/src/utils/Utils.js +34 -0
  456. package/src/utils/Warehouse.js +30 -26
  457. package/src/utils/index.js +8 -2
  458. package/src/utils/windowGlobalData.js +114 -88
  459. package/src/views/common/init/index.vue +138 -128
  460. package/src/views/common/my/timezone.vue +23 -0
  461. package/src/views/config/masterLocation/masterLocationConfig/action.vue +23 -0
  462. package/src/views/config/masterLocation/masterLocationConfig/index.vue +23 -0
  463. package/src/views/config/masterLocation/masterLocationQuery/index.vue +23 -0
  464. package/src/views/config/masterLocation/masterLocationQuery/queryByLocationCode.vue +23 -0
  465. package/src/views/config/masterLocation/masterLocationQuery/queryBySkuCode.vue +23 -0
  466. package/src/views/{inbound → config}/newProject/action.vue +0 -0
  467. package/src/views/{inbound → config}/newProject/index.vue +0 -0
  468. package/src/views/count/index.vue +2 -2
  469. package/src/views/inbound/quality/InboundQualityExecuteView.vue +2 -2
  470. package/src/views/inbound/quality/InboundQualityTaskListView.vue +2 -2
  471. package/src/views/inbound/receive/alloc/InboundReceiveAllocSkuExecuteView.vue +13 -0
  472. package/src/views/inbound/receive/alloc/InboundReceiveAllocSnExecuteView.vue +13 -0
  473. package/src/views/inbound/receive/alloc/InboundReceiveAllocTabListView.vue +13 -0
  474. package/src/views/inbound/receive/case/InboundReceiveCaseExecuteView.vue +13 -0
  475. package/src/views/inbound/receive/case/InboundReceiveCaseScanView.vue +13 -0
  476. package/src/views/inbound/receive/lpn/InboundReceiveLpnBatchExecuteView.vue +13 -0
  477. package/src/views/inbound/receive/lpn/InboundReceiveLpnExecuteView.vue +13 -0
  478. package/src/views/inbound/receive/lpn/InboundReceiveLpnScanView.vue +13 -0
  479. package/src/views/inbound/receive/random/InboundReceiveRandomSkuExecuteView.vue +13 -0
  480. package/src/views/inbound/receive/random/InboundReceiveRandomSkuScanView.vue +13 -0
  481. package/src/views/inbound/receive/random/InboundReceiveRandomSkuSnExecuteView.vue +13 -0
  482. package/src/views/inbound/receive/sku/InboundReceiveSkuAdvanceView.vue +1 -1
  483. package/src/views/inbound/receive/sku/InboundReceiveSkuDirectView.vue +1 -1
  484. package/src/views/inbound/receive/sku/InboundReceiveSkuScanView.vue +1 -1
  485. package/src/views/inner/borrow/action.vue +23 -0
  486. package/src/views/inner/borrow/index.vue +23 -0
  487. package/src/views/inner/dead/large.vue +23 -0
  488. package/src/views/inner/dead/putaway/action.vue +23 -0
  489. package/src/views/inner/dead/putaway/index.vue +23 -0
  490. package/src/views/inner/dead/smallPage.vue +23 -0
  491. package/src/views/inner/dead/taskEntrance.vue +23 -0
  492. package/src/views/inner/quality/action.vue +23 -0
  493. package/src/views/inner/quality/sample.vue +23 -0
  494. package/src/views/inventory/queryInventory/index.vue +23 -0
  495. package/src/views/inventory/queryInventory/page.vue +23 -0
  496. package/src/views/outbound/baleChange/action.vue +23 -0
  497. package/src/views/outbound/baleChange/index.vue +23 -0
  498. package/src/views/outbound/baleChange/skuCheck.vue +23 -0
  499. package/src/views/outbound/block/OutboundBlockBoxListView.vue +12 -0
  500. package/src/views/outbound/block/OutboundBlockExecuteView.vue +12 -0
  501. package/src/views/outbound/boxTransfer/action.vue +23 -0
  502. package/src/views/outbound/boxTransfer/index.vue +23 -0
  503. package/src/views/outbound/handover/customer.vue +23 -0
  504. package/src/views/outbound/handover/index.vue +23 -0
  505. package/src/views/outbound/handover/line.vue +23 -0
  506. package/src/views/outbound/handover/lpn.vue +23 -0
  507. package/src/views/outbound/lpnPack/action.vue +23 -0
  508. package/src/views/outbound/lpnPack/index.vue +23 -0
  509. package/src/views/outbound/lpnPack/newLpn.vue +23 -0
  510. package/src/views/outbound/lpnPack/over.vue +23 -0
  511. package/src/views/outbound/pick/sowAction.vue +23 -0
  512. package/src/views/outbound/pickContainer/action.vue +23 -0
  513. package/src/views/outbound/pickContainer/index.vue +23 -0
  514. package/src/views/outbound/reprint-box/LwOutboundReprintBoxView.vue +13 -0
  515. package/src/views/outbound/stockout/LwOutboundStockoutExecuteView.vue +12 -0
  516. package/src/views/outbound/stockout/LwOutboundStockoutListView.vue +12 -0
  517. package/src/views/process/action/action.vue +23 -0
  518. package/src/views/process/action/consoleInfo.vue +23 -0
  519. package/src/views/process/action/contentInfo.vue +23 -0
  520. package/src/views/process/action/index.vue +23 -0
  521. package/src/views/process/prepare/index.vue +23 -0
  522. package/src/views/receive/putaway/caseAction.vue +21 -0
  523. package/src/views/receive/putaway/lpnBatchAction.vue +23 -0
  524. package/src/components/page/outbound/bale/components/mainPage/index.vue +0 -620
  525. package/src/components/ui/DataLookBg//346/225/260/346/215/256/347/234/213/346/235/277/350/203/214/346/231/257/345/233/276.md +0 -1
@@ -1,624 +1,622 @@
1
- <!--
2
- 出库拣选 - 起始页(控制台)
3
- @author: 张文
4
- @date: 2022-06-20
5
- -->
6
- <template>
7
- <div>
8
-
9
- <lw-nav-bar :title="$lwLanguage.get('','出库拣选')"/>
10
-
11
- <div class="lw-global-page-box">
12
-
13
- <!-- 用户状态信息 -->
14
- <div class="lw-global-model-box">
15
-
16
- <!-- 状态管理 -->
17
- <div class="lw-global-flex-between lw-global-row-start">
18
- <lw-tag
19
- :type="userStatus.type"
20
- round
21
- plain
22
- >{{ userStatus.label }}</lw-tag>
23
-
24
- <lw-button
25
- round
26
- mini
27
- @click="userStatusChange"
28
- >{{ userStatus.btn }}</lw-button>
29
- </div>
30
-
31
- <!-- 工作区域 -->
32
- <div class="lw-global-collapse-box">
33
-
34
- <!-- 折叠框 -->
35
- <van-collapse
36
- v-model="activeNames"
37
- :border="false"
38
- >
39
- <van-collapse-item
40
- :title="$lwLanguage.get('','工作区')"
41
- name="1"
42
- >
43
- <template
44
- #value
45
- v-if="!activeNames.length"
46
- >
47
- <div>{{taskData.pickWorkArea}}</div>
48
- </template>
49
-
50
- <div style="padding: 0 10px">
51
- <div>
52
- <span
53
- style="font-size: 12px;font-weight: bold"
54
- class="lw-global-title"
55
- >{{ $lwLanguage.get('','工作区域') }}:</span>
56
- <span
57
- style="font-size: 12px"
58
- class="lw-global-value"
59
- >{{ taskData.pickWorkArea }}</span>
60
- </div>
61
-
62
- <div>
63
- <span
64
- style="font-weight: bold"
65
- class="lw-global-title"
66
- >{{ $lwLanguage.get('','库区') }}:</span>
67
- <span
68
- class="lw-global-value"
69
- >{{ taskData.pickZoneCodes }}</span>
70
- </div>
71
- </div>
72
-
73
- </van-collapse-item>
74
- </van-collapse>
75
-
76
-
77
- </div>
78
-
79
- <!-- 设备信息 -->
80
- <div
81
- style="border-top: solid 1px #f0f0f0;padding-bottom: 0"
82
- class="lw-global-flex-between lw-global-row-end"
83
- >
84
- <div style="color: #323233" class="lw-global-value">
85
- {{ $lwLanguage.get('','叉车') }}
86
- </div>
87
-
88
- <div class="lw-global-title">
89
- <span>{{ (taskData.useToolName ||'') + '-' + (taskData.useToolCode ||'') }}</span>
90
- <lw-tag
91
- v-if="taskData.canPickLocationPosition"
92
- round
93
- plain
94
- >{{ taskData.canPickLocationPosition }}
95
- </lw-tag>
96
- </div>
97
-
98
-
99
- </div>
100
- </div>
101
-
102
- <!--用户信息-->
103
- <div
104
- style="font-size: 12px;padding: 10px 5px"
105
- class="lw-global-flex-between"
106
- >
107
- <div>{{taskData.staffName}}</div>
108
- <div>{{ taskData.pickData.day }}</div>
109
- <lw-tag
110
- style="margin-right: 0"
111
- round
112
- plain
113
- type="success"
114
- >
115
- {{ $lwLanguage.get('','已完成') }}
116
- {{ userPlan }}%
117
- </lw-tag>
118
- </div>
119
-
120
- <!--数据看板-->
121
- <lw-data-look-bg>
122
-
123
- <div>
124
- <div>{{ taskData.pickData.receiveTaskCount }}</div>
125
- <div
126
- class="lw-data-look-bg-title"
127
- >{{ $lwLanguage.get('','接收行') }}</div>
128
- </div>
129
-
130
- <div>
131
- <div>{{ taskData.pickData.finishLineCount }}</div>
132
- <div
133
- class="lw-data-look-bg-title"
134
- >{{ $lwLanguage.get('','完成行') }}</div>
135
- </div>
136
-
137
- <div>
138
- <div>{{ taskData.pickData.skuQty }}</div>
139
- <div
140
- class="lw-data-look-bg-title"
141
- >{{ $lwLanguage.get('','商品数') }}</div>
142
- </div>
143
-
144
- <div class="lw-data-last-item">
145
- <div>{{ useMinutes }}</div>
146
- <div
147
- class="lw-data-look-bg-title"
148
- >{{ $lwLanguage.get('','有效工时') }}</div>
149
- </div>
150
-
151
- </lw-data-look-bg>
152
-
153
- <!--任务信息-->
154
- <div
155
- v-if="taskData.pickTask && Object.keys(taskData.pickTask).length"
156
- style="margin-top: 10px"
157
- class="lw-global-model-box"
158
- >
159
-
160
- <div class="lw-global-flex-between lw-global-row-start">
161
- <div class="lw-global-value-bold">{{ taskData.pickTask.pickNo }}</div>
162
-
163
- <lw-tag
164
- v-if="taskData.pickTask.taskStatus === '100'"
165
- type="danger"
166
- round
167
- plain
168
- >{{ $lwLanguage.get('','待接收') }}</lw-tag>
169
- <lw-tag
170
- v-else
171
- round
172
- plain
173
- >{{ $lwLanguage.get('','拣选中') }}</lw-tag>
174
- </div>
175
-
176
- <lw-title-value-cell
177
- :title="$lwLanguage.get('','拣选方式')"
178
- :value="taskData.pickTask.pickMethodLabel"
179
- val-bold
180
- val-red
181
- />
182
-
183
- <lw-title-value-cell
184
- :title="$lwLanguage.get('','拣选单位')"
185
- :value="taskData.pickTask.pickUomLabel"
186
- val-bold
187
- />
188
-
189
- <lw-title-value-cell
190
- :title="$lwLanguage.get('','捆包类型')"
191
- :value="taskData.pickTask.pickPackTypeLabel"
192
- val-bold
193
- val-red
194
- />
195
-
196
- <lw-title-value-cell
197
- :title="$lwLanguage.get('','高低位')"
198
- :value="taskData.pickTask.locationPositionLabel"
199
- val-bold
200
- />
201
-
202
- <div class="lw-global-row-end">
203
-
204
- <div class="lw-global-flex-between">
205
- <lw-title-value-cell
206
- style="flex:1"
207
- :title="$lwLanguage.get('','拣选库区')"
208
- :value="taskData.pickTask.pickZoneCodeList.join(',')"
209
- val-bold
210
- :is-row="false"
211
- />
212
- <lw-title-value-cell
213
- style="flex-shrink: 0"
214
- :title="$lwLanguage.get('','行数')"
215
- :value="taskData.pickTask.lineCount"
216
- val-bold
217
- :is-row="false"
218
- />
219
- </div>
220
-
221
-
222
- <div
223
- style="margin-top: 5px"
224
- class="lw-global-flex-between"
225
- >
226
- <lw-title-value-cell
227
- :title="$lwLanguage.get('','客户数')"
228
- :value="taskData.pickTask.customerCount"
229
- val-bold
230
- :is-row="false"
231
- />
232
- <lw-title-value-cell
233
- :title="$lwLanguage.get('','商品数')"
234
- :value="taskData.pickTask.totalQty"
235
- val-bold
236
- :is-row="false"
237
- />
238
-
239
- </div>
240
-
241
-
242
- </div>
243
-
244
- </div>
245
-
246
- </div>
247
-
248
- <!-- 底部按钮应当在用户上线且有任务时才显示 -->
249
- <lw-bottom-bar v-if="taskData.status==='ONLINE' && taskData.pickTask && Object.keys(taskData.pickTask).length">
250
-
251
- <template v-if="taskData.pickTask.taskStatus === '100'">
252
- <lw-button
253
- type="last"
254
- plain
255
- @click="rejectBtnClick"
256
- >{{ $lwLanguage.get('','拒绝') }}</lw-button>
257
- <lw-button @click="receive">
258
- {{ $lwLanguage.get('','接收任务 & 拣选') }}
259
- </lw-button>
260
- </template>
261
-
262
- <template v-else>
263
- <lw-button @click="actionPick">
264
- {{ $lwLanguage.get('','执行拣选') }}
265
- </lw-button>
266
- </template>
267
-
268
- </lw-bottom-bar>
269
-
270
- <!-- 用户下线理由弹框 -->
271
- <lw-popup
272
- :title="$lwLanguage.get('','下线')"
273
- v-model="offLinePopup.show"
274
- @closed="offLinePopupOff"
275
- >
276
- <lw-cell-popup-radio
277
- :title="$lwLanguage.get('','下线原因')"
278
- required
279
- v-model="offLinePopup.reason"
280
- :columns="offLinePopup.reasonList"
281
- />
282
-
283
- <lw-input
284
- :title="$lwLanguage.get('','其他原因')"
285
- v-model="offLinePopup.reasonOther"
286
- />
287
-
288
- <template #button>
289
- <lw-button @click="userOffLineConfirm">
290
- {{ $lwLanguage.get('','确定') }}
291
- </lw-button>
292
- </template>
293
-
294
- </lw-popup>
295
-
296
-
297
- <!-- 拒绝任务弹框 -->
298
- <lw-popup
299
- :title="$lwLanguage.get('','拒绝任务')"
300
- v-model="rejectPopup.show"
301
- @closed="rejectPopupOff"
302
- >
303
-
304
- <lw-cell-popup-radio
305
- :title="$lwLanguage.get('','拒绝原因')"
306
- required
307
- v-model="rejectPopup.refuseReasonType"
308
- :columns="rejectPopup.refuseReasonTypeList"
309
- />
310
-
311
- <lw-input
312
- :title="$lwLanguage.get('','其他原因')"
313
- v-model="rejectPopup.refuseReason"
314
- input-align="right"
315
- />
316
-
317
- <template #button>
318
- <lw-button @click="rejectConfirm">
319
- {{ $lwLanguage.get('','确定') }}
320
- </lw-button>
321
- </template>
322
-
323
- </lw-popup>
324
-
325
- </div>
326
- </template>
327
-
328
- <script>
329
-
330
- import {
331
- projectWmsPickLoadUserPickStatus,
332
- projectWmsPickTaskByTaskId,
333
- projectWmsUserPickReceiveTask,
334
- projectWmsUserPickRefuseTask,
335
- wmsMobileBizTaskOffline,
336
- wmsMobileBizTaskOnline
337
- } from "../../../../../api/outbound/pick";
338
-
339
- export default {
340
- name: "lwOutboundPickIndexPage",
341
- computed: {
342
- // 用户状态信息
343
- userStatus() {
344
- if (this.taskData.status === 'ONLINE') {
345
- return {
346
- type: 'primary',
347
- label: this.$lwLanguage.get('', '在线'),
348
- btn: this.$lwLanguage.get('', '下线')
349
- }
350
- }
351
-
352
- return {
353
- type: 'danger',
354
- label: this.$lwLanguage.get('', '离线'),
355
- btn: this.$lwLanguage.get('', '上线')
356
- }
357
- },
358
-
359
- // 完成进度
360
- userPlan(){
361
- const pickData = this.taskData.pickData
362
- return Math.floor( pickData.finishLineCount / pickData.receiveLineCount*100 ) || 0
363
- },
364
-
365
- // 有效工时
366
- useMinutes(){
367
- const time=this.taskData.pickData.useMinutes
368
- if (time>=0 && time<60){
369
- return time + this.$lwLanguage.get('','分钟')
370
- }else {
371
- return Math.floor(time/60) +
372
- this.$lwLanguage.get('','小时') +
373
- time%60 +
374
- this.$lwLanguage.get('','分钟')
375
- }
376
- }
377
- },
378
- data() {
379
- return {
380
- // 自动刷新的定时器
381
- autoTimer: '',
382
-
383
- // 数据
384
- taskData: {
385
- pickData:{}
386
- },
387
-
388
- // 折叠框激活
389
- activeNames: [],
390
-
391
- // 下线原因弹框
392
- offLinePopup:{
393
- show: false,
394
- // 下线原因选项
395
- reasonList:[
396
- {
397
- label:this.$lwLanguage.get('','中途休息'),
398
- value:this.$lwLanguage.get('','中途休息')
399
- },
400
- {
401
- label: this.$lwLanguage.get('','下班'),
402
- value: this.$lwLanguage.get('','下班')
403
- },
404
- {
405
- label: this.$lwLanguage.get('','其他'),
406
- value: this.$lwLanguage.get('','其他')
407
- },
408
- ],
409
- // 下线原因
410
- reason:'',
411
- // 其他原因
412
- reasonOther:''
413
- },
414
-
415
- // 拒绝任务弹框
416
- rejectPopup:{
417
- show: false,
418
- // 拒绝原因
419
- refuseReasonType: '',
420
- // 原因选择
421
- refuseReasonTypeList: [
422
- {
423
- label: this.$lwLanguage.get('','中途休息'),
424
- value: this.$lwLanguage.get('','中途休息'),
425
- },
426
- {
427
- label: this.$lwLanguage.get('','下班'),
428
- value: this.$lwLanguage.get('','下班')
429
- },
430
- {
431
- label: this.$lwLanguage.get('','设备不匹配'),
432
- value: this.$lwLanguage.get('','设备不匹配'),
433
- },
434
- {
435
- label: this.$lwLanguage.get('','其他'),
436
- value: this.$lwLanguage.get('','其他')
437
- },
438
- ],
439
- // 其他原因
440
- refuseReason: ''
441
- }
442
- }
443
- },
444
- mounted() {
445
-
446
- const {lwTaskId} = this.$route.query
447
-
448
- // 判断是否通过任务进入
449
- if (lwTaskId){
450
- projectWmsPickTaskByTaskId({
451
- taskId: lwTaskId
452
- }).then(res=>{
453
- this.checkPage(res, 'replace')
454
- })
455
- }else {
456
- this.getData()
457
- }
458
-
459
- },
460
- methods: {
461
-
462
- // 获取数据
463
- getData(loading = true){
464
- projectWmsPickLoadUserPickStatus({loading}).then(res=>{
465
- this.taskData = res
466
-
467
- this.autoGetData()
468
- }).catch(()=>{
469
- history.go(-1)
470
- })
471
- },
472
-
473
- // 自动获取数据
474
- autoGetData(){
475
- this.autoTimer = setTimeout(()=>{
476
- this.getData(false)
477
- }, 1000*15)
478
- },
479
-
480
- // 用户状态改变
481
- userStatusChange(){
482
- if (this.taskData.status === 'ONLINE'){
483
- this.offLinePopup.show = true
484
- clearTimeout(this.autoTimer)
485
- return
486
- }
487
-
488
- wmsMobileBizTaskOnline({
489
- operationType: "PICK"
490
- }).then(()=>{
491
- this.$lwToast.success(
492
- this.$lwLanguage.get('','已上线')
493
- )
494
- clearTimeout(this.autoTimer)
495
- this.getData()
496
- })
497
- },
498
- // 用户确认下线
499
- userOffLineConfirm(){
500
-
501
- if (!this.offLinePopup.reason){
502
- this.$lwShowErrorMsg(
503
- this.$lwLanguage.get('','下线原因不能为空!')
504
- )
505
- return
506
- }
507
-
508
- wmsMobileBizTaskOffline({
509
- operationType: 'PICK',
510
- reason: this.offLinePopup.reason,
511
- reasonOther: this.offLinePopup.reasonOther
512
- }).then(()=>{
513
- this.$lwToast.success(
514
- this.$lwLanguage.get('','已下线')
515
- )
516
- this.offLinePopup.show = false
517
- this.getData()
518
- })
519
- },
520
- // 下线弹框关闭
521
- offLinePopupOff(){
522
- this.offLinePopup.reason = ''
523
- this.offLinePopup.reasonOther = ''
524
- },
525
-
526
- // 接受任务并拣选
527
- receive(){
528
- projectWmsUserPickReceiveTask({
529
- taskId: this.taskData.pickTask.taskId
530
- }).then(()=>this.actionPick())
531
- },
532
-
533
- // 点击拒绝按钮
534
- rejectBtnClick(){
535
- clearTimeout(this.autoTimer)
536
- this.rejectPopup.show=true
537
- },
538
- // 确认拒绝
539
- rejectConfirm(){
540
-
541
- if (!this.rejectPopup.refuseReasonType){
542
- this.$lwShowErrorMsg(
543
- this.$lwLanguage.get('','拒绝原因不能为空')
544
- )
545
- return
546
- }
547
-
548
- projectWmsUserPickRefuseTask({
549
- taskId: this.taskData.pickTask.taskId,
550
- refuseReasonType: this.rejectPopup.refuseReasonType,
551
- refuseReason: this.rejectPopup.refuseReason
552
- }).then(()=>{
553
- this.$lwToast.success(
554
- this.$lwLanguage.get('','已拒绝')
555
- )
556
- this.rejectPopup.show = false
557
- this.getData()
558
- })
559
- },
560
- // 拒绝弹框关闭
561
- rejectPopupOff(){
562
- this.rejectPopup.refuseReasonType = ''
563
- this.rejectPopup.refuseReason = ''
564
- },
565
-
566
- // 执行拣选
567
- actionPick(){
568
- this.checkPage(this.taskData.pickTask)
569
- },
570
- // 判断跳转页面
571
- checkPage(data, jumpType = 'push'){
572
-
573
- // 整箱
574
- if (data.pickUom === 'CASE'){
575
- this.$router[jumpType]({
576
- path: '/outbound/pick/lwBoxAction',
577
- query:{
578
- lwPickId: data.pickId
579
- }
580
- })
581
- return
582
- }
583
-
584
- // 整托盘
585
- if (data.pickUom === 'LPN'){
586
- this.$router[jumpType]({
587
- path: '/outbound/pick/lwLpnAction',
588
- query:{
589
- lwPickId: data.pickId
590
- }
591
- })
592
- return
593
- }
594
-
595
- // 独立件
596
- if (data.pickPackType === 'ALONE'){
597
- this.$router[jumpType]({
598
- path: '/outbound/pick/lwAloneAction',
599
- query:{
600
- lwPickId: data.pickId
601
- }
602
- })
603
- return
604
- }
605
-
606
- // 非独立件
607
- this.$router[jumpType]({
608
- path: '/outbound/pick/lwNotAloneAction',
609
- query:{
610
- lwPickId: data.pickId
611
- }
612
- })
613
-
614
- }
615
- },
616
- beforeDestroy(){
617
- clearTimeout(this.autoTimer)
618
- }
619
- }
620
- </script>
621
-
622
- <style scoped lang="less">
623
-
624
- </style>
1
+ <!--
2
+ 出库拣选 - 起始页(控制台)
3
+ @author: 张文
4
+ @date: 2022-06-20
5
+ -->
6
+ <template>
7
+ <div>
8
+
9
+ <lw-nav-bar :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.tlejlbzl','出库拣选')"/>
10
+
11
+ <div class="lw-global-page-box">
12
+
13
+ <!-- 用户状态信息 -->
14
+ <div class="lw-global-model-box">
15
+
16
+ <!-- 状态管理 -->
17
+ <div class="lw-global-flex-between lw-global-row-start">
18
+ <lw-tag
19
+ :type="userStatus.type"
20
+ round
21
+ plain
22
+ >{{ userStatus.label }}</lw-tag>
23
+
24
+ <lw-button
25
+ round
26
+ mini
27
+ @click="userStatusChange"
28
+ >{{ userStatus.btn }}</lw-button>
29
+ </div>
30
+
31
+ <!-- 工作区域 -->
32
+ <div class="lw-global-collapse-box">
33
+
34
+ <!-- 折叠框 -->
35
+ <van-collapse
36
+ v-model="activeNames"
37
+ :border="false"
38
+ >
39
+ <van-collapse-item
40
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.itrshahh','工作区')"
41
+ name="1"
42
+ >
43
+ <template
44
+ #value
45
+ v-if="!activeNames.length"
46
+ >
47
+ <div>{{taskData.pickWorkArea}}</div>
48
+ </template>
49
+
50
+ <div style="padding: 0 10px">
51
+ <div>
52
+ <span
53
+ style="font-size: 12px;font-weight: bold"
54
+ class="lw-global-title"
55
+ >{{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.jepxuwmf','工作区域') }}:</span>
56
+ <span
57
+ style="font-size: 12px"
58
+ class="lw-global-value"
59
+ >{{ taskData.pickWorkArea }}</span>
60
+ </div>
61
+
62
+ <div>
63
+ <span
64
+ style="font-weight: bold"
65
+ class="lw-global-title"
66
+ >{{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.cbbkhktx','库区') }}:</span>
67
+ <span
68
+ class="lw-global-value"
69
+ >{{ taskData.pickZoneCodes }}</span>
70
+ </div>
71
+ </div>
72
+
73
+ </van-collapse-item>
74
+ </van-collapse>
75
+
76
+
77
+ </div>
78
+
79
+ <!-- 设备信息 -->
80
+ <div
81
+ style="border-top: solid 1px #f0f0f0;padding-bottom: 0"
82
+ class="lw-global-flex-between lw-global-row-end"
83
+ >
84
+ <div style="color: #323233" class="lw-global-value">
85
+ {{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.mphocsgl','叉车') }}
86
+ </div>
87
+
88
+ <div class="lw-global-title">
89
+ <span>{{ (taskData.useToolName ||'') + '-' + (taskData.useToolCode ||'') }}</span>
90
+ <lw-tag
91
+ v-if="taskData.canPickLocationPosition"
92
+ round
93
+ plain
94
+ >{{ taskData.canPickLocationPosition }}
95
+ </lw-tag>
96
+ </div>
97
+
98
+
99
+ </div>
100
+ </div>
101
+
102
+ <!--用户信息-->
103
+ <div
104
+ style="font-size: 12px;padding: 10px 5px"
105
+ class="lw-global-flex-between"
106
+ >
107
+ <div>{{taskData.staffName}}</div>
108
+ <div>{{ taskData.pickData.day }}</div>
109
+ <lw-tag
110
+ style="margin-right: 0"
111
+ round
112
+ plain
113
+ type="success"
114
+ >
115
+ {{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.ypzltcuy','已完成') }}
116
+ {{ userPlan }}%
117
+ </lw-tag>
118
+ </div>
119
+
120
+ <!--数据看板-->
121
+ <lw-data-look-bg>
122
+
123
+ <div>
124
+ <div>{{ taskData.pickData.receiveTaskCount }}</div>
125
+ <div>
126
+ {{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.lmpwxfwy','接收行') }}
127
+ </div>
128
+ </div>
129
+
130
+ <div>
131
+ <div>{{ taskData.pickData.finishLineCount }}</div>
132
+ <div>{{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.rebhfkmi','完成行') }}</div>
133
+ </div>
134
+
135
+ <div>
136
+ <div>{{ taskData.pickData.skuQty }}</div>
137
+ <div>{{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.vvaytrgg','商品数') }}</div>
138
+ </div>
139
+
140
+ <div>
141
+ <div>{{ useMinutes }}</div>
142
+ <div>{{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.lmmwhidr','有效工时') }}</div>
143
+ </div>
144
+
145
+ </lw-data-look-bg>
146
+
147
+ <!--任务信息-->
148
+ <div
149
+ v-if="taskData.pickTask && Object.keys(taskData.pickTask).length"
150
+ style="margin-top: 10px"
151
+ class="lw-global-model-box"
152
+ >
153
+
154
+ <div class="lw-global-flex-between lw-global-row-start">
155
+ <div class="lw-global-value-bold">{{ taskData.pickTask.pickNo }}</div>
156
+
157
+ <lw-tag
158
+ v-if="taskData.pickTask.taskStatus === '100'"
159
+ type="danger"
160
+ round
161
+ plain
162
+ >{{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.yhrczniq','待接收') }}</lw-tag>
163
+ <lw-tag
164
+ v-else
165
+ round
166
+ plain
167
+ >{{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.yjvjisxz','拣选中') }}</lw-tag>
168
+ </div>
169
+
170
+ <lw-title-value-cell
171
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.isbaqhcq','拣选方式')"
172
+ :value="taskData.pickTask.pickMethodLabel"
173
+ val-bold
174
+ val-red
175
+ />
176
+
177
+ <lw-title-value-cell
178
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.oaqrzmuc','拣选单位')"
179
+ :value="taskData.pickTask.pickUomLabel"
180
+ val-bold
181
+ />
182
+
183
+ <lw-title-value-cell
184
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.ruzseogh','捆包类型')"
185
+ :value="taskData.pickTask.pickPackTypeLabel"
186
+ val-bold
187
+ val-red
188
+ />
189
+
190
+ <lw-title-value-cell
191
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.cmqistfm','高低位')"
192
+ :value="taskData.pickTask.locationPositionLabel"
193
+ val-bold
194
+ />
195
+
196
+ <div class="lw-global-row-end">
197
+
198
+ <div class="lw-global-flex-between">
199
+ <lw-title-value-cell
200
+ style="flex:1"
201
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.eznirkcm','拣选库区')"
202
+ :value="taskData.pickTask.pickZoneCodeList.join(',')"
203
+ val-bold
204
+ :is-row="false"
205
+ />
206
+ <lw-title-value-cell
207
+ style="flex-shrink: 0"
208
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.ehnmuckr','行数')"
209
+ :value="taskData.pickTask.lineCount"
210
+ val-bold
211
+ :is-row="false"
212
+ />
213
+ </div>
214
+
215
+
216
+ <div
217
+ style="margin-top: 5px"
218
+ class="lw-global-flex-between"
219
+ >
220
+ <lw-title-value-cell
221
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.ntfwzbfw','客户数')"
222
+ :value="taskData.pickTask.customerCount"
223
+ val-bold
224
+ :is-row="false"
225
+ />
226
+ <lw-title-value-cell
227
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.vvaytrgg','商品数')"
228
+ :value="taskData.pickTask.totalQty"
229
+ val-bold
230
+ :is-row="false"
231
+ />
232
+
233
+ </div>
234
+
235
+
236
+ </div>
237
+
238
+ </div>
239
+
240
+ </div>
241
+
242
+ <!-- 底部按钮应当在用户上线且有任务时才显示 -->
243
+ <lw-bottom-bar v-if="taskData.status==='ONLINE' && taskData.pickTask && Object.keys(taskData.pickTask).length">
244
+
245
+ <template v-if="taskData.pickTask.taskStatus === '100'">
246
+ <lw-button
247
+ type="last"
248
+ plain
249
+ @click="rejectBtnClick"
250
+ >{{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.mtqbwgfh','拒绝') }}</lw-button>
251
+ <lw-button @click="receive">
252
+ {{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.kirpivou','接收任务 & 拣选') }}
253
+ </lw-button>
254
+ </template>
255
+
256
+ <template v-else>
257
+ <lw-button @click="actionPick">
258
+ {{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.ozvoiore','执行拣选') }}
259
+ </lw-button>
260
+ </template>
261
+
262
+ </lw-bottom-bar>
263
+
264
+ <!-- 用户下线理由弹框 -->
265
+ <lw-popup
266
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.pdenuvpo','下线')"
267
+ v-model="offLinePopup.show"
268
+ @closed="offLinePopupOff"
269
+ >
270
+ <lw-cell-popup-radio
271
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.jnvttgpl','下线原因')"
272
+ required
273
+ v-model="offLinePopup.reason"
274
+ :columns="offLinePopup.reasonList"
275
+ />
276
+
277
+ <lw-input
278
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.zhzghnao','其他原因')"
279
+ v-model="offLinePopup.reasonOther"
280
+ />
281
+
282
+ <template #button>
283
+ <lw-button @click="userOffLineConfirm">
284
+ {{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.wqhnusfp','确定') }}
285
+ </lw-button>
286
+ </template>
287
+
288
+ </lw-popup>
289
+
290
+
291
+ <!-- 拒绝任务弹框 -->
292
+ <lw-popup
293
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.akjygike','拒绝任务')"
294
+ v-model="rejectPopup.show"
295
+ @closed="rejectPopupOff"
296
+ >
297
+
298
+ <lw-cell-popup-radio
299
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.bosxxhdo','拒绝原因')"
300
+ required
301
+ v-model="rejectPopup.refuseReasonType"
302
+ :columns="rejectPopup.refuseReasonTypeList"
303
+ />
304
+
305
+ <lw-input
306
+ :title="$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.zhzghnao','其他原因')"
307
+ v-model="rejectPopup.refuseReason"
308
+ input-align="right"
309
+ />
310
+
311
+ <template #button>
312
+ <lw-button @click="rejectConfirm">
313
+ {{ $lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.wqhnusfp','确定') }}
314
+ </lw-button>
315
+ </template>
316
+
317
+ </lw-popup>
318
+
319
+ </div>
320
+ </template>
321
+
322
+ <script>
323
+
324
+ import {
325
+ projectWmsPickLoadUserPickStatus,
326
+ projectWmsPickTaskByTaskId,
327
+ projectWmsUserPickReceiveTask,
328
+ projectWmsUserPickRefuseTask,
329
+ wmsMobileBizTaskOffline,
330
+ wmsMobileBizTaskOnline
331
+ } from "../../../../../api/outbound/pick";
332
+
333
+ export default {
334
+ name: "lwOutboundPickIndexPage",
335
+ computed: {
336
+ // 用户状态信息
337
+ userStatus() {
338
+ if (this.taskData.status === 'ONLINE') {
339
+ return {
340
+ type: 'primary',
341
+ label: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.qhvmgnvx','在线'),
342
+ btn: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.ywfusvvu','下线')
343
+ }
344
+ }
345
+
346
+ return {
347
+ type: 'danger',
348
+ label: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.pooyjzzy','离线'),
349
+ btn: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.vldsejsa','上线')
350
+ }
351
+ },
352
+
353
+ // 完成进度
354
+ userPlan(){
355
+ const pickData = this.taskData.pickData
356
+ return Math.floor( pickData.finishLineCount / pickData.receiveLineCount*100 ) || 0
357
+ },
358
+
359
+ // 有效工时
360
+ useMinutes(){
361
+ const time=this.taskData.pickData.useMinutes
362
+ if (time>=0 && time<60){
363
+ return time + this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.oghgqzjq','分钟')
364
+ }else {
365
+ return Math.floor(time/60) +
366
+ this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.zxpkngyd','小时') +
367
+ time%60 +
368
+ this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.oghgqzjq','分钟')
369
+ }
370
+ }
371
+ },
372
+ data() {
373
+ return {
374
+ // 自动刷新的定时器
375
+ autoTimer: '',
376
+
377
+ // 数据
378
+ taskData: {
379
+ pickData:{}
380
+ },
381
+
382
+ // 折叠框激活
383
+ activeNames: [],
384
+
385
+ // 下线原因弹框
386
+ offLinePopup:{
387
+ show: false,
388
+ // 下线原因选项
389
+ reasonList:[
390
+ {
391
+ label:this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.qqkcvsfj','中途休息'),
392
+ value:this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.qqkcvsfj','中途休息')
393
+ },
394
+ {
395
+ label: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.bbrpohzy','下班'),
396
+ value: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.bbrpohzy','下班')
397
+ },
398
+ {
399
+ label: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.dorvlmnr','其他'),
400
+ value: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.dorvlmnr','其他')
401
+ },
402
+ ],
403
+ // 下线原因
404
+ reason:'',
405
+ // 其他原因
406
+ reasonOther:''
407
+ },
408
+
409
+ // 拒绝任务弹框
410
+ rejectPopup:{
411
+ show: false,
412
+ // 拒绝原因
413
+ refuseReasonType: '',
414
+ // 原因选择
415
+ refuseReasonTypeList: [
416
+ {
417
+ label: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.qqkcvsfj','中途休息'),
418
+ value: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.qqkcvsfj','中途休息'),
419
+ },
420
+ {
421
+ label: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.bbrpohzy','下班'),
422
+ value: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.bbrpohzy','下班')
423
+ },
424
+ {
425
+ label: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.yeqdvajh','设备不匹配'),
426
+ value: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.yeqdvajh','设备不匹配'),
427
+ },
428
+ {
429
+ label: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.dorvlmnr','其他'),
430
+ value: this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.dorvlmnr','其他')
431
+ },
432
+ ],
433
+ // 其他原因
434
+ refuseReason: ''
435
+ }
436
+ }
437
+ },
438
+ mounted() {
439
+
440
+ const {lwTaskId} = this.$route.query
441
+
442
+ // 判断是否通过任务进入
443
+ if (lwTaskId){
444
+ projectWmsPickTaskByTaskId({
445
+ taskId: lwTaskId
446
+ }).then(res=>{
447
+ this.checkPage(res, 'replace')
448
+ })
449
+ }else {
450
+ this.getData()
451
+ }
452
+
453
+ },
454
+ methods: {
455
+
456
+ // 获取数据
457
+ getData(loading = true){
458
+ projectWmsPickLoadUserPickStatus({loading}).then(res=>{
459
+ this.taskData = res
460
+
461
+ this.autoGetData()
462
+ }).catch(()=>{
463
+ history.go(-1)
464
+ })
465
+ },
466
+
467
+ // 自动获取数据
468
+ autoGetData(){
469
+ this.autoTimer = setTimeout(()=>{
470
+ this.getData(false)
471
+ }, 1000*15)
472
+ },
473
+
474
+ // 用户状态改变
475
+ userStatusChange(){
476
+ if (this.taskData.status === 'ONLINE'){
477
+ this.offLinePopup.show = true
478
+ clearTimeout(this.autoTimer)
479
+ return
480
+ }
481
+
482
+ wmsMobileBizTaskOnline({
483
+ operationType: "PICK"
484
+ }).then(()=>{
485
+ this.$lwToast.success(
486
+ this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.rlmzugoo','已上线')
487
+ )
488
+ clearTimeout(this.autoTimer)
489
+ this.getData()
490
+ })
491
+ },
492
+ // 用户确认下线
493
+ userOffLineConfirm(){
494
+
495
+ if (!this.offLinePopup.reason){
496
+ this.$lwShowErrorMsg(
497
+ this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.ftqkgcsj','下线原因不能为空!')
498
+ )
499
+ return
500
+ }
501
+
502
+ wmsMobileBizTaskOffline({
503
+ operationType: 'PICK',
504
+ reason: this.offLinePopup.reason,
505
+ reasonOther: this.offLinePopup.reasonOther
506
+ }).then(()=>{
507
+ this.$lwToast.success(
508
+ this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.vyyqyewy','已下线')
509
+ )
510
+ this.offLinePopup.show = false
511
+ this.getData()
512
+ })
513
+ },
514
+ // 下线弹框关闭
515
+ offLinePopupOff(){
516
+ this.offLinePopup.reason = ''
517
+ this.offLinePopup.reasonOther = ''
518
+ },
519
+
520
+ // 接受任务并拣选
521
+ receive(){
522
+ projectWmsUserPickReceiveTask({
523
+ taskId: this.taskData.pickTask.taskId
524
+ }).then(()=>this.actionPick())
525
+ },
526
+
527
+ // 点击拒绝按钮
528
+ rejectBtnClick(){
529
+ clearTimeout(this.autoTimer)
530
+ this.rejectPopup.show=true
531
+ },
532
+ // 确认拒绝
533
+ rejectConfirm(){
534
+
535
+ if (!this.rejectPopup.refuseReasonType){
536
+ this.$lwShowErrorMsg(
537
+ this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.tgbitfun','拒绝原因不能为空')
538
+ )
539
+ return
540
+ }
541
+
542
+ projectWmsUserPickRefuseTask({
543
+ taskId: this.taskData.pickTask.taskId,
544
+ refuseReasonType: this.rejectPopup.refuseReasonType,
545
+ refuseReason: this.rejectPopup.refuseReason
546
+ }).then(()=>{
547
+ this.$lwToast.success(
548
+ this.$lwLanguage.get('wms_project.pda.components.page.outbound.pick.index.dhdvigfg','已拒绝')
549
+ )
550
+ this.rejectPopup.show = false
551
+ this.getData()
552
+ })
553
+ },
554
+ // 拒绝弹框关闭
555
+ rejectPopupOff(){
556
+ this.rejectPopup.refuseReasonType = ''
557
+ this.rejectPopup.refuseReason = ''
558
+ },
559
+
560
+ // 执行拣选
561
+ actionPick(){
562
+ this.checkPage(this.taskData.pickTask)
563
+ },
564
+ // 判断跳转页面
565
+ checkPage(data, jumpType = 'push'){
566
+ const query = {
567
+ lwPickId: data.pickId
568
+ }
569
+
570
+ if (data.pickMethod === '400'){
571
+ this.$router[jumpType]({
572
+ path: '/outbound/pick/lwSowAction',
573
+ query
574
+ })
575
+ return
576
+ }
577
+
578
+
579
+ // 整箱
580
+ if (data.pickUom === 'CASE'){
581
+ this.$router[jumpType]({
582
+ path: '/outbound/pick/lwBoxAction',
583
+ query
584
+ })
585
+ return
586
+ }
587
+
588
+ // 整托盘
589
+ if (data.pickUom === 'LPN'){
590
+ this.$router[jumpType]({
591
+ path: '/outbound/pick/lwLpnAction',
592
+ query
593
+ })
594
+ return
595
+ }
596
+
597
+ // 独立件
598
+ if (data.pickPackType === 'ALONE'){
599
+ this.$router[jumpType]({
600
+ path: '/outbound/pick/lwAloneAction',
601
+ query
602
+ })
603
+ return
604
+ }
605
+
606
+ // 非独立件
607
+ this.$router[jumpType]({
608
+ path: '/outbound/pick/lwNotAloneAction',
609
+ query
610
+ })
611
+
612
+ }
613
+ },
614
+ beforeDestroy(){
615
+ clearTimeout(this.autoTimer)
616
+ }
617
+ }
618
+ </script>
619
+
620
+ <style scoped lang="less">
621
+
622
+ </style>