@things-factory/warehouse-base 4.0.0-alpha.8 → 4.0.0-beta.2
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.
- package/dist-server/constants/index.js +1 -1
- package/dist-server/constants/inventory.js +4 -1
- package/dist-server/constants/inventory.js.map +1 -1
- package/dist-server/controllers/ecommerce/ecommerce-controller.js +10 -4
- package/dist-server/controllers/ecommerce/ecommerce-controller.js.map +1 -1
- package/dist-server/controllers/ecommerce/index.js +2 -1
- package/dist-server/controllers/ecommerce/index.js.map +1 -1
- package/dist-server/controllers/ecommerce/sellercraft-controller.js +48 -0
- package/dist-server/controllers/ecommerce/sellercraft-controller.js.map +1 -0
- package/dist-server/controllers/index.js +1 -1
- package/dist-server/controllers/warehouse-controller.js +42 -3
- package/dist-server/controllers/warehouse-controller.js.map +1 -1
- package/dist-server/entities/inventory-change.js +30 -30
- package/dist-server/entities/inventory-change.js.map +1 -1
- package/dist-server/entities/inventory-history.js +49 -41
- package/dist-server/entities/inventory-history.js.map +1 -1
- package/dist-server/entities/inventory.js +44 -44
- package/dist-server/entities/inventory.js.map +1 -1
- package/dist-server/entities/location.js +18 -18
- package/dist-server/entities/location.js.map +1 -1
- package/dist-server/entities/movement.js +13 -13
- package/dist-server/entities/movement.js.map +1 -1
- package/dist-server/entities/pallet-count.js +11 -11
- package/dist-server/entities/pallet-count.js.map +1 -1
- package/dist-server/entities/pallet-history.js +15 -15
- package/dist-server/entities/pallet-history.js.map +1 -1
- package/dist-server/entities/pallet.js +16 -16
- package/dist-server/entities/pallet.js.map +1 -1
- package/dist-server/entities/reduced-inventory-history.js +35 -34
- package/dist-server/entities/reduced-inventory-history.js.map +1 -1
- package/dist-server/entities/warehouse.js +14 -14
- package/dist-server/entities/warehouse.js.map +1 -1
- package/dist-server/graphql/index.js +1 -1
- package/dist-server/graphql/resolvers/index.js +1 -1
- package/dist-server/graphql/resolvers/inventory/check-carton-identicality.js +1 -1
- package/dist-server/graphql/resolvers/inventory/check-carton-identicality.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory/check-inventory-owner.js +2 -2
- package/dist-server/graphql/resolvers/inventory/check-inventory-owner.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory/check-product-identicality.js +2 -2
- package/dist-server/graphql/resolvers/inventory/check-product-identicality.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory/delete-inventories.js +1 -1
- package/dist-server/graphql/resolvers/inventory/delete-inventories.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory/inventories-by-bundle.js +4 -4
- package/dist-server/graphql/resolvers/inventory/inventories-by-bundle.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory/inventories-by-product.js +3 -3
- package/dist-server/graphql/resolvers/inventory/inventories-by-product.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory/inventories-by-strategy.js +38 -4
- package/dist-server/graphql/resolvers/inventory/inventories-by-strategy.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory/inventories.js +4 -4
- package/dist-server/graphql/resolvers/inventory/inventories.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory/inventory-by-pallet.js +2 -2
- package/dist-server/graphql/resolvers/inventory/inventory-by-pallet.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory/inventory-transfer.js +1 -1
- package/dist-server/graphql/resolvers/inventory/inventory-transfer.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory/inventory.js +1 -1
- package/dist-server/graphql/resolvers/inventory/inventory.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory/update-multiple-inventory.js +1 -1
- package/dist-server/graphql/resolvers/inventory/update-multiple-inventory.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory-change/approve-inventory-changes.js +35 -13
- package/dist-server/graphql/resolvers/inventory-change/approve-inventory-changes.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory-change/delete-inventory-changes.js +1 -1
- package/dist-server/graphql/resolvers/inventory-change/delete-inventory-changes.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory-change/inventory-change.js +1 -1
- package/dist-server/graphql/resolvers/inventory-change/inventory-change.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory-change/inventory-changes.js +3 -3
- package/dist-server/graphql/resolvers/inventory-change/inventory-changes.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory-change/reject-inventory-changes.js +1 -1
- package/dist-server/graphql/resolvers/inventory-change/reject-inventory-changes.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory-change/submit-inventory-changes.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory-history/bizplace-inventory-histories.js +9 -9
- package/dist-server/graphql/resolvers/inventory-history/bizplace-inventory-histories.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory-history/delete-inventory-histories.js +1 -1
- package/dist-server/graphql/resolvers/inventory-history/delete-inventory-histories.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory-history/inventory-histories.js +3 -3
- package/dist-server/graphql/resolvers/inventory-history/inventory-histories.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory-history/inventory-history-pallet-report.js +1 -1
- package/dist-server/graphql/resolvers/inventory-history/inventory-history-pallet-report.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory-history/inventory-history-summary-report.js +12 -11
- package/dist-server/graphql/resolvers/inventory-history/inventory-history-summary-report.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory-history/inventory-history.js +1 -1
- package/dist-server/graphql/resolvers/inventory-history/inventory-history.js.map +1 -1
- package/dist-server/graphql/resolvers/inventory-history/onhand-inventories.js +7 -4
- package/dist-server/graphql/resolvers/inventory-history/onhand-inventories.js.map +1 -1
- package/dist-server/graphql/resolvers/location/index.js +2 -1
- package/dist-server/graphql/resolvers/location/index.js.map +1 -1
- package/dist-server/graphql/resolvers/location/location-by-name.js +1 -1
- package/dist-server/graphql/resolvers/location/location-by-name.js.map +1 -1
- package/dist-server/graphql/resolvers/location/location-occupancies.js +15 -28
- package/dist-server/graphql/resolvers/location/location-occupancies.js.map +1 -1
- package/dist-server/graphql/resolvers/location/location-with-inventories.js +75 -0
- package/dist-server/graphql/resolvers/location/location-with-inventories.js.map +1 -0
- package/dist-server/graphql/resolvers/location/location.js +3 -2
- package/dist-server/graphql/resolvers/location/location.js.map +1 -1
- package/dist-server/graphql/resolvers/location/locations-by-group.js +2 -2
- package/dist-server/graphql/resolvers/location/locations-by-group.js.map +1 -1
- package/dist-server/graphql/resolvers/location/locations.js +2 -2
- package/dist-server/graphql/resolvers/location/locations.js.map +1 -1
- package/dist-server/graphql/resolvers/location/update-multiple-location.js +2 -2
- package/dist-server/graphql/resolvers/location/update-multiple-location.js.map +1 -1
- package/dist-server/graphql/resolvers/movement/create-movement.js +1 -1
- package/dist-server/graphql/resolvers/movement/create-movement.js.map +1 -1
- package/dist-server/graphql/resolvers/movement/delete-movement.js +1 -1
- package/dist-server/graphql/resolvers/movement/delete-movement.js.map +1 -1
- package/dist-server/graphql/resolvers/movement/inbound-movements-counter.js +7 -9
- package/dist-server/graphql/resolvers/movement/inbound-movements-counter.js.map +1 -1
- package/dist-server/graphql/resolvers/movement/movement.js +2 -2
- package/dist-server/graphql/resolvers/movement/movement.js.map +1 -1
- package/dist-server/graphql/resolvers/movement/movements.js +3 -3
- package/dist-server/graphql/resolvers/movement/movements.js.map +1 -1
- package/dist-server/graphql/resolvers/movement/outbound-movements-counter.js +7 -9
- package/dist-server/graphql/resolvers/movement/outbound-movements-counter.js.map +1 -1
- package/dist-server/graphql/resolvers/movement/update-movement.js +4 -4
- package/dist-server/graphql/resolvers/movement/update-movement.js.map +1 -1
- package/dist-server/graphql/resolvers/movement/weekly-movements-counter.js +16 -34
- package/dist-server/graphql/resolvers/movement/weekly-movements-counter.js.map +1 -1
- package/dist-server/graphql/resolvers/pallet/delete-pallets.js +1 -1
- package/dist-server/graphql/resolvers/pallet/delete-pallets.js.map +1 -1
- package/dist-server/graphql/resolvers/pallet/pallet-by-status.js +1 -1
- package/dist-server/graphql/resolvers/pallet/pallet-by-status.js.map +1 -1
- package/dist-server/graphql/resolvers/pallet/pallet-inbound-validate.js +1 -1
- package/dist-server/graphql/resolvers/pallet/pallet-inbound-validate.js.map +1 -1
- package/dist-server/graphql/resolvers/pallet/pallet-outbound-validate.js +1 -1
- package/dist-server/graphql/resolvers/pallet/pallet-outbound-validate.js.map +1 -1
- package/dist-server/graphql/resolvers/pallet/pallet.js +1 -1
- package/dist-server/graphql/resolvers/pallet/pallet.js.map +1 -1
- package/dist-server/graphql/resolvers/pallet/pallets.js +2 -2
- package/dist-server/graphql/resolvers/pallet/pallets.js.map +1 -1
- package/dist-server/graphql/resolvers/pallet-count/delete-pallet-counts.js +1 -1
- package/dist-server/graphql/resolvers/pallet-count/delete-pallet-counts.js.map +1 -1
- package/dist-server/graphql/resolvers/pallet-count/pallet-count.js +1 -1
- package/dist-server/graphql/resolvers/pallet-count/pallet-count.js.map +1 -1
- package/dist-server/graphql/resolvers/pallet-count/pallet-counts.js +2 -2
- package/dist-server/graphql/resolvers/pallet-count/pallet-counts.js.map +1 -1
- package/dist-server/graphql/resolvers/pallet-count/update-pallet-count-seq.js +2 -2
- package/dist-server/graphql/resolvers/pallet-count/update-pallet-count-seq.js.map +1 -1
- package/dist-server/graphql/resolvers/pallet-history/delete-pallet-histories.js +1 -1
- package/dist-server/graphql/resolvers/pallet-history/delete-pallet-histories.js.map +1 -1
- package/dist-server/graphql/resolvers/pallet-history/pallet-histories.js +2 -2
- package/dist-server/graphql/resolvers/pallet-history/pallet-histories.js.map +1 -1
- package/dist-server/graphql/resolvers/pallet-history/pallet-history.js +1 -1
- package/dist-server/graphql/resolvers/pallet-history/pallet-history.js.map +1 -1
- package/dist-server/graphql/resolvers/warehouse/update-multiple-warehouse.js +2 -2
- package/dist-server/graphql/resolvers/warehouse/update-multiple-warehouse.js.map +1 -1
- package/dist-server/graphql/resolvers/warehouse/warehouse.js +1 -1
- package/dist-server/graphql/resolvers/warehouse/warehouse.js.map +1 -1
- package/dist-server/graphql/resolvers/warehouse/warehouses.js +2 -2
- package/dist-server/graphql/resolvers/warehouse/warehouses.js.map +1 -1
- package/dist-server/graphql/types/index.js +1 -1
- package/dist-server/graphql/types/inventory/index.js +1 -1
- package/dist-server/graphql/types/inventory/inventory-bundle-group-detail.js +1 -1
- package/dist-server/graphql/types/inventory/inventory-bundle-group-detail.js.map +1 -1
- package/dist-server/graphql/types/inventory/inventory-bundle-group.js +1 -1
- package/dist-server/graphql/types/inventory/inventory-bundle-group.js.map +1 -1
- package/dist-server/graphql/types/inventory/inventory-list.js +1 -1
- package/dist-server/graphql/types/inventory/inventory-list.js.map +1 -1
- package/dist-server/graphql/types/inventory/inventory-patch.js +2 -1
- package/dist-server/graphql/types/inventory/inventory-patch.js.map +1 -1
- package/dist-server/graphql/types/inventory/inventory.js +1 -1
- package/dist-server/graphql/types/inventory/inventory.js.map +1 -1
- package/dist-server/graphql/types/inventory/new-inventory.js +1 -1
- package/dist-server/graphql/types/inventory/new-inventory.js.map +1 -1
- package/dist-server/graphql/types/inventory-change/inventory-change-list.js +1 -1
- package/dist-server/graphql/types/inventory-change/inventory-change-list.js.map +1 -1
- package/dist-server/graphql/types/inventory-change/inventory-change-patch.js +1 -1
- package/dist-server/graphql/types/inventory-change/inventory-change-patch.js.map +1 -1
- package/dist-server/graphql/types/inventory-change/inventory-change.js +2 -1
- package/dist-server/graphql/types/inventory-change/inventory-change.js.map +1 -1
- package/dist-server/graphql/types/inventory-change/new-inventory-change.js +1 -1
- package/dist-server/graphql/types/inventory-change/new-inventory-change.js.map +1 -1
- package/dist-server/graphql/types/inventory-history/inventory-history-list.js +1 -1
- package/dist-server/graphql/types/inventory-history/inventory-history-list.js.map +1 -1
- package/dist-server/graphql/types/inventory-history/inventory-history-pallet-report-list.js +1 -1
- package/dist-server/graphql/types/inventory-history/inventory-history-pallet-report-list.js.map +1 -1
- package/dist-server/graphql/types/inventory-history/inventory-history-pallet-report.js +1 -1
- package/dist-server/graphql/types/inventory-history/inventory-history-pallet-report.js.map +1 -1
- package/dist-server/graphql/types/inventory-history/inventory-history-patch.js +2 -1
- package/dist-server/graphql/types/inventory-history/inventory-history-patch.js.map +1 -1
- package/dist-server/graphql/types/inventory-history/inventory-history-summary-list.js +1 -1
- package/dist-server/graphql/types/inventory-history/inventory-history-summary-list.js.map +1 -1
- package/dist-server/graphql/types/inventory-history/inventory-history-summary.js +1 -1
- package/dist-server/graphql/types/inventory-history/inventory-history-summary.js.map +1 -1
- package/dist-server/graphql/types/inventory-history/inventory-history.js +3 -2
- package/dist-server/graphql/types/inventory-history/inventory-history.js.map +1 -1
- package/dist-server/graphql/types/inventory-history/new-inventory-history.js +2 -1
- package/dist-server/graphql/types/inventory-history/new-inventory-history.js.map +1 -1
- package/dist-server/graphql/types/location/index.js +14 -3
- package/dist-server/graphql/types/location/index.js.map +1 -1
- package/dist-server/graphql/types/location/location-inventories.js +14 -0
- package/dist-server/graphql/types/location/location-inventories.js.map +1 -0
- package/dist-server/graphql/types/location/location-inventory.js +27 -0
- package/dist-server/graphql/types/location/location-inventory.js.map +1 -0
- package/dist-server/graphql/types/location/location-list.js +1 -1
- package/dist-server/graphql/types/location/location-list.js.map +1 -1
- package/dist-server/graphql/types/location/location-occupancy.js +1 -1
- package/dist-server/graphql/types/location/location-occupancy.js.map +1 -1
- package/dist-server/graphql/types/location/location-patch.js +1 -1
- package/dist-server/graphql/types/location/location-patch.js.map +1 -1
- package/dist-server/graphql/types/location/location.js +1 -1
- package/dist-server/graphql/types/location/location.js.map +1 -1
- package/dist-server/graphql/types/location/new-location.js +1 -1
- package/dist-server/graphql/types/location/new-location.js.map +1 -1
- package/dist-server/graphql/types/movement/movement-count.js +1 -1
- package/dist-server/graphql/types/movement/movement-count.js.map +1 -1
- package/dist-server/graphql/types/movement/movement-list.js +1 -1
- package/dist-server/graphql/types/movement/movement-list.js.map +1 -1
- package/dist-server/graphql/types/movement/movement-patch.js +1 -1
- package/dist-server/graphql/types/movement/movement-patch.js.map +1 -1
- package/dist-server/graphql/types/movement/movement.js +1 -1
- package/dist-server/graphql/types/movement/movement.js.map +1 -1
- package/dist-server/graphql/types/movement/new-movement.js +1 -1
- package/dist-server/graphql/types/movement/new-movement.js.map +1 -1
- package/dist-server/graphql/types/pallet/new-pallet.js +1 -1
- package/dist-server/graphql/types/pallet/new-pallet.js.map +1 -1
- package/dist-server/graphql/types/pallet/pallet-list.js +1 -1
- package/dist-server/graphql/types/pallet/pallet-list.js.map +1 -1
- package/dist-server/graphql/types/pallet/pallet-patch.js +1 -1
- package/dist-server/graphql/types/pallet/pallet-patch.js.map +1 -1
- package/dist-server/graphql/types/pallet/pallet-validate.js +1 -1
- package/dist-server/graphql/types/pallet/pallet-validate.js.map +1 -1
- package/dist-server/graphql/types/pallet/pallet.js +1 -1
- package/dist-server/graphql/types/pallet/pallet.js.map +1 -1
- package/dist-server/graphql/types/pallet-count/new-pallet-count.js +1 -1
- package/dist-server/graphql/types/pallet-count/new-pallet-count.js.map +1 -1
- package/dist-server/graphql/types/pallet-count/pallet-count-list.js +1 -1
- package/dist-server/graphql/types/pallet-count/pallet-count-list.js.map +1 -1
- package/dist-server/graphql/types/pallet-count/pallet-count-patch.js +1 -1
- package/dist-server/graphql/types/pallet-count/pallet-count-patch.js.map +1 -1
- package/dist-server/graphql/types/pallet-count/pallet-count.js +1 -1
- package/dist-server/graphql/types/pallet-count/pallet-count.js.map +1 -1
- package/dist-server/graphql/types/pallet-history/new-pallet-history.js +1 -1
- package/dist-server/graphql/types/pallet-history/new-pallet-history.js.map +1 -1
- package/dist-server/graphql/types/pallet-history/pallet-history-list.js +1 -1
- package/dist-server/graphql/types/pallet-history/pallet-history-list.js.map +1 -1
- package/dist-server/graphql/types/pallet-history/pallet-history-patch.js +1 -1
- package/dist-server/graphql/types/pallet-history/pallet-history-patch.js.map +1 -1
- package/dist-server/graphql/types/pallet-history/pallet-history.js +1 -1
- package/dist-server/graphql/types/pallet-history/pallet-history.js.map +1 -1
- package/dist-server/graphql/types/warehouse/index.js.map +1 -1
- package/dist-server/graphql/types/warehouse/new-warehouse.js +1 -1
- package/dist-server/graphql/types/warehouse/new-warehouse.js.map +1 -1
- package/dist-server/graphql/types/warehouse/warehouse-list.js +1 -1
- package/dist-server/graphql/types/warehouse/warehouse-list.js.map +1 -1
- package/dist-server/graphql/types/warehouse/warehouse-patch.js +1 -1
- package/dist-server/graphql/types/warehouse/warehouse-patch.js.map +1 -1
- package/dist-server/graphql/types/warehouse/warehouse.js +1 -1
- package/dist-server/graphql/types/warehouse/warehouse.js.map +1 -1
- package/dist-server/index.js +13 -13
- package/dist-server/index.js.map +1 -1
- package/dist-server/service/index.js +71 -0
- package/dist-server/service/index.js.map +1 -0
- package/dist-server/service/inventory/index.js +9 -0
- package/dist-server/service/inventory/index.js.map +1 -0
- package/dist-server/service/inventory/inventory-mutation.js +324 -0
- package/dist-server/service/inventory/inventory-mutation.js.map +1 -0
- package/dist-server/service/inventory/inventory-query.js +678 -0
- package/dist-server/service/inventory/inventory-query.js.map +1 -0
- package/dist-server/service/inventory/inventory-types.js +405 -0
- package/dist-server/service/inventory/inventory-types.js.map +1 -0
- package/dist-server/service/inventory/inventory.js +284 -0
- package/dist-server/service/inventory/inventory.js.map +1 -0
- package/dist-server/service/inventory-change/index.js +9 -0
- package/dist-server/service/inventory-change/index.js.map +1 -0
- package/dist-server/service/inventory-change/inventory-change-mutation.js +530 -0
- package/dist-server/service/inventory-change/inventory-change-mutation.js.map +1 -0
- package/dist-server/service/inventory-change/inventory-change-query.js +121 -0
- package/dist-server/service/inventory-change/inventory-change-query.js.map +1 -0
- package/dist-server/service/inventory-change/inventory-change-types.js +65 -0
- package/dist-server/service/inventory-change/inventory-change-types.js.map +1 -0
- package/dist-server/service/inventory-change/inventory-change.js +185 -0
- package/dist-server/service/inventory-change/inventory-change.js.map +1 -0
- package/dist-server/service/inventory-history/index.js +9 -0
- package/dist-server/service/inventory-history/index.js.map +1 -0
- package/dist-server/service/inventory-history/inventory-history-mutation.js +121 -0
- package/dist-server/service/inventory-history/inventory-history-mutation.js.map +1 -0
- package/dist-server/service/inventory-history/inventory-history-query.js +1283 -0
- package/dist-server/service/inventory-history/inventory-history-query.js.map +1 -0
- package/dist-server/service/inventory-history/inventory-history-types.js +382 -0
- package/dist-server/service/inventory-history/inventory-history-types.js.map +1 -0
- package/dist-server/service/inventory-history/inventory-history.js +233 -0
- package/dist-server/service/inventory-history/inventory-history.js.map +1 -0
- package/dist-server/service/location/index.js +9 -0
- package/dist-server/service/location/index.js.map +1 -0
- package/dist-server/service/location/location-mutation.js +157 -0
- package/dist-server/service/location/location-mutation.js.map +1 -0
- package/dist-server/service/location/location-query.js +247 -0
- package/dist-server/service/location/location-query.js.map +1 -0
- package/dist-server/service/location/location-types.js +223 -0
- package/dist-server/service/location/location-types.js.map +1 -0
- package/dist-server/service/location/location.js +125 -0
- package/dist-server/service/location/location.js.map +1 -0
- package/dist-server/service/movement/index.js +9 -0
- package/dist-server/service/movement/index.js.map +1 -0
- package/dist-server/service/movement/movement-mutation.js +80 -0
- package/dist-server/service/movement/movement-mutation.js.map +1 -0
- package/dist-server/service/movement/movement-query.js +286 -0
- package/dist-server/service/movement/movement-query.js.map +1 -0
- package/dist-server/service/movement/movement-types.js +117 -0
- package/dist-server/service/movement/movement-types.js.map +1 -0
- package/dist-server/service/movement/movement.js +101 -0
- package/dist-server/service/movement/movement.js.map +1 -0
- package/dist-server/service/pallet/index.js +9 -0
- package/dist-server/service/pallet/index.js.map +1 -0
- package/dist-server/service/pallet/pallet-mutation.js +192 -0
- package/dist-server/service/pallet/pallet-mutation.js.map +1 -0
- package/dist-server/service/pallet/pallet-query.js +164 -0
- package/dist-server/service/pallet/pallet-query.js.map +1 -0
- package/dist-server/service/pallet/pallet-types.js +109 -0
- package/dist-server/service/pallet/pallet-types.js.map +1 -0
- package/dist-server/service/pallet/pallet.js +112 -0
- package/dist-server/service/pallet/pallet.js.map +1 -0
- package/dist-server/service/pallet-count/index.js +9 -0
- package/dist-server/service/pallet-count/index.js.map +1 -0
- package/dist-server/service/pallet-count/pallet-count-mutation.js +156 -0
- package/dist-server/service/pallet-count/pallet-count-mutation.js.map +1 -0
- package/dist-server/service/pallet-count/pallet-count-query.js +86 -0
- package/dist-server/service/pallet-count/pallet-count-query.js.map +1 -0
- package/dist-server/service/pallet-count/pallet-count-types.js +65 -0
- package/dist-server/service/pallet-count/pallet-count-types.js.map +1 -0
- package/dist-server/service/pallet-count/pallet-count.js +89 -0
- package/dist-server/service/pallet-count/pallet-count.js.map +1 -0
- package/dist-server/service/pallet-history/index.js +9 -0
- package/dist-server/service/pallet-history/index.js.map +1 -0
- package/dist-server/service/pallet-history/pallet-history-mutation.js +120 -0
- package/dist-server/service/pallet-history/pallet-history-mutation.js.map +1 -0
- package/dist-server/service/pallet-history/pallet-history-query.js +87 -0
- package/dist-server/service/pallet-history/pallet-history-query.js.map +1 -0
- package/dist-server/service/pallet-history/pallet-history-types.js +65 -0
- package/dist-server/service/pallet-history/pallet-history-types.js.map +1 -0
- package/dist-server/service/pallet-history/pallet-history.js +107 -0
- package/dist-server/service/pallet-history/pallet-history.js.map +1 -0
- package/dist-server/service/reduced-inventory-history/index.js +6 -0
- package/dist-server/service/reduced-inventory-history/index.js.map +1 -0
- package/dist-server/service/reduced-inventory-history/reduced-inventory-history.js +133 -0
- package/dist-server/service/reduced-inventory-history/reduced-inventory-history.js.map +1 -0
- package/dist-server/service/warehouse/index.js +9 -0
- package/dist-server/service/warehouse/index.js.map +1 -0
- package/dist-server/service/warehouse/warehouse-mutation.js +135 -0
- package/dist-server/service/warehouse/warehouse-mutation.js.map +1 -0
- package/dist-server/service/warehouse/warehouse-query.js +91 -0
- package/dist-server/service/warehouse/warehouse-query.js.map +1 -0
- package/dist-server/service/warehouse/warehouse-types.js +82 -0
- package/dist-server/service/warehouse/warehouse-types.js.map +1 -0
- package/dist-server/service/warehouse/warehouse.js +102 -0
- package/dist-server/service/warehouse/warehouse.js.map +1 -0
- package/dist-server/utils/index.js +1 -1
- package/dist-server/utils/inventory-no-generator.js +2 -2
- package/dist-server/utils/inventory-no-generator.js.map +1 -1
- package/dist-server/utils/inventory-util.js +47 -13
- package/dist-server/utils/inventory-util.js.map +1 -1
- package/package.json +8 -7
- package/server/constants/inventory.ts +4 -1
- package/server/controllers/ecommerce/ecommerce-controller.ts +14 -4
- package/server/controllers/ecommerce/index.ts +1 -0
- package/server/controllers/ecommerce/sellercraft-controller.ts +58 -0
- package/server/controllers/warehouse-controller.ts +54 -2
- package/server/index.ts +8 -4
- package/server/service/index.ts +61 -0
- package/server/service/inventory/index.ts +6 -0
- package/server/{graphql/resolvers/inventory/update-multiple-inventory.ts → service/inventory/inventory-mutation.ts} +158 -7
- package/server/service/inventory/inventory-query.ts +745 -0
- package/server/service/inventory/inventory-types.ts +289 -0
- package/server/{entities → service/inventory}/inventory.ts +86 -8
- package/server/service/inventory-change/index.ts +6 -0
- package/server/{graphql/resolvers/inventory-change/approve-inventory-changes.ts → service/inventory-change/inventory-change-mutation.ts} +303 -13
- package/server/{graphql/resolvers/inventory-change/inventory-changes.ts → service/inventory-change/inventory-change-query.ts} +35 -4
- package/server/service/inventory-change/inventory-change-types.ts +36 -0
- package/server/{entities → service/inventory-change}/inventory-change.ts +56 -6
- package/server/service/inventory-history/index.ts +6 -0
- package/server/service/inventory-history/inventory-history-mutation.ts +119 -0
- package/server/service/inventory-history/inventory-history-query.ts +1435 -0
- package/server/service/inventory-history/inventory-history-types.ts +269 -0
- package/server/{entities → service/inventory-history}/inventory-history.ts +74 -15
- package/server/service/location/index.ts +6 -0
- package/server/service/location/location-mutation.ts +134 -0
- package/server/service/location/location-query.ts +205 -0
- package/server/service/location/location-types.ts +151 -0
- package/server/{entities → service/location}/location.ts +40 -3
- package/server/service/movement/index.ts +6 -0
- package/server/service/movement/movement-mutation.ts +61 -0
- package/server/service/movement/movement-query.ts +258 -0
- package/server/service/movement/movement-types.ts +74 -0
- package/server/{entities → service/movement}/movement.ts +35 -2
- package/server/service/pallet/index.ts +6 -0
- package/server/service/pallet/pallet-mutation.ts +244 -0
- package/server/service/pallet/pallet-query.ts +101 -0
- package/server/service/pallet/pallet-types.ts +68 -0
- package/server/{entities → service/pallet}/pallet.ts +31 -4
- package/server/service/pallet-count/index.ts +6 -0
- package/server/service/pallet-count/pallet-count-mutation.ts +148 -0
- package/server/service/pallet-count/pallet-count-query.ts +46 -0
- package/server/service/pallet-count/pallet-count-types.ts +36 -0
- package/server/service/pallet-count/pallet-count.ts +70 -0
- package/server/service/pallet-history/index.ts +6 -0
- package/server/service/pallet-history/pallet-history-mutation.ts +114 -0
- package/server/service/pallet-history/pallet-history-query.ts +46 -0
- package/server/service/pallet-history/pallet-history-types.ts +36 -0
- package/server/{entities → service/pallet-history}/pallet-history.ts +34 -12
- package/server/service/reduced-inventory-history/index.ts +3 -0
- package/server/{entities → service/reduced-inventory-history}/reduced-inventory-history.ts +7 -12
- package/server/service/warehouse/index.ts +6 -0
- package/server/service/warehouse/warehouse-mutation.ts +114 -0
- package/server/service/warehouse/warehouse-query.ts +51 -0
- package/server/service/warehouse/warehouse-types.ts +50 -0
- package/server/{entities → service/warehouse}/warehouse.ts +29 -4
- package/server/utils/inventory-util.ts +58 -4
- package/server/entities/index.ts +0 -36
- package/server/entities/pallet-count.ts +0 -40
- package/server/graphql/index.ts +0 -7
- package/server/graphql/resolvers/index.ts +0 -33
- package/server/graphql/resolvers/inventory/check-carton-identicality.ts +0 -32
- package/server/graphql/resolvers/inventory/check-inventory-owner.ts +0 -26
- package/server/graphql/resolvers/inventory/check-product-identicality.ts +0 -24
- package/server/graphql/resolvers/inventory/create-inventory.ts +0 -15
- package/server/graphql/resolvers/inventory/delete-inventories.ts +0 -14
- package/server/graphql/resolvers/inventory/delete-inventory.ts +0 -10
- package/server/graphql/resolvers/inventory/index.ts +0 -38
- package/server/graphql/resolvers/inventory/inventories-by-bundle.ts +0 -168
- package/server/graphql/resolvers/inventory/inventories-by-product.ts +0 -164
- package/server/graphql/resolvers/inventory/inventories-by-strategy.ts +0 -106
- package/server/graphql/resolvers/inventory/inventories.ts +0 -129
- package/server/graphql/resolvers/inventory/inventory-by-pallet.ts +0 -15
- package/server/graphql/resolvers/inventory/inventory-transfer.ts +0 -50
- package/server/graphql/resolvers/inventory/inventory.ts +0 -14
- package/server/graphql/resolvers/inventory/update-inventory-remark.ts +0 -19
- package/server/graphql/resolvers/inventory/update-inventory.ts +0 -31
- package/server/graphql/resolvers/inventory-change/create-inventory-change.ts +0 -17
- package/server/graphql/resolvers/inventory-change/delete-inventory-change.ts +0 -12
- package/server/graphql/resolvers/inventory-change/delete-inventory-changes.ts +0 -15
- package/server/graphql/resolvers/inventory-change/index.ts +0 -27
- package/server/graphql/resolvers/inventory-change/inventory-change.ts +0 -14
- package/server/graphql/resolvers/inventory-change/reject-inventory-changes.ts +0 -42
- package/server/graphql/resolvers/inventory-change/submit-inventory-changes.ts +0 -101
- package/server/graphql/resolvers/inventory-change/update-inventory-change.ts +0 -21
- package/server/graphql/resolvers/inventory-change/update-multiple-inventory-change.ts +0 -47
- package/server/graphql/resolvers/inventory-history/bizplace-inventory-histories.ts +0 -81
- package/server/graphql/resolvers/inventory-history/create-inventory-history.ts +0 -17
- package/server/graphql/resolvers/inventory-history/delete-inventory-histories.ts +0 -15
- package/server/graphql/resolvers/inventory-history/delete-inventory-history.ts +0 -12
- package/server/graphql/resolvers/inventory-history/index.ts +0 -34
- package/server/graphql/resolvers/inventory-history/inventory-histories.ts +0 -62
- package/server/graphql/resolvers/inventory-history/inventory-history-pallet-detail-report.ts +0 -166
- package/server/graphql/resolvers/inventory-history/inventory-history-pallet-report.ts +0 -133
- package/server/graphql/resolvers/inventory-history/inventory-history-pallet-storage-report.ts +0 -146
- package/server/graphql/resolvers/inventory-history/inventory-history-report.ts +0 -233
- package/server/graphql/resolvers/inventory-history/inventory-history-summary-report.ts +0 -317
- package/server/graphql/resolvers/inventory-history/inventory-history.ts +0 -13
- package/server/graphql/resolvers/inventory-history/onhand-inventories.ts +0 -233
- package/server/graphql/resolvers/inventory-history/update-inventory-history.ts +0 -21
- package/server/graphql/resolvers/inventory-history/update-multiple-inventory-history.ts +0 -48
- package/server/graphql/resolvers/location/create-location.ts +0 -25
- package/server/graphql/resolvers/location/delete-all-locations.ts +0 -12
- package/server/graphql/resolvers/location/delete-location.ts +0 -16
- package/server/graphql/resolvers/location/delete-locations.ts +0 -16
- package/server/graphql/resolvers/location/index.ts +0 -30
- package/server/graphql/resolvers/location/location-by-name.ts +0 -17
- package/server/graphql/resolvers/location/location-occupancies.ts +0 -45
- package/server/graphql/resolvers/location/location.ts +0 -10
- package/server/graphql/resolvers/location/locations-by-group.ts +0 -29
- package/server/graphql/resolvers/location/locations.ts +0 -18
- package/server/graphql/resolvers/location/update-location.ts +0 -27
- package/server/graphql/resolvers/location/update-multiple-location.ts +0 -29
- package/server/graphql/resolvers/movement/create-movement.ts +0 -13
- package/server/graphql/resolvers/movement/delete-movement.ts +0 -9
- package/server/graphql/resolvers/movement/inbound-movements-counter.ts +0 -68
- package/server/graphql/resolvers/movement/index.ts +0 -23
- package/server/graphql/resolvers/movement/movement.ts +0 -16
- package/server/graphql/resolvers/movement/movements.ts +0 -17
- package/server/graphql/resolvers/movement/outbound-movements-counter.ts +0 -70
- package/server/graphql/resolvers/movement/update-movement.ts +0 -25
- package/server/graphql/resolvers/movement/weekly-movements-counter.ts +0 -94
- package/server/graphql/resolvers/pallet/create-pallet.ts +0 -18
- package/server/graphql/resolvers/pallet/delete-pallet.ts +0 -13
- package/server/graphql/resolvers/pallet/delete-pallets.ts +0 -44
- package/server/graphql/resolvers/pallet/index.ts +0 -29
- package/server/graphql/resolvers/pallet/pallet-by-status.ts +0 -16
- package/server/graphql/resolvers/pallet/pallet-inbound-validate.ts +0 -21
- package/server/graphql/resolvers/pallet/pallet-outbound-validate.ts +0 -21
- package/server/graphql/resolvers/pallet/pallet-return.ts +0 -57
- package/server/graphql/resolvers/pallet/pallet.ts +0 -15
- package/server/graphql/resolvers/pallet/pallets.ts +0 -22
- package/server/graphql/resolvers/pallet/update-multiple-pallet.ts +0 -95
- package/server/graphql/resolvers/pallet/update-pallet.ts +0 -21
- package/server/graphql/resolvers/pallet-count/create-pallet-count.ts +0 -17
- package/server/graphql/resolvers/pallet-count/delete-pallet-count.ts +0 -12
- package/server/graphql/resolvers/pallet-count/delete-pallet-counts.ts +0 -15
- package/server/graphql/resolvers/pallet-count/index.ts +0 -23
- package/server/graphql/resolvers/pallet-count/pallet-count.ts +0 -14
- package/server/graphql/resolvers/pallet-count/pallet-counts.ts +0 -14
- package/server/graphql/resolvers/pallet-count/update-multiple-pallet-count.ts +0 -47
- package/server/graphql/resolvers/pallet-count/update-pallet-count-seq.ts +0 -44
- package/server/graphql/resolvers/pallet-count/update-pallet-count.ts +0 -21
- package/server/graphql/resolvers/pallet-history/create-pallet-history.ts +0 -17
- package/server/graphql/resolvers/pallet-history/delete-pallet-histories.ts +0 -16
- package/server/graphql/resolvers/pallet-history/delete-pallet-history.ts +0 -13
- package/server/graphql/resolvers/pallet-history/index.ts +0 -21
- package/server/graphql/resolvers/pallet-history/pallet-histories.ts +0 -14
- package/server/graphql/resolvers/pallet-history/pallet-history.ts +0 -14
- package/server/graphql/resolvers/pallet-history/update-multiple-pallet-history.ts +0 -46
- package/server/graphql/resolvers/pallet-history/update-pallet-history.ts +0 -21
- package/server/graphql/resolvers/warehouse/create-warehouse.ts +0 -22
- package/server/graphql/resolvers/warehouse/delete-warehouse.ts +0 -16
- package/server/graphql/resolvers/warehouse/delete-warehouses.ts +0 -16
- package/server/graphql/resolvers/warehouse/index.ts +0 -22
- package/server/graphql/resolvers/warehouse/update-multiple-warehouse.ts +0 -29
- package/server/graphql/resolvers/warehouse/update-warehouse.ts +0 -23
- package/server/graphql/resolvers/warehouse/warehouse.ts +0 -17
- package/server/graphql/resolvers/warehouse/warehouses.ts +0 -16
- package/server/graphql/types/index.ts +0 -45
- package/server/graphql/types/inventory/index.ts +0 -61
- package/server/graphql/types/inventory/inventory-bundle-group-detail.ts +0 -8
- package/server/graphql/types/inventory/inventory-bundle-group.ts +0 -33
- package/server/graphql/types/inventory/inventory-list.ts +0 -8
- package/server/graphql/types/inventory/inventory-patch.ts +0 -41
- package/server/graphql/types/inventory/inventory.ts +0 -50
- package/server/graphql/types/inventory/new-inventory.ts +0 -29
- package/server/graphql/types/inventory-change/index.ts +0 -47
- package/server/graphql/types/inventory-change/inventory-change-list.ts +0 -8
- package/server/graphql/types/inventory-change/inventory-change-patch.ts +0 -10
- package/server/graphql/types/inventory-change/inventory-change.ts +0 -32
- package/server/graphql/types/inventory-change/new-inventory-change.ts +0 -8
- package/server/graphql/types/inventory-history/index.ts +0 -54
- package/server/graphql/types/inventory-history/inventory-history-list.ts +0 -8
- package/server/graphql/types/inventory-history/inventory-history-pallet-report-list.ts +0 -9
- package/server/graphql/types/inventory-history/inventory-history-pallet-report.ts +0 -13
- package/server/graphql/types/inventory-history/inventory-history-patch.ts +0 -36
- package/server/graphql/types/inventory-history/inventory-history-summary-list.ts +0 -10
- package/server/graphql/types/inventory-history/inventory-history-summary.ts +0 -17
- package/server/graphql/types/inventory-history/inventory-history.ts +0 -55
- package/server/graphql/types/inventory-history/new-inventory-history.ts +0 -28
- package/server/graphql/types/location/index.ts +0 -42
- package/server/graphql/types/location/location-list.ts +0 -8
- package/server/graphql/types/location/location-occupancy.ts +0 -10
- package/server/graphql/types/location/location-patch.ts +0 -17
- package/server/graphql/types/location/location.ts +0 -21
- package/server/graphql/types/location/new-location.ts +0 -15
- package/server/graphql/types/movement/index.ts +0 -31
- package/server/graphql/types/movement/movement-count.ts +0 -11
- package/server/graphql/types/movement/movement-list.ts +0 -8
- package/server/graphql/types/movement/movement-patch.ts +0 -12
- package/server/graphql/types/movement/movement.ts +0 -17
- package/server/graphql/types/movement/new-movement.ts +0 -12
- package/server/graphql/types/pallet/index.ts +0 -48
- package/server/graphql/types/pallet/new-pallet.ts +0 -11
- package/server/graphql/types/pallet/pallet-list.ts +0 -8
- package/server/graphql/types/pallet/pallet-patch.ts +0 -14
- package/server/graphql/types/pallet/pallet-validate.ts +0 -8
- package/server/graphql/types/pallet/pallet.ts +0 -18
- package/server/graphql/types/pallet-count/index.ts +0 -38
- package/server/graphql/types/pallet-count/new-pallet-count.ts +0 -8
- package/server/graphql/types/pallet-count/pallet-count-list.ts +0 -8
- package/server/graphql/types/pallet-count/pallet-count-patch.ts +0 -10
- package/server/graphql/types/pallet-count/pallet-count.ts +0 -14
- package/server/graphql/types/pallet-history/index.ts +0 -34
- package/server/graphql/types/pallet-history/new-pallet-history.ts +0 -8
- package/server/graphql/types/pallet-history/pallet-history-list.ts +0 -8
- package/server/graphql/types/pallet-history/pallet-history-patch.ts +0 -10
- package/server/graphql/types/pallet-history/pallet-history.ts +0 -14
- package/server/graphql/types/warehouse/index.ts +0 -35
- package/server/graphql/types/warehouse/new-warehouse.ts +0 -10
- package/server/graphql/types/warehouse/warehouse-list.ts +0 -8
- package/server/graphql/types/warehouse/warehouse-patch.ts +0 -12
- package/server/graphql/types/warehouse/warehouse.ts +0 -17
package/server/graphql/index.ts
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import * as Inventory from './inventory'
|
|
2
|
-
import * as InventoryChange from './inventory-change'
|
|
3
|
-
import * as InventoryHistory from './inventory-history'
|
|
4
|
-
import * as Location from './location'
|
|
5
|
-
import * as Movement from './movement'
|
|
6
|
-
import * as Warehouse from './warehouse'
|
|
7
|
-
import * as Pallet from './pallet'
|
|
8
|
-
import * as PalletHistory from './pallet-history'
|
|
9
|
-
import * as PalletCount from './pallet-count'
|
|
10
|
-
|
|
11
|
-
export const queries = [
|
|
12
|
-
Location.Query,
|
|
13
|
-
Inventory.Query,
|
|
14
|
-
InventoryChange.Query,
|
|
15
|
-
InventoryHistory.Query,
|
|
16
|
-
Warehouse.Query,
|
|
17
|
-
Movement.Query,
|
|
18
|
-
Pallet.Query,
|
|
19
|
-
PalletHistory.Query,
|
|
20
|
-
PalletCount.Query
|
|
21
|
-
]
|
|
22
|
-
|
|
23
|
-
export const mutations = [
|
|
24
|
-
Location.Mutation,
|
|
25
|
-
Inventory.Mutation,
|
|
26
|
-
InventoryChange.Mutation,
|
|
27
|
-
InventoryHistory.Mutation,
|
|
28
|
-
Warehouse.Mutation,
|
|
29
|
-
Movement.Mutation,
|
|
30
|
-
Pallet.Mutation,
|
|
31
|
-
PalletHistory.Mutation,
|
|
32
|
-
PalletCount.Mutation
|
|
33
|
-
]
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { getRepository, Repository } from 'typeorm'
|
|
2
|
-
import { INVENTORY_STATUS } from '../../../constants'
|
|
3
|
-
import { Inventory } from '../../../entities'
|
|
4
|
-
|
|
5
|
-
export const checkCartonIdenticalityResolver = {
|
|
6
|
-
async checkCartonIdenticality(_: any, { cartonA, palletA, cartonB }, context: any) {
|
|
7
|
-
const invRepo: Repository<Inventory> = getRepository(Inventory)
|
|
8
|
-
const invA: Inventory = await invRepo.findOne({
|
|
9
|
-
where: { domain: context.state.domain, palletId: palletA, cartonId: cartonA, status: INVENTORY_STATUS.STORED },
|
|
10
|
-
relations: ['product']
|
|
11
|
-
})
|
|
12
|
-
|
|
13
|
-
const invB: Inventory = await invRepo.findOne({
|
|
14
|
-
where: {
|
|
15
|
-
domain: context.state.domain,
|
|
16
|
-
packingType: invA.packingType,
|
|
17
|
-
packingSize: invA.packingSize,
|
|
18
|
-
product: invA.product,
|
|
19
|
-
cartonId: cartonB,
|
|
20
|
-
status: INVENTORY_STATUS.STORED
|
|
21
|
-
},
|
|
22
|
-
relations: ['product']
|
|
23
|
-
})
|
|
24
|
-
|
|
25
|
-
return (
|
|
26
|
-
invA?.expirationDate === invB?.expirationDate &&
|
|
27
|
-
invA?.product?.id === invB?.product?.id &&
|
|
28
|
-
invA?.packingType === invB?.packingType &&
|
|
29
|
-
invA?.packingSize === invB?.packingSize
|
|
30
|
-
)
|
|
31
|
-
}
|
|
32
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { Bizplace } from '@things-factory/biz-base'
|
|
2
|
-
import { getRepository, Repository } from 'typeorm'
|
|
3
|
-
import { INVENTORY_STATUS } from '../../../constants'
|
|
4
|
-
import { Inventory } from '../../../entities'
|
|
5
|
-
|
|
6
|
-
export const checkInventoryOwnerResolver = {
|
|
7
|
-
async checkInventoryOwner(_: any, { palletId, bizplaceName }, context: any) {
|
|
8
|
-
const invRepo: Repository<Inventory> = getRepository(Inventory)
|
|
9
|
-
const bizRepo: Repository<Bizplace> = getRepository(Bizplace)
|
|
10
|
-
|
|
11
|
-
const inventory: Inventory = await invRepo.findOne({
|
|
12
|
-
where: { domain: context.state.domain, palletId, status: INVENTORY_STATUS.STORED },
|
|
13
|
-
relations: ['bizplace']
|
|
14
|
-
})
|
|
15
|
-
|
|
16
|
-
if (!inventory) throw new Error('This inventory status is not stored.')
|
|
17
|
-
|
|
18
|
-
const ownerBizplace: Bizplace = await bizRepo.findOne({
|
|
19
|
-
where: { name: bizplaceName }
|
|
20
|
-
})
|
|
21
|
-
|
|
22
|
-
const foundBizplace: Bizplace = inventory.bizplace
|
|
23
|
-
|
|
24
|
-
return Boolean(ownerBizplace.id === foundBizplace.id)
|
|
25
|
-
}
|
|
26
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { getRepository, Repository } from 'typeorm'
|
|
2
|
-
import { INVENTORY_STATUS } from '../../../constants'
|
|
3
|
-
import { Inventory } from '../../../entities'
|
|
4
|
-
|
|
5
|
-
export const checkProductIdenticalityResolver = {
|
|
6
|
-
async checkProductIdenticality(_: any, { palletA, palletB }, context: any) {
|
|
7
|
-
const invRepo: Repository<Inventory> = getRepository(Inventory)
|
|
8
|
-
const invA: Inventory = await invRepo.findOne({
|
|
9
|
-
where: { domain: context.state.domain, palletId: palletA, status: INVENTORY_STATUS.STORED },
|
|
10
|
-
relations: ['product']
|
|
11
|
-
})
|
|
12
|
-
|
|
13
|
-
const invB: Inventory = await invRepo.findOne({
|
|
14
|
-
where: { domain: context.state.domain, palletId: palletB, status: INVENTORY_STATUS.STORED },
|
|
15
|
-
relations: ['product']
|
|
16
|
-
})
|
|
17
|
-
|
|
18
|
-
return (
|
|
19
|
-
invA?.batchId === invB?.batchId &&
|
|
20
|
-
invA?.product?.id === invB?.product?.id &&
|
|
21
|
-
invA?.packingType === invB?.packingType
|
|
22
|
-
)
|
|
23
|
-
}
|
|
24
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { EntityManager } from 'typeorm'
|
|
2
|
-
import { Inventory } from '../../../entities'
|
|
3
|
-
|
|
4
|
-
export const createInventory = {
|
|
5
|
-
async createInventory(_: any, { inventory }, context: any) {
|
|
6
|
-
const { tx }: { tx: EntityManager } = context.state
|
|
7
|
-
|
|
8
|
-
return await tx.getRepository(Inventory).save({
|
|
9
|
-
domain: context.state.domain,
|
|
10
|
-
creator: context.state.user,
|
|
11
|
-
updater: context.state.user,
|
|
12
|
-
...inventory
|
|
13
|
-
})
|
|
14
|
-
}
|
|
15
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { EntityManager, In } from 'typeorm'
|
|
2
|
-
import { Inventory } from '../../../entities'
|
|
3
|
-
|
|
4
|
-
export const deleteInventories = {
|
|
5
|
-
async deleteInventories(_: any, { id }, context) {
|
|
6
|
-
const { tx }: { tx: EntityManager } = context.state
|
|
7
|
-
|
|
8
|
-
await tx.getRepository(Inventory).delete({
|
|
9
|
-
id: In(id)
|
|
10
|
-
})
|
|
11
|
-
|
|
12
|
-
return true
|
|
13
|
-
}
|
|
14
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { EntityManager } from 'typeorm'
|
|
2
|
-
import { Inventory } from '../../../entities'
|
|
3
|
-
|
|
4
|
-
export const deleteInventory = {
|
|
5
|
-
async deleteInventory(_: any, { name }, context: any) {
|
|
6
|
-
const { tx }: { tx: EntityManager } = context.state
|
|
7
|
-
|
|
8
|
-
return await tx.getRepository(Inventory).delete({ domain: context.state.domain, name })
|
|
9
|
-
}
|
|
10
|
-
}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { checkProductIdenticalityResolver } from './check-product-identicality'
|
|
2
|
-
import { checkCartonIdenticalityResolver } from './check-carton-identicality'
|
|
3
|
-
import { checkInventoryOwnerResolver } from './check-inventory-owner'
|
|
4
|
-
import { createInventory } from './create-inventory'
|
|
5
|
-
import { deleteInventories } from './delete-inventories'
|
|
6
|
-
import { deleteInventory } from './delete-inventory'
|
|
7
|
-
import { inventoriesResolver } from './inventories'
|
|
8
|
-
import { inventoriesByProduct } from './inventories-by-product'
|
|
9
|
-
import { inventoriesByStrategyResolver, inventoriesByStrategy } from './inventories-by-strategy'
|
|
10
|
-
import { inventoryResolver } from './inventory'
|
|
11
|
-
import { inventoryByPalletResolver } from './inventory-by-pallet'
|
|
12
|
-
import { updateInventory } from './update-inventory'
|
|
13
|
-
import { updateInventoryRemark } from './update-inventory-remark'
|
|
14
|
-
import { updateMultipleInventory } from './update-multiple-inventory'
|
|
15
|
-
import { inventoryTransfer } from './inventory-transfer'
|
|
16
|
-
import { inventoriesByBundleResolver } from './inventories-by-bundle'
|
|
17
|
-
|
|
18
|
-
export const Query = {
|
|
19
|
-
...inventoriesResolver,
|
|
20
|
-
...inventoryResolver,
|
|
21
|
-
...inventoriesByProduct,
|
|
22
|
-
...inventoriesByStrategyResolver,
|
|
23
|
-
...checkProductIdenticalityResolver,
|
|
24
|
-
...checkCartonIdenticalityResolver,
|
|
25
|
-
...checkInventoryOwnerResolver,
|
|
26
|
-
...inventoryByPalletResolver,
|
|
27
|
-
...inventoriesByBundleResolver
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
export const Mutation = {
|
|
31
|
-
...updateInventory,
|
|
32
|
-
...createInventory,
|
|
33
|
-
...deleteInventory,
|
|
34
|
-
...updateMultipleInventory,
|
|
35
|
-
...deleteInventories,
|
|
36
|
-
...inventoryTransfer,
|
|
37
|
-
...updateInventoryRemark
|
|
38
|
-
}
|
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
import { User } from '@things-factory/auth-base'
|
|
2
|
-
import { getPermittedBizplaceIds } from '@things-factory/biz-base'
|
|
3
|
-
import { buildQuery, Domain } from '@things-factory/shell'
|
|
4
|
-
import { getRepository, SelectQueryBuilder } from 'typeorm'
|
|
5
|
-
import { Inventory } from '../../../entities'
|
|
6
|
-
import { ProductBundleSetting } from '@things-factory/product-base'
|
|
7
|
-
|
|
8
|
-
export const inventoriesByBundleResolver = {
|
|
9
|
-
async inventoriesByBundle(_: any, { filters, pagination, sortings }, context: any) {
|
|
10
|
-
const { domain, user }: { domain: Domain; user: User } = context.state
|
|
11
|
-
|
|
12
|
-
const params = { filters, pagination }
|
|
13
|
-
|
|
14
|
-
const productBundleId = params.filters.filter(x => x.name === 'productBundleId')[0].value
|
|
15
|
-
if (!productBundleId) {
|
|
16
|
-
throw new Error('params product bundle is missing')
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
const bundleReleaseQty: number = params.filters.filter(x => x.name === 'bundleReleaseQty')[0].value
|
|
20
|
-
|
|
21
|
-
// remove productBundleId and bundleReleaseQty from params.filters
|
|
22
|
-
params.filters = params.filters.filter(x => x.name !== 'productBundleId' && x.name !== 'bundleReleaseQty')
|
|
23
|
-
|
|
24
|
-
if (!params.filters.find((filter: any) => filter.name === 'bizplace_id')) {
|
|
25
|
-
params.filters.push({
|
|
26
|
-
name: 'bizplace_id',
|
|
27
|
-
operator: 'in',
|
|
28
|
-
value: await getPermittedBizplaceIds(domain, user),
|
|
29
|
-
relation: true
|
|
30
|
-
})
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
const remainOnlyParam: { name: string; operator: string; value: boolean } = params?.filters?.find(
|
|
34
|
-
(f: { name: string; operator: string; value: any }) => f.name === 'remainOnly'
|
|
35
|
-
)
|
|
36
|
-
|
|
37
|
-
let remainOnly: boolean = false
|
|
38
|
-
if (typeof remainOnlyParam?.value !== 'undefined') {
|
|
39
|
-
remainOnly = remainOnlyParam.value
|
|
40
|
-
params.filters = params.filters.filter(
|
|
41
|
-
(f: { name: string; operator: string; value: any }) => f.name !== 'remainOnly'
|
|
42
|
-
)
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
const unlockOnlyParam: { name: string; operator: string; value: boolean } = params?.filters?.find(
|
|
46
|
-
(f: { name: string; operator: string; value: any }) => f.name === 'unlockOnly'
|
|
47
|
-
)
|
|
48
|
-
|
|
49
|
-
let unlockOnly: boolean = false
|
|
50
|
-
if (typeof unlockOnlyParam?.value !== 'undefined') {
|
|
51
|
-
unlockOnly = unlockOnlyParam.value
|
|
52
|
-
params.filters = params.filters.filter(
|
|
53
|
-
(f: { name: string; operator: string; value: any }) => f.name !== 'unlockOnly'
|
|
54
|
-
)
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
const productBundleSettings: ProductBundleSetting[] = await getRepository(ProductBundleSetting).find({
|
|
58
|
-
where: { productBundle: productBundleId },
|
|
59
|
-
relations: ['product', 'productBundle']
|
|
60
|
-
})
|
|
61
|
-
|
|
62
|
-
if (!productBundleSettings.length) {
|
|
63
|
-
throw new Error('product bundle settings is not found')
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
const qb: SelectQueryBuilder<Inventory> = getRepository(Inventory).createQueryBuilder('iv')
|
|
67
|
-
buildQuery(qb, params, context)
|
|
68
|
-
|
|
69
|
-
qb.select('iv.product_id', 'productId')
|
|
70
|
-
.addSelect('iv.batch_id', 'batchId')
|
|
71
|
-
.addSelect('iv.batch_id_ref', 'batchIdRef')
|
|
72
|
-
.addSelect('iv.packing_type', 'packingType')
|
|
73
|
-
.addSelect('SUM(iv.qty)', 'qty')
|
|
74
|
-
.addSelect('SUM(iv.locked_qty)', 'lockedQty')
|
|
75
|
-
.addSelect('SUM(iv.uom_value)', 'uomValue')
|
|
76
|
-
.addSelect('SUM(iv.locked_uom_value)', 'lockedUomValue')
|
|
77
|
-
.addSelect('prd.sku', 'productSku')
|
|
78
|
-
.addSelect('prd.name', 'productName')
|
|
79
|
-
.addSelect('prd.description', 'productDescription')
|
|
80
|
-
.addSelect('prd.type', 'productType')
|
|
81
|
-
.addSelect('prd.primary_unit', 'uom')
|
|
82
|
-
.leftJoin('iv.product', 'prd')
|
|
83
|
-
|
|
84
|
-
if (remainOnly) {
|
|
85
|
-
qb.andWhere('iv.qty > 0')
|
|
86
|
-
.andWhere('CASE WHEN iv.lockedQty IS NULL THEN 0 ELSE iv.lockedQty END >= 0')
|
|
87
|
-
.andWhere('iv.qty - CASE WHEN iv.lockedQty IS NULL THEN 0 ELSE iv.lockedQty END > 0')
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
if (unlockOnly) {
|
|
91
|
-
qb.andWhere('CASE WHEN iv.lockedQty IS NULL THEN 0 ELSE iv.lockedQty END = 0')
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
qb.andWhere('iv.product_id IN (:...productIds)', {
|
|
95
|
-
productIds: productBundleSettings.map(productBundle => productBundle.product.id)
|
|
96
|
-
})
|
|
97
|
-
.groupBy('iv.product_id')
|
|
98
|
-
.addGroupBy('iv.batch_id')
|
|
99
|
-
.addGroupBy('iv.batch_id_ref')
|
|
100
|
-
.addGroupBy('iv.packing_type')
|
|
101
|
-
.addGroupBy('prd.sku')
|
|
102
|
-
.addGroupBy('prd.name')
|
|
103
|
-
.addGroupBy('prd.description')
|
|
104
|
-
.addGroupBy('prd.type')
|
|
105
|
-
.addOrderBy('prd.name')
|
|
106
|
-
.addGroupBy('prd.primary_unit')
|
|
107
|
-
.addOrderBy('iv.batch_id')
|
|
108
|
-
|
|
109
|
-
let bundleGroup = await qb.getRawMany()
|
|
110
|
-
|
|
111
|
-
bundleGroup = bundleGroup.map((item: any) => {
|
|
112
|
-
return {
|
|
113
|
-
...item,
|
|
114
|
-
bundleId: productBundleId,
|
|
115
|
-
remainQty: item.qty - (item.lockedQty ? item.lockedQty : 0),
|
|
116
|
-
remainUomValue: item.uomValue - (item.lockedUomValue ? item.lockedUomValue : 0),
|
|
117
|
-
uom: item.uom,
|
|
118
|
-
bundleQty: productBundleSettings.filter(pbs => pbs.product.id === item.productId)[0].bundleQty
|
|
119
|
-
}
|
|
120
|
-
})
|
|
121
|
-
|
|
122
|
-
const bundleSetting = productBundleSettings.map(pbs => {
|
|
123
|
-
return {
|
|
124
|
-
id: pbs.id,
|
|
125
|
-
productId: pbs.product.id,
|
|
126
|
-
bundleId: pbs.productBundle.id,
|
|
127
|
-
bundleQty: pbs.bundleQty,
|
|
128
|
-
releaseQty: bundleReleaseQty * pbs.bundleQty,
|
|
129
|
-
productReleaseQty: 0,
|
|
130
|
-
productReleaseUomValue: 0
|
|
131
|
-
}
|
|
132
|
-
})
|
|
133
|
-
|
|
134
|
-
/** ************************ **/
|
|
135
|
-
bundleGroup = bundleGroup
|
|
136
|
-
.map(group => {
|
|
137
|
-
const uomValue = group.remainUomValue / group.remainQty
|
|
138
|
-
|
|
139
|
-
bundleSetting.forEach(setting => {
|
|
140
|
-
let assigned = false
|
|
141
|
-
let releaseQty = 0
|
|
142
|
-
let releaseUomValue = 0
|
|
143
|
-
|
|
144
|
-
if (group.productId === setting.productId) {
|
|
145
|
-
if (setting.productReleaseQty < setting.releaseQty) {
|
|
146
|
-
assigned = true
|
|
147
|
-
const leftQty = setting.releaseQty - setting.productReleaseQty
|
|
148
|
-
releaseQty = leftQty > group.remainQty ? group.remainQty : leftQty
|
|
149
|
-
releaseUomValue = Math.round(releaseQty * uomValue * 100) / 100
|
|
150
|
-
setting.productReleaseQty += releaseQty
|
|
151
|
-
setting.productReleaseUomValue += releaseUomValue
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
group.assigned = assigned
|
|
155
|
-
group.releaseQty = releaseQty
|
|
156
|
-
group.releaseUomValue = releaseUomValue
|
|
157
|
-
group.releaseUomValueWithUom = `${releaseUomValue} ${group.uom}`
|
|
158
|
-
}
|
|
159
|
-
})
|
|
160
|
-
|
|
161
|
-
return group
|
|
162
|
-
})
|
|
163
|
-
.filter(group => group.assigned)
|
|
164
|
-
/** ************************ **/
|
|
165
|
-
|
|
166
|
-
return { bundleGroup, bundleSetting }
|
|
167
|
-
}
|
|
168
|
-
}
|
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
import { User } from '@things-factory/auth-base'
|
|
2
|
-
import { getPermittedBizplaceIds, getPartnersCompanyBizplaces, Bizplace } from '@things-factory/biz-base'
|
|
3
|
-
import { Product } from '@things-factory/product-base'
|
|
4
|
-
import { convertListParams, ListParam, Domain } from '@things-factory/shell'
|
|
5
|
-
import { getRepository, SelectQueryBuilder, EntityManager } from 'typeorm'
|
|
6
|
-
import { Inventory } from '../../../entities'
|
|
7
|
-
|
|
8
|
-
export const inventoriesByProduct = {
|
|
9
|
-
async inventoriesByProduct(_: any, params: ListParam, context: any) {
|
|
10
|
-
try {
|
|
11
|
-
const { domain, user, tx }: { domain: Domain; user: User; tx: EntityManager } = context.state
|
|
12
|
-
let permittedBizplaceIds: string[] = await getPermittedBizplaceIds(domain, user)
|
|
13
|
-
const partnersCompanyBizplaces: Bizplace[] = await getPartnersCompanyBizplaces(domain, user)
|
|
14
|
-
|
|
15
|
-
const page = params.pagination.page
|
|
16
|
-
const limit = params.pagination.limit
|
|
17
|
-
|
|
18
|
-
let bizplaceFilter = params.filters.find(filter=>filter.name =='bizplace')
|
|
19
|
-
let productFilter = params.filters.find(filter=>filter.name =='product')
|
|
20
|
-
let productTypeFilter = params.filters.find(filter=>filter.name =='type')
|
|
21
|
-
let availableStockFilter = params.filters.find(filter=>filter.name =='availableStock')
|
|
22
|
-
let lowStockFilter = params.filters.find(filter=>filter.name =='lowStock')
|
|
23
|
-
let overStockFilter = params.filters.find(filter=>filter.name =='overStock')
|
|
24
|
-
|
|
25
|
-
if(bizplaceFilter){
|
|
26
|
-
const bizplaceQueryBuilder: SelectQueryBuilder<Bizplace> = getRepository(Bizplace).createQueryBuilder('b')
|
|
27
|
-
bizplaceQueryBuilder
|
|
28
|
-
.innerJoin('companies', 'c2', ' c2.domain_id = b.domain_id')
|
|
29
|
-
.innerJoin('bizplaces', 'b2', 'b2.company_id = c2.id')
|
|
30
|
-
.where('b2.id = :bizplaceId', { bizplaceId: bizplaceFilter.value })
|
|
31
|
-
|
|
32
|
-
let bizplaceList = await bizplaceQueryBuilder.getMany()
|
|
33
|
-
|
|
34
|
-
permittedBizplaceIds = [
|
|
35
|
-
...permittedBizplaceIds.filter(itm => itm == bizplaceFilter.value),
|
|
36
|
-
...bizplaceList.map(bz=>bz.id),
|
|
37
|
-
...partnersCompanyBizplaces.map(biz=>biz.id)
|
|
38
|
-
]
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
let bizplaceQuery = ''
|
|
42
|
-
if(permittedBizplaceIds.length > 0){
|
|
43
|
-
bizplaceQuery = `AND EXISTS (
|
|
44
|
-
SELECT * FROM (VALUES ${permittedBizplaceIds.map(id => `('${id}')`).join(',')})
|
|
45
|
-
AS bizFilter(bizplace_id)
|
|
46
|
-
WHERE bizFilter.bizplace_id::uuid = "Inventory"."bizplace_id"
|
|
47
|
-
)`
|
|
48
|
-
} else {
|
|
49
|
-
bizplaceQuery = `1 = 0`
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
let productQuery = ''
|
|
53
|
-
if (productFilter) {
|
|
54
|
-
let productValue = productFilter.value
|
|
55
|
-
.toLowerCase()
|
|
56
|
-
.split(',')
|
|
57
|
-
.map(prod => {
|
|
58
|
-
return "'%" + prod.trim().replace(/'/g, "''") + "%'"
|
|
59
|
-
})
|
|
60
|
-
.join(',')
|
|
61
|
-
productQuery = `AND (
|
|
62
|
-
Lower("Product"."name") LIKE ANY(ARRAY[${productValue}])
|
|
63
|
-
OR Lower("Product"."sku") LIKE ANY(ARRAY[${productValue}])
|
|
64
|
-
OR Lower("Product"."description") LIKE ANY(ARRAY[${productValue}])
|
|
65
|
-
OR Lower("ProductRef"."name") LIKE ANY(ARRAY[${productValue}])
|
|
66
|
-
OR Lower("ProductRef"."sku") LIKE ANY(ARRAY[${productValue}])
|
|
67
|
-
OR Lower("ProductRef"."description") LIKE ANY(ARRAY[${productValue}])
|
|
68
|
-
)`
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
if(productTypeFilter){
|
|
72
|
-
let productTypeValue = productTypeFilter.value
|
|
73
|
-
.toLowerCase()
|
|
74
|
-
.split(',')
|
|
75
|
-
.map(prod => {
|
|
76
|
-
return "'%" + prod.trim().replace(/'/g, "''") + "%'"
|
|
77
|
-
})
|
|
78
|
-
.join(',')
|
|
79
|
-
productQuery = productQuery + ` AND (
|
|
80
|
-
Lower("Product"."type") LIKE ANY(ARRAY[${productTypeValue}])
|
|
81
|
-
)`
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
let availableStockQuery = ''
|
|
85
|
-
if(availableStockFilter?.value){
|
|
86
|
-
availableStockQuery = ` AND SUM("Inventory"."qty") > 0`
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
let thresholdQuery = ''
|
|
90
|
-
if(lowStockFilter?.value){
|
|
91
|
-
thresholdQuery = `AND COALESCE("ProductDetailBizplaceSetting"."min_qty", "Product"."min_qty",0) > SUM("Inventory"."qty")`
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
if(overStockFilter?.value){
|
|
95
|
-
thresholdQuery = `AND COALESCE("ProductDetailBizplaceSetting"."max_qty", "Product"."max_qty",0) > 0 AND
|
|
96
|
-
COALESCE("ProductDetailBizplaceSetting"."max_qty", "Product"."max_qty",0) < SUM("Inventory"."qty")`
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
await tx.query(`
|
|
100
|
-
create temp table temp_inv_history AS
|
|
101
|
-
(
|
|
102
|
-
SELECT "Product"."id" AS "id", "Product"."sku" AS "sku", "Product"."name" AS "name", "Product"."type" AS "type", "Product"."description" AS "description",
|
|
103
|
-
"Product"."weight" AS "weight", "ProductRef"."name" AS "productRefName",
|
|
104
|
-
"ProductRef"."description" AS "productRefDesciption", "Bizplace"."name" AS "bizplaceName", SUM("Inventory"."qty") AS "qty" ,
|
|
105
|
-
CASE WHEN SUM("Inventory"."qty") > 0 THEN SUM(COALESCE("Inventory"."unit_cost", 0) * "Inventory"."qty")/ SUM("Inventory"."qty") ELSE 0 END AS "averageUnitCost",
|
|
106
|
-
COALESCE("ProductDetailBizplaceSetting"."min_qty", "Product"."min_qty",0) AS "minQty",
|
|
107
|
-
COALESCE("ProductDetailBizplaceSetting"."max_qty", "Product"."max_qty",0) AS "maxQty"
|
|
108
|
-
FROM "inventories" "Inventory"
|
|
109
|
-
LEFT JOIN "products" "Product" ON "Product"."id"="Inventory"."product_id"
|
|
110
|
-
LEFT JOIN "product_details" "ProductDetails" ON "ProductDetails"."product_id" = "Product"."id"
|
|
111
|
-
AND "ProductDetails"."is_default"
|
|
112
|
-
LEFT JOIN "product_detail_bizplace_settings" "ProductDetailBizplaceSetting" ON "ProductDetailBizplaceSetting"."product_detail_id" = "ProductDetails"."id"
|
|
113
|
-
AND "ProductDetailBizplaceSetting"."domain_id" = "Inventory"."domain_id"
|
|
114
|
-
LEFT JOIN "products" "ProductRef" ON "ProductRef"."id"="Product"."product_ref_id"
|
|
115
|
-
INNER JOIN "bizplaces" "Bizplace" ON "Bizplace"."id"="Inventory"."bizplace_id"
|
|
116
|
-
WHERE "Inventory"."qty" >= 0
|
|
117
|
-
AND "Inventory"."domain_id" = $1
|
|
118
|
-
${bizplaceQuery}
|
|
119
|
-
${productQuery}
|
|
120
|
-
GROUP BY "Product"."id", "ProductRef"."id", "Bizplace"."id", "ProductDetailBizplaceSetting"."id"
|
|
121
|
-
HAVING 1 = 1
|
|
122
|
-
${availableStockQuery}
|
|
123
|
-
${thresholdQuery}
|
|
124
|
-
)`,[domain.id]
|
|
125
|
-
)
|
|
126
|
-
|
|
127
|
-
const results: any = await tx.query(`
|
|
128
|
-
SELECT * FROM temp_inv_history
|
|
129
|
-
ORDER BY "bizplaceName", "sku"
|
|
130
|
-
OFFSET $1 LIMIT $2
|
|
131
|
-
`,[(page - 1) * limit, limit]
|
|
132
|
-
)
|
|
133
|
-
|
|
134
|
-
const total: any = await tx.query(`SELECT COUNT(*) FROM temp_inv_history`)
|
|
135
|
-
|
|
136
|
-
tx.query(`drop table temp_inv_history`)
|
|
137
|
-
|
|
138
|
-
return {
|
|
139
|
-
items: results.map((item: any) => {
|
|
140
|
-
return {
|
|
141
|
-
product: {
|
|
142
|
-
id: item.id,
|
|
143
|
-
name: item.name,
|
|
144
|
-
sku: item.sku,
|
|
145
|
-
description: item.description,
|
|
146
|
-
type: item.type,
|
|
147
|
-
weight: item.weight,
|
|
148
|
-
productRef: { name: item.productRefName, description: item.productRefDesciption },
|
|
149
|
-
bizplace: { name: item.bizplaceName },
|
|
150
|
-
minQty: item.minQty,
|
|
151
|
-
maxQty: item.maxQty
|
|
152
|
-
},
|
|
153
|
-
averageUnitCost: item.averageUnitCost,
|
|
154
|
-
qty: item.qty
|
|
155
|
-
}
|
|
156
|
-
}),
|
|
157
|
-
total: total[0].count
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
} catch (error) {
|
|
161
|
-
throw error
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import { getRepository, EntityManager } from 'typeorm'
|
|
2
|
-
import { Inventory } from '../../../entities'
|
|
3
|
-
|
|
4
|
-
export const inventoriesByStrategyResolver = {
|
|
5
|
-
async inventoriesByStrategy(
|
|
6
|
-
_: any,
|
|
7
|
-
{ worksheetId, batchId, bizplaceId, productName, productSku, packingType, pickingStrategy, locationSortingRules },
|
|
8
|
-
context: any
|
|
9
|
-
) {
|
|
10
|
-
const { tx }: { tx: EntityManager;} = context.state
|
|
11
|
-
|
|
12
|
-
return inventoriesByStrategy({ worksheetId, batchId, bizplaceId, productName, productSku, packingType, pickingStrategy, locationSortingRules }, tx)
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export async function inventoriesByStrategy({ worksheetId, batchId, bizplaceId, productName, productSku, packingType, pickingStrategy, locationSortingRules }, trxMgr: EntityManager){
|
|
17
|
-
const qb = await trxMgr.getRepository(Inventory).createQueryBuilder('INV')
|
|
18
|
-
qb.leftJoinAndSelect('INV.product', 'PROD')
|
|
19
|
-
.leftJoinAndSelect('INV.location', 'LOC')
|
|
20
|
-
.addSelect(subQuery =>
|
|
21
|
-
subQuery
|
|
22
|
-
.select('COALESCE(SUM(release_qty), 0)', 'releaseQty')
|
|
23
|
-
.from('order_inventories', 'OI')
|
|
24
|
-
.where('"OI"."inventory_id" = "INV"."id"')
|
|
25
|
-
.andWhere(
|
|
26
|
-
"\"OI\".\"status\" IN ('PENDING', 'PENDING_RECEIVE', 'PENDING_WORKSHEET', 'PENDING_SPLIT')"
|
|
27
|
-
)
|
|
28
|
-
.andWhere('"OI"."ref_worksheet_id" <> :worksheetId', { worksheetId: worksheetId })
|
|
29
|
-
)
|
|
30
|
-
.addSelect(subQuery =>
|
|
31
|
-
subQuery
|
|
32
|
-
.select('COALESCE(SUM(release_uom_value), 0)', 'releaseUomValue')
|
|
33
|
-
.from('order_inventories', 'OI')
|
|
34
|
-
.where('"OI"."inventory_id" = "INV"."id"')
|
|
35
|
-
.andWhere(
|
|
36
|
-
"\"OI\".\"status\" IN ('PENDING', 'PENDING_RECEIVE', 'PENDING_WORKSHEET', 'PENDING_SPLIT')"
|
|
37
|
-
)
|
|
38
|
-
.andWhere('"OI"."ref_worksheet_id" <> :worksheetId', { worksheetId: worksheetId })
|
|
39
|
-
)
|
|
40
|
-
.andWhere('"PROD"."name" = :productName')
|
|
41
|
-
.andWhere('"PROD"."sku" = :productSku')
|
|
42
|
-
.andWhere('"INV"."packing_type" = :packingType')
|
|
43
|
-
.andWhere('"INV"."status" = :status', { status: 'STORED' })
|
|
44
|
-
.setParameters({
|
|
45
|
-
productName,
|
|
46
|
-
productSku,
|
|
47
|
-
packingType
|
|
48
|
-
})
|
|
49
|
-
|
|
50
|
-
if (batchId !== '') {
|
|
51
|
-
qb.andWhere('"INV"."batch_id" = :batchId', { batchId })
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
if (bizplaceId) {
|
|
55
|
-
qb.andWhere('"INV"."bizplace_id" = :bizplaceId', { bizplaceId: bizplaceId })
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
switch (pickingStrategy.toUpperCase()) {
|
|
59
|
-
case 'FIFO':
|
|
60
|
-
qb.orderBy('"INV"."created_at"', 'ASC')
|
|
61
|
-
break
|
|
62
|
-
|
|
63
|
-
case 'LILO':
|
|
64
|
-
qb.orderBy('"INV"."created_at"', 'DESC')
|
|
65
|
-
break
|
|
66
|
-
|
|
67
|
-
case 'FEFO':
|
|
68
|
-
qb.orderBy('"INV"."expiration_date"', 'ASC')
|
|
69
|
-
break
|
|
70
|
-
|
|
71
|
-
case 'LOCATION':
|
|
72
|
-
if (locationSortingRules?.length > 0) {
|
|
73
|
-
locationSortingRules.forEach((rule: { name: string; desc: boolean }, idx: number) => {
|
|
74
|
-
idx === 0
|
|
75
|
-
? qb.orderBy(`LOC.${rule.name}`, rule.desc ? 'DESC' : 'ASC')
|
|
76
|
-
: qb.addOrderBy(`LOC.${rule.name}`, rule.desc ? 'DESC' : 'ASC')
|
|
77
|
-
})
|
|
78
|
-
} else qb.orderBy('"LOC"."name"', 'DESC')
|
|
79
|
-
break
|
|
80
|
-
default:
|
|
81
|
-
qb.orderBy('"INV"."created_at"', 'ASC')
|
|
82
|
-
|
|
83
|
-
break
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
const { entities, raw } = await qb.getRawAndEntities()
|
|
87
|
-
const items = entities
|
|
88
|
-
.map((inv: Inventory, idx: number) => {
|
|
89
|
-
const qty: number = inv?.qty > 0 ? inv.qty : 0
|
|
90
|
-
const uomValue: number = inv?.uomValue > 0 ? inv.uomValue : 0
|
|
91
|
-
const lockedQty: number = inv.lockedQty || 0
|
|
92
|
-
const lockedUomValue: number = inv.lockedUomValue || 0
|
|
93
|
-
const releaseQty: number = parseInt(raw[idx].releaseQty) || 0
|
|
94
|
-
const releaseUomValue: number = parseFloat(raw[idx].releaseUomValue) || 0
|
|
95
|
-
|
|
96
|
-
return {
|
|
97
|
-
...inv,
|
|
98
|
-
qty: qty - lockedQty - releaseQty,
|
|
99
|
-
uomValue: uomValue - lockedUomValue - releaseUomValue
|
|
100
|
-
}
|
|
101
|
-
})
|
|
102
|
-
.filter((inv: Inventory) => inv.qty)
|
|
103
|
-
|
|
104
|
-
const total: number = await qb.getCount()
|
|
105
|
-
return { items, total }
|
|
106
|
-
}
|