@things-factory/operato-hub 4.3.81 → 4.3.82

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 (336) hide show
  1. package/dist-server/middlewares/business-middleware.js +4 -1
  2. package/dist-server/middlewares/business-middleware.js.map +1 -1
  3. package/dist-server/middlewares/store-middleware.js.map +1 -1
  4. package/dist-server/routers/api/index.js +0 -1
  5. package/dist-server/routers/api/index.js.map +1 -1
  6. package/dist-server/routers/api/restful-apis/unstable/add-draft-release-order.js +3 -2
  7. package/dist-server/routers/api/restful-apis/unstable/add-draft-release-order.js.map +1 -1
  8. package/dist-server/routers/api/restful-apis/unstable/add-inbound-order.js +5 -2
  9. package/dist-server/routers/api/restful-apis/unstable/add-inbound-order.js.map +1 -1
  10. package/dist-server/routers/api/restful-apis/unstable/add-release-order.js +4 -2
  11. package/dist-server/routers/api/restful-apis/unstable/add-release-order.js.map +1 -1
  12. package/dist-server/routers/api/restful-apis/v1/company/add-contact-points.js +85 -0
  13. package/dist-server/routers/api/restful-apis/v1/company/add-contact-points.js.map +1 -0
  14. package/dist-server/routers/api/restful-apis/v1/company/add-marketplace-order.js +193 -0
  15. package/dist-server/routers/api/restful-apis/v1/company/add-marketplace-order.js.map +1 -0
  16. package/dist-server/routers/api/restful-apis/v1/company/add-product.js +50 -0
  17. package/dist-server/routers/api/restful-apis/v1/company/add-product.js.map +1 -0
  18. package/dist-server/routers/api/restful-apis/v1/company/cancel-marketplace-order.js +90 -0
  19. package/dist-server/routers/api/restful-apis/v1/company/cancel-marketplace-order.js.map +1 -0
  20. package/dist-server/routers/api/restful-apis/v1/company/get-bizplace-list.js +49 -0
  21. package/dist-server/routers/api/restful-apis/v1/company/get-bizplace-list.js.map +1 -0
  22. package/dist-server/routers/api/restful-apis/v1/company/get-contact-point-list.js +62 -0
  23. package/dist-server/routers/api/restful-apis/v1/company/get-contact-point-list.js.map +1 -0
  24. package/dist-server/routers/api/restful-apis/v1/company/get-marketplace-order-shipping-list.js +108 -0
  25. package/dist-server/routers/api/restful-apis/v1/company/get-marketplace-order-shipping-list.js.map +1 -0
  26. package/dist-server/routers/api/restful-apis/v1/company/get-marketplace-store-list.js +51 -0
  27. package/dist-server/routers/api/restful-apis/v1/company/get-marketplace-store-list.js.map +1 -0
  28. package/dist-server/routers/api/restful-apis/v1/company/get-partner-list.js +88 -0
  29. package/dist-server/routers/api/restful-apis/v1/company/get-partner-list.js.map +1 -0
  30. package/dist-server/routers/api/restful-apis/v1/company/get-product-list.js +98 -0
  31. package/dist-server/routers/api/restful-apis/v1/company/get-product-list.js.map +1 -0
  32. package/dist-server/routers/api/restful-apis/v1/company/index.js +15 -0
  33. package/dist-server/routers/api/restful-apis/v1/company/index.js.map +1 -0
  34. package/dist-server/routers/api/restful-apis/v1/company/update-marketplace-order-delivered.js +61 -0
  35. package/dist-server/routers/api/restful-apis/v1/company/update-marketplace-order-delivered.js.map +1 -0
  36. package/dist-server/routers/api/restful-apis/v1/company/update-marketplace-shipping-order.js +44 -0
  37. package/dist-server/routers/api/restful-apis/v1/company/update-marketplace-shipping-order.js.map +1 -0
  38. package/dist-server/routers/api/restful-apis/v1/index.js +2 -31
  39. package/dist-server/routers/api/restful-apis/v1/index.js.map +1 -1
  40. package/dist-server/routers/api/restful-apis/v1/middlewares/business-middleware.js +29 -0
  41. package/dist-server/routers/api/restful-apis/v1/middlewares/business-middleware.js.map +1 -0
  42. package/dist-server/routers/api/restful-apis/v1/middlewares/index.js +40 -0
  43. package/dist-server/routers/api/restful-apis/v1/middlewares/index.js.map +1 -0
  44. package/dist-server/routers/api/restful-apis/v1/middlewares/logging-middleware.js +23 -0
  45. package/dist-server/routers/api/restful-apis/v1/middlewares/logging-middleware.js.map +1 -0
  46. package/dist-server/routers/api/restful-apis/v1/middlewares/store-middleware.js +32 -0
  47. package/dist-server/routers/api/restful-apis/v1/middlewares/store-middleware.js.map +1 -0
  48. package/dist-server/routers/api/restful-apis/v1/middlewares/validation-middleware.js +71 -0
  49. package/dist-server/routers/api/restful-apis/v1/middlewares/validation-middleware.js.map +1 -0
  50. package/dist-server/routers/api/restful-apis/v1/middlewares/warehouse-middleware.js +31 -0
  51. package/dist-server/routers/api/restful-apis/v1/middlewares/warehouse-middleware.js.map +1 -0
  52. package/dist-server/routers/api/restful-apis/v1/utils/error-util.js +71 -0
  53. package/dist-server/routers/api/restful-apis/v1/utils/error-util.js.map +1 -0
  54. package/dist-server/routers/api/restful-apis/v1/utils/params.js +360 -0
  55. package/dist-server/routers/api/restful-apis/v1/utils/params.js.map +1 -0
  56. package/dist-server/routers/api/restful-apis/v1/utils/validate-util.js +57 -0
  57. package/dist-server/routers/api/restful-apis/v1/utils/validate-util.js.map +1 -0
  58. package/dist-server/routers/api/restful-apis/v1/warehouse/add-inbound-order.js +277 -0
  59. package/dist-server/routers/api/restful-apis/v1/warehouse/add-inbound-order.js.map +1 -0
  60. package/dist-server/routers/api/restful-apis/v1/warehouse/add-release-order.js +810 -0
  61. package/dist-server/routers/api/restful-apis/v1/warehouse/add-release-order.js.map +1 -0
  62. package/dist-server/routers/api/restful-apis/v1/warehouse/cancel-inbound-order.js +197 -0
  63. package/dist-server/routers/api/restful-apis/v1/warehouse/cancel-inbound-order.js.map +1 -0
  64. package/dist-server/routers/api/restful-apis/v1/warehouse/cancel-release-order.js +182 -0
  65. package/dist-server/routers/api/restful-apis/v1/warehouse/cancel-release-order.js.map +1 -0
  66. package/dist-server/routers/api/restful-apis/v1/warehouse/get-delivery-order-list.js +138 -0
  67. package/dist-server/routers/api/restful-apis/v1/warehouse/get-delivery-order-list.js.map +1 -0
  68. package/dist-server/routers/api/restful-apis/v1/warehouse/get-goods-received-note-list.js +98 -0
  69. package/dist-server/routers/api/restful-apis/v1/warehouse/get-goods-received-note-list.js.map +1 -0
  70. package/dist-server/routers/api/restful-apis/v1/warehouse/get-inbound-order-details.js +78 -0
  71. package/dist-server/routers/api/restful-apis/v1/warehouse/get-inbound-order-details.js.map +1 -0
  72. package/dist-server/routers/api/restful-apis/v1/warehouse/get-inbound-order-list.js +94 -0
  73. package/dist-server/routers/api/restful-apis/v1/warehouse/get-inbound-order-list.js.map +1 -0
  74. package/dist-server/routers/api/restful-apis/v1/warehouse/get-inventory-product-group-list.js +243 -0
  75. package/dist-server/routers/api/restful-apis/v1/warehouse/get-inventory-product-group-list.js.map +1 -0
  76. package/dist-server/routers/api/restful-apis/v1/warehouse/get-onhand-inventory-list.js +94 -0
  77. package/dist-server/routers/api/restful-apis/v1/warehouse/get-onhand-inventory-list.js.map +1 -0
  78. package/dist-server/routers/api/restful-apis/v1/warehouse/get-release-order-details.js +94 -0
  79. package/dist-server/routers/api/restful-apis/v1/warehouse/get-release-order-details.js.map +1 -0
  80. package/dist-server/routers/api/restful-apis/v1/warehouse/get-release-order-list.js +110 -0
  81. package/dist-server/routers/api/restful-apis/v1/warehouse/get-release-order-list.js.map +1 -0
  82. package/dist-server/routers/api/restful-apis/v1/warehouse/index.js +15 -0
  83. package/dist-server/routers/api/restful-apis/v1/warehouse/index.js.map +1 -0
  84. package/dist-server/routers/api/restful-apis/v1/warehouse/update-release-order-details.js +62 -0
  85. package/dist-server/routers/api/restful-apis/v1/warehouse/update-release-order-details.js.map +1 -0
  86. package/openapi/v1/Inventory.yaml +261 -0
  87. package/openapi/v1/authetication.yaml +108 -0
  88. package/openapi/v1/bizplace.yaml +72 -0
  89. package/openapi/v1/contact-point.yaml +253 -90
  90. package/openapi/v1/inbound.yaml +646 -316
  91. package/openapi/v1/marketplace.yaml +834 -0
  92. package/openapi/v1/outbound.yaml +1303 -580
  93. package/openapi/v1/partner.yaml +80 -0
  94. package/openapi/v1/product.yaml +514 -194
  95. package/openapi/v1.yaml +39 -7
  96. package/package.json +54 -54
  97. package/server/middlewares/business-middleware.ts +5 -1
  98. package/server/middlewares/store-middleware.ts +1 -0
  99. package/server/routers/api/index.ts +0 -1
  100. package/server/routers/api/restful-apis/unstable/add-draft-release-order.ts +3 -2
  101. package/server/routers/api/restful-apis/unstable/add-inbound-order.ts +5 -2
  102. package/server/routers/api/restful-apis/unstable/add-release-order.ts +4 -2
  103. package/server/routers/api/restful-apis/v1/company/add-contact-points.ts +84 -0
  104. package/server/routers/api/restful-apis/v1/company/add-marketplace-order.ts +223 -0
  105. package/server/routers/api/restful-apis/v1/company/add-product.ts +68 -0
  106. package/server/routers/api/restful-apis/v1/company/cancel-marketplace-order.ts +94 -0
  107. package/server/routers/api/restful-apis/v1/company/get-bizplace-list.ts +55 -0
  108. package/server/routers/api/restful-apis/v1/company/get-contact-point-list.ts +67 -0
  109. package/server/routers/api/restful-apis/v1/company/get-marketplace-order-shipping-list.ts +115 -0
  110. package/server/routers/api/restful-apis/v1/company/get-marketplace-store-list.ts +57 -0
  111. package/server/routers/api/restful-apis/v1/company/get-partner-list.ts +95 -0
  112. package/server/routers/api/restful-apis/v1/company/get-product-list.ts +103 -0
  113. package/server/routers/api/restful-apis/v1/company/index.ts +12 -0
  114. package/server/routers/api/restful-apis/v1/company/update-marketplace-order-delivered.ts +66 -0
  115. package/server/routers/api/restful-apis/v1/company/update-marketplace-shipping-order.ts +55 -0
  116. package/server/routers/api/restful-apis/v1/index.ts +2 -31
  117. package/server/routers/api/restful-apis/v1/middlewares/business-middleware.ts +31 -0
  118. package/server/routers/api/restful-apis/v1/middlewares/index.ts +26 -0
  119. package/server/routers/api/restful-apis/v1/middlewares/logging-middleware.ts +24 -0
  120. package/server/routers/api/restful-apis/v1/middlewares/store-middleware.ts +34 -0
  121. package/server/routers/api/restful-apis/v1/middlewares/validation-middleware.ts +70 -0
  122. package/server/routers/api/restful-apis/v1/middlewares/warehouse-middleware.ts +31 -0
  123. package/server/routers/api/restful-apis/v1/utils/error-util.ts +70 -0
  124. package/server/routers/api/restful-apis/v1/utils/params.ts +360 -0
  125. package/server/routers/api/restful-apis/v1/utils/validate-util.ts +49 -0
  126. package/server/routers/api/restful-apis/v1/warehouse/add-inbound-order.ts +361 -0
  127. package/server/routers/api/restful-apis/v1/warehouse/add-release-order.ts +1000 -0
  128. package/server/routers/api/restful-apis/v1/warehouse/cancel-inbound-order.ts +261 -0
  129. package/server/routers/api/restful-apis/v1/warehouse/cancel-release-order.ts +252 -0
  130. package/server/routers/api/restful-apis/v1/warehouse/get-delivery-order-list.ts +141 -0
  131. package/server/routers/api/restful-apis/v1/warehouse/get-goods-received-note-list.ts +106 -0
  132. package/server/routers/api/restful-apis/v1/warehouse/get-inbound-order-details.ts +74 -0
  133. package/server/routers/api/restful-apis/v1/warehouse/get-inbound-order-list.ts +96 -0
  134. package/server/routers/api/restful-apis/v1/warehouse/get-inventory-product-group-list.ts +293 -0
  135. package/server/routers/api/restful-apis/v1/warehouse/get-onhand-inventory-list.ts +96 -0
  136. package/server/routers/api/restful-apis/v1/warehouse/get-release-order-details.ts +97 -0
  137. package/server/routers/api/restful-apis/v1/warehouse/get-release-order-list.ts +113 -0
  138. package/server/routers/api/restful-apis/v1/warehouse/index.ts +12 -0
  139. package/server/routers/api/restful-apis/v1/warehouse/update-release-order-details.ts +86 -0
  140. package/dist-server/routers/api/restful-apis/v1/add-contact-point.js +0 -64
  141. package/dist-server/routers/api/restful-apis/v1/add-contact-point.js.map +0 -1
  142. package/dist-server/routers/api/restful-apis/v1/add-draft-release-order.js +0 -171
  143. package/dist-server/routers/api/restful-apis/v1/add-draft-release-order.js.map +0 -1
  144. package/dist-server/routers/api/restful-apis/v1/add-inbound-order.js +0 -213
  145. package/dist-server/routers/api/restful-apis/v1/add-inbound-order.js.map +0 -1
  146. package/dist-server/routers/api/restful-apis/v1/add-marketplace-order.js +0 -144
  147. package/dist-server/routers/api/restful-apis/v1/add-marketplace-order.js.map +0 -1
  148. package/dist-server/routers/api/restful-apis/v1/add-products.js +0 -88
  149. package/dist-server/routers/api/restful-apis/v1/add-products.js.map +0 -1
  150. package/dist-server/routers/api/restful-apis/v1/add-release-order.js +0 -774
  151. package/dist-server/routers/api/restful-apis/v1/add-release-order.js.map +0 -1
  152. package/dist-server/routers/api/restful-apis/v1/bizplace.js +0 -45
  153. package/dist-server/routers/api/restful-apis/v1/bizplace.js.map +0 -1
  154. package/dist-server/routers/api/restful-apis/v1/cancel-marketplace-order.js +0 -63
  155. package/dist-server/routers/api/restful-apis/v1/cancel-marketplace-order.js.map +0 -1
  156. package/dist-server/routers/api/restful-apis/v1/cancel-release-order.js +0 -66
  157. package/dist-server/routers/api/restful-apis/v1/cancel-release-order.js.map +0 -1
  158. package/dist-server/routers/api/restful-apis/v1/get-contact-point-list.js +0 -103
  159. package/dist-server/routers/api/restful-apis/v1/get-contact-point-list.js.map +0 -1
  160. package/dist-server/routers/api/restful-apis/v1/get-delivery-order-detail.js +0 -47
  161. package/dist-server/routers/api/restful-apis/v1/get-delivery-order-detail.js.map +0 -1
  162. package/dist-server/routers/api/restful-apis/v1/get-delivery-order-list.js +0 -124
  163. package/dist-server/routers/api/restful-apis/v1/get-delivery-order-list.js.map +0 -1
  164. package/dist-server/routers/api/restful-apis/v1/get-delivery-orders.js +0 -164
  165. package/dist-server/routers/api/restful-apis/v1/get-delivery-orders.js.map +0 -1
  166. package/dist-server/routers/api/restful-apis/v1/get-goods-received-notes.js +0 -120
  167. package/dist-server/routers/api/restful-apis/v1/get-goods-received-notes.js.map +0 -1
  168. package/dist-server/routers/api/restful-apis/v1/get-inbound-order-detail.js +0 -115
  169. package/dist-server/routers/api/restful-apis/v1/get-inbound-order-detail.js.map +0 -1
  170. package/dist-server/routers/api/restful-apis/v1/get-inbound-order-list.js +0 -125
  171. package/dist-server/routers/api/restful-apis/v1/get-inbound-order-list.js.map +0 -1
  172. package/dist-server/routers/api/restful-apis/v1/get-inventory-overall-product-group.js +0 -88
  173. package/dist-server/routers/api/restful-apis/v1/get-inventory-overall-product-group.js.map +0 -1
  174. package/dist-server/routers/api/restful-apis/v1/get-inventory-product-group.js +0 -101
  175. package/dist-server/routers/api/restful-apis/v1/get-inventory-product-group.js.map +0 -1
  176. package/dist-server/routers/api/restful-apis/v1/get-marketplace-order-shipping-list.js +0 -146
  177. package/dist-server/routers/api/restful-apis/v1/get-marketplace-order-shipping-list.js.map +0 -1
  178. package/dist-server/routers/api/restful-apis/v1/get-marketplace-store-list.js +0 -79
  179. package/dist-server/routers/api/restful-apis/v1/get-marketplace-store-list.js.map +0 -1
  180. package/dist-server/routers/api/restful-apis/v1/get-onhand-inventories.js +0 -110
  181. package/dist-server/routers/api/restful-apis/v1/get-onhand-inventories.js.map +0 -1
  182. package/dist-server/routers/api/restful-apis/v1/get-partners.js +0 -23
  183. package/dist-server/routers/api/restful-apis/v1/get-partners.js.map +0 -1
  184. package/dist-server/routers/api/restful-apis/v1/get-products.js +0 -210
  185. package/dist-server/routers/api/restful-apis/v1/get-products.js.map +0 -1
  186. package/dist-server/routers/api/restful-apis/v1/get-release-order-detail.js +0 -122
  187. package/dist-server/routers/api/restful-apis/v1/get-release-order-detail.js.map +0 -1
  188. package/dist-server/routers/api/restful-apis/v1/get-release-order-list.js +0 -191
  189. package/dist-server/routers/api/restful-apis/v1/get-release-order-list.js.map +0 -1
  190. package/dist-server/routers/api/restful-apis/v1/get-warehouses.js +0 -20
  191. package/dist-server/routers/api/restful-apis/v1/get-warehouses.js.map +0 -1
  192. package/dist-server/routers/api/restful-apis/v1/reject-inbound-order.js +0 -35
  193. package/dist-server/routers/api/restful-apis/v1/reject-inbound-order.js.map +0 -1
  194. package/dist-server/routers/api/restful-apis/v1/set-marketplace-order-delivered.js +0 -45
  195. package/dist-server/routers/api/restful-apis/v1/set-marketplace-order-delivered.js.map +0 -1
  196. package/dist-server/routers/api/restful-apis/v1/set-marketplace-order-failed-delivery.js +0 -45
  197. package/dist-server/routers/api/restful-apis/v1/set-marketplace-order-failed-delivery.js.map +0 -1
  198. package/dist-server/routers/api/restful-apis/v1/update-marketplace-order.js +0 -93
  199. package/dist-server/routers/api/restful-apis/v1/update-marketplace-order.js.map +0 -1
  200. package/dist-server/routers/api/restful-apis/v1/update-marketplace-shipping-order.js +0 -85
  201. package/dist-server/routers/api/restful-apis/v1/update-marketplace-shipping-order.js.map +0 -1
  202. package/dist-server/routers/api/restful-apis/v1/update-release-order-details.js +0 -82
  203. package/dist-server/routers/api/restful-apis/v1/update-release-order-details.js.map +0 -1
  204. package/dist-server/routers/api/restful-apis/v2/add-contact-point.js +0 -64
  205. package/dist-server/routers/api/restful-apis/v2/add-contact-point.js.map +0 -1
  206. package/dist-server/routers/api/restful-apis/v2/add-draft-release-order.js +0 -171
  207. package/dist-server/routers/api/restful-apis/v2/add-draft-release-order.js.map +0 -1
  208. package/dist-server/routers/api/restful-apis/v2/add-inbound-order.js +0 -213
  209. package/dist-server/routers/api/restful-apis/v2/add-inbound-order.js.map +0 -1
  210. package/dist-server/routers/api/restful-apis/v2/add-marketplace-order.js +0 -144
  211. package/dist-server/routers/api/restful-apis/v2/add-marketplace-order.js.map +0 -1
  212. package/dist-server/routers/api/restful-apis/v2/add-products.js +0 -88
  213. package/dist-server/routers/api/restful-apis/v2/add-products.js.map +0 -1
  214. package/dist-server/routers/api/restful-apis/v2/add-release-order.js +0 -774
  215. package/dist-server/routers/api/restful-apis/v2/add-release-order.js.map +0 -1
  216. package/dist-server/routers/api/restful-apis/v2/bizplace.js +0 -45
  217. package/dist-server/routers/api/restful-apis/v2/bizplace.js.map +0 -1
  218. package/dist-server/routers/api/restful-apis/v2/cancel-marketplace-order.js +0 -63
  219. package/dist-server/routers/api/restful-apis/v2/cancel-marketplace-order.js.map +0 -1
  220. package/dist-server/routers/api/restful-apis/v2/cancel-release-order.js +0 -66
  221. package/dist-server/routers/api/restful-apis/v2/cancel-release-order.js.map +0 -1
  222. package/dist-server/routers/api/restful-apis/v2/get-contact-point-list.js +0 -103
  223. package/dist-server/routers/api/restful-apis/v2/get-contact-point-list.js.map +0 -1
  224. package/dist-server/routers/api/restful-apis/v2/get-delivery-order-detail.js +0 -47
  225. package/dist-server/routers/api/restful-apis/v2/get-delivery-order-detail.js.map +0 -1
  226. package/dist-server/routers/api/restful-apis/v2/get-delivery-order-list.js +0 -124
  227. package/dist-server/routers/api/restful-apis/v2/get-delivery-order-list.js.map +0 -1
  228. package/dist-server/routers/api/restful-apis/v2/get-delivery-orders.js +0 -164
  229. package/dist-server/routers/api/restful-apis/v2/get-delivery-orders.js.map +0 -1
  230. package/dist-server/routers/api/restful-apis/v2/get-goods-received-notes.js +0 -120
  231. package/dist-server/routers/api/restful-apis/v2/get-goods-received-notes.js.map +0 -1
  232. package/dist-server/routers/api/restful-apis/v2/get-inbound-order-detail.js +0 -115
  233. package/dist-server/routers/api/restful-apis/v2/get-inbound-order-detail.js.map +0 -1
  234. package/dist-server/routers/api/restful-apis/v2/get-inbound-order-list.js +0 -125
  235. package/dist-server/routers/api/restful-apis/v2/get-inbound-order-list.js.map +0 -1
  236. package/dist-server/routers/api/restful-apis/v2/get-inventory-overall-product-group.js +0 -88
  237. package/dist-server/routers/api/restful-apis/v2/get-inventory-overall-product-group.js.map +0 -1
  238. package/dist-server/routers/api/restful-apis/v2/get-inventory-product-group.js +0 -101
  239. package/dist-server/routers/api/restful-apis/v2/get-inventory-product-group.js.map +0 -1
  240. package/dist-server/routers/api/restful-apis/v2/get-marketplace-order-shipping-list.js +0 -146
  241. package/dist-server/routers/api/restful-apis/v2/get-marketplace-order-shipping-list.js.map +0 -1
  242. package/dist-server/routers/api/restful-apis/v2/get-marketplace-store-list.js +0 -79
  243. package/dist-server/routers/api/restful-apis/v2/get-marketplace-store-list.js.map +0 -1
  244. package/dist-server/routers/api/restful-apis/v2/get-onhand-inventories.js +0 -110
  245. package/dist-server/routers/api/restful-apis/v2/get-onhand-inventories.js.map +0 -1
  246. package/dist-server/routers/api/restful-apis/v2/get-partners.js +0 -23
  247. package/dist-server/routers/api/restful-apis/v2/get-partners.js.map +0 -1
  248. package/dist-server/routers/api/restful-apis/v2/get-products.js +0 -210
  249. package/dist-server/routers/api/restful-apis/v2/get-products.js.map +0 -1
  250. package/dist-server/routers/api/restful-apis/v2/get-release-order-detail.js +0 -122
  251. package/dist-server/routers/api/restful-apis/v2/get-release-order-detail.js.map +0 -1
  252. package/dist-server/routers/api/restful-apis/v2/get-release-order-list.js +0 -191
  253. package/dist-server/routers/api/restful-apis/v2/get-release-order-list.js.map +0 -1
  254. package/dist-server/routers/api/restful-apis/v2/get-warehouses.js +0 -20
  255. package/dist-server/routers/api/restful-apis/v2/get-warehouses.js.map +0 -1
  256. package/dist-server/routers/api/restful-apis/v2/index.js +0 -34
  257. package/dist-server/routers/api/restful-apis/v2/index.js.map +0 -1
  258. package/dist-server/routers/api/restful-apis/v2/reject-inbound-order.js +0 -35
  259. package/dist-server/routers/api/restful-apis/v2/reject-inbound-order.js.map +0 -1
  260. package/dist-server/routers/api/restful-apis/v2/set-marketplace-order-delivered.js +0 -45
  261. package/dist-server/routers/api/restful-apis/v2/set-marketplace-order-delivered.js.map +0 -1
  262. package/dist-server/routers/api/restful-apis/v2/set-marketplace-order-failed-delivery.js +0 -45
  263. package/dist-server/routers/api/restful-apis/v2/set-marketplace-order-failed-delivery.js.map +0 -1
  264. package/dist-server/routers/api/restful-apis/v2/update-marketplace-order.js +0 -93
  265. package/dist-server/routers/api/restful-apis/v2/update-marketplace-order.js.map +0 -1
  266. package/dist-server/routers/api/restful-apis/v2/update-marketplace-shipping-order.js +0 -85
  267. package/dist-server/routers/api/restful-apis/v2/update-marketplace-shipping-order.js.map +0 -1
  268. package/dist-server/routers/api/restful-apis/v2/update-release-order-details.js +0 -82
  269. package/dist-server/routers/api/restful-apis/v2/update-release-order-details.js.map +0 -1
  270. package/openapi/v1/ecommerce.yaml +0 -549
  271. package/openapi/v1/inventory.yaml +0 -231
  272. package/server/routers/api/restful-apis/v1/add-contact-point.ts +0 -77
  273. package/server/routers/api/restful-apis/v1/add-draft-release-order.ts +0 -196
  274. package/server/routers/api/restful-apis/v1/add-inbound-order.ts +0 -242
  275. package/server/routers/api/restful-apis/v1/add-marketplace-order.ts +0 -172
  276. package/server/routers/api/restful-apis/v1/add-products.ts +0 -112
  277. package/server/routers/api/restful-apis/v1/add-release-order.ts +0 -967
  278. package/server/routers/api/restful-apis/v1/bizplace.ts +0 -45
  279. package/server/routers/api/restful-apis/v1/cancel-marketplace-order.ts +0 -81
  280. package/server/routers/api/restful-apis/v1/cancel-release-order.ts +0 -91
  281. package/server/routers/api/restful-apis/v1/get-contact-point-list.ts +0 -110
  282. package/server/routers/api/restful-apis/v1/get-delivery-order-detail.ts +0 -46
  283. package/server/routers/api/restful-apis/v1/get-delivery-order-list.ts +0 -121
  284. package/server/routers/api/restful-apis/v1/get-delivery-orders.ts +0 -178
  285. package/server/routers/api/restful-apis/v1/get-goods-received-notes.ts +0 -134
  286. package/server/routers/api/restful-apis/v1/get-inbound-order-detail.ts +0 -128
  287. package/server/routers/api/restful-apis/v1/get-inbound-order-list.ts +0 -126
  288. package/server/routers/api/restful-apis/v1/get-inventory-overall-product-group.ts +0 -99
  289. package/server/routers/api/restful-apis/v1/get-inventory-product-group.ts +0 -112
  290. package/server/routers/api/restful-apis/v1/get-marketplace-order-shipping-list.ts +0 -156
  291. package/server/routers/api/restful-apis/v1/get-marketplace-store-list.ts +0 -81
  292. package/server/routers/api/restful-apis/v1/get-onhand-inventories.ts +0 -125
  293. package/server/routers/api/restful-apis/v1/get-partners.ts +0 -24
  294. package/server/routers/api/restful-apis/v1/get-products.ts +0 -216
  295. package/server/routers/api/restful-apis/v1/get-release-order-detail.ts +0 -134
  296. package/server/routers/api/restful-apis/v1/get-release-order-list.ts +0 -198
  297. package/server/routers/api/restful-apis/v1/get-warehouses.ts +0 -18
  298. package/server/routers/api/restful-apis/v1/reject-inbound-order.ts +0 -46
  299. package/server/routers/api/restful-apis/v1/set-marketplace-order-delivered.ts +0 -60
  300. package/server/routers/api/restful-apis/v1/set-marketplace-order-failed-delivery.ts +0 -60
  301. package/server/routers/api/restful-apis/v1/update-marketplace-order.ts +0 -111
  302. package/server/routers/api/restful-apis/v1/update-marketplace-shipping-order.ts +0 -104
  303. package/server/routers/api/restful-apis/v1/update-release-order-details.ts +0 -94
  304. package/server/routers/api/restful-apis/v2/add-contact-point.ts +0 -77
  305. package/server/routers/api/restful-apis/v2/add-draft-release-order.ts +0 -196
  306. package/server/routers/api/restful-apis/v2/add-inbound-order.ts +0 -242
  307. package/server/routers/api/restful-apis/v2/add-marketplace-order.ts +0 -172
  308. package/server/routers/api/restful-apis/v2/add-products.ts +0 -112
  309. package/server/routers/api/restful-apis/v2/add-release-order.ts +0 -967
  310. package/server/routers/api/restful-apis/v2/bizplace.ts +0 -45
  311. package/server/routers/api/restful-apis/v2/cancel-marketplace-order.ts +0 -81
  312. package/server/routers/api/restful-apis/v2/cancel-release-order.ts +0 -91
  313. package/server/routers/api/restful-apis/v2/get-contact-point-list.ts +0 -110
  314. package/server/routers/api/restful-apis/v2/get-delivery-order-detail.ts +0 -46
  315. package/server/routers/api/restful-apis/v2/get-delivery-order-list.ts +0 -121
  316. package/server/routers/api/restful-apis/v2/get-delivery-orders.ts +0 -178
  317. package/server/routers/api/restful-apis/v2/get-goods-received-notes.ts +0 -134
  318. package/server/routers/api/restful-apis/v2/get-inbound-order-detail.ts +0 -128
  319. package/server/routers/api/restful-apis/v2/get-inbound-order-list.ts +0 -126
  320. package/server/routers/api/restful-apis/v2/get-inventory-overall-product-group.ts +0 -99
  321. package/server/routers/api/restful-apis/v2/get-inventory-product-group.ts +0 -112
  322. package/server/routers/api/restful-apis/v2/get-marketplace-order-shipping-list.ts +0 -156
  323. package/server/routers/api/restful-apis/v2/get-marketplace-store-list.ts +0 -81
  324. package/server/routers/api/restful-apis/v2/get-onhand-inventories.ts +0 -125
  325. package/server/routers/api/restful-apis/v2/get-partners.ts +0 -24
  326. package/server/routers/api/restful-apis/v2/get-products.ts +0 -216
  327. package/server/routers/api/restful-apis/v2/get-release-order-detail.ts +0 -134
  328. package/server/routers/api/restful-apis/v2/get-release-order-list.ts +0 -198
  329. package/server/routers/api/restful-apis/v2/get-warehouses.ts +0 -18
  330. package/server/routers/api/restful-apis/v2/index.ts +0 -31
  331. package/server/routers/api/restful-apis/v2/reject-inbound-order.ts +0 -46
  332. package/server/routers/api/restful-apis/v2/set-marketplace-order-delivered.ts +0 -60
  333. package/server/routers/api/restful-apis/v2/set-marketplace-order-failed-delivery.ts +0 -60
  334. package/server/routers/api/restful-apis/v2/update-marketplace-order.ts +0 -111
  335. package/server/routers/api/restful-apis/v2/update-marketplace-shipping-order.ts +0 -104
  336. package/server/routers/api/restful-apis/v2/update-release-order-details.ts +0 -94
@@ -0,0 +1,261 @@
1
+ import { EntityManager, getConnection } from 'typeorm'
2
+
3
+ import { restfulApiRouter as router } from '@things-factory/api'
4
+ import { ArrivalNotice, ReleaseGood } from '@things-factory/sales-base'
5
+
6
+ import { ApiError, ApiErrorHandler, throwInternalServerError } from '../utils/error-util'
7
+ import _ from 'lodash'
8
+
9
+ // import for cancelling Inbound Order Purpose
10
+ import { ORDER_STATUS } from '@things-factory/sales-base'
11
+ import { User, ApplicationType } from '@things-factory/auth-base'
12
+ import { Domain } from '@things-factory/shell'
13
+ import {
14
+ OrderProduct,
15
+ OrderVas,
16
+ CollectionOrder,
17
+ ORDER_PRODUCT_STATUS,
18
+ ORDER_VAS_STATUS,
19
+ ORDER_INVENTORY_STATUS,
20
+ ShippingOrder,
21
+ SellercraftController,
22
+ OrderInventory
23
+ } from '@things-factory/sales-base'
24
+ import { getDomainUsers } from '@things-factory/biz-base'
25
+ import { Sellercraft, SellercraftStatus } from '@things-factory/integration-sellercraft'
26
+ import { Inventory } from '@things-factory/warehouse-base'
27
+
28
+ import { loggingMiddleware, validationMiddleware, businessMiddleware } from '../middlewares'
29
+
30
+ router.post(
31
+ '/v1/warehouse/cancel-inbound-order',
32
+ businessMiddleware,
33
+ validationMiddleware,
34
+ loggingMiddleware,
35
+ async (context, next) => {
36
+ try {
37
+ await getConnection().transaction(async (tx: EntityManager) => {
38
+ let bodyReq = context.request.body.data
39
+ const validateArrivalNotice: ArrivalNotice = await tx.getRepository(ArrivalNotice).findOne({
40
+ where: { name: bodyReq.ganNo }
41
+ })
42
+ if (!validateArrivalNotice) throw new ApiError('E04', 'ganNo')
43
+
44
+ const arrivalNotice: ArrivalNotice = await rejectArrivalNotice(
45
+ tx,
46
+ validateArrivalNotice.name,
47
+ bodyReq.remark,
48
+ context
49
+ )
50
+
51
+ if (arrivalNotice.crossDocking) {
52
+ const { releaseGood }: ReleaseGood = await tx.getRepository(arrivalNotice).findOne(arrivalNotice.id, {
53
+ relations: ['releaseGood']
54
+ })
55
+
56
+ if (releaseGood.status !== ORDER_STATUS.REJECTED) {
57
+ await rejectReleaseGood(tx, context, releaseGood.name, bodyReq.remark)
58
+ }
59
+ }
60
+
61
+ context.body = {
62
+ data: {
63
+ ganNo: arrivalNotice.name
64
+ }
65
+ }
66
+ })
67
+ } catch (e) {
68
+ if (e instanceof ApiError) ApiErrorHandler(context, e)
69
+ else throwInternalServerError(context, e)
70
+ }
71
+ }
72
+ )
73
+
74
+ async function rejectArrivalNotice(
75
+ tx: EntityManager,
76
+ name: string,
77
+ remark: string,
78
+ context: any
79
+ ): Promise<ArrivalNotice> {
80
+ const { user, domain }: { user: User; domain: Domain } = context.state
81
+
82
+ const foundArrivalNotice: ArrivalNotice = await tx.getRepository(ArrivalNotice).findOne({
83
+ where: { name, status: ORDER_STATUS.PENDING_RECEIVE }, // try remove domain
84
+ relations: ['bizplace', 'orderProducts', 'orderVass', 'collectionOrders']
85
+ })
86
+
87
+ if (!foundArrivalNotice) throw new ApiError('E04', 'arrival notice')
88
+ if (!remark) throw new ApiError('E03', 'remark')
89
+
90
+ let foundOPs: OrderProduct[] = foundArrivalNotice.orderProducts
91
+ let foundOVs: OrderVas[] = foundArrivalNotice.orderVass
92
+ let foundCOs: CollectionOrder[] = foundArrivalNotice.collectionOrders
93
+
94
+ // 1. Update status of order products (PENDING_RECEIVE => REJECTED)
95
+ foundOPs = foundOPs.map((op: OrderProduct) => {
96
+ op.status = ORDER_PRODUCT_STATUS.REJECTED
97
+ op.updater = user
98
+ return op
99
+ })
100
+ await tx.getRepository(OrderProduct).save(foundOPs)
101
+
102
+ // 2. Update status of order vass if it exists (PENDING_RECEIVE => REJECTED)
103
+ if (foundOVs && foundOVs.length) {
104
+ foundOVs = foundOVs.map((ov: OrderVas) => {
105
+ ov.status = ORDER_VAS_STATUS.REJECTED
106
+ ov.updater = user
107
+ return ov
108
+ })
109
+ await tx.getRepository(OrderVas).save(foundOVs)
110
+ }
111
+
112
+ // 3. If there's collection order, update status of collection order (PENDING_RECEIVE => REJECTED)
113
+ if (foundCOs) {
114
+ foundCOs = foundCOs.map((co: CollectionOrder) => {
115
+ co.status = ORDER_STATUS.REJECTED
116
+ co.updater = user
117
+ return co
118
+ })
119
+ await tx.getRepository(CollectionOrder).save(foundCOs)
120
+ }
121
+
122
+ foundArrivalNotice.remark = remark
123
+ foundArrivalNotice.status = ORDER_STATUS.REJECTED
124
+ foundArrivalNotice.updater = user
125
+ await tx.getRepository(ArrivalNotice).save(foundArrivalNotice)
126
+
127
+ // notification logics
128
+ const users: any[] = await getDomainUsers(foundArrivalNotice?.bizplace, tx)
129
+
130
+ // send notification to Customer Users
131
+ if (users?.length && context.header?.referer) {
132
+ const receivers: any[] = users.map(user => user.id)
133
+ const msg = {
134
+ title: `Latest status for ${foundArrivalNotice.name}`,
135
+ body: `Your GAN has been rejected.`,
136
+ url: context.header.referer,
137
+ data: { url: context.header.referer }
138
+ }
139
+ }
140
+ return foundArrivalNotice
141
+ }
142
+
143
+ async function rejectReleaseGood(tx: EntityManager, context: any, name: string, remark: string): Promise<ReleaseGood> {
144
+ const { domain, user }: { domain: Domain; user: User } = context.state
145
+
146
+ const releaseGood: ReleaseGood = await tx.getRepository(ReleaseGood).findOne({
147
+ where: { domain, name, status: ORDER_STATUS.PENDING_RECEIVE },
148
+ relations: [
149
+ 'bizplace',
150
+ 'bizplace.domain',
151
+ 'orderProducts',
152
+ 'orderProducts.product',
153
+ 'orderProducts.product.productDetails',
154
+ 'orderInventories',
155
+ 'orderInventories.inventory',
156
+ 'orderVass',
157
+ 'shippingOrder'
158
+ ]
159
+ })
160
+
161
+ if (!releaseGood) throw new ApiError('E04', `release good`)
162
+ if (!remark) throw new ApiError('E03', 'remark')
163
+
164
+ let foundOIs: OrderInventory[] = releaseGood.orderInventories
165
+ let foundOVs: OrderVas[] = releaseGood.orderVass
166
+ let foundOPs: OrderProduct[] = releaseGood.orderProducts
167
+
168
+ // 1. Update status of order products (PENDING_RECEIVE => REJECTED)
169
+ if (foundOIs && foundOIs.length) {
170
+ await tx.getRepository(OrderInventory).save(
171
+ await Promise.all(
172
+ foundOIs.map(async (oi: OrderInventory) => {
173
+ if (oi?.inventory?.id) {
174
+ oi.inventory = await tx.getRepository(Inventory).findOne(oi.inventory.id)
175
+
176
+ await tx.getRepository(Inventory).save({
177
+ ...oi.inventory,
178
+ lockedQty: oi.inventory.lockedQty - oi.releaseQty,
179
+ lockedUomValue: oi.inventory.lockedUomValue - oi.releaseUomValue,
180
+ updater: user
181
+ })
182
+ }
183
+
184
+ oi.status = ORDER_INVENTORY_STATUS.REJECTED
185
+ oi.updater = user
186
+ return oi
187
+ })
188
+ )
189
+ )
190
+ }
191
+
192
+ if (foundOPs && foundOPs.length) {
193
+ const orderSource: string = releaseGood.source
194
+ switch (orderSource) {
195
+ case ApplicationType.SELLERCRAFT:
196
+ const sellercraft: Sellercraft = await tx
197
+ .getRepository(Sellercraft)
198
+ .findOne({ domain: releaseGood.bizplace.domain, status: SellercraftStatus.ACTIVE })
199
+
200
+ if (sellercraft) {
201
+ const sellercraftCtrl: SellercraftController = new SellercraftController(tx, domain, user)
202
+ await sellercraftCtrl.updateSellercraftStock(sellercraft, foundOPs, 'REJECT_ORDER')
203
+ }
204
+ break
205
+
206
+ default:
207
+ break
208
+ }
209
+
210
+ await tx.getRepository(OrderProduct).save(
211
+ await Promise.all(
212
+ foundOPs.map(async (op: OrderProduct) => {
213
+ op.status = ORDER_PRODUCT_STATUS.REJECTED
214
+ op.updater = user
215
+ return op
216
+ })
217
+ )
218
+ )
219
+ }
220
+
221
+ // 2. Update status of order vass if it exists (PENDING_RECEIVE => REJECTED)
222
+ if (foundOVs && foundOVs.length) {
223
+ foundOVs = foundOVs.map((ov: OrderVas) => {
224
+ ov.status = ORDER_VAS_STATUS.REJECTED
225
+ ov.updater = user
226
+ return ov
227
+ })
228
+ await tx.getRepository(OrderVas).save(foundOVs)
229
+ }
230
+
231
+ if (releaseGood.shippingOrder) {
232
+ // 2. 1) if it's yes update status of collection order
233
+ const shippingOrder: ShippingOrder = await tx.getRepository(ShippingOrder).findOne({
234
+ where: { domain, name: releaseGood.shippingOrder.name }
235
+ })
236
+
237
+ shippingOrder.status = ORDER_STATUS.REJECTED
238
+ shippingOrder.updater = user
239
+ await tx.getRepository(ShippingOrder).save(shippingOrder)
240
+ }
241
+
242
+ releaseGood.remark = remark
243
+ releaseGood.status = ORDER_STATUS.REJECTED
244
+ releaseGood.updater = user
245
+ await tx.getRepository(ReleaseGood).save(releaseGood)
246
+
247
+ // notification logics
248
+ const users: any[] = await getDomainUsers(releaseGood?.bizplace, tx)
249
+
250
+ if (users?.length && context.header?.referer) {
251
+ const receivers: any[] = users.map(user => user.id)
252
+ const msg = {
253
+ title: `Latest status for ${releaseGood.name}`,
254
+ body: `Your RO has been rejected.`,
255
+ url: context.header.referer,
256
+ data: { url: context.header.referer }
257
+ }
258
+ }
259
+
260
+ return releaseGood
261
+ }
@@ -0,0 +1,252 @@
1
+ import { EntityManager, getConnection, In } from 'typeorm'
2
+ import { restfulApiRouter as router } from '@things-factory/api'
3
+ import { Bizplace } from '@things-factory/biz-base'
4
+ import { ReleaseGood, DraftReleaseGood, OrderInventory, DeliveryOrder, OrderVas, ORDER_STATUS, ORDER_INVENTORY_STATUS, ORDER_VAS_STATUS } from '@things-factory/sales-base'
5
+ import { Worksheet, WorksheetDetail } from '@things-factory/worksheet-base'
6
+ import { User } from '@things-factory/auth-base'
7
+ import { businessMiddleware, validationMiddleware, loggingMiddleware } from '../middlewares'
8
+ import { ApiError, ApiErrorHandler, throwInternalServerError } from '../utils/error-util'
9
+
10
+ const debug = require('debug')('things-factory:operato-hub:restful-api:unstable:cancel-release-order')
11
+
12
+ router.post(
13
+ '/v1/warehouse/cancel-release-order',
14
+ businessMiddleware,
15
+ validationMiddleware,
16
+ loggingMiddleware,
17
+ async (context, next) => {
18
+ try {
19
+ const { domain } = context.state
20
+ const { bizplaceId: warehouseId } = context.request.body.data
21
+ const { user }: { user: User } = context.state
22
+ const bodyReq = context.request.body.data
23
+
24
+ await getConnection().transaction(async (tx: EntityManager) => {
25
+ const customerBizplace: Bizplace = await tx.getRepository(Bizplace).findOne({
26
+ where: { id: warehouseId }
27
+ })
28
+
29
+ const releaseOrder: ReleaseGood = await tx.getRepository(ReleaseGood).findOne({
30
+ where: [{ id: bodyReq.releaseOrderId }, { refNo: bodyReq.orderNo }]
31
+ })
32
+
33
+ if (!releaseOrder) {
34
+ const draftReleaseOrder: DraftReleaseGood = await tx.getRepository(DraftReleaseGood).findOne({
35
+ where: [{ refNo: bodyReq.orderNo }]
36
+ })
37
+ if (draftReleaseOrder) {
38
+ context.body = await cancelDraftReleaseOrder(tx, domain, draftReleaseOrder.name, user)
39
+ return
40
+ } else {
41
+ throw new ApiError('E04', 'release order')
42
+ }
43
+ }
44
+
45
+ debug('post:/cancel-release-order body request', bodyReq)
46
+
47
+ context.body = await pendingCancellationReleaseOrder(tx, domain, releaseOrder.name, user)
48
+ })
49
+ } catch (e) {
50
+ if (e instanceof ApiError) ApiErrorHandler(context, e)
51
+ else throwInternalServerError(context, e)
52
+ }
53
+ }
54
+ )
55
+
56
+ async function cancelDraftReleaseOrder(tx, domain, name, user) {
57
+ const foundDRO: DraftReleaseGood = await tx.getRepository(DraftReleaseGood).findOne({
58
+ where: { domain, name }
59
+ })
60
+
61
+ if (foundDRO) {
62
+ await tx.getRepository(DraftReleaseGood).save({
63
+ ...foundDRO,
64
+ status: ORDER_STATUS.CANCELLED,
65
+ updater: user
66
+ })
67
+ return {
68
+ data: {
69
+ draftRoNo: foundDRO.name
70
+ }
71
+ }
72
+ }
73
+ }
74
+
75
+ async function pendingCancellationReleaseOrder(tx, domain, name, user) {
76
+ const foundRO: ReleaseGood = await tx.getRepository(ReleaseGood).findOne({
77
+ where: { domain, name },
78
+ relations: ['bizplace', 'orderInventories', 'orderVass']
79
+ })
80
+
81
+ if (foundRO.status === "DONE") throw new ApiError('E01', 'Release good has been completed!')
82
+ if (!foundRO) throw new ApiError('E04', `Release good order doesn't exist`)
83
+ let targetOIs: OrderInventory[] = foundRO.orderInventories
84
+ let foundOVs: OrderVas[] = foundRO.orderVass
85
+ let pickedOIs: OrderInventory[]
86
+ let pickingOIs: OrderInventory[]
87
+
88
+ // 1. Check RO status
89
+ if (
90
+ foundRO.status === ORDER_STATUS.LOADING ||
91
+ foundRO.status === ORDER_STATUS.PACKING ||
92
+ foundRO.status === ORDER_STATUS.SORTING
93
+ ) {
94
+ // 1a. Case 1: RO is done or loading, pending cancel order, worksheet, worksheet detail, order inventory
95
+ // update status of order inventory to PENDING_CANCEL
96
+ pickedOIs = targetOIs.map((orderInv: OrderInventory) => {
97
+ return {
98
+ ...orderInv,
99
+ status: ORDER_INVENTORY_STATUS.PENDING_REVERSE,
100
+ updater: user
101
+ }
102
+ })
103
+ await tx.getRepository(OrderInventory).save(pickedOIs)
104
+ } else if (
105
+ foundRO.status === ORDER_STATUS.PICKING ||
106
+ foundRO.status === ORDER_STATUS.READY_TO_PICK ||
107
+ foundRO.status === ORDER_STATUS.PENDING_WORKSHEET
108
+ ) {
109
+ pickingOIs = targetOIs
110
+ .filter(
111
+ (oi: OrderInventory) =>
112
+ oi.status === ORDER_INVENTORY_STATUS.ASSIGNED ||
113
+ oi.status === ORDER_INVENTORY_STATUS.PICKING ||
114
+ oi.status === ORDER_INVENTORY_STATUS.READY_TO_PICK ||
115
+ oi.status === ORDER_INVENTORY_STATUS.PENDING_SPLIT ||
116
+ oi.status === ORDER_INVENTORY_STATUS.PENDING_WORKSHEET
117
+ )
118
+ .map((targetOI: OrderInventory) => {
119
+ return {
120
+ ...targetOI,
121
+ status: ORDER_INVENTORY_STATUS.PENDING_CANCEL,
122
+ updater: user
123
+ }
124
+ })
125
+ await tx.getRepository(OrderInventory).save(pickingOIs)
126
+
127
+ pickedOIs = targetOIs
128
+ .filter((pickedOI: OrderInventory) => pickedOI.status === ORDER_INVENTORY_STATUS.PICKED)
129
+ .map((targetOI: OrderInventory) => {
130
+ return {
131
+ ...targetOI,
132
+ status: ORDER_INVENTORY_STATUS.PENDING_REVERSE,
133
+ updater: user
134
+ }
135
+ })
136
+ await tx.getRepository(OrderInventory).save(pickedOIs)
137
+ }
138
+
139
+ // update status of order vass to PENDING_CANCEL
140
+ if (foundOVs && foundOVs.length) {
141
+ foundOVs = foundOVs.map((orderVas: OrderVas) => {
142
+ return {
143
+ ...orderVas,
144
+ status: ORDER_VAS_STATUS.PENDING_CANCEL,
145
+ updater: user
146
+ }
147
+ })
148
+ await tx.getRepository(OrderVas).save(foundOVs)
149
+ }
150
+
151
+ // find worksheet and update status to PENDING_CANCEL
152
+ let foundWS: Worksheet = await tx.getRepository(Worksheet).findOne({
153
+ where: {
154
+ domain,
155
+ releaseGood: foundRO
156
+ },
157
+ order: { 'createdAt': 'DESC' }
158
+ })
159
+
160
+ if (foundWS) {
161
+ await tx.getRepository(Worksheet).update({ id: foundWS.id }, {
162
+ status: ORDER_INVENTORY_STATUS.PENDING_CANCEL,
163
+ updater: user
164
+ })
165
+
166
+ if (pickedOIs && pickedOIs.length) {
167
+ let pickedWSD: WorksheetDetail[] = await tx.getRepository(WorksheetDetail).find({
168
+ where: {
169
+ domain,
170
+ targetInventory: In(pickedOIs.map(oi => oi.id)),
171
+ status: ORDER_INVENTORY_STATUS.DONE,
172
+ worksheet: foundWS
173
+ }
174
+ })
175
+
176
+ pickedWSD = pickedWSD.map((wsd: WorksheetDetail) => {
177
+ return {
178
+ ...wsd,
179
+ status: ORDER_INVENTORY_STATUS.PENDING_CANCEL,
180
+ updater: user
181
+ }
182
+ })
183
+ await tx.getRepository(WorksheetDetail).save(pickedWSD)
184
+
185
+ let replacedWSD: WorksheetDetail[] = await tx.getRepository(WorksheetDetail).find({
186
+ where: {
187
+ domain,
188
+ targetInventory: In(pickedOIs.map(oi => oi.id)),
189
+ status: ORDER_INVENTORY_STATUS.REPLACED,
190
+ worksheet: foundWS
191
+ },
192
+ relations: ['targetInventory']
193
+ })
194
+
195
+ if (replacedWSD && replacedWSD.length) {
196
+ let replacedOI: OrderInventory[] = replacedWSD.map((wsd: WorksheetDetail) => wsd.targetInventory)
197
+ replacedOI = replacedOI.map((oi: OrderInventory) => {
198
+ return {
199
+ ...oi,
200
+ status: ORDER_INVENTORY_STATUS.REPLACED,
201
+ updater: user
202
+ }
203
+ })
204
+ await tx.getRepository(OrderInventory).save(replacedOI)
205
+ }
206
+ }
207
+
208
+ if (pickingOIs && pickingOIs.length) {
209
+ let pickingWSD: WorksheetDetail[] = await tx.getRepository(WorksheetDetail).find({
210
+ where: {
211
+ domain, targetInventory: In(pickingOIs.map(oi => oi.id)),
212
+ worksheet: foundWS
213
+ }
214
+ })
215
+
216
+ pickingWSD = pickingWSD.map((wsd: WorksheetDetail) => {
217
+ return {
218
+ ...wsd,
219
+ status: ORDER_INVENTORY_STATUS.PENDING_CANCEL,
220
+ updater: user
221
+ }
222
+ })
223
+ await tx.getRepository(WorksheetDetail).save(pickingWSD)
224
+ }
225
+ }
226
+
227
+ // find DO and change status to pending cancel
228
+ let foundDO: DeliveryOrder[] = await tx.getRepository(DeliveryOrder).find({
229
+ where: { domain, releaseGood: foundRO }
230
+ })
231
+
232
+ foundDO = foundDO.map((deliveryOrder: DeliveryOrder) => {
233
+ return {
234
+ ...deliveryOrder,
235
+ status: ORDER_STATUS.PENDING_CANCEL,
236
+ updater: user
237
+ }
238
+ })
239
+ await tx.getRepository(DeliveryOrder).save(foundDO)
240
+
241
+ await tx.getRepository(ReleaseGood).save({
242
+ ...foundRO,
243
+ status: ORDER_STATUS.PENDING_CANCEL,
244
+ updater: user
245
+ })
246
+
247
+ return {
248
+ data: {
249
+ roNo: foundRO.name
250
+ }
251
+ }
252
+ }
@@ -0,0 +1,141 @@
1
+ import _ from 'lodash'
2
+ import { Between, getRepository } from 'typeorm'
3
+
4
+ import { restfulApiRouter as router } from '@things-factory/api'
5
+ import { DeliveryOrder } from '@things-factory/sales-base'
6
+
7
+ import { ApiError, ApiErrorHandler, throwInternalServerError } from '../utils/error-util'
8
+ import { businessMiddleware, validationMiddleware, loggingMiddleware } from '../middlewares'
9
+
10
+ router.get(
11
+ '/v1/warehouse/get-delivery-order-list',
12
+ businessMiddleware,
13
+ validationMiddleware,
14
+ loggingMiddleware,
15
+ async (context, next) => {
16
+ try {
17
+ // get contact points for that bizplace
18
+ // optional query parameter filter
19
+ let filter = { ...context.query }
20
+ const { limit, offset, fromDate, toDate } = filter
21
+ filter['bizplace'] = filter['bizplaceId']
22
+ delete filter['bizplaceId']
23
+ if (_.has(filter, 'doNo')) {
24
+ filter['name'] = filter['doNo']
25
+ delete filter['doNo']
26
+ }
27
+ filter['createdAt'] = Between(fromDate, toDate)
28
+
29
+ delete filter['fromDate']
30
+ delete filter['toDate']
31
+ delete filter['limit']
32
+ delete filter['offset']
33
+ const [deliveryOrders, totalCount]: DeliveryOrder[] = await getRepository(DeliveryOrder).findAndCount({
34
+ where: filter,
35
+ relations: ['releaseGood', 'releaseGood.orderInventories', 'bizplace', 'domain'],
36
+ skip: offset,
37
+ take: limit,
38
+ order: { createdAt: 'DESC' }
39
+ })
40
+
41
+ // create and format data response
42
+ let data = []
43
+ for (const deliveryOrder of deliveryOrders) {
44
+ let orderInventories = []
45
+ for (const orderInventory of deliveryOrder.releaseGood.orderInventories) {
46
+ orderInventories.push(orderInventory)
47
+ }
48
+ const datapoint = {
49
+ id: deliveryOrder.id,
50
+ doNo: deliveryOrder.name,
51
+ from: deliveryOrder.from,
52
+ to: deliveryOrder.to,
53
+ contactPointRefId: deliveryOrder.contactPointRefId,
54
+ truckNo: deliveryOrder.truckNo,
55
+ deliveryDate: deliveryOrder.deliveryDate,
56
+ status: deliveryOrder.status,
57
+ ownCollection: deliveryOrder.ownCollection,
58
+ looseItem: deliveryOrder.looseItem,
59
+ deliveryDateTime: deliveryOrder.deliveryDateTime,
60
+ loadWeight: deliveryOrder.loadWeight,
61
+ cargoType: deliveryOrder.cargoType,
62
+ urgency: deliveryOrder.urgency,
63
+ telNo: deliveryOrder.telNo,
64
+ refNo: deliveryOrder.refNo,
65
+ otherDriver: deliveryOrder.otherDriver,
66
+ palletQty: deliveryOrder.palletQty,
67
+ remark: deliveryOrder.remark,
68
+ description: deliveryOrder.description,
69
+ reusablePallet: deliveryOrder.reusablePallet,
70
+ bizplace: {
71
+ id: deliveryOrder.bizplace.id,
72
+ name: deliveryOrder.bizplace.name,
73
+ description: deliveryOrder.bizplace.description
74
+ },
75
+ domain: {
76
+ id: deliveryOrder.domain.id,
77
+ name: deliveryOrder.domain.name
78
+ },
79
+ releaseGood: {
80
+ id: deliveryOrder.releaseGood.id,
81
+ roNo: deliveryOrder.releaseGood.name,
82
+ description: deliveryOrder.releaseGood.description,
83
+ status: deliveryOrder.releaseGood.status,
84
+ refNo: deliveryOrder.releaseGood.refNo,
85
+ refNo2: deliveryOrder.releaseGood.refNo2,
86
+ refNo3: deliveryOrder.releaseGood.refNo3,
87
+ truckNo: deliveryOrder.releaseGood.truckNo,
88
+ exportOption: deliveryOrder.releaseGood.exportOption,
89
+ ownTransport: deliveryOrder.releaseGood.ownTransport,
90
+ crossDocking: deliveryOrder.releaseGood.crossDocking,
91
+ releaseDateTime: deliveryOrder.releaseGood.releaseDateTime,
92
+ releaseDate: deliveryOrder.releaseGood.releaseDate,
93
+ remark: deliveryOrder.releaseGood.remark,
94
+ courierOption: deliveryOrder.releaseGood.courierOption,
95
+ packingOption: deliveryOrder.releaseGood.packingOption,
96
+ type: deliveryOrder.releaseGood.type,
97
+ acceptedAt: deliveryOrder.releaseGood.acceptedAt,
98
+ marketplaceOrderStatus: deliveryOrder.releaseGood.marketplaceOrderStatus,
99
+ billingAddress: deliveryOrder.releaseGood.billingAddress,
100
+ deliveryAddress1: deliveryOrder.releaseGood.deliveryAddress1,
101
+ deliveryAddress2: deliveryOrder.releaseGood.deliveryAddress2,
102
+ deliveryAddress3: deliveryOrder.releaseGood.deliveryAddress3,
103
+ deliveryAddress4: deliveryOrder.releaseGood.deliveryAddress4,
104
+ deliveryAddress5: deliveryOrder.releaseGood.deliveryAddress5,
105
+ attentionTo: deliveryOrder.releaseGood.attentionTo,
106
+ attentionCompany: deliveryOrder.releaseGood.attentionCompany,
107
+ city: deliveryOrder.releaseGood.city,
108
+ state: deliveryOrder.releaseGood.state,
109
+ postalCode: deliveryOrder.releaseGood.postalCode,
110
+ country: deliveryOrder.releaseGood.country,
111
+ phone1: deliveryOrder.releaseGood.phone1,
112
+ phone2: deliveryOrder.releaseGood.phone2,
113
+ email: deliveryOrder.releaseGood.email,
114
+ transporter: deliveryOrder.releaseGood.transporter,
115
+ trackingNo: deliveryOrder.releaseGood.trackingNo,
116
+ airwayBill: deliveryOrder.releaseGood.airwayBill,
117
+ invoice: deliveryOrder.releaseGood.invoice,
118
+ pickupAddress: deliveryOrder.releaseGood.pickupAddress,
119
+ pickupTime: deliveryOrder.releaseGood.pickupTime,
120
+ handoverType: deliveryOrder.releaseGood.handoverType,
121
+ dropoffAddress: deliveryOrder.releaseGood.dropoffAddress,
122
+ noOfItems: deliveryOrder.releaseGood.noOfItems,
123
+ orderProducts: []
124
+ },
125
+ orderInventories
126
+ }
127
+ data.push(datapoint)
128
+ }
129
+
130
+ context.body = {
131
+ data,
132
+ totalCount,
133
+ limit,
134
+ offset
135
+ }
136
+ } catch (e) {
137
+ if (e instanceof ApiError) ApiErrorHandler(context, e)
138
+ else throwInternalServerError(context, e)
139
+ }
140
+ }
141
+ )