@things-factory/sales-base 4.3.651 → 4.3.652

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 (430) hide show
  1. package/dist-server/constants/attachment-type.js +15 -0
  2. package/dist-server/constants/attachment-type.js.map +1 -0
  3. package/dist-server/constants/index.js +24 -0
  4. package/dist-server/constants/index.js.map +1 -0
  5. package/dist-server/constants/load-type.js +8 -0
  6. package/dist-server/constants/load-type.js.map +1 -0
  7. package/dist-server/constants/order.js +235 -0
  8. package/dist-server/constants/order.js.map +1 -0
  9. package/dist-server/constants/product-group-type.js +8 -0
  10. package/dist-server/constants/product-group-type.js.map +1 -0
  11. package/dist-server/constants/release-good.js +13 -0
  12. package/dist-server/constants/release-good.js.map +1 -0
  13. package/dist-server/constants/transfer-order-type.js +9 -0
  14. package/dist-server/constants/transfer-order-type.js.map +1 -0
  15. package/dist-server/constants/validation-error-code.js +7 -0
  16. package/dist-server/constants/validation-error-code.js.map +1 -0
  17. package/dist-server/constants/vas-target-type.js +26 -0
  18. package/dist-server/constants/vas-target-type.js.map +1 -0
  19. package/dist-server/controllers/ecommerce/ecommerce-controller.js +138 -0
  20. package/dist-server/controllers/ecommerce/ecommerce-controller.js.map +1 -0
  21. package/dist-server/controllers/ecommerce/index.js +21 -0
  22. package/dist-server/controllers/ecommerce/index.js.map +1 -0
  23. package/dist-server/controllers/ecommerce/powrup-controller.js +690 -0
  24. package/dist-server/controllers/ecommerce/powrup-controller.js.map +1 -0
  25. package/dist-server/controllers/ecommerce/sellercraft-controller.js +148 -0
  26. package/dist-server/controllers/ecommerce/sellercraft-controller.js.map +1 -0
  27. package/dist-server/controllers/ecommerce/webspert-controller.js +237 -0
  28. package/dist-server/controllers/ecommerce/webspert-controller.js.map +1 -0
  29. package/dist-server/controllers/index.js +19 -0
  30. package/dist-server/controllers/index.js.map +1 -0
  31. package/dist-server/controllers/order-controller.js +244 -0
  32. package/dist-server/controllers/order-controller.js.map +1 -0
  33. package/dist-server/errors/index.js +18 -0
  34. package/dist-server/errors/index.js.map +1 -0
  35. package/dist-server/errors/validation-error.js +41 -0
  36. package/dist-server/errors/validation-error.js.map +1 -0
  37. package/dist-server/index.js +30 -0
  38. package/dist-server/index.js.map +1 -0
  39. package/dist-server/migrations/index.js +12 -0
  40. package/dist-server/migrations/index.js.map +1 -0
  41. package/dist-server/service/arrival-notice/arrival-notice-mutation.js +1085 -0
  42. package/dist-server/service/arrival-notice/arrival-notice-mutation.js.map +1 -0
  43. package/dist-server/service/arrival-notice/arrival-notice-query.js +634 -0
  44. package/dist-server/service/arrival-notice/arrival-notice-query.js.map +1 -0
  45. package/dist-server/service/arrival-notice/arrival-notice-types.js +443 -0
  46. package/dist-server/service/arrival-notice/arrival-notice-types.js.map +1 -0
  47. package/dist-server/service/arrival-notice/arrival-notice.js +259 -0
  48. package/dist-server/service/arrival-notice/arrival-notice.js.map +1 -0
  49. package/dist-server/service/arrival-notice/index.js +25 -0
  50. package/dist-server/service/arrival-notice/index.js.map +1 -0
  51. package/dist-server/service/claim/claim-mutation.js +243 -0
  52. package/dist-server/service/claim/claim-mutation.js.map +1 -0
  53. package/dist-server/service/claim/claim-query.js +165 -0
  54. package/dist-server/service/claim/claim-query.js.map +1 -0
  55. package/dist-server/service/claim/claim-types.js +191 -0
  56. package/dist-server/service/claim/claim-types.js.map +1 -0
  57. package/dist-server/service/claim/claim.js +176 -0
  58. package/dist-server/service/claim/claim.js.map +1 -0
  59. package/dist-server/service/claim/index.js +25 -0
  60. package/dist-server/service/claim/index.js.map +1 -0
  61. package/dist-server/service/claim-detail/claim-detail-mutation.js +110 -0
  62. package/dist-server/service/claim-detail/claim-detail-mutation.js.map +1 -0
  63. package/dist-server/service/claim-detail/claim-detail-query.js +90 -0
  64. package/dist-server/service/claim-detail/claim-detail-query.js.map +1 -0
  65. package/dist-server/service/claim-detail/claim-detail-types.js +81 -0
  66. package/dist-server/service/claim-detail/claim-detail-types.js.map +1 -0
  67. package/dist-server/service/claim-detail/claim-detail.js +102 -0
  68. package/dist-server/service/claim-detail/claim-detail.js.map +1 -0
  69. package/dist-server/service/claim-detail/index.js +25 -0
  70. package/dist-server/service/claim-detail/index.js.map +1 -0
  71. package/dist-server/service/claim-order/claim-order-mutation.js +110 -0
  72. package/dist-server/service/claim-order/claim-order-mutation.js.map +1 -0
  73. package/dist-server/service/claim-order/claim-order-query.js +86 -0
  74. package/dist-server/service/claim-order/claim-order-query.js.map +1 -0
  75. package/dist-server/service/claim-order/claim-order-types.js +65 -0
  76. package/dist-server/service/claim-order/claim-order-types.js.map +1 -0
  77. package/dist-server/service/claim-order/claim-order.js +104 -0
  78. package/dist-server/service/claim-order/claim-order.js.map +1 -0
  79. package/dist-server/service/claim-order/index.js +25 -0
  80. package/dist-server/service/claim-order/index.js.map +1 -0
  81. package/dist-server/service/collection-order/collection-order-mutation.js +241 -0
  82. package/dist-server/service/collection-order/collection-order-mutation.js.map +1 -0
  83. package/dist-server/service/collection-order/collection-order-query.js +125 -0
  84. package/dist-server/service/collection-order/collection-order-query.js.map +1 -0
  85. package/dist-server/service/collection-order/collection-order-types.js +241 -0
  86. package/dist-server/service/collection-order/collection-order-types.js.map +1 -0
  87. package/dist-server/service/collection-order/collection-order.js +183 -0
  88. package/dist-server/service/collection-order/collection-order.js.map +1 -0
  89. package/dist-server/service/collection-order/index.js +25 -0
  90. package/dist-server/service/collection-order/index.js.map +1 -0
  91. package/dist-server/service/delivery-order/delivery-order-mutation.js +746 -0
  92. package/dist-server/service/delivery-order/delivery-order-mutation.js.map +1 -0
  93. package/dist-server/service/delivery-order/delivery-order-query.js +570 -0
  94. package/dist-server/service/delivery-order/delivery-order-query.js.map +1 -0
  95. package/dist-server/service/delivery-order/delivery-order-types.js +397 -0
  96. package/dist-server/service/delivery-order/delivery-order-types.js.map +1 -0
  97. package/dist-server/service/delivery-order/delivery-order.js +365 -0
  98. package/dist-server/service/delivery-order/delivery-order.js.map +1 -0
  99. package/dist-server/service/delivery-order/index.js +25 -0
  100. package/dist-server/service/delivery-order/index.js.map +1 -0
  101. package/dist-server/service/draft-release-good/draft-release-good-create.js +647 -0
  102. package/dist-server/service/draft-release-good/draft-release-good-create.js.map +1 -0
  103. package/dist-server/service/draft-release-good/draft-release-good-mutation.js +486 -0
  104. package/dist-server/service/draft-release-good/draft-release-good-mutation.js.map +1 -0
  105. package/dist-server/service/draft-release-good/draft-release-good-query.js +366 -0
  106. package/dist-server/service/draft-release-good/draft-release-good-query.js.map +1 -0
  107. package/dist-server/service/draft-release-good/draft-release-good-type.js +424 -0
  108. package/dist-server/service/draft-release-good/draft-release-good-type.js.map +1 -0
  109. package/dist-server/service/draft-release-good/draft-release-good.js +444 -0
  110. package/dist-server/service/draft-release-good/draft-release-good.js.map +1 -0
  111. package/dist-server/service/draft-release-good/index.js +29 -0
  112. package/dist-server/service/draft-release-good/index.js.map +1 -0
  113. package/dist-server/service/goods-receival-note/goods-receival-note-mutation.js +140 -0
  114. package/dist-server/service/goods-receival-note/goods-receival-note-mutation.js.map +1 -0
  115. package/dist-server/service/goods-receival-note/goods-receival-note-query.js +273 -0
  116. package/dist-server/service/goods-receival-note/goods-receival-note-query.js.map +1 -0
  117. package/dist-server/service/goods-receival-note/goods-receival-note-types.js +159 -0
  118. package/dist-server/service/goods-receival-note/goods-receival-note-types.js.map +1 -0
  119. package/dist-server/service/goods-receival-note/goods-receival-note.js +156 -0
  120. package/dist-server/service/goods-receival-note/goods-receival-note.js.map +1 -0
  121. package/dist-server/service/goods-receival-note/index.js +25 -0
  122. package/dist-server/service/goods-receival-note/index.js.map +1 -0
  123. package/dist-server/service/index.js +282 -0
  124. package/dist-server/service/index.js.map +1 -0
  125. package/dist-server/service/inventory-check/index.js +25 -0
  126. package/dist-server/service/inventory-check/index.js.map +1 -0
  127. package/dist-server/service/inventory-check/inventory-check-mutation.js +151 -0
  128. package/dist-server/service/inventory-check/inventory-check-mutation.js.map +1 -0
  129. package/dist-server/service/inventory-check/inventory-check-query.js +138 -0
  130. package/dist-server/service/inventory-check/inventory-check-query.js.map +1 -0
  131. package/dist-server/service/inventory-check/inventory-check-types.js +82 -0
  132. package/dist-server/service/inventory-check/inventory-check-types.js.map +1 -0
  133. package/dist-server/service/inventory-check/inventory-check.js +115 -0
  134. package/dist-server/service/inventory-check/inventory-check.js.map +1 -0
  135. package/dist-server/service/inventory-check-item/index.js +25 -0
  136. package/dist-server/service/inventory-check-item/index.js.map +1 -0
  137. package/dist-server/service/inventory-check-item/inventory-check-item-mutation.js +120 -0
  138. package/dist-server/service/inventory-check-item/inventory-check-item-mutation.js.map +1 -0
  139. package/dist-server/service/inventory-check-item/inventory-check-item-query.js +196 -0
  140. package/dist-server/service/inventory-check-item/inventory-check-item-query.js.map +1 -0
  141. package/dist-server/service/inventory-check-item/inventory-check-item-types.js +157 -0
  142. package/dist-server/service/inventory-check-item/inventory-check-item-types.js.map +1 -0
  143. package/dist-server/service/inventory-check-item/inventory-check-item.js +273 -0
  144. package/dist-server/service/inventory-check-item/inventory-check-item.js.map +1 -0
  145. package/dist-server/service/invoice/index.js +25 -0
  146. package/dist-server/service/invoice/index.js.map +1 -0
  147. package/dist-server/service/invoice/invoice-mutation.js +105 -0
  148. package/dist-server/service/invoice/invoice-mutation.js.map +1 -0
  149. package/dist-server/service/invoice/invoice-query.js +94 -0
  150. package/dist-server/service/invoice/invoice-query.js.map +1 -0
  151. package/dist-server/service/invoice/invoice-types.js +388 -0
  152. package/dist-server/service/invoice/invoice-types.js.map +1 -0
  153. package/dist-server/service/invoice/invoice.js +312 -0
  154. package/dist-server/service/invoice/invoice.js.map +1 -0
  155. package/dist-server/service/invoice-product/index.js +25 -0
  156. package/dist-server/service/invoice-product/index.js.map +1 -0
  157. package/dist-server/service/invoice-product/invoice-product-mutation.js +70 -0
  158. package/dist-server/service/invoice-product/invoice-product-mutation.js.map +1 -0
  159. package/dist-server/service/invoice-product/invoice-product-query.js +95 -0
  160. package/dist-server/service/invoice-product/invoice-product-query.js.map +1 -0
  161. package/dist-server/service/invoice-product/invoice-product-types.js +131 -0
  162. package/dist-server/service/invoice-product/invoice-product-types.js.map +1 -0
  163. package/dist-server/service/invoice-product/invoice-product.js +130 -0
  164. package/dist-server/service/invoice-product/invoice-product.js.map +1 -0
  165. package/dist-server/service/job-sheet/index.js +25 -0
  166. package/dist-server/service/job-sheet/index.js.map +1 -0
  167. package/dist-server/service/job-sheet/job-sheet-mutation.js +93 -0
  168. package/dist-server/service/job-sheet/job-sheet-mutation.js.map +1 -0
  169. package/dist-server/service/job-sheet/job-sheet-query.js +134 -0
  170. package/dist-server/service/job-sheet/job-sheet-query.js.map +1 -0
  171. package/dist-server/service/job-sheet/job-sheet-types.js +113 -0
  172. package/dist-server/service/job-sheet/job-sheet-types.js.map +1 -0
  173. package/dist-server/service/job-sheet/job-sheet.js +132 -0
  174. package/dist-server/service/job-sheet/job-sheet.js.map +1 -0
  175. package/dist-server/service/manifest/index.js +9 -0
  176. package/dist-server/service/manifest/index.js.map +1 -0
  177. package/dist-server/service/manifest/manifest-mutation.js +264 -0
  178. package/dist-server/service/manifest/manifest-mutation.js.map +1 -0
  179. package/dist-server/service/manifest/manifest-query.js +228 -0
  180. package/dist-server/service/manifest/manifest-query.js.map +1 -0
  181. package/dist-server/service/manifest/manifest-type.js +183 -0
  182. package/dist-server/service/manifest/manifest-type.js.map +1 -0
  183. package/dist-server/service/manifest/manifest.js +134 -0
  184. package/dist-server/service/manifest/manifest.js.map +1 -0
  185. package/dist-server/service/order-consignment/index.js +9 -0
  186. package/dist-server/service/order-consignment/index.js.map +1 -0
  187. package/dist-server/service/order-consignment/order-consignment-mutation.js +120 -0
  188. package/dist-server/service/order-consignment/order-consignment-mutation.js.map +1 -0
  189. package/dist-server/service/order-consignment/order-consignment-query.js +87 -0
  190. package/dist-server/service/order-consignment/order-consignment-query.js.map +1 -0
  191. package/dist-server/service/order-consignment/order-consignment-type.js +69 -0
  192. package/dist-server/service/order-consignment/order-consignment-type.js.map +1 -0
  193. package/dist-server/service/order-consignment/order-consignment.js +115 -0
  194. package/dist-server/service/order-consignment/order-consignment.js.map +1 -0
  195. package/dist-server/service/order-inventory/index.js +25 -0
  196. package/dist-server/service/order-inventory/index.js.map +1 -0
  197. package/dist-server/service/order-inventory/order-inventory-mutation.js +80 -0
  198. package/dist-server/service/order-inventory/order-inventory-mutation.js.map +1 -0
  199. package/dist-server/service/order-inventory/order-inventory-query.js +592 -0
  200. package/dist-server/service/order-inventory/order-inventory-query.js.map +1 -0
  201. package/dist-server/service/order-inventory/order-inventory-types.js +341 -0
  202. package/dist-server/service/order-inventory/order-inventory-types.js.map +1 -0
  203. package/dist-server/service/order-inventory/order-inventory.js +785 -0
  204. package/dist-server/service/order-inventory/order-inventory.js.map +1 -0
  205. package/dist-server/service/order-package/index.js +9 -0
  206. package/dist-server/service/order-package/index.js.map +1 -0
  207. package/dist-server/service/order-package/order-package-mutation.js +120 -0
  208. package/dist-server/service/order-package/order-package-mutation.js.map +1 -0
  209. package/dist-server/service/order-package/order-package-query.js +142 -0
  210. package/dist-server/service/order-package/order-package-query.js.map +1 -0
  211. package/dist-server/service/order-package/order-package-types.js +113 -0
  212. package/dist-server/service/order-package/order-package-types.js.map +1 -0
  213. package/dist-server/service/order-package/order-package.js +229 -0
  214. package/dist-server/service/order-package/order-package.js.map +1 -0
  215. package/dist-server/service/order-package-item/index.js +9 -0
  216. package/dist-server/service/order-package-item/index.js.map +1 -0
  217. package/dist-server/service/order-package-item/order-package-item-mutation.js +120 -0
  218. package/dist-server/service/order-package-item/order-package-item-mutation.js.map +1 -0
  219. package/dist-server/service/order-package-item/order-package-item-query.js +127 -0
  220. package/dist-server/service/order-package-item/order-package-item-query.js.map +1 -0
  221. package/dist-server/service/order-package-item/order-package-item-types.js +99 -0
  222. package/dist-server/service/order-package-item/order-package-item-types.js.map +1 -0
  223. package/dist-server/service/order-package-item/order-package-item.js +162 -0
  224. package/dist-server/service/order-package-item/order-package-item.js.map +1 -0
  225. package/dist-server/service/order-product/index.js +25 -0
  226. package/dist-server/service/order-product/index.js.map +1 -0
  227. package/dist-server/service/order-product/order-product-mutation.js +74 -0
  228. package/dist-server/service/order-product/order-product-mutation.js.map +1 -0
  229. package/dist-server/service/order-product/order-product-query.js +125 -0
  230. package/dist-server/service/order-product/order-product-query.js.map +1 -0
  231. package/dist-server/service/order-product/order-product-types.js +489 -0
  232. package/dist-server/service/order-product/order-product-types.js.map +1 -0
  233. package/dist-server/service/order-product/order-product.js +559 -0
  234. package/dist-server/service/order-product/order-product.js.map +1 -0
  235. package/dist-server/service/order-tote/index.js +25 -0
  236. package/dist-server/service/order-tote/index.js.map +1 -0
  237. package/dist-server/service/order-tote/order-tote-mutation.js +56 -0
  238. package/dist-server/service/order-tote/order-tote-mutation.js.map +1 -0
  239. package/dist-server/service/order-tote/order-tote-query.js +123 -0
  240. package/dist-server/service/order-tote/order-tote-query.js.map +1 -0
  241. package/dist-server/service/order-tote/order-tote-types.js +79 -0
  242. package/dist-server/service/order-tote/order-tote-types.js.map +1 -0
  243. package/dist-server/service/order-tote/order-tote.js +92 -0
  244. package/dist-server/service/order-tote/order-tote.js.map +1 -0
  245. package/dist-server/service/order-tote-item/index.js +25 -0
  246. package/dist-server/service/order-tote-item/index.js.map +1 -0
  247. package/dist-server/service/order-tote-item/order-tote-item-mutation.js +56 -0
  248. package/dist-server/service/order-tote-item/order-tote-item-mutation.js.map +1 -0
  249. package/dist-server/service/order-tote-item/order-tote-item-query.js +100 -0
  250. package/dist-server/service/order-tote-item/order-tote-item-query.js.map +1 -0
  251. package/dist-server/service/order-tote-item/order-tote-item-types.js +91 -0
  252. package/dist-server/service/order-tote-item/order-tote-item-types.js.map +1 -0
  253. package/dist-server/service/order-tote-item/order-tote-item.js +118 -0
  254. package/dist-server/service/order-tote-item/order-tote-item.js.map +1 -0
  255. package/dist-server/service/order-tote-seal/index.js +25 -0
  256. package/dist-server/service/order-tote-seal/index.js.map +1 -0
  257. package/dist-server/service/order-tote-seal/order-tote-seal-mutation.js +56 -0
  258. package/dist-server/service/order-tote-seal/order-tote-seal-mutation.js.map +1 -0
  259. package/dist-server/service/order-tote-seal/order-tote-seal-query.js +97 -0
  260. package/dist-server/service/order-tote-seal/order-tote-seal-query.js.map +1 -0
  261. package/dist-server/service/order-tote-seal/order-tote-seal-types.js +71 -0
  262. package/dist-server/service/order-tote-seal/order-tote-seal-types.js.map +1 -0
  263. package/dist-server/service/order-tote-seal/order-tote-seal.js +71 -0
  264. package/dist-server/service/order-tote-seal/order-tote-seal.js.map +1 -0
  265. package/dist-server/service/order-vas/index.js +25 -0
  266. package/dist-server/service/order-vas/index.js.map +1 -0
  267. package/dist-server/service/order-vas/order-vas-mutation.js +148 -0
  268. package/dist-server/service/order-vas/order-vas-mutation.js.map +1 -0
  269. package/dist-server/service/order-vas/order-vas-query.js +148 -0
  270. package/dist-server/service/order-vas/order-vas-query.js.map +1 -0
  271. package/dist-server/service/order-vas/order-vas-types.js +348 -0
  272. package/dist-server/service/order-vas/order-vas-types.js.map +1 -0
  273. package/dist-server/service/order-vas/order-vas.js +476 -0
  274. package/dist-server/service/order-vas/order-vas.js.map +1 -0
  275. package/dist-server/service/order-vas-item/index.js +9 -0
  276. package/dist-server/service/order-vas-item/index.js.map +1 -0
  277. package/dist-server/service/order-vas-item/order-vas-item-mutation.js +164 -0
  278. package/dist-server/service/order-vas-item/order-vas-item-mutation.js.map +1 -0
  279. package/dist-server/service/order-vas-item/order-vas-item-query.js +99 -0
  280. package/dist-server/service/order-vas-item/order-vas-item-query.js.map +1 -0
  281. package/dist-server/service/order-vas-item/order-vas-item-type.js +131 -0
  282. package/dist-server/service/order-vas-item/order-vas-item-type.js.map +1 -0
  283. package/dist-server/service/order-vas-item/order-vas-item.js +166 -0
  284. package/dist-server/service/order-vas-item/order-vas-item.js.map +1 -0
  285. package/dist-server/service/others/index.js +21 -0
  286. package/dist-server/service/others/index.js.map +1 -0
  287. package/dist-server/service/others/other-query.js +536 -0
  288. package/dist-server/service/others/other-query.js.map +1 -0
  289. package/dist-server/service/others/other-types.js +181 -0
  290. package/dist-server/service/others/other-types.js.map +1 -0
  291. package/dist-server/service/purchase-order/index.js +25 -0
  292. package/dist-server/service/purchase-order/index.js.map +1 -0
  293. package/dist-server/service/purchase-order/purchase-order-mutation.js +398 -0
  294. package/dist-server/service/purchase-order/purchase-order-mutation.js.map +1 -0
  295. package/dist-server/service/purchase-order/purchase-order-query.js +126 -0
  296. package/dist-server/service/purchase-order/purchase-order-query.js.map +1 -0
  297. package/dist-server/service/purchase-order/purchase-order-types.js +240 -0
  298. package/dist-server/service/purchase-order/purchase-order-types.js.map +1 -0
  299. package/dist-server/service/purchase-order/purchase-order.js +236 -0
  300. package/dist-server/service/purchase-order/purchase-order.js.map +1 -0
  301. package/dist-server/service/purchase-order-other-charge/index.js +25 -0
  302. package/dist-server/service/purchase-order-other-charge/index.js.map +1 -0
  303. package/dist-server/service/purchase-order-other-charge/purchase-order-other-charge-mutation.js +56 -0
  304. package/dist-server/service/purchase-order-other-charge/purchase-order-other-charge-mutation.js.map +1 -0
  305. package/dist-server/service/purchase-order-other-charge/purchase-order-other-charge-query.js +87 -0
  306. package/dist-server/service/purchase-order-other-charge/purchase-order-other-charge-query.js.map +1 -0
  307. package/dist-server/service/purchase-order-other-charge/purchase-order-other-charge-types.js +77 -0
  308. package/dist-server/service/purchase-order-other-charge/purchase-order-other-charge-types.js.map +1 -0
  309. package/dist-server/service/purchase-order-other-charge/purchase-order-other-charge.js +101 -0
  310. package/dist-server/service/purchase-order-other-charge/purchase-order-other-charge.js.map +1 -0
  311. package/dist-server/service/release-good/index.js +25 -0
  312. package/dist-server/service/release-good/index.js.map +1 -0
  313. package/dist-server/service/release-good/release-good-mutation.js +1598 -0
  314. package/dist-server/service/release-good/release-good-mutation.js.map +1 -0
  315. package/dist-server/service/release-good/release-good-query.js +1131 -0
  316. package/dist-server/service/release-good/release-good-query.js.map +1 -0
  317. package/dist-server/service/release-good/release-good-types.js +1043 -0
  318. package/dist-server/service/release-good/release-good-types.js.map +1 -0
  319. package/dist-server/service/release-good/release-good.js +817 -0
  320. package/dist-server/service/release-good/release-good.js.map +1 -0
  321. package/dist-server/service/release-good-logs/index.js +11 -0
  322. package/dist-server/service/release-good-logs/index.js.map +1 -0
  323. package/dist-server/service/release-good-logs/release-good-logs-mutation.js +126 -0
  324. package/dist-server/service/release-good-logs/release-good-logs-mutation.js.map +1 -0
  325. package/dist-server/service/release-good-logs/release-good-logs-query.js +71 -0
  326. package/dist-server/service/release-good-logs/release-good-logs-query.js.map +1 -0
  327. package/dist-server/service/release-good-logs/release-good-logs-type.js +65 -0
  328. package/dist-server/service/release-good-logs/release-good-logs-type.js.map +1 -0
  329. package/dist-server/service/release-good-logs/release-good-logs.js +96 -0
  330. package/dist-server/service/release-good-logs/release-good-logs.js.map +1 -0
  331. package/dist-server/service/replenishment/index.js +9 -0
  332. package/dist-server/service/replenishment/index.js.map +1 -0
  333. package/dist-server/service/replenishment/replenishment-mutation.js +234 -0
  334. package/dist-server/service/replenishment/replenishment-mutation.js.map +1 -0
  335. package/dist-server/service/replenishment/replenishment-query.js +185 -0
  336. package/dist-server/service/replenishment/replenishment-query.js.map +1 -0
  337. package/dist-server/service/replenishment/replenishment-type.js +119 -0
  338. package/dist-server/service/replenishment/replenishment-type.js.map +1 -0
  339. package/dist-server/service/replenishment/replenishment.js +114 -0
  340. package/dist-server/service/replenishment/replenishment.js.map +1 -0
  341. package/dist-server/service/retail-replenishment-order/index.js +25 -0
  342. package/dist-server/service/retail-replenishment-order/index.js.map +1 -0
  343. package/dist-server/service/retail-replenishment-order/retail-replenishment-order-mutation.js +314 -0
  344. package/dist-server/service/retail-replenishment-order/retail-replenishment-order-mutation.js.map +1 -0
  345. package/dist-server/service/retail-replenishment-order/retail-replenishment-order-query.js +89 -0
  346. package/dist-server/service/retail-replenishment-order/retail-replenishment-order-query.js.map +1 -0
  347. package/dist-server/service/retail-replenishment-order/retail-replenishment-order-types.js +148 -0
  348. package/dist-server/service/retail-replenishment-order/retail-replenishment-order-types.js.map +1 -0
  349. package/dist-server/service/retail-replenishment-order/retail-replenishment-order.js +141 -0
  350. package/dist-server/service/retail-replenishment-order/retail-replenishment-order.js.map +1 -0
  351. package/dist-server/service/return-order/index.js +25 -0
  352. package/dist-server/service/return-order/index.js.map +1 -0
  353. package/dist-server/service/return-order/return-order-mutation.js +451 -0
  354. package/dist-server/service/return-order/return-order-mutation.js.map +1 -0
  355. package/dist-server/service/return-order/return-order-query.js +243 -0
  356. package/dist-server/service/return-order/return-order-query.js.map +1 -0
  357. package/dist-server/service/return-order/return-order-types.js +274 -0
  358. package/dist-server/service/return-order/return-order-types.js.map +1 -0
  359. package/dist-server/service/return-order/return-order.js +159 -0
  360. package/dist-server/service/return-order/return-order.js.map +1 -0
  361. package/dist-server/service/reverse-kitting-order/index.js +25 -0
  362. package/dist-server/service/reverse-kitting-order/index.js.map +1 -0
  363. package/dist-server/service/reverse-kitting-order/reverse-kitting-order-mutation.js +407 -0
  364. package/dist-server/service/reverse-kitting-order/reverse-kitting-order-mutation.js.map +1 -0
  365. package/dist-server/service/reverse-kitting-order/reverse-kitting-order-query.js +222 -0
  366. package/dist-server/service/reverse-kitting-order/reverse-kitting-order-query.js.map +1 -0
  367. package/dist-server/service/reverse-kitting-order/reverse-kitting-order-type.js +230 -0
  368. package/dist-server/service/reverse-kitting-order/reverse-kitting-order-type.js.map +1 -0
  369. package/dist-server/service/reverse-kitting-order/reverse-kitting-order.js +145 -0
  370. package/dist-server/service/reverse-kitting-order/reverse-kitting-order.js.map +1 -0
  371. package/dist-server/service/reverse-kitting-order-inventory/index.js +25 -0
  372. package/dist-server/service/reverse-kitting-order-inventory/index.js.map +1 -0
  373. package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-mutation.js +130 -0
  374. package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-mutation.js.map +1 -0
  375. package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-query.js +87 -0
  376. package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-query.js.map +1 -0
  377. package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-type.js +143 -0
  378. package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-type.js.map +1 -0
  379. package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory.js +178 -0
  380. package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory.js.map +1 -0
  381. package/dist-server/service/shipping-order/index.js +25 -0
  382. package/dist-server/service/shipping-order/index.js.map +1 -0
  383. package/dist-server/service/shipping-order/shipping-order-mutation.js +78 -0
  384. package/dist-server/service/shipping-order/shipping-order-mutation.js.map +1 -0
  385. package/dist-server/service/shipping-order/shipping-order-query.js +96 -0
  386. package/dist-server/service/shipping-order/shipping-order-query.js.map +1 -0
  387. package/dist-server/service/shipping-order/shipping-order-types.js +137 -0
  388. package/dist-server/service/shipping-order/shipping-order-types.js.map +1 -0
  389. package/dist-server/service/shipping-order/shipping-order.js +165 -0
  390. package/dist-server/service/shipping-order/shipping-order.js.map +1 -0
  391. package/dist-server/service/transfer-order/index.js +25 -0
  392. package/dist-server/service/transfer-order/index.js.map +1 -0
  393. package/dist-server/service/transfer-order/transfer-order-mutation.js +252 -0
  394. package/dist-server/service/transfer-order/transfer-order-mutation.js.map +1 -0
  395. package/dist-server/service/transfer-order/transfer-order-query.js +104 -0
  396. package/dist-server/service/transfer-order/transfer-order-query.js.map +1 -0
  397. package/dist-server/service/transfer-order/transfer-order-types.js +148 -0
  398. package/dist-server/service/transfer-order/transfer-order-types.js.map +1 -0
  399. package/dist-server/service/transfer-order/transfer-order.js +146 -0
  400. package/dist-server/service/transfer-order/transfer-order.js.map +1 -0
  401. package/dist-server/service/vas/index.js +25 -0
  402. package/dist-server/service/vas/index.js.map +1 -0
  403. package/dist-server/service/vas/vas-mutation.js +562 -0
  404. package/dist-server/service/vas/vas-mutation.js.map +1 -0
  405. package/dist-server/service/vas/vas-query.js +114 -0
  406. package/dist-server/service/vas/vas-query.js.map +1 -0
  407. package/dist-server/service/vas/vas-types.js +113 -0
  408. package/dist-server/service/vas/vas-types.js.map +1 -0
  409. package/dist-server/service/vas/vas.js +114 -0
  410. package/dist-server/service/vas/vas.js.map +1 -0
  411. package/dist-server/service/vas-order/index.js +25 -0
  412. package/dist-server/service/vas-order/index.js.map +1 -0
  413. package/dist-server/service/vas-order/vas-order-mutation.js +241 -0
  414. package/dist-server/service/vas-order/vas-order-mutation.js.map +1 -0
  415. package/dist-server/service/vas-order/vas-order-query.js +151 -0
  416. package/dist-server/service/vas-order/vas-order-query.js.map +1 -0
  417. package/dist-server/service/vas-order/vas-order-types.js +83 -0
  418. package/dist-server/service/vas-order/vas-order-types.js.map +1 -0
  419. package/dist-server/service/vas-order/vas-order.js +104 -0
  420. package/dist-server/service/vas-order/vas-order.js.map +1 -0
  421. package/dist-server/utils/datetime-util.js +82 -0
  422. package/dist-server/utils/datetime-util.js.map +1 -0
  423. package/dist-server/utils/index.js +20 -0
  424. package/dist-server/utils/index.js.map +1 -0
  425. package/dist-server/utils/inventory-util.js +1098 -0
  426. package/dist-server/utils/inventory-util.js.map +1 -0
  427. package/dist-server/utils/order-no-generator.js +112 -0
  428. package/dist-server/utils/order-no-generator.js.map +1 -0
  429. package/package.json +8 -8
  430. package/server/service/vas/vas-mutation.ts +222 -225
@@ -0,0 +1,592 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var _a, _b, _c;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.OrderInventoryQuery = void 0;
17
+ const type_graphql_1 = require("type-graphql");
18
+ const typeorm_1 = require("typeorm");
19
+ const auth_base_1 = require("@things-factory/auth-base");
20
+ const biz_base_1 = require("@things-factory/biz-base");
21
+ const shell_1 = require("@things-factory/shell");
22
+ const warehouse_base_1 = require("@things-factory/warehouse-base");
23
+ const arrival_notice_1 = require("../arrival-notice/arrival-notice");
24
+ const order_inventory_types_1 = require("../order-inventory/order-inventory-types");
25
+ const release_good_1 = require("../release-good/release-good");
26
+ const order_inventory_1 = require("./order-inventory");
27
+ let OrderInventoryQuery = class OrderInventoryQuery {
28
+ async orderInventories(context, params) {
29
+ var _a, _b;
30
+ const { domain } = context.state;
31
+ const arrivalNoticeNoParam = params.filters.find((param) => param.name === 'arrivalNoticeNo');
32
+ const releaseGoodNoParam = params.filters.find((param) => param.name === 'releaseGoodNo');
33
+ if (arrivalNoticeNoParam && (arrivalNoticeNoParam === null || arrivalNoticeNoParam === void 0 ? void 0 : arrivalNoticeNoParam.value)) {
34
+ const foundArrivalNotice = await (0, typeorm_1.getRepository)(arrival_notice_1.ArrivalNotice).findOne({
35
+ where: {
36
+ name: arrivalNoticeNoParam.value,
37
+ domain
38
+ }
39
+ });
40
+ if (foundArrivalNotice) {
41
+ params.filters.splice(params.filters.findIndex(item => item.name == 'arrivalNoticeNo'), 1);
42
+ params.filters.push({ name: 'arrivalNoticeId', operator: 'eq', value: foundArrivalNotice.id });
43
+ }
44
+ else {
45
+ throw new Error(`Cannot find result for order "${arrivalNoticeNoParam.value}"`);
46
+ }
47
+ }
48
+ if (releaseGoodNoParam && (releaseGoodNoParam === null || releaseGoodNoParam === void 0 ? void 0 : releaseGoodNoParam.value)) {
49
+ const foundReleaseGood = await (0, typeorm_1.getRepository)(release_good_1.ReleaseGood).findOne({
50
+ where: {
51
+ name: releaseGoodNoParam.value,
52
+ domain
53
+ }
54
+ });
55
+ if (foundReleaseGood) {
56
+ params.filters.splice(params.filters.findIndex(item => item.name == 'releaseGoodNo'), 1);
57
+ params.filters.push({ name: 'releaseGoodId', operator: 'eq', value: foundReleaseGood.id });
58
+ }
59
+ else {
60
+ throw new Error(`Cannot find result for order "${releaseGoodNoParam.value}"`);
61
+ }
62
+ }
63
+ const qb = (0, typeorm_1.getRepository)(order_inventory_1.OrderInventory).createQueryBuilder('oi');
64
+ (0, shell_1.buildQuery)(qb, params, context);
65
+ qb.leftJoinAndSelect('oi.domain', 'domain');
66
+ qb.leftJoinAndSelect('oi.arrivalNotice', 'arrivalNotice');
67
+ qb.leftJoinAndSelect('oi.orderProduct', 'orderProduct');
68
+ qb.leftJoinAndSelect('oi.inventory', 'inventory');
69
+ qb.leftJoinAndSelect('oi.product', 'product');
70
+ qb.leftJoinAndSelect('inventory.product', 'inventoryProduct');
71
+ qb.leftJoinAndSelect('inventory.location', 'location');
72
+ qb.leftJoinAndSelect('oi.releaseGood', 'releaseGood');
73
+ qb.leftJoinAndSelect('oi.deliveryOrder', 'deliveryOrder');
74
+ qb.leftJoinAndSelect('oi.creator', 'creator');
75
+ qb.leftJoinAndSelect('oi.updater', 'updater');
76
+ let sort = {};
77
+ if (params === null || params === void 0 ? void 0 : params.sortings) {
78
+ if (params.sortings.some(e => e.name === 'inventoryPalletId')) {
79
+ // overwrite the worksheet status sorting since inventory check status is needed
80
+ sort = {
81
+ 'inventory.palletId': params.sortings[params.sortings.findIndex(item => item.name == 'inventoryPalletId')]
82
+ .desc
83
+ ? 'DESC'
84
+ : 'ASC',
85
+ 'oi.createdAt': ((_a = params.sortings[params.sortings.findIndex(item => item.name == 'createdAt')]) === null || _a === void 0 ? void 0 : _a.desc)
86
+ ? 'DESC'
87
+ : 'ASC'
88
+ };
89
+ }
90
+ else if (params.sortings.some(e => e.name === 'createdAt')) {
91
+ sort = Object.assign(Object.assign({}, sort), { 'oi.createdAt': ((_b = params.sortings[params.sortings.findIndex(item => item.name == 'createdAt')]) === null || _b === void 0 ? void 0 : _b.desc)
92
+ ? 'DESC'
93
+ : 'ASC' });
94
+ }
95
+ }
96
+ else {
97
+ sort = { 'oi.createdAt': 'ASC' };
98
+ }
99
+ qb.orderBy(sort);
100
+ let [items, total] = await qb.getManyAndCount();
101
+ return { items, total };
102
+ }
103
+ async mergedProductOrderInventories(context, filters, pagination, sortings) {
104
+ const convertedParams = (0, shell_1.convertListParams)({ filters, pagination, sortings });
105
+ let [items, total] = await (0, typeorm_1.getRepository)(order_inventory_1.OrderInventory).findAndCount(Object.assign(Object.assign({}, convertedParams), { relations: [
106
+ 'domain',
107
+ 'arrivalNotice',
108
+ 'inventory',
109
+ 'product',
110
+ 'releaseGood',
111
+ 'deliveryOrder',
112
+ 'creator',
113
+ 'updater'
114
+ ] }));
115
+ items = items
116
+ .map((item) => {
117
+ const product = item.product;
118
+ return {
119
+ productName: `(${(product === null || product === void 0 ? void 0 : product.sku) ? product.sku : '-'}) ${product.name}`,
120
+ packingType: item.packingType,
121
+ packingSize: item.packingSize,
122
+ sku: item.product.sku,
123
+ batchId: item.batchId,
124
+ batchIdRef: item.batchIdRef,
125
+ releaseQty: item.releaseQty,
126
+ releaseUomValue: item.releaseUomValue
127
+ };
128
+ })
129
+ .reduce((newItem, item) => {
130
+ let foundItem = newItem.find(newItem => newItem.sku === item.sku &&
131
+ newItem.packingType === item.packingType &&
132
+ newItem.packingSize === item.packingSize &&
133
+ newItem.batchId === item.batchId);
134
+ if (!foundItem) {
135
+ foundItem = {
136
+ productName: item.productName,
137
+ packingType: item.packingType,
138
+ packingSize: item.packingSize,
139
+ sku: item.sku,
140
+ batchId: item.batchId,
141
+ batchIdRef: item.batchIdRef,
142
+ releaseQty: item.releaseQty,
143
+ releaseUomValue: item.releaseUomValue
144
+ };
145
+ newItem.push(foundItem);
146
+ return newItem;
147
+ }
148
+ else {
149
+ return newItem.map(ni => {
150
+ if (ni.sku === item.sku &&
151
+ ni.packingType === item.packingType &&
152
+ ni.packingSize === item.packingSize &&
153
+ ni.batchId === item.batchId) {
154
+ return Object.assign(Object.assign({}, ni), { releaseQty: ni.releaseQty + item.releaseQty, releaseUomValue: ni.releaseUomValue + item.releaseUomValue });
155
+ }
156
+ else {
157
+ return ni;
158
+ }
159
+ });
160
+ }
161
+ }, []);
162
+ return { items, total };
163
+ }
164
+ async orderInventory(id, context) {
165
+ const { domain } = context.state;
166
+ return await (0, typeorm_1.getRepository)(order_inventory_1.OrderInventory).findOne({
167
+ where: {
168
+ domain,
169
+ id
170
+ },
171
+ relations: ['domain', 'releaseGood', 'inventory', 'creator', 'updater']
172
+ });
173
+ }
174
+ async validateOrderInventory(patches, context) {
175
+ var _a, _b, _c;
176
+ const { domain, user, tx } = context.state;
177
+ let error = [];
178
+ for (let i = 0; i < patches.length; i++) {
179
+ let foundExistingPallet = await (0, typeorm_1.getRepository)(warehouse_base_1.Inventory).findOne({
180
+ where: { domain, palletId: (_a = patches[i]) === null || _a === void 0 ? void 0 : _a.palletId }
181
+ });
182
+ if (!foundExistingPallet) {
183
+ foundExistingPallet = await (0, typeorm_1.getRepository)(warehouse_base_1.Inventory).findOne({
184
+ where: { id: (_b = patches[i]) === null || _b === void 0 ? void 0 : _b.id }
185
+ });
186
+ }
187
+ if (((_c = patches[i]) === null || _c === void 0 ? void 0 : _c.batchId) != null) {
188
+ const worksheet = await (0, typeorm_1.getRepository)(order_inventory_1.OrderInventory).find({
189
+ where: { inventory: foundExistingPallet === null || foundExistingPallet === void 0 ? void 0 : foundExistingPallet.id, status: 'PICKING' }
190
+ });
191
+ if (worksheet.length > 0) {
192
+ error = [...worksheet];
193
+ }
194
+ }
195
+ }
196
+ if (error.length == 0) {
197
+ return true;
198
+ }
199
+ else {
200
+ return false;
201
+ }
202
+ }
203
+ async inventoriesByOrder(context, params) {
204
+ var _a, _b;
205
+ const { domain, user } = context.state;
206
+ let permittedBizplaceIds = await (0, biz_base_1.getPermittedBizplaceIds)(domain, user);
207
+ if (!params.filters.find((filter) => filter.name === 'bizplaceId')) {
208
+ params.filters.push({
209
+ name: 'bizplaceId',
210
+ operator: 'in',
211
+ value: permittedBizplaceIds,
212
+ relation: true
213
+ });
214
+ }
215
+ else {
216
+ permittedBizplaceIds = params.filters.find(filter => filter.name === 'bizplaceId').value;
217
+ params.filters.find(filter => filter.name === 'bizplaceId').relation = true;
218
+ }
219
+ const releaseGoodFilter = (_a = params.filters
220
+ .find((filter) => filter.name === 'releaseGoodName')) === null || _a === void 0 ? void 0 : _a.value.replace(/^%+|%+$/g, '');
221
+ if ((_b = params.filters.find((filter) => filter.name === 'releaseGoodName')) === null || _b === void 0 ? void 0 : _b.value) {
222
+ const searchValue = params.filters.find(filter => filter.name === 'releaseGoodName').value;
223
+ const searchPattern = `%${searchValue.replace(/%/g, '')}%`;
224
+ let releaseGoods = await (0, typeorm_1.getRepository)(release_good_1.ReleaseGood).find({
225
+ where: [
226
+ { domain, name: (0, typeorm_1.ILike)(searchPattern) },
227
+ { domain, refNo: (0, typeorm_1.ILike)(searchPattern) },
228
+ { domain, refNo2: (0, typeorm_1.ILike)(searchPattern) },
229
+ { domain, refNo3: (0, typeorm_1.ILike)(searchPattern) }
230
+ ]
231
+ });
232
+ let releaseGood = releaseGoods.find(rg => rg.name === releaseGoodFilter ||
233
+ rg.refNo === releaseGoodFilter ||
234
+ rg.refNo2 === releaseGoodFilter ||
235
+ rg.refNo3 === releaseGoodFilter);
236
+ if (releaseGood) {
237
+ params.filters = params.filters.filter(filter => filter.name !== 'releaseGoodName');
238
+ params.filters.push({
239
+ name: 'releaseGoodId',
240
+ operator: 'eq',
241
+ value: releaseGood.id,
242
+ relation: true
243
+ });
244
+ }
245
+ else {
246
+ // If no matching release good is found, return empty result
247
+ return { items: [], total: 0 };
248
+ }
249
+ }
250
+ const qb = (0, typeorm_1.getRepository)(order_inventory_1.OrderInventory).createQueryBuilder('oi');
251
+ (0, shell_1.buildQuery)(qb, params, context);
252
+ qb.innerJoinAndSelect('oi.releaseGood', 'releaseGood')
253
+ .leftJoinAndSelect('oi.domain', 'domain')
254
+ .leftJoinAndSelect('oi.bizplace', 'bizplace')
255
+ .leftJoinAndSelect('oi.inventory', 'inventory')
256
+ .leftJoinAndSelect('inventory.product', 'product')
257
+ .leftJoinAndSelect('inventory.productDetail', 'productDetail')
258
+ .leftJoinAndSelect('oi.creator', 'creator')
259
+ .leftJoinAndSelect('oi.updater', 'updater');
260
+ qb.andWhere('releaseGood.status = :status', { status: 'DONE' });
261
+ qb.andWhere('releaseGood.domain_id = :domainId', { domainId: domain.id });
262
+ let [items, total] = await qb.getManyAndCount();
263
+ items = items.map((item) => {
264
+ return Object.assign(Object.assign({}, item), { id: item.inventory.id, releaseOrderId: item.releaseGood.id, releaseGoodName: item.releaseGood.name, releaseGoodRefNo: item.releaseGood.refNo, releaseGoodRefNo2: item.releaseGood.refNo2, releaseGoodRefNo3: item.releaseGood.refNo3, palletId: item.inventory.palletId, productId: item.inventory.product.id, productDetailId: item.inventory.productDetail.id, productName: item.inventory.product.name, productSKU: item.inventory.product.sku, productBrand: item.inventory.product.brand, isInventoryDecimal: item.inventory.product.isInventoryDecimal, packingSize: item.inventory.packingSize });
265
+ });
266
+ return { items, total };
267
+ }
268
+ async orderInventoriesOfMultipleReleaseOrders(context, partnerId, priority, binNumber, filters, sortings) {
269
+ try {
270
+ const { domain, tx } = context.state;
271
+ const withSkuParam = filters.find((param) => param.name === 'withSku');
272
+ const withToteParam = filters.find((param) => param.name === 'withTote');
273
+ const mergedPageParam = filters.find((param) => param.name === 'merged');
274
+ const refNoFilterParam = filters.find((param) => param.name === 'refNo');
275
+ let sort = '';
276
+ let prioritySort = '';
277
+ let releaseOrderId;
278
+ // Require further evaluation. Potential performance issue.
279
+ if (mergedPageParam) {
280
+ releaseOrderId = await tx.query(`
281
+ select rg.id from release_goods rg
282
+ inner join order_inventories oi on oi.release_good_id = rg.id
283
+ inner join worksheet_details wd on wd.target_inventory_id = oi.id
284
+ inner join worksheets w on w.id = wd.worksheet_id
285
+ where rg.route_id is not null and rg.type = 'b2b'
286
+ and rg.domain_id = $1 and rg.bizplace_id = $2
287
+ and w.type in ('BATCH_PICKING', 'SORTING', 'LOADING') and w.status = 'EXECUTING'
288
+ and rg.id not in (select rg2.id from release_goods rg2
289
+ inner join worksheets w2 on w2.release_good_id = rg2.id
290
+ where rg2.domain_id = $1 and rg2.bizplace_id = $2
291
+ and rg2.route_id is not null and rg2.type = 'b2b'
292
+ and w2.type in ('PICKING'))
293
+ group by rg.id
294
+ `, [domain.id, partnerId]);
295
+ }
296
+ else {
297
+ releaseOrderId = await tx.query(`
298
+ select rg.id from release_goods rg
299
+ inner join worksheets w on w.release_good_id = rg.id
300
+ where rg.domain_id = $1 and rg.bizplace_id = $2
301
+ and rg.route_id is not null and rg.type = 'b2b'
302
+ and w.type in ('PICKING', 'LOADING') and w.status = 'EXECUTING'
303
+ and rg.id not in (select rg2.id from release_goods rg2
304
+ inner join order_inventories oi2 on oi2.release_good_id = rg2.id
305
+ inner join worksheet_details wd2 on wd2.target_inventory_id = oi2.id
306
+ inner join worksheets w2 on w2.id = wd2.worksheet_id
307
+ where rg2.route_id is not null and rg2.type = 'b2b'
308
+ and rg2.domain_id = $1 and rg2.bizplace_id = $2
309
+ and w2.type in ('BATCH_PICKING'))
310
+ group by rg.id
311
+ `, [domain.id, partnerId]);
312
+ }
313
+ await tx.query(`
314
+ create temp table temp_route_label ON COMMIT drop as (
315
+ SELECT
316
+ DISTINCT(ot.name) AS "toteNumber",
317
+ rg3.id AS "releaseGoodId",
318
+ rg3.name AS "releaseGoodName",
319
+ rg3.ref_no,
320
+ rg3.ref_no_2,
321
+ rg3.ref_no_3,
322
+ rg3.route_id AS "routeId",
323
+ rg3.store_id AS "storeId",
324
+ rg3.store_name AS "storeName",
325
+ rg3.stop_id AS "stopId",
326
+ rg3.created_at AS "createdAt",
327
+ pd.packing_type AS "packingType",
328
+ pd.packing_size AS "packingSize",
329
+ oi.product_id AS "productId",
330
+ oi.product_detail_id AS "productDetailId",
331
+ SUM(CASE WHEN ot.name IS NULL THEN oi.release_qty ELSE 0 END) AS "releaseQty",
332
+ CASE WHEN ot.name IS NULL THEN p.sku ELSE NULL END AS "productSKU",
333
+ CASE WHEN ot.name IS NULL THEN p.name ELSE NULL END AS "productName",
334
+ CASE WHEN ot.name IS NULL AND oi.bin_location_id IS NOT NULL THEN l.name ELSE NULL END AS "binNumber",
335
+ CASE WHEN ot.name IS NULL THEN l2."name" ELSE NULL END AS "locationName"
336
+ FROM
337
+ order_inventories oi
338
+ INNER JOIN release_goods rg3 ON rg3.id = oi.release_good_id
339
+ INNER JOIN products p ON p.id = oi.product_id
340
+ INNER JOIN product_details pd ON pd.product_id = p.id
341
+ INNER JOIN inventories i ON i.id = oi.inventory_id
342
+ LEFT JOIN locations l ON l.id = oi.bin_location_id
343
+ LEFT JOIN locations l2 ON l2.id = i.location_id
344
+ LEFT JOIN order_tote_items oti ON oti.order_inventory_id = oi.id
345
+ LEFT JOIN order_totes ot ON ot.id = oti.order_tote_id
346
+ WHERE
347
+ oi.release_good_id IN (${releaseOrderId.length > 0 ? releaseOrderId === null || releaseOrderId === void 0 ? void 0 : releaseOrderId.map(itm => `'${itm.id}'`).join(',') : null})
348
+ GROUP BY
349
+ ot.name,
350
+ rg3.id,
351
+ rg3.name,
352
+ rg3.ref_no,
353
+ rg3.ref_no_2,
354
+ rg3.ref_no_3,
355
+ rg3.route_id,
356
+ rg3.store_id,
357
+ rg3.store_name,
358
+ rg3.stop_id,
359
+ rg3.created_at,
360
+ pd.packing_type,
361
+ pd.packing_size,
362
+ oi.product_id,
363
+ oi.product_detail_id,
364
+ oi.bin_location_id,
365
+ l.name,
366
+ l2."name",
367
+ p.sku,
368
+ p.name
369
+ )
370
+ `);
371
+ let filterRefNo = '';
372
+ if (refNoFilterParam === null || refNoFilterParam === void 0 ? void 0 : refNoFilterParam.value) {
373
+ let removeSymbol = refNoFilterParam.value
374
+ .split('')
375
+ .filter(res => res !== '%')
376
+ .join('');
377
+ let filterInfos = removeSymbol
378
+ .toLowerCase()
379
+ .split(',')
380
+ .map(prod => {
381
+ return "'%" + prod.trim().replace(/'/g, "''") + "%'";
382
+ })
383
+ .join(',');
384
+ filterRefNo = ` and lower(tmp.ref_no) like any(array[${filterInfos}])
385
+ or lower(tmp.ref_no_2) like any(array[${filterInfos}])
386
+ or lower(tmp.ref_no_3) like any(array[${filterInfos}])`;
387
+ }
388
+ let withSkuQuery = (withSkuParam === null || withSkuParam === void 0 ? void 0 : withSkuParam.value) == true ? `AND tmp."binNumber" is null AND tmp."toteNumber" is null` : '';
389
+ let withBinQuery = '';
390
+ let withToteQuery = (withToteParam === null || withToteParam === void 0 ? void 0 : withToteParam.value) == true
391
+ ? ((withSkuParam === null || withSkuParam === void 0 ? void 0 : withSkuParam.value) == true || binNumber ? `OR ` : 'AND ') + `tmp."toteNumber" is not null`
392
+ : '';
393
+ if (binNumber) {
394
+ if (binNumber !== 'all' && binNumber !== '') {
395
+ withBinQuery =
396
+ ((withSkuParam === null || withSkuParam === void 0 ? void 0 : withSkuParam.value) == true || (withToteParam === null || withToteParam === void 0 ? void 0 : withToteParam.value) == false ? `OR ` : `AND `) +
397
+ `tmp."binNumber" = '` +
398
+ binNumber +
399
+ `'`;
400
+ }
401
+ else if (binNumber == 'all') {
402
+ withBinQuery =
403
+ ((withSkuParam === null || withSkuParam === void 0 ? void 0 : withSkuParam.value) == true || (withToteParam === null || withToteParam === void 0 ? void 0 : withToteParam.value) == false ? `OR ` : `AND `) +
404
+ `tmp."binNumber" is not null`;
405
+ }
406
+ }
407
+ if (priority) {
408
+ prioritySort = ' order by ';
409
+ switch (priority) {
410
+ case 'roSku':
411
+ prioritySort = prioritySort + '"createdAt" desc, "productSKU" asc';
412
+ break;
413
+ case 'roBin':
414
+ prioritySort = prioritySort + '"createdAt" desc, "binNumber" asc';
415
+ break;
416
+ case 'roTote':
417
+ prioritySort = prioritySort + '"createdAt" desc, "toteNumber" asc';
418
+ break;
419
+ case 'skuRo':
420
+ prioritySort = prioritySort + '"productSKU" asc, "createdAt" desc';
421
+ break;
422
+ case 'skuBin':
423
+ prioritySort = prioritySort + '"productSKU" asc, "binNumber" asc';
424
+ break;
425
+ case 'binSku':
426
+ prioritySort = prioritySort + '"binNumber" asc, "productSKU" asc';
427
+ break;
428
+ case 'binRo':
429
+ prioritySort = prioritySort + '"binNumber" asc, "createdAt" desc';
430
+ break;
431
+ case 'toteRo':
432
+ prioritySort = prioritySort + '"toteNumber" asc, "createdAt" desc';
433
+ break;
434
+ }
435
+ }
436
+ else {
437
+ if ((sortings === null || sortings === void 0 ? void 0 : sortings.length) == 0) {
438
+ prioritySort = ' order by "createdAt" desc, "locationName" asc';
439
+ }
440
+ }
441
+ if ((sortings === null || sortings === void 0 ? void 0 : sortings.length) !== 0) {
442
+ const sorter = (sortings || []).reduce((acc, sort) => {
443
+ const order = sort.desc ? 'DESC' : 'ASC';
444
+ switch (sort.name) {
445
+ case 'roName':
446
+ acc = [...acc, '"releaseGoodName" ' + order];
447
+ break;
448
+ case 'productSku':
449
+ acc = [...acc, '"productSKU" ' + order];
450
+ break;
451
+ case 'binNumber':
452
+ acc = [...acc, '"binNumber" ' + order];
453
+ break;
454
+ case 'toteNumber':
455
+ acc = [...acc, '"toteNumber" ' + order];
456
+ break;
457
+ case 'locationName':
458
+ acc = [...acc, '"locationName" ' + order];
459
+ break;
460
+ }
461
+ return acc;
462
+ }, []);
463
+ sort = (prioritySort ? ', ' : ' order by ') + sorter.toString();
464
+ }
465
+ let items = await tx.query(`
466
+ select * from temp_route_label tmp where 1 = 1
467
+ ${withSkuQuery}
468
+ ${withBinQuery}
469
+ ${withToteQuery}
470
+ ${filterRefNo}
471
+ ${prioritySort}
472
+ ${sort}
473
+ `);
474
+ items = items.reduce((prev, curr) => {
475
+ let foundItemIndex = prev.findIndex(items => items.productSKU == curr.productSKU &&
476
+ items.releaseGoodId == curr.releaseGoodId &&
477
+ items.locationName == curr.locationName);
478
+ if (foundItemIndex >= 0) {
479
+ let object = { packingType: curr.packingType, packingSize: curr.packingSize };
480
+ prev[foundItemIndex].productDetails.push(object);
481
+ if (curr.packingType.toUpperCase() === 'CTN' || curr.packingType.toUpperCase() === 'CARTON') {
482
+ prev[foundItemIndex].productDetail = object;
483
+ }
484
+ }
485
+ else {
486
+ let objectRg = { refNo: curr.ref_no, refNo2: curr.ref_no_2, refNo3: curr.ref_no_3 };
487
+ let object = { packingType: curr.packingType, packingSize: curr.packingSize };
488
+ curr.releaseGood = objectRg;
489
+ curr.productDetail = object;
490
+ curr.productDetails = [object];
491
+ prev.push(curr);
492
+ }
493
+ return prev;
494
+ }, []);
495
+ let total = items.length;
496
+ return { items, total };
497
+ }
498
+ catch (e) {
499
+ throw e;
500
+ }
501
+ }
502
+ async domain(orderInventory) {
503
+ return await (0, typeorm_1.getRepository)(shell_1.Domain).findOne(orderInventory.domainId);
504
+ }
505
+ async creator(orderInventory) {
506
+ return await (0, typeorm_1.getRepository)(auth_base_1.User).findOne(orderInventory.creatorId);
507
+ }
508
+ async updater(orderInventory) {
509
+ return await (0, typeorm_1.getRepository)(auth_base_1.User).findOne(orderInventory.updaterId);
510
+ }
511
+ };
512
+ __decorate([
513
+ (0, type_graphql_1.Query)(returns => order_inventory_types_1.OrderInventoryList),
514
+ __param(0, (0, type_graphql_1.Ctx)()),
515
+ __param(1, (0, type_graphql_1.Args)()),
516
+ __metadata("design:type", Function),
517
+ __metadata("design:paramtypes", [Object, typeof (_a = typeof shell_1.ListParam !== "undefined" && shell_1.ListParam) === "function" ? _a : Object]),
518
+ __metadata("design:returntype", Promise)
519
+ ], OrderInventoryQuery.prototype, "orderInventories", null);
520
+ __decorate([
521
+ (0, type_graphql_1.Query)(returns => order_inventory_types_1.OrderInventoryList),
522
+ __param(0, (0, type_graphql_1.Ctx)()),
523
+ __param(1, (0, type_graphql_1.Arg)('filters', type => [shell_1.Filter], { nullable: true })),
524
+ __param(2, (0, type_graphql_1.Arg)('pagination', type => shell_1.Pagination, { nullable: true })),
525
+ __param(3, (0, type_graphql_1.Arg)('sortings', type => [shell_1.Sorting], { nullable: true })),
526
+ __metadata("design:type", Function),
527
+ __metadata("design:paramtypes", [Object, Array, typeof (_b = typeof shell_1.Pagination !== "undefined" && shell_1.Pagination) === "function" ? _b : Object, Array]),
528
+ __metadata("design:returntype", Promise)
529
+ ], OrderInventoryQuery.prototype, "mergedProductOrderInventories", null);
530
+ __decorate([
531
+ (0, type_graphql_1.Query)(returns => order_inventory_1.OrderInventory),
532
+ __param(0, (0, type_graphql_1.Arg)('id')),
533
+ __param(1, (0, type_graphql_1.Ctx)()),
534
+ __metadata("design:type", Function),
535
+ __metadata("design:paramtypes", [String, Object]),
536
+ __metadata("design:returntype", Promise)
537
+ ], OrderInventoryQuery.prototype, "orderInventory", null);
538
+ __decorate([
539
+ (0, type_graphql_1.Query)(returns => Boolean),
540
+ __param(0, (0, type_graphql_1.Arg)('patches', type => [warehouse_base_1.InventoryPatch])),
541
+ __param(1, (0, type_graphql_1.Ctx)()),
542
+ __metadata("design:type", Function),
543
+ __metadata("design:paramtypes", [Array, Object]),
544
+ __metadata("design:returntype", Promise)
545
+ ], OrderInventoryQuery.prototype, "validateOrderInventory", null);
546
+ __decorate([
547
+ (0, type_graphql_1.Query)(returns => order_inventory_types_1.OrderInventoryList),
548
+ __param(0, (0, type_graphql_1.Ctx)()),
549
+ __param(1, (0, type_graphql_1.Args)()),
550
+ __metadata("design:type", Function),
551
+ __metadata("design:paramtypes", [Object, typeof (_c = typeof shell_1.ListParam !== "undefined" && shell_1.ListParam) === "function" ? _c : Object]),
552
+ __metadata("design:returntype", Promise)
553
+ ], OrderInventoryQuery.prototype, "inventoriesByOrder", null);
554
+ __decorate([
555
+ (0, type_graphql_1.Directive)('@transaction'),
556
+ (0, type_graphql_1.Query)(returns => order_inventory_types_1.OrderInventoryList),
557
+ __param(0, (0, type_graphql_1.Ctx)()),
558
+ __param(1, (0, type_graphql_1.Arg)('partnerId')),
559
+ __param(2, (0, type_graphql_1.Arg)('priority', { nullable: true })),
560
+ __param(3, (0, type_graphql_1.Arg)('binNumber', { nullable: true })),
561
+ __param(4, (0, type_graphql_1.Arg)('filters', type => [shell_1.Filter], { nullable: true })),
562
+ __param(5, (0, type_graphql_1.Arg)('sortings', type => [shell_1.Sorting], { nullable: true })),
563
+ __metadata("design:type", Function),
564
+ __metadata("design:paramtypes", [Object, String, String, String, Array, Array]),
565
+ __metadata("design:returntype", Promise)
566
+ ], OrderInventoryQuery.prototype, "orderInventoriesOfMultipleReleaseOrders", null);
567
+ __decorate([
568
+ (0, type_graphql_1.FieldResolver)(type => shell_1.Domain),
569
+ __param(0, (0, type_graphql_1.Root)()),
570
+ __metadata("design:type", Function),
571
+ __metadata("design:paramtypes", [order_inventory_1.OrderInventory]),
572
+ __metadata("design:returntype", Promise)
573
+ ], OrderInventoryQuery.prototype, "domain", null);
574
+ __decorate([
575
+ (0, type_graphql_1.FieldResolver)(type => auth_base_1.User),
576
+ __param(0, (0, type_graphql_1.Root)()),
577
+ __metadata("design:type", Function),
578
+ __metadata("design:paramtypes", [order_inventory_1.OrderInventory]),
579
+ __metadata("design:returntype", Promise)
580
+ ], OrderInventoryQuery.prototype, "creator", null);
581
+ __decorate([
582
+ (0, type_graphql_1.FieldResolver)(type => auth_base_1.User),
583
+ __param(0, (0, type_graphql_1.Root)()),
584
+ __metadata("design:type", Function),
585
+ __metadata("design:paramtypes", [order_inventory_1.OrderInventory]),
586
+ __metadata("design:returntype", Promise)
587
+ ], OrderInventoryQuery.prototype, "updater", null);
588
+ OrderInventoryQuery = __decorate([
589
+ (0, type_graphql_1.Resolver)(order_inventory_1.OrderInventory)
590
+ ], OrderInventoryQuery);
591
+ exports.OrderInventoryQuery = OrderInventoryQuery;
592
+ //# sourceMappingURL=order-inventory-query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"order-inventory-query.js","sourceRoot":"","sources":["../../../server/service/order-inventory/order-inventory-query.ts"],"names":[],"mappings":"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"}