@logwire/logwire-wms-pda-ui 1.1.15 → 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 (438) 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 +123 -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 +367 -343
  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 -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 +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/index.vue → CountBoard.vue} +115 -115
  118. package/src/components/page/count/components/RandomCount.vue +154 -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 +16 -10
  134. package/src/components/page/inbound/newProject/action/index.js +13 -0
  135. package/src/components/page/{inner/movePutAway/index → inbound/newProject/action}/index.less +0 -0
  136. package/src/components/page/inbound/newProject/action/index.vue +1469 -0
  137. package/src/components/page/inbound/newProject/index/index.js +13 -0
  138. package/src/components/page/inbound/newProject/index/index.less +0 -0
  139. package/src/components/page/inbound/newProject/index/index.vue +122 -0
  140. package/src/components/page/inbound/newProject//346/226/260/345/223/201/351/205/215/347/275/256.md +0 -0
  141. package/src/components/page/inbound/receive/home/index.js +5 -5
  142. package/src/components/page/inbound/receive/home/index.vue +73 -73
  143. package/src/components/page/inbound/receive/index/index.js +5 -5
  144. package/src/components/page/inbound/receive/index/index.vue +89 -89
  145. package/src/components/page/inbound/receive/quality/LwInboundQualityExecutePage.vue +405 -337
  146. package/src/components/page/inbound/receive/quality/LwInboundQualityTaskListPage.vue +163 -157
  147. package/src/components/page/inbound/receive/quality/index.js +16 -16
  148. package/src/components/page/inbound/receive/receive-sku/LwInboundReceiveSkuAdvancePage.vue +320 -267
  149. package/src/components/page/inbound/receive/receive-sku/LwInboundReceiveSkuDirectPage.vue +407 -351
  150. package/src/components/page/inbound/receive/receive-sku/LwInboundReceiveSkuScanPage.vue +149 -149
  151. package/src/components/page/inbound/receive/receive-sku/index.js +19 -19
  152. package/src/components/page/index.js +33 -33
  153. package/src/components/page/inner/abnormalMove/index/index.js +11 -11
  154. package/src/components/page/inner/abnormalMove/index/index.vue +468 -463
  155. package/src/components/page/inner/disposeAbnormal/action/index.js +11 -11
  156. package/src/components/page/inner/disposeAbnormal/action/index.vue +524 -524
  157. package/src/components/page/inner/disposeAbnormal/components/abnInfo/index.vue +655 -655
  158. package/src/components/page/inner/disposeAbnormal/components/disposePopup/index.vue +229 -229
  159. package/src/components/page/inner/disposeAbnormal/components/listItem/index.vue +213 -213
  160. package/src/components/page/inner/disposeAbnormal/components/searchBar/index.vue +264 -260
  161. package/src/components/page/inner/disposeAbnormal/index/index.js +11 -11
  162. package/src/components/page/inner/disposeAbnormal/index/index.vue +237 -247
  163. package/src/components/page/inner/index.js +62 -58
  164. package/src/components/page/inner/lpnMove/action/index.js +11 -11
  165. package/src/components/page/inner/lpnMove/action/index.vue +222 -221
  166. package/src/components/page/inner/lpnMove/index/index.js +11 -11
  167. package/src/components/page/inner/lpnMove/index/index.vue +155 -153
  168. package/src/components/page/inner/materialApply/action/index.js +10 -10
  169. package/src/components/page/inner/materialApply/action/index.vue +563 -554
  170. package/src/components/page/inner/materialApply/generate/index.js +10 -10
  171. package/src/components/page/inner/materialApply/generate/index.vue +376 -376
  172. package/src/components/page/inner/movePutAway/index/index.js +11 -11
  173. package/src/components/page/inner/movePutAway/index/index.vue +363 -363
  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 +251 -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 +1330 -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 +237 -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 +742 -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 +554 -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/mixins/loginAndInit/index.js +27 -0
  341. 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
  342. package/src/mixins//346/267/267/345/205/245.md +0 -0
  343. package/src/router/index.js +405 -393
  344. package/src/router/menu.js +367 -354
  345. package/src/test/file/index.js +11 -11
  346. package/src/test/file/index.vue +25 -25
  347. package/src/utils/ApiUtils.js +48 -48
  348. package/src/utils/AppBack.js +44 -44
  349. package/src/utils/Axios.js +160 -160
  350. package/src/utils/BarcodeResolve.js +281 -0
  351. package/src/utils/DateTime.js +219 -219
  352. package/src/utils/DeepCopy.js +61 -61
  353. package/src/utils/Dict.js +73 -73
  354. package/src/utils/GetImgSrc.js +53 -53
  355. package/src/utils/Init.js +12 -12
  356. package/src/utils/Language.js +59 -59
  357. package/src/utils/LocalStorage.js +30 -30
  358. package/src/utils/Permissions.js +51 -51
  359. package/src/utils/Print.js +179 -179
  360. package/src/utils/README.md +2 -2
  361. package/src/utils/RouteInit.js +14 -14
  362. package/src/utils/ScanRule.js +150 -150
  363. package/src/utils/SetColor.js +22 -22
  364. package/src/utils/TabBar.js +30 -30
  365. package/src/utils/Tip.js +26 -26
  366. package/src/utils/Toast.js +41 -41
  367. package/src/utils/UUID.js +33 -33
  368. package/src/utils/Warehouse.js +26 -26
  369. package/src/utils/index.js +63 -61
  370. package/src/utils/windowGlobalData.js +88 -88
  371. package/src/views/common/home/index.vue +67 -67
  372. package/src/views/common/init/index.vue +128 -122
  373. package/src/views/common/login/index.vue +23 -23
  374. package/src/views/common/menu/menuOne.vue +36 -36
  375. package/src/views/common/menu/menuTwo.vue +33 -33
  376. package/src/views/common/my/device.vue +23 -23
  377. package/src/views/common/my/index.vue +23 -23
  378. package/src/views/common/my/language.vue +23 -23
  379. package/src/views/common/my/msg.vue +23 -23
  380. package/src/views/common/my/print.vue +23 -23
  381. package/src/views/common/my/warehouse.vue +25 -25
  382. package/src/views/common/task/index.vue +23 -23
  383. package/src/views/count/index.vue +87 -87
  384. package/src/views/count/inv/action.vue +12 -12
  385. package/src/views/count/inv/index.vue +12 -12
  386. package/src/views/count/loc/action.vue +12 -12
  387. package/src/views/count/loc/index.vue +12 -12
  388. package/src/views/inbound/newProject/action.vue +23 -0
  389. package/src/views/inbound/newProject/index.vue +23 -0
  390. package/src/views/inbound/quality/InboundQualityExecuteView.vue +11 -11
  391. package/src/views/inbound/quality/InboundQualityTaskListView.vue +11 -11
  392. package/src/views/inbound/receive/home.vue +14 -14
  393. package/src/views/inbound/receive/index.vue +13 -13
  394. package/src/views/inbound/receive/sku/InboundReceiveSkuAdvanceView.vue +13 -13
  395. package/src/views/inbound/receive/sku/InboundReceiveSkuDirectView.vue +13 -13
  396. package/src/views/inbound/receive/sku/InboundReceiveSkuScanView.vue +13 -13
  397. package/src/views/inner/abnormalMove/index.vue +23 -23
  398. package/src/views/inner/disposeAbnormal/action.vue +23 -23
  399. package/src/views/inner/disposeAbnormal/index.vue +23 -23
  400. package/src/views/inner/lpnMove/action.vue +23 -23
  401. package/src/views/inner/lpnMove/index.vue +23 -23
  402. package/src/views/inner/materialApply/action.vue +22 -22
  403. package/src/views/inner/materialApply/generate.vue +22 -22
  404. package/src/views/inner/movePutAway/index.vue +22 -22
  405. package/src/views/inner/randomMove/index.vue +23 -23
  406. package/src/views/inner/reportAbnormal/action.vue +23 -23
  407. package/src/views/inner/reportAbnormal/index.vue +23 -23
  408. package/src/views/inner/taskMove/index.vue +23 -23
  409. package/src/views/outbound/aloneBale/action.vue +23 -23
  410. package/src/views/outbound/aloneBale/index.vue +23 -23
  411. package/src/views/outbound/aloneBale/newBale.vue +23 -23
  412. package/src/views/outbound/bale/action.vue +23 -23
  413. package/src/views/outbound/bale/allCheck.vue +23 -23
  414. package/src/views/outbound/bale/index.vue +23 -23
  415. package/src/views/outbound/bale/newBale.vue +23 -23
  416. package/src/views/outbound/delivery/action.vue +23 -23
  417. package/src/views/outbound/delivery/addOrder.vue +23 -23
  418. package/src/views/outbound/delivery/index.vue +23 -23
  419. package/src/views/outbound/pick/aloneAction.vue +23 -23
  420. package/src/views/outbound/pick/boxAction.vue +23 -23
  421. package/src/views/outbound/pick/index.vue +23 -23
  422. package/src/views/outbound/pick/lpnAction.vue +23 -23
  423. package/src/views/outbound/pick/notAloneAction.vue +23 -23
  424. package/src/views/outbound/pickMerge/action.vue +23 -23
  425. package/src/views/outbound/pickMerge/content.vue +23 -23
  426. package/src/views/outbound/pickMerge/index.vue +23 -23
  427. package/src/views/outbound/sow/action.vue +23 -23
  428. package/src/views/outbound/sow/index.vue +23 -23
  429. package/src/views/outbound/summary/box/index.vue +23 -23
  430. package/src/views/outbound/summary/lpn/action.vue +23 -23
  431. package/src/views/outbound/summary/lpn/index.vue +23 -23
  432. package/src/views/receive/abnormal/action.vue +23 -23
  433. package/src/views/receive/abnormal/index.vue +24 -24
  434. package/src/views/receive/putaway/index.vue +23 -23
  435. package/src/views/receive/putaway/lpnAction.vue +23 -23
  436. package/src/views/receive/putaway/skuAction.vue +23 -23
  437. package/src/views/receive/receipt/action.vue +25 -25
  438. package/src/views/receive/receipt/index.vue +25 -25
@@ -1,847 +1,865 @@
1
- <!--
2
- 收货异常
3
- @author: 张文
4
- @date: 2022-05-09
5
- -->
6
- <template>
7
- <div>
8
-
9
- <div v-if="show">
10
-
11
- <!-- ERP单号 -->
12
- <div class="lw-global-model-box lw-receive-abnormal-boss">
13
-
14
- <lw-input
15
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.order','订单号')"
16
- v-model="abnormalInfo.orderNo"
17
- input-align="right"
18
- required
19
- disabled
20
- />
21
-
22
- <lw-input
23
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.erp','ERP单号')"
24
- v-model="abnormalInfo.erpOrderNo"
25
- input-align="right"
26
- :disabled="!!asnData.extNo"
27
- />
28
-
29
- <lw-input
30
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.evidenceNo','凭证单号')"
31
- v-model="abnormalInfo.evidenceNo"
32
- input-align="right"
33
- />
34
-
35
- <lw-input
36
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.supplierCode','供应商编码')"
37
- v-model="abnormalInfo.supplierCode"
38
- input-align="right"
39
- :disabled="!!asnData.supplierCode"
40
- />
41
-
42
- <lw-input
43
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.supplierName','供应商名称')"
44
- v-model="abnormalInfo.supplierName"
45
- input-align="right"
46
- :disabled="!!asnData.supplierName"
47
- />
48
-
49
- </div>
50
-
51
- <!-- 更多单据信息 -->
52
- <div class="lw-global-model-box lw-global-collapse-box">
53
- <van-collapse
54
- v-model="moreInfoCollapse"
55
- :border="false"
56
- >
57
- <van-collapse-item
58
- :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.more','更多单据信息')"
59
- name="1"
60
- >
61
-
62
- <lw-input
63
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.carrierCode','承运商编号')"
64
- v-model="abnormalInfo.carrierCode"
65
- input-align="right"
66
- />
67
-
68
- <lw-input
69
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.carrierName','承运商名称')"
70
- v-model="abnormalInfo.carrierName"
71
- input-align="right"
72
- />
73
-
74
- <lw-input
75
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.plateNumber','车牌号')"
76
- v-model="abnormalInfo.plateNumber"
77
- input-align="right"
78
- />
79
-
80
- <lw-input
81
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.extBizNo','业务单号1')"
82
- v-model="abnormalInfo.extBizNo"
83
- input-align="right"
84
- />
85
-
86
- <lw-input
87
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.extBizNo2','业务单号2')"
88
- v-model="abnormalInfo.extBizNo2"
89
- input-align="right"
90
- />
91
-
92
- <lw-input
93
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.extBizNo3','业务单号3')"
94
- v-model="abnormalInfo.extBizNo3"
95
- input-align="right"
96
- />
97
-
98
- <!-- <lw-input
99
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.wms','WMS单据号')"
100
- v-model="abnormalInfo.bizOrderNo"
101
- input-align="right"
102
- :disabled="moreDisabled"
103
- />
104
-
105
- <lw-input
106
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.wmsNum','WMS单据行号')"
107
- v-model="abnormalInfo.bizOrderLineNo"
108
- input-align="right"
109
- :disabled="moreDisabled"
110
- />-->
111
-
112
- </van-collapse-item>
113
- </van-collapse>
114
- </div>
115
-
116
- <!-- 所属类型 -->
117
- <div class="lw-global-model-box">
118
-
119
- <!-- 所属类型 -->
120
- <lw-cell
121
- style="padding-top: 0"
122
- :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.type','所属类型')"
123
- :value="belongType"
124
- value-align="right"
125
- :is-link="false"
126
- />
127
-
128
- <!-- 作业环节 -->
129
- <lw-cell-popup-radio
130
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.discoveryPoint','作业环节')"
131
- v-model="abnormalType.discoveryPoint"
132
- dict-key="abnormal_discovery_point_choice"
133
- required
134
- />
135
-
136
- <!-- 异常类型 -->
137
- <lw-cell-popup-radio
138
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.abnType','异常类型')"
139
- v-model="abnormalType.abnType"
140
- dict-key="abnormal_type_choice"
141
- required
142
- @confirm="typeConfirm"
143
- @clear="typeClear"
144
- />
145
-
146
- <!-- 异常子类型 -->
147
- <lw-cell-popup-radio
148
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.abnSubType','异常子类型')"
149
- v-model="abnormalType.abnSubType"
150
- :columns="subTypeList"
151
- required
152
- />
153
-
154
- <!-- 货主 -->
155
- <lw-cell-popup-radio
156
- style="padding-bottom: 0"
157
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.owner','货主')"
158
- v-model="abnormalType.ownerId"
159
- value-key="id"
160
- label-key="name"
161
- :columns="ownerList"
162
- required
163
- :disabled="!!asnData.ownerId"
164
- />
165
-
166
- </div>
167
-
168
- <!-- 增加商品信息按钮 -->
169
- <div
170
- v-if="showAddBtn"
171
- class="lw-global-model-box lw-global-flex-between"
172
- >
173
- <div class="lw-global-value" style="font-size: 16px">
174
- {{ $lwLanguage.get('wms_project.pda.module.receiveAbn.skuInfo','商品信息') }}
175
- </div>
176
-
177
- <van-icon
178
- name="add-o"
179
- size="24px"
180
- color="#409eff"
181
- @click="addSku"
182
- />
183
- </div>
184
-
185
- <!-- 商品信息录入模块 -->
186
- <div
187
- v-else
188
- class="lw-global-model-box lw-global-row"
189
- style="padding-bottom: 0"
190
- >
191
-
192
- <div class="lw-global-row-start lw-global-flex-between">
193
-
194
- <div class="lw-global-value" style="font-size: 16px">
195
- {{ $lwLanguage.get('wms_project.pda.module.receiveAbn.skuInfo','商品信息') }}
196
- </div>
197
-
198
- <lw-button
199
- v-if="multiple"
200
- mini
201
- round
202
- @click="saveSku"
203
- >
204
- <van-icon name="certificate" />
205
- {{ $lwLanguage.get('wms_project.pda.module.receiveAbn.save','保存') }}
206
- </lw-button>
207
-
208
- </div>
209
-
210
- <lw-input
211
- :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.sku','商品号')"
212
- v-model="skuInfo.skuCode"
213
- :get-focus.sync="skuInfoFocus.skuCode"
214
- input-align="right"
215
- required
216
- :disabled="skuDisabled"
217
- @confirm="skuCodeConfirm()"
218
- >
219
- <template #button>
220
- <lw-button
221
- v-if="!skuDisabled"
222
- type="last"
223
- round
224
- mini
225
- @click="skuCodeConfirm()"
226
- >
227
- {{ $lwLanguage.get('wms_project.pda.module.receiveAbn.confirm','确认') }}
228
- </lw-button>
229
- </template>
230
- </lw-input>
231
-
232
- <lw-cell
233
- :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.skuName','商品名称')"
234
- :value="skuInfo.sku.skuName"
235
- value-align="right"
236
- :is-link="false"
237
- />
238
-
239
-
240
- <!-- 批次组件信息 -->
241
- <lw-lot-module
242
- v-if="lot.show"
243
- ref="lot"
244
- :query="lot.query"
245
- :must-required="false"
246
- />
247
-
248
-
249
- <lw-input
250
- :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.anbQty','异常数量')"
251
- v-model="skuInfo.abnQty"
252
- :get-focus.sync="skuInfoFocus.qty"
253
- type="digit"
254
- input-align="right"
255
- required
256
- />
257
-
258
- <lw-input
259
- :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.abnLocal','异常库位')"
260
- v-model="skuInfo.abnLocationCode"
261
- :get-focus.sync="skuInfoFocus.abnormalLocationCode"
262
- input-align="right"
263
- required
264
- />
265
-
266
- <lw-input
267
- :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.lpn','托盘号')"
268
- v-model="skuInfo.abnLpn"
269
- input-align="right"
270
- />
271
-
272
- <!-- 处理方式 -->
273
- <lw-cell-popup-radio
274
- :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.handleMethod','处理方式')"
275
- v-model="skuInfo.handleMethod"
276
- dict-key="abnormal_handle_method_choice"
277
- />
278
-
279
- <lw-input
280
- :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.remark','备注')"
281
- v-model="skuInfo.abnRemark"
282
- type="textarea"
283
- input-align="right"
284
- :rows="4"
285
- />
286
-
287
- <!-- 图片 -->
288
- <div class="lw-global-title" style="padding: 8px 0">
289
- {{ $lwLanguage.get('wms_project.pda.module.receiveAbn.img','图片') }}
290
- </div>
291
- <lw-img-upload v-model="skuInfo.imagesArr"/>
292
-
293
-
294
- </div>
295
-
296
- <!-- 已经录入了的商品信息 -->
297
- <div
298
- class="lw-global-model-box lw-global-flex-between"
299
- v-for="(i,k) in skuList"
300
- :key="k"
301
- >
302
- <div
303
- style="flex: 1"
304
- class="lw-global-flex-between"
305
- >
306
- <div style="flex: 1">
307
- <div class="lw-global-value">{{ i.skuCode }}</div>
308
- <div class="lw-global-title">{{ i.sku.skuName }}</div>
309
- </div>
310
-
311
- <div style="width: 56px;flex-shrink: 0;text-align: center">
312
- <div class="lw-global-value-bold" style="color: #D50000;">{{ i.abnQty }}</div>
313
- <div class="lw-global-title">
314
- {{ $lwLanguage.get('wms_project.pda.module.receiveAbn.abnQty','异常量') }}
315
- </div>
316
- </div>
317
- </div>
318
-
319
- <van-icon
320
- style="width: 24px;flex-shrink: 0;margin-left: 5px"
321
- name="close"
322
- size="24px"
323
- color="#D50000"
324
- @click="delSku(k)"
325
- />
326
- </div>
327
-
328
- </div>
329
-
330
- <lw-not-data
331
- v-else
332
- :content="$lwLanguage.get('wms_project.pda.module.receiveAbn.error','基础数据异常')"
333
- />
334
-
335
- <lw-bottom-bar v-if="showBottomBar">
336
- <lw-button @click="confirm">
337
- {{ $lwLanguage.get('wms_project.pda.module.receiveAbn.submit','确认上报') }}
338
- </lw-button>
339
- </lw-bottom-bar>
340
- </div>
341
- </template>
342
-
343
- <script>
344
-
345
- import {
346
- wmsMobileFoundAsn,
347
- wmsMobileFoundAsnLineSku,
348
- wmsMobileSubmitAbnormalReceive
349
- } from "../../../api/receive/abnormal";
350
-
351
- export default {
352
- name: "lwReceiveAbnormalModule",
353
- props:{
354
- // 订单号
355
- asnNo: String,
356
-
357
- // 所属类型
358
- belongType: {
359
- type: String,
360
- default: '收货'
361
- },
362
-
363
- // 是否允许多条保存
364
- multiple:{
365
- type: Boolean,
366
- default: true
367
- },
368
-
369
- // 商品信息是否禁用
370
- skuDisabled:{
371
- type: Boolean,
372
- default: false
373
- },
374
-
375
- // 商品号
376
- skuCode: String,
377
-
378
- // 是否显示底部导航栏模块
379
- showBottomBar:{
380
- type: Boolean,
381
- default: true
382
- }
383
- },
384
- /*computed:{
385
- moreDisabled(){
386
- return !!Object.keys(this.asnData).length
387
- }
388
- },*/
389
- data() {
390
- return {
391
- // 是否显示异常模块
392
- show: false,
393
-
394
- // 订单信息
395
- asnData:{},
396
-
397
- // 更多信息展开项
398
- moreInfoCollapse:[],
399
-
400
- // 异常子类型的选择项目
401
- subTypeList:[],
402
-
403
- // 货主的选择项目
404
- ownerList:[],
405
-
406
- // 更多信息
407
- abnormalInfo:{
408
- // ERP单号
409
- erpOrderNo:'',
410
- // 凭证号
411
- evidenceNo:'',
412
- // 订单号
413
- orderNo:'',
414
- // 供应商编码
415
- supplierCode:'',
416
- // 供应商名称
417
- supplierName:'',
418
- // 承运商编码
419
- carrierCode:'',
420
- // 承运商名称
421
- carrierName:'',
422
- // 车牌号
423
- plateNumber:'',
424
- // 外部业务单号
425
- extBizNo:'',
426
- // 外部业务单号2
427
- extBizNo2:'',
428
- // 外部业务单号3
429
- extBizNo3:'',
430
-
431
- /*// WMS 单据号
432
- bizOrderNo:'',
433
- // WMS 单据行号
434
- bizOrderLineNo:'',*/
435
- },
436
-
437
- // 异常类型
438
- abnormalType:{
439
- // 所属类型
440
- belongType:'RECEIVE',
441
- // 作业环节
442
- discoveryPoint:'',
443
- // 异常类型
444
- abnType:'',
445
- // 异常子类型
446
- abnSubType:'',
447
- // 货主id
448
- ownerId:'',
449
- },
450
-
451
- // 商品信息
452
- skuInfo:{
453
- skuCode:'',
454
- // 当前扫描零件得到的零件基础信息
455
- sku:{
456
- skuName:''
457
- },
458
- abnQty:'',
459
- abnLocationCode:'',
460
- abnLpn:'',
461
- handleMethod:'',
462
- remark:'',
463
- imagesArr:[],
464
- },
465
-
466
- // 零件信息获取焦点
467
- skuInfoFocus:{
468
- skuCode: false,
469
- qty: false,
470
- abnormalLocationCode: false,
471
- },
472
-
473
- // 批次组件
474
- lot: {
475
- show: false,
476
- query: {}
477
- },
478
-
479
- // 是否显示增加按钮
480
- showAddBtn: false,
481
-
482
- // 用于储存多条商品信息
483
- skuList:[],
484
-
485
- }
486
- },
487
- watch:{
488
- 'skuInfo.skuCode':{
489
- handler(n){
490
- // 如果零件信息为空就清除批次数据、零件数据
491
- if (!n){
492
- this.skuInfo.sku = {}
493
- this.lot.show = false
494
- this.lot.query = {}
495
- }
496
- }
497
- }
498
- },
499
- mounted() {
500
-
501
- this.init()
502
-
503
- },
504
- methods: {
505
- // 初始化
506
- async init(){
507
- try{
508
-
509
- // 获取货主信息
510
- this.ownerList = await this.$lwApi.common.getOwnerList()
511
- const asnData = await wmsMobileFoundAsn({
512
- asnNo: this.asnNo
513
- })
514
-
515
- this.asnData = asnData || {}
516
- this.abnormalInfo.orderNo = this.asnData.asnNo || ''
517
- this.skuInfo.skuCode = this.skuCode || ''
518
- this.abnormalInfo.extNo = this.asnData.erpOrderNo || ''
519
- this.abnormalInfo.supplierCode = this.asnData.supplierCode || ''
520
- this.abnormalInfo.supplierName = this.asnData.supplierName || ''
521
- this.abnormalInfo.carrierCode = this.asnData.carrierCode || ''
522
- this.abnormalInfo.carrierName = this.asnData.carrierName || ''
523
- this.abnormalInfo.carrierPlateNum = this.asnData.plateNumber || ''
524
- this.abnormalType.ownerId = this.asnData.ownerId || ''
525
- /*this.abnormalInfo.bizOrderNo = this.asnData.bizOrderNo || ''
526
- this.abnormalInfo.bizOrderLineNo = this.asnData.bizOrderLineNo || ''*/
527
-
528
-
529
- // 是否存在商品数据,如果存在就获取商品信息
530
- if (this.skuInfo.skuCode){
531
-
532
- await this.skuCodeConfirm(true)
533
- }
534
-
535
- this.show = true
536
-
537
- }catch (err){
538
- console.error('收货异常模块初始化失败:', err)
539
- }
540
- },
541
-
542
- // 异常类型确认
543
- typeConfirm({value}){
544
-
545
- // 判断异常类型是否变化,变化了就要改子类型的值
546
- if (!value || value !== this.abnormalType.abnSubType.split('_')[0]){
547
- this.abnormalType.abnSubType = ''
548
- const subType = this.$lwDict.get('abnormal_sub_type_choice')
549
- this.subTypeList = subType.filter(item=>item.value.split('_')[0] === value)
550
- }
551
- },
552
- // 异常类型清空
553
- typeClear(){
554
- this.abnormalType.abnSubType = ''
555
- this.subTypeList = []
556
- },
557
-
558
- // 商品号确认
559
- async skuCodeConfirm(first = false){
560
- if (!this.skuInfo.skuCode){
561
- this.skuInfoFocus.skuCode = true
562
- this.$lwShowErrorMsg(
563
- this.$lwLanguage.get('wms_project.pda.module.receiveAbn.skuNull','商品号不能为空')
564
- )
565
- this.skuInfo.skuCode = ''
566
- return
567
- }
568
-
569
- if (!this.abnormalType.ownerId){
570
- this.$lwShowErrorMsg(
571
- this.$lwLanguage.get('wms_project.pda.module.receiveAbn.selectWoner','请选择货主')
572
- )
573
- return
574
- }
575
-
576
- let query = {
577
- skuCode: this.skuInfo.skuCode
578
- }
579
-
580
- if (this.asnData.ownerId){
581
- query.asnId = this.asnData.id
582
- }else {
583
- query.ownerId = this.abnormalType.ownerId
584
- }
585
-
586
- const res = await wmsMobileFoundAsnLineSku(query)
587
-
588
- this.skuInfo.sku = {
589
- ...res,
590
- skuCode: res.sku.code,
591
- skuName: res.sku.name,
592
- skuOwner: res.sku.owner,
593
- skuId: res.sku.id,
594
- }
595
-
596
- this.lot.query = {
597
- type:1,
598
- lotType:'inventory',
599
- lotRuleId:'',
600
- editable:true,
601
- needHandleRequire:true,
602
- ownerId:this.skuInfo.sku.ownerId,
603
- skuId:this.skuInfo.sku.skuId,
604
- header: this.asnData.map,
605
- line: this.skuInfo.sku.map,
606
- }
607
-
608
- this.lot.show = true
609
- !first ? this.skuInfoFocus.qty = true : ''
610
- },
611
-
612
- // 储存单条异常信息
613
- formatAbnSkuData(){
614
- let skuData = this.$lwDeepCopy(this.skuInfo)
615
-
616
- if (this.lot.show){
617
- const {success, data} = this.$refs.lot.getData()
618
-
619
- if (!success) return;
620
-
621
- skuData.lotAttributes = data
622
- }
623
-
624
- return {
625
- ...skuData,
626
- skuId: skuData.sku.sku.id,
627
- abnImg: this.skuInfo.imagesArr.join('|')
628
- }
629
- },
630
-
631
- // 保存商品信息按钮
632
- saveSku(){
633
- // 校验作业环节
634
- if (!this.abnormalType.discoveryPoint){
635
- this.$lwShowErrorMsg(
636
- this.$lwLanguage.get('wms_project.pda.module.receiveAbn.discoveryPointNull','作业环节不能为空')
637
- )
638
- return false
639
- }
640
-
641
- // 校验异常类型
642
- if (!this.abnormalType.abnType){
643
- this.$lwShowErrorMsg(
644
- this.$lwLanguage.get('wms_project.pda.module.receiveAbn.abnTypeNull','异常类型不能为空')
645
- )
646
- return false
647
- }
648
-
649
- // 异常子类型
650
- if (!this.abnormalType.abnSubType){
651
- this.$lwShowErrorMsg(
652
- this.$lwLanguage.get('wms_project.pda.module.receiveAbn.abnSubTypeNull','异常子类型不能为空')
653
- )
654
- return false
655
- }
656
-
657
- // 货主
658
- if (!this.abnormalType.ownerId){
659
- this.$lwShowErrorMsg(
660
- this.$lwLanguage.get('wms_project.pda.module.receiveAbn.ownerNull','货主不能为空')
661
- )
662
- return false
663
- }
664
-
665
- // 校验是否输入商品
666
- if (!this.skuInfo.skuCode){
667
-
668
- this.skuInfoFocus.skuCode = true
669
- this.$lwShowErrorMsg(
670
- this.$lwLanguage.get('wms_project.pda.module.receiveAbn.skuInfoNull','商品信息不能为空')
671
- )
672
- return false
673
- }
674
-
675
- // 校验商品信息是否被修改
676
- if (this.skuInfo.skuCode !== this.skuInfo.sku.skuCode){
677
- this.skuInfoFocus.skuCode = true
678
- this.$lwShowErrorMsg(
679
- this.$lwLanguage.get('wms_project.pda.module.receiveAbn.skuError','当前输入商品与已获取的商品信息不一致!请点击商品输入框的确认按钮,重新获取当前输入的商品信息!')
680
- )
681
- return false
682
- }
683
-
684
- // 校验当前商品货主是否符合已选货主
685
- if (this.skuInfo.sku.skuOwner !== this.abnormalType.ownerId){
686
- this.skuInfoFocus.skuCode = true
687
- this.$lwShowErrorMsg(
688
- this.$lwLanguage.get('wms_project.pda.module.receiveAbn.ownerError','所选货主与当前商品所属货主不一致')
689
- )
690
- return false
691
- }
692
-
693
- // 校验是否输入异常量
694
- if (!this.skuInfo.abnQty){
695
-
696
- this.skuInfoFocus.qty = true
697
- this.$lwShowErrorMsg(
698
- this.$lwLanguage.get('wms_project.pda.module.receiveAbn.qtyNull','异常量不能为空且应当时大于0的整数')
699
- )
700
- return false
701
- }
702
-
703
- // 校验异常量是否大于商品可用量
704
- /*if (this.skuInfo.abnQty > this.skuInfo.sku.qty){
705
- this.skuInfoFocus.qty = true
706
- this.$lwShowErrorMsg(
707
- this.$lwLanguage.get('wms_project.pda.module.receiveAbn.qtyMore','异常量不能大于商品可用量')
708
- )
709
- return false
710
- }*/
711
-
712
- // 校验是否输入异常库位
713
- if (!this.skuInfo.abnLocationCode){
714
-
715
- this.skuInfoFocus.abnormalLocationCode = true
716
- this.$lwShowErrorMsg(
717
- this.$lwLanguage.get('wms_project.pda.module.receiveAbn.localNull','异常库位不能为空')
718
- )
719
- return false
720
- }
721
-
722
- // 是否是多条保存
723
- if (this.multiple){
724
-
725
- this.skuList.push(this.formatAbnSkuData())
726
-
727
- // 让所有输入框失去焦点
728
- for (let i in this.skuInfoFocus){
729
- this.skuInfoFocus[i] = false
730
- }
731
-
732
- // 清空商品信息数据
733
- for (let i in this.skuInfo){
734
- if(i === 'sku'){
735
- this.skuInfo[i] = {}
736
- continue
737
- }
738
- if(i === 'imagesArr'){
739
- this.skuInfo[i] = []
740
- continue
741
- }
742
-
743
- this.skuInfo[i] = ''
744
- }
745
-
746
- this.showAddBtn = true
747
- }
748
-
749
- return true
750
- },
751
-
752
- // 增加零件信息按钮被点击
753
- addSku(){
754
- this.showAddBtn = false
755
- this.skuInfoFocus.skuCode = true
756
- },
757
-
758
- // 删除零件按钮被点击
759
- delSku(index){
760
- this.$dialog.confirm({
761
- title: this.$lwLanguage.get('wms_project.pda.module.receiveAbn.warning','警告'),
762
- message: this.$lwLanguage.get('wms_project.pda.module.receiveAbn.del','确认删除该商品?')
763
- }).then(()=>{
764
- this.skuList.splice(index, 1)
765
- }).catch(()=>{})
766
- },
767
-
768
- // 获取当前异常模块的数据
769
- getAbnormalData(){
770
- // 校验是否允许多条保存
771
- if (this.multiple){
772
-
773
- // 多条保存是否有数据
774
- if (this.skuList.length){
775
- return {
776
- success: true,
777
- data: this.skuList
778
- }
779
- }
780
-
781
- // 没有数据就报错
782
- this.$lwShowErrorMsg(
783
- this.$lwLanguage.get('wms_project.pda.module.receiveAbn.skuListNull','没有保存任何商品信息,请先点击商品信息的保存按钮,保存录入的信息')
784
- )
785
- return {
786
- success: false,
787
- data: []
788
- }
789
- }
790
-
791
- // 如果是单条数据就触发保存按钮
792
- if (this.saveSku()){
793
- return {
794
- success: true,
795
- data: [this.formatAbnSkuData()]
796
- }
797
- }
798
-
799
- // 否则报错
800
- return {
801
- success: false,
802
- data: []
803
- }
804
- },
805
-
806
- // 确认上报
807
- confirm(){
808
- const {success, data} = this.getAbnormalData()
809
-
810
- if (!success) return
811
-
812
- wmsMobileSubmitAbnormalReceive({
813
- order: this.abnormalInfo,
814
- lines: data,
815
- ...this.abnormalType,
816
- asnId: this.asnData.id
817
- }).then(()=>{
818
- this.$lwToast.success(
819
- this.$lwLanguage.get('wms_project.pda.module.receiveAbn.abnSuccess','异常上报成功')
820
- )
821
-
822
- this.$emit('success')
823
- })
824
- }
825
- }
826
- }
827
- </script>
828
-
829
- <style scoped lang="less">
830
-
831
-
832
- .lw-receive-abnormal-boss{
833
-
834
- >.lw-input-box{
835
-
836
- &:first-child{
837
- padding-top: 0;
838
- }
839
-
840
- &:last-child{
841
- padding-bottom: 0;
842
- border-bottom: none;
843
- }
844
- }
845
- }
846
-
847
- </style>
1
+ <!--
2
+ 收货异常
3
+ @author: 张文
4
+ @date: 2022-05-09
5
+ -->
6
+ <template>
7
+ <div>
8
+
9
+ <div v-if="show">
10
+
11
+ <!-- ERP单号 -->
12
+ <div class="lw-global-model-box lw-receive-abnormal-boss">
13
+
14
+ <lw-input
15
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.order','订单号')"
16
+ v-model="abnormalInfo.orderNo"
17
+ input-align="right"
18
+ required
19
+ disabled
20
+ rule-prefix="receiveAbn"
21
+ rule-key="orderNo"
22
+ />
23
+
24
+ <lw-input
25
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.erp','ERP单号')"
26
+ v-model="abnormalInfo.erpOrderNo"
27
+ input-align="right"
28
+ :disabled="!!asnData.extNo"
29
+ rule-prefix="receiveAbn"
30
+ rule-key="erpOrderNo"
31
+ />
32
+
33
+ <lw-input
34
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.evidenceNo','凭证单号')"
35
+ v-model="abnormalInfo.evidenceNo"
36
+ input-align="right"
37
+ rule-prefix="receiveAbn"
38
+ rule-key="evidenceNo"
39
+ />
40
+
41
+ <lw-input
42
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.supplierCode','供应商编码')"
43
+ v-model="abnormalInfo.supplierCode"
44
+ input-align="right"
45
+ :disabled="!!asnData.supplierCode"
46
+ />
47
+
48
+ <lw-input
49
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.supplierName','供应商名称')"
50
+ v-model="abnormalInfo.supplierName"
51
+ input-align="right"
52
+ :disabled="!!asnData.supplierName"
53
+ />
54
+
55
+ </div>
56
+
57
+ <!-- 更多单据信息 -->
58
+ <div class="lw-global-model-box lw-global-collapse-box">
59
+ <van-collapse
60
+ v-model="moreInfoCollapse"
61
+ :border="false"
62
+ >
63
+ <van-collapse-item
64
+ :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.more','更多单据信息')"
65
+ name="1"
66
+ >
67
+
68
+ <lw-input
69
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.carrierCode','承运商编号')"
70
+ v-model="abnormalInfo.carrierCode"
71
+ input-align="right"
72
+ />
73
+
74
+ <lw-input
75
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.carrierName','承运商名称')"
76
+ v-model="abnormalInfo.carrierName"
77
+ input-align="right"
78
+ />
79
+
80
+ <lw-input
81
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.plateNumber','车牌号')"
82
+ v-model="abnormalInfo.plateNumber"
83
+ input-align="right"
84
+ />
85
+
86
+ <lw-input
87
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.extBizNo','业务单号1')"
88
+ v-model="abnormalInfo.extBizNo"
89
+ input-align="right"
90
+ rule-prefix="receiveAbn"
91
+ rule-key="extBizNo"
92
+ />
93
+
94
+ <lw-input
95
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.extBizNo2','业务单号2')"
96
+ v-model="abnormalInfo.extBizNo2"
97
+ input-align="right"
98
+ rule-prefix="receiveAbn"
99
+ rule-key="extBizNo2"
100
+ />
101
+
102
+ <lw-input
103
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.extBizNo3','业务单号3')"
104
+ v-model="abnormalInfo.extBizNo3"
105
+ input-align="right"
106
+ rule-prefix="receiveAbn"
107
+ rule-key="extBizNo3"
108
+ />
109
+
110
+ <!-- <lw-input
111
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.wms','WMS单据号')"
112
+ v-model="abnormalInfo.bizOrderNo"
113
+ input-align="right"
114
+ :disabled="moreDisabled"
115
+ />
116
+
117
+ <lw-input
118
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.wmsNum','WMS单据行号')"
119
+ v-model="abnormalInfo.bizOrderLineNo"
120
+ input-align="right"
121
+ :disabled="moreDisabled"
122
+ />-->
123
+
124
+ </van-collapse-item>
125
+ </van-collapse>
126
+ </div>
127
+
128
+ <!-- 所属类型 -->
129
+ <div class="lw-global-model-box">
130
+
131
+ <!-- 所属类型 -->
132
+ <lw-cell
133
+ style="padding-top: 0"
134
+ :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.type','所属类型')"
135
+ :value="belongType"
136
+ value-align="right"
137
+ :is-link="false"
138
+ />
139
+
140
+ <!-- 作业环节 -->
141
+ <lw-cell-popup-radio
142
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.discoveryPoint','作业环节')"
143
+ v-model="abnormalType.discoveryPoint"
144
+ dict-key="abnormal_discovery_point_choice"
145
+ required
146
+ />
147
+
148
+ <!-- 异常类型 -->
149
+ <lw-cell-popup-radio
150
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.abnType','异常类型')"
151
+ v-model="abnormalType.abnType"
152
+ dict-key="abnormal_type_choice"
153
+ required
154
+ @confirm="typeConfirm"
155
+ @clear="typeClear"
156
+ />
157
+
158
+ <!-- 异常子类型 -->
159
+ <lw-cell-popup-radio
160
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.abnSubType','异常子类型')"
161
+ v-model="abnormalType.abnSubType"
162
+ :columns="subTypeList"
163
+ required
164
+ />
165
+
166
+ <!-- 货主 -->
167
+ <lw-cell-popup-radio
168
+ style="padding-bottom: 0"
169
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.owner','货主')"
170
+ v-model="abnormalType.ownerId"
171
+ value-key="id"
172
+ label-key="name"
173
+ :columns="ownerList"
174
+ required
175
+ :disabled="!!asnData.ownerId"
176
+ />
177
+
178
+ </div>
179
+
180
+ <!-- 增加商品信息按钮 -->
181
+ <div
182
+ v-if="showAddBtn"
183
+ class="lw-global-model-box lw-global-flex-between"
184
+ >
185
+ <div class="lw-global-value" style="font-size: 16px">
186
+ {{ $lwLanguage.get('wms_project.pda.module.receiveAbn.skuInfo','商品信息') }}
187
+ </div>
188
+
189
+ <van-icon
190
+ name="add-o"
191
+ size="24px"
192
+ color="#409eff"
193
+ @click="addSku"
194
+ />
195
+ </div>
196
+
197
+ <!-- 商品信息录入模块 -->
198
+ <div
199
+ v-else
200
+ class="lw-global-model-box lw-global-row"
201
+ style="padding-bottom: 0"
202
+ >
203
+
204
+ <div class="lw-global-row-start lw-global-flex-between">
205
+
206
+ <div class="lw-global-value" style="font-size: 16px">
207
+ {{ $lwLanguage.get('wms_project.pda.module.receiveAbn.skuInfo','商品信息') }}
208
+ </div>
209
+
210
+ <lw-button
211
+ v-if="multiple"
212
+ mini
213
+ round
214
+ @click="saveSku"
215
+ >
216
+ <van-icon name="certificate" />
217
+ {{ $lwLanguage.get('wms_project.pda.module.receiveAbn.save','保存') }}
218
+ </lw-button>
219
+
220
+ </div>
221
+
222
+ <lw-input
223
+ :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.sku','商品号')"
224
+ v-model="skuInfo.skuCode"
225
+ :get-focus.sync="skuInfoFocus.skuCode"
226
+ input-align="right"
227
+ required
228
+ :disabled="skuDisabled"
229
+ rule-prefix="receiveAbn"
230
+ rule-key="sku"
231
+ @confirm="skuCodeConfirm()"
232
+ >
233
+ <template #button>
234
+ <lw-button
235
+ v-if="!skuDisabled"
236
+ type="last"
237
+ round
238
+ mini
239
+ @click="skuCodeConfirm()"
240
+ >
241
+ {{ $lwLanguage.get('wms_project.pda.module.receiveAbn.confirm','确认') }}
242
+ </lw-button>
243
+ </template>
244
+ </lw-input>
245
+
246
+ <lw-cell
247
+ :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.skuName','商品名称')"
248
+ :value="skuInfo.sku.skuName"
249
+ value-align="right"
250
+ :is-link="false"
251
+ />
252
+
253
+
254
+ <!-- 批次组件信息 -->
255
+ <lw-lot-module
256
+ v-if="lot.show"
257
+ ref="lot"
258
+ :query="lot.query"
259
+ :must-required="false"
260
+ />
261
+
262
+
263
+ <lw-input
264
+ :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.anbQty','异常数量')"
265
+ v-model="skuInfo.abnQty"
266
+ :get-focus.sync="skuInfoFocus.qty"
267
+ type="digit"
268
+ input-align="right"
269
+ required
270
+ />
271
+
272
+ <lw-input
273
+ :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.abnLocal','异常库位')"
274
+ v-model="skuInfo.abnLocationCode"
275
+ :get-focus.sync="skuInfoFocus.abnormalLocationCode"
276
+ input-align="right"
277
+ required
278
+ rule-prefix="receiveAbn"
279
+ rule-key="location"
280
+ />
281
+
282
+ <lw-input
283
+ :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.lpn','托盘号')"
284
+ v-model="skuInfo.abnLpn"
285
+ input-align="right"
286
+ rule-prefix="receiveAbn"
287
+ rule-key="lpn"
288
+ />
289
+
290
+ <!-- 处理方式 -->
291
+ <lw-cell-popup-radio
292
+ :title="this.$lwLanguage.get('wms_project.pda.module.receiveAbn.handleMethod','处理方式')"
293
+ v-model="skuInfo.handleMethod"
294
+ dict-key="abnormal_handle_method_choice"
295
+ />
296
+
297
+ <lw-input
298
+ :title="$lwLanguage.get('wms_project.pda.module.receiveAbn.remark','备注')"
299
+ v-model="skuInfo.abnRemark"
300
+ type="textarea"
301
+ input-align="right"
302
+ :rows="4"
303
+ />
304
+
305
+ <!-- 图片 -->
306
+ <div class="lw-global-title" style="padding: 8px 0">
307
+ {{ $lwLanguage.get('wms_project.pda.module.receiveAbn.img','图片') }}
308
+ </div>
309
+ <lw-img-upload v-model="skuInfo.imagesArr"/>
310
+
311
+
312
+ </div>
313
+
314
+ <!-- 已经录入了的商品信息 -->
315
+ <div
316
+ class="lw-global-model-box lw-global-flex-between"
317
+ v-for="(i,k) in skuList"
318
+ :key="k"
319
+ >
320
+ <div
321
+ style="flex: 1"
322
+ class="lw-global-flex-between"
323
+ >
324
+ <div style="flex: 1">
325
+ <div class="lw-global-value">{{ i.skuCode }}</div>
326
+ <div class="lw-global-title">{{ i.sku.skuName }}</div>
327
+ </div>
328
+
329
+ <div style="width: 56px;flex-shrink: 0;text-align: center">
330
+ <div class="lw-global-value-bold" style="color: #D50000;">{{ i.abnQty }}</div>
331
+ <div class="lw-global-title">
332
+ {{ $lwLanguage.get('wms_project.pda.module.receiveAbn.abnQty','异常量') }}
333
+ </div>
334
+ </div>
335
+ </div>
336
+
337
+ <van-icon
338
+ style="width: 24px;flex-shrink: 0;margin-left: 5px"
339
+ name="close"
340
+ size="24px"
341
+ color="#D50000"
342
+ @click="delSku(k)"
343
+ />
344
+ </div>
345
+
346
+ </div>
347
+
348
+ <lw-not-data
349
+ v-else
350
+ :content="$lwLanguage.get('wms_project.pda.module.receiveAbn.error','基础数据异常')"
351
+ />
352
+
353
+ <lw-bottom-bar v-if="showBottomBar">
354
+ <lw-button @click="confirm">
355
+ {{ $lwLanguage.get('wms_project.pda.module.receiveAbn.submit','确认上报') }}
356
+ </lw-button>
357
+ </lw-bottom-bar>
358
+ </div>
359
+ </template>
360
+
361
+ <script>
362
+
363
+ import {
364
+ wmsMobileFoundAsn,
365
+ wmsMobileFoundAsnLineSku,
366
+ wmsMobileSubmitAbnormalReceive
367
+ } from "../../../api/receive/abnormal";
368
+
369
+ export default {
370
+ name: "lwReceiveAbnormalModule",
371
+ props:{
372
+ // 订单号
373
+ asnNo: String,
374
+
375
+ // 所属类型
376
+ belongType: {
377
+ type: String,
378
+ default: '收货'
379
+ },
380
+
381
+ // 是否允许多条保存
382
+ multiple:{
383
+ type: Boolean,
384
+ default: true
385
+ },
386
+
387
+ // 商品信息是否禁用
388
+ skuDisabled:{
389
+ type: Boolean,
390
+ default: false
391
+ },
392
+
393
+ // 商品号
394
+ skuCode: String,
395
+
396
+ // 是否显示底部导航栏模块
397
+ showBottomBar:{
398
+ type: Boolean,
399
+ default: true
400
+ }
401
+ },
402
+ /*computed:{
403
+ moreDisabled(){
404
+ return !!Object.keys(this.asnData).length
405
+ }
406
+ },*/
407
+ data() {
408
+ return {
409
+ // 是否显示异常模块
410
+ show: false,
411
+
412
+ // 订单信息
413
+ asnData:{},
414
+
415
+ // 更多信息展开项
416
+ moreInfoCollapse:[],
417
+
418
+ // 异常子类型的选择项目
419
+ subTypeList:[],
420
+
421
+ // 货主的选择项目
422
+ ownerList:[],
423
+
424
+ // 更多信息
425
+ abnormalInfo:{
426
+ // ERP单号
427
+ erpOrderNo:'',
428
+ // 凭证号
429
+ evidenceNo:'',
430
+ // 订单号
431
+ orderNo:'',
432
+ // 供应商编码
433
+ supplierCode:'',
434
+ // 供应商名称
435
+ supplierName:'',
436
+ // 承运商编码
437
+ carrierCode:'',
438
+ // 承运商名称
439
+ carrierName:'',
440
+ // 车牌号
441
+ plateNumber:'',
442
+ // 外部业务单号
443
+ extBizNo:'',
444
+ // 外部业务单号2
445
+ extBizNo2:'',
446
+ // 外部业务单号3
447
+ extBizNo3:'',
448
+
449
+ /*// WMS 单据号
450
+ bizOrderNo:'',
451
+ // WMS 单据行号
452
+ bizOrderLineNo:'',*/
453
+ },
454
+
455
+ // 异常类型
456
+ abnormalType:{
457
+ // 所属类型
458
+ belongType:'RECEIVE',
459
+ // 作业环节
460
+ discoveryPoint:'',
461
+ // 异常类型
462
+ abnType:'',
463
+ // 异常子类型
464
+ abnSubType:'',
465
+ // 货主id
466
+ ownerId:'',
467
+ },
468
+
469
+ // 商品信息
470
+ skuInfo:{
471
+ skuCode:'',
472
+ // 当前扫描零件得到的零件基础信息
473
+ sku:{
474
+ skuName:''
475
+ },
476
+ abnQty:'',
477
+ abnLocationCode:'',
478
+ abnLpn:'',
479
+ handleMethod:'',
480
+ remark:'',
481
+ imagesArr:[],
482
+ },
483
+
484
+ // 零件信息获取焦点
485
+ skuInfoFocus:{
486
+ skuCode: false,
487
+ qty: false,
488
+ abnormalLocationCode: false,
489
+ },
490
+
491
+ // 批次组件
492
+ lot: {
493
+ show: false,
494
+ query: {}
495
+ },
496
+
497
+ // 是否显示增加按钮
498
+ showAddBtn: false,
499
+
500
+ // 用于储存多条商品信息
501
+ skuList:[],
502
+
503
+ }
504
+ },
505
+ watch:{
506
+ 'skuInfo.skuCode':{
507
+ handler(n){
508
+ // 如果零件信息为空就清除批次数据、零件数据
509
+ if (!n){
510
+ this.skuInfo.sku = {}
511
+ this.lot.show = false
512
+ this.lot.query = {}
513
+ }
514
+ }
515
+ }
516
+ },
517
+ mounted() {
518
+
519
+ this.init()
520
+
521
+ },
522
+ methods: {
523
+ // 初始化
524
+ async init(){
525
+ try{
526
+
527
+ // 获取货主信息
528
+ this.ownerList = await this.$lwApi.common.getOwnerList()
529
+ const asnData = await wmsMobileFoundAsn({
530
+ asnNo: this.asnNo
531
+ })
532
+
533
+ this.asnData = asnData || {}
534
+ this.abnormalInfo.orderNo = this.asnData.asnNo || ''
535
+ this.skuInfo.skuCode = this.skuCode || ''
536
+ this.abnormalInfo.extNo = this.asnData.erpOrderNo || ''
537
+ this.abnormalInfo.supplierCode = this.asnData.supplierCode || ''
538
+ this.abnormalInfo.supplierName = this.asnData.supplierName || ''
539
+ this.abnormalInfo.carrierCode = this.asnData.carrierCode || ''
540
+ this.abnormalInfo.carrierName = this.asnData.carrierName || ''
541
+ this.abnormalInfo.carrierPlateNum = this.asnData.plateNumber || ''
542
+ this.abnormalType.ownerId = this.asnData.ownerId || ''
543
+ /*this.abnormalInfo.bizOrderNo = this.asnData.bizOrderNo || ''
544
+ this.abnormalInfo.bizOrderLineNo = this.asnData.bizOrderLineNo || ''*/
545
+
546
+
547
+ // 是否存在商品数据,如果存在就获取商品信息
548
+ if (this.skuInfo.skuCode){
549
+
550
+ await this.skuCodeConfirm(true)
551
+ }
552
+
553
+ this.show = true
554
+
555
+ }catch (err){
556
+ console.error('收货异常模块初始化失败:', err)
557
+ }
558
+ },
559
+
560
+ // 异常类型确认
561
+ typeConfirm({value}){
562
+
563
+ // 判断异常类型是否变化,变化了就要改子类型的值
564
+ if (!value || value !== this.abnormalType.abnSubType.split('_')[0]){
565
+ this.abnormalType.abnSubType = ''
566
+ const subType = this.$lwDict.get('abnormal_sub_type_choice')
567
+ this.subTypeList = subType.filter(item=>item.value.split('_')[0] === value)
568
+ }
569
+ },
570
+ // 异常类型清空
571
+ typeClear(){
572
+ this.abnormalType.abnSubType = ''
573
+ this.subTypeList = []
574
+ },
575
+
576
+ // 商品号确认
577
+ async skuCodeConfirm(first = false){
578
+ if (!this.skuInfo.skuCode){
579
+ this.skuInfoFocus.skuCode = true
580
+ this.$lwShowErrorMsg(
581
+ this.$lwLanguage.get('wms_project.pda.module.receiveAbn.skuNull','商品号不能为空')
582
+ )
583
+ this.skuInfo.skuCode = ''
584
+ return
585
+ }
586
+
587
+ if (!this.abnormalType.ownerId){
588
+ this.$lwShowErrorMsg(
589
+ this.$lwLanguage.get('wms_project.pda.module.receiveAbn.selectWoner','请选择货主')
590
+ )
591
+ return
592
+ }
593
+
594
+ let query = {
595
+ skuCode: this.skuInfo.skuCode
596
+ }
597
+
598
+ if (this.asnData.ownerId){
599
+ query.asnId = this.asnData.id
600
+ }else {
601
+ query.ownerId = this.abnormalType.ownerId
602
+ }
603
+
604
+ const res = await wmsMobileFoundAsnLineSku(query)
605
+
606
+ this.skuInfo.sku = {
607
+ ...res,
608
+ skuCode: res.sku.code,
609
+ skuName: res.sku.name,
610
+ skuOwner: res.sku.owner,
611
+ skuId: res.sku.id,
612
+ }
613
+
614
+ this.lot.query = {
615
+ type:1,
616
+ lotType:'inventory',
617
+ lotRuleId:'',
618
+ editable:true,
619
+ needHandleRequire:true,
620
+ ownerId:this.skuInfo.sku.ownerId,
621
+ skuId:this.skuInfo.sku.skuId,
622
+ header: this.asnData.map,
623
+ line: this.skuInfo.sku.map,
624
+ }
625
+
626
+ this.lot.show = true
627
+ !first ? this.skuInfoFocus.qty = true : ''
628
+ },
629
+
630
+ // 储存单条异常信息
631
+ formatAbnSkuData(){
632
+ let skuData = this.$lwDeepCopy(this.skuInfo)
633
+
634
+ if (this.lot.show){
635
+ const {success, data} = this.$refs.lot.getData()
636
+
637
+ if (!success) return;
638
+
639
+ skuData.lotAttributes = data
640
+ }
641
+
642
+ return {
643
+ ...skuData,
644
+ skuId: skuData.sku.sku.id,
645
+ abnImg: this.skuInfo.imagesArr.join('|')
646
+ }
647
+ },
648
+
649
+ // 保存商品信息按钮
650
+ saveSku(){
651
+ // 校验作业环节
652
+ if (!this.abnormalType.discoveryPoint){
653
+ this.$lwShowErrorMsg(
654
+ this.$lwLanguage.get('wms_project.pda.module.receiveAbn.discoveryPointNull','作业环节不能为空')
655
+ )
656
+ return false
657
+ }
658
+
659
+ // 校验异常类型
660
+ if (!this.abnormalType.abnType){
661
+ this.$lwShowErrorMsg(
662
+ this.$lwLanguage.get('wms_project.pda.module.receiveAbn.abnTypeNull','异常类型不能为空')
663
+ )
664
+ return false
665
+ }
666
+
667
+ // 异常子类型
668
+ if (!this.abnormalType.abnSubType){
669
+ this.$lwShowErrorMsg(
670
+ this.$lwLanguage.get('wms_project.pda.module.receiveAbn.abnSubTypeNull','异常子类型不能为空')
671
+ )
672
+ return false
673
+ }
674
+
675
+ // 货主
676
+ if (!this.abnormalType.ownerId){
677
+ this.$lwShowErrorMsg(
678
+ this.$lwLanguage.get('wms_project.pda.module.receiveAbn.ownerNull','货主不能为空')
679
+ )
680
+ return false
681
+ }
682
+
683
+ // 校验是否输入商品
684
+ if (!this.skuInfo.skuCode){
685
+
686
+ this.skuInfoFocus.skuCode = true
687
+ this.$lwShowErrorMsg(
688
+ this.$lwLanguage.get('wms_project.pda.module.receiveAbn.skuInfoNull','商品信息不能为空')
689
+ )
690
+ return false
691
+ }
692
+
693
+ // 校验商品信息是否被修改
694
+ if (this.skuInfo.skuCode !== this.skuInfo.sku.skuCode){
695
+ this.skuInfoFocus.skuCode = true
696
+ this.$lwShowErrorMsg(
697
+ this.$lwLanguage.get('wms_project.pda.module.receiveAbn.skuError','当前输入商品与已获取的商品信息不一致!请点击商品输入框的确认按钮,重新获取当前输入的商品信息!')
698
+ )
699
+ return false
700
+ }
701
+
702
+ // 校验当前商品货主是否符合已选货主
703
+ if (this.skuInfo.sku.skuOwner !== this.abnormalType.ownerId){
704
+ this.skuInfoFocus.skuCode = true
705
+ this.$lwShowErrorMsg(
706
+ this.$lwLanguage.get('wms_project.pda.module.receiveAbn.ownerError','所选货主与当前商品所属货主不一致')
707
+ )
708
+ return false
709
+ }
710
+
711
+ // 校验是否输入异常量
712
+ if (!this.skuInfo.abnQty){
713
+
714
+ this.skuInfoFocus.qty = true
715
+ this.$lwShowErrorMsg(
716
+ this.$lwLanguage.get('wms_project.pda.module.receiveAbn.qtyNull','异常量不能为空且应当时大于0的整数')
717
+ )
718
+ return false
719
+ }
720
+
721
+ // 校验异常量是否大于商品可用量
722
+ /*if (this.skuInfo.abnQty > this.skuInfo.sku.qty){
723
+ this.skuInfoFocus.qty = true
724
+ this.$lwShowErrorMsg(
725
+ this.$lwLanguage.get('wms_project.pda.module.receiveAbn.qtyMore','异常量不能大于商品可用量')
726
+ )
727
+ return false
728
+ }*/
729
+
730
+ // 校验是否输入异常库位
731
+ if (!this.skuInfo.abnLocationCode){
732
+
733
+ this.skuInfoFocus.abnormalLocationCode = true
734
+ this.$lwShowErrorMsg(
735
+ this.$lwLanguage.get('wms_project.pda.module.receiveAbn.localNull','异常库位不能为空')
736
+ )
737
+ return false
738
+ }
739
+
740
+ // 是否是多条保存
741
+ if (this.multiple){
742
+
743
+ this.skuList.push(this.formatAbnSkuData())
744
+
745
+ // 让所有输入框失去焦点
746
+ for (let i in this.skuInfoFocus){
747
+ this.skuInfoFocus[i] = false
748
+ }
749
+
750
+ // 清空商品信息数据
751
+ for (let i in this.skuInfo){
752
+ if(i === 'sku'){
753
+ this.skuInfo[i] = {}
754
+ continue
755
+ }
756
+ if(i === 'imagesArr'){
757
+ this.skuInfo[i] = []
758
+ continue
759
+ }
760
+
761
+ this.skuInfo[i] = ''
762
+ }
763
+
764
+ this.showAddBtn = true
765
+ }
766
+
767
+ return true
768
+ },
769
+
770
+ // 增加零件信息按钮被点击
771
+ addSku(){
772
+ this.showAddBtn = false
773
+ this.skuInfoFocus.skuCode = true
774
+ },
775
+
776
+ // 删除零件按钮被点击
777
+ delSku(index){
778
+ this.$dialog.confirm({
779
+ title: this.$lwLanguage.get('wms_project.pda.module.receiveAbn.warning','警告'),
780
+ message: this.$lwLanguage.get('wms_project.pda.module.receiveAbn.del','确认删除该商品?')
781
+ }).then(()=>{
782
+ this.skuList.splice(index, 1)
783
+ }).catch(()=>{})
784
+ },
785
+
786
+ // 获取当前异常模块的数据
787
+ getAbnormalData(){
788
+ // 校验是否允许多条保存
789
+ if (this.multiple){
790
+
791
+ // 多条保存是否有数据
792
+ if (this.skuList.length){
793
+ return {
794
+ success: true,
795
+ data: this.skuList
796
+ }
797
+ }
798
+
799
+ // 没有数据就报错
800
+ this.$lwShowErrorMsg(
801
+ this.$lwLanguage.get('wms_project.pda.module.receiveAbn.skuListNull','没有保存任何商品信息,请先点击商品信息的保存按钮,保存录入的信息')
802
+ )
803
+ return {
804
+ success: false,
805
+ data: []
806
+ }
807
+ }
808
+
809
+ // 如果是单条数据就触发保存按钮
810
+ if (this.saveSku()){
811
+ return {
812
+ success: true,
813
+ data: [this.formatAbnSkuData()]
814
+ }
815
+ }
816
+
817
+ // 否则报错
818
+ return {
819
+ success: false,
820
+ data: []
821
+ }
822
+ },
823
+
824
+ // 确认上报
825
+ confirm(){
826
+ const {success, data} = this.getAbnormalData()
827
+
828
+ if (!success) return
829
+
830
+ wmsMobileSubmitAbnormalReceive({
831
+ order: this.abnormalInfo,
832
+ lines: data,
833
+ ...this.abnormalType,
834
+ asnId: this.asnData.id
835
+ }).then(()=>{
836
+ this.$lwToast.success(
837
+ this.$lwLanguage.get('wms_project.pda.module.receiveAbn.abnSuccess','异常上报成功')
838
+ )
839
+
840
+ this.$emit('success')
841
+ })
842
+ }
843
+ }
844
+ }
845
+ </script>
846
+
847
+ <style scoped lang="less">
848
+
849
+
850
+ .lw-receive-abnormal-boss{
851
+
852
+ >.lw-input-box{
853
+
854
+ &:first-child{
855
+ padding-top: 0;
856
+ }
857
+
858
+ &:last-child{
859
+ padding-bottom: 0;
860
+ border-bottom: none;
861
+ }
862
+ }
863
+ }
864
+
865
+ </style>