@things-factory/worksheet-base 5.0.12 → 6.0.0-alpha.0
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/controllers/ecommerce/sellercraft-controller.js +225 -191
- package/dist-server/controllers/ecommerce/sellercraft-controller.js.map +1 -1
- package/dist-server/controllers/inbound/unloading-returning-worksheet-controller.js +2 -2
- package/dist-server/controllers/inbound/unloading-returning-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/inbound/unloading-worksheet-controller.js +28 -17
- package/dist-server/controllers/inbound/unloading-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/inspect/cycle-count-worksheet-controller.js +1 -1
- package/dist-server/controllers/inspect/cycle-count-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/outbound/packing-worksheet-controller.js +17 -3
- package/dist-server/controllers/outbound/packing-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/outbound/picking-worksheet-controller.js +221 -144
- package/dist-server/controllers/outbound/picking-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/outbound/returning-worksheet-controller.js +16 -0
- package/dist-server/controllers/outbound/returning-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/outbound/sorting-worksheet-controller.js +8 -8
- package/dist-server/controllers/outbound/sorting-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/render-elccl-grn.js +21 -16
- package/dist-server/controllers/render-elccl-grn.js.map +1 -1
- package/dist-server/controllers/render-fm-grn.js +43 -26
- package/dist-server/controllers/render-fm-grn.js.map +1 -1
- package/dist-server/controllers/render-grn.js +42 -28
- package/dist-server/controllers/render-grn.js.map +1 -1
- package/dist-server/controllers/render-invoices.js +4 -5
- package/dist-server/controllers/render-invoices.js.map +1 -1
- package/dist-server/controllers/render-job-sheet.js +19 -19
- package/dist-server/controllers/render-job-sheet.js.map +1 -1
- package/dist-server/controllers/render-kimeda-grn.js +38 -23
- package/dist-server/controllers/render-kimeda-grn.js.map +1 -1
- package/dist-server/controllers/render-manifest.js +8 -9
- package/dist-server/controllers/render-manifest.js.map +1 -1
- package/dist-server/controllers/render-manual-do.js +15 -15
- package/dist-server/controllers/render-manual-do.js.map +1 -1
- package/dist-server/controllers/render-orientage-do.js +74 -28
- package/dist-server/controllers/render-orientage-do.js.map +1 -1
- package/dist-server/controllers/render-orientage-grn.js +25 -15
- package/dist-server/controllers/render-orientage-grn.js.map +1 -1
- package/dist-server/controllers/render-po.js +28 -19
- package/dist-server/controllers/render-po.js.map +1 -1
- package/dist-server/controllers/render-ro-do.js +139 -105
- package/dist-server/controllers/render-ro-do.js.map +1 -1
- package/dist-server/controllers/render-seebuu-grn.js +29 -19
- package/dist-server/controllers/render-seebuu-grn.js.map +1 -1
- package/dist-server/controllers/vas/vas-worksheet-controller.js +5 -5
- package/dist-server/controllers/vas/vas-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/worksheet-controller.js +75 -25
- package/dist-server/controllers/worksheet-controller.js.map +1 -1
- package/dist-server/entities/warehouse-bizplace-onhand-inventory.js +2 -1
- package/dist-server/entities/warehouse-bizplace-onhand-inventory.js.map +1 -1
- package/dist-server/entities/worksheet-detail.js +14 -12
- package/dist-server/entities/worksheet-detail.js.map +1 -1
- package/dist-server/entities/worksheet-movement.js +1 -2
- package/dist-server/entities/worksheet-movement.js.map +1 -1
- package/dist-server/entities/worksheet.js +13 -13
- package/dist-server/entities/worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/pallet/pallet-outbound.js +1 -1
- package/dist-server/graphql/resolvers/pallet/pallet-outbound.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/batch-picking-worksheet.js +6 -6
- package/dist-server/graphql/resolvers/worksheet/batch-picking-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/cancel-draft-release-order.js +1 -1
- package/dist-server/graphql/resolvers/worksheet/cancel-draft-release-order.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/check-inventory-release.js +6 -5
- package/dist-server/graphql/resolvers/worksheet/check-inventory-release.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/check-stock-take-current-location.js +8 -8
- package/dist-server/graphql/resolvers/worksheet/check-stock-take-current-location.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/confirm-cancellation-release-order.js +82 -80
- package/dist-server/graphql/resolvers/worksheet/confirm-cancellation-release-order.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/create-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/cross-dock-picking.js +5 -4
- package/dist-server/graphql/resolvers/worksheet/cross-dock-picking.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/cycle-count-adjustment.js +5 -5
- package/dist-server/graphql/resolvers/worksheet/cycle-count-adjustment.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/cycle-count-worksheet.js +5 -4
- package/dist-server/graphql/resolvers/worksheet/cycle-count-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/delete-worksheet.js +1 -1
- package/dist-server/graphql/resolvers/worksheet/delete-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/delivery-order-by-worksheet.js +83 -52
- package/dist-server/graphql/resolvers/worksheet/delivery-order-by-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/fetch-delivery-order-ro.js +169 -0
- package/dist-server/graphql/resolvers/worksheet/fetch-delivery-order-ro.js.map +1 -0
- package/dist-server/graphql/resolvers/worksheet/fetch-sellercraft-document.js +67 -0
- package/dist-server/graphql/resolvers/worksheet/fetch-sellercraft-document.js.map +1 -0
- package/dist-server/graphql/resolvers/worksheet/find-release-orders-by-task-no.js +1 -34
- package/dist-server/graphql/resolvers/worksheet/find-release-orders-by-task-no.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/find-release-orders-by-worksheet-no.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.js +70 -0
- package/dist-server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.js.map +1 -0
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-arrival-notice-worksheet.js +34 -3
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-arrival-notice-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-batch-picking-worksheet.js +4 -4
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-batch-picking-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-cycle-count-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-multiple-release-good-worksheet.js +3 -3
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-multiple-release-good-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-partial-putaway-return-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-partial-putaway-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-putaway-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.js +14 -10
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-return-order-worksheet.js +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-return-order-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-vas-order-worksheet.js +1 -1
- package/dist-server/graphql/resolvers/worksheet/generate-worksheet/generate-vas-order-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/having-vas.js +7 -7
- package/dist-server/graphql/resolvers/worksheet/having-vas.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/index.js +5 -3
- package/dist-server/graphql/resolvers/worksheet/index.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/inspecting/activate-cycle-count.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/inspecting/add-extra-pallet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/inspecting/check-missing-pallet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/inspecting/complete-inspection.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/inspecting/inspecting.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/inspecting/relocate-pallet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/inspecting/undo-inspection.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/inventories-by-pallet.js +18 -9
- package/dist-server/graphql/resolvers/worksheet/inventories-by-pallet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/loaded-inventories.js +6 -5
- package/dist-server/graphql/resolvers/worksheet/loaded-inventories.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/loading/activate-loading.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/loading/complete-loading.js +14 -14
- package/dist-server/graphql/resolvers/worksheet/loading/complete-loading.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/loading/loading.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/loading/undo-loading.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/loading-worksheet.js +11 -10
- package/dist-server/graphql/resolvers/worksheet/loading-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/not-tally-target-inventories.js +5 -4
- package/dist-server/graphql/resolvers/worksheet/not-tally-target-inventories.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/packing/activate-packing.js +3 -4
- package/dist-server/graphql/resolvers/worksheet/packing/activate-packing.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/packing/complete-packing.js +2 -2
- package/dist-server/graphql/resolvers/worksheet/packing/complete-packing.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/packing/packing.js +1 -1
- package/dist-server/graphql/resolvers/worksheet/packing/packing.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/packing/scan-product-packing.js +16 -11
- package/dist-server/graphql/resolvers/worksheet/packing/scan-product-packing.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/packing/undo-serial-number-packing.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/packing-worksheet.js +96 -22
- package/dist-server/graphql/resolvers/worksheet/packing-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/palletizing-pallets.js +5 -5
- package/dist-server/graphql/resolvers/worksheet/palletizing-pallets.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/pending-cancellation-release-order.js +93 -81
- package/dist-server/graphql/resolvers/worksheet/pending-cancellation-release-order.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/activate-batch-picking.js +0 -19
- package/dist-server/graphql/resolvers/worksheet/picking/activate-batch-picking.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/activate-picking.js +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/activate-picking.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/assign-picking-inventories.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/assign-picking-worker.js +11 -5
- package/dist-server/graphql/resolvers/worksheet/picking/assign-picking-worker.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/batch-picking.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/complete-batch-picking.js +10 -4
- package/dist-server/graphql/resolvers/worksheet/picking/complete-batch-picking.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/complete-picking.js +34 -38
- package/dist-server/graphql/resolvers/worksheet/picking/complete-picking.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/fetch-and-assign-picking-task.js +46 -35
- package/dist-server/graphql/resolvers/worksheet/picking/fetch-and-assign-picking-task.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/my-picking-assignment-status.js +7 -2
- package/dist-server/graphql/resolvers/worksheet/picking/my-picking-assignment-status.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/picking-assignment-status-by-user.js +33 -16
- package/dist-server/graphql/resolvers/worksheet/picking/picking-assignment-status-by-user.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/picking.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/scan-product-batch-picking.js +4 -4
- package/dist-server/graphql/resolvers/worksheet/picking/scan-product-batch-picking.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/scan-product-picking.js +5 -8
- package/dist-server/graphql/resolvers/worksheet/picking/scan-product-picking.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/seal-tote.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/undo-picking-assignment.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/undo-serial-number-picking.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking-worksheet.js +6 -5
- package/dist-server/graphql/resolvers/worksheet/picking-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/proceed-extra-products.js +10 -8
- package/dist-server/graphql/resolvers/worksheet/proceed-extra-products.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/putaway/activate-putaway.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/putaway/complete-putaway.js +4 -3
- package/dist-server/graphql/resolvers/worksheet/putaway/complete-putaway.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/putaway/putaway.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/putaway/undo-putaway.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/putaway-return/activate-putaway-return.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/putaway-return/complete-putaway-return.js +2 -1
- package/dist-server/graphql/resolvers/worksheet/putaway-return/complete-putaway-return.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/putaway-return/putaway-return.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/putaway-return/undo-putaway-return.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/putaway-returning-worksheet.js +3 -3
- package/dist-server/graphql/resolvers/worksheet/putaway-returning-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/putaway-worksheet.js +3 -3
- package/dist-server/graphql/resolvers/worksheet/putaway-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/recommend-putway-location.js +16 -11
- package/dist-server/graphql/resolvers/worksheet/recommend-putway-location.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/reject-cancellation-release-order.js +139 -149
- package/dist-server/graphql/resolvers/worksheet/reject-cancellation-release-order.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/relocate-pallet.js +1 -1
- package/dist-server/graphql/resolvers/worksheet/relocate-pallet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/replace-picking-pallets.js +2 -2
- package/dist-server/graphql/resolvers/worksheet/replace-picking-pallets.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/return-worksheet.js +3 -3
- package/dist-server/graphql/resolvers/worksheet/return-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/returning/activate-return.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/returning/complete-return.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/returning/returning.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/sorting/activate-sorting.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/sorting/complete-order-sorting.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/sorting/complete-worksheet-sorting.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/sorting/scan-product-sorting.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/sorting/sorting-product.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/sorting-worksheet.js +4 -4
- package/dist-server/graphql/resolvers/worksheet/sorting-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/transfer.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloaded-inventories-by-reusable-pallet.js +8 -7
- package/dist-server/graphql/resolvers/worksheet/unloaded-inventories-by-reusable-pallet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloaded-inventories.js +9 -8
- package/dist-server/graphql/resolvers/worksheet/unloaded-inventories.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading/activate-unloading.js +4 -2
- package/dist-server/graphql/resolvers/worksheet/unloading/activate-unloading.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading/complete-product-scan-unload.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading/complete-unloading-partially.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading/complete-unloading.js +6 -2
- package/dist-server/graphql/resolvers/worksheet/unloading/complete-unloading.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading/scan-product-unload.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading/scan-serial-number-unload.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading/undo-serial-number-unload.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading/undo-unloading.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading/unload.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading-return/activate-unloading-return.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading-return/complete-unload-return-partially.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading-return/complete-unload-returning.js +7 -3
- package/dist-server/graphql/resolvers/worksheet/unloading-return/complete-unload-returning.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading-return-worksheet.js +3 -3
- package/dist-server/graphql/resolvers/worksheet/unloading-return-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading-worksheet.js +5 -5
- package/dist-server/graphql/resolvers/worksheet/unloading-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/update-worksheet.js +1 -1
- package/dist-server/graphql/resolvers/worksheet/update-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas/activate-vas.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas/assign-vas-inventories.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas/complete-vas.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas/execute-vas.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas/undo-vas-inventory.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas/undo-vas.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-candidates.js +13 -12
- package/dist-server/graphql/resolvers/worksheet/vas-candidates.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-inventories.js +7 -6
- package/dist-server/graphql/resolvers/worksheet/vas-inventories.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/common-utils.js +36 -18
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/common-utils.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/relabeling/check-relabelable.js +10 -3
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/relabeling/check-relabelable.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/relabeling/complete-relabeling.js +3 -2
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/relabeling/complete-relabeling.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/relabeling/relabeling.js +11 -3
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/relabeling/relabeling.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/relabeling/undo-relabeling.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/repackaging/complete-repackaging.js +3 -2
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/repackaging/complete-repackaging.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/repackaging/repackaging.js +2 -2
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/repackaging/repackaging.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/repackaging/undo-repackaging.js +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/repackaging/undo-repackaging.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/repalletizing/complete-repalletizing.js +2 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/repalletizing/complete-repalletizing.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/repalletizing/repalletizing.js +3 -3
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/repalletizing/repalletizing.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/repalletizing/undo-repalletizing.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/unpacking/complete-unpacking.js +2 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/unpacking/complete-unpacking.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/unpacking/unpacking.js +7 -7
- package/dist-server/graphql/resolvers/worksheet/vas-transactions/unpacking/unpacking.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/vas-worksheet.js +11 -10
- package/dist-server/graphql/resolvers/worksheet/vas-worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/worksheet-by-order-no.js +7 -4
- package/dist-server/graphql/resolvers/worksheet/worksheet-by-order-no.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/worksheet-with-pagination.js +5 -5
- package/dist-server/graphql/resolvers/worksheet/worksheet-with-pagination.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/worksheet.js +72 -42
- package/dist-server/graphql/resolvers/worksheet/worksheet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/worksheets.js +42 -17
- package/dist-server/graphql/resolvers/worksheet/worksheets.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/check-progressing-pallet.js +3 -3
- package/dist-server/graphql/resolvers/worksheet-detail/check-progressing-pallet.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/create-worksheet-detail.js +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/create-worksheet-detail.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/delete-worksheet-detail.js +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/delete-worksheet-detail.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details-by-bulk.js +13 -10
- package/dist-server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details-by-bulk.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details.js +7 -5
- package/dist-server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/generate-carton-id.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/generate-pallet-id.js +3 -3
- package/dist-server/graphql/resolvers/worksheet-detail/generate-pallet-id.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/generate-picking-worksheet-details.js +5 -2
- package/dist-server/graphql/resolvers/worksheet-detail/generate-picking-worksheet-details.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/generate-release-good-worksheet-details.js +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/generate-release-good-worksheet-details.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/index.js +2 -1
- package/dist-server/graphql/resolvers/worksheet-detail/index.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/regenerate-release-good-worksheet-details.js +81 -0
- package/dist-server/graphql/resolvers/worksheet-detail/regenerate-release-good-worksheet-details.js.map +1 -0
- package/dist-server/graphql/resolvers/worksheet-detail/update-worksheet-detail.js +2 -2
- package/dist-server/graphql/resolvers/worksheet-detail/update-worksheet-detail.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/worksheet-detail.js +2 -2
- package/dist-server/graphql/resolvers/worksheet-detail/worksheet-detail.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/worksheet-details-by-product-group.js +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/worksheet-details-by-product-group.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-detail/worksheet-details.js +2 -2
- package/dist-server/graphql/resolvers/worksheet-detail/worksheet-details.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-movement/create-worksheet-movement.js +1 -1
- package/dist-server/graphql/resolvers/worksheet-movement/create-worksheet-movement.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-movement/delete-worksheet-movement.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-movement/update-worksheet-movement.js +1 -1
- package/dist-server/graphql/resolvers/worksheet-movement/update-worksheet-movement.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-movement/worksheet-movement.js +1 -1
- package/dist-server/graphql/resolvers/worksheet-movement/worksheet-movement.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet-movement/worksheet-movements.js +1 -1
- package/dist-server/graphql/resolvers/worksheet-movement/worksheet-movements.js.map +1 -1
- package/dist-server/graphql/types/worksheet/batch-pick-worksheet-info.js +12 -0
- package/dist-server/graphql/types/worksheet/batch-pick-worksheet-info.js.map +1 -0
- package/dist-server/graphql/types/worksheet/delivery-order-info.js +3 -0
- package/dist-server/graphql/types/worksheet/delivery-order-info.js.map +1 -1
- package/dist-server/graphql/types/worksheet/delivery-order-ro.js +18 -0
- package/dist-server/graphql/types/worksheet/delivery-order-ro.js.map +1 -0
- package/dist-server/graphql/types/worksheet/index.js +26 -15
- package/dist-server/graphql/types/worksheet/index.js.map +1 -1
- package/dist-server/graphql/types/worksheet/multiple-release-good-worksheet.js +11 -0
- package/dist-server/graphql/types/worksheet/multiple-release-good-worksheet.js.map +1 -0
- package/dist-server/graphql/types/worksheet/sellercraft-document.js +11 -0
- package/dist-server/graphql/types/worksheet/sellercraft-document.js.map +1 -0
- package/dist-server/graphql/types/worksheet-detail/index.js +10 -0
- package/dist-server/graphql/types/worksheet-detail/index.js.map +1 -1
- package/dist-server/graphql/types/worksheet-detail/inventory-detail.js +1 -0
- package/dist-server/graphql/types/worksheet-detail/inventory-detail.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/dist-server/utils/inventory-util.js +26 -20
- package/dist-server/utils/inventory-util.js.map +1 -1
- package/dist-server/utils/worksheet-util.js +8 -6
- package/dist-server/utils/worksheet-util.js.map +1 -1
- package/package.json +17 -17
- package/server/controllers/ecommerce/sellercraft-controller.ts +282 -223
- package/server/controllers/inbound/unloading-returning-worksheet-controller.ts +9 -17
- package/server/controllers/inbound/unloading-worksheet-controller.ts +55 -66
- package/server/controllers/inspect/cycle-count-worksheet-controller.ts +1 -1
- package/server/controllers/outbound/packing-worksheet-controller.ts +25 -4
- package/server/controllers/outbound/picking-worksheet-controller.ts +292 -172
- package/server/controllers/outbound/returning-worksheet-controller.ts +23 -0
- package/server/controllers/outbound/sorting-worksheet-controller.ts +20 -20
- package/server/controllers/render-elccl-grn.ts +16 -11
- package/server/controllers/render-fm-grn.ts +32 -14
- package/server/controllers/render-grn.ts +31 -16
- package/server/controllers/render-invoices.ts +3 -3
- package/server/controllers/render-job-sheet.ts +13 -11
- package/server/controllers/render-kimeda-grn.ts +28 -13
- package/server/controllers/render-manifest.ts +25 -24
- package/server/controllers/render-manual-do.ts +9 -10
- package/server/controllers/render-orientage-do.ts +79 -30
- package/server/controllers/render-orientage-grn.ts +30 -20
- package/server/controllers/render-po.ts +31 -20
- package/server/controllers/render-ro-do.ts +151 -124
- package/server/controllers/render-seebuu-grn.ts +21 -11
- package/server/controllers/vas/vas-worksheet-controller.ts +19 -20
- package/server/controllers/worksheet-controller.ts +97 -27
- package/server/entities/warehouse-bizplace-onhand-inventory.ts +2 -1
- package/server/entities/worksheet-detail.ts +9 -0
- package/server/graphql/resolvers/pallet/pallet-outbound.ts +5 -8
- package/server/graphql/resolvers/worksheet/batch-picking-worksheet.ts +8 -6
- package/server/graphql/resolvers/worksheet/cancel-draft-release-order.ts +4 -11
- package/server/graphql/resolvers/worksheet/check-inventory-release.ts +8 -7
- package/server/graphql/resolvers/worksheet/check-stock-take-current-location.ts +10 -8
- package/server/graphql/resolvers/worksheet/confirm-cancellation-release-order.ts +112 -138
- package/server/graphql/resolvers/worksheet/create-worksheet.ts +6 -8
- package/server/graphql/resolvers/worksheet/cross-dock-picking.ts +8 -7
- package/server/graphql/resolvers/worksheet/cycle-count-adjustment.ts +7 -7
- package/server/graphql/resolvers/worksheet/cycle-count-worksheet.ts +6 -6
- package/server/graphql/resolvers/worksheet/delete-worksheet.ts +5 -3
- package/server/graphql/resolvers/worksheet/delivery-order-by-worksheet.ts +87 -53
- package/server/graphql/resolvers/worksheet/fetch-delivery-order-ro.ts +190 -0
- package/server/graphql/resolvers/worksheet/fetch-sellercraft-document.ts +69 -0
- package/server/graphql/resolvers/worksheet/find-release-orders-by-task-no.ts +5 -45
- package/server/graphql/resolvers/worksheet/find-release-orders-by-worksheet-no.ts +5 -5
- package/server/graphql/resolvers/worksheet/find-sorting-release-orders-by-task-no.ts +80 -0
- package/server/graphql/resolvers/worksheet/generate-worksheet/generate-arrival-notice-worksheet.ts +45 -5
- package/server/graphql/resolvers/worksheet/generate-worksheet/generate-batch-picking-worksheet.ts +11 -10
- package/server/graphql/resolvers/worksheet/generate-worksheet/generate-cycle-count-worksheet.ts +1 -1
- package/server/graphql/resolvers/worksheet/generate-worksheet/generate-multiple-release-good-worksheet.ts +7 -14
- package/server/graphql/resolvers/worksheet/generate-worksheet/generate-partial-putaway-return-worksheet.ts +10 -4
- package/server/graphql/resolvers/worksheet/generate-worksheet/generate-partial-putaway-worksheet.ts +10 -4
- package/server/graphql/resolvers/worksheet/generate-worksheet/generate-putaway-worksheet.ts +5 -3
- package/server/graphql/resolvers/worksheet/generate-worksheet/generate-release-good-worksheet.ts +25 -29
- package/server/graphql/resolvers/worksheet/generate-worksheet/generate-return-order-worksheet.ts +6 -4
- package/server/graphql/resolvers/worksheet/generate-worksheet/generate-vas-order-worksheet.ts +6 -4
- package/server/graphql/resolvers/worksheet/having-vas.ts +10 -8
- package/server/graphql/resolvers/worksheet/index.ts +7 -3
- package/server/graphql/resolvers/worksheet/inspecting/activate-cycle-count.ts +5 -3
- package/server/graphql/resolvers/worksheet/inspecting/add-extra-pallet.ts +4 -2
- package/server/graphql/resolvers/worksheet/inspecting/check-missing-pallet.ts +5 -3
- package/server/graphql/resolvers/worksheet/inspecting/complete-inspection.ts +5 -3
- package/server/graphql/resolvers/worksheet/inspecting/inspecting.ts +9 -3
- package/server/graphql/resolvers/worksheet/inspecting/relocate-pallet.ts +16 -4
- package/server/graphql/resolvers/worksheet/inspecting/undo-inspection.ts +5 -3
- package/server/graphql/resolvers/worksheet/inventories-by-pallet.ts +34 -17
- package/server/graphql/resolvers/worksheet/loaded-inventories.ts +7 -6
- package/server/graphql/resolvers/worksheet/loading/activate-loading.ts +5 -3
- package/server/graphql/resolvers/worksheet/loading/complete-loading.ts +16 -16
- package/server/graphql/resolvers/worksheet/loading/loading.ts +5 -3
- package/server/graphql/resolvers/worksheet/loading/undo-loading.ts +5 -3
- package/server/graphql/resolvers/worksheet/loading-worksheet.ts +11 -11
- package/server/graphql/resolvers/worksheet/not-tally-target-inventories.ts +6 -6
- package/server/graphql/resolvers/worksheet/packing/activate-packing.ts +14 -13
- package/server/graphql/resolvers/worksheet/packing/complete-packing.ts +4 -4
- package/server/graphql/resolvers/worksheet/packing/packing.ts +3 -3
- package/server/graphql/resolvers/worksheet/packing/scan-product-packing.ts +21 -17
- package/server/graphql/resolvers/worksheet/packing/undo-serial-number-packing.ts +2 -2
- package/server/graphql/resolvers/worksheet/packing-worksheet.ts +102 -24
- package/server/graphql/resolvers/worksheet/palletizing-pallets.ts +10 -8
- package/server/graphql/resolvers/worksheet/pending-cancellation-release-order.ts +107 -97
- package/server/graphql/resolvers/worksheet/picking/activate-batch-picking.ts +3 -30
- package/server/graphql/resolvers/worksheet/picking/activate-picking.ts +3 -3
- package/server/graphql/resolvers/worksheet/picking/assign-picking-inventories.ts +23 -4
- package/server/graphql/resolvers/worksheet/picking/assign-picking-worker.ts +25 -17
- package/server/graphql/resolvers/worksheet/picking/batch-picking.ts +4 -2
- package/server/graphql/resolvers/worksheet/picking/complete-batch-picking.ts +15 -6
- package/server/graphql/resolvers/worksheet/picking/complete-picking.ts +37 -42
- package/server/graphql/resolvers/worksheet/picking/fetch-and-assign-picking-task.ts +52 -42
- package/server/graphql/resolvers/worksheet/picking/my-picking-assignment-status.ts +15 -6
- package/server/graphql/resolvers/worksheet/picking/picking-assignment-status-by-user.ts +49 -35
- package/server/graphql/resolvers/worksheet/picking/picking.ts +4 -2
- package/server/graphql/resolvers/worksheet/picking/scan-product-batch-picking.ts +11 -6
- package/server/graphql/resolvers/worksheet/picking/scan-product-picking.ts +10 -35
- package/server/graphql/resolvers/worksheet/picking/seal-tote.ts +2 -2
- package/server/graphql/resolvers/worksheet/picking/undo-picking-assignment.ts +9 -3
- package/server/graphql/resolvers/worksheet/picking/undo-serial-number-picking.ts +2 -2
- package/server/graphql/resolvers/worksheet/picking-worksheet.ts +11 -11
- package/server/graphql/resolvers/worksheet/proceed-extra-products.ts +13 -13
- package/server/graphql/resolvers/worksheet/putaway/activate-putaway.ts +5 -3
- package/server/graphql/resolvers/worksheet/putaway/complete-putaway.ts +6 -5
- package/server/graphql/resolvers/worksheet/putaway/putaway.ts +5 -3
- package/server/graphql/resolvers/worksheet/putaway/undo-putaway.ts +5 -3
- package/server/graphql/resolvers/worksheet/putaway-return/activate-putaway-return.ts +5 -3
- package/server/graphql/resolvers/worksheet/putaway-return/complete-putaway-return.ts +13 -6
- package/server/graphql/resolvers/worksheet/putaway-return/putaway-return.ts +5 -3
- package/server/graphql/resolvers/worksheet/putaway-return/undo-putaway-return.ts +5 -3
- package/server/graphql/resolvers/worksheet/putaway-returning-worksheet.ts +4 -6
- package/server/graphql/resolvers/worksheet/putaway-worksheet.ts +4 -6
- package/server/graphql/resolvers/worksheet/recommend-putway-location.ts +20 -19
- package/server/graphql/resolvers/worksheet/reject-cancellation-release-order.ts +154 -220
- package/server/graphql/resolvers/worksheet/relocate-pallet.ts +6 -4
- package/server/graphql/resolvers/worksheet/replace-picking-pallets.ts +3 -7
- package/server/graphql/resolvers/worksheet/return-worksheet.ts +4 -6
- package/server/graphql/resolvers/worksheet/returning/activate-return.ts +5 -3
- package/server/graphql/resolvers/worksheet/returning/complete-return.ts +5 -3
- package/server/graphql/resolvers/worksheet/returning/returning.ts +5 -3
- package/server/graphql/resolvers/worksheet/sorting/activate-sorting.ts +5 -3
- package/server/graphql/resolvers/worksheet/sorting/complete-order-sorting.ts +7 -5
- package/server/graphql/resolvers/worksheet/sorting/complete-worksheet-sorting.ts +5 -3
- package/server/graphql/resolvers/worksheet/sorting/scan-product-sorting.ts +9 -3
- package/server/graphql/resolvers/worksheet/sorting/sorting-product.ts +9 -3
- package/server/graphql/resolvers/worksheet/sorting-worksheet.ts +5 -5
- package/server/graphql/resolvers/worksheet/transfer.ts +10 -12
- package/server/graphql/resolvers/worksheet/unloaded-inventories-by-reusable-pallet.ts +13 -7
- package/server/graphql/resolvers/worksheet/unloaded-inventories.ts +9 -9
- package/server/graphql/resolvers/worksheet/unloading/activate-unloading.ts +9 -5
- package/server/graphql/resolvers/worksheet/unloading/complete-product-scan-unload.ts +5 -3
- package/server/graphql/resolvers/worksheet/unloading/complete-unloading-partially.ts +5 -3
- package/server/graphql/resolvers/worksheet/unloading/complete-unloading.ts +8 -4
- package/server/graphql/resolvers/worksheet/unloading/scan-product-unload.ts +5 -3
- package/server/graphql/resolvers/worksheet/unloading/scan-serial-number-unload.ts +2 -2
- package/server/graphql/resolvers/worksheet/unloading/undo-serial-number-unload.ts +2 -2
- package/server/graphql/resolvers/worksheet/unloading/undo-unloading.ts +2 -2
- package/server/graphql/resolvers/worksheet/unloading/unload.ts +7 -7
- package/server/graphql/resolvers/worksheet/unloading-return/activate-unloading-return.ts +5 -3
- package/server/graphql/resolvers/worksheet/unloading-return/complete-unload-return-partially.ts +5 -3
- package/server/graphql/resolvers/worksheet/unloading-return/complete-unload-returning.ts +9 -5
- package/server/graphql/resolvers/worksheet/unloading-return-worksheet.ts +4 -6
- package/server/graphql/resolvers/worksheet/unloading-worksheet.ts +5 -7
- package/server/graphql/resolvers/worksheet/update-worksheet.ts +5 -5
- package/server/graphql/resolvers/worksheet/vas/activate-vas.ts +5 -3
- package/server/graphql/resolvers/worksheet/vas/assign-vas-inventories.ts +5 -3
- package/server/graphql/resolvers/worksheet/vas/complete-vas.ts +5 -3
- package/server/graphql/resolvers/worksheet/vas/execute-vas.ts +5 -3
- package/server/graphql/resolvers/worksheet/vas/undo-vas-inventory.ts +5 -3
- package/server/graphql/resolvers/worksheet/vas/undo-vas.ts +5 -3
- package/server/graphql/resolvers/worksheet/vas-candidates.ts +20 -17
- package/server/graphql/resolvers/worksheet/vas-inventories.ts +9 -7
- package/server/graphql/resolvers/worksheet/vas-transactions/common-utils.ts +36 -18
- package/server/graphql/resolvers/worksheet/vas-transactions/relabeling/check-relabelable.ts +12 -5
- package/server/graphql/resolvers/worksheet/vas-transactions/relabeling/complete-relabeling.ts +6 -3
- package/server/graphql/resolvers/worksheet/vas-transactions/relabeling/relabeling.ts +14 -6
- package/server/graphql/resolvers/worksheet/vas-transactions/relabeling/undo-relabeling.ts +5 -7
- package/server/graphql/resolvers/worksheet/vas-transactions/repackaging/complete-repackaging.ts +3 -2
- package/server/graphql/resolvers/worksheet/vas-transactions/repackaging/repackaging.ts +8 -5
- package/server/graphql/resolvers/worksheet/vas-transactions/repackaging/undo-repackaging.ts +6 -16
- package/server/graphql/resolvers/worksheet/vas-transactions/repalletizing/complete-repalletizing.ts +5 -2
- package/server/graphql/resolvers/worksheet/vas-transactions/repalletizing/repalletizing.ts +10 -8
- package/server/graphql/resolvers/worksheet/vas-transactions/repalletizing/undo-repalletizing.ts +3 -5
- package/server/graphql/resolvers/worksheet/vas-transactions/unpacking/complete-unpacking.ts +6 -6
- package/server/graphql/resolvers/worksheet/vas-transactions/unpacking/unpacking.ts +10 -13
- package/server/graphql/resolvers/worksheet/vas-worksheet.ts +13 -11
- package/server/graphql/resolvers/worksheet/worksheet-by-order-no.ts +13 -8
- package/server/graphql/resolvers/worksheet/worksheet-with-pagination.ts +7 -5
- package/server/graphql/resolvers/worksheet/worksheet.ts +86 -32
- package/server/graphql/resolvers/worksheet/worksheets.ts +60 -19
- package/server/graphql/resolvers/worksheet-detail/check-progressing-pallet.ts +7 -8
- package/server/graphql/resolvers/worksheet-detail/create-worksheet-detail.ts +4 -6
- package/server/graphql/resolvers/worksheet-detail/delete-worksheet-detail.ts +5 -6
- package/server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details-by-bulk.ts +13 -19
- package/server/graphql/resolvers/worksheet-detail/generate-batch-picking-worksheet-details.ts +19 -27
- package/server/graphql/resolvers/worksheet-detail/generate-carton-id.ts +2 -4
- package/server/graphql/resolvers/worksheet-detail/generate-pallet-id.ts +6 -6
- package/server/graphql/resolvers/worksheet-detail/generate-picking-worksheet-details.ts +7 -4
- package/server/graphql/resolvers/worksheet-detail/generate-release-good-worksheet-details.ts +3 -3
- package/server/graphql/resolvers/worksheet-detail/index.ts +3 -1
- package/server/graphql/resolvers/worksheet-detail/regenerate-release-good-worksheet-details.ts +164 -0
- package/server/graphql/resolvers/worksheet-detail/update-worksheet-detail.ts +8 -7
- package/server/graphql/resolvers/worksheet-detail/worksheet-detail.ts +6 -7
- package/server/graphql/resolvers/worksheet-detail/worksheet-details-by-product-group.ts +5 -5
- package/server/graphql/resolvers/worksheet-detail/worksheet-details.ts +6 -7
- package/server/graphql/resolvers/worksheet-movement/create-worksheet-movement.ts +4 -3
- package/server/graphql/resolvers/worksheet-movement/delete-worksheet-movement.ts +3 -2
- package/server/graphql/resolvers/worksheet-movement/update-worksheet-movement.ts +2 -4
- package/server/graphql/resolvers/worksheet-movement/worksheet-movement.ts +3 -6
- package/server/graphql/resolvers/worksheet-movement/worksheet-movements.ts +4 -4
- package/server/graphql/types/worksheet/batch-pick-worksheet-info.ts +9 -0
- package/server/graphql/types/worksheet/delivery-order-info.ts +3 -0
- package/server/graphql/types/worksheet/delivery-order-ro.ts +15 -0
- package/server/graphql/types/worksheet/index.ts +49 -38
- package/server/graphql/types/worksheet/multiple-release-good-worksheet.ts +8 -0
- package/server/graphql/types/worksheet/sellercraft-document.ts +8 -0
- package/server/graphql/types/worksheet-detail/index.ts +10 -0
- package/server/graphql/types/worksheet-detail/inventory-detail.ts +1 -0
- package/server/utils/inventory-util.ts +20 -14
- package/server/utils/worksheet-util.ts +10 -6
- package/dist-server/graphql/resolvers/worksheet/fetch-sellercraft-airway-bill.js +0 -25
- package/dist-server/graphql/resolvers/worksheet/fetch-sellercraft-airway-bill.js.map +0 -1
- package/dist-server/graphql/types/worksheet/airwaybill.js +0 -11
- package/dist-server/graphql/types/worksheet/airwaybill.js.map +0 -1
- package/server/graphql/resolvers/worksheet/fetch-sellercraft-airway-bill.ts +0 -30
- package/server/graphql/types/worksheet/airwaybill.ts +0 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-extra-pallet.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/inspecting/add-extra-pallet.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"add-extra-pallet.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/inspecting/add-extra-pallet.ts"],"names":[],"mappings":";;;AAKA,yDAAuE;AAE1D,QAAA,sBAAsB,GAAG;IACpC,KAAK,CAAC,cAAc,CAClB,CAAM,EACN,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAAE,EAC3F,OAAY;QAEZ,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,cAAc,CAClB,EAAE,EACF,MAAM,EACN,IAAI,EACJ,YAAY,EACZ,QAAQ,EACR,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,YAAY,CACb,CAAA;IACH,CAAC;CACF,CAAA;AAEM,KAAK,UAAU,cAAc,CAClC,EAAiB,EACjB,MAAc,EACd,IAAU,EACV,YAAoB,EACpB,QAAgB,EAChB,gBAAwB,EACxB,YAAoB,EACpB,iBAAyB,EACzB,YAAoB;IAEpB,MAAM,mBAAmB,GAAkC,IAAI,2CAA6B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAC9G,MAAM,mBAAmB,CAAC,cAAc,CACtC,YAAY,EACZ,QAAQ,EACR,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,YAAY,CACb,CAAA;AACH,CAAC;AApBD,wCAoBC","sourcesContent":["import { EntityManager } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Domain } from '@things-factory/shell'\n\nimport { CycleCountWorksheetController } from '../../../../controllers'\n\nexport const addExtraPalletResolver = {\n async addExtraPallet(\n _: any,\n { cycleCountNo, palletId, inspectedBatchNo, inspectedQty, inspectedUomValue, locationName },\n context: any\n ) {\n const { tx, domain, user } = context.state\n await addExtraPallet(\n tx,\n domain,\n user,\n cycleCountNo,\n palletId,\n inspectedBatchNo,\n inspectedQty,\n inspectedUomValue,\n locationName\n )\n }\n}\n\nexport async function addExtraPallet(\n tx: EntityManager,\n domain: Domain,\n user: User,\n cycleCountNo: string,\n palletId: string,\n inspectedBatchNo: string,\n inspectedQty: number,\n inspectedUomValue: number,\n locationName: string\n) {\n const worksheetController: CycleCountWorksheetController = new CycleCountWorksheetController(tx, domain, user)\n await worksheetController.addExtraPallet(\n cycleCountNo,\n palletId,\n inspectedBatchNo,\n inspectedQty,\n inspectedUomValue,\n locationName\n )\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-missing-pallet.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/inspecting/check-missing-pallet.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"check-missing-pallet.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/inspecting/check-missing-pallet.ts"],"names":[],"mappings":";;;AAKA,yDAAuE;AAE1D,QAAA,0BAA0B,GAAG;IACxC,KAAK,CAAC,kBAAkB,CAAC,CAAM,EAAE,EAAE,mBAAmB,EAAE,EAAE,OAAwB;QAChF,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAA;IACjE,CAAC;CACF,CAAA;AAEM,KAAK,UAAU,kBAAkB,CAAC,EAAiB,EAAE,MAAc,EAAE,IAAU,EAAE,mBAA2B;IACjH,MAAM,mBAAmB,GAAkC,IAAI,2CAA6B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAC9G,MAAM,mBAAmB,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAA;AACnE,CAAC;AAHD,gDAGC","sourcesContent":["import { EntityManager } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Domain } from '@things-factory/shell'\n\nimport { CycleCountWorksheetController } from '../../../../controllers'\n\nexport const checkMissingPalletResolver = {\n async checkMissingPallet(_: any, { worksheetDetailName }, context: ResolverContext) {\n const { tx, domain, user } = context.state\n await checkMissingPallet(tx, domain, user, worksheetDetailName)\n }\n}\n\nexport async function checkMissingPallet(tx: EntityManager, domain: Domain, user: User, worksheetDetailName: string) {\n const worksheetController: CycleCountWorksheetController = new CycleCountWorksheetController(tx, domain, user)\n await worksheetController.checkMissingPallet(worksheetDetailName)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"complete-inspection.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/inspecting/complete-inspection.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"complete-inspection.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/inspecting/complete-inspection.ts"],"names":[],"mappings":";;;AAKA,qDAAwD;AACxD,yDAAuE;AACvE,uFAAkF;AAGrE,QAAA,0BAA0B,GAAG;IACxC,KAAK,CAAC,kBAAkB,CAAC,CAAM,EAAE,EAAE,gBAAgB,EAAE,EAAE,OAAwB;QAC7E,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,SAAS,GAAc,MAAM,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAA;QAEzF,MAAM,IAAI,GACR,SAAS,CAAC,MAAM,KAAK,4BAAgB,CAAC,IAAI;YACxC,CAAC,CAAC,uCAAuC;YACzC,CAAC,CAAC,+CAA+C,CAAA;QACrD,MAAM,mBAAmB,GAAwB,IAAI,0CAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QAE1F,MAAM,mBAAmB,CAAC,mBAAmB,CAAC;YAC5C,KAAK,EAAE,uCAAuC,gBAAgB,GAAG;YACjE,IAAI;YACJ,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO;YAC3B,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE;SACtC,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAEM,KAAK,UAAU,kBAAkB,CACtC,EAAiB,EACjB,MAAc,EACd,IAAU,EACV,gBAAwB;IAExB,MAAM,mBAAmB,GAAkC,IAAI,2CAA6B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAC9G,OAAO,MAAM,mBAAmB,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAA;AACvE,CAAC;AARD,gDAQC","sourcesContent":["import { EntityManager } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Domain } from '@things-factory/shell'\n\nimport { WORKSHEET_STATUS } from '../../../../constants'\nimport { CycleCountWorksheetController } from '../../../../controllers'\nimport { WorksheetController } from '../../../../controllers/worksheet-controller'\nimport { Worksheet } from '../../../../entities'\n\nexport const completeInspectionResolver = {\n async completeInspection(_: any, { inventoryCheckNo }, context: ResolverContext) {\n const { tx, domain, user } = context.state\n const worksheet: Worksheet = await completeCycleCount(tx, domain, user, inventoryCheckNo)\n\n const body: string =\n worksheet.status === WORKSHEET_STATUS.DONE\n ? `Inventories are checked successfully.`\n : `There are inventories needed to be reviewed. `\n const worksheetController: WorksheetController = new WorksheetController(tx, domain, user)\n\n await worksheetController.notifyToOfficeAdmin({\n title: `Inventory check has been completed (${inventoryCheckNo})`,\n body,\n url: context.header.referer,\n data: { url: context.header.referer }\n })\n }\n}\n\nexport async function completeCycleCount(\n tx: EntityManager,\n domain: Domain,\n user: User,\n inventoryCheckNo: string\n): Promise<Worksheet> {\n const worksheetController: CycleCountWorksheetController = new CycleCountWorksheetController(tx, domain, user)\n return await worksheetController.completeCycleCount(inventoryCheckNo)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspecting.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/inspecting/inspecting.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"inspecting.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/inspecting/inspecting.ts"],"names":[],"mappings":";;;AAKA,yDAAuE;AAE1D,QAAA,kBAAkB,GAAG;IAChC,KAAK,CAAC,UAAU,CACd,CAAM,EACN,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,YAAY,EAAE,iBAAiB,EAAE,EAC1E,OAAwB;QAExB,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,YAAY,EAAE,iBAAiB,CAAC,CAAA;IACnH,CAAC;CACF,CAAA;AAEM,KAAK,UAAU,iBAAiB,CACrC,EAAiB,EACjB,MAAc,EACd,IAAU,EACV,mBAA2B,EAC3B,gBAAwB,EACxB,YAAoB,EACpB,iBAAyB;IAEzB,MAAM,mBAAmB,GAAkC,IAAI,2CAA6B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAC9G,MAAM,mBAAmB,CAAC,UAAU,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,YAAY,EAAE,iBAAiB,CAAC,CAAA;AAC9G,CAAC;AAXD,8CAWC","sourcesContent":["import { EntityManager } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Domain } from '@things-factory/shell'\n\nimport { CycleCountWorksheetController } from '../../../../controllers'\n\nexport const inspectingResolver = {\n async inspecting(\n _: any,\n { worksheetDetailName, inspectedBatchNo, inspectedQty, inspectedUomValue },\n context: ResolverContext\n ) {\n const { tx, domain, user } = context.state\n await executeInspection(tx, domain, user, worksheetDetailName, inspectedBatchNo, inspectedQty, inspectedUomValue)\n }\n}\n\nexport async function executeInspection(\n tx: EntityManager,\n domain: Domain,\n user: User,\n worksheetDetailName: string,\n inspectedBatchNo: string,\n inspectedQty: number,\n inspectedUomValue: number\n) {\n const worksheetController: CycleCountWorksheetController = new CycleCountWorksheetController(tx, domain, user)\n await worksheetController.inspecting(worksheetDetailName, inspectedBatchNo, inspectedQty, inspectedUomValue)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relocate-pallet.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/inspecting/relocate-pallet.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"relocate-pallet.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/inspecting/relocate-pallet.ts"],"names":[],"mappings":";;;AAKA,yDAAuE;AAE1D,QAAA,sBAAsB,GAAG;IACpC,KAAK,CAAC,cAAc,CAClB,CAAM,EACN,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,YAAY,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,EACjG,OAAwB;QAExB,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,cAAc,CAClB,EAAE,EACF,MAAM,EACN,IAAI,EACJ,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,CACtB,CAAA;IACH,CAAC;CACF,CAAA;AAEM,KAAK,UAAU,cAAc,CAClC,EAAiB,EACjB,MAAc,EACd,IAAU,EACV,mBAA2B,EAC3B,gBAAwB,EACxB,YAAoB,EACpB,iBAAyB,EACzB,qBAA6B;IAE7B,MAAM,mBAAmB,GAAkC,IAAI,2CAA6B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAC9G,MAAM,mBAAmB,CAAC,cAAc,CACtC,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,CACtB,CAAA;AACH,CAAC;AAlBD,wCAkBC","sourcesContent":["import { EntityManager } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Domain } from '@things-factory/shell'\n\nimport { CycleCountWorksheetController } from '../../../../controllers'\n\nexport const relocatePalletResolver = {\n async relocatePallet(\n _: any,\n { worksheetDetailName, inspectedBatchNo, inspectedQty, inspectedUomValue, inspectedLocationName },\n context: ResolverContext\n ) {\n const { tx, domain, user } = context.state\n await relocatePallet(\n tx,\n domain,\n user,\n worksheetDetailName,\n inspectedBatchNo,\n inspectedQty,\n inspectedUomValue,\n inspectedLocationName\n )\n }\n}\n\nexport async function relocatePallet(\n tx: EntityManager,\n domain: Domain,\n user: User,\n worksheetDetailName: string,\n inspectedBatchNo: string,\n inspectedQty: number,\n inspectedUomValue: number,\n inspectedLocationName: string\n) {\n const worksheetController: CycleCountWorksheetController = new CycleCountWorksheetController(tx, domain, user)\n await worksheetController.relocatePallet(\n worksheetDetailName,\n inspectedBatchNo,\n inspectedQty,\n inspectedUomValue,\n inspectedLocationName\n )\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"undo-inspection.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/inspecting/undo-inspection.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"undo-inspection.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/inspecting/undo-inspection.ts"],"names":[],"mappings":";;;AAKA,yDAAuE;AAE1D,QAAA,sBAAsB,GAAG;IACpC,KAAK,CAAC,cAAc,CAAC,CAAM,EAAE,EAAE,mBAAmB,EAAE,EAAE,OAAwB;QAC5E,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAA;IAC7D,CAAC;CACF,CAAA;AAEM,KAAK,UAAU,cAAc,CAClC,EAAiB,EACjB,MAAc,EACd,IAAU,EACV,mBAA2B;IAE3B,MAAM,mBAAmB,GAAkC,IAAI,2CAA6B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAC9G,MAAM,mBAAmB,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAA;AAC/D,CAAC;AARD,wCAQC","sourcesContent":["import { EntityManager } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Domain } from '@things-factory/shell'\n\nimport { CycleCountWorksheetController } from '../../../../controllers'\n\nexport const undoInspectionResolver = {\n async undoInspection(_: any, { worksheetDetailName }, context: ResolverContext) {\n const { tx, domain, user } = context.state\n await undoInspection(tx, domain, user, worksheetDetailName)\n }\n}\n\nexport async function undoInspection(\n tx: EntityManager,\n domain: Domain,\n user: User,\n worksheetDetailName: string\n): Promise<void> {\n const worksheetController: CycleCountWorksheetController = new CycleCountWorksheetController(tx, domain, user)\n await worksheetController.undoInspection(worksheetDetailName)\n}\n"]}
|
|
@@ -12,6 +12,9 @@ exports.inventoriesByPalletResolver = {
|
|
|
12
12
|
const params = { filters, pagination };
|
|
13
13
|
let permittedBizplaceIds = await (0, biz_base_1.getPermittedBizplaceIds)(domain, user);
|
|
14
14
|
const productFilters = params.filters.filter(x => x.name == 'productName');
|
|
15
|
+
const recallFilters = params.filters.find(x => x.name === 'recall');
|
|
16
|
+
const skipLockCheckFilters = params.filters.find(x => x.name === 'skipLockCheck');
|
|
17
|
+
let skipLockCheck = skipLockCheckFilters && (skipLockCheckFilters === null || skipLockCheckFilters === void 0 ? void 0 : skipLockCheckFilters.value) ? skipLockCheckFilters === null || skipLockCheckFilters === void 0 ? void 0 : skipLockCheckFilters.value : false;
|
|
15
18
|
const productFilterColumns = ['sku', 'brandSku', 'name', 'description', 'brand', 'subBrand'];
|
|
16
19
|
params.filters = params.filters.filter(x => x.name != 'productName');
|
|
17
20
|
if (!params.filters.find((filter) => filter.name === 'bizplace')) {
|
|
@@ -26,7 +29,9 @@ exports.inventoriesByPalletResolver = {
|
|
|
26
29
|
permittedBizplaceIds = params.filters.find(filter => filter.name === 'bizplace').value;
|
|
27
30
|
params.filters.find(filter => filter.name === 'bizplace').relation = true;
|
|
28
31
|
}
|
|
29
|
-
const
|
|
32
|
+
const locationFilters = params.filters.find(x => x.name == 'locationName');
|
|
33
|
+
params.filters = params.filters.filter(x => x.name != 'locationName');
|
|
34
|
+
const qb = (0, shell_1.getRepository)(warehouse_base_1.Inventory).createQueryBuilder('iv');
|
|
30
35
|
(0, shell_1.buildQuery)(qb, params, context);
|
|
31
36
|
qb.leftJoinAndSelect('iv.domain', 'domain')
|
|
32
37
|
.leftJoinAndSelect('iv.bizplace', 'bizplace')
|
|
@@ -36,9 +41,7 @@ exports.inventoriesByPalletResolver = {
|
|
|
36
41
|
.leftJoinAndSelect('iv.creator', 'creator')
|
|
37
42
|
.leftJoinAndSelect('iv.updater', 'updater')
|
|
38
43
|
.andWhere('iv.qty > 0')
|
|
39
|
-
.andWhere(
|
|
40
|
-
.andWhere('iv.qty - CASE WHEN iv.lockedQty IS NULL THEN 0 ELSE iv.lockedQty END > 0')
|
|
41
|
-
.andWhere(`location.type NOT IN ('${warehouse_base_1.LOCATION_TYPE.QUARANTINE}', '${warehouse_base_1.LOCATION_TYPE.RESERVE}')`)
|
|
44
|
+
.andWhere(`location.type ${(recallFilters === null || recallFilters === void 0 ? void 0 : recallFilters.value) === true ? '' : 'NOT'} IN ('${warehouse_base_1.LOCATION_TYPE.QUARANTINE}', '${warehouse_base_1.LOCATION_TYPE.RESERVE}')`)
|
|
42
45
|
.andWhere(`(iv.batch_id, product.name, iv.packing_type, product.brand) NOT IN (
|
|
43
46
|
SELECT
|
|
44
47
|
oi.batch_id, p2.name, oi.packing_type, p2.brand
|
|
@@ -53,11 +56,17 @@ exports.inventoriesByPalletResolver = {
|
|
|
53
56
|
AND oi.bizplace_id IN (:...permittedBizplaceIds)
|
|
54
57
|
AND oi.domain_id = (:domainId)
|
|
55
58
|
)`, { permittedBizplaceIds, domainId: domain.id });
|
|
59
|
+
if (!skipLockCheck) {
|
|
60
|
+
qb.andWhere('CASE WHEN iv.lockedQty IS NULL THEN 0 ELSE iv.lockedQty END >= 0');
|
|
61
|
+
qb.andWhere('iv.qty - CASE WHEN iv.lockedQty IS NULL THEN 0 ELSE iv.lockedQty END > 0');
|
|
62
|
+
}
|
|
63
|
+
if (locationFilters) {
|
|
64
|
+
qb.andWhere(`location.name ilike '${locationFilters.value}'`);
|
|
65
|
+
}
|
|
56
66
|
if ((sortings === null || sortings === void 0 ? void 0 : sortings.length) !== 0) {
|
|
57
|
-
const arrChildSortData = ['
|
|
58
|
-
const
|
|
59
|
-
|
|
60
|
-
: 'ASC' })), {});
|
|
67
|
+
const arrChildSortData = ['productName', 'productSKU'];
|
|
68
|
+
const remapChildSortData = ['name', 'sku'];
|
|
69
|
+
const sort = (sortings || []).reduce((acc, sort, idx) => (Object.assign(Object.assign({}, acc), { [arrChildSortData.indexOf(sort.name) >= 0 ? 'product' + '.' + remapChildSortData[idx] : 'iv.' + sort.name]: sort.desc ? 'DESC' : 'ASC' })), {});
|
|
61
70
|
qb.orderBy(sort);
|
|
62
71
|
}
|
|
63
72
|
if ((locationSortingRules === null || locationSortingRules === void 0 ? void 0 : locationSortingRules.length) > 0) {
|
|
@@ -83,7 +92,7 @@ exports.inventoriesByPalletResolver = {
|
|
|
83
92
|
return Object.assign(Object.assign({}, item), { remainQty,
|
|
84
93
|
remainUomValue, remainUomValueWithUom: remainUomValue + ' ' + item.uom,
|
|
85
94
|
// product: item.product,
|
|
86
|
-
productName: item.product.name, productSKU: item.product.sku, productBrand: item.product.brand });
|
|
95
|
+
productName: item.product.name, productSKU: item.product.sku, productBrand: item.product.brand, productId: item.product.id });
|
|
87
96
|
}));
|
|
88
97
|
return { items, total };
|
|
89
98
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inventories-by-pallet.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/inventories-by-pallet.ts"],"names":[],"mappings":"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","sourcesContent":["import { Brackets, getRepository, SelectQueryBuilder } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { getPermittedBizplaceIds } from '@things-factory/biz-base'\nimport { ORDER_INVENTORY_STATUS } from '@things-factory/sales-base'\nimport { buildCondition, buildQuery, Domain } from '@things-factory/shell'\nimport { Inventory, LOCATION_TYPE } from '@things-factory/warehouse-base'\n\nexport const inventoriesByPalletResolver = {\n async inventoriesByPallet(_: any, { filters, pagination, sortings, locationSortingRules }, context: any) {\n const { domain, user }: { domain: Domain; user: User } = context.state\n const params = { filters, pagination }\n let permittedBizplaceIds: string[] = await getPermittedBizplaceIds(domain, user)\n\n const productFilters = params.filters.filter(x => x.name == 'productName')\n const productFilterColumns = ['sku', 'brandSku', 'name', 'description', 'brand', 'subBrand']\n params.filters = params.filters.filter(x => x.name != 'productName')\n\n if (!params.filters.find((filter: any) => filter.name === 'bizplace')) {\n params.filters.push({\n name: 'bizplace',\n operator: 'in',\n value: permittedBizplaceIds,\n relation: true\n })\n } else {\n permittedBizplaceIds = params.filters.find(filter => filter.name === 'bizplace').value\n params.filters.find(filter => filter.name === 'bizplace').relation = true\n }\n\n const qb: SelectQueryBuilder<Inventory> = getRepository(Inventory).createQueryBuilder('iv')\n buildQuery(qb, params, context)\n\n qb.leftJoinAndSelect('iv.domain', 'domain')\n .leftJoinAndSelect('iv.bizplace', 'bizplace')\n .leftJoinAndSelect('iv.product', 'product')\n .leftJoinAndSelect('iv.warehouse', 'warehouse')\n .leftJoinAndSelect('iv.location', 'location')\n .leftJoinAndSelect('iv.creator', 'creator')\n .leftJoinAndSelect('iv.updater', 'updater')\n .andWhere('iv.qty > 0')\n .andWhere('CASE WHEN iv.lockedQty IS NULL THEN 0 ELSE iv.lockedQty END >= 0')\n .andWhere('iv.qty - CASE WHEN iv.lockedQty IS NULL THEN 0 ELSE iv.lockedQty END > 0')\n .andWhere(`location.type NOT IN ('${LOCATION_TYPE.QUARANTINE}', '${LOCATION_TYPE.RESERVE}')`)\n .andWhere(\n `(iv.batch_id, product.name, iv.packing_type, product.brand) NOT IN (\n SELECT \n oi.batch_id, p2.name, oi.packing_type, p2.brand\n FROM \n order_inventories oi\n LEFT JOIN\n products p2\n ON\n oi.product_id = p2.id\n WHERE \n oi.status = '${ORDER_INVENTORY_STATUS.PENDING_SPLIT}'\n AND oi.bizplace_id IN (:...permittedBizplaceIds)\n AND oi.domain_id = (:domainId)\n )`,\n { permittedBizplaceIds, domainId: domain.id }\n )\n\n if (sortings?.length !== 0) {\n const arrChildSortData = ['bizplace', 'product', 'location', 'warehouse', 'zone']\n const sort = (sortings || []).reduce(\n (acc, sort) => ({\n ...acc,\n [arrChildSortData.indexOf(sort.name) >= 0 ? sort.name + '.name' : 'iv.' + sort.name]: sort.desc\n ? 'DESC'\n : 'ASC'\n }),\n {}\n )\n qb.orderBy(sort)\n }\n\n if (locationSortingRules?.length > 0) {\n locationSortingRules.forEach((rule: { name: string; desc: boolean }) => {\n qb.addOrderBy(`location.${rule.name}`, rule.desc ? 'DESC' : 'ASC')\n })\n } else {\n qb.addOrderBy('location.name', 'DESC')\n }\n\n if (productFilters && productFilters.length > 0) {\n let productInfo = productFilters[0]\n qb.andWhere(\n new Brackets(qb2 => {\n productFilterColumns.forEach(filter => {\n const condition = buildCondition(\n 'product',\n filter,\n 'i_like',\n productInfo.value,\n false,\n Object.keys(qb.getParameters()).length\n )\n\n qb2.orWhere(condition.clause, condition.parameters)\n })\n })\n )\n }\n\n let [items, total] = await qb.getManyAndCount()\n\n items = await Promise.all(\n items.map(async (item: Inventory) => {\n const { remainQty, remainUomValue } = await getRemainAmount(item)\n\n return {\n ...item,\n remainQty,\n remainUomValue,\n remainUomValueWithUom: remainUomValue + ' ' + item.uom,\n // product: item.product,\n productName: item.product.name,\n productSKU: item.product.sku,\n productBrand: item.product.brand\n }\n })\n )\n\n return { items, total }\n }\n}\n\nasync function getRemainAmount(inventory: Inventory): Promise<{ remainQty: number; remainUomValue: number }> {\n return {\n remainQty: inventory.qty - (inventory.lockedQty || 0),\n remainUomValue: inventory.uomValue - (inventory.lockedUomValue || 0)\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"inventories-by-pallet.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/inventories-by-pallet.ts"],"names":[],"mappings":"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","sourcesContent":["import { Brackets, OrderByCondition, SelectQueryBuilder } from 'typeorm'\n\nimport { getPermittedBizplaceIds } from '@things-factory/biz-base'\nimport { ORDER_INVENTORY_STATUS } from '@things-factory/sales-base'\nimport { buildCondition, buildQuery, getRepository } from '@things-factory/shell'\nimport { Inventory, LOCATION_TYPE } from '@things-factory/warehouse-base'\n\nexport const inventoriesByPalletResolver = {\n async inventoriesByPallet(_: any, { filters, pagination, sortings, locationSortingRules }, context: ResolverContext) {\n const { domain, user } = context.state\n const params = { filters, pagination }\n let permittedBizplaceIds: string[] = await getPermittedBizplaceIds(domain, user)\n const productFilters = params.filters.filter(x => x.name == 'productName')\n const recallFilters = params.filters.find(x => x.name === 'recall')\n const skipLockCheckFilters = params.filters.find(x => x.name === 'skipLockCheck')\n let skipLockCheck: Boolean =\n skipLockCheckFilters && skipLockCheckFilters?.value ? skipLockCheckFilters?.value : false\n const productFilterColumns = ['sku', 'brandSku', 'name', 'description', 'brand', 'subBrand']\n params.filters = params.filters.filter(x => x.name != 'productName')\n\n if (!params.filters.find((filter: any) => filter.name === 'bizplace')) {\n params.filters.push({\n name: 'bizplace',\n operator: 'in',\n value: permittedBizplaceIds,\n relation: true\n })\n } else {\n permittedBizplaceIds = params.filters.find(filter => filter.name === 'bizplace').value\n params.filters.find(filter => filter.name === 'bizplace').relation = true\n }\n\n const locationFilters = params.filters.find(x => x.name == 'locationName')\n params.filters = params.filters.filter(x => x.name != 'locationName')\n\n const qb: SelectQueryBuilder<Inventory> = getRepository(Inventory).createQueryBuilder('iv')\n buildQuery(qb, params, context)\n\n qb.leftJoinAndSelect('iv.domain', 'domain')\n .leftJoinAndSelect('iv.bizplace', 'bizplace')\n .leftJoinAndSelect('iv.product', 'product')\n .leftJoinAndSelect('iv.warehouse', 'warehouse')\n .leftJoinAndSelect('iv.location', 'location')\n .leftJoinAndSelect('iv.creator', 'creator')\n .leftJoinAndSelect('iv.updater', 'updater')\n .andWhere('iv.qty > 0')\n .andWhere(\n `location.type ${recallFilters?.value === true ? '' : 'NOT'} IN ('${LOCATION_TYPE.QUARANTINE}', '${\n LOCATION_TYPE.RESERVE\n }')`\n )\n .andWhere(\n `(iv.batch_id, product.name, iv.packing_type, product.brand) NOT IN (\n SELECT \n oi.batch_id, p2.name, oi.packing_type, p2.brand\n FROM \n order_inventories oi\n LEFT JOIN\n products p2\n ON\n oi.product_id = p2.id\n WHERE \n oi.status = '${ORDER_INVENTORY_STATUS.PENDING_SPLIT}'\n AND oi.bizplace_id IN (:...permittedBizplaceIds)\n AND oi.domain_id = (:domainId)\n )`,\n { permittedBizplaceIds, domainId: domain.id }\n )\n\n if (!skipLockCheck) {\n qb.andWhere('CASE WHEN iv.lockedQty IS NULL THEN 0 ELSE iv.lockedQty END >= 0')\n qb.andWhere('iv.qty - CASE WHEN iv.lockedQty IS NULL THEN 0 ELSE iv.lockedQty END > 0')\n }\n\n if (locationFilters) {\n qb.andWhere(`location.name ilike '${locationFilters.value}'`)\n }\n\n if (sortings?.length !== 0) {\n const arrChildSortData = ['productName', 'productSKU']\n\n const remapChildSortData = ['name', 'sku']\n const sort: OrderByCondition = (sortings || []).reduce(\n (acc, sort, idx) => ({\n ...acc,\n [arrChildSortData.indexOf(sort.name) >= 0 ? 'product' + '.' + remapChildSortData[idx] : 'iv.' + sort.name]:\n sort.desc ? 'DESC' : 'ASC'\n }),\n {}\n )\n qb.orderBy(sort)\n }\n\n if (locationSortingRules?.length > 0) {\n locationSortingRules.forEach((rule: { name: string; desc: boolean }) => {\n qb.addOrderBy(`location.${rule.name}`, rule.desc ? 'DESC' : 'ASC')\n })\n } else {\n qb.addOrderBy('location.name', 'DESC')\n }\n\n if (productFilters && productFilters.length > 0) {\n let productInfo = productFilters[0]\n qb.andWhere(\n new Brackets(qb2 => {\n productFilterColumns.forEach(filter => {\n const condition = buildCondition(\n 'product',\n filter,\n 'i_like',\n productInfo.value,\n false,\n Object.keys(qb.getParameters()).length\n )\n\n qb2.orWhere(condition.clause, condition.parameters)\n })\n })\n )\n }\n let [items, total] = await qb.getManyAndCount()\n\n items = await Promise.all(\n items.map(async (item: Inventory) => {\n const { remainQty, remainUomValue } = await getRemainAmount(item)\n\n return {\n ...item,\n remainQty,\n remainUomValue,\n remainUomValueWithUom: remainUomValue + ' ' + item.uom,\n // product: item.product,\n productName: item.product.name,\n productSKU: item.product.sku,\n productBrand: item.product.brand,\n productId: item.product.id\n }\n })\n )\n\n return { items, total }\n }\n}\n\nasync function getRemainAmount(inventory: Inventory): Promise<{ remainQty: number; remainUomValue: number }> {\n return {\n remainQty: inventory.qty - (inventory.lockedQty || 0),\n remainUomValue: inventory.uomValue - (inventory.lockedUomValue || 0)\n }\n}\n"]}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.loadedInventories = void 0;
|
|
4
|
-
const sales_base_1 = require("@things-factory/sales-base");
|
|
5
4
|
const typeorm_1 = require("typeorm");
|
|
5
|
+
const sales_base_1 = require("@things-factory/sales-base");
|
|
6
|
+
const shell_1 = require("@things-factory/shell");
|
|
6
7
|
exports.loadedInventories = {
|
|
7
8
|
async loadedInventories(_, { releaseGoodNo }, context) {
|
|
8
9
|
const { domain } = context.state;
|
|
9
|
-
const foundRO = await (0,
|
|
10
|
+
const foundRO = await (0, shell_1.getRepository)(sales_base_1.ReleaseGood).findOne({
|
|
10
11
|
where: {
|
|
11
|
-
domain,
|
|
12
|
+
domain: { id: domain.id },
|
|
12
13
|
name: releaseGoodNo,
|
|
13
14
|
status: sales_base_1.ORDER_STATUS.LOADING
|
|
14
15
|
},
|
|
@@ -16,11 +17,11 @@ exports.loadedInventories = {
|
|
|
16
17
|
});
|
|
17
18
|
if (!foundRO)
|
|
18
19
|
throw new Error('Release order is not found');
|
|
19
|
-
const deliveryOrders = await (0,
|
|
20
|
+
const deliveryOrders = await (0, shell_1.getRepository)(sales_base_1.DeliveryOrder).find({
|
|
20
21
|
where: { releaseGood: foundRO }
|
|
21
22
|
});
|
|
22
23
|
if (deliveryOrders === null || deliveryOrders === void 0 ? void 0 : deliveryOrders.length) {
|
|
23
|
-
return await (0,
|
|
24
|
+
return await (0, shell_1.getRepository)(sales_base_1.OrderInventory).find({
|
|
24
25
|
where: {
|
|
25
26
|
deliveryOrder: (0, typeorm_1.In)(deliveryOrders.map((deliveryOrder) => deliveryOrder.id))
|
|
26
27
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loaded-inventories.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/loaded-inventories.ts"],"names":[],"mappings":";;;AAAA,2DAAqG;
|
|
1
|
+
{"version":3,"file":"loaded-inventories.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/loaded-inventories.ts"],"names":[],"mappings":";;;AAAA,qCAA4B;AAE5B,2DAAqG;AACrG,iDAAqD;AAExC,QAAA,iBAAiB,GAAG;IAC/B,KAAK,CAAC,iBAAiB,CAAC,CAAM,EAAE,EAAE,aAAa,EAAE,EAAE,OAAwB;QACzE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAChC,MAAM,OAAO,GAAgB,MAAM,IAAA,qBAAa,EAAC,wBAAW,CAAC,CAAC,OAAO,CAAC;YACpE,KAAK,EAAE;gBACL,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;gBACzB,IAAI,EAAE,aAAa;gBACnB,MAAM,EAAE,yBAAY,CAAC,OAAO;aAC7B;YACD,SAAS,EAAE,CAAC,UAAU,CAAC;SACxB,CAAC,CAAA;QACF,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;QAE3D,MAAM,cAAc,GAAoB,MAAM,IAAA,qBAAa,EAAC,0BAAa,CAAC,CAAC,IAAI,CAAC;YAC9E,KAAK,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE;SAChC,CAAC,CAAA;QAEF,IAAI,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,MAAM,EAAE;YAC1B,OAAO,MAAM,IAAA,qBAAa,EAAC,2BAAc,CAAC,CAAC,IAAI,CAAC;gBAC9C,KAAK,EAAE;oBACL,aAAa,EAAE,IAAA,YAAE,EAAC,cAAc,CAAC,GAAG,CAAC,CAAC,aAA4B,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;iBAC1F;gBACD,SAAS,EAAE;oBACT,WAAW;oBACX,mBAAmB;oBACnB,eAAe;oBACf,+BAA+B;oBAC/B,gCAAgC;iBACjC;aACF,CAAC,CAAA;SACH;aAAM;YACL,OAAO,EAAE,CAAA;SACV;IACH,CAAC;CACF,CAAA","sourcesContent":["import { In } from 'typeorm'\n\nimport { DeliveryOrder, ORDER_STATUS, OrderInventory, ReleaseGood } from '@things-factory/sales-base'\nimport { getRepository } from '@things-factory/shell'\n\nexport const loadedInventories = {\n async loadedInventories(_: any, { releaseGoodNo }, context: ResolverContext) {\n const { domain } = context.state\n const foundRO: ReleaseGood = await getRepository(ReleaseGood).findOne({\n where: {\n domain: { id: domain.id },\n name: releaseGoodNo,\n status: ORDER_STATUS.LOADING\n },\n relations: ['bizplace']\n })\n if (!foundRO) throw new Error('Release order is not found')\n\n const deliveryOrders: DeliveryOrder[] = await getRepository(DeliveryOrder).find({\n where: { releaseGood: foundRO }\n })\n\n if (deliveryOrders?.length) {\n return await getRepository(OrderInventory).find({\n where: {\n deliveryOrder: In(deliveryOrders.map((deliveryOrder: DeliveryOrder) => deliveryOrder.id))\n },\n relations: [\n 'inventory',\n 'inventory.product',\n 'deliveryOrder',\n 'deliveryOrder.transportDriver',\n 'deliveryOrder.transportVehicle'\n ]\n })\n } else {\n return []\n }\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activate-loading.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/loading/activate-loading.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"activate-loading.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/loading/activate-loading.ts"],"names":[],"mappings":";;;AAAA,qCAAmD;AAKnD,qDAAwE;AACxE,yDAAoE;AACpE,mDAAiE;AAEpD,QAAA,uBAAuB,GAAG;IACrC,KAAK,CAAC,eAAe,CAAC,CAAM,EAAE,EAAE,WAAW,EAAE,uBAAuB,EAAE,EAAE,OAAwB;QAC9F,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,cAAc,GAAc,MAAM,EAAE,CAAC,aAAa,CAAC,oBAAS,CAAC,CAAC,OAAO,CAAC;YAC1E,KAAK,EAAE;gBACL,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,WAAW;gBACjB,MAAM,EAAE,4BAAgB,CAAC,WAAW;gBACpC,IAAI,EAAE,0BAAc,CAAC,OAAO;aAC7B;YACD,SAAS,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,kBAAkB,EAAE,kCAAkC,CAAC;SAC/F,CAAC,CAAA;QAEF,IAAI,CAAC,cAAc;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;QAEhE,MAAM,0BAA0B,GAAW,MAAM,EAAE,CAAC,aAAa,CAAC,oBAAS,CAAC,CAAC,KAAK,CAAC;YACjF,KAAK,EAAE;gBACL,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,cAAc,CAAC,WAAW;gBACvC,IAAI,EAAE,0BAAc,CAAC,OAAO;gBAC5B,MAAM,EAAE,IAAA,aAAG,EAAC,IAAA,eAAK,EAAC,4BAAgB,CAAC,IAAI,CAAC,CAAC;aAC1C;SACF,CAAC,CAAA;QAEF,MAAM,mBAAmB,GAAW,MAAM,EAAE,CAAC,aAAa,CAAC,oBAAS,CAAC,CAAC,KAAK,CAAC;YAC1E,KAAK,EAAE;gBACL,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,cAAc,CAAC,WAAW;gBACvC,IAAI,EAAE,0BAAc,CAAC,GAAG;gBACxB,MAAM,EAAE,IAAA,aAAG,EAAC,IAAA,eAAK,EAAC,4BAAgB,CAAC,IAAI,CAAC,CAAC;aAC1C;SACF,CAAC,CAAA;QAEF,IAAI,MAAM,GAAG,EAAE,CAAA;QAEf,oDAAoD;QACpD,0EAA0E;QAC1E,uGAAuG;QACvG,IAAI,0BAA0B,EAAE;YAC9B,MAAM,CAAC,IAAI,CAAC,8BAA8B,cAAc,CAAC,WAAW,CAAC,IAAI,6BAA6B,CAAC,CAAA;SACxG;QAED,IAAI,mBAAmB,EAAE;YACvB,MAAM,CAAC,IAAI,CAAC,8BAA8B,cAAc,CAAC,WAAW,CAAC,IAAI,6BAA6B,CAAC,CAAA;SACxG;QAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACrB,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;SACtB;QAED,OAAO,MAAM,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,uBAAuB,CAAC,CAAA;IACtF,CAAC;CACF,CAAA;AAEM,KAAK,UAAU,eAAe,CACnC,EAAiB,EACjB,MAAc,EACd,IAAU,EACV,WAAmB,EACnB,uBAAmD;IAEnD,MAAM,mBAAmB,GAA+B,IAAI,wCAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IACxG,OAAO,MAAM,mBAAmB,CAAC,eAAe,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAA;AACxF,CAAC;AATD,0CASC","sourcesContent":["import { EntityManager, Equal, Not } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Domain } from '@things-factory/shell'\n\nimport { WORKSHEET_STATUS, WORKSHEET_TYPE } from '../../../../constants'\nimport { LoadingWorksheetController } from '../../../../controllers'\nimport { Worksheet, WorksheetDetail } from '../../../../entities'\n\nexport const activateLoadingResolver = {\n async activateLoading(_: any, { worksheetNo, loadingWorksheetDetails }, context: ResolverContext) {\n const { tx, domain, user } = context.state\n const foundWorksheet: Worksheet = await tx.getRepository(Worksheet).findOne({\n where: {\n domain: domain,\n name: worksheetNo,\n status: WORKSHEET_STATUS.DEACTIVATED,\n type: WORKSHEET_TYPE.LOADING\n },\n relations: ['bizplace', 'releaseGood', 'worksheetDetails', 'worksheetDetails.targetInventory']\n })\n\n if (!foundWorksheet) throw new Error(`Worksheet doesn't exists`)\n\n const relatedPickingWorksheetCnt: number = await tx.getRepository(Worksheet).count({\n where: {\n domain: domain,\n releaseGood: foundWorksheet.releaseGood,\n type: WORKSHEET_TYPE.PICKING,\n status: Not(Equal(WORKSHEET_STATUS.DONE))\n }\n })\n\n const relatedWorksheetCnt: number = await tx.getRepository(Worksheet).count({\n where: {\n domain: domain,\n releaseGood: foundWorksheet.releaseGood,\n type: WORKSHEET_TYPE.VAS,\n status: Not(Equal(WORKSHEET_STATUS.DONE))\n }\n })\n\n let errMsg = []\n\n // Stop to activate loading worksheet with Exception\n // This resolver is being called from client side not from other resolver.\n // So if there's a related worksheet, it should throw an Error to inform user about non-finished order.\n if (relatedPickingWorksheetCnt) {\n errMsg.push(`Picking Worksheet with RO: ${foundWorksheet.releaseGood.name} is still under processing.`)\n }\n\n if (relatedWorksheetCnt) {\n errMsg.push(`Related VAS order with RO: ${foundWorksheet.releaseGood.name} is still under processing.`)\n }\n\n if (errMsg.length > 0) {\n throw errMsg.join('')\n }\n\n return await activateLoading(tx, domain, user, worksheetNo, loadingWorksheetDetails)\n }\n}\n\nexport async function activateLoading(\n tx: EntityManager,\n domain: Domain,\n user: User,\n worksheetNo: string,\n loadingWorksheetDetails: Partial<WorksheetDetail>[]\n): Promise<Worksheet> {\n const worksheetController: LoadingWorksheetController = new LoadingWorksheetController(tx, domain, user)\n return await worksheetController.activateLoading(worksheetNo, loadingWorksheetDetails)\n}\n"]}
|
|
@@ -17,7 +17,7 @@ exports.completeLoadingResolver = {
|
|
|
17
17
|
async function completeLoading(tx, domain, user, releaseGoodNo) {
|
|
18
18
|
const worksheetController = new controllers_1.LoadingWorksheetController(tx, domain, user);
|
|
19
19
|
const releaseGood = await worksheetController.findRefOrder(sales_base_1.ReleaseGood, {
|
|
20
|
-
domain,
|
|
20
|
+
domain: { id: domain.id },
|
|
21
21
|
name: releaseGoodNo,
|
|
22
22
|
status: sales_base_1.ORDER_STATUS.LOADING
|
|
23
23
|
}, ['bizplace', 'bizplace.domain']);
|
|
@@ -32,34 +32,34 @@ async function completeLoading(tx, domain, user, releaseGoodNo) {
|
|
|
32
32
|
// Search Warehouse Company Domain
|
|
33
33
|
const warehouseCompanyBizplace = await tx
|
|
34
34
|
.getRepository(biz_base_1.Bizplace)
|
|
35
|
-
.findOne({ where: { domain }, relations: ['company'] });
|
|
35
|
+
.findOne({ where: { domain: { id: domain.id } }, relations: ['company'] });
|
|
36
36
|
const warehouseCompany = warehouseCompanyBizplace.company;
|
|
37
37
|
const warehouseBizplaces = await tx
|
|
38
38
|
.getRepository(biz_base_1.Bizplace)
|
|
39
|
-
.find({ where: { company: warehouseCompany }, relations: ['domain'] });
|
|
39
|
+
.find({ where: { company: { id: warehouseCompany.id } }, relations: ['domain'] });
|
|
40
40
|
const warehouseCompanyBizplaces = warehouseBizplaces.filter(biz => biz.domain.extType == 'company');
|
|
41
41
|
const warehouseCompanyDomain = warehouseCompanyBizplaces[0].domain;
|
|
42
42
|
const customerDomain = releaseGood.bizplace.domain;
|
|
43
43
|
const fulfillmentCenter = await tx
|
|
44
44
|
.getRepository(integration_fulfillment_1.FulfillmentCenter)
|
|
45
|
-
.
|
|
45
|
+
.findOneBy({ domain: { id: warehouseCompanyDomain.id }, centerId: domain.subdomain, status: 'active' });
|
|
46
46
|
if (fulfillmentCenter) {
|
|
47
47
|
let customerAvailableSftp = await tx.getRepository(integration_sftp_1.Sftp).findOne({
|
|
48
|
-
where: { domain: customerDomain, status: 'ACTIVE', fulfillmentCenter }
|
|
48
|
+
where: { domain: { id: customerDomain.id }, status: 'ACTIVE', fulfillmentCenter }
|
|
49
49
|
});
|
|
50
50
|
if (customerAvailableSftp) {
|
|
51
51
|
const responseFileTypes = JSON.parse(customerAvailableSftp.responseFileTypes);
|
|
52
52
|
let inventoryItems = await tx.getRepository(warehouse_base_1.InventoryItem).find({
|
|
53
|
-
where: { domain, outboundOrderId: releaseGood.id }
|
|
53
|
+
where: { domain: { id: domain.id }, outboundOrderId: releaseGood.id }
|
|
54
54
|
});
|
|
55
|
-
if (responseFileTypes.enableShipment) {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
}
|
|
55
|
+
// if (responseFileTypes.enableShipment) {
|
|
56
|
+
// let shipmentResult: Sftp = await SftpAPI.createShipment(customerAvailableSftp, {
|
|
57
|
+
// releaseGood,
|
|
58
|
+
// orderInventories: targetInventories,
|
|
59
|
+
// sftp: customerAvailableSftp
|
|
60
|
+
// })
|
|
61
|
+
// customerAvailableSftp = await tx.getRepository(Sftp).save(shipmentResult)
|
|
62
|
+
// }
|
|
63
63
|
if (responseFileTypes.enableSerialNumber) {
|
|
64
64
|
let snResult = await integration_sftp_1.SftpAPI.createSerialNumber(customerAvailableSftp, {
|
|
65
65
|
releaseGood,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"complete-loading.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/loading/complete-loading.ts"],"names":[],"mappings":";;;AAGA,uDAA4D;AAC5D,qFAA2E;AAC3E,uEAAgE;AAChE,2DAA8G;AAE9G,mEAA8D;AAE9D,qDAAsD;AACtD,yDAAkG;AAGrF,QAAA,uBAAuB,GAAG;IACrC,KAAK,CAAC,eAAe,CAAC,CAAM,EAAE,EAAE,aAAa,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"complete-loading.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/loading/complete-loading.ts"],"names":[],"mappings":"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","sourcesContent":["import { EntityManager } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Bizplace, Company } from '@things-factory/biz-base'\nimport { FulfillmentCenter } from '@things-factory/integration-fulfillment'\nimport { Sftp, SftpAPI } from '@things-factory/integration-sftp'\nimport { ORDER_INVENTORY_STATUS, ORDER_STATUS, OrderInventory, ReleaseGood } from '@things-factory/sales-base'\nimport { Domain } from '@things-factory/shell'\nimport { InventoryItem } from '@things-factory/warehouse-base'\n\nimport { WORKSHEET_TYPE } from '../../../../constants'\nimport { LoadingWorksheetController, ReturningWorksheetController } from '../../../../controllers'\nimport { Worksheet, WorksheetDetail } from '../../../../entities'\n\nexport const completeLoadingResolver = {\n async completeLoading(_: any, { releaseGoodNo }, context: ResolverContext) {\n const { tx, domain, user } = context.state\n await completeLoading(tx, domain, user, releaseGoodNo)\n }\n}\n\nexport async function completeLoading(\n tx: EntityManager,\n domain: Domain,\n user: User,\n releaseGoodNo: string\n): Promise<void> {\n const worksheetController: LoadingWorksheetController = new LoadingWorksheetController(tx, domain, user)\n const releaseGood: ReleaseGood = await worksheetController.findRefOrder(\n ReleaseGood,\n {\n domain: { id: domain.id },\n name: releaseGoodNo,\n status: ORDER_STATUS.LOADING\n },\n ['bizplace', 'bizplace.domain']\n )\n const worksheet: Worksheet = await worksheetController.findWorksheetByRefOrder(releaseGood, WORKSHEET_TYPE.LOADING, [\n 'worksheetDetails',\n 'worksheetDetails.targetInventory',\n 'worksheetDetails.targetInventory.product'\n ])\n const worksheetDetails: WorksheetDetail[] = worksheet.worksheetDetails\n const targetInventories: OrderInventory[] = worksheetDetails.map((wsd: WorksheetDetail) => wsd.targetInventory)\n const remainInventories: OrderInventory[] = targetInventories.filter(\n (targetInventory: OrderInventory) => targetInventory.status === ORDER_INVENTORY_STATUS.LOADING\n )\n\n // Search Warehouse Company Domain\n const warehouseCompanyBizplace: Bizplace = await tx\n .getRepository(Bizplace)\n .findOne({ where: { domain: { id: domain.id } }, relations: ['company'] })\n\n const warehouseCompany: Company = warehouseCompanyBizplace.company\n const warehouseBizplaces: Bizplace[] = await tx\n .getRepository(Bizplace)\n .find({ where: { company: { id: warehouseCompany.id } }, relations: ['domain'] })\n const warehouseCompanyBizplaces: Bizplace[] = warehouseBizplaces.filter(biz => biz.domain.extType == 'company')\n const warehouseCompanyDomain: Domain = warehouseCompanyBizplaces[0].domain\n\n const customerDomain: Domain = releaseGood.bizplace.domain\n const fulfillmentCenter: FulfillmentCenter = await tx\n .getRepository(FulfillmentCenter)\n .findOneBy({ domain: { id: warehouseCompanyDomain.id }, centerId: domain.subdomain, status: 'active' })\n\n if (fulfillmentCenter) {\n let customerAvailableSftp: Sftp = await tx.getRepository(Sftp).findOne({\n where: { domain: { id: customerDomain.id }, status: 'ACTIVE', fulfillmentCenter }\n })\n if (customerAvailableSftp) {\n const responseFileTypes: any = JSON.parse(customerAvailableSftp.responseFileTypes)\n\n let inventoryItems: InventoryItem[] = await tx.getRepository(InventoryItem).find({\n where: { domain: { id: domain.id }, outboundOrderId: releaseGood.id }\n })\n\n // if (responseFileTypes.enableShipment) {\n // let shipmentResult: Sftp = await SftpAPI.createShipment(customerAvailableSftp, {\n // releaseGood,\n // orderInventories: targetInventories,\n // sftp: customerAvailableSftp\n // })\n // customerAvailableSftp = await tx.getRepository(Sftp).save(shipmentResult)\n // }\n\n if (responseFileTypes.enableSerialNumber) {\n let snResult: Sftp = await SftpAPI.createSerialNumber(customerAvailableSftp, {\n releaseGood,\n inventoryItems,\n sftp: customerAvailableSftp\n })\n customerAvailableSftp = await tx.getRepository(Sftp).save(snResult)\n }\n }\n }\n\n await worksheetController.completeLoading(releaseGoodNo)\n\n if (remainInventories.length) {\n await createReturnWorksheet(tx, domain, user, releaseGoodNo, remainInventories)\n }\n}\n\n// Generating worksheet for returning process\nexport async function createReturnWorksheet(\n tx: EntityManager,\n domain: Domain,\n user: User,\n releaseGoodNo: string,\n orderInventories: OrderInventory[]\n): Promise<Worksheet> {\n const worksheetController: ReturningWorksheetController = new ReturningWorksheetController(tx, domain, user)\n return await worksheetController.generateReturningWorksheet(releaseGoodNo, orderInventories)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loading.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/loading/loading.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"loading.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/loading/loading.ts"],"names":[],"mappings":";;;AAIA,2DAA+F;AAG/F,yDAAyF;AAG5E,QAAA,eAAe,GAAG;IAC7B,KAAK,CAAC,OAAO,CAAC,CAAM,EAAE,EAAE,sBAAsB,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE,OAAwB;;QAClG,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,EAAE,aAAa,CAAC,CAAA;QAC/F,MAAM,mBAAmB,GAAwB,IAAI,iCAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QAC1F,MAAM,WAAW,GAAgB,MAAM,mBAAmB,CAAC,YAAY,CACrE,wBAAW,EACX,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,EAC/B,CAAC,UAAU,EAAE,WAAW,CAAC,CAC1B,CAAA;QAED,MAAM,0BAA0B,GAA+B,IAAI,wCAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;QAC/G,IAAI,iBAAiB,GAAqB,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;QAE1F,MAAM,QAAQ,GAAa,WAAW,CAAC,QAAQ,CAAA;QAC/C,SAAS,mCACJ,SAAS,KACZ,iBAAiB,EAAE,CAAA,MAAA,WAAW,CAAC,SAAS,0CAAE,EAAE,KAAI,IAAI,GACrD,CAAA;QAED,MAAM,IAAA,kCAAqB,EAAC,SAAS,EAAE,iBAAiB,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;IACpG,CAAC;CACF,CAAA;AAEM,KAAK,UAAU,OAAO,CAC3B,EAAiB,EACjB,MAAc,EACd,IAAU,EACV,gBAA2F,EAC3F,aAAqB;IAErB,MAAM,mBAAmB,GAA+B,IAAI,wCAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IACxG,OAAO,MAAM,mBAAmB,CAAC,OAAO,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAA;AAC3E,CAAC;AATD,0BASC","sourcesContent":["import { EntityManager } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Bizplace } from '@things-factory/biz-base'\nimport { generateDeliveryOrder, OrderInventory, ReleaseGood } from '@things-factory/sales-base'\nimport { Domain } from '@things-factory/shell'\n\nimport { LoadingWorksheetController, WorksheetController } from '../../../../controllers'\nimport { WorksheetDetail } from '../../../../entities'\n\nexport const loadingResolver = {\n async loading(_: any, { loadedWorksheetDetails, releaseGoodNo, orderInfo }, context: ResolverContext) {\n const { tx, domain, user } = context.state\n const worksheetDetails = await loading(tx, domain, user, loadedWorksheetDetails, releaseGoodNo)\n const worksheetController: WorksheetController = new WorksheetController(tx, domain, user)\n const releaseGood: ReleaseGood = await worksheetController.findRefOrder(\n ReleaseGood,\n { domain, name: releaseGoodNo },\n ['bizplace', 'deliverTo']\n )\n\n const loadingWorksheetController: LoadingWorksheetController = new LoadingWorksheetController(tx, domain, user)\n let targetInventories: OrderInventory[] = worksheetDetails.map(itm => itm.targetInventory)\n\n const bizplace: Bizplace = releaseGood.bizplace\n orderInfo = {\n ...orderInfo,\n contactPointRefId: releaseGood.deliverTo?.id || null\n }\n\n await generateDeliveryOrder(orderInfo, targetInventories, bizplace, releaseGood, domain, user, tx)\n }\n}\n\nexport async function loading(\n tx: EntityManager,\n domain: Domain,\n user: User,\n worksheetDetails: Partial<WorksheetDetail & { loadedQty: number } & { toteName: string }>[],\n releaseGoodNo: string\n): Promise<any> {\n const worksheetController: LoadingWorksheetController = new LoadingWorksheetController(tx, domain, user)\n return await worksheetController.loading(releaseGoodNo, worksheetDetails)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"undo-loading.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/loading/undo-loading.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"undo-loading.js","sourceRoot":"","sources":["../../../../../server/graphql/resolvers/worksheet/loading/undo-loading.ts"],"names":[],"mappings":";;;AAMA,yDAAoE;AAEvD,QAAA,mBAAmB,GAAG;IACjC,KAAK,CAAC,WAAW,CAAC,CAAM,EAAE,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE,OAAwB;QAC9E,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,CAAC,CAAA;IAC/D,CAAC;CACF,CAAA;AAEM,KAAK,UAAU,WAAW,CAC/B,EAAiB,EACjB,MAAc,EACd,IAAU,EACV,aAAqC,EACrC,SAAmB;IAEnB,MAAM,mBAAmB,GAA+B,IAAI,wCAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IACxG,MAAM,mBAAmB,CAAC,WAAW,CAAC,aAAa,EAAE,SAAS,CAAC,CAAA;AACjE,CAAC;AATD,kCASC","sourcesContent":["import { EntityManager } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { DeliveryOrder } from '@things-factory/sales-base'\nimport { Domain } from '@things-factory/shell'\n\nimport { LoadingWorksheetController } from '../../../../controllers'\n\nexport const undoLoadingResolver = {\n async undoLoading(_: any, { deliveryOrder, palletIds }, context: ResolverContext) {\n const { tx, domain, user } = context.state\n await undoLoading(tx, domain, user, deliveryOrder, palletIds)\n }\n}\n\nexport async function undoLoading(\n tx: EntityManager,\n domain: Domain,\n user: User,\n deliveryOrder: Partial<DeliveryOrder>,\n palletIds: string[]\n): Promise<void> {\n const worksheetController: LoadingWorksheetController = new LoadingWorksheetController(tx, domain, user)\n await worksheetController.undoLoading(deliveryOrder, palletIds)\n}\n"]}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.loadingWorksheetResolver = void 0;
|
|
4
4
|
const typeorm_1 = require("typeorm");
|
|
5
5
|
const sales_base_1 = require("@things-factory/sales-base");
|
|
6
|
+
const shell_1 = require("@things-factory/shell");
|
|
6
7
|
const warehouse_base_1 = require("@things-factory/warehouse-base");
|
|
7
8
|
const constants_1 = require("../../../constants");
|
|
8
9
|
const entities_1 = require("../../../entities");
|
|
@@ -10,16 +11,16 @@ const utils_1 = require("../../../utils");
|
|
|
10
11
|
exports.loadingWorksheetResolver = {
|
|
11
12
|
async loadingWorksheet(_, { releaseGoodNo }, context) {
|
|
12
13
|
const { domain } = context.state;
|
|
13
|
-
let releaseGood = await (0,
|
|
14
|
-
where: { domain, name: releaseGoodNo /*status: ORDER_STATUS.LOADING*/ },
|
|
14
|
+
let releaseGood = await (0, shell_1.getRepository)(sales_base_1.ReleaseGood).findOne({
|
|
15
|
+
where: { domain: { id: domain.id }, name: releaseGoodNo /*status: ORDER_STATUS.LOADING*/ },
|
|
15
16
|
relations: ['bizplace', 'deliverTo', 'deliverTo.bizplace']
|
|
16
17
|
});
|
|
17
18
|
// Find Release Order based on Bin
|
|
18
19
|
if (!releaseGood) {
|
|
19
|
-
const binLocation = await (0,
|
|
20
|
-
where: { domain, name: releaseGoodNo }
|
|
20
|
+
const binLocation = await (0, shell_1.getRepository)(warehouse_base_1.Location).findOne({
|
|
21
|
+
where: { domain: { id: domain.id }, name: releaseGoodNo }
|
|
21
22
|
});
|
|
22
|
-
const qb = (0,
|
|
23
|
+
const qb = (0, shell_1.getRepository)(sales_base_1.OrderInventory).createQueryBuilder('orderInventory');
|
|
23
24
|
qb.innerJoinAndSelect('orderInventory.releaseGood', 'releaseGood')
|
|
24
25
|
.innerJoinAndSelect('releaseGood.bizplace', 'bizplace')
|
|
25
26
|
.innerJoinAndSelect('bizplace.domain', 'domain')
|
|
@@ -37,14 +38,14 @@ exports.loadingWorksheetResolver = {
|
|
|
37
38
|
}
|
|
38
39
|
if (!releaseGood)
|
|
39
40
|
throw new Error(`Release good doesn't exists.`);
|
|
40
|
-
let [orderTotes, orderTotesTotal] = await (0,
|
|
41
|
+
let [orderTotes, orderTotesTotal] = await (0, shell_1.getRepository)(sales_base_1.OrderTote).findAndCount({
|
|
41
42
|
where: { releaseGood: releaseGood.id }
|
|
42
43
|
});
|
|
43
44
|
const foundWorksheet = await (0, utils_1.fetchExecutingWorksheet)(domain, releaseGood.bizplace, ['bizplace', 'worksheetDetails'], constants_1.WORKSHEET_TYPE.LOADING, releaseGood);
|
|
44
|
-
let foundWSD = await (0,
|
|
45
|
+
let foundWSD = await (0, shell_1.getRepository)(entities_1.WorksheetDetail).find({
|
|
45
46
|
where: {
|
|
46
|
-
domain,
|
|
47
|
-
worksheet: foundWorksheet,
|
|
47
|
+
domain: { id: domain.id },
|
|
48
|
+
worksheet: { id: foundWorksheet.id },
|
|
48
49
|
type: constants_1.WORKSHEET_TYPE.LOADING,
|
|
49
50
|
status: (0, typeorm_1.Not)((0, typeorm_1.Equal)(constants_1.WORKSHEET_STATUS.DONE))
|
|
50
51
|
},
|
|
@@ -57,7 +58,7 @@ exports.loadingWorksheetResolver = {
|
|
|
57
58
|
]
|
|
58
59
|
});
|
|
59
60
|
if (orderTotesTotal > 0) {
|
|
60
|
-
let [toteItems, toteItemsTotal] = await (0,
|
|
61
|
+
let [toteItems, toteItemsTotal] = await (0, shell_1.getRepository)(sales_base_1.OrderToteItem).findAndCount({
|
|
61
62
|
where: { orderTote: (0, typeorm_1.In)(orderTotes.map(itm => itm.id)) },
|
|
62
63
|
relations: ['orderTote', 'orderInventory']
|
|
63
64
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loading-worksheet.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/loading-worksheet.ts"],"names":[],"mappings":"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","sourcesContent":["import { Equal, getRepository, In, Not, SelectQueryBuilder } from 'typeorm'\n\nimport {\n ORDER_STATUS,\n ORDER_INVENTORY_STATUS,\n OrderInventory,\n ReleaseGood,\n OrderTote,\n OrderToteItem\n} from '@things-factory/sales-base'\nimport { Domain } from '@things-factory/shell'\nimport { Inventory, Location } from '@things-factory/warehouse-base'\n\nimport { WORKSHEET_STATUS, WORKSHEET_TYPE } from '../../../constants'\nimport { Worksheet, WorksheetDetail } from '../../../entities'\nimport { fetchExecutingWorksheet } from '../../../utils'\n\nexport const loadingWorksheetResolver = {\n async loadingWorksheet(_: any, { releaseGoodNo }, context: any) {\n const { domain }: { domain: Domain } = context.state\n let releaseGood: ReleaseGood = await getRepository(ReleaseGood).findOne({\n where: { domain, name: releaseGoodNo /*status: ORDER_STATUS.LOADING*/ },\n relations: ['bizplace', 'deliverTo', 'deliverTo.bizplace']\n })\n\n // Find Release Order based on Bin\n if (!releaseGood) {\n const binLocation: Location = await getRepository(Location).findOne({\n where: { domain, name: releaseGoodNo }\n })\n\n const qb: SelectQueryBuilder<OrderInventory> = getRepository(OrderInventory).createQueryBuilder('orderInventory')\n qb.innerJoinAndSelect('orderInventory.releaseGood', 'releaseGood')\n .innerJoinAndSelect('releaseGood.bizplace', 'bizplace')\n .innerJoinAndSelect('bizplace.domain', 'domain')\n .where('orderInventory.domain_id = :domainId', { domainId: domain.id })\n .andWhere('orderInventory.status IN (:...orderInventoryStatus)', {\n orderInventoryStatus: [ORDER_INVENTORY_STATUS.LOADING, ORDER_INVENTORY_STATUS.LOADED]\n })\n .andWhere('orderInventory.bin_location_id = :locationId', { locationId: binLocation.id })\n .andWhere('releaseGood.status = :status', { status: ORDER_STATUS.LOADING })\n\n const orderInventoryByBin = await qb.getOne()\n\n if (orderInventoryByBin?.releaseGood) {\n releaseGoodNo = orderInventoryByBin.releaseGood.name\n releaseGood = orderInventoryByBin.releaseGood\n }\n }\n\n if (!releaseGood) throw new Error(`Release good doesn't exists.`)\n\n let [orderTotes, orderTotesTotal]: OrderTote = await getRepository(OrderTote).findAndCount({\n where: { releaseGood: releaseGood.id }\n })\n\n const foundWorksheet: Worksheet = await fetchExecutingWorksheet(\n domain,\n releaseGood.bizplace,\n ['bizplace', 'worksheetDetails'],\n WORKSHEET_TYPE.LOADING,\n releaseGood\n )\n let foundWSD: any[] = await getRepository(WorksheetDetail).find({\n where: {\n domain,\n worksheet: foundWorksheet,\n type: WORKSHEET_TYPE.LOADING,\n status: Not(Equal(WORKSHEET_STATUS.DONE))\n },\n relations: [\n 'targetInventory',\n 'targetInventory.orderProduct',\n 'targetInventory.inventory',\n 'targetInventory.inventory.location',\n 'targetInventory.inventory.product'\n ]\n })\n\n if (orderTotesTotal > 0) {\n let [toteItems, toteItemsTotal]: OrderToteItem = await getRepository(OrderToteItem).findAndCount({\n where: { orderTote: In(orderTotes.map(itm => itm.id)) },\n relations: ['orderTote', 'orderInventory']\n })\n\n let toteWsd = []\n\n for (let i = 0; i < toteItemsTotal; i++) {\n let wsdIndex = foundWSD.findIndex(\n itm => !itm?.toteName && itm.targetInventory.id == toteItems[i].orderInventory.id\n )\n\n if (wsdIndex >= 0) {\n let filterWSD: any = JSON.parse(JSON.stringify(foundWSD[wsdIndex]))\n let uomValue =\n Math.round((filterWSD.targetInventory.releaseUomValue / filterWSD.targetInventory.releaseQty) * 100) / 100\n\n foundWSD[wsdIndex].targetInventory.releaseQty -= toteItems[i].qty\n foundWSD[wsdIndex].targetInventory.pickedQty -= toteItems[i].qty\n foundWSD[wsdIndex].targetInventory.releaseUomValue = foundWSD[wsdIndex].targetInventory.releaseQty * uomValue\n\n filterWSD.targetInventory.releaseQty = toteItems[i].qty\n filterWSD.targetInventory.pickedQty = toteItems[i].qty\n filterWSD.targetInventory.releaseUomValue = toteItems[i].qty * uomValue\n filterWSD.toteName = toteItems[i].orderTote.name\n toteWsd.push(filterWSD)\n }\n }\n\n foundWSD = foundWSD.concat(toteWsd)\n foundWSD.sort((a, b) => (a.toteName > b.toteName ? 1 : -1))\n }\n\n let worksheetDetailInfos = foundWSD\n .filter(itm => itm.targetInventory.releaseQty > 0)\n .map((loadingWSD: any) => {\n const targetInventory: OrderInventory = loadingWSD.targetInventory\n const inventory: Inventory = targetInventory.inventory\n return {\n name: loadingWSD.name,\n palletId: inventory.palletId,\n batchId: inventory.batchId,\n batchIdRef: inventory.batchIdRef,\n product: inventory.product,\n releaseQty: targetInventory.releaseQty,\n releaseUomValue: targetInventory.releaseUomValue,\n status: loadingWSD.status,\n description: loadingWSD.description,\n targetName: targetInventory.name,\n packingType: inventory.packingType,\n packingSize: inventory.packingSize,\n inventory: targetInventory.inventory,\n toteName: loadingWSD.toteName\n }\n })\n\n return {\n worksheetInfo: {\n releaseGood,\n bizplaceName: releaseGood.bizplace.name,\n startedAt: foundWorksheet.startedAt,\n refNo: releaseGood.refNo,\n ownCollection: releaseGood.ownTransport\n },\n worksheetDetailInfos\n }\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"loading-worksheet.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/loading-worksheet.ts"],"names":[],"mappings":"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","sourcesContent":["import { Equal, In, Not, SelectQueryBuilder } from 'typeorm'\n\nimport {\n ORDER_INVENTORY_STATUS,\n ORDER_STATUS,\n OrderInventory,\n OrderTote,\n OrderToteItem,\n ReleaseGood\n} from '@things-factory/sales-base'\nimport { getRepository } from '@things-factory/shell'\nimport { Inventory, Location } from '@things-factory/warehouse-base'\n\nimport { WORKSHEET_STATUS, WORKSHEET_TYPE } from '../../../constants'\nimport { Worksheet, WorksheetDetail } from '../../../entities'\nimport { fetchExecutingWorksheet } from '../../../utils'\n\nexport const loadingWorksheetResolver = {\n async loadingWorksheet(_: any, { releaseGoodNo }, context: ResolverContext) {\n const { domain } = context.state\n let releaseGood: ReleaseGood = await getRepository(ReleaseGood).findOne({\n where: { domain: { id: domain.id }, name: releaseGoodNo /*status: ORDER_STATUS.LOADING*/ },\n relations: ['bizplace', 'deliverTo', 'deliverTo.bizplace']\n })\n\n // Find Release Order based on Bin\n if (!releaseGood) {\n const binLocation: Location = await getRepository(Location).findOne({\n where: { domain: { id: domain.id }, name: releaseGoodNo }\n })\n\n const qb: SelectQueryBuilder<OrderInventory> = getRepository(OrderInventory).createQueryBuilder('orderInventory')\n qb.innerJoinAndSelect('orderInventory.releaseGood', 'releaseGood')\n .innerJoinAndSelect('releaseGood.bizplace', 'bizplace')\n .innerJoinAndSelect('bizplace.domain', 'domain')\n .where('orderInventory.domain_id = :domainId', { domainId: domain.id })\n .andWhere('orderInventory.status IN (:...orderInventoryStatus)', {\n orderInventoryStatus: [ORDER_INVENTORY_STATUS.LOADING, ORDER_INVENTORY_STATUS.LOADED]\n })\n .andWhere('orderInventory.bin_location_id = :locationId', { locationId: binLocation.id })\n .andWhere('releaseGood.status = :status', { status: ORDER_STATUS.LOADING })\n\n const orderInventoryByBin = await qb.getOne()\n\n if (orderInventoryByBin?.releaseGood) {\n releaseGoodNo = orderInventoryByBin.releaseGood.name\n releaseGood = orderInventoryByBin.releaseGood\n }\n }\n\n if (!releaseGood) throw new Error(`Release good doesn't exists.`)\n\n let [orderTotes, orderTotesTotal]: OrderTote = await getRepository(OrderTote).findAndCount({\n where: { releaseGood: releaseGood.id }\n })\n\n const foundWorksheet: Worksheet = await fetchExecutingWorksheet(\n domain,\n releaseGood.bizplace,\n ['bizplace', 'worksheetDetails'],\n WORKSHEET_TYPE.LOADING,\n releaseGood\n )\n let foundWSD: any[] = await getRepository(WorksheetDetail).find({\n where: {\n domain: { id: domain.id },\n worksheet: { id: foundWorksheet.id },\n type: WORKSHEET_TYPE.LOADING,\n status: Not(Equal(WORKSHEET_STATUS.DONE))\n },\n relations: [\n 'targetInventory',\n 'targetInventory.orderProduct',\n 'targetInventory.inventory',\n 'targetInventory.inventory.location',\n 'targetInventory.inventory.product'\n ]\n })\n\n if (orderTotesTotal > 0) {\n let [toteItems, toteItemsTotal]: OrderToteItem = await getRepository(OrderToteItem).findAndCount({\n where: { orderTote: In(orderTotes.map(itm => itm.id)) },\n relations: ['orderTote', 'orderInventory']\n })\n\n let toteWsd = []\n\n for (let i = 0; i < toteItemsTotal; i++) {\n let wsdIndex = foundWSD.findIndex(\n itm => !itm?.toteName && itm.targetInventory.id == toteItems[i].orderInventory.id\n )\n\n if (wsdIndex >= 0) {\n let filterWSD: any = JSON.parse(JSON.stringify(foundWSD[wsdIndex]))\n let uomValue =\n Math.round((filterWSD.targetInventory.releaseUomValue / filterWSD.targetInventory.releaseQty) * 100) / 100\n\n foundWSD[wsdIndex].targetInventory.releaseQty -= toteItems[i].qty\n foundWSD[wsdIndex].targetInventory.pickedQty -= toteItems[i].qty\n foundWSD[wsdIndex].targetInventory.releaseUomValue = foundWSD[wsdIndex].targetInventory.releaseQty * uomValue\n\n filterWSD.targetInventory.releaseQty = toteItems[i].qty\n filterWSD.targetInventory.pickedQty = toteItems[i].qty\n filterWSD.targetInventory.releaseUomValue = toteItems[i].qty * uomValue\n filterWSD.toteName = toteItems[i].orderTote.name\n toteWsd.push(filterWSD)\n }\n }\n\n foundWSD = foundWSD.concat(toteWsd)\n foundWSD.sort((a, b) => (a.toteName > b.toteName ? 1 : -1))\n }\n\n let worksheetDetailInfos = foundWSD\n .filter(itm => itm.targetInventory.releaseQty > 0)\n .map((loadingWSD: any) => {\n const targetInventory: OrderInventory = loadingWSD.targetInventory\n const inventory: Inventory = targetInventory.inventory\n return {\n name: loadingWSD.name,\n palletId: inventory.palletId,\n batchId: inventory.batchId,\n batchIdRef: inventory.batchIdRef,\n product: inventory.product,\n releaseQty: targetInventory.releaseQty,\n releaseUomValue: targetInventory.releaseUomValue,\n status: loadingWSD.status,\n description: loadingWSD.description,\n targetName: targetInventory.name,\n packingType: inventory.packingType,\n packingSize: inventory.packingSize,\n inventory: targetInventory.inventory,\n toteName: loadingWSD.toteName\n }\n })\n\n return {\n worksheetInfo: {\n releaseGood,\n bizplaceName: releaseGood.bizplace.name,\n startedAt: foundWorksheet.startedAt,\n refNo: releaseGood.refNo,\n ownCollection: releaseGood.ownTransport\n },\n worksheetDetailInfos\n }\n }\n}\n"]}
|
|
@@ -3,15 +3,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.notTallyTargetInventoriesResolver = void 0;
|
|
4
4
|
const typeorm_1 = require("typeorm");
|
|
5
5
|
const sales_base_1 = require("@things-factory/sales-base");
|
|
6
|
+
const shell_1 = require("@things-factory/shell");
|
|
6
7
|
const entities_1 = require("../../../entities");
|
|
7
8
|
exports.notTallyTargetInventoriesResolver = {
|
|
8
9
|
async notTallyTargetInventories(_, { cycleCountNo }, context) {
|
|
9
10
|
const { domain } = context.state;
|
|
10
|
-
const cycleCount = await (0,
|
|
11
|
-
where: { domain, name: cycleCountNo }
|
|
11
|
+
const cycleCount = await (0, shell_1.getRepository)(sales_base_1.InventoryCheck).findOne({
|
|
12
|
+
where: { domain: { id: domain.id }, name: cycleCountNo }
|
|
12
13
|
});
|
|
13
|
-
const worksheet = await (0,
|
|
14
|
-
where: { domain, inventoryCheck: cycleCount }
|
|
14
|
+
const worksheet = await (0, shell_1.getRepository)(entities_1.Worksheet).findOne({
|
|
15
|
+
where: { domain: { id: domain.id }, inventoryCheck: cycleCount }
|
|
15
16
|
});
|
|
16
17
|
const qb = (0, typeorm_1.createQueryBuilder)(entities_1.WorksheetDetail, 'WSD');
|
|
17
18
|
const worksheetDetails = await qb
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"not-tally-target-inventories.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/not-tally-target-inventories.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"not-tally-target-inventories.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/not-tally-target-inventories.ts"],"names":[],"mappings":";;;AAAA,qCAAgE;AAEhE,2DAAmF;AACnF,iDAAqD;AAErD,gDAA8D;AAEjD,QAAA,iCAAiC,GAAG;IAC/C,KAAK,CAAC,yBAAyB,CAAC,CAAM,EAAE,EAAE,YAAY,EAAE,EAAE,OAAwB;QAChF,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,MAAM,UAAU,GAAmB,MAAM,IAAA,qBAAa,EAAC,2BAAc,CAAC,CAAC,OAAO,CAAC;YAC7E,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE;SACzD,CAAC,CAAA;QAEF,MAAM,SAAS,GAAc,MAAM,IAAA,qBAAa,EAAC,oBAAS,CAAC,CAAC,OAAO,CAAC;YAClE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE;SACjE,CAAC,CAAA;QAEF,MAAM,EAAE,GAAwC,IAAA,4BAAkB,EAAC,0BAAe,EAAE,KAAK,CAAC,CAAA;QAC1F,MAAM,gBAAgB,GAAsB,MAAM,EAAE;aACjD,iBAAiB,CAAC,qBAAqB,EAAE,OAAO,CAAC;aACjD,iBAAiB,CAAC,iBAAiB,EAAE,KAAK,CAAC;aAC3C,iBAAiB,CAAC,sBAAsB,EAAE,SAAS,CAAC;aACpD,iBAAiB,CAAC,yBAAyB,EAAE,SAAS,CAAC;aACvD,iBAAiB,CAAC,aAAa,EAAE,MAAM,CAAC;aACxC,KAAK,CAAC,wBAAwB,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;aACxD,QAAQ,CAAC,8BAA8B,EAAE,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC;aACvE,QAAQ,CAAC,sBAAsB,EAAE,EAAE,MAAM,EAAE,mCAAsB,CAAC,SAAS,EAAE,CAAC;aAC9E,OAAO,EAAE,CAAA;QAEZ,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAoB,EAAE,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;IAC5E,CAAC;CACF,CAAA","sourcesContent":["import { createQueryBuilder, SelectQueryBuilder } from 'typeorm'\n\nimport { InventoryCheck, ORDER_INVENTORY_STATUS } from '@things-factory/sales-base'\nimport { getRepository } from '@things-factory/shell'\n\nimport { Worksheet, WorksheetDetail } from '../../../entities'\n\nexport const notTallyTargetInventoriesResolver = {\n async notTallyTargetInventories(_: any, { cycleCountNo }, context: ResolverContext) {\n const { domain } = context.state\n\n const cycleCount: InventoryCheck = await getRepository(InventoryCheck).findOne({\n where: { domain: { id: domain.id }, name: cycleCountNo }\n })\n\n const worksheet: Worksheet = await getRepository(Worksheet).findOne({\n where: { domain: { id: domain.id }, inventoryCheck: cycleCount }\n })\n\n const qb: SelectQueryBuilder<WorksheetDetail> = createQueryBuilder(WorksheetDetail, 'WSD')\n const worksheetDetails: WorksheetDetail[] = await qb\n .leftJoinAndSelect('WSD.targetInventory', 'T_INV')\n .leftJoinAndSelect('T_INV.inventory', 'INV')\n .leftJoinAndSelect('T_INV.originLocation', 'ORG_LOC')\n .leftJoinAndSelect('T_INV.inspectedLocation', 'ISP_LOC')\n .leftJoinAndSelect('INV.product', 'PROD')\n .where('WSD.domain = :domainId', { domainId: domain.id })\n .andWhere('WSD.worksheet = :worksheetId', { worksheetId: worksheet.id })\n .andWhere('WSD.status = :status', { status: ORDER_INVENTORY_STATUS.NOT_TALLY })\n .getMany()\n\n return worksheetDetails.map((wsd: WorksheetDetail) => wsd.targetInventory)\n }\n}\n"]}
|
|
@@ -15,8 +15,7 @@ exports.activatePackingResolver = {
|
|
|
15
15
|
activatedPackingWs.push(result);
|
|
16
16
|
});
|
|
17
17
|
}
|
|
18
|
-
catch (error) {
|
|
19
|
-
}
|
|
18
|
+
catch (error) { }
|
|
20
19
|
}));
|
|
21
20
|
return activatedPackingWs;
|
|
22
21
|
}
|
|
@@ -28,10 +27,10 @@ async function activatePacking(tx, domain, user, worksheetNo) {
|
|
|
28
27
|
if (releaseGood.type == 'b2c') {
|
|
29
28
|
const sellercraft = await tx
|
|
30
29
|
.getRepository(integration_sellercraft_1.Sellercraft)
|
|
31
|
-
.
|
|
30
|
+
.findOneBy({ domain: releaseGood.bizplace.domain, status: integration_sellercraft_1.SellercraftStatus.ACTIVE });
|
|
32
31
|
if (sellercraft) {
|
|
33
32
|
const sellercraftCtrl = new controllers_1.SellercraftController(tx, domain, user);
|
|
34
|
-
|
|
33
|
+
sellercraftCtrl.initiateOrderDocument(sellercraft, releaseGood);
|
|
35
34
|
}
|
|
36
35
|
}
|
|
37
36
|
return worksheet;
|