@things-factory/warehouse-base 4.0.0-y.0 → 4.0.4

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 (358) hide show
  1. package/dist-server/constants/inventory.js +4 -1
  2. package/dist-server/constants/inventory.js.map +1 -1
  3. package/dist-server/controllers/ecommerce/ecommerce-controller.js +3 -3
  4. package/dist-server/controllers/ecommerce/ecommerce-controller.js.map +1 -1
  5. package/dist-server/controllers/ecommerce/index.js +1 -0
  6. package/dist-server/controllers/ecommerce/index.js.map +1 -1
  7. package/dist-server/controllers/ecommerce/sellercraft-controller.js +48 -0
  8. package/dist-server/controllers/ecommerce/sellercraft-controller.js.map +1 -0
  9. package/dist-server/controllers/warehouse-controller.js +40 -1
  10. package/dist-server/controllers/warehouse-controller.js.map +1 -1
  11. package/dist-server/entities/reduced-inventory-history.js +8 -7
  12. package/dist-server/entities/reduced-inventory-history.js.map +1 -1
  13. package/dist-server/graphql/resolvers/inventory/check-product-identicality.js +2 -2
  14. package/dist-server/graphql/resolvers/inventory/check-product-identicality.js.map +1 -1
  15. package/dist-server/graphql/resolvers/inventory/inventories-by-strategy.js +4 -2
  16. package/dist-server/graphql/resolvers/inventory/inventories-by-strategy.js.map +1 -1
  17. package/dist-server/graphql/resolvers/inventory-change/approve-inventory-changes.js +25 -5
  18. package/dist-server/graphql/resolvers/inventory-change/approve-inventory-changes.js.map +1 -1
  19. package/dist-server/graphql/resolvers/inventory-history/inventory-history-summary-report.js +12 -11
  20. package/dist-server/graphql/resolvers/inventory-history/inventory-history-summary-report.js.map +1 -1
  21. package/dist-server/graphql/resolvers/inventory-history/onhand-inventories.js +6 -3
  22. package/dist-server/graphql/resolvers/inventory-history/onhand-inventories.js.map +1 -1
  23. package/dist-server/graphql/resolvers/location/location-occupancies.js +15 -28
  24. package/dist-server/graphql/resolvers/location/location-occupancies.js.map +1 -1
  25. package/dist-server/graphql/resolvers/location/location.js +3 -2
  26. package/dist-server/graphql/resolvers/location/location.js.map +1 -1
  27. package/dist-server/graphql/resolvers/movement/inbound-movements-counter.js +5 -7
  28. package/dist-server/graphql/resolvers/movement/inbound-movements-counter.js.map +1 -1
  29. package/dist-server/graphql/resolvers/movement/outbound-movements-counter.js +5 -7
  30. package/dist-server/graphql/resolvers/movement/outbound-movements-counter.js.map +1 -1
  31. package/dist-server/graphql/resolvers/movement/weekly-movements-counter.js +14 -32
  32. package/dist-server/graphql/resolvers/movement/weekly-movements-counter.js.map +1 -1
  33. package/dist-server/graphql/types/inventory/index.js +1 -1
  34. package/dist-server/graphql/types/inventory/inventory-patch.js +1 -0
  35. package/dist-server/graphql/types/inventory/inventory-patch.js.map +1 -1
  36. package/dist-server/graphql/types/location/index.js +4 -4
  37. package/dist-server/graphql/types/location/index.js.map +1 -1
  38. package/dist-server/graphql/types/warehouse/index.js.map +1 -1
  39. package/dist-server/index.js +11 -12
  40. package/dist-server/index.js.map +1 -1
  41. package/dist-server/service/index.js +71 -0
  42. package/dist-server/service/index.js.map +1 -0
  43. package/dist-server/service/inventory/index.js +9 -0
  44. package/dist-server/service/inventory/index.js.map +1 -0
  45. package/dist-server/service/inventory/inventory-mutation.js +324 -0
  46. package/dist-server/service/inventory/inventory-mutation.js.map +1 -0
  47. package/dist-server/service/inventory/inventory-query.js +678 -0
  48. package/dist-server/service/inventory/inventory-query.js.map +1 -0
  49. package/dist-server/service/inventory/inventory-types.js +405 -0
  50. package/dist-server/service/inventory/inventory-types.js.map +1 -0
  51. package/dist-server/service/inventory/inventory.js +292 -0
  52. package/dist-server/service/inventory/inventory.js.map +1 -0
  53. package/dist-server/service/inventory-change/index.js +9 -0
  54. package/dist-server/service/inventory-change/index.js.map +1 -0
  55. package/dist-server/service/inventory-change/inventory-change-mutation.js +530 -0
  56. package/dist-server/service/inventory-change/inventory-change-mutation.js.map +1 -0
  57. package/dist-server/service/inventory-change/inventory-change-query.js +121 -0
  58. package/dist-server/service/inventory-change/inventory-change-query.js.map +1 -0
  59. package/dist-server/service/inventory-change/inventory-change-types.js +65 -0
  60. package/dist-server/service/inventory-change/inventory-change-types.js.map +1 -0
  61. package/dist-server/service/inventory-change/inventory-change.js +185 -0
  62. package/dist-server/service/inventory-change/inventory-change.js.map +1 -0
  63. package/dist-server/service/inventory-history/index.js +9 -0
  64. package/dist-server/service/inventory-history/index.js.map +1 -0
  65. package/dist-server/service/inventory-history/inventory-history-mutation.js +121 -0
  66. package/dist-server/service/inventory-history/inventory-history-mutation.js.map +1 -0
  67. package/dist-server/service/inventory-history/inventory-history-query.js +1283 -0
  68. package/dist-server/service/inventory-history/inventory-history-query.js.map +1 -0
  69. package/dist-server/service/inventory-history/inventory-history-types.js +382 -0
  70. package/dist-server/service/inventory-history/inventory-history-types.js.map +1 -0
  71. package/dist-server/service/inventory-history/inventory-history.js +233 -0
  72. package/dist-server/service/inventory-history/inventory-history.js.map +1 -0
  73. package/dist-server/service/location/index.js +9 -0
  74. package/dist-server/service/location/index.js.map +1 -0
  75. package/dist-server/service/location/location-mutation.js +157 -0
  76. package/dist-server/service/location/location-mutation.js.map +1 -0
  77. package/dist-server/service/location/location-query.js +251 -0
  78. package/dist-server/service/location/location-query.js.map +1 -0
  79. package/dist-server/service/location/location-types.js +223 -0
  80. package/dist-server/service/location/location-types.js.map +1 -0
  81. package/dist-server/service/location/location.js +125 -0
  82. package/dist-server/service/location/location.js.map +1 -0
  83. package/dist-server/service/movement/index.js +9 -0
  84. package/dist-server/service/movement/index.js.map +1 -0
  85. package/dist-server/service/movement/movement-mutation.js +80 -0
  86. package/dist-server/service/movement/movement-mutation.js.map +1 -0
  87. package/dist-server/service/movement/movement-query.js +286 -0
  88. package/dist-server/service/movement/movement-query.js.map +1 -0
  89. package/dist-server/service/movement/movement-types.js +117 -0
  90. package/dist-server/service/movement/movement-types.js.map +1 -0
  91. package/dist-server/service/movement/movement.js +101 -0
  92. package/dist-server/service/movement/movement.js.map +1 -0
  93. package/dist-server/service/pallet/index.js +9 -0
  94. package/dist-server/service/pallet/index.js.map +1 -0
  95. package/dist-server/service/pallet/pallet-mutation.js +192 -0
  96. package/dist-server/service/pallet/pallet-mutation.js.map +1 -0
  97. package/dist-server/service/pallet/pallet-query.js +164 -0
  98. package/dist-server/service/pallet/pallet-query.js.map +1 -0
  99. package/dist-server/service/pallet/pallet-types.js +109 -0
  100. package/dist-server/service/pallet/pallet-types.js.map +1 -0
  101. package/dist-server/service/pallet/pallet.js +112 -0
  102. package/dist-server/service/pallet/pallet.js.map +1 -0
  103. package/dist-server/service/pallet-count/index.js +9 -0
  104. package/dist-server/service/pallet-count/index.js.map +1 -0
  105. package/dist-server/service/pallet-count/pallet-count-mutation.js +156 -0
  106. package/dist-server/service/pallet-count/pallet-count-mutation.js.map +1 -0
  107. package/dist-server/service/pallet-count/pallet-count-query.js +86 -0
  108. package/dist-server/service/pallet-count/pallet-count-query.js.map +1 -0
  109. package/dist-server/service/pallet-count/pallet-count-types.js +65 -0
  110. package/dist-server/service/pallet-count/pallet-count-types.js.map +1 -0
  111. package/dist-server/service/pallet-count/pallet-count.js +89 -0
  112. package/dist-server/service/pallet-count/pallet-count.js.map +1 -0
  113. package/dist-server/service/pallet-history/index.js +9 -0
  114. package/dist-server/service/pallet-history/index.js.map +1 -0
  115. package/dist-server/service/pallet-history/pallet-history-mutation.js +120 -0
  116. package/dist-server/service/pallet-history/pallet-history-mutation.js.map +1 -0
  117. package/dist-server/service/pallet-history/pallet-history-query.js +87 -0
  118. package/dist-server/service/pallet-history/pallet-history-query.js.map +1 -0
  119. package/dist-server/service/pallet-history/pallet-history-types.js +65 -0
  120. package/dist-server/service/pallet-history/pallet-history-types.js.map +1 -0
  121. package/dist-server/service/pallet-history/pallet-history.js +107 -0
  122. package/dist-server/service/pallet-history/pallet-history.js.map +1 -0
  123. package/dist-server/service/reduced-inventory-history/index.js +6 -0
  124. package/dist-server/service/reduced-inventory-history/index.js.map +1 -0
  125. package/dist-server/service/reduced-inventory-history/reduced-inventory-history.js +133 -0
  126. package/dist-server/service/reduced-inventory-history/reduced-inventory-history.js.map +1 -0
  127. package/dist-server/service/warehouse/index.js +9 -0
  128. package/dist-server/service/warehouse/index.js.map +1 -0
  129. package/dist-server/service/warehouse/warehouse-mutation.js +135 -0
  130. package/dist-server/service/warehouse/warehouse-mutation.js.map +1 -0
  131. package/dist-server/service/warehouse/warehouse-query.js +91 -0
  132. package/dist-server/service/warehouse/warehouse-query.js.map +1 -0
  133. package/dist-server/service/warehouse/warehouse-types.js +82 -0
  134. package/dist-server/service/warehouse/warehouse-types.js.map +1 -0
  135. package/dist-server/service/warehouse/warehouse.js +102 -0
  136. package/dist-server/service/warehouse/warehouse.js.map +1 -0
  137. package/dist-server/utils/inventory-util.js +46 -12
  138. package/dist-server/utils/inventory-util.js.map +1 -1
  139. package/package.json +8 -7
  140. package/server/constants/inventory.ts +4 -1
  141. package/server/controllers/ecommerce/ecommerce-controller.ts +4 -3
  142. package/server/controllers/ecommerce/index.ts +1 -0
  143. package/server/controllers/ecommerce/sellercraft-controller.ts +58 -0
  144. package/server/controllers/warehouse-controller.ts +54 -2
  145. package/server/index.ts +8 -4
  146. package/server/service/index.ts +61 -0
  147. package/server/service/inventory/index.ts +6 -0
  148. package/server/{graphql/resolvers/inventory/update-multiple-inventory.ts → service/inventory/inventory-mutation.ts} +158 -7
  149. package/server/service/inventory/inventory-query.ts +745 -0
  150. package/server/service/inventory/inventory-types.ts +289 -0
  151. package/server/{entities → service/inventory}/inventory.ts +92 -8
  152. package/server/service/inventory-change/index.ts +6 -0
  153. package/server/{graphql/resolvers/inventory-change/approve-inventory-changes.ts → service/inventory-change/inventory-change-mutation.ts} +299 -11
  154. package/server/{graphql/resolvers/inventory-change/inventory-changes.ts → service/inventory-change/inventory-change-query.ts} +35 -4
  155. package/server/service/inventory-change/inventory-change-types.ts +36 -0
  156. package/server/{entities → service/inventory-change}/inventory-change.ts +55 -5
  157. package/server/service/inventory-history/index.ts +6 -0
  158. package/server/service/inventory-history/inventory-history-mutation.ts +119 -0
  159. package/server/service/inventory-history/inventory-history-query.ts +1435 -0
  160. package/server/service/inventory-history/inventory-history-types.ts +269 -0
  161. package/server/{entities → service/inventory-history}/inventory-history.ts +65 -10
  162. package/server/service/location/index.ts +6 -0
  163. package/server/service/location/location-mutation.ts +134 -0
  164. package/server/service/location/location-query.ts +209 -0
  165. package/server/service/location/location-types.ts +151 -0
  166. package/server/{entities → service/location}/location.ts +40 -3
  167. package/server/service/movement/index.ts +6 -0
  168. package/server/service/movement/movement-mutation.ts +61 -0
  169. package/server/service/movement/movement-query.ts +258 -0
  170. package/server/service/movement/movement-types.ts +74 -0
  171. package/server/{entities → service/movement}/movement.ts +35 -2
  172. package/server/service/pallet/index.ts +6 -0
  173. package/server/service/pallet/pallet-mutation.ts +244 -0
  174. package/server/service/pallet/pallet-query.ts +105 -0
  175. package/server/service/pallet/pallet-types.ts +68 -0
  176. package/server/{entities → service/pallet}/pallet.ts +31 -4
  177. package/server/service/pallet-count/index.ts +6 -0
  178. package/server/service/pallet-count/pallet-count-mutation.ts +148 -0
  179. package/server/service/pallet-count/pallet-count-query.ts +46 -0
  180. package/server/service/pallet-count/pallet-count-types.ts +36 -0
  181. package/server/service/pallet-count/pallet-count.ts +70 -0
  182. package/server/service/pallet-history/index.ts +6 -0
  183. package/server/service/pallet-history/pallet-history-mutation.ts +114 -0
  184. package/server/service/pallet-history/pallet-history-query.ts +46 -0
  185. package/server/service/pallet-history/pallet-history-types.ts +36 -0
  186. package/server/{entities → service/pallet-history}/pallet-history.ts +34 -12
  187. package/server/service/reduced-inventory-history/index.ts +3 -0
  188. package/server/{entities → service/reduced-inventory-history}/reduced-inventory-history.ts +7 -12
  189. package/server/service/warehouse/index.ts +6 -0
  190. package/server/service/warehouse/warehouse-mutation.ts +114 -0
  191. package/server/service/warehouse/warehouse-query.ts +51 -0
  192. package/server/service/warehouse/warehouse-types.ts +50 -0
  193. package/server/{entities → service/warehouse}/warehouse.ts +29 -4
  194. package/server/utils/inventory-util.ts +58 -4
  195. package/translations/en.json +2 -1
  196. package/translations/ko.json +2 -1
  197. package/translations/ms.json +2 -1
  198. package/translations/zh.json +2 -1
  199. package/server/entities/index.ts +0 -36
  200. package/server/entities/pallet-count.ts +0 -40
  201. package/server/graphql/index.ts +0 -7
  202. package/server/graphql/resolvers/index.ts +0 -33
  203. package/server/graphql/resolvers/inventory/check-carton-identicality.ts +0 -32
  204. package/server/graphql/resolvers/inventory/check-inventory-owner.ts +0 -26
  205. package/server/graphql/resolvers/inventory/check-product-identicality.ts +0 -24
  206. package/server/graphql/resolvers/inventory/create-inventory.ts +0 -15
  207. package/server/graphql/resolvers/inventory/delete-inventories.ts +0 -14
  208. package/server/graphql/resolvers/inventory/delete-inventory.ts +0 -10
  209. package/server/graphql/resolvers/inventory/index.ts +0 -38
  210. package/server/graphql/resolvers/inventory/inventories-by-bundle.ts +0 -168
  211. package/server/graphql/resolvers/inventory/inventories-by-product.ts +0 -164
  212. package/server/graphql/resolvers/inventory/inventories-by-strategy.ts +0 -143
  213. package/server/graphql/resolvers/inventory/inventories.ts +0 -129
  214. package/server/graphql/resolvers/inventory/inventory-by-pallet.ts +0 -15
  215. package/server/graphql/resolvers/inventory/inventory-transfer.ts +0 -50
  216. package/server/graphql/resolvers/inventory/inventory.ts +0 -14
  217. package/server/graphql/resolvers/inventory/update-inventory-remark.ts +0 -19
  218. package/server/graphql/resolvers/inventory/update-inventory.ts +0 -31
  219. package/server/graphql/resolvers/inventory-change/create-inventory-change.ts +0 -17
  220. package/server/graphql/resolvers/inventory-change/delete-inventory-change.ts +0 -12
  221. package/server/graphql/resolvers/inventory-change/delete-inventory-changes.ts +0 -15
  222. package/server/graphql/resolvers/inventory-change/index.ts +0 -27
  223. package/server/graphql/resolvers/inventory-change/inventory-change.ts +0 -14
  224. package/server/graphql/resolvers/inventory-change/reject-inventory-changes.ts +0 -42
  225. package/server/graphql/resolvers/inventory-change/submit-inventory-changes.ts +0 -101
  226. package/server/graphql/resolvers/inventory-change/update-inventory-change.ts +0 -21
  227. package/server/graphql/resolvers/inventory-change/update-multiple-inventory-change.ts +0 -47
  228. package/server/graphql/resolvers/inventory-history/bizplace-inventory-histories.ts +0 -81
  229. package/server/graphql/resolvers/inventory-history/create-inventory-history.ts +0 -17
  230. package/server/graphql/resolvers/inventory-history/delete-inventory-histories.ts +0 -15
  231. package/server/graphql/resolvers/inventory-history/delete-inventory-history.ts +0 -12
  232. package/server/graphql/resolvers/inventory-history/index.ts +0 -34
  233. package/server/graphql/resolvers/inventory-history/inventory-histories.ts +0 -62
  234. package/server/graphql/resolvers/inventory-history/inventory-history-pallet-detail-report.ts +0 -166
  235. package/server/graphql/resolvers/inventory-history/inventory-history-pallet-report.ts +0 -133
  236. package/server/graphql/resolvers/inventory-history/inventory-history-pallet-storage-report.ts +0 -146
  237. package/server/graphql/resolvers/inventory-history/inventory-history-report.ts +0 -233
  238. package/server/graphql/resolvers/inventory-history/inventory-history-summary-report.ts +0 -317
  239. package/server/graphql/resolvers/inventory-history/inventory-history.ts +0 -13
  240. package/server/graphql/resolvers/inventory-history/onhand-inventories.ts +0 -233
  241. package/server/graphql/resolvers/inventory-history/update-inventory-history.ts +0 -21
  242. package/server/graphql/resolvers/inventory-history/update-multiple-inventory-history.ts +0 -48
  243. package/server/graphql/resolvers/location/create-location.ts +0 -25
  244. package/server/graphql/resolvers/location/delete-all-locations.ts +0 -12
  245. package/server/graphql/resolvers/location/delete-location.ts +0 -16
  246. package/server/graphql/resolvers/location/delete-locations.ts +0 -16
  247. package/server/graphql/resolvers/location/index.ts +0 -32
  248. package/server/graphql/resolvers/location/location-by-name.ts +0 -17
  249. package/server/graphql/resolvers/location/location-occupancies.ts +0 -45
  250. package/server/graphql/resolvers/location/location-with-inventories.ts +0 -87
  251. package/server/graphql/resolvers/location/location.ts +0 -10
  252. package/server/graphql/resolvers/location/locations-by-group.ts +0 -29
  253. package/server/graphql/resolvers/location/locations.ts +0 -18
  254. package/server/graphql/resolvers/location/update-location.ts +0 -27
  255. package/server/graphql/resolvers/location/update-multiple-location.ts +0 -29
  256. package/server/graphql/resolvers/movement/create-movement.ts +0 -13
  257. package/server/graphql/resolvers/movement/delete-movement.ts +0 -9
  258. package/server/graphql/resolvers/movement/inbound-movements-counter.ts +0 -68
  259. package/server/graphql/resolvers/movement/index.ts +0 -23
  260. package/server/graphql/resolvers/movement/movement.ts +0 -16
  261. package/server/graphql/resolvers/movement/movements.ts +0 -17
  262. package/server/graphql/resolvers/movement/outbound-movements-counter.ts +0 -70
  263. package/server/graphql/resolvers/movement/update-movement.ts +0 -25
  264. package/server/graphql/resolvers/movement/weekly-movements-counter.ts +0 -94
  265. package/server/graphql/resolvers/pallet/create-pallet.ts +0 -18
  266. package/server/graphql/resolvers/pallet/delete-pallet.ts +0 -13
  267. package/server/graphql/resolvers/pallet/delete-pallets.ts +0 -44
  268. package/server/graphql/resolvers/pallet/index.ts +0 -29
  269. package/server/graphql/resolvers/pallet/pallet-by-status.ts +0 -16
  270. package/server/graphql/resolvers/pallet/pallet-inbound-validate.ts +0 -21
  271. package/server/graphql/resolvers/pallet/pallet-outbound-validate.ts +0 -21
  272. package/server/graphql/resolvers/pallet/pallet-return.ts +0 -57
  273. package/server/graphql/resolvers/pallet/pallet.ts +0 -15
  274. package/server/graphql/resolvers/pallet/pallets.ts +0 -22
  275. package/server/graphql/resolvers/pallet/update-multiple-pallet.ts +0 -95
  276. package/server/graphql/resolvers/pallet/update-pallet.ts +0 -21
  277. package/server/graphql/resolvers/pallet-count/create-pallet-count.ts +0 -17
  278. package/server/graphql/resolvers/pallet-count/delete-pallet-count.ts +0 -12
  279. package/server/graphql/resolvers/pallet-count/delete-pallet-counts.ts +0 -15
  280. package/server/graphql/resolvers/pallet-count/index.ts +0 -23
  281. package/server/graphql/resolvers/pallet-count/pallet-count.ts +0 -14
  282. package/server/graphql/resolvers/pallet-count/pallet-counts.ts +0 -14
  283. package/server/graphql/resolvers/pallet-count/update-multiple-pallet-count.ts +0 -47
  284. package/server/graphql/resolvers/pallet-count/update-pallet-count-seq.ts +0 -44
  285. package/server/graphql/resolvers/pallet-count/update-pallet-count.ts +0 -21
  286. package/server/graphql/resolvers/pallet-history/create-pallet-history.ts +0 -17
  287. package/server/graphql/resolvers/pallet-history/delete-pallet-histories.ts +0 -16
  288. package/server/graphql/resolvers/pallet-history/delete-pallet-history.ts +0 -13
  289. package/server/graphql/resolvers/pallet-history/index.ts +0 -21
  290. package/server/graphql/resolvers/pallet-history/pallet-histories.ts +0 -14
  291. package/server/graphql/resolvers/pallet-history/pallet-history.ts +0 -14
  292. package/server/graphql/resolvers/pallet-history/update-multiple-pallet-history.ts +0 -46
  293. package/server/graphql/resolvers/pallet-history/update-pallet-history.ts +0 -21
  294. package/server/graphql/resolvers/warehouse/create-warehouse.ts +0 -22
  295. package/server/graphql/resolvers/warehouse/delete-warehouse.ts +0 -16
  296. package/server/graphql/resolvers/warehouse/delete-warehouses.ts +0 -16
  297. package/server/graphql/resolvers/warehouse/index.ts +0 -22
  298. package/server/graphql/resolvers/warehouse/update-multiple-warehouse.ts +0 -29
  299. package/server/graphql/resolvers/warehouse/update-warehouse.ts +0 -23
  300. package/server/graphql/resolvers/warehouse/warehouse.ts +0 -17
  301. package/server/graphql/resolvers/warehouse/warehouses.ts +0 -16
  302. package/server/graphql/types/index.ts +0 -45
  303. package/server/graphql/types/inventory/index.ts +0 -61
  304. package/server/graphql/types/inventory/inventory-bundle-group-detail.ts +0 -8
  305. package/server/graphql/types/inventory/inventory-bundle-group.ts +0 -33
  306. package/server/graphql/types/inventory/inventory-list.ts +0 -8
  307. package/server/graphql/types/inventory/inventory-patch.ts +0 -41
  308. package/server/graphql/types/inventory/inventory.ts +0 -50
  309. package/server/graphql/types/inventory/new-inventory.ts +0 -29
  310. package/server/graphql/types/inventory-change/index.ts +0 -47
  311. package/server/graphql/types/inventory-change/inventory-change-list.ts +0 -8
  312. package/server/graphql/types/inventory-change/inventory-change-patch.ts +0 -10
  313. package/server/graphql/types/inventory-change/inventory-change.ts +0 -33
  314. package/server/graphql/types/inventory-change/new-inventory-change.ts +0 -8
  315. package/server/graphql/types/inventory-history/index.ts +0 -54
  316. package/server/graphql/types/inventory-history/inventory-history-list.ts +0 -8
  317. package/server/graphql/types/inventory-history/inventory-history-pallet-report-list.ts +0 -9
  318. package/server/graphql/types/inventory-history/inventory-history-pallet-report.ts +0 -13
  319. package/server/graphql/types/inventory-history/inventory-history-patch.ts +0 -37
  320. package/server/graphql/types/inventory-history/inventory-history-summary-list.ts +0 -10
  321. package/server/graphql/types/inventory-history/inventory-history-summary.ts +0 -17
  322. package/server/graphql/types/inventory-history/inventory-history.ts +0 -56
  323. package/server/graphql/types/inventory-history/new-inventory-history.ts +0 -29
  324. package/server/graphql/types/location/index.ts +0 -53
  325. package/server/graphql/types/location/location-inventories.ts +0 -8
  326. package/server/graphql/types/location/location-inventory.ts +0 -21
  327. package/server/graphql/types/location/location-list.ts +0 -8
  328. package/server/graphql/types/location/location-occupancy.ts +0 -10
  329. package/server/graphql/types/location/location-patch.ts +0 -17
  330. package/server/graphql/types/location/location.ts +0 -21
  331. package/server/graphql/types/location/new-location.ts +0 -15
  332. package/server/graphql/types/movement/index.ts +0 -31
  333. package/server/graphql/types/movement/movement-count.ts +0 -11
  334. package/server/graphql/types/movement/movement-list.ts +0 -8
  335. package/server/graphql/types/movement/movement-patch.ts +0 -12
  336. package/server/graphql/types/movement/movement.ts +0 -17
  337. package/server/graphql/types/movement/new-movement.ts +0 -12
  338. package/server/graphql/types/pallet/index.ts +0 -48
  339. package/server/graphql/types/pallet/new-pallet.ts +0 -11
  340. package/server/graphql/types/pallet/pallet-list.ts +0 -8
  341. package/server/graphql/types/pallet/pallet-patch.ts +0 -14
  342. package/server/graphql/types/pallet/pallet-validate.ts +0 -8
  343. package/server/graphql/types/pallet/pallet.ts +0 -18
  344. package/server/graphql/types/pallet-count/index.ts +0 -38
  345. package/server/graphql/types/pallet-count/new-pallet-count.ts +0 -8
  346. package/server/graphql/types/pallet-count/pallet-count-list.ts +0 -8
  347. package/server/graphql/types/pallet-count/pallet-count-patch.ts +0 -10
  348. package/server/graphql/types/pallet-count/pallet-count.ts +0 -14
  349. package/server/graphql/types/pallet-history/index.ts +0 -34
  350. package/server/graphql/types/pallet-history/new-pallet-history.ts +0 -8
  351. package/server/graphql/types/pallet-history/pallet-history-list.ts +0 -8
  352. package/server/graphql/types/pallet-history/pallet-history-patch.ts +0 -10
  353. package/server/graphql/types/pallet-history/pallet-history.ts +0 -14
  354. package/server/graphql/types/warehouse/index.ts +0 -35
  355. package/server/graphql/types/warehouse/new-warehouse.ts +0 -10
  356. package/server/graphql/types/warehouse/warehouse-list.ts +0 -8
  357. package/server/graphql/types/warehouse/warehouse-patch.ts +0 -12
  358. package/server/graphql/types/warehouse/warehouse.ts +0 -17
@@ -0,0 +1,46 @@
1
+ import { Arg, Args, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'
2
+ import { getRepository } from 'typeorm'
3
+
4
+ import { User } from '@things-factory/auth-base'
5
+ import { convertListParams, Domain, ListParam } from '@things-factory/shell'
6
+
7
+ import { PalletHistory } from './pallet-history'
8
+ import { PalletHistoryList } from './pallet-history-types'
9
+
10
+ @Resolver(PalletHistory)
11
+ export class PalletHistoryQuery {
12
+ @Query(returns => PalletHistoryList)
13
+ async palletHistories(@Args() params: ListParam, @Ctx() context: any): Promise<PalletHistoryList> {
14
+ const convertedParams = convertListParams(params)
15
+ const [items, total] = await getRepository(PalletHistory).findAndCount({
16
+ ...convertedParams,
17
+ relations: ['domain', 'creator', 'updater']
18
+ })
19
+ return { items, total }
20
+ }
21
+
22
+ @Query(returns => PalletHistory)
23
+ async palletHistory(@Arg('name') name: string, @Ctx() context: any): Promise<PalletHistory> {
24
+ const { domain }: { domain: Domain } = context.state
25
+
26
+ return await getRepository(PalletHistory).findOne({
27
+ where: { domain: domain, name },
28
+ relations: ['domain', 'creator', 'updater']
29
+ })
30
+ }
31
+
32
+ @FieldResolver(type => Domain)
33
+ async domain(@Root() palletHistory: PalletHistory) {
34
+ return await getRepository(Domain).findOne(palletHistory.domainId)
35
+ }
36
+
37
+ @FieldResolver(type => User)
38
+ async updater(@Root() palletHistory: PalletHistory) {
39
+ return await getRepository(User).findOne(palletHistory.updaterId)
40
+ }
41
+
42
+ @FieldResolver(type => User)
43
+ async creator(@Root() palletHistory: PalletHistory) {
44
+ return await getRepository(User).findOne(palletHistory.creatorId)
45
+ }
46
+ }
@@ -0,0 +1,36 @@
1
+ import { Field, InputType, Int, ObjectType } from 'type-graphql'
2
+
3
+ import { PalletHistory } from './pallet-history'
4
+
5
+ @InputType()
6
+ export class NewPalletHistory {
7
+ @Field()
8
+ name: string
9
+
10
+ @Field({ nullable: true })
11
+ description?: string
12
+ }
13
+
14
+ @ObjectType()
15
+ export class PalletHistoryList {
16
+ @Field(type => [PalletHistory], { nullable: true })
17
+ items?: PalletHistory[]
18
+
19
+ @Field(type => Int, { nullable: true })
20
+ total?: number
21
+ }
22
+
23
+ @InputType()
24
+ export class PalletHistoryPatch {
25
+ @Field({ nullable: true })
26
+ id?: string
27
+
28
+ @Field({ nullable: true })
29
+ name?: string
30
+
31
+ @Field({ nullable: true })
32
+ description?: string
33
+
34
+ @Field({ nullable: true })
35
+ cuFlag?: string
36
+ }
@@ -1,63 +1,85 @@
1
+ import { Field, ID, ObjectType } from 'type-graphql'
1
2
  import {
3
+ Column,
2
4
  CreateDateColumn,
3
- UpdateDateColumn,
4
5
  Entity,
5
6
  Index,
6
- Column,
7
- OneToMany,
8
7
  ManyToOne,
9
- PrimaryGeneratedColumn
8
+ PrimaryGeneratedColumn,
9
+ RelationId,
10
+ UpdateDateColumn
10
11
  } from 'typeorm'
11
- import { Domain } from '@things-factory/shell'
12
+
12
13
  import { User } from '@things-factory/auth-base'
13
14
  import { Bizplace } from '@things-factory/biz-base'
14
- import { Pallet } from '.'
15
+ import { Domain } from '@things-factory/shell'
16
+
17
+ import { Pallet } from '../pallet/pallet'
15
18
 
16
19
  @Entity()
17
20
  @Index('ix_pallet-history_0', (palletHistory: PalletHistory) => [palletHistory.domain, palletHistory.id], {
18
21
  unique: true
19
22
  })
23
+ @ObjectType()
20
24
  export class PalletHistory {
21
25
  @PrimaryGeneratedColumn('uuid')
26
+ @Field(type => ID)
22
27
  id: string
23
28
 
24
29
  @ManyToOne(type => Domain)
30
+ @Field(type => Domain, { nullable: true })
25
31
  domain: Domain
26
32
 
33
+ @RelationId((palletHistory: PalletHistory) => palletHistory.domain)
34
+ domainId: string
35
+
27
36
  @Column()
37
+ @Field()
28
38
  name: string
29
39
 
30
40
  @Column({ default: 0 })
41
+ @Field()
31
42
  seq: number
32
43
 
33
44
  @ManyToOne(type => Bizplace)
45
+ @Field()
34
46
  owner: Bizplace
35
47
 
36
48
  @ManyToOne(type => Bizplace)
49
+ @Field()
37
50
  holder: Bizplace
38
51
 
39
52
  @ManyToOne(type => Pallet)
53
+ @Field()
40
54
  pallet: Pallet
41
55
 
42
56
  @Column()
57
+ @Field()
43
58
  status: string
44
59
 
45
60
  @Column()
61
+ @Field()
46
62
  transactionType: string
47
63
 
48
64
  @CreateDateColumn()
65
+ @Field({ nullable: true })
49
66
  createdAt: Date
50
67
 
51
68
  @UpdateDateColumn()
69
+ @Field({ nullable: true })
52
70
  updatedAt: Date
53
71
 
54
- @ManyToOne(type => User, {
55
- nullable: true
56
- })
72
+ @ManyToOne(type => User)
73
+ @Field(type => User, { nullable: true })
57
74
  creator: User
58
75
 
59
- @ManyToOne(type => User, {
60
- nullable: true
61
- })
76
+ @RelationId((palletHistory: PalletHistory) => palletHistory.creator)
77
+ creatorId: string
78
+
79
+ @ManyToOne(type => User)
80
+ @Field(type => User, { nullable: true })
62
81
  updater: User
82
+
83
+ @RelationId((palletHistory: PalletHistory) => palletHistory.updater)
84
+ updaterId: string
63
85
  }
@@ -0,0 +1,3 @@
1
+ import { ReducedInventoryHistory } from './reduced-inventory-history'
2
+
3
+ export const entities = [ReducedInventoryHistory]
@@ -1,6 +1,4 @@
1
- import { ViewEntity, ViewColumn, Index } from 'typeorm'
2
- import { Bizplace } from '@things-factory/biz-base'
3
- import { Domain } from '@things-factory/shell'
1
+ import { ViewColumn, ViewEntity } from 'typeorm'
4
2
 
5
3
  @ViewEntity({
6
4
  expression: `
@@ -24,10 +22,13 @@ export class ReducedInventoryHistory {
24
22
  seq: number
25
23
 
26
24
  @ViewColumn()
27
- domain: Domain
25
+ domainId: string
28
26
 
29
27
  @ViewColumn()
30
- bizplace: Bizplace
28
+ bizplaceId: string
29
+
30
+ @ViewColumn()
31
+ inventoryId: string
31
32
 
32
33
  @ViewColumn()
33
34
  refOrderId: string
@@ -83,15 +84,9 @@ export class ReducedInventoryHistory {
83
84
  @ViewColumn()
84
85
  openingQty: number
85
86
 
86
- @ViewColumn()
87
- weight: number
88
-
89
- @ViewColumn()
90
- openingWeight: number
91
-
92
87
  @ViewColumn()
93
88
  status: string
94
89
 
95
90
  @ViewColumn()
96
- transactionType: String
91
+ transactionType: string
97
92
  }
@@ -0,0 +1,6 @@
1
+ import { Warehouse } from './warehouse'
2
+ import { WarehouseMutation } from './warehouse-mutation'
3
+ import { WarehouseQuery } from './warehouse-query'
4
+
5
+ export const entities = [Warehouse]
6
+ export const resolvers = [WarehouseQuery, WarehouseMutation]
@@ -0,0 +1,114 @@
1
+ import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'
2
+ import { EntityManager, Repository } from 'typeorm'
3
+
4
+ import { User } from '@things-factory/auth-base'
5
+ import { Domain } from '@things-factory/shell'
6
+
7
+ import { Warehouse } from './warehouse'
8
+ import { NewWarehouse, WarehousePatch } from './warehouse-types'
9
+
10
+ @Resolver(Warehouse)
11
+ export class WarehouseMutation {
12
+ @Directive('@privilege(category: "warehouse", privilege: "mutation")')
13
+ @Directive('@transaction')
14
+ @Mutation(returns => Warehouse)
15
+ async createWarehouse(@Arg('warehouse') warehouse: NewWarehouse, @Ctx() context: any): Promise<Warehouse> {
16
+ return await createWarehouse(warehouse, context)
17
+ }
18
+
19
+ @Directive('@privilege(category: "warehouse", privilege: "mutation")')
20
+ @Directive('@transaction')
21
+ @Mutation(returns => Warehouse)
22
+ async updateWarehouse(
23
+ @Arg('id') id: string,
24
+ @Arg('patch') patch: WarehousePatch,
25
+ @Ctx() context: any
26
+ ): Promise<Warehouse> {
27
+ return await updateWarehouse(id, patch, context)
28
+ }
29
+
30
+ @Directive('@privilege(category: "warehouse", privilege: "mutation")')
31
+ @Directive('@transaction')
32
+ @Mutation(returns => [Warehouse])
33
+ async updateMultipleWarehouse(
34
+ @Arg('patches', type => [WarehousePatch]) patches: WarehousePatch[],
35
+ @Ctx() context: any
36
+ ): Promise<Warehouse[]> {
37
+ let results = []
38
+ const _createRecords = patches.filter((patch: any) => patch.cuFlag === '+')
39
+ const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')
40
+
41
+ if (_createRecords.length > 0) {
42
+ for (let i = 0; i < _createRecords.length; i++) {
43
+ const patch = _createRecords[i]
44
+ const result = await createWarehouse(patch as NewWarehouse, context)
45
+ results.push({ ...result, cuFlag: '+' })
46
+ }
47
+ }
48
+
49
+ if (_updateRecords.length > 0) {
50
+ for (let i = 0; i < _updateRecords.length; i++) {
51
+ const patch: WarehousePatch = _updateRecords[i]
52
+ const result = await updateWarehouse(patch.id, patch, context)
53
+ results.push({ ...result, cuFlag: 'M' })
54
+ }
55
+ }
56
+
57
+ return results
58
+ }
59
+
60
+ @Directive('@privilege(category: "warehouse", privilege: "mutation")')
61
+ @Directive('@transaction')
62
+ @Mutation(returns => Boolean)
63
+ async deleteWarehouse(@Arg('id') id: string, @Ctx() context: any): Promise<Boolean> {
64
+ return await deleteWarehouse(id, context)
65
+ }
66
+
67
+ @Directive('@privilege(category: "warehouse", privilege: "mutation")')
68
+ @Directive('@transaction')
69
+ @Mutation(returns => Boolean)
70
+ async deleteWarehouses(@Arg('ids', type => [String]) ids: string[], @Ctx() context: any): Promise<Boolean> {
71
+ return await deleteWarehouses(ids, context)
72
+ }
73
+ }
74
+
75
+ export async function createWarehouse(warehouse: NewWarehouse, context: any) {
76
+ const { domain, user, tx }: { domain: Domain; user: User; tx: EntityManager } = context.state
77
+
78
+ const repository: Repository<Warehouse> = tx.getRepository(Warehouse)
79
+ return await repository.save({
80
+ ...warehouse,
81
+ domain,
82
+ creator: user,
83
+ updater: user
84
+ })
85
+ }
86
+
87
+ export async function updateWarehouse(id: string, patch: WarehousePatch, context: any) {
88
+ const { domain, user, tx }: { domain: Domain; user: User; tx: EntityManager } = context.state
89
+
90
+ const repository: Repository<Warehouse> = tx.getRepository(Warehouse)
91
+ const warehouse = await repository.findOne(id)
92
+
93
+ return await repository.save({
94
+ ...warehouse,
95
+ ...patch,
96
+ updater: user
97
+ })
98
+ }
99
+
100
+ export async function deleteWarehouse(id: string, context) {
101
+ const { tx }: { tx: EntityManager } = context.state
102
+
103
+ const repository: Repository<Warehouse> = tx.getRepository(Warehouse)
104
+ await repository.delete(id)
105
+ return true
106
+ }
107
+
108
+ export async function deleteWarehouses(ids: string[], context: any) {
109
+ const { tx }: { tx: EntityManager } = context.state
110
+
111
+ const repository: Repository<Warehouse> = tx.getRepository(Warehouse)
112
+ await repository.delete(ids)
113
+ return true
114
+ }
@@ -0,0 +1,51 @@
1
+ import { Arg, Args, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'
2
+ import { getRepository } from 'typeorm'
3
+
4
+ import { User } from '@things-factory/auth-base'
5
+ import { convertListParams, Domain, ListParam } from '@things-factory/shell'
6
+
7
+ import { Warehouse } from './warehouse'
8
+ import { WarehouseList } from './warehouse-types'
9
+
10
+ @Resolver(Warehouse)
11
+ export class WarehouseQuery {
12
+ @Query(returns => Warehouse)
13
+ async warehouse(@Arg('id') id: string, @Ctx() context: any): Promise<Warehouse> {
14
+ const { domain }: { domain: Domain } = context.state
15
+
16
+ return await getRepository(Warehouse).findOne({
17
+ where: {
18
+ domain: domain,
19
+ name
20
+ },
21
+ relations: ['domain', 'locations', 'creator', 'updater']
22
+ })
23
+ }
24
+
25
+ @Query(returns => WarehouseList)
26
+ async warehouses(@Args() params: ListParam, @Ctx() context: any): Promise<WarehouseList> {
27
+ const { domain }: { domain: Domain } = context.state
28
+
29
+ const convertedParams = convertListParams(params, domain.id)
30
+ const [items, total] = await getRepository(Warehouse).findAndCount({
31
+ ...convertedParams,
32
+ relations: ['domain', 'creator', 'updater']
33
+ })
34
+ return { items, total }
35
+ }
36
+
37
+ @FieldResolver(type => Domain)
38
+ async domain(@Root() warehouse: Warehouse) {
39
+ return await getRepository(Domain).findOne(warehouse.domainId)
40
+ }
41
+
42
+ @FieldResolver(type => User)
43
+ async updater(@Root() warehouse: Warehouse) {
44
+ return await getRepository(User).findOne(warehouse.updaterId)
45
+ }
46
+
47
+ @FieldResolver(type => User)
48
+ async creator(@Root() warehouse: Warehouse) {
49
+ return await getRepository(User).findOne(warehouse.creatorId)
50
+ }
51
+ }
@@ -0,0 +1,50 @@
1
+ import { Field, InputType, Int, ObjectType } from 'type-graphql'
2
+
3
+ import { ObjectRef } from '@things-factory/shell'
4
+
5
+ import { Warehouse } from './warehouse'
6
+
7
+ @InputType()
8
+ export class NewWarehouse {
9
+ @Field({ nullable: true })
10
+ id?: string
11
+
12
+ @Field()
13
+ name: string
14
+
15
+ @Field(type => [ObjectRef], { nullable: true })
16
+ locations?: ObjectRef[]
17
+
18
+ @Field({ nullable: true })
19
+ description?: string
20
+ }
21
+
22
+ @ObjectType()
23
+ export class WarehouseList {
24
+ @Field(type => [Warehouse], { nullable: true })
25
+ items?: Warehouse[]
26
+
27
+ @Field(type => Int, { nullable: true })
28
+ total?: number
29
+ }
30
+
31
+ @InputType()
32
+ export class WarehousePatch {
33
+ @Field({ nullable: true })
34
+ id?: string
35
+
36
+ @Field({ nullable: true })
37
+ name?: string
38
+
39
+ @Field({ nullable: true })
40
+ type?: string
41
+
42
+ @Field(type => [ObjectRef], { nullable: true })
43
+ locations?: ObjectRef[]
44
+
45
+ @Field({ nullable: true })
46
+ description?: string
47
+
48
+ @Field({ nullable: true })
49
+ cuFlag?: string
50
+ }
@@ -1,6 +1,4 @@
1
- import { User } from '@things-factory/auth-base'
2
- import { Bizplace } from '@things-factory/biz-base'
3
- import { Domain } from '@things-factory/shell'
1
+ import { Field, ID, ObjectType } from 'type-graphql'
4
2
  import {
5
3
  Column,
6
4
  CreateDateColumn,
@@ -9,50 +7,77 @@ import {
9
7
  ManyToOne,
10
8
  OneToMany,
11
9
  PrimaryGeneratedColumn,
10
+ RelationId,
12
11
  UpdateDateColumn
13
12
  } from 'typeorm'
14
- import { Location } from './location'
13
+
14
+ import { User } from '@things-factory/auth-base'
15
+ import { Bizplace } from '@things-factory/biz-base'
16
+ import { Domain } from '@things-factory/shell'
17
+
18
+ import { Location } from '../location/location'
15
19
 
16
20
  @Entity()
17
21
  @Index('ix_warehouse_0', (warehouse: Warehouse) => [warehouse.domain, warehouse.name], { unique: true })
18
22
  @Index('ix_warehouse_1', (warehouse: Warehouse) => [warehouse.domain, warehouse.id], { unique: true })
23
+ @ObjectType()
19
24
  export class Warehouse {
20
25
  @PrimaryGeneratedColumn('uuid')
26
+ @Field(type => ID)
21
27
  id: string
22
28
 
23
29
  @ManyToOne(type => Domain)
30
+ @Field()
24
31
  domain: Domain
25
32
 
33
+ @RelationId((warehouse: Warehouse) => warehouse.domain)
34
+ domainId: string
35
+
26
36
  @ManyToOne(type => Bizplace)
37
+ @Field()
27
38
  bizplace: Bizplace
28
39
 
29
40
  @Column()
41
+ @Field()
30
42
  name: string
31
43
 
32
44
  @OneToMany(type => Location, location => location.warehouse)
45
+ @Field(type => [Location])
33
46
  locations: Location[]
34
47
 
35
48
  @Column()
49
+ @Field()
36
50
  type: string
37
51
 
38
52
  @Column({
39
53
  nullable: true
40
54
  })
55
+ @Field({ nullable: true })
41
56
  description: string
42
57
 
43
58
  @ManyToOne(type => User, {
44
59
  nullable: true
45
60
  })
61
+ @Field({ nullable: true })
46
62
  creator: User
47
63
 
64
+ @RelationId((warehouse: Warehouse) => warehouse.creator)
65
+ creatorId: string
66
+
48
67
  @ManyToOne(type => User, {
49
68
  nullable: true
50
69
  })
70
+ @Field({ nullable: true })
51
71
  updater: User
52
72
 
73
+ @RelationId((warehouse: Warehouse) => warehouse.updater)
74
+ updaterId: string
75
+
53
76
  @CreateDateColumn()
77
+ @Field({ nullable: true })
54
78
  createdAt: Date
55
79
 
56
80
  @UpdateDateColumn()
81
+ @Field({ nullable: true })
57
82
  updatedAt: Date
58
83
  }
@@ -1,11 +1,13 @@
1
+ import { EntityManager, getRepository, Repository } from 'typeorm'
2
+
1
3
  import { User } from '@things-factory/auth-base'
2
4
  import { Bizplace } from '@things-factory/biz-base'
3
5
  import { Product } from '@things-factory/product-base'
4
6
  import { Domain } from '@things-factory/shell'
7
+
5
8
  import { INVENTORY_STATUS, LOCATION_STATUS } from '../constants'
6
- import { Location, Inventory, InventoryHistory } from '../entities'
9
+ import { Inventory, InventoryHistory, Location } from '../service'
7
10
  import { InventoryNoGenerator } from '../utils'
8
- import { EntityManager, getRepository, Repository } from 'typeorm'
9
11
 
10
12
  /**
11
13
  * @description It will insert new record into inventory histories table.
@@ -79,8 +81,6 @@ export async function generateInventoryHistory(
79
81
  inventoryHistory.uom = inventory.uom
80
82
  inventoryHistory.qty = qty
81
83
  inventoryHistory.openingQty = openingQty
82
- inventoryHistory.weight = 0
83
- inventoryHistory.openingWeight = 0
84
84
  inventoryHistory.uomValue = uomValue
85
85
  inventoryHistory.openingUomValue = openingUomValue
86
86
  inventoryHistory.unitCost = inventory.unitCost
@@ -200,3 +200,57 @@ export async function checkPalletIdenticallity(
200
200
 
201
201
  return { identicallity: true }
202
202
  }
203
+
204
+ /**
205
+ * @description Check whether inventory is same with passed conditions
206
+ * @param {Domain} domain
207
+ * @param {Domain} productOwnerDomain
208
+ * @param {OrderProduct} bizplace *
209
+ * @param {EntityManager} trxMgr
210
+ */
211
+ export async function getProductBundleInventory(
212
+ domain: Domain,
213
+ productOwnerDomain: Domain,
214
+ orderProducts: any[],
215
+ trxMgr: EntityManager
216
+ ): Promise<any> {
217
+ let orderProductsJson = JSON.stringify(
218
+ orderProducts.map(itm => {
219
+ return {
220
+ ...itm,
221
+ product_id: itm.product.id,
222
+ packing_type: itm.packingType,
223
+ packing_size: itm.packingSize,
224
+ uom: itm.uom
225
+ }
226
+ }) || []
227
+ )
228
+
229
+ const result: any[] = await trxMgr.query(
230
+ `
231
+ select product_bundle_id, sku, name, min(available_qty) as qty from (
232
+ select
233
+ pb.sku, pb.name, pbs.product_bundle_id, pbs.bundle_qty, pd.product_id, pd.packing_type, pd.packing_size, pd.uom,
234
+ floor(coalesce(sum(inv.qty - coalesce(inv.locked_qty,0)),0)/pbs.bundle_qty) as available_qty,
235
+ floor(coalesce(sum(inv.uom_value - coalesce(inv.locked_uom_value,0)),0)/pbs.bundle_qty) as available_uom_value
236
+ from (
237
+ select pb.id, pb.sku, pb.name
238
+ from json_populate_recordset(NULL::order_products,'${orderProductsJson}') src
239
+ inner join product_details pd ON src.product_id = pd.product_id and src.packing_type = pd.packing_type and src.packing_size = pd.packing_size and src.uom = pd.uom
240
+ inner join product_bundle_settings pbs on pbs.product_detail_id = pd.id
241
+ inner join product_bundles pb on pb.id = pbs.product_bundle_id
242
+ where pb.domain_id = $1
243
+ group by pb.id, pb.sku, pb.name
244
+ ) pb
245
+ inner join product_bundle_settings pbs on pbs.product_bundle_id = pb.id
246
+ inner join product_details pd on pd.id = pbs.product_detail_id
247
+ left join inventories inv on inv.status <> 'TERMINATED' and (inv.qty - coalesce(inv.locked_qty,0)) > 0 and inv.product_id = pd.product_id and inv.packing_type = pd.packing_type and inv.packing_size = pd.packing_size and inv.uom = pd.uom
248
+ where inv.domain_id = $2
249
+ group by pb.sku, pb.name, pbs.product_bundle_id, pbs.bundle_qty, pd.product_id, pd.packing_type, pd.packing_size, pd.uom
250
+ ) foo group by product_bundle_id, sku, name
251
+ `,
252
+ [productOwnerDomain.id, domain.id]
253
+ )
254
+
255
+ return result
256
+ }
@@ -16,5 +16,6 @@
16
16
  "field.qty": "qty",
17
17
  "field.state": "state",
18
18
  "field.date": "date",
19
- "field.type": "type"
19
+ "field.type": "type",
20
+ "error.no_location_found": "no location found"
20
21
  }
@@ -16,5 +16,6 @@
16
16
  "field.qty": "수량",
17
17
  "field.state": "국가",
18
18
  "field.date": "날짜",
19
- "field.type": "유형"
19
+ "field.type": "유형",
20
+ "error.no_location_found": "발견된 로케이션이 없습니다"
20
21
  }
@@ -16,5 +16,6 @@
16
16
  "field.qty": "kuantiti",
17
17
  "field.state": "keadaan",
18
18
  "field.date": "tarikh",
19
- "field.type": "jenis"
19
+ "field.type": "jenis",
20
+ "error.no_location_found": "[ms]no location found"
20
21
  }
@@ -16,5 +16,6 @@
16
16
  "field.qty": "数量",
17
17
  "field.state": "状态",
18
18
  "field.date": "日期",
19
- "field.type": "类型"
19
+ "field.type": "类型",
20
+ "error.no_location_found": "[zh]no location found"
20
21
  }