@logwire/logwire-wms-pda-ui 1.1.15 → 1.1.16

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 (435) hide show
  1. package/README.md +134 -134
  2. package/dist/logwire-wms-pda-ui.js +2 -2
  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 -25
  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 -109
  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 -0
  30. package/src/api/inner/newProject/index.js +18 -0
  31. package/src/api/inner/reportAbnormal/index.js +34 -34
  32. package/src/api/outbound/bale/checkBale/action.js +114 -0
  33. package/src/api/outbound/bale/checkBale/allCheck.js +25 -0
  34. package/src/api/outbound/bale/checkBale/index.js +52 -0
  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 +347 -343
  59. package/src/components/module/Login/index.js +11 -11
  60. package/src/components/module/Login/index.vue +328 -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 -847
  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 +213 -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/index.vue → CountBoard.vue} +115 -115
  118. package/src/components/page/count/components/RandomCount.vue +163 -0
  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 -12
  122. package/src/components/page/count/inv/index/index.js +5 -5
  123. package/src/components/page/count/inv/index/index.vue +190 -13
  124. package/src/components/page/count/loc/action/index.js +5 -5
  125. package/src/components/page/count/loc/action/index.vue +545 -514
  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 -177
  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 +10 -10
  134. package/src/components/page/inbound/receive/home/index.js +5 -5
  135. package/src/components/page/inbound/receive/home/index.vue +73 -73
  136. package/src/components/page/inbound/receive/index/index.js +5 -5
  137. package/src/components/page/inbound/receive/index/index.vue +89 -89
  138. package/src/components/page/inbound/receive/quality/LwInboundQualityExecutePage.vue +397 -337
  139. package/src/components/page/inbound/receive/quality/LwInboundQualityTaskListPage.vue +166 -157
  140. package/src/components/page/inbound/receive/quality/index.js +16 -16
  141. package/src/components/page/inbound/receive/receive-sku/LwInboundReceiveSkuAdvancePage.vue +318 -267
  142. package/src/components/page/inbound/receive/receive-sku/LwInboundReceiveSkuDirectPage.vue +401 -351
  143. package/src/components/page/inbound/receive/receive-sku/LwInboundReceiveSkuScanPage.vue +149 -149
  144. package/src/components/page/inbound/receive/receive-sku/index.js +19 -19
  145. package/src/components/page/index.js +33 -33
  146. package/src/components/page/inner/abnormalMove/index/index.js +11 -11
  147. package/src/components/page/inner/abnormalMove/index/index.vue +468 -463
  148. package/src/components/page/inner/disposeAbnormal/action/index.js +11 -11
  149. package/src/components/page/inner/disposeAbnormal/action/index.vue +524 -524
  150. package/src/components/page/inner/disposeAbnormal/components/abnInfo/index.vue +655 -655
  151. package/src/components/page/inner/disposeAbnormal/components/disposePopup/index.vue +229 -229
  152. package/src/components/page/inner/disposeAbnormal/components/listItem/index.vue +213 -213
  153. package/src/components/page/inner/disposeAbnormal/components/searchBar/index.vue +264 -260
  154. package/src/components/page/inner/disposeAbnormal/index/index.js +11 -11
  155. package/src/components/page/inner/disposeAbnormal/index/index.vue +237 -247
  156. package/src/components/page/inner/index.js +66 -58
  157. package/src/components/page/inner/lpnMove/action/index.js +11 -11
  158. package/src/components/page/inner/lpnMove/action/index.vue +222 -221
  159. package/src/components/page/inner/lpnMove/index/index.js +11 -11
  160. package/src/components/page/inner/lpnMove/index/index.vue +155 -153
  161. package/src/components/page/inner/materialApply/action/index.js +10 -10
  162. package/src/components/page/inner/materialApply/action/index.vue +563 -554
  163. package/src/components/page/inner/materialApply/generate/index.js +10 -10
  164. package/src/components/page/inner/materialApply/generate/index.vue +376 -376
  165. package/src/components/page/inner/movePutAway/index/index.js +11 -11
  166. package/src/components/page/inner/movePutAway/index/index.vue +363 -363
  167. package/src/components/page/inner/newProject/action/index.js +13 -0
  168. package/src/components/page/inner/{movePutAway/index → newProject/action}/index.less +0 -0
  169. package/src/components/page/inner/newProject/action/index.vue +1464 -0
  170. package/src/components/page/inner/newProject/index/index.js +13 -0
  171. package/src/components/page/inner/newProject/index/index.less +0 -0
  172. package/src/components/page/inner/newProject/index/index.vue +122 -0
  173. package/src/components/page/inner/newProject//346/226/260/345/223/201/351/205/215/347/275/256.md +0 -0
  174. package/src/components/page/inner/randomMove/components/Down/index.vue +470 -465
  175. package/src/components/page/inner/randomMove/components/Up/index.vue +523 -519
  176. package/src/components/page/inner/randomMove/index/index.js +11 -11
  177. package/src/components/page/inner/randomMove/index/index.vue +152 -152
  178. package/src/components/page/inner/reportAbnormal/action/index.js +11 -11
  179. package/src/components/page/inner/reportAbnormal/action/index.vue +246 -246
  180. package/src/components/page/inner/reportAbnormal/index/index.js +11 -11
  181. package/src/components/page/inner/reportAbnormal/index/index.vue +243 -240
  182. package/src/components/page/inner/taskMove/index/index.js +11 -11
  183. package/src/components/page/inner/taskMove/index/index.vue +1374 -1363
  184. package/src/components/page/outbound/bale/aloneBale/action/index.js +11 -11
  185. package/src/components/page/outbound/bale/aloneBale/action/index.vue +192 -192
  186. package/src/components/page/outbound/bale/aloneBale/index/index.js +11 -11
  187. package/src/components/page/outbound/bale/aloneBale/index/index.vue +86 -86
  188. package/src/components/page/outbound/bale/aloneBale/newBale/index.js +11 -11
  189. package/src/components/page/outbound/bale/aloneBale/newBale/index.vue +53 -53
  190. package/src/components/page/outbound/bale/checkBale/action/index.js +11 -11
  191. package/src/components/page/outbound/bale/checkBale/action/index.vue +1321 -58
  192. package/src/components/page/outbound/bale/checkBale/allCheck/index.js +11 -11
  193. package/src/components/page/outbound/bale/checkBale/allCheck/index.vue +119 -88
  194. package/src/components/page/outbound/bale/checkBale/index/index.js +11 -11
  195. package/src/components/page/outbound/bale/checkBale/index/index.vue +259 -176
  196. package/src/components/page/outbound/bale/checkBale/newBale/index.js +11 -11
  197. package/src/components/page/outbound/bale/checkBale/newBale/index.vue +62 -60
  198. package/src/components/page/outbound/bale/components/allBlock/index.vue +97 -0
  199. package/src/components/page/outbound/bale/components/allBlock//345/205/250/351/203/250/346/213/246/346/210/252.md +0 -0
  200. package/src/components/page/outbound/bale/components/containerInfo/index.vue +229 -229
  201. 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
  202. package/src/components/page/outbound/bale/components/containerSkuQty/index.vue +58 -50
  203. package/src/components/page/outbound/bale/components/mainPage/index.vue +620 -553
  204. package/src/components/page/outbound/bale/components/partBlock/index.vue +197 -0
  205. package/src/components/page/outbound/bale/components/partBlock//351/203/250/345/210/206/346/213/246/346/210/252.md +0 -0
  206. package/src/components/page/outbound/bale/components/planCollapse/index.vue +396 -352
  207. package/src/components/page/outbound/bale/components/storeInfo/index.vue +135 -126
  208. 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
  209. package/src/components/page/outbound/bale/components/storeInfoSkuList/index.vue +121 -123
  210. package/src/components/page/outbound/delivery/action/index.js +11 -11
  211. package/src/components/page/outbound/delivery/action/index.vue +646 -642
  212. package/src/components/page/outbound/delivery/addOrder/index.js +11 -11
  213. package/src/components/page/outbound/delivery/addOrder/index.vue +281 -274
  214. package/src/components/page/outbound/delivery/components/boxItem/index.vue +118 -118
  215. package/src/components/page/outbound/delivery/components/orderContent/index.vue +143 -143
  216. package/src/components/page/outbound/delivery/components/orderContentTitle/index.vue +239 -239
  217. package/src/components/page/outbound/delivery/components/soAndLpnItem/index.vue +152 -152
  218. package/src/components/page/outbound/delivery/index/index.js +11 -11
  219. package/src/components/page/outbound/delivery/index/index.vue +154 -153
  220. package/src/components/page/outbound/index.js +94 -94
  221. package/src/components/page/outbound/pick/alone/index.js +11 -11
  222. package/src/components/page/outbound/pick/alone/index.vue +497 -493
  223. package/src/components/page/outbound/pick/box/index.js +11 -11
  224. package/src/components/page/outbound/pick/box/index.vue +363 -360
  225. package/src/components/page/outbound/pick/components/dataLookAndChange/index.vue +748 -748
  226. package/src/components/page/outbound/pick/components/skuLocationInfo/index.vue +208 -208
  227. package/src/components/page/outbound/pick/components/splitPutDown/index.vue +208 -206
  228. package/src/components/page/outbound/pick/components/splitPutDown//346/213/206/346/235/277/344/270/213/346/236/266.md +0 -0
  229. package/src/components/page/outbound/pick/index/index.js +11 -11
  230. package/src/components/page/outbound/pick/index/index.vue +624 -624
  231. package/src/components/page/outbound/pick/lpn/index.js +11 -11
  232. package/src/components/page/outbound/pick/lpn/index.vue +305 -303
  233. package/src/components/page/outbound/pick/mixin/all.js +100 -100
  234. package/src/components/page/outbound/pick/mixin/aloneAndNotAlone.js +132 -132
  235. package/src/components/page/outbound/pick/notAlone/index.js +11 -11
  236. package/src/components/page/outbound/pick/notAlone/index.vue +524 -519
  237. package/src/components/page/outbound/pickMerge/action/index.js +11 -11
  238. package/src/components/page/outbound/pickMerge/action/index.vue +543 -541
  239. package/src/components/page/outbound/pickMerge/components/containerInfo/index.vue +89 -89
  240. package/src/components/page/outbound/pickMerge/components/finishPopup/index.vue +88 -88
  241. package/src/components/page/outbound/pickMerge/components/skuInfo/index.vue +132 -132
  242. package/src/components/page/outbound/pickMerge/content/index.js +11 -11
  243. package/src/components/page/outbound/pickMerge/content/index.vue +170 -169
  244. package/src/components/page/outbound/pickMerge/index/index.js +11 -11
  245. package/src/components/page/outbound/pickMerge/index/index.vue +77 -76
  246. package/src/components/page/outbound/sow/action/index.js +11 -11
  247. package/src/components/page/outbound/sow/action/index.vue +1420 -1408
  248. package/src/components/page/outbound/sow/components/sowLocationList/index.vue +80 -80
  249. package/src/components/page/outbound/sow/components/waitSowCollapse/index.vue +105 -105
  250. package/src/components/page/outbound/sow/index/index.js +11 -11
  251. package/src/components/page/outbound/sow/index/index.vue +374 -374
  252. package/src/components/page/outbound/summary/box/index/index.js +11 -11
  253. package/src/components/page/outbound/summary/box/index/index.vue +645 -643
  254. package/src/components/page/outbound/summary/lpn/action/index.js +12 -12
  255. package/src/components/page/outbound/summary/lpn/action/index.vue +253 -251
  256. package/src/components/page/outbound/summary/lpn/index/index.js +12 -12
  257. package/src/components/page/outbound/summary/lpn/index/index.vue +70 -69
  258. package/src/components/page/receive/abnormal/action/index.js +11 -11
  259. package/src/components/page/receive/abnormal/action/index.vue +45 -45
  260. package/src/components/page/receive/abnormal/index/index.js +11 -11
  261. package/src/components/page/receive/abnormal/index/index.vue +73 -72
  262. package/src/components/page/receive/index.js +36 -36
  263. package/src/components/page/receive/putaway/components/SkuInfo/index.vue +247 -247
  264. package/src/components/page/receive/putaway/components/SkuPutAwayInfo/index.vue +203 -203
  265. package/src/components/page/receive/putaway/components/TaskInfo/index.vue +216 -216
  266. package/src/components/page/receive/putaway/index/index.js +11 -11
  267. package/src/components/page/receive/putaway/index/index.vue +288 -286
  268. package/src/components/page/receive/putaway/lpnAction/index.js +11 -11
  269. package/src/components/page/receive/putaway/lpnAction/index.vue +332 -330
  270. package/src/components/page/receive/putaway/skuAction/index.js +11 -11
  271. package/src/components/page/receive/putaway/skuAction/index.vue +741 -735
  272. package/src/components/page/receive/receipt/action/index.js +11 -11
  273. package/src/components/page/receive/receipt/action/index.vue +260 -260
  274. package/src/components/page/receive/receipt/index/index.js +11 -11
  275. package/src/components/page/receive/receipt/index/index.vue +124 -123
  276. package/src/components/ui/BottomBar/index.js +5 -5
  277. package/src/components/ui/BottomBar/index.vue +72 -72
  278. package/src/components/ui/BottomBarBtnHidden/index.js +11 -11
  279. package/src/components/ui/BottomBarBtnHidden/index.vue +91 -91
  280. package/src/components/ui/Button/index.js +5 -5
  281. package/src/components/ui/Button/index.vue +183 -183
  282. package/src/components/ui/CarPlate/index.js +11 -11
  283. package/src/components/ui/CarPlate/index.vue +378 -378
  284. package/src/components/ui/CarPlate//350/275/246/347/211/214/345/217/267.md +1 -1
  285. package/src/components/ui/Cell/index.js +5 -5
  286. package/src/components/ui/Cell/index.vue +259 -259
  287. package/src/components/ui/CellPopupDate/index.js +11 -11
  288. package/src/components/ui/CellPopupDate/index.vue +167 -167
  289. 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
  290. package/src/components/ui/CellPopupRadio/index.js +11 -11
  291. package/src/components/ui/CellPopupRadio/index.vue +136 -136
  292. 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
  293. package/src/components/ui/CutCard/index.js +11 -11
  294. package/src/components/ui/CutCard/index.vue +132 -132
  295. 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
  296. package/src/components/ui/DataLookBg/index.js +11 -11
  297. package/src/components/ui/DataLookBg/index.vue +104 -104
  298. 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
  299. package/src/components/ui/ErrorMsg/index.js +59 -59
  300. package/src/components/ui/ErrorMsg/index.vue +141 -141
  301. package/src/components/ui/Form/index.js +5 -5
  302. package/src/components/ui/Form/index.vue +36 -36
  303. package/src/components/ui/ImgLook/index.js +5 -5
  304. package/src/components/ui/ImgLook/index.vue +96 -96
  305. package/src/components/ui/ImgUpload/index.js +12 -12
  306. package/src/components/ui/ImgUpload/index.vue +120 -120
  307. package/src/components/ui/Input/index.js +5 -5
  308. package/src/components/ui/Input/index.vue +546 -544
  309. package/src/components/ui/Input//350/276/223/345/205/245/346/241/206.md +1 -1
  310. package/src/components/ui/Loading/index.js +49 -49
  311. package/src/components/ui/Loading/index.vue +61 -61
  312. package/src/components/ui/MenuItem/index.js +5 -5
  313. package/src/components/ui/MenuItem/index.vue +170 -170
  314. package/src/components/ui/NavBar/index.js +5 -5
  315. package/src/components/ui/NavBar/index.vue +143 -143
  316. package/src/components/ui/NavBar//351/241/266/351/203/250/345/257/274/350/210/252/346/240/217.md +1 -1
  317. package/src/components/ui/NotData/index.js +5 -5
  318. package/src/components/ui/NotData/index.vue +75 -75
  319. package/src/components/ui/Pages/index.js +5 -5
  320. package/src/components/ui/Pages/index.vue +186 -186
  321. package/src/components/ui/Popup/index.js +5 -5
  322. package/src/components/ui/Popup/index.vue +245 -245
  323. package/src/components/ui/PopupCheckbox/index.js +5 -5
  324. package/src/components/ui/PopupCheckbox/index.vue +207 -207
  325. package/src/components/ui/PopupRadio/index.js +5 -5
  326. package/src/components/ui/PopupRadio/index.vue +124 -124
  327. package/src/components/ui/TabBar/index.js +11 -11
  328. package/src/components/ui/TabBar/index.vue +132 -132
  329. package/src/components/ui/TabBar//345/272/225/351/203/250/345/257/274/350/210/252/346/240/217.md +1 -1
  330. package/src/components/ui/Table/index.js +5 -5
  331. package/src/components/ui/Table/index.vue +213 -213
  332. package/src/components/ui/Tag/index.js +5 -5
  333. package/src/components/ui/Tag/index.vue +142 -142
  334. package/src/components/ui/TitleValueCell/index.js +11 -11
  335. package/src/components/ui/TitleValueCell/index.vue +61 -61
  336. package/src/components/ui/index.js +84 -84
  337. package/src/directive/Permissions.js +35 -37
  338. package/src/directive/index.js +12 -12
  339. package/src/index.js +67 -67
  340. package/src/router/index.js +405 -393
  341. package/src/router/menu.js +367 -354
  342. package/src/test/file/index.js +11 -11
  343. package/src/test/file/index.vue +25 -25
  344. package/src/utils/ApiUtils.js +48 -48
  345. package/src/utils/AppBack.js +44 -44
  346. package/src/utils/Axios.js +160 -160
  347. package/src/utils/BarcodeResolve.js +281 -0
  348. package/src/utils/DateTime.js +219 -219
  349. package/src/utils/DeepCopy.js +61 -61
  350. package/src/utils/Dict.js +73 -73
  351. package/src/utils/GetImgSrc.js +53 -53
  352. package/src/utils/Init.js +12 -12
  353. package/src/utils/Language.js +59 -59
  354. package/src/utils/LocalStorage.js +30 -30
  355. package/src/utils/Permissions.js +51 -51
  356. package/src/utils/Print.js +179 -179
  357. package/src/utils/README.md +2 -2
  358. package/src/utils/RouteInit.js +14 -14
  359. package/src/utils/ScanRule.js +150 -150
  360. package/src/utils/SetColor.js +22 -22
  361. package/src/utils/TabBar.js +30 -30
  362. package/src/utils/Tip.js +26 -26
  363. package/src/utils/Toast.js +41 -41
  364. package/src/utils/UUID.js +33 -33
  365. package/src/utils/Warehouse.js +26 -26
  366. package/src/utils/index.js +63 -61
  367. package/src/utils/windowGlobalData.js +88 -88
  368. package/src/views/common/home/index.vue +67 -67
  369. package/src/views/common/init/index.vue +124 -122
  370. package/src/views/common/login/index.vue +23 -23
  371. package/src/views/common/menu/menuOne.vue +36 -36
  372. package/src/views/common/menu/menuTwo.vue +33 -33
  373. package/src/views/common/my/device.vue +23 -23
  374. package/src/views/common/my/index.vue +23 -23
  375. package/src/views/common/my/language.vue +23 -23
  376. package/src/views/common/my/msg.vue +23 -23
  377. package/src/views/common/my/print.vue +23 -23
  378. package/src/views/common/my/warehouse.vue +25 -25
  379. package/src/views/common/task/index.vue +23 -23
  380. package/src/views/count/index.vue +87 -87
  381. package/src/views/count/inv/action.vue +12 -12
  382. package/src/views/count/inv/index.vue +12 -12
  383. package/src/views/count/loc/action.vue +12 -12
  384. package/src/views/count/loc/index.vue +12 -12
  385. package/src/views/inbound/quality/InboundQualityExecuteView.vue +11 -11
  386. package/src/views/inbound/quality/InboundQualityTaskListView.vue +11 -11
  387. package/src/views/inbound/receive/home.vue +14 -14
  388. package/src/views/inbound/receive/index.vue +13 -13
  389. package/src/views/inbound/receive/sku/InboundReceiveSkuAdvanceView.vue +13 -13
  390. package/src/views/inbound/receive/sku/InboundReceiveSkuDirectView.vue +13 -13
  391. package/src/views/inbound/receive/sku/InboundReceiveSkuScanView.vue +13 -13
  392. package/src/views/inner/abnormalMove/index.vue +23 -23
  393. package/src/views/inner/disposeAbnormal/action.vue +23 -23
  394. package/src/views/inner/disposeAbnormal/index.vue +23 -23
  395. package/src/views/inner/lpnMove/action.vue +23 -23
  396. package/src/views/inner/lpnMove/index.vue +23 -23
  397. package/src/views/inner/materialApply/action.vue +22 -22
  398. package/src/views/inner/materialApply/generate.vue +22 -22
  399. package/src/views/inner/movePutAway/index.vue +22 -22
  400. package/src/views/inner/newProject/action.vue +23 -0
  401. package/src/views/inner/newProject/index.vue +23 -0
  402. package/src/views/inner/randomMove/index.vue +23 -23
  403. package/src/views/inner/reportAbnormal/action.vue +23 -23
  404. package/src/views/inner/reportAbnormal/index.vue +23 -23
  405. package/src/views/inner/taskMove/index.vue +23 -23
  406. package/src/views/outbound/aloneBale/action.vue +23 -23
  407. package/src/views/outbound/aloneBale/index.vue +23 -23
  408. package/src/views/outbound/aloneBale/newBale.vue +23 -23
  409. package/src/views/outbound/bale/action.vue +23 -23
  410. package/src/views/outbound/bale/allCheck.vue +23 -23
  411. package/src/views/outbound/bale/index.vue +23 -23
  412. package/src/views/outbound/bale/newBale.vue +23 -23
  413. package/src/views/outbound/delivery/action.vue +23 -23
  414. package/src/views/outbound/delivery/addOrder.vue +23 -23
  415. package/src/views/outbound/delivery/index.vue +23 -23
  416. package/src/views/outbound/pick/aloneAction.vue +23 -23
  417. package/src/views/outbound/pick/boxAction.vue +23 -23
  418. package/src/views/outbound/pick/index.vue +23 -23
  419. package/src/views/outbound/pick/lpnAction.vue +23 -23
  420. package/src/views/outbound/pick/notAloneAction.vue +23 -23
  421. package/src/views/outbound/pickMerge/action.vue +23 -23
  422. package/src/views/outbound/pickMerge/content.vue +23 -23
  423. package/src/views/outbound/pickMerge/index.vue +23 -23
  424. package/src/views/outbound/sow/action.vue +23 -23
  425. package/src/views/outbound/sow/index.vue +23 -23
  426. package/src/views/outbound/summary/box/index.vue +23 -23
  427. package/src/views/outbound/summary/lpn/action.vue +23 -23
  428. package/src/views/outbound/summary/lpn/index.vue +23 -23
  429. package/src/views/receive/abnormal/action.vue +23 -23
  430. package/src/views/receive/abnormal/index.vue +24 -24
  431. package/src/views/receive/putaway/index.vue +23 -23
  432. package/src/views/receive/putaway/lpnAction.vue +23 -23
  433. package/src/views/receive/putaway/skuAction.vue +23 -23
  434. package/src/views/receive/receipt/action.vue +25 -25
  435. package/src/views/receive/receipt/index.vue +25 -25
@@ -1,735 +1,741 @@
1
- <!--
2
- 入库上架 - 按商品上架执行
3
- @author: 张文
4
- @date: 2022-02-25
5
- -->
6
- <template>
7
- <div>
8
- <!-- 定位点 -->
9
- <div id="lw-putaway-sku-top"></div>
10
-
11
- <lw-nav-bar :title="$lwLanguage.get('wms_project.pda.receive.skuAction.title','入库上架 - 商品')"/>
12
-
13
- <div class="lw-global-page-box">
14
-
15
- <div class="lw-global-tab-box">
16
-
17
- <van-tabs
18
- type="card"
19
- animated
20
- v-model="tabActive"
21
- >
22
-
23
- <!-- 当前商品 -->
24
- <van-tab
25
- name="now"
26
- :title="$lwLanguage.get('wms_project.pda.receive.skuAction.sku','当前商品')"
27
- >
28
-
29
- <template v-if="skuListData.length">
30
-
31
- <!-- 头部信息 -->
32
- <div class="lw-global-model-box">
33
-
34
- <!-- 托盘号 -->
35
- <div class="lw-global-row-start">
36
- <span class="lw-global-title">
37
- {{ $lwLanguage.get('wms_project.pda.receive.skuAction.lpn','托盘号') }}
38
- </span>
39
- <span class="lw-global-value-bold">
40
- {{ skuListData[skuIndex].task.lpn || '-' }}
41
- </span>
42
- </div>
43
-
44
- <!-- 原库位、目标库区 -->
45
- <div class="lw-global-flex-between lw-global-row">
46
- <div>
47
- <span class="lw-global-title">
48
- {{ $lwLanguage.get('wms_project.pda.receive.skuAction.oldLocal','原库位') }}
49
- </span>
50
- <span class="lw-global-value-bold">
51
- {{ skuListData[skuIndex].task.fromLocationCode || '-' }}
52
- </span>
53
- </div>
54
- <div>
55
- <span class="lw-global-title">
56
- {{ $lwLanguage.get('wms_project.pda.receive.skuAction.newLocal','目标库区') }}
57
- </span>
58
- <span class="lw-global-value-bold">
59
- {{ skuListData[skuIndex].task.toZoneCode || '-' }}
60
- </span>
61
- </div>
62
- </div>
63
-
64
- <!-- 看板 -->
65
- <div
66
- style="text-align: center;margin-top: 10px"
67
- class="lw-global-flex-between"
68
- >
69
-
70
- <!-- 品种数 -->
71
- <div>
72
- <div class="lw-global-value-bold" style="font-size: 16px">
73
- {{ skuListData[skuIndex].task.skuCount || 0 }}
74
- </div>
75
- <div class="lw-global-title">
76
- {{ $lwLanguage.get('wms_project.pda.receive.skuAction.skuCount','品种数') }}
77
- </div>
78
- </div>
79
-
80
- <!-- 计划量 -->
81
- <div>
82
- <div class="lw-global-value-bold" style="font-size: 16px">
83
- {{ skuListData[skuIndex].task.qty || 0 }}
84
- </div>
85
- <div class="lw-global-title">
86
- {{ $lwLanguage.get('wms_project.pda.receive.skuAction.planQty','计划量') }}
87
- </div>
88
- </div>
89
-
90
- <!-- 已上架 -->
91
- <div>
92
- <div class="lw-global-value-bold" style="font-size: 16px">
93
- {{ skuListData[skuIndex].task.paQty || 0 }}
94
- </div>
95
- <div class="lw-global-title">
96
- {{ $lwLanguage.get('wms_project.pda.receive.skuAction.up','已上架') }}
97
- </div>
98
- </div>
99
-
100
- <!-- 待上架 -->
101
- <div>
102
- <div class="lw-global-value-bold" style="font-size: 16px">
103
- {{ skuListData[skuIndex].task.canPaQty || 0 }}
104
- </div>
105
- <div class="lw-global-title">
106
- {{ $lwLanguage.get('wms_project.pda.receive.skuAction.wait','待上架') }}
107
- </div>
108
- </div>
109
-
110
- <!-- 异常量 -->
111
- <div>
112
- <div
113
- style="font-size: 16px;color: #D50000"
114
- class="lw-global-value-bold"
115
- >
116
- {{ skuListData[skuIndex].task.abnormalQty || 0 }}
117
- </div>
118
- <div
119
- style="color: #D50000"
120
- class="lw-global-title"
121
- >
122
- {{ $lwLanguage.get('wms_project.pda.receive.skuAction.abn','异常量') }}
123
- </div>
124
- </div>
125
-
126
- </div>
127
-
128
- </div>
129
-
130
- <!-- 商品信息 -->
131
- <sku-putaway-info
132
- style="margin: 10px 0"
133
- :item="skuListData[skuIndex]"
134
- />
135
-
136
- <!-- 输入框 -->
137
- <div class="lw-global-model-box">
138
-
139
- <!-- 商品条码 -->
140
- <lw-input
141
- :title="$lwLanguage.get('wms_project.pda.receive.skuAction.skuCode','商品条码')"
142
- v-model="input.sku.value"
143
- :get-focus.sync="input.sku.focus"
144
- required
145
- @confirm="skuCodeConfirm"
146
- />
147
-
148
- <!-- 数量 -->
149
- <lw-input
150
- :title="$lwLanguage.get('wms_project.pda.receive.skuAction.qty','数量')"
151
- v-model="input.num.value"
152
- :get-focus.sync="input.num.focus"
153
- type="digit"
154
- required
155
- @confirm="numConfirm"
156
- />
157
-
158
- <!-- 接力上架开关 -->
159
- <lw-cell
160
- style="padding: 0"
161
- :title="$lwLanguage.get('wms_project.pda.receive.skuAction.rely','接力上架')"
162
- :is-link="false"
163
- required
164
- >
165
- <template #value>
166
- <van-switch
167
- v-model="input.wait"
168
- size="22px"
169
- @change="waitChange"
170
- />
171
- </template>
172
- </lw-cell>
173
-
174
- <!-- 非接力上架 -->
175
- <div v-if="!input.wait">
176
- <!-- 目标库位 -->
177
- <lw-input
178
- class="lw-global-animation-rotate"
179
- :title="$lwLanguage.get('wms_project.pda.receive.skuAction.local','目标库位')"
180
- v-model="input.local.value"
181
- :get-focus.sync="input.local.focus"
182
- required
183
- @confirm="localConfirm"
184
- />
185
-
186
- <!-- 目标托盘 -->
187
- <lw-input
188
- class="lw-global-animation-rotate"
189
- :title="$lwLanguage.get('wms_project.pda.receive.skuAction.lpnCode','目标托盘')"
190
- v-model="input.lpn.value"
191
- :get-focus.sync="input.lpn.focus"
192
- @confirm="lpnConfirm"
193
- />
194
- </div>
195
-
196
- <!-- 接力上架 -->
197
- <div
198
- class="lw-global-animation-rotate"
199
- v-else
200
- >
201
- <!-- 通道库位 -->
202
- <lw-input
203
- :title="$lwLanguage.get('wms_project.pda.receive.skuAction.localP','通道库位')"
204
- v-model="input.local.value"
205
- :get-focus.sync="input.local.focus"
206
- required
207
- @confirm="localConfirm"
208
- />
209
- <!-- 暂存容器号 -->
210
- <lw-input
211
- :title="$lwLanguage.get('wms_project.pda.receive.skuAction.waitLpn','暂存容器号')"
212
- v-model="input.lpn.value"
213
- :get-focus.sync="input.lpn.focus"
214
- required
215
- @confirm="lpnConfirm"
216
- />
217
- </div>
218
-
219
- <!-- 左右切换 -->
220
- <lw-cut-card
221
- v-model="skuIndex"
222
- :length="skuListData.length"
223
- :cut-end="clearInput"
224
- />
225
-
226
- </div>
227
-
228
-
229
- </template>
230
-
231
- </van-tab>
232
-
233
- <!-- 商品列表 -->
234
- <van-tab
235
- name="skuList"
236
- :title="$lwLanguage.get('wms_project.pda.receive.skuAction.skuList','商品列表')"
237
- >
238
-
239
- <div
240
- class="lw-global-model-box lw-global-animation-out lw-global-click-style"
241
- v-for="(i,k) in skuListData"
242
- :key="i.taskId"
243
- :style="{animationDelay: 50 * k + 'ms',padding:'10px 0 0 0'}"
244
- @click="skuListClick(k)"
245
- >
246
-
247
- <div
248
- style="padding: 0 10px 8px"
249
- class="lw-global-row"
250
- >
251
- <span class="lw-global-title">
252
- {{ $lwLanguage.get('wms_project.pda.receive.skuAction.lpn','托盘号') }}
253
- </span>
254
- <span class="lw-global-value-bold">{{ i.fromLpn }}</span>
255
- </div>
256
-
257
- <sku-putaway-info
258
- :item="i"
259
- :top-radius="false"
260
- />
261
-
262
- </div>
263
-
264
- </van-tab>
265
-
266
- </van-tabs>
267
-
268
- </div>
269
-
270
- </div>
271
-
272
- <lw-bottom-bar v-if="tabActive==='now'">
273
-
274
- <!-- 上架异常 -->
275
- <lw-button
276
- plain
277
- type="last"
278
- @click="abnClick"
279
- >
280
- {{ $lwLanguage.get('wms_project.pda.receive.skuAction.upAbn','上架异常') }}
281
- </lw-button>
282
-
283
- <!-- 定位商品 -->
284
- <lw-button
285
- plain
286
- type="normal"
287
- @click="seoSku"
288
- >
289
- {{ $lwLanguage.get('wms_project.pda.receive.skuAction.skuIndex','定位商品') }}
290
- </lw-button>
291
-
292
- <!-- 上架到通道 / 上架到目标库位 -->
293
- <lw-button @click="putawayConfirm">
294
- {{
295
- input.wait ?
296
- $lwLanguage.get('wms_project.pda.receive.skuAction.upWay','上架到通道') :
297
- $lwLanguage.get('wms_project.pda.receive.skuAction.upLocal','上架到目标库位')
298
- }}
299
- </lw-button>
300
-
301
- </lw-bottom-bar>
302
-
303
- <!-- 异常弹框 -->
304
- <lw-popup
305
- :title="$lwLanguage.get('wms_project.pda.receive.skuAction.upAbnLocal','入库上架异常')"
306
- v-model="abnPopup.show"
307
- @closed="abnPopup.comShow=false"
308
- >
309
- <lw-inner-abnormal-module
310
- v-if="abnPopup.comShow"
311
- ref="abnormal"
312
- :sku-code="skuListData[skuIndex].sku.code"
313
- :sku-name="skuListData[skuIndex].sku.name"
314
- :qty="skuListData[skuIndex].qty"
315
- :location="skuListData[skuIndex].fromLocationCode"
316
- :type="$lwLanguage.get('wms_project.pda.receive.skuAction.inbound','在库')"
317
- :ab-type="$lwLanguage.get('wms_project.pda.receive.skuAction.reveiveUp','入库上架')"
318
- />
319
-
320
- <template #button>
321
- <lw-button @click="abnConfirm">
322
- {{ $lwLanguage.get('wms_project.pda.receive.skuAction.submitAbn','上报异常') }}
323
- </lw-button>
324
- </template>
325
- </lw-popup>
326
-
327
- <!-- 定位商品 -->
328
- <lw-popup
329
- :title="$lwLanguage.get('wms_project.pda.receive.skuAction.skuIndex','定位商品')"
330
- v-model="seoPopup.show"
331
- @closed="seoPopupOff"
332
- >
333
-
334
- <!-- 输入框 -->
335
- <lw-input
336
- :title="$lwLanguage.get('wms_project.pda.receive.skuAction.skuNum','商品号')"
337
- v-model="seoPopup.sku.value"
338
- :get-focus.sync="seoPopup.sku.focus"
339
- @confirm="seoPopupSkuConfirm"
340
- >
341
- <template #button>
342
- <lw-button
343
- mini
344
- round
345
- @click="seoPopupSkuConfirm"
346
- >{{ $lwLanguage.get('wms_project.pda.receive.skuAction.seo','搜索') }}</lw-button>
347
- </template>
348
- </lw-input>
349
-
350
- <!-- 选择区 -->
351
- <template v-if="seoPopup.list.length">
352
-
353
- <div
354
- class="lw-global-row lw-global-click-style lw-global-flex-between"
355
- v-for="i in seoPopup.list"
356
- :key="i.index"
357
- @click="seoPopupSkuListClick(i.index)"
358
- >
359
- <div>
360
- <div>
361
- <span class="lw-global-title">
362
- {{ $lwLanguage.get('wms_project.pda.receive.skuAction.lpn','托盘号') }}
363
- </span>
364
- <span
365
- style="color: #D50000;"
366
- class="lw-global-value-bold"
367
- >{{ i.data.lpn || '-' }}</span>
368
- </div>
369
-
370
- <div
371
- style="margin-top: 5px"
372
- class="lw-global-value-bold"
373
- >{{ i.data.sku.code }}</div>
374
- <div class="lw-global-title">{{ i.data.sku.name }}</div>
375
- </div>
376
-
377
- <van-icon name="arrow" size="20px"/>
378
- </div>
379
-
380
- </template>
381
- <lw-not-data v-if="seoPopup.showNotData && !seoPopup.list.length"/>
382
-
383
- </lw-popup>
384
-
385
- </div>
386
- </template>
387
-
388
- <script>
389
- import SkuPutawayInfo from './../components/SkuPutAwayInfo/index.vue'
390
- import {
391
- wmsMobileQueryPutawayLinesByTasks,
392
- wmsMobileSubmitPutawayByAbnormal,
393
- wmsMobileSubmitPutawayBySku
394
- } from "../../../../../api/receive/putaway";
395
-
396
- export default {
397
- name: "lwReceivePutawaySkuActionPage",
398
- components:{
399
- SkuPutawayInfo
400
- },
401
- data() {
402
- return {
403
- // 返回步数
404
- backStep: -1,
405
-
406
- // tab标签激活项
407
- tabActive: 'now',
408
-
409
- // 商品列表数据
410
- skuListData: [],
411
- // 当前商品的索引
412
- skuIndex: 0,
413
-
414
- // 输入框
415
- input:{
416
- // 商品
417
- sku:{
418
- value:'',
419
- focus: false
420
- },
421
- // 数量
422
- num:{
423
- value:'',
424
- focus: false
425
- },
426
- // 是否接力上架
427
- wait: false,
428
- // 目标库位 / 通道库位
429
- local:{
430
- value:'',
431
- focus: false
432
- },
433
- // 目标托盘 / 通道托盘
434
- lpn:{
435
- value:'',
436
- focus: false
437
- },
438
- },
439
-
440
- // 异常弹框
441
- abnPopup:{
442
- show: false,
443
- comShow: false,
444
- sku: {}
445
- },
446
-
447
- // 定位商品
448
- seoPopup:{
449
- show: false,
450
- // 是否显示空数据状态
451
- showNotData: false,
452
- sku:{
453
- value:'',
454
- focus: false
455
- },
456
- list:[]
457
- }
458
- }
459
- },
460
- mounted() {
461
- this.backStep = Number('-' + this.$route.query.lwBack)
462
- this.getData()
463
- },
464
- methods: {
465
- // 滚动到顶部
466
- scrollTop(){
467
- document.querySelector('#lw-putaway-sku-top').scrollIntoView({
468
- behavior: "smooth",
469
- block:'start',
470
- })
471
- },
472
-
473
- // 获取数据
474
- getData(){
475
- wmsMobileQueryPutawayLinesByTasks({
476
- taskIds: JSON.parse(this.$route.query.lwTaskIdList || '[]')
477
- }).then(res=>{
478
-
479
- if (!res.length){
480
- this.$lwToast.success(
481
- this.$lwLanguage.get('wms_project.pda.receive.skuAction.taskOver','当前任务已全部完成')
482
- )
483
- history.go(this.backStep)
484
- return
485
- }
486
-
487
- this.skuListData = res
488
-
489
- this.skuIndex + 1 > this.skuListData.length ? this.skuIndex-- : ''
490
-
491
- }).catch(()=>{
492
- history.go(this.backStep)
493
- })
494
- },
495
-
496
- // 清空输入框
497
- clearInput(){
498
- this.input.sku.value = ''
499
- this.input.sku.focus = true // 打开后会导致屏幕滚动到当前位置无法显示在头部
500
- this.input.num.value = ''
501
- this.input.wait = false
502
- this.input.local.value = ''
503
- this.input.lpn.value = ''
504
- this.scrollTop()
505
- },
506
-
507
- // 商品号确认
508
- skuCodeConfirm(){
509
- if (this.skuCodeCheck()){
510
- this.input.num.focus = true
511
- }
512
- },
513
- // 商品号输入校验
514
- skuCodeCheck(){
515
- const sku = this.input.sku
516
- // 非空校验
517
- if (!sku.value){
518
- sku.focus = true
519
- this.$lwShowErrorMsg(
520
- this.$lwLanguage.get('wms_project.pda.receive.skuAction.skuNull','商品号不能为空')
521
- )
522
- return false
523
- }
524
-
525
- // 是否输入正确
526
- if (sku.value !== this.skuListData[this.skuIndex].sku.code){
527
- sku.focus = true
528
- this.$lwShowErrorMsg(
529
- this.$lwLanguage.get('wms_project.pda.receive.skuAction.skuNot','当前商品与上架商品不一致')
530
- )
531
- sku.value = ''
532
- return false
533
- }
534
-
535
- return true
536
- },
537
-
538
- // 数量确认
539
- numConfirm(){
540
- if (this.numCheck()){
541
- this.input.local.focus = true
542
- }
543
- },
544
- // 数量校验
545
- numCheck(){
546
- const num = Number(this.input.num.value || 0)
547
- if (!num){
548
- this.input.num.focus = true
549
- this.$lwShowErrorMsg(
550
- this.$lwLanguage.get('wms_project.pda.receive.skuAction.skuNumZero','数量不能为空,且应当是大于0的整数')
551
- )
552
- this.input.num.value = ''
553
- return false
554
- }
555
-
556
- if (num > this.skuListData[this.skuIndex].canPaQty){
557
- this.input.num.focus = true
558
- this.$lwShowErrorMsg(
559
- this.$lwLanguage.get('wms_project.pda.receive.skuAction.skuMore','数量不能大于待上架量')
560
- )
561
- this.input.num.value = ''
562
- return false
563
- }
564
-
565
- return true
566
- },
567
-
568
- // 接力上架切换
569
- waitChange(){
570
- this.input.local.value = ''
571
- this.input.local.focus = true
572
- this.input.lpn.value = ''
573
- },
574
-
575
- // 库位确认
576
- localConfirm(){
577
- if (this.localCheck()){
578
- this.input.lpn.focus = true
579
- }
580
- },
581
- // 库位校验
582
- localCheck(){
583
- const local = this.input.local
584
- if (!local.value) {
585
-
586
- local.focus = true
587
- this.$lwShowErrorMsg(
588
- this.$lwLanguage.get('wms_project.pda.receive.skuAction.localNull','库位不能为空')
589
- )
590
- return false
591
- }
592
-
593
- return true
594
- },
595
-
596
- // 托盘号校验
597
- lpnConfirm(){
598
- if(this.lpnCheck()){
599
- this.putawayConfirm()
600
- }
601
- },
602
- // 托盘号校验
603
- lpnCheck(){
604
- if (!this.input.wait || this.input.lpn.value) return true
605
-
606
- this.input.lpn.focus = true
607
- this.$lwShowErrorMsg(
608
- this.$lwLanguage.get('wms_project.pda.receive.skuAction.lpnNull','托盘号不能为空')
609
- )
610
- return false
611
- },
612
-
613
- // 商品列表商品被点击
614
- skuListClick(index){
615
- this.skuIndex = index
616
- this.tabActive = 'now'
617
- this.$lwToast.success(
618
- this.$lwLanguage.get('wms_project.pda.receive.skuAction.jump','已跳转至任务行:') + (index + 1)
619
- )
620
- this.scrollTop()
621
- },
622
-
623
- // 上架异常点击
624
- abnClick(){
625
- this.abnPopup.comShow = true
626
- this.abnPopup.show = true
627
- },
628
- // 上报异常
629
- abnConfirm(){
630
- const {success, data} = this.$refs.abnormal.getAbnormalData()
631
-
632
- if (!success) return
633
-
634
- const item = this.skuListData[this.skuIndex]
635
- wmsMobileSubmitPutawayByAbnormal({
636
- taskId: item.task.taskId,
637
- skuCode: item.sku.code,
638
- groupKey: item.groupKey,
639
- ...data
640
- }).then(()=>{
641
- this.abnPopup.show = false
642
- this.abnPopup.comShow = false
643
- this.$lwToast.success(
644
- this.$lwLanguage.get('wms_project.pda.receive.skuAction.abnSuccess','异常上报成功')
645
- )
646
- this.getData()
647
- })
648
- },
649
-
650
- // 定位商品
651
- seoSku(){
652
- this.seoPopup.show = true
653
- this.seoPopup.sku.focus = true
654
- },
655
- // 定位商品弹框关闭
656
- seoPopupOff(){
657
- this.seoPopup.sku.value = ''
658
- this.seoPopup.list = []
659
- this.seoPopup.showNotData = false
660
- },
661
- // 确认搜索商品
662
- seoPopupSkuConfirm() {
663
- this.seoPopup.list = []
664
- this.skuListData.forEach((item, index) => {
665
- if (item.sku.code.includes(this.seoPopup.sku.value)) {
666
- this.seoPopup.list.push({
667
- index,
668
- data: item
669
- })
670
- }
671
- })
672
-
673
- if (this.seoPopup.list.length === 1) {
674
- this.seoPopupSkuListClick(this.seoPopup.list[0].index)
675
- }
676
-
677
- this.seoPopup.showNotData = true
678
- },
679
- // 搜索商品结果点击
680
- seoPopupSkuListClick(index){
681
- this.seoPopup.show = false
682
- this.skuListClick(index)
683
- },
684
-
685
- // 确认上架 - 不区分是否接力上架
686
- putawayConfirm(){
687
- if (
688
- !(this.skuCodeCheck() &&
689
- this.numCheck() &&
690
- this.localCheck() &&
691
- this.lpnCheck())
692
- ) return
693
-
694
- const item = this.skuListData[this.skuIndex]
695
- if (!this.input.wait && this.input.local.value !== item.toLocationCode){
696
- this.$dialog.confirm({
697
- title: this.$lwLanguage.get('wms_project.pda.receive.skuAction.total','提示'),
698
- message: this.$lwLanguage.get('wms_project.pda.receive.skuAction.confirmMsg','当前目标库位与推荐库位不一致,确认上架?')
699
- }).then(()=>{
700
- this.putawaySubmit(item)
701
- }).catch(()=>{})
702
-
703
- return
704
- }
705
-
706
- this.putawaySubmit(item)
707
- },
708
-
709
- // 提交上架数据
710
- putawaySubmit(item){
711
- wmsMobileSubmitPutawayBySku({
712
- taskId: item.task.taskId,
713
- groupKey: item.groupKey,
714
- toLocationCode: this.input.local.value,
715
- toLpn: this.input.lpn.value,
716
- skuCode: this.input.sku.value,
717
- qty: this.input.num.value,
718
- relay: this.input.wait,
719
- }).then(()=>{
720
- this.$lwToast.success(
721
- this.$lwLanguage.get('wms_project.pda.receive.skuAction.unSuccess','上架成功')
722
- )
723
-
724
- this.clearInput()
725
- this.getData()
726
- })
727
- }
728
-
729
- }
730
- }
731
- </script>
732
-
733
- <style scoped lang="less">
734
-
735
- </style>
1
+ <!--
2
+ 入库上架 - 按商品上架执行
3
+ @author: 张文
4
+ @date: 2022-02-25
5
+ -->
6
+ <template>
7
+ <div>
8
+ <!-- 定位点 -->
9
+ <div id="lw-putaway-sku-top"></div>
10
+
11
+ <lw-nav-bar :title="$lwLanguage.get('wms_project.pda.receive.skuAction.title','入库上架 - 商品')"/>
12
+
13
+ <div class="lw-global-page-box">
14
+
15
+ <div class="lw-global-tab-box">
16
+
17
+ <van-tabs
18
+ type="card"
19
+ animated
20
+ v-model="tabActive"
21
+ >
22
+
23
+ <!-- 当前商品 -->
24
+ <van-tab
25
+ name="now"
26
+ :title="$lwLanguage.get('wms_project.pda.receive.skuAction.sku','当前商品')"
27
+ >
28
+
29
+ <template v-if="skuListData.length">
30
+
31
+ <!-- 头部信息 -->
32
+ <div class="lw-global-model-box">
33
+
34
+ <!-- 托盘号 -->
35
+ <div class="lw-global-row-start">
36
+ <span class="lw-global-title">
37
+ {{ $lwLanguage.get('wms_project.pda.receive.skuAction.lpn','托盘号') }}
38
+ </span>
39
+ <span class="lw-global-value-bold">
40
+ {{ skuListData[skuIndex].task.lpn || '-' }}
41
+ </span>
42
+ </div>
43
+
44
+ <!-- 原库位、目标库区 -->
45
+ <div class="lw-global-flex-between lw-global-row">
46
+ <div>
47
+ <span class="lw-global-title">
48
+ {{ $lwLanguage.get('wms_project.pda.receive.skuAction.oldLocal','原库位') }}
49
+ </span>
50
+ <span class="lw-global-value-bold">
51
+ {{ skuListData[skuIndex].task.fromLocationCode || '-' }}
52
+ </span>
53
+ </div>
54
+ <div>
55
+ <span class="lw-global-title">
56
+ {{ $lwLanguage.get('wms_project.pda.receive.skuAction.newLocal','目标库区') }}
57
+ </span>
58
+ <span class="lw-global-value-bold">
59
+ {{ skuListData[skuIndex].task.toZoneCode || '-' }}
60
+ </span>
61
+ </div>
62
+ </div>
63
+
64
+ <!-- 看板 -->
65
+ <div
66
+ style="text-align: center;margin-top: 10px"
67
+ class="lw-global-flex-between"
68
+ >
69
+
70
+ <!-- 品种数 -->
71
+ <div>
72
+ <div class="lw-global-value-bold" style="font-size: 16px">
73
+ {{ skuListData[skuIndex].task.skuCount || 0 }}
74
+ </div>
75
+ <div class="lw-global-title">
76
+ {{ $lwLanguage.get('wms_project.pda.receive.skuAction.skuCount','品种数') }}
77
+ </div>
78
+ </div>
79
+
80
+ <!-- 计划量 -->
81
+ <div>
82
+ <div class="lw-global-value-bold" style="font-size: 16px">
83
+ {{ skuListData[skuIndex].task.qty || 0 }}
84
+ </div>
85
+ <div class="lw-global-title">
86
+ {{ $lwLanguage.get('wms_project.pda.receive.skuAction.planQty','计划量') }}
87
+ </div>
88
+ </div>
89
+
90
+ <!-- 已上架 -->
91
+ <div>
92
+ <div class="lw-global-value-bold" style="font-size: 16px">
93
+ {{ skuListData[skuIndex].task.paQty || 0 }}
94
+ </div>
95
+ <div class="lw-global-title">
96
+ {{ $lwLanguage.get('wms_project.pda.receive.skuAction.up','已上架') }}
97
+ </div>
98
+ </div>
99
+
100
+ <!-- 待上架 -->
101
+ <div>
102
+ <div class="lw-global-value-bold" style="font-size: 16px">
103
+ {{ skuListData[skuIndex].task.canPaQty || 0 }}
104
+ </div>
105
+ <div class="lw-global-title">
106
+ {{ $lwLanguage.get('wms_project.pda.receive.skuAction.wait','待上架') }}
107
+ </div>
108
+ </div>
109
+
110
+ <!-- 异常量 -->
111
+ <div>
112
+ <div
113
+ style="font-size: 16px;color: #D50000"
114
+ class="lw-global-value-bold"
115
+ >
116
+ {{ skuListData[skuIndex].task.abnormalQty || 0 }}
117
+ </div>
118
+ <div
119
+ style="color: #D50000"
120
+ class="lw-global-title"
121
+ >
122
+ {{ $lwLanguage.get('wms_project.pda.receive.skuAction.abn','异常量') }}
123
+ </div>
124
+ </div>
125
+
126
+ </div>
127
+
128
+ </div>
129
+
130
+ <!-- 商品信息 -->
131
+ <sku-putaway-info
132
+ style="margin: 10px 0"
133
+ :item="skuListData[skuIndex]"
134
+ />
135
+
136
+ <!-- 输入框 -->
137
+ <div class="lw-global-model-box">
138
+
139
+ <!-- 商品条码 -->
140
+ <lw-input
141
+ :title="$lwLanguage.get('wms_project.pda.receive.skuAction.skuCode','商品条码')"
142
+ v-model="input.sku.value"
143
+ :get-focus.sync="input.sku.focus"
144
+ required
145
+ rule-key="sku"
146
+ @confirm="skuCodeConfirm"
147
+ />
148
+
149
+ <!-- 数量 -->
150
+ <lw-input
151
+ :title="$lwLanguage.get('wms_project.pda.receive.skuAction.qty','数量')"
152
+ v-model="input.num.value"
153
+ :get-focus.sync="input.num.focus"
154
+ type="digit"
155
+ required
156
+ @confirm="numConfirm"
157
+ />
158
+
159
+ <!-- 接力上架开关 -->
160
+ <lw-cell
161
+ style="padding: 0"
162
+ :title="$lwLanguage.get('wms_project.pda.receive.skuAction.rely','接力上架')"
163
+ :is-link="false"
164
+ required
165
+ >
166
+ <template #value>
167
+ <van-switch
168
+ v-model="input.wait"
169
+ size="22px"
170
+ @change="waitChange"
171
+ />
172
+ </template>
173
+ </lw-cell>
174
+
175
+ <!-- 非接力上架 -->
176
+ <div v-if="!input.wait">
177
+ <!-- 目标库位 -->
178
+ <lw-input
179
+ class="lw-global-animation-rotate"
180
+ :title="$lwLanguage.get('wms_project.pda.receive.skuAction.local','目标库位')"
181
+ v-model="input.local.value"
182
+ :get-focus.sync="input.local.focus"
183
+ required
184
+ rule-key="location"
185
+ @confirm="localConfirm"
186
+ />
187
+
188
+ <!-- 目标托盘 -->
189
+ <lw-input
190
+ class="lw-global-animation-rotate"
191
+ :title="$lwLanguage.get('wms_project.pda.receive.skuAction.lpnCode','目标托盘')"
192
+ v-model="input.lpn.value"
193
+ :get-focus.sync="input.lpn.focus"
194
+ rule-key="lpn"
195
+ @confirm="lpnConfirm"
196
+ />
197
+ </div>
198
+
199
+ <!-- 接力上架 -->
200
+ <div
201
+ class="lw-global-animation-rotate"
202
+ v-else
203
+ >
204
+ <!-- 通道库位 -->
205
+ <lw-input
206
+ :title="$lwLanguage.get('wms_project.pda.receive.skuAction.localP','通道库位')"
207
+ v-model="input.local.value"
208
+ :get-focus.sync="input.local.focus"
209
+ required
210
+ rule-key="waitLocal"
211
+ @confirm="localConfirm"
212
+ />
213
+ <!-- 暂存容器号 -->
214
+ <lw-input
215
+ :title="$lwLanguage.get('wms_project.pda.receive.skuAction.waitLpn','暂存容器号')"
216
+ v-model="input.lpn.value"
217
+ :get-focus.sync="input.lpn.focus"
218
+ required
219
+ rule-key="waitLpn"
220
+ @confirm="lpnConfirm"
221
+ />
222
+ </div>
223
+
224
+ <!-- 左右切换 -->
225
+ <lw-cut-card
226
+ v-model="skuIndex"
227
+ :length="skuListData.length"
228
+ :cut-end="clearInput"
229
+ />
230
+
231
+ </div>
232
+
233
+
234
+ </template>
235
+
236
+ </van-tab>
237
+
238
+ <!-- 商品列表 -->
239
+ <van-tab
240
+ name="skuList"
241
+ :title="$lwLanguage.get('wms_project.pda.receive.skuAction.skuList','商品列表')"
242
+ >
243
+
244
+ <div
245
+ class="lw-global-model-box lw-global-animation-out lw-global-click-style"
246
+ v-for="(i,k) in skuListData"
247
+ :key="i.taskId"
248
+ :style="{animationDelay: 50 * k + 'ms',padding:'10px 0 0 0'}"
249
+ @click="skuListClick(k)"
250
+ >
251
+
252
+ <div
253
+ style="padding: 0 10px 8px"
254
+ class="lw-global-row"
255
+ >
256
+ <span class="lw-global-title">
257
+ {{ $lwLanguage.get('wms_project.pda.receive.skuAction.lpn','托盘号') }}
258
+ </span>
259
+ <span class="lw-global-value-bold">{{ i.fromLpn }}</span>
260
+ </div>
261
+
262
+ <sku-putaway-info
263
+ :item="i"
264
+ :top-radius="false"
265
+ />
266
+
267
+ </div>
268
+
269
+ </van-tab>
270
+
271
+ </van-tabs>
272
+
273
+ </div>
274
+
275
+ </div>
276
+
277
+ <lw-bottom-bar v-if="tabActive==='now'">
278
+
279
+ <!-- 上架异常 -->
280
+ <lw-button
281
+ plain
282
+ type="last"
283
+ @click="abnClick"
284
+ >
285
+ {{ $lwLanguage.get('wms_project.pda.receive.skuAction.upAbn','上架异常') }}
286
+ </lw-button>
287
+
288
+ <!-- 定位商品 -->
289
+ <lw-button
290
+ plain
291
+ type="normal"
292
+ @click="seoSku"
293
+ >
294
+ {{ $lwLanguage.get('wms_project.pda.receive.skuAction.skuIndex','定位商品') }}
295
+ </lw-button>
296
+
297
+ <!-- 上架到通道 / 上架到目标库位 -->
298
+ <lw-button @click="putawayConfirm">
299
+ {{
300
+ input.wait ?
301
+ $lwLanguage.get('wms_project.pda.receive.skuAction.upWay','上架到通道') :
302
+ $lwLanguage.get('wms_project.pda.receive.skuAction.upLocal','上架到目标库位')
303
+ }}
304
+ </lw-button>
305
+
306
+ </lw-bottom-bar>
307
+
308
+ <!-- 异常弹框 -->
309
+ <lw-popup
310
+ :title="$lwLanguage.get('wms_project.pda.receive.skuAction.upAbnLocal','入库上架异常')"
311
+ v-model="abnPopup.show"
312
+ @closed="abnPopup.comShow=false"
313
+ >
314
+ <lw-inner-abnormal-module
315
+ v-if="abnPopup.comShow"
316
+ ref="abnormal"
317
+ :sku-code="skuListData[skuIndex].sku.code"
318
+ :sku-name="skuListData[skuIndex].sku.name"
319
+ :qty="skuListData[skuIndex].qty"
320
+ :location="skuListData[skuIndex].fromLocationCode"
321
+ :type="$lwLanguage.get('wms_project.pda.receive.skuAction.inbound','在库')"
322
+ :ab-type="$lwLanguage.get('wms_project.pda.receive.skuAction.reveiveUp','入库上架')"
323
+ />
324
+
325
+ <template #button>
326
+ <lw-button @click="abnConfirm">
327
+ {{ $lwLanguage.get('wms_project.pda.receive.skuAction.submitAbn','上报异常') }}
328
+ </lw-button>
329
+ </template>
330
+ </lw-popup>
331
+
332
+ <!-- 定位商品 -->
333
+ <lw-popup
334
+ :title="$lwLanguage.get('wms_project.pda.receive.skuAction.skuIndex','定位商品')"
335
+ v-model="seoPopup.show"
336
+ @closed="seoPopupOff"
337
+ >
338
+
339
+ <!-- 输入框 -->
340
+ <lw-input
341
+ :title="$lwLanguage.get('wms_project.pda.receive.skuAction.skuNum','商品号')"
342
+ v-model="seoPopup.sku.value"
343
+ :get-focus.sync="seoPopup.sku.focus"
344
+ rule-key="sku"
345
+ @confirm="seoPopupSkuConfirm"
346
+ >
347
+ <template #button>
348
+ <lw-button
349
+ mini
350
+ round
351
+ @click="seoPopupSkuConfirm"
352
+ >{{ $lwLanguage.get('wms_project.pda.receive.skuAction.seo','搜索') }}</lw-button>
353
+ </template>
354
+ </lw-input>
355
+
356
+ <!-- 选择区 -->
357
+ <template v-if="seoPopup.list.length">
358
+
359
+ <div
360
+ class="lw-global-row lw-global-click-style lw-global-flex-between"
361
+ v-for="i in seoPopup.list"
362
+ :key="i.index"
363
+ @click="seoPopupSkuListClick(i.index)"
364
+ >
365
+ <div>
366
+ <div>
367
+ <span class="lw-global-title">
368
+ {{ $lwLanguage.get('wms_project.pda.receive.skuAction.lpn','托盘号') }}
369
+ </span>
370
+ <span
371
+ style="color: #D50000;"
372
+ class="lw-global-value-bold"
373
+ >{{ i.data.lpn || '-' }}</span>
374
+ </div>
375
+
376
+ <div
377
+ style="margin-top: 5px"
378
+ class="lw-global-value-bold"
379
+ >{{ i.data.sku.code }}</div>
380
+ <div class="lw-global-title">{{ i.data.sku.name }}</div>
381
+ </div>
382
+
383
+ <van-icon name="arrow" size="20px"/>
384
+ </div>
385
+
386
+ </template>
387
+ <lw-not-data v-if="seoPopup.showNotData && !seoPopup.list.length"/>
388
+
389
+ </lw-popup>
390
+
391
+ </div>
392
+ </template>
393
+
394
+ <script>
395
+ import SkuPutawayInfo from './../components/SkuPutAwayInfo/index.vue'
396
+ import {
397
+ wmsMobileQueryPutawayLinesByTasks,
398
+ wmsMobileSubmitPutawayByAbnormal,
399
+ wmsMobileSubmitPutawayBySku
400
+ } from "../../../../../api/receive/putaway";
401
+
402
+ export default {
403
+ name: "lwReceivePutawaySkuActionPage",
404
+ components:{
405
+ SkuPutawayInfo
406
+ },
407
+ data() {
408
+ return {
409
+ // 返回步数
410
+ backStep: -1,
411
+
412
+ // tab标签激活项
413
+ tabActive: 'now',
414
+
415
+ // 商品列表数据
416
+ skuListData: [],
417
+ // 当前商品的索引
418
+ skuIndex: 0,
419
+
420
+ // 输入框
421
+ input:{
422
+ // 商品
423
+ sku:{
424
+ value:'',
425
+ focus: false
426
+ },
427
+ // 数量
428
+ num:{
429
+ value:'',
430
+ focus: false
431
+ },
432
+ // 是否接力上架
433
+ wait: false,
434
+ // 目标库位 / 通道库位
435
+ local:{
436
+ value:'',
437
+ focus: false
438
+ },
439
+ // 目标托盘 / 通道托盘
440
+ lpn:{
441
+ value:'',
442
+ focus: false
443
+ },
444
+ },
445
+
446
+ // 异常弹框
447
+ abnPopup:{
448
+ show: false,
449
+ comShow: false,
450
+ sku: {}
451
+ },
452
+
453
+ // 定位商品
454
+ seoPopup:{
455
+ show: false,
456
+ // 是否显示空数据状态
457
+ showNotData: false,
458
+ sku:{
459
+ value:'',
460
+ focus: false
461
+ },
462
+ list:[]
463
+ }
464
+ }
465
+ },
466
+ mounted() {
467
+ this.backStep = Number('-' + this.$route.query.lwBack)
468
+ this.getData()
469
+ },
470
+ methods: {
471
+ // 滚动到顶部
472
+ scrollTop(){
473
+ document.querySelector('#lw-putaway-sku-top').scrollIntoView({
474
+ behavior: "smooth",
475
+ block:'start',
476
+ })
477
+ },
478
+
479
+ // 获取数据
480
+ getData(){
481
+ wmsMobileQueryPutawayLinesByTasks({
482
+ taskIds: JSON.parse(this.$route.query.lwTaskIdList || '[]')
483
+ }).then(res=>{
484
+
485
+ if (!res.length){
486
+ this.$lwToast.success(
487
+ this.$lwLanguage.get('wms_project.pda.receive.skuAction.taskOver','当前任务已全部完成')
488
+ )
489
+ history.go(this.backStep)
490
+ return
491
+ }
492
+
493
+ this.skuListData = res
494
+
495
+ this.skuIndex + 1 > this.skuListData.length ? this.skuIndex-- : ''
496
+
497
+ }).catch(()=>{
498
+ history.go(this.backStep)
499
+ })
500
+ },
501
+
502
+ // 清空输入框
503
+ clearInput(){
504
+ this.input.sku.value = ''
505
+ this.input.sku.focus = true // 打开后会导致屏幕滚动到当前位置无法显示在头部
506
+ this.input.num.value = ''
507
+ this.input.wait = false
508
+ this.input.local.value = ''
509
+ this.input.lpn.value = ''
510
+ this.scrollTop()
511
+ },
512
+
513
+ // 商品号确认
514
+ skuCodeConfirm(){
515
+ if (this.skuCodeCheck()){
516
+ this.input.num.focus = true
517
+ }
518
+ },
519
+ // 商品号输入校验
520
+ skuCodeCheck(){
521
+ const sku = this.input.sku
522
+ // 非空校验
523
+ if (!sku.value){
524
+ sku.focus = true
525
+ this.$lwShowErrorMsg(
526
+ this.$lwLanguage.get('wms_project.pda.receive.skuAction.skuNull','商品号不能为空')
527
+ )
528
+ return false
529
+ }
530
+
531
+ // 是否输入正确
532
+ if (sku.value !== this.skuListData[this.skuIndex].sku.code){
533
+ sku.focus = true
534
+ this.$lwShowErrorMsg(
535
+ this.$lwLanguage.get('wms_project.pda.receive.skuAction.skuNot','当前商品与上架商品不一致')
536
+ )
537
+ sku.value = ''
538
+ return false
539
+ }
540
+
541
+ return true
542
+ },
543
+
544
+ // 数量确认
545
+ numConfirm(){
546
+ if (this.numCheck()){
547
+ this.input.local.focus = true
548
+ }
549
+ },
550
+ // 数量校验
551
+ numCheck(){
552
+ const num = Number(this.input.num.value || 0)
553
+ if (!num){
554
+ this.input.num.focus = true
555
+ this.$lwShowErrorMsg(
556
+ this.$lwLanguage.get('wms_project.pda.receive.skuAction.skuNumZero','数量不能为空,且应当是大于0的整数')
557
+ )
558
+ this.input.num.value = ''
559
+ return false
560
+ }
561
+
562
+ if (num > this.skuListData[this.skuIndex].canPaQty){
563
+ this.input.num.focus = true
564
+ this.$lwShowErrorMsg(
565
+ this.$lwLanguage.get('wms_project.pda.receive.skuAction.skuMore','数量不能大于待上架量')
566
+ )
567
+ this.input.num.value = ''
568
+ return false
569
+ }
570
+
571
+ return true
572
+ },
573
+
574
+ // 接力上架切换
575
+ waitChange(){
576
+ this.input.local.value = ''
577
+ this.input.local.focus = true
578
+ this.input.lpn.value = ''
579
+ },
580
+
581
+ // 库位确认
582
+ localConfirm(){
583
+ if (this.localCheck()){
584
+ this.input.lpn.focus = true
585
+ }
586
+ },
587
+ // 库位校验
588
+ localCheck(){
589
+ const local = this.input.local
590
+ if (!local.value) {
591
+
592
+ local.focus = true
593
+ this.$lwShowErrorMsg(
594
+ this.$lwLanguage.get('wms_project.pda.receive.skuAction.localNull','库位不能为空')
595
+ )
596
+ return false
597
+ }
598
+
599
+ return true
600
+ },
601
+
602
+ // 托盘号校验
603
+ lpnConfirm(){
604
+ if(this.lpnCheck()){
605
+ this.putawayConfirm()
606
+ }
607
+ },
608
+ // 托盘号校验
609
+ lpnCheck(){
610
+ if (!this.input.wait || this.input.lpn.value) return true
611
+
612
+ this.input.lpn.focus = true
613
+ this.$lwShowErrorMsg(
614
+ this.$lwLanguage.get('wms_project.pda.receive.skuAction.lpnNull','托盘号不能为空')
615
+ )
616
+ return false
617
+ },
618
+
619
+ // 商品列表商品被点击
620
+ skuListClick(index){
621
+ this.skuIndex = index
622
+ this.tabActive = 'now'
623
+ this.$lwToast.success(
624
+ this.$lwLanguage.get('wms_project.pda.receive.skuAction.jump','已跳转至任务行:') + (index + 1)
625
+ )
626
+ this.scrollTop()
627
+ },
628
+
629
+ // 上架异常点击
630
+ abnClick(){
631
+ this.abnPopup.comShow = true
632
+ this.abnPopup.show = true
633
+ },
634
+ // 上报异常
635
+ abnConfirm(){
636
+ const {success, data} = this.$refs.abnormal.getAbnormalData()
637
+
638
+ if (!success) return
639
+
640
+ const item = this.skuListData[this.skuIndex]
641
+ wmsMobileSubmitPutawayByAbnormal({
642
+ taskId: item.task.taskId,
643
+ skuCode: item.sku.code,
644
+ groupKey: item.groupKey,
645
+ ...data
646
+ }).then(()=>{
647
+ this.abnPopup.show = false
648
+ this.abnPopup.comShow = false
649
+ this.$lwToast.success(
650
+ this.$lwLanguage.get('wms_project.pda.receive.skuAction.abnSuccess','异常上报成功')
651
+ )
652
+ this.getData()
653
+ })
654
+ },
655
+
656
+ // 定位商品
657
+ seoSku(){
658
+ this.seoPopup.show = true
659
+ this.seoPopup.sku.focus = true
660
+ },
661
+ // 定位商品弹框关闭
662
+ seoPopupOff(){
663
+ this.seoPopup.sku.value = ''
664
+ this.seoPopup.list = []
665
+ this.seoPopup.showNotData = false
666
+ },
667
+ // 确认搜索商品
668
+ seoPopupSkuConfirm() {
669
+ this.seoPopup.list = []
670
+ this.skuListData.forEach((item, index) => {
671
+ if (item.sku.code.includes(this.seoPopup.sku.value)) {
672
+ this.seoPopup.list.push({
673
+ index,
674
+ data: item
675
+ })
676
+ }
677
+ })
678
+
679
+ if (this.seoPopup.list.length === 1) {
680
+ this.seoPopupSkuListClick(this.seoPopup.list[0].index)
681
+ }
682
+
683
+ this.seoPopup.showNotData = true
684
+ },
685
+ // 搜索商品结果点击
686
+ seoPopupSkuListClick(index){
687
+ this.seoPopup.show = false
688
+ this.skuListClick(index)
689
+ },
690
+
691
+ // 确认上架 - 不区分是否接力上架
692
+ putawayConfirm(){
693
+ if (
694
+ !(this.skuCodeCheck() &&
695
+ this.numCheck() &&
696
+ this.localCheck() &&
697
+ this.lpnCheck())
698
+ ) return
699
+
700
+ const item = this.skuListData[this.skuIndex]
701
+ if (!this.input.wait && this.input.local.value !== item.toLocationCode){
702
+ this.$dialog.confirm({
703
+ title: this.$lwLanguage.get('wms_project.pda.receive.skuAction.total','提示'),
704
+ message: this.$lwLanguage.get('wms_project.pda.receive.skuAction.confirmMsg','当前目标库位与推荐库位不一致,确认上架?')
705
+ }).then(()=>{
706
+ this.putawaySubmit(item)
707
+ }).catch(()=>{})
708
+
709
+ return
710
+ }
711
+
712
+ this.putawaySubmit(item)
713
+ },
714
+
715
+ // 提交上架数据
716
+ putawaySubmit(item){
717
+ wmsMobileSubmitPutawayBySku({
718
+ taskId: item.task.taskId,
719
+ groupKey: item.groupKey,
720
+ toLocationCode: this.input.local.value,
721
+ toLpn: this.input.lpn.value,
722
+ skuCode: this.input.sku.value,
723
+ qty: this.input.num.value,
724
+ relay: this.input.wait,
725
+ }).then(()=>{
726
+ this.$lwToast.success(
727
+ this.$lwLanguage.get('wms_project.pda.receive.skuAction.unSuccess','上架成功')
728
+ )
729
+
730
+ this.clearInput()
731
+ this.getData()
732
+ })
733
+ }
734
+
735
+ }
736
+ }
737
+ </script>
738
+
739
+ <style scoped lang="less">
740
+
741
+ </style>