@things-factory/operato-hub 4.3.122 → 4.3.125

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