@logwire/logwire-wms-pda-ui 1.1.17 → 1.1.18

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 (432) hide show
  1. package/README.md +134 -134
  2. package/dist/logwire-wms-pda-ui.js +7 -0
  3. package/package.json +69 -69
  4. package/src/api/common/Device.js +43 -43
  5. package/src/api/common/Dict.js +19 -19
  6. package/src/api/common/GetImgSrc.js +20 -20
  7. package/src/api/common/Language.js +31 -31
  8. package/src/api/common/Lot.js +20 -20
  9. package/src/api/common/Msg.js +26 -26
  10. package/src/api/common/Permissions.js +22 -22
  11. package/src/api/common/Print.js +65 -65
  12. package/src/api/common/Task.js +61 -61
  13. package/src/api/common/UUID.js +28 -28
  14. package/src/api/common/User.js +53 -53
  15. package/src/api/common/Waerhouse.js +28 -28
  16. package/src/api/common/barcode.js +165 -165
  17. package/src/api/common/common.js +33 -33
  18. package/src/api/common/index.js +37 -37
  19. package/src/api/inbound/index.js +6 -6
  20. package/src/api/inbound/quality.js +99 -99
  21. package/src/api/inbound/receive.js +119 -119
  22. package/src/api/inner/count/index.js +97 -97
  23. package/src/api/inner/disposeAbnormal/action.js +69 -69
  24. package/src/api/inner/disposeAbnormal/index.js +33 -33
  25. package/src/api/inner/materialApply/index.js +51 -51
  26. package/src/api/inner/move/abnormalMove.js +25 -25
  27. package/src/api/inner/move/lpnMove.js +25 -25
  28. package/src/api/inner/move/taskMove.js +57 -57
  29. package/src/api/inner/newProject/action.js +88 -88
  30. package/src/api/inner/newProject/index.js +17 -17
  31. package/src/api/inner/reportAbnormal/index.js +34 -34
  32. package/src/api/outbound/bale/checkBale/action.js +123 -123
  33. package/src/api/outbound/bale/checkBale/allCheck.js +25 -25
  34. package/src/api/outbound/bale/checkBale/index.js +52 -52
  35. package/src/api/outbound/delivery/action.js +148 -148
  36. package/src/api/outbound/delivery/addOrder.js +32 -32
  37. package/src/api/outbound/delivery/index.js +25 -25
  38. package/src/api/outbound/pick/alone.js +60 -60
  39. package/src/api/outbound/pick/box.js +42 -42
  40. package/src/api/outbound/pick/index.js +60 -60
  41. package/src/api/outbound/pick/lpn.js +42 -42
  42. package/src/api/outbound/pick/notAlone.js +33 -33
  43. package/src/api/outbound/pickMerge/index.js +69 -69
  44. package/src/api/outbound/sow/action.js +123 -123
  45. package/src/api/outbound/sow/index.js +24 -24
  46. package/src/api/outbound/summary/box.js +33 -33
  47. package/src/api/outbound/summary/lpn.js +23 -23
  48. package/src/api/receive/abnormal.js +34 -34
  49. package/src/api/receive/putaway.js +82 -82
  50. package/src/api/receive/randomMove.js +43 -43
  51. package/src/api/receive/receipt.js +25 -25
  52. package/src/assets/css/changeVant.less +22 -22
  53. package/src/assets/css/global.less +411 -411
  54. package/src/assets/css/index.less +4 -4
  55. package/src/assets/css/var.less +117 -117
  56. package/src/assets/css//345/205/250/345/261/200/346/240/267/345/274/217.md +31 -31
  57. package/src/components/module/InnerAbnormal/index.js +11 -11
  58. package/src/components/module/InnerAbnormal/index.vue +367 -367
  59. package/src/components/module/Login/index.js +11 -11
  60. package/src/components/module/Login/index.vue +324 -328
  61. package/src/components/module/Login//347/231/273/345/275/225/346/250/241/345/235/227.md +1 -1
  62. package/src/components/module/Lot/index.js +11 -11
  63. package/src/components/module/Lot/index.vue +181 -181
  64. package/src/components/module/Lot//346/211/271/346/254/241/345/261/236/346/200/247.md +2 -2
  65. package/src/components/module/LotLook/index.js +11 -11
  66. package/src/components/module/LotLook/index.vue +80 -80
  67. package/src/components/module/Menu/index.js +12 -12
  68. package/src/components/module/Menu/index.vue +118 -118
  69. package/src/components/module/Menu//350/217/234/345/215/225/346/240/217.md +1 -1
  70. package/src/components/module/MsgItem/index.js +11 -11
  71. package/src/components/module/MsgItem/index.vue +109 -109
  72. 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
  73. package/src/components/module/OnLine/index.js +11 -11
  74. package/src/components/module/OnLine/index.vue +195 -195
  75. 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
  76. package/src/components/module/ReceiveAbnormal/index.js +11 -11
  77. package/src/components/module/ReceiveAbnormal/index.vue +865 -865
  78. package/src/components/module/ScanDataList/index.js +11 -11
  79. package/src/components/module/ScanDataList/index.vue +326 -326
  80. package/src/components/module/SkuInfo/index.js +11 -11
  81. package/src/components/module/SkuInfo/index.vue +65 -65
  82. package/src/components/module/SystemInfo/index.js +11 -11
  83. package/src/components/module/SystemInfo/index.vue +217 -217
  84. 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
  85. package/src/components/module/index.js +42 -42
  86. package/src/components/page/common/Device/index.js +11 -11
  87. package/src/components/page/common/Device/index.vue +186 -186
  88. package/src/components/page/common/Device//350/256/276/345/244/207/347/256/241/347/220/206/351/241/265.md +1 -1
  89. package/src/components/page/common/Home/index.js +11 -11
  90. package/src/components/page/common/Home/index.vue +113 -113
  91. package/src/components/page/common/Home//344/270/273/351/241/265.md +1 -1
  92. package/src/components/page/common/Language/index.js +11 -11
  93. package/src/components/page/common/Language/index.vue +142 -142
  94. package/src/components/page/common/Language//350/257/255/350/250/200.md +1 -1
  95. package/src/components/page/common/Login/index.js +11 -11
  96. package/src/components/page/common/Login/index.vue +157 -157
  97. package/src/components/page/common/Login//347/231/273/345/275/225/351/241/265.md +1 -1
  98. package/src/components/page/common/Menu/index.js +11 -11
  99. package/src/components/page/common/Menu/index.vue +71 -71
  100. package/src/components/page/common/Menu//350/217/234/345/215/225/351/241/265.md +1 -1
  101. package/src/components/page/common/Msg/index.js +11 -11
  102. package/src/components/page/common/Msg/index.vue +152 -152
  103. package/src/components/page/common/Msg//346/266/210/346/201/257/351/241/265.md +1 -1
  104. package/src/components/page/common/My/index.js +11 -11
  105. package/src/components/page/common/My/index.vue +477 -477
  106. package/src/components/page/common/My//346/210/221/347/232/204/347/256/241/347/220/206/351/241/265.md +1 -1
  107. package/src/components/page/common/Print/index.js +11 -11
  108. package/src/components/page/common/Print/index.vue +314 -314
  109. package/src/components/page/common/Print//346/211/223/345/215/260/346/234/272/350/256/276/347/275/256/351/241/265.md +1 -1
  110. package/src/components/page/common/Task/index.js +11 -11
  111. package/src/components/page/common/Task/index.vue +699 -699
  112. package/src/components/page/common/Task//344/273/273/345/212/241/351/241/265.md +1 -1
  113. package/src/components/page/common/Warehouse/index.js +11 -11
  114. package/src/components/page/common/Warehouse/index.vue +216 -213
  115. package/src/components/page/common/Warehouse//344/273/223/345/272/223/351/200/211/346/213/251/351/241/265.md +1 -1
  116. package/src/components/page/common/index.js +39 -39
  117. package/src/components/page/count/components/CountBoard.vue +115 -115
  118. package/src/components/page/count/components/RandomCount.vue +153 -153
  119. package/src/components/page/count/index.js +21 -21
  120. package/src/components/page/count/inv/action/index.js +5 -5
  121. package/src/components/page/count/inv/action/index.vue +271 -271
  122. package/src/components/page/count/inv/index/index.js +5 -5
  123. package/src/components/page/count/inv/index/index.vue +189 -189
  124. package/src/components/page/count/loc/action/index.js +5 -5
  125. package/src/components/page/count/loc/action/index.vue +545 -545
  126. package/src/components/page/count/loc/index/index.js +5 -5
  127. package/src/components/page/count/loc/index/index.vue +184 -184
  128. package/src/components/page/inbound/components/AsnInfo.vue +180 -180
  129. package/src/components/page/inbound/components/AsnSkuInfo.vue +45 -45
  130. package/src/components/page/inbound/components/QualityCard.vue +230 -230
  131. package/src/components/page/inbound/components/QualityTaskInfo.vue +88 -88
  132. package/src/components/page/inbound/components/SnsList.vue +98 -98
  133. package/src/components/page/inbound/index.js +16 -16
  134. package/src/components/page/inbound/newProject/action/index.js +13 -13
  135. package/src/components/page/inbound/newProject/action/index.vue +1468 -1468
  136. package/src/components/page/inbound/newProject/index/index.js +13 -13
  137. package/src/components/page/inbound/newProject/index/index.vue +121 -121
  138. package/src/components/page/inbound/receive/home/index.js +5 -5
  139. package/src/components/page/inbound/receive/home/index.vue +73 -73
  140. package/src/components/page/inbound/receive/index/index.js +5 -5
  141. package/src/components/page/inbound/receive/index/index.vue +89 -89
  142. package/src/components/page/inbound/receive/quality/LwInboundQualityExecutePage.vue +405 -405
  143. package/src/components/page/inbound/receive/quality/LwInboundQualityTaskListPage.vue +163 -163
  144. package/src/components/page/inbound/receive/quality/index.js +16 -16
  145. package/src/components/page/inbound/receive/receive-sku/LwInboundReceiveSkuAdvancePage.vue +320 -320
  146. package/src/components/page/inbound/receive/receive-sku/LwInboundReceiveSkuDirectPage.vue +407 -407
  147. package/src/components/page/inbound/receive/receive-sku/LwInboundReceiveSkuScanPage.vue +149 -149
  148. package/src/components/page/inbound/receive/receive-sku/index.js +19 -19
  149. package/src/components/page/index.js +33 -33
  150. package/src/components/page/inner/abnormalMove/index/index.js +11 -11
  151. package/src/components/page/inner/abnormalMove/index/index.vue +468 -468
  152. package/src/components/page/inner/disposeAbnormal/action/index.js +11 -11
  153. package/src/components/page/inner/disposeAbnormal/action/index.vue +524 -524
  154. package/src/components/page/inner/disposeAbnormal/components/abnInfo/index.vue +655 -655
  155. package/src/components/page/inner/disposeAbnormal/components/disposePopup/index.vue +229 -229
  156. package/src/components/page/inner/disposeAbnormal/components/listItem/index.vue +213 -213
  157. package/src/components/page/inner/disposeAbnormal/components/searchBar/index.vue +264 -264
  158. package/src/components/page/inner/disposeAbnormal/index/index.js +11 -11
  159. package/src/components/page/inner/disposeAbnormal/index/index.vue +237 -237
  160. package/src/components/page/inner/index.js +62 -62
  161. package/src/components/page/inner/lpnMove/action/index.js +11 -11
  162. package/src/components/page/inner/lpnMove/action/index.vue +222 -222
  163. package/src/components/page/inner/lpnMove/index/index.js +11 -11
  164. package/src/components/page/inner/lpnMove/index/index.vue +155 -155
  165. package/src/components/page/inner/materialApply/action/index.js +10 -10
  166. package/src/components/page/inner/materialApply/action/index.vue +563 -563
  167. package/src/components/page/inner/materialApply/generate/index.js +10 -10
  168. package/src/components/page/inner/materialApply/generate/index.vue +376 -376
  169. package/src/components/page/inner/movePutAway/index/index.js +11 -11
  170. package/src/components/page/inner/movePutAway/index/index.vue +363 -363
  171. package/src/components/page/inner/randomMove/components/Down/index.vue +470 -470
  172. package/src/components/page/inner/randomMove/components/Up/index.vue +523 -523
  173. package/src/components/page/inner/randomMove/index/index.js +11 -11
  174. package/src/components/page/inner/randomMove/index/index.vue +152 -152
  175. package/src/components/page/inner/reportAbnormal/action/index.js +11 -11
  176. package/src/components/page/inner/reportAbnormal/action/index.vue +246 -246
  177. package/src/components/page/inner/reportAbnormal/index/index.js +11 -11
  178. package/src/components/page/inner/reportAbnormal/index/index.vue +251 -243
  179. package/src/components/page/inner/taskMove/index/index.js +11 -11
  180. package/src/components/page/inner/taskMove/index/index.vue +1374 -1374
  181. package/src/components/page/outbound/bale/aloneBale/action/index.js +11 -11
  182. package/src/components/page/outbound/bale/aloneBale/action/index.vue +192 -192
  183. package/src/components/page/outbound/bale/aloneBale/index/index.js +11 -11
  184. package/src/components/page/outbound/bale/aloneBale/index/index.vue +86 -86
  185. package/src/components/page/outbound/bale/aloneBale/newBale/index.js +11 -11
  186. package/src/components/page/outbound/bale/aloneBale/newBale/index.vue +53 -53
  187. package/src/components/page/outbound/bale/checkBale/action/index.js +11 -11
  188. package/src/components/page/outbound/bale/checkBale/action/index.vue +1330 -1330
  189. package/src/components/page/outbound/bale/checkBale/allCheck/index.js +11 -11
  190. package/src/components/page/outbound/bale/checkBale/allCheck/index.vue +119 -119
  191. package/src/components/page/outbound/bale/checkBale/index/index.js +11 -11
  192. package/src/components/page/outbound/bale/checkBale/index/index.vue +259 -259
  193. package/src/components/page/outbound/bale/checkBale/newBale/index.js +11 -11
  194. package/src/components/page/outbound/bale/checkBale/newBale/index.vue +62 -62
  195. package/src/components/page/outbound/bale/components/allBlock/index.vue +97 -97
  196. package/src/components/page/outbound/bale/components/containerInfo/index.vue +237 -237
  197. package/src/components/page/outbound/bale/components/containerInfo//346/215/206/345/214/205/345/256/271/345/231/250/344/277/241/346/201/257.md +2 -2
  198. package/src/components/page/outbound/bale/components/containerSkuQty/index.vue +58 -58
  199. package/src/components/page/outbound/bale/components/mainPage/index.vue +620 -620
  200. package/src/components/page/outbound/bale/components/partBlock/index.vue +197 -197
  201. package/src/components/page/outbound/bale/components/planCollapse/index.vue +396 -396
  202. package/src/components/page/outbound/bale/components/storeInfo/index.vue +135 -135
  203. package/src/components/page/outbound/bale/components/storeInfo//345/256/242/346/210/267/346/215/206/345/214/205/344/277/241/346/201/257.md +1 -1
  204. package/src/components/page/outbound/bale/components/storeInfoSkuList/index.vue +121 -121
  205. package/src/components/page/outbound/delivery/action/index.js +11 -11
  206. package/src/components/page/outbound/delivery/action/index.vue +646 -646
  207. package/src/components/page/outbound/delivery/addOrder/index.js +11 -11
  208. package/src/components/page/outbound/delivery/addOrder/index.vue +281 -281
  209. package/src/components/page/outbound/delivery/components/boxItem/index.vue +118 -118
  210. package/src/components/page/outbound/delivery/components/orderContent/index.vue +143 -143
  211. package/src/components/page/outbound/delivery/components/orderContentTitle/index.vue +239 -239
  212. package/src/components/page/outbound/delivery/components/soAndLpnItem/index.vue +152 -152
  213. package/src/components/page/outbound/delivery/index/index.js +11 -11
  214. package/src/components/page/outbound/delivery/index/index.vue +154 -154
  215. package/src/components/page/outbound/index.js +94 -94
  216. package/src/components/page/outbound/pick/alone/index.js +11 -11
  217. package/src/components/page/outbound/pick/alone/index.vue +497 -497
  218. package/src/components/page/outbound/pick/box/index.js +11 -11
  219. package/src/components/page/outbound/pick/box/index.vue +363 -363
  220. package/src/components/page/outbound/pick/components/dataLookAndChange/index.vue +748 -748
  221. package/src/components/page/outbound/pick/components/skuLocationInfo/index.vue +208 -208
  222. package/src/components/page/outbound/pick/components/splitPutDown/index.vue +208 -208
  223. package/src/components/page/outbound/pick/index/index.js +11 -11
  224. package/src/components/page/outbound/pick/index/index.vue +624 -624
  225. package/src/components/page/outbound/pick/lpn/index.js +11 -11
  226. package/src/components/page/outbound/pick/lpn/index.vue +305 -305
  227. package/src/components/page/outbound/pick/mixin/all.js +100 -100
  228. package/src/components/page/outbound/pick/mixin/aloneAndNotAlone.js +132 -132
  229. package/src/components/page/outbound/pick/notAlone/index.js +11 -11
  230. package/src/components/page/outbound/pick/notAlone/index.vue +524 -524
  231. package/src/components/page/outbound/pickMerge/action/index.js +11 -11
  232. package/src/components/page/outbound/pickMerge/action/index.vue +543 -543
  233. package/src/components/page/outbound/pickMerge/components/containerInfo/index.vue +89 -89
  234. package/src/components/page/outbound/pickMerge/components/finishPopup/index.vue +88 -88
  235. package/src/components/page/outbound/pickMerge/components/skuInfo/index.vue +132 -132
  236. package/src/components/page/outbound/pickMerge/content/index.js +11 -11
  237. package/src/components/page/outbound/pickMerge/content/index.vue +170 -170
  238. package/src/components/page/outbound/pickMerge/index/index.js +11 -11
  239. package/src/components/page/outbound/pickMerge/index/index.vue +77 -77
  240. package/src/components/page/outbound/sow/action/index.js +11 -11
  241. package/src/components/page/outbound/sow/action/index.vue +1420 -1420
  242. package/src/components/page/outbound/sow/components/sowLocationList/index.vue +80 -80
  243. package/src/components/page/outbound/sow/components/waitSowCollapse/index.vue +105 -105
  244. package/src/components/page/outbound/sow/index/index.js +11 -11
  245. package/src/components/page/outbound/sow/index/index.vue +374 -374
  246. package/src/components/page/outbound/summary/box/index/index.js +11 -11
  247. package/src/components/page/outbound/summary/box/index/index.vue +645 -645
  248. package/src/components/page/outbound/summary/lpn/action/index.js +12 -12
  249. package/src/components/page/outbound/summary/lpn/action/index.vue +253 -253
  250. package/src/components/page/outbound/summary/lpn/index/index.js +12 -12
  251. package/src/components/page/outbound/summary/lpn/index/index.vue +70 -70
  252. package/src/components/page/receive/abnormal/action/index.js +11 -11
  253. package/src/components/page/receive/abnormal/action/index.vue +45 -45
  254. package/src/components/page/receive/abnormal/index/index.js +11 -11
  255. package/src/components/page/receive/abnormal/index/index.vue +73 -73
  256. package/src/components/page/receive/index.js +36 -36
  257. package/src/components/page/receive/putaway/components/SkuInfo/index.vue +247 -247
  258. package/src/components/page/receive/putaway/components/SkuPutAwayInfo/index.vue +203 -203
  259. package/src/components/page/receive/putaway/components/TaskInfo/index.vue +216 -216
  260. package/src/components/page/receive/putaway/index/index.js +11 -11
  261. package/src/components/page/receive/putaway/index/index.vue +288 -288
  262. package/src/components/page/receive/putaway/lpnAction/index.js +11 -11
  263. package/src/components/page/receive/putaway/lpnAction/index.vue +332 -332
  264. package/src/components/page/receive/putaway/skuAction/index.js +11 -11
  265. package/src/components/page/receive/putaway/skuAction/index.vue +742 -741
  266. package/src/components/page/receive/receipt/action/index.js +11 -11
  267. package/src/components/page/receive/receipt/action/index.vue +260 -260
  268. package/src/components/page/receive/receipt/index/index.js +11 -11
  269. package/src/components/page/receive/receipt/index/index.vue +124 -124
  270. package/src/components/ui/BottomBar/index.js +5 -5
  271. package/src/components/ui/BottomBar/index.vue +72 -72
  272. package/src/components/ui/BottomBarBtnHidden/index.js +11 -11
  273. package/src/components/ui/BottomBarBtnHidden/index.vue +91 -91
  274. package/src/components/ui/Button/index.js +5 -5
  275. package/src/components/ui/Button/index.vue +183 -183
  276. package/src/components/ui/CarPlate/index.js +11 -11
  277. package/src/components/ui/CarPlate/index.vue +378 -378
  278. package/src/components/ui/CarPlate//350/275/246/347/211/214/345/217/267.md +1 -1
  279. package/src/components/ui/Cell/index.js +5 -5
  280. package/src/components/ui/Cell/index.vue +259 -259
  281. package/src/components/ui/CellPopupDate/index.js +11 -11
  282. package/src/components/ui/CellPopupDate/index.vue +167 -167
  283. package/src/components/ui/CellPopupDate//345/215/225/345/205/203/350/241/214/345/212/240/346/227/266/351/227/264/351/200/211/346/213/251/345/231/250.md +1 -1
  284. package/src/components/ui/CellPopupRadio/index.js +11 -11
  285. package/src/components/ui/CellPopupRadio/index.vue +136 -136
  286. package/src/components/ui/CellPopupRadio//350/241/214/345/212/240/345/215/225/351/200/211/345/274/271/345/207/272/346/241/206.md +1 -1
  287. package/src/components/ui/CutCard/index.js +11 -11
  288. package/src/components/ui/CutCard/index.vue +132 -132
  289. package/src/components/ui/CutCard//345/215/241/347/211/207/351/241/265/351/235/242/345/210/207/346/215/242.md +1 -1
  290. package/src/components/ui/DataLookBg/index.js +11 -11
  291. package/src/components/ui/DataLookBg/index.vue +104 -104
  292. 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 +1 -1
  293. package/src/components/ui/ErrorMsg/index.js +59 -59
  294. package/src/components/ui/ErrorMsg/index.vue +141 -141
  295. package/src/components/ui/Form/index.js +5 -5
  296. package/src/components/ui/Form/index.vue +36 -36
  297. package/src/components/ui/ImgLook/index.js +5 -5
  298. package/src/components/ui/ImgLook/index.vue +96 -96
  299. package/src/components/ui/ImgUpload/index.js +12 -12
  300. package/src/components/ui/ImgUpload/index.vue +120 -120
  301. package/src/components/ui/Input/index.js +5 -5
  302. package/src/components/ui/Input/index.vue +554 -546
  303. package/src/components/ui/Input//350/276/223/345/205/245/346/241/206.md +1 -1
  304. package/src/components/ui/Loading/index.js +49 -49
  305. package/src/components/ui/Loading/index.vue +61 -61
  306. package/src/components/ui/MenuItem/index.js +5 -5
  307. package/src/components/ui/MenuItem/index.vue +170 -170
  308. package/src/components/ui/NavBar/index.js +5 -5
  309. package/src/components/ui/NavBar/index.vue +143 -143
  310. package/src/components/ui/NavBar//351/241/266/351/203/250/345/257/274/350/210/252/346/240/217.md +1 -1
  311. package/src/components/ui/NotData/index.js +5 -5
  312. package/src/components/ui/NotData/index.vue +75 -75
  313. package/src/components/ui/Pages/index.js +5 -5
  314. package/src/components/ui/Pages/index.vue +186 -186
  315. package/src/components/ui/Popup/index.js +5 -5
  316. package/src/components/ui/Popup/index.vue +245 -245
  317. package/src/components/ui/PopupCheckbox/index.js +5 -5
  318. package/src/components/ui/PopupCheckbox/index.vue +207 -207
  319. package/src/components/ui/PopupRadio/index.js +5 -5
  320. package/src/components/ui/PopupRadio/index.vue +124 -124
  321. package/src/components/ui/TabBar/index.js +11 -11
  322. package/src/components/ui/TabBar/index.vue +132 -132
  323. package/src/components/ui/TabBar//345/272/225/351/203/250/345/257/274/350/210/252/346/240/217.md +1 -1
  324. package/src/components/ui/Table/index.js +5 -5
  325. package/src/components/ui/Table/index.vue +213 -213
  326. package/src/components/ui/Tag/index.js +5 -5
  327. package/src/components/ui/Tag/index.vue +142 -142
  328. package/src/components/ui/TitleValueCell/index.js +11 -11
  329. package/src/components/ui/TitleValueCell/index.vue +61 -61
  330. package/src/components/ui/index.js +84 -84
  331. package/src/directive/Permissions.js +35 -35
  332. package/src/directive/index.js +12 -12
  333. package/src/index.js +67 -67
  334. package/src/mixins/loginAndInit/index.js +27 -0
  335. package/src/mixins/loginAndInit//346/234/211token/346/227/266/345/200/231/345/222/214/346/234/211/344/273/223/345/272/223id/346/227/266/351/234/200/350/246/201/345/210/235/345/247/213/345/214/226/347/232/204/346/225/260/346/215/256.md +0 -0
  336. package/src/mixins//346/267/267/345/205/245.md +0 -0
  337. package/src/router/index.js +405 -405
  338. package/src/router/menu.js +367 -367
  339. package/src/test/file/index.js +11 -11
  340. package/src/test/file/index.vue +25 -25
  341. package/src/utils/ApiUtils.js +48 -48
  342. package/src/utils/AppBack.js +44 -44
  343. package/src/utils/Axios.js +160 -160
  344. package/src/utils/BarcodeResolve.js +281 -281
  345. package/src/utils/DateTime.js +219 -219
  346. package/src/utils/DeepCopy.js +61 -61
  347. package/src/utils/Dict.js +73 -73
  348. package/src/utils/GetImgSrc.js +53 -53
  349. package/src/utils/Init.js +12 -12
  350. package/src/utils/Language.js +59 -59
  351. package/src/utils/LocalStorage.js +30 -30
  352. package/src/utils/Permissions.js +51 -51
  353. package/src/utils/Print.js +179 -179
  354. package/src/utils/README.md +2 -2
  355. package/src/utils/RouteInit.js +14 -14
  356. package/src/utils/ScanRule.js +150 -150
  357. package/src/utils/SetColor.js +22 -22
  358. package/src/utils/TabBar.js +30 -30
  359. package/src/utils/Tip.js +26 -26
  360. package/src/utils/Toast.js +41 -41
  361. package/src/utils/UUID.js +33 -33
  362. package/src/utils/Warehouse.js +26 -26
  363. package/src/utils/index.js +63 -63
  364. package/src/utils/windowGlobalData.js +88 -88
  365. package/src/views/common/home/index.vue +67 -67
  366. package/src/views/common/init/index.vue +128 -124
  367. package/src/views/common/login/index.vue +23 -23
  368. package/src/views/common/menu/menuOne.vue +36 -36
  369. package/src/views/common/menu/menuTwo.vue +33 -33
  370. package/src/views/common/my/device.vue +23 -23
  371. package/src/views/common/my/index.vue +23 -23
  372. package/src/views/common/my/language.vue +23 -23
  373. package/src/views/common/my/msg.vue +23 -23
  374. package/src/views/common/my/print.vue +23 -23
  375. package/src/views/common/my/warehouse.vue +25 -25
  376. package/src/views/common/task/index.vue +23 -23
  377. package/src/views/count/index.vue +87 -87
  378. package/src/views/count/inv/action.vue +12 -12
  379. package/src/views/count/inv/index.vue +12 -12
  380. package/src/views/count/loc/action.vue +12 -12
  381. package/src/views/count/loc/index.vue +12 -12
  382. package/src/views/inbound/newProject/action.vue +23 -23
  383. package/src/views/inbound/newProject/index.vue +23 -23
  384. package/src/views/inbound/quality/InboundQualityExecuteView.vue +11 -11
  385. package/src/views/inbound/quality/InboundQualityTaskListView.vue +11 -11
  386. package/src/views/inbound/receive/home.vue +14 -14
  387. package/src/views/inbound/receive/index.vue +13 -13
  388. package/src/views/inbound/receive/sku/InboundReceiveSkuAdvanceView.vue +13 -13
  389. package/src/views/inbound/receive/sku/InboundReceiveSkuDirectView.vue +13 -13
  390. package/src/views/inbound/receive/sku/InboundReceiveSkuScanView.vue +13 -13
  391. package/src/views/inner/abnormalMove/index.vue +23 -23
  392. package/src/views/inner/disposeAbnormal/action.vue +23 -23
  393. package/src/views/inner/disposeAbnormal/index.vue +23 -23
  394. package/src/views/inner/lpnMove/action.vue +23 -23
  395. package/src/views/inner/lpnMove/index.vue +23 -23
  396. package/src/views/inner/materialApply/action.vue +22 -22
  397. package/src/views/inner/materialApply/generate.vue +22 -22
  398. package/src/views/inner/movePutAway/index.vue +22 -22
  399. package/src/views/inner/randomMove/index.vue +23 -23
  400. package/src/views/inner/reportAbnormal/action.vue +23 -23
  401. package/src/views/inner/reportAbnormal/index.vue +23 -23
  402. package/src/views/inner/taskMove/index.vue +23 -23
  403. package/src/views/outbound/aloneBale/action.vue +23 -23
  404. package/src/views/outbound/aloneBale/index.vue +23 -23
  405. package/src/views/outbound/aloneBale/newBale.vue +23 -23
  406. package/src/views/outbound/bale/action.vue +23 -23
  407. package/src/views/outbound/bale/allCheck.vue +23 -23
  408. package/src/views/outbound/bale/index.vue +23 -23
  409. package/src/views/outbound/bale/newBale.vue +23 -23
  410. package/src/views/outbound/delivery/action.vue +23 -23
  411. package/src/views/outbound/delivery/addOrder.vue +23 -23
  412. package/src/views/outbound/delivery/index.vue +23 -23
  413. package/src/views/outbound/pick/aloneAction.vue +23 -23
  414. package/src/views/outbound/pick/boxAction.vue +23 -23
  415. package/src/views/outbound/pick/index.vue +23 -23
  416. package/src/views/outbound/pick/lpnAction.vue +23 -23
  417. package/src/views/outbound/pick/notAloneAction.vue +23 -23
  418. package/src/views/outbound/pickMerge/action.vue +23 -23
  419. package/src/views/outbound/pickMerge/content.vue +23 -23
  420. package/src/views/outbound/pickMerge/index.vue +23 -23
  421. package/src/views/outbound/sow/action.vue +23 -23
  422. package/src/views/outbound/sow/index.vue +23 -23
  423. package/src/views/outbound/summary/box/index.vue +23 -23
  424. package/src/views/outbound/summary/lpn/action.vue +23 -23
  425. package/src/views/outbound/summary/lpn/index.vue +23 -23
  426. package/src/views/receive/abnormal/action.vue +23 -23
  427. package/src/views/receive/abnormal/index.vue +24 -24
  428. package/src/views/receive/putaway/index.vue +23 -23
  429. package/src/views/receive/putaway/lpnAction.vue +23 -23
  430. package/src/views/receive/putaway/skuAction.vue +23 -23
  431. package/src/views/receive/receipt/action.vue +25 -25
  432. package/src/views/receive/receipt/index.vue +25 -25
@@ -1,748 +1,748 @@
1
- <!--
2
- 数据看板及底部操作
3
- @author: 张文
4
- @date: 2022-06-16
5
- -->
6
- <template>
7
- <div>
8
-
9
- <lw-nav-bar :title="$lwLanguage.get('','执行拣选')"/>
10
-
11
- <!-- 页主体 -->
12
- <div class="lw-global-page-box">
13
-
14
- <!-- 头部数据看板 -->
15
- <div
16
- class="lw-global-model-box"
17
- style="border-radius: 10px 10px 0 0"
18
- >
19
- <div class="lw-global-flex-start">
20
-
21
- <img
22
- :src="require('./../../../../../../assets/img/taskOrder.png')"
23
- alt=""
24
- style="width: 50px;"
25
- >
26
-
27
- <div style="margin-left: 10px">
28
- <div class="lw-global-value-bold" style="font-size: 16px">{{ pickData.pickNo }}</div>
29
-
30
- <!-- 捆包类型 -->
31
- <lw-tag
32
- v-if="pickData.pickPackTypeLabel"
33
- style="margin-left: 0"
34
- plain
35
- round
36
- >{{ pickData.pickPackTypeLabel }}</lw-tag>
37
- <!-- 拣选方式 -->
38
- <lw-tag
39
- v-if="pickData.pickMethodLabel"
40
- type="warning"
41
- plain
42
- round
43
- >{{ pickMethod }}</lw-tag>
44
- </div>
45
-
46
- </div>
47
- </div>
48
- <lw-data-look-bg type="not">
49
-
50
- <!-- 计划量 -->
51
- <div>
52
- <div>{{ pickData.totalQty || 0 }}</div>
53
- <div class="lw-data-look-bg-title">
54
- {{ $lwLanguage.get('','计划量') }}
55
- </div>
56
- </div>
57
-
58
- <!-- 已拣量 -->
59
- <div>
60
- <div>{{ pickData.pickQty || 0 }}</div>
61
- <div class="lw-data-look-bg-title">
62
- {{ $lwLanguage.get('','已拣量') }}
63
- </div>
64
- </div>
65
-
66
- <!-- 待拣量 -->
67
- <div>
68
- <div>{{ pickData.waitPickQty || 0 }}</div>
69
- <div class="lw-data-look-bg-title">
70
- {{ $lwLanguage.get('','待拣量') }}
71
- </div>
72
- </div>
73
-
74
- <!-- 异常量 -->
75
- <div class="lw-data-last-item">
76
- <div>{{ pickData.abnormalQty || 0 }}</div>
77
- <div class="lw-data-look-bg-title">
78
- {{ $lwLanguage.get('','异常量') }}
79
- </div>
80
- </div>
81
-
82
- </lw-data-look-bg>
83
- <div
84
- class="lw-global-model-box"
85
- style="border-radius: 0 0 10px 10px;margin-bottom: 10px"
86
- >
87
- <!--进度条-->
88
- <van-progress
89
- style="margin: 5px 0"
90
- stroke-width="8"
91
- :percentage="percentage"
92
- color="linear-gradient(90deg, #FF8E8F 0%, #C5000A 100%)"
93
- />
94
-
95
- <div style="margin-top: 15px">
96
- <lw-tag
97
- v-if="pickData.allocationOrder"
98
- type="danger"
99
- round
100
- plain
101
- >{{ $lwLanguage.get('','调拨出库') }}</lw-tag>
102
- <lw-tag
103
- v-if="pickData.multiInOne"
104
- round
105
- plain
106
- >{{ $lwLanguage.get('','多件一票') }}</lw-tag>
107
- </div>
108
- <slot name="look-bottom"></slot>
109
- </div>
110
-
111
- <!-- 业务自定义 -->
112
- <slot></slot>
113
-
114
- </div>
115
-
116
- <div :style="{height: hasPrint ? '50px' : 0}"></div>
117
- <div
118
- :style="{height: hasPrint ? '50px' : 0}"
119
- class="lw-global-flex-between lw-data-loot-adn-change-print"
120
- >
121
- <div style="text-align: center;">
122
- <div class="lw-global-value-bold">A00001</div>
123
- <div class="lw-global-title">{{ $lwLanguage.get('','已打印出库票') }}</div>
124
- </div>
125
-
126
- <div style="text-align: center;">
127
- <div class="lw-global-value-bold">2</div>
128
- <div class="lw-global-title">最小销售数</div>
129
- </div>
130
-
131
- <div style="text-align: center;">
132
- <div class="lw-global-value-bold-red">4</div>
133
- <div class="lw-global-title">{{ $lwLanguage.get('','商品数') }}</div>
134
- </div>
135
-
136
- <lw-button
137
- style="flex-shrink: 0"
138
- mini
139
- round
140
- >{{ $lwLanguage.get('','补打票') }}</lw-button>
141
-
142
- </div>
143
-
144
- <!-- 底部按钮 -->
145
- <lw-bottom-bar v-if="showBottomBar">
146
-
147
- <lw-button
148
- type="last"
149
- @click="lackBtn"
150
- >{{ $lwLanguage.get('','拣选缺货') }}</lw-button>
151
-
152
- <lw-button
153
- type="normal"
154
- plain
155
- @click="abnBtn"
156
- >{{ $lwLanguage.get('','异常') }}</lw-button>
157
-
158
- <lw-button
159
- @click="confirmBtn"
160
- >{{ $lwLanguage.get('','确认拣选') }}</lw-button>
161
-
162
- </lw-bottom-bar>
163
-
164
- <!-- 多零件选择 -->
165
- <lw-popup
166
- :title="$lwLanguage.get('','选择商品')"
167
- v-model="skuSelectPopup.show"
168
- >
169
-
170
- <div
171
- class="lw-global-row lw-global-click-style lw-global-flex-start-start"
172
- v-for="(i,k) in skuSelectPopup.list"
173
- :key="k"
174
- @click="skuSelectClick(i)"
175
- >
176
-
177
- <div style="flex: 1">
178
- <lw-sku-info-module v-bind="i"/>
179
- </div>
180
-
181
- <van-icon
182
- style="margin-left: 10px;"
183
- name="arrow"
184
- size="18px"
185
- color="#ccc"
186
- />
187
- </div>
188
-
189
- </lw-popup>
190
-
191
- <!-- 拣选缺货 -->
192
- <lw-popup
193
- :title="$lwLanguage.get('','拣选缺货')"
194
- v-model="lackPopup.show"
195
- >
196
-
197
-
198
- <!-- 箱、托盘显示 -->
199
- <template v-if="isBoxOrLpn">
200
- <lw-sku-info-module v-bind="lackPopup.skuInfo"/>
201
- </template>
202
- <!-- 独立件、非独立件显示 -->
203
- <template v-else>
204
- <div class="lw-global-flex-start-start lw-global-row">
205
-
206
- <div style="flex: 1">
207
- <div class="lw-global-value-bold">{{ lackPopup.skuInfo.skuCode }}</div>
208
- <div class="lw-global-title">{{ lackPopup.skuInfo.skuName }}</div>
209
- </div>
210
-
211
- <lw-tag
212
- plain
213
- round
214
- >{{ lackPopup.skuInfo.skuSizeLabel }}</lw-tag>
215
-
216
- </div>
217
-
218
- <div class="lw-global-flex-between lw-global-row">
219
-
220
- <lw-title-value-cell
221
- :title="$lwLanguage.get('','拣选库位')"
222
- :value="lackPopup.skuInfo.fromLocationCode"
223
- val-bold
224
- :is-row="false"
225
- />
226
-
227
- <div>
228
- <span class="lw-global-title">
229
- {{ $lwLanguage.get('','最小销售量') }}
230
- </span>
231
- <span class="lw-global-value-bold-red">
232
- {{ lackPopup.skuInfo.uomQty }}
233
- </span>
234
- </div>
235
-
236
- </div>
237
-
238
- <lw-title-value-cell
239
- class="lw-global-row"
240
- :title="$lwLanguage.get('','待拣量')"
241
- :value="lackPopup.skuInfo.qty || 0"
242
- val-bold
243
- :is-row="false"
244
- />
245
-
246
- </template>
247
-
248
-
249
- <lw-input
250
- :title="$lwLanguage.get('','缺货量')"
251
- v-model="lackPopup.lackQty"
252
- :get-focus.sync="lackPopup.lackQtyFocus"
253
- type="digit"
254
- @confirm="lackConfirm"
255
- />
256
-
257
- <template #button>
258
- <lw-button @click="lackConfirm"
259
- >{{ $lwLanguage.get('','确认') }}</lw-button>
260
- </template>
261
-
262
- </lw-popup>
263
-
264
- <!-- 异常 -->
265
- <lw-popup
266
- :title="$lwLanguage.get('','异常')"
267
- v-model="abnPopup.show"
268
- @closed="abnPopup.comShow = false"
269
- >
270
-
271
- <lw-inner-abnormal-module
272
- v-if="abnPopup.comShow"
273
- ref="abnormal"
274
- v-bind="abnPopup.skuInfo"
275
- :location="abnPopup.skuInfo.fromLocationCode"
276
- :type="$lwLanguage.get('','在库')"
277
- :ab-type="$lwLanguage.get('','拣选')"
278
- />
279
-
280
- <template #button>
281
- <lw-button @click="abnConfirm"
282
- >{{ $lwLanguage.get('','确认') }}</lw-button>
283
- </template>
284
-
285
- </lw-popup>
286
-
287
- <!-- 去播种 -->
288
- <lw-popup
289
- :title="$lwLanguage.get('','拣选完成 - 提总')"
290
- v-model="sowShow"
291
- :off-btn-fn="backPage"
292
- >
293
-
294
- <div class="lw-global-row lw-data-loot-adn-change-success">
295
- {{ $lwLanguage.get('','当前任务已拣选完成,请移动到播种墙进行播种分拣') }}
296
- </div>
297
-
298
- <lw-title-value-cell
299
- :title="$lwLanguage.get('','拣选容器号')"
300
- :value="pickContainer"
301
- val-red
302
- val-bold
303
- :val-size="16"
304
- />
305
-
306
- <lw-title-value-cell
307
- :title="$lwLanguage.get('','播种墙')"
308
- :value="pickData.sowCode"
309
- val-bold
310
- :val-size="16"
311
- />
312
-
313
- </lw-popup>
314
-
315
- <!-- 集合 -->
316
- <lw-popup
317
- :title="$lwLanguage.get('','拣选完成')"
318
- v-model="summaryShow"
319
- :off-btn-fn="backPage"
320
- >
321
-
322
- <div class="lw-global-row lw-data-loot-adn-change-success">
323
- {{ $lwLanguage.get('','当前任务已拣选完成,请移动到集合口进行分区拣选集合') }}
324
- </div>
325
-
326
- <lw-title-value-cell
327
- :title="$lwLanguage.get('','拣选容器号')"
328
- :value="pickContainer"
329
- val-red
330
- val-bold
331
- :val-size="16"
332
- />
333
-
334
- <div class="lw-global-flex-between">
335
- <lw-title-value-cell
336
- :title="$lwLanguage.get('','集合口')"
337
- :value="pickData.summaryCode"
338
- val-bold
339
- :val-size="16"
340
- />
341
-
342
- <lw-title-value-cell
343
- :title="$lwLanguage.get('','集合位')"
344
- :value="pickData.summaryLineCode"
345
- val-bold
346
- :val-size="16"
347
- />
348
- </div>
349
-
350
- </lw-popup>
351
-
352
- <!-- 独立件 - 集货 -->
353
- <lw-popup
354
- :title="$lwLanguage.get('','拣选完成')"
355
- v-model="aloneShow"
356
- :off-btn-fn="backPage"
357
- >
358
-
359
- <div class="lw-global-row lw-data-loot-adn-change-success">
360
- {{ $lwLanguage.get('','当前任务已拣选完成,请移动到集货位进行集货') }}
361
- </div>
362
-
363
- </lw-popup>
364
-
365
- <!-- 非独立件 -->
366
- <lw-popup
367
- :title="$lwLanguage.get('','拣选完成')"
368
- v-model="notAloneShow"
369
- :off-btn-fn="backPage"
370
- >
371
-
372
- <div class="lw-global-row lw-data-loot-adn-change-success">
373
- {{ $lwLanguage.get('','当前任务已拣选完成,请移动到捆包区:') }}
374
- <span
375
- class="lw-global-value-bold-red"
376
- style="font-size: 16px"
377
- >{{ pickData.pickPackTypeLabel }}</span>
378
- </div>
379
-
380
- <!-- 独立捆包件不显示 -->
381
- <lw-title-value-cell
382
- v-if="pickData.pickMethod !== 'ALONE_PACK'"
383
- :title="$lwLanguage.get('','拣选容器号')"
384
- :value="pickContainer"
385
- val-red
386
- val-bold
387
- :val-size="16"
388
- />
389
-
390
- <div style="text-align: center;margin-top: 10px">
391
- <lw-tag size="large">{{ pickData.pickPackTypeLabel }}</lw-tag>
392
- </div>
393
-
394
- </lw-popup>
395
-
396
-
397
- </div>
398
- </template>
399
-
400
- <script>
401
-
402
- export default {
403
- name: "index",
404
- props:{
405
-
406
- // 当前拣选类型: box-按箱、lpn-按托盘、alone-独立件、notAlone-非独立件
407
- type:{
408
- type: String,
409
- required: true
410
- },
411
-
412
- // 拣选数据
413
- pickData: Object,
414
-
415
- // 当前拣选行的索引
416
- taskIndex:{
417
- type: Number,
418
- default: 0
419
- },
420
-
421
- // 异常提交的函数 - 必须是异步的
422
- abnConfirmFn:{
423
- type: Function,
424
- required: true
425
- },
426
-
427
- // 缺货拣选的函数 - 必须是异步的
428
- lackConfirmFn:{
429
- type: Function,
430
- required: true
431
- },
432
-
433
- // 拣选容器号
434
- pickContainer: String,
435
-
436
- // 获取数据
437
- getData:{
438
- type: Function,
439
- required: true
440
- },
441
-
442
- // 是否显示底部操作按钮
443
- showBottomBar:{
444
- type: Boolean,
445
- default: true
446
- }
447
- },
448
- computed:{
449
- // 完成百分比
450
- percentage(){
451
- return Math.floor(
452
- (this.pickData.pickQty + this.pickData.abnormalQty) /
453
- this.pickData.totalQty * 100
454
- ) || 0
455
- },
456
-
457
- // 当前类型是否为整箱或整托
458
- isBoxOrLpn(){
459
- return ['box', 'lpn'].includes(this.type)
460
- },
461
-
462
- // 拣选方式
463
- pickMethod(){
464
- if (this.pickData.pickUom === 'CASE'){
465
- return this.$lwLanguage.get('','按箱拣选')
466
- }
467
- if (this.pickData.pickUom === 'LPN'){
468
- return this.$lwLanguage.get('','整托盘拣选')
469
- }
470
-
471
- return this.pickData.pickMethodLabel
472
- }
473
- },
474
- data() {
475
- return {
476
- // 选择零件的弹框
477
- skuSelectPopup:{
478
- // 调用选择零件的父类型:缺货-lack,异常-abn
479
- type:'',
480
- show: false,
481
- list:[]
482
- },
483
-
484
- // 拣选缺货的弹框
485
- lackPopup:{
486
- show: false,
487
- skuInfo: [],
488
- lackQty:'',
489
- lackQtyFocus:false,
490
- },
491
-
492
- // 异常的弹框
493
- abnPopup:{
494
- show: false,
495
- comShow:false,
496
- skuInfo: []
497
- },
498
-
499
- // 播种墙
500
- sowShow: false,
501
-
502
- // 集合
503
- summaryShow: false,
504
-
505
- // 独立件
506
- aloneShow: false,
507
-
508
- // 非独立件
509
- notAloneShow: false,
510
-
511
- // 有无打印数据
512
- hasPrint: false
513
- }
514
- },
515
- mounted() {
516
- // TODO 检查是否配置了打印机
517
- },
518
- methods: {
519
-
520
- // 缺货、异常上报成功后状态判断
521
- lackAbnSuccess(res){
522
- if (res.generateStatus){
523
- this.$lwToast.success(
524
- this.$lwLanguage.get('','上报缺货成功')
525
- )
526
- }
527
-
528
- if (res.taskFinishStatus){
529
- this.openPickSuccessPopup()
530
- return
531
- }
532
-
533
- this.getData()
534
- },
535
- // 拣选完成的弹出框
536
- openPickSuccessPopup(){
537
- if (this.pickData.sowCode){
538
- this.sowShow = true
539
- return
540
- }
541
-
542
- if (this.pickData.summaryCode){
543
- this.summaryShow = true
544
- return
545
- }
546
-
547
- if (this.pickData.pickPackType === 'ALONE'){
548
- this.aloneShow = true
549
- return
550
- }
551
-
552
- this.notAloneShow = true
553
- },
554
-
555
-
556
- // 缺货拣选或者异常上报时候是否存在多零件
557
- checkSkuMore(type){
558
-
559
- let data
560
- switch (this.type) {
561
- case 'box':
562
- data = this.pickData.pendingPickCaseList[this.taskIndex]
563
- break;
564
- case 'lpn':
565
- data = this.pickData.pendingPickLpnList[this.taskIndex]
566
- break;
567
- default:
568
- data = {
569
- ...this.pickData.pendingPickLineList[this.taskIndex],
570
- qty:Number(this.pickData.pendingPickLineList[this.taskIndex].totalQty || 0) -
571
- Number(this.pickData.pendingPickLineList[this.taskIndex].pickQty || 0)
572
- }
573
- }
574
-
575
- let skuInfo = []
576
- if (this.isBoxOrLpn){
577
- skuInfo = data.skuList.map(item=>{
578
- item.fromLocationCode = data.fromLocationCode
579
- item.qty = Number(item.qty || 0)
580
- return item
581
- })
582
- }else {
583
- skuInfo = [data]
584
- }
585
-
586
-
587
- if (skuInfo.length === 1){
588
- return {
589
- success: true,
590
- data: skuInfo[0]
591
- }
592
- }else {
593
- this.showSkuSelect(skuInfo, type)
594
- return {
595
- success: false,
596
- data: {}
597
- }
598
- }
599
- },
600
- // 显示需要选择零件的弹框
601
- showSkuSelect(list, type){
602
- this.skuSelectPopup.list = list
603
- this.skuSelectPopup.type = type
604
- this.skuSelectPopup.show = true
605
- },
606
- // 选中零件
607
- skuSelectClick(item){
608
- if (this.skuSelectPopup.type === 'abn'){
609
- this.showAbnPopup(item)
610
- }else {
611
- this.showLackPopup(item)
612
- }
613
- this.skuSelectPopup.show = false
614
- },
615
-
616
-
617
- // 拣选缺货按钮
618
- lackBtn(){
619
- const {success, data} = this.checkSkuMore('lack')
620
-
621
- if (!success) return
622
-
623
- this.showLackPopup(data)
624
- },
625
- // 显示拣选缺货弹框
626
- showLackPopup(data){
627
- this.lackPopup.skuInfo = data
628
- this.lackPopup.show = true
629
- this.lackPopup.lackQtyFocus = true
630
- },
631
- // 确认拣选缺货
632
- lackConfirm(){
633
- const qty = Number(this.lackPopup.lackQty || 0)
634
- if (!qty){
635
- this.lackPopup.lackQtyFocus = true
636
- this.$lwShowErrorMsg(
637
- this.$lwLanguage.get('','缺货量不能为空,且应当是大于0的整数')
638
- )
639
- this.lackPopup.lackQty = ''
640
- return
641
- }
642
-
643
- const sku = this.lackPopup.skuInfo
644
-
645
- // 判断是否大于待拣量
646
- if (Number(sku.qty || 0) < qty){
647
- this.lackPopup.lackQtyFocus = true
648
- this.$lwShowErrorMsg(
649
- this.$lwLanguage.get('','缺货量不能大于待拣量')
650
- )
651
- this.lackPopup.lackQty = ''
652
- return
653
- }
654
-
655
- this.lackConfirmFn({
656
- ...this.lackPopup.skuInfo,
657
- lackQty: qty
658
- }).then((res)=>{
659
-
660
- this.lackAbnSuccess(res)
661
-
662
- this.lackPopup.lackQty = ''
663
- this.lackPopup.show = false
664
- })
665
- },
666
-
667
-
668
- // 异常按钮
669
- abnBtn(){
670
- const {success, data} = this.checkSkuMore('abn')
671
-
672
- if (!success) return
673
-
674
- this.showAbnPopup(data)
675
- },
676
- // 显示拣选缺货弹框
677
- showAbnPopup(data){
678
- this.abnPopup.skuInfo = data
679
- this.abnPopup.comShow = true
680
- this.$nextTick(()=>{
681
- this.abnPopup.show = true
682
- })
683
- },
684
- // 确认异常
685
- abnConfirm(){
686
- const {success, data} = this.$refs.abnormal.getAbnormalData()
687
-
688
- if (!success) return
689
-
690
- this.abnConfirmFn({
691
- ...this.abnPopup.skuInfo,
692
- data
693
- }).then((res)=>{
694
- this.lackAbnSuccess(res)
695
- this.abnPopup.show = false
696
- })
697
- },
698
-
699
-
700
- // 确认拣选按钮
701
- confirmBtn(){
702
- this.$emit('pickConfirm')
703
- },
704
-
705
-
706
- // 返回页面
707
- backPage(){
708
- history.go(-1)
709
- },
710
-
711
-
712
- // 打印箱票
713
- print(res){
714
- // TODO 调用接口获取打印数据
715
- console.log(res)
716
- }
717
-
718
- }
719
- }
720
- </script>
721
-
722
- <style scoped lang="less">
723
- .lw-data-loot-adn-change-success{
724
- font-size: 16px;
725
- text-align: center;
726
- font-weight: bold;
727
- letter-spacing: 1px;
728
- }
729
-
730
-
731
- .lw-data-loot-adn-change-print{
732
- position: fixed;
733
- bottom: 50px;
734
- left: 0;
735
- width: 100%;
736
- height: 50px;
737
- background: #ccc;
738
- padding: 0 5px;
739
- box-sizing: border-box;
740
- overflow: hidden;
741
- transition: all .3s;
742
-
743
- .lw-global-title{
744
- font-size: 12px;
745
- }
746
- }
747
-
748
- </style>
1
+ <!--
2
+ 数据看板及底部操作
3
+ @author: 张文
4
+ @date: 2022-06-16
5
+ -->
6
+ <template>
7
+ <div>
8
+
9
+ <lw-nav-bar :title="$lwLanguage.get('','执行拣选')"/>
10
+
11
+ <!-- 页主体 -->
12
+ <div class="lw-global-page-box">
13
+
14
+ <!-- 头部数据看板 -->
15
+ <div
16
+ class="lw-global-model-box"
17
+ style="border-radius: 10px 10px 0 0"
18
+ >
19
+ <div class="lw-global-flex-start">
20
+
21
+ <img
22
+ :src="require('./../../../../../../assets/img/taskOrder.png')"
23
+ alt=""
24
+ style="width: 50px;"
25
+ >
26
+
27
+ <div style="margin-left: 10px">
28
+ <div class="lw-global-value-bold" style="font-size: 16px">{{ pickData.pickNo }}</div>
29
+
30
+ <!-- 捆包类型 -->
31
+ <lw-tag
32
+ v-if="pickData.pickPackTypeLabel"
33
+ style="margin-left: 0"
34
+ plain
35
+ round
36
+ >{{ pickData.pickPackTypeLabel }}</lw-tag>
37
+ <!-- 拣选方式 -->
38
+ <lw-tag
39
+ v-if="pickData.pickMethodLabel"
40
+ type="warning"
41
+ plain
42
+ round
43
+ >{{ pickMethod }}</lw-tag>
44
+ </div>
45
+
46
+ </div>
47
+ </div>
48
+ <lw-data-look-bg type="not">
49
+
50
+ <!-- 计划量 -->
51
+ <div>
52
+ <div>{{ pickData.totalQty || 0 }}</div>
53
+ <div class="lw-data-look-bg-title">
54
+ {{ $lwLanguage.get('','计划量') }}
55
+ </div>
56
+ </div>
57
+
58
+ <!-- 已拣量 -->
59
+ <div>
60
+ <div>{{ pickData.pickQty || 0 }}</div>
61
+ <div class="lw-data-look-bg-title">
62
+ {{ $lwLanguage.get('','已拣量') }}
63
+ </div>
64
+ </div>
65
+
66
+ <!-- 待拣量 -->
67
+ <div>
68
+ <div>{{ pickData.waitPickQty || 0 }}</div>
69
+ <div class="lw-data-look-bg-title">
70
+ {{ $lwLanguage.get('','待拣量') }}
71
+ </div>
72
+ </div>
73
+
74
+ <!-- 异常量 -->
75
+ <div class="lw-data-last-item">
76
+ <div>{{ pickData.abnormalQty || 0 }}</div>
77
+ <div class="lw-data-look-bg-title">
78
+ {{ $lwLanguage.get('','异常量') }}
79
+ </div>
80
+ </div>
81
+
82
+ </lw-data-look-bg>
83
+ <div
84
+ class="lw-global-model-box"
85
+ style="border-radius: 0 0 10px 10px;margin-bottom: 10px"
86
+ >
87
+ <!--进度条-->
88
+ <van-progress
89
+ style="margin: 5px 0"
90
+ stroke-width="8"
91
+ :percentage="percentage"
92
+ color="linear-gradient(90deg, #FF8E8F 0%, #C5000A 100%)"
93
+ />
94
+
95
+ <div style="margin-top: 15px">
96
+ <lw-tag
97
+ v-if="pickData.allocationOrder"
98
+ type="danger"
99
+ round
100
+ plain
101
+ >{{ $lwLanguage.get('','调拨出库') }}</lw-tag>
102
+ <lw-tag
103
+ v-if="pickData.multiInOne"
104
+ round
105
+ plain
106
+ >{{ $lwLanguage.get('','多件一票') }}</lw-tag>
107
+ </div>
108
+ <slot name="look-bottom"></slot>
109
+ </div>
110
+
111
+ <!-- 业务自定义 -->
112
+ <slot></slot>
113
+
114
+ </div>
115
+
116
+ <div :style="{height: hasPrint ? '50px' : 0}"></div>
117
+ <div
118
+ :style="{height: hasPrint ? '50px' : 0}"
119
+ class="lw-global-flex-between lw-data-loot-adn-change-print"
120
+ >
121
+ <div style="text-align: center;">
122
+ <div class="lw-global-value-bold">A00001</div>
123
+ <div class="lw-global-title">{{ $lwLanguage.get('','已打印出库票') }}</div>
124
+ </div>
125
+
126
+ <div style="text-align: center;">
127
+ <div class="lw-global-value-bold">2</div>
128
+ <div class="lw-global-title">最小销售数</div>
129
+ </div>
130
+
131
+ <div style="text-align: center;">
132
+ <div class="lw-global-value-bold-red">4</div>
133
+ <div class="lw-global-title">{{ $lwLanguage.get('','商品数') }}</div>
134
+ </div>
135
+
136
+ <lw-button
137
+ style="flex-shrink: 0"
138
+ mini
139
+ round
140
+ >{{ $lwLanguage.get('','补打票') }}</lw-button>
141
+
142
+ </div>
143
+
144
+ <!-- 底部按钮 -->
145
+ <lw-bottom-bar v-if="showBottomBar">
146
+
147
+ <lw-button
148
+ type="last"
149
+ @click="lackBtn"
150
+ >{{ $lwLanguage.get('','拣选缺货') }}</lw-button>
151
+
152
+ <lw-button
153
+ type="normal"
154
+ plain
155
+ @click="abnBtn"
156
+ >{{ $lwLanguage.get('','异常') }}</lw-button>
157
+
158
+ <lw-button
159
+ @click="confirmBtn"
160
+ >{{ $lwLanguage.get('','确认拣选') }}</lw-button>
161
+
162
+ </lw-bottom-bar>
163
+
164
+ <!-- 多零件选择 -->
165
+ <lw-popup
166
+ :title="$lwLanguage.get('','选择商品')"
167
+ v-model="skuSelectPopup.show"
168
+ >
169
+
170
+ <div
171
+ class="lw-global-row lw-global-click-style lw-global-flex-start-start"
172
+ v-for="(i,k) in skuSelectPopup.list"
173
+ :key="k"
174
+ @click="skuSelectClick(i)"
175
+ >
176
+
177
+ <div style="flex: 1">
178
+ <lw-sku-info-module v-bind="i"/>
179
+ </div>
180
+
181
+ <van-icon
182
+ style="margin-left: 10px;"
183
+ name="arrow"
184
+ size="18px"
185
+ color="#ccc"
186
+ />
187
+ </div>
188
+
189
+ </lw-popup>
190
+
191
+ <!-- 拣选缺货 -->
192
+ <lw-popup
193
+ :title="$lwLanguage.get('','拣选缺货')"
194
+ v-model="lackPopup.show"
195
+ >
196
+
197
+
198
+ <!-- 箱、托盘显示 -->
199
+ <template v-if="isBoxOrLpn">
200
+ <lw-sku-info-module v-bind="lackPopup.skuInfo"/>
201
+ </template>
202
+ <!-- 独立件、非独立件显示 -->
203
+ <template v-else>
204
+ <div class="lw-global-flex-start-start lw-global-row">
205
+
206
+ <div style="flex: 1">
207
+ <div class="lw-global-value-bold">{{ lackPopup.skuInfo.skuCode }}</div>
208
+ <div class="lw-global-title">{{ lackPopup.skuInfo.skuName }}</div>
209
+ </div>
210
+
211
+ <lw-tag
212
+ plain
213
+ round
214
+ >{{ lackPopup.skuInfo.skuSizeLabel }}</lw-tag>
215
+
216
+ </div>
217
+
218
+ <div class="lw-global-flex-between lw-global-row">
219
+
220
+ <lw-title-value-cell
221
+ :title="$lwLanguage.get('','拣选库位')"
222
+ :value="lackPopup.skuInfo.fromLocationCode"
223
+ val-bold
224
+ :is-row="false"
225
+ />
226
+
227
+ <div>
228
+ <span class="lw-global-title">
229
+ {{ $lwLanguage.get('','最小销售量') }}
230
+ </span>
231
+ <span class="lw-global-value-bold-red">
232
+ {{ lackPopup.skuInfo.uomQty }}
233
+ </span>
234
+ </div>
235
+
236
+ </div>
237
+
238
+ <lw-title-value-cell
239
+ class="lw-global-row"
240
+ :title="$lwLanguage.get('','待拣量')"
241
+ :value="lackPopup.skuInfo.qty || 0"
242
+ val-bold
243
+ :is-row="false"
244
+ />
245
+
246
+ </template>
247
+
248
+
249
+ <lw-input
250
+ :title="$lwLanguage.get('','缺货量')"
251
+ v-model="lackPopup.lackQty"
252
+ :get-focus.sync="lackPopup.lackQtyFocus"
253
+ type="digit"
254
+ @confirm="lackConfirm"
255
+ />
256
+
257
+ <template #button>
258
+ <lw-button @click="lackConfirm"
259
+ >{{ $lwLanguage.get('','确认') }}</lw-button>
260
+ </template>
261
+
262
+ </lw-popup>
263
+
264
+ <!-- 异常 -->
265
+ <lw-popup
266
+ :title="$lwLanguage.get('','异常')"
267
+ v-model="abnPopup.show"
268
+ @closed="abnPopup.comShow = false"
269
+ >
270
+
271
+ <lw-inner-abnormal-module
272
+ v-if="abnPopup.comShow"
273
+ ref="abnormal"
274
+ v-bind="abnPopup.skuInfo"
275
+ :location="abnPopup.skuInfo.fromLocationCode"
276
+ :type="$lwLanguage.get('','在库')"
277
+ :ab-type="$lwLanguage.get('','拣选')"
278
+ />
279
+
280
+ <template #button>
281
+ <lw-button @click="abnConfirm"
282
+ >{{ $lwLanguage.get('','确认') }}</lw-button>
283
+ </template>
284
+
285
+ </lw-popup>
286
+
287
+ <!-- 去播种 -->
288
+ <lw-popup
289
+ :title="$lwLanguage.get('','拣选完成 - 提总')"
290
+ v-model="sowShow"
291
+ :off-btn-fn="backPage"
292
+ >
293
+
294
+ <div class="lw-global-row lw-data-loot-adn-change-success">
295
+ {{ $lwLanguage.get('','当前任务已拣选完成,请移动到播种墙进行播种分拣') }}
296
+ </div>
297
+
298
+ <lw-title-value-cell
299
+ :title="$lwLanguage.get('','拣选容器号')"
300
+ :value="pickContainer"
301
+ val-red
302
+ val-bold
303
+ :val-size="16"
304
+ />
305
+
306
+ <lw-title-value-cell
307
+ :title="$lwLanguage.get('','播种墙')"
308
+ :value="pickData.sowCode"
309
+ val-bold
310
+ :val-size="16"
311
+ />
312
+
313
+ </lw-popup>
314
+
315
+ <!-- 集合 -->
316
+ <lw-popup
317
+ :title="$lwLanguage.get('','拣选完成')"
318
+ v-model="summaryShow"
319
+ :off-btn-fn="backPage"
320
+ >
321
+
322
+ <div class="lw-global-row lw-data-loot-adn-change-success">
323
+ {{ $lwLanguage.get('','当前任务已拣选完成,请移动到集合口进行分区拣选集合') }}
324
+ </div>
325
+
326
+ <lw-title-value-cell
327
+ :title="$lwLanguage.get('','拣选容器号')"
328
+ :value="pickContainer"
329
+ val-red
330
+ val-bold
331
+ :val-size="16"
332
+ />
333
+
334
+ <div class="lw-global-flex-between">
335
+ <lw-title-value-cell
336
+ :title="$lwLanguage.get('','集合口')"
337
+ :value="pickData.summaryCode"
338
+ val-bold
339
+ :val-size="16"
340
+ />
341
+
342
+ <lw-title-value-cell
343
+ :title="$lwLanguage.get('','集合位')"
344
+ :value="pickData.summaryLineCode"
345
+ val-bold
346
+ :val-size="16"
347
+ />
348
+ </div>
349
+
350
+ </lw-popup>
351
+
352
+ <!-- 独立件 - 集货 -->
353
+ <lw-popup
354
+ :title="$lwLanguage.get('','拣选完成')"
355
+ v-model="aloneShow"
356
+ :off-btn-fn="backPage"
357
+ >
358
+
359
+ <div class="lw-global-row lw-data-loot-adn-change-success">
360
+ {{ $lwLanguage.get('','当前任务已拣选完成,请移动到集货位进行集货') }}
361
+ </div>
362
+
363
+ </lw-popup>
364
+
365
+ <!-- 非独立件 -->
366
+ <lw-popup
367
+ :title="$lwLanguage.get('','拣选完成')"
368
+ v-model="notAloneShow"
369
+ :off-btn-fn="backPage"
370
+ >
371
+
372
+ <div class="lw-global-row lw-data-loot-adn-change-success">
373
+ {{ $lwLanguage.get('','当前任务已拣选完成,请移动到捆包区:') }}
374
+ <span
375
+ class="lw-global-value-bold-red"
376
+ style="font-size: 16px"
377
+ >{{ pickData.pickPackTypeLabel }}</span>
378
+ </div>
379
+
380
+ <!-- 独立捆包件不显示 -->
381
+ <lw-title-value-cell
382
+ v-if="pickData.pickMethod !== 'ALONE_PACK'"
383
+ :title="$lwLanguage.get('','拣选容器号')"
384
+ :value="pickContainer"
385
+ val-red
386
+ val-bold
387
+ :val-size="16"
388
+ />
389
+
390
+ <div style="text-align: center;margin-top: 10px">
391
+ <lw-tag size="large">{{ pickData.pickPackTypeLabel }}</lw-tag>
392
+ </div>
393
+
394
+ </lw-popup>
395
+
396
+
397
+ </div>
398
+ </template>
399
+
400
+ <script>
401
+
402
+ export default {
403
+ name: "index",
404
+ props:{
405
+
406
+ // 当前拣选类型: box-按箱、lpn-按托盘、alone-独立件、notAlone-非独立件
407
+ type:{
408
+ type: String,
409
+ required: true
410
+ },
411
+
412
+ // 拣选数据
413
+ pickData: Object,
414
+
415
+ // 当前拣选行的索引
416
+ taskIndex:{
417
+ type: Number,
418
+ default: 0
419
+ },
420
+
421
+ // 异常提交的函数 - 必须是异步的
422
+ abnConfirmFn:{
423
+ type: Function,
424
+ required: true
425
+ },
426
+
427
+ // 缺货拣选的函数 - 必须是异步的
428
+ lackConfirmFn:{
429
+ type: Function,
430
+ required: true
431
+ },
432
+
433
+ // 拣选容器号
434
+ pickContainer: String,
435
+
436
+ // 获取数据
437
+ getData:{
438
+ type: Function,
439
+ required: true
440
+ },
441
+
442
+ // 是否显示底部操作按钮
443
+ showBottomBar:{
444
+ type: Boolean,
445
+ default: true
446
+ }
447
+ },
448
+ computed:{
449
+ // 完成百分比
450
+ percentage(){
451
+ return Math.floor(
452
+ (this.pickData.pickQty + this.pickData.abnormalQty) /
453
+ this.pickData.totalQty * 100
454
+ ) || 0
455
+ },
456
+
457
+ // 当前类型是否为整箱或整托
458
+ isBoxOrLpn(){
459
+ return ['box', 'lpn'].includes(this.type)
460
+ },
461
+
462
+ // 拣选方式
463
+ pickMethod(){
464
+ if (this.pickData.pickUom === 'CASE'){
465
+ return this.$lwLanguage.get('','按箱拣选')
466
+ }
467
+ if (this.pickData.pickUom === 'LPN'){
468
+ return this.$lwLanguage.get('','整托盘拣选')
469
+ }
470
+
471
+ return this.pickData.pickMethodLabel
472
+ }
473
+ },
474
+ data() {
475
+ return {
476
+ // 选择零件的弹框
477
+ skuSelectPopup:{
478
+ // 调用选择零件的父类型:缺货-lack,异常-abn
479
+ type:'',
480
+ show: false,
481
+ list:[]
482
+ },
483
+
484
+ // 拣选缺货的弹框
485
+ lackPopup:{
486
+ show: false,
487
+ skuInfo: [],
488
+ lackQty:'',
489
+ lackQtyFocus:false,
490
+ },
491
+
492
+ // 异常的弹框
493
+ abnPopup:{
494
+ show: false,
495
+ comShow:false,
496
+ skuInfo: []
497
+ },
498
+
499
+ // 播种墙
500
+ sowShow: false,
501
+
502
+ // 集合
503
+ summaryShow: false,
504
+
505
+ // 独立件
506
+ aloneShow: false,
507
+
508
+ // 非独立件
509
+ notAloneShow: false,
510
+
511
+ // 有无打印数据
512
+ hasPrint: false
513
+ }
514
+ },
515
+ mounted() {
516
+ // TODO 检查是否配置了打印机
517
+ },
518
+ methods: {
519
+
520
+ // 缺货、异常上报成功后状态判断
521
+ lackAbnSuccess(res){
522
+ if (res.generateStatus){
523
+ this.$lwToast.success(
524
+ this.$lwLanguage.get('','上报缺货成功')
525
+ )
526
+ }
527
+
528
+ if (res.taskFinishStatus){
529
+ this.openPickSuccessPopup()
530
+ return
531
+ }
532
+
533
+ this.getData()
534
+ },
535
+ // 拣选完成的弹出框
536
+ openPickSuccessPopup(){
537
+ if (this.pickData.sowCode){
538
+ this.sowShow = true
539
+ return
540
+ }
541
+
542
+ if (this.pickData.summaryCode){
543
+ this.summaryShow = true
544
+ return
545
+ }
546
+
547
+ if (this.pickData.pickPackType === 'ALONE'){
548
+ this.aloneShow = true
549
+ return
550
+ }
551
+
552
+ this.notAloneShow = true
553
+ },
554
+
555
+
556
+ // 缺货拣选或者异常上报时候是否存在多零件
557
+ checkSkuMore(type){
558
+
559
+ let data
560
+ switch (this.type) {
561
+ case 'box':
562
+ data = this.pickData.pendingPickCaseList[this.taskIndex]
563
+ break;
564
+ case 'lpn':
565
+ data = this.pickData.pendingPickLpnList[this.taskIndex]
566
+ break;
567
+ default:
568
+ data = {
569
+ ...this.pickData.pendingPickLineList[this.taskIndex],
570
+ qty:Number(this.pickData.pendingPickLineList[this.taskIndex].totalQty || 0) -
571
+ Number(this.pickData.pendingPickLineList[this.taskIndex].pickQty || 0)
572
+ }
573
+ }
574
+
575
+ let skuInfo = []
576
+ if (this.isBoxOrLpn){
577
+ skuInfo = data.skuList.map(item=>{
578
+ item.fromLocationCode = data.fromLocationCode
579
+ item.qty = Number(item.qty || 0)
580
+ return item
581
+ })
582
+ }else {
583
+ skuInfo = [data]
584
+ }
585
+
586
+
587
+ if (skuInfo.length === 1){
588
+ return {
589
+ success: true,
590
+ data: skuInfo[0]
591
+ }
592
+ }else {
593
+ this.showSkuSelect(skuInfo, type)
594
+ return {
595
+ success: false,
596
+ data: {}
597
+ }
598
+ }
599
+ },
600
+ // 显示需要选择零件的弹框
601
+ showSkuSelect(list, type){
602
+ this.skuSelectPopup.list = list
603
+ this.skuSelectPopup.type = type
604
+ this.skuSelectPopup.show = true
605
+ },
606
+ // 选中零件
607
+ skuSelectClick(item){
608
+ if (this.skuSelectPopup.type === 'abn'){
609
+ this.showAbnPopup(item)
610
+ }else {
611
+ this.showLackPopup(item)
612
+ }
613
+ this.skuSelectPopup.show = false
614
+ },
615
+
616
+
617
+ // 拣选缺货按钮
618
+ lackBtn(){
619
+ const {success, data} = this.checkSkuMore('lack')
620
+
621
+ if (!success) return
622
+
623
+ this.showLackPopup(data)
624
+ },
625
+ // 显示拣选缺货弹框
626
+ showLackPopup(data){
627
+ this.lackPopup.skuInfo = data
628
+ this.lackPopup.show = true
629
+ this.lackPopup.lackQtyFocus = true
630
+ },
631
+ // 确认拣选缺货
632
+ lackConfirm(){
633
+ const qty = Number(this.lackPopup.lackQty || 0)
634
+ if (!qty){
635
+ this.lackPopup.lackQtyFocus = true
636
+ this.$lwShowErrorMsg(
637
+ this.$lwLanguage.get('','缺货量不能为空,且应当是大于0的整数')
638
+ )
639
+ this.lackPopup.lackQty = ''
640
+ return
641
+ }
642
+
643
+ const sku = this.lackPopup.skuInfo
644
+
645
+ // 判断是否大于待拣量
646
+ if (Number(sku.qty || 0) < qty){
647
+ this.lackPopup.lackQtyFocus = true
648
+ this.$lwShowErrorMsg(
649
+ this.$lwLanguage.get('','缺货量不能大于待拣量')
650
+ )
651
+ this.lackPopup.lackQty = ''
652
+ return
653
+ }
654
+
655
+ this.lackConfirmFn({
656
+ ...this.lackPopup.skuInfo,
657
+ lackQty: qty
658
+ }).then((res)=>{
659
+
660
+ this.lackAbnSuccess(res)
661
+
662
+ this.lackPopup.lackQty = ''
663
+ this.lackPopup.show = false
664
+ })
665
+ },
666
+
667
+
668
+ // 异常按钮
669
+ abnBtn(){
670
+ const {success, data} = this.checkSkuMore('abn')
671
+
672
+ if (!success) return
673
+
674
+ this.showAbnPopup(data)
675
+ },
676
+ // 显示拣选缺货弹框
677
+ showAbnPopup(data){
678
+ this.abnPopup.skuInfo = data
679
+ this.abnPopup.comShow = true
680
+ this.$nextTick(()=>{
681
+ this.abnPopup.show = true
682
+ })
683
+ },
684
+ // 确认异常
685
+ abnConfirm(){
686
+ const {success, data} = this.$refs.abnormal.getAbnormalData()
687
+
688
+ if (!success) return
689
+
690
+ this.abnConfirmFn({
691
+ ...this.abnPopup.skuInfo,
692
+ data
693
+ }).then((res)=>{
694
+ this.lackAbnSuccess(res)
695
+ this.abnPopup.show = false
696
+ })
697
+ },
698
+
699
+
700
+ // 确认拣选按钮
701
+ confirmBtn(){
702
+ this.$emit('pickConfirm')
703
+ },
704
+
705
+
706
+ // 返回页面
707
+ backPage(){
708
+ history.go(-1)
709
+ },
710
+
711
+
712
+ // 打印箱票
713
+ print(res){
714
+ // TODO 调用接口获取打印数据
715
+ console.log(res)
716
+ }
717
+
718
+ }
719
+ }
720
+ </script>
721
+
722
+ <style scoped lang="less">
723
+ .lw-data-loot-adn-change-success{
724
+ font-size: 16px;
725
+ text-align: center;
726
+ font-weight: bold;
727
+ letter-spacing: 1px;
728
+ }
729
+
730
+
731
+ .lw-data-loot-adn-change-print{
732
+ position: fixed;
733
+ bottom: 50px;
734
+ left: 0;
735
+ width: 100%;
736
+ height: 50px;
737
+ background: #ccc;
738
+ padding: 0 5px;
739
+ box-sizing: border-box;
740
+ overflow: hidden;
741
+ transition: all .3s;
742
+
743
+ .lw-global-title{
744
+ font-size: 12px;
745
+ }
746
+ }
747
+
748
+ </style>