@things-factory/operato-wms 4.3.669 → 4.3.671
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/client/pages/bulk-operation/bulk-operation.js +14 -2
- package/client/pages/bulk-operation/validate-ro-popup.js +18 -2
- package/config.development.js +8 -1
- package/package.json +38 -38
- package/dist-server/graphql/index.js +0 -33
- package/dist-server/graphql/index.js.map +0 -1
- package/dist-server/graphql/resolvers/board-setting/board-settings.js +0 -78
- package/dist-server/graphql/resolvers/board-setting/board-settings.js.map +0 -1
- package/dist-server/graphql/resolvers/board-setting/index.js +0 -6
- package/dist-server/graphql/resolvers/board-setting/index.js.map +0 -1
- package/dist-server/graphql/resolvers/custom/elccl/elccl-daily-collection-report.js +0 -87
- package/dist-server/graphql/resolvers/custom/elccl/elccl-daily-collection-report.js.map +0 -1
- package/dist-server/graphql/resolvers/custom/elccl/elccl-daily-order-inventory-report.js +0 -138
- package/dist-server/graphql/resolvers/custom/elccl/elccl-daily-order-inventory-report.js.map +0 -1
- package/dist-server/graphql/resolvers/custom/elccl/elccl-inventory-history-pallet-detail-report.js +0 -124
- package/dist-server/graphql/resolvers/custom/elccl/elccl-inventory-history-pallet-detail-report.js.map +0 -1
- package/dist-server/graphql/resolvers/custom/elccl/elccl-inventory-history-report.js +0 -159
- package/dist-server/graphql/resolvers/custom/elccl/elccl-inventory-history-report.js.map +0 -1
- package/dist-server/graphql/resolvers/custom/elccl/elccl-inventory-history-summary-report.js +0 -90
- package/dist-server/graphql/resolvers/custom/elccl/elccl-inventory-history-summary-report.js.map +0 -1
- package/dist-server/graphql/resolvers/custom/elccl/elccl-onhand-inventory-counter.js +0 -34
- package/dist-server/graphql/resolvers/custom/elccl/elccl-onhand-inventory-counter.js.map +0 -1
- package/dist-server/graphql/resolvers/custom/elccl/index.js +0 -11
- package/dist-server/graphql/resolvers/custom/elccl/index.js.map +0 -1
- package/dist-server/graphql/resolvers/custom/kimeda/index.js +0 -6
- package/dist-server/graphql/resolvers/custom/kimeda/index.js.map +0 -1
- package/dist-server/graphql/resolvers/custom/kimeda/kimeda-onhand-inventory-counter.js +0 -40
- package/dist-server/graphql/resolvers/custom/kimeda/kimeda-onhand-inventory-counter.js.map +0 -1
- package/dist-server/graphql/resolvers/dashboard/arrival-notices-by-status.js +0 -36
- package/dist-server/graphql/resolvers/dashboard/arrival-notices-by-status.js.map +0 -1
- package/dist-server/graphql/resolvers/dashboard/collection-orders-by-status.js +0 -24
- package/dist-server/graphql/resolvers/dashboard/collection-orders-by-status.js.map +0 -1
- package/dist-server/graphql/resolvers/dashboard/delivery-orders-by-status.js +0 -24
- package/dist-server/graphql/resolvers/dashboard/delivery-orders-by-status.js.map +0 -1
- package/dist-server/graphql/resolvers/dashboard/index.js +0 -12
- package/dist-server/graphql/resolvers/dashboard/index.js.map +0 -1
- package/dist-server/graphql/resolvers/dashboard/inventory-expiry-monitor.js +0 -65
- package/dist-server/graphql/resolvers/dashboard/inventory-expiry-monitor.js.map +0 -1
- package/dist-server/graphql/resolvers/dashboard/outbound-order-by-status.js +0 -22
- package/dist-server/graphql/resolvers/dashboard/outbound-order-by-status.js.map +0 -1
- package/dist-server/graphql/resolvers/dashboard/release-goods-by-status.js +0 -36
- package/dist-server/graphql/resolvers/dashboard/release-goods-by-status.js.map +0 -1
- package/dist-server/graphql/resolvers/dashboard/unit-inbounded-outbounded.js +0 -56
- package/dist-server/graphql/resolvers/dashboard/unit-inbounded-outbounded.js.map +0 -1
- package/dist-server/graphql/resolvers/index.js +0 -58
- package/dist-server/graphql/resolvers/index.js.map +0 -1
- package/dist-server/graphql/resolvers/inventory-comparison/index.js +0 -6
- package/dist-server/graphql/resolvers/inventory-comparison/index.js.map +0 -1
- package/dist-server/graphql/resolvers/inventory-comparison/inventory-comparison-list.js +0 -78
- package/dist-server/graphql/resolvers/inventory-comparison/inventory-comparison-list.js.map +0 -1
- package/dist-server/graphql/resolvers/opa-menu/index.js +0 -6
- package/dist-server/graphql/resolvers/opa-menu/index.js.map +0 -1
- package/dist-server/graphql/resolvers/opa-menu/opa-menus.js +0 -73
- package/dist-server/graphql/resolvers/opa-menu/opa-menus.js.map +0 -1
- package/dist-server/graphql/resolvers/other/add-release-good-products.js +0 -309
- package/dist-server/graphql/resolvers/other/add-release-good-products.js.map +0 -1
- package/dist-server/graphql/resolvers/other/index.js +0 -8
- package/dist-server/graphql/resolvers/other/index.js.map +0 -1
- package/dist-server/graphql/resolvers/other/page-settings.js +0 -135
- package/dist-server/graphql/resolvers/other/page-settings.js.map +0 -1
- package/dist-server/graphql/resolvers/outbound/complete-load.js +0 -162
- package/dist-server/graphql/resolvers/outbound/complete-load.js.map +0 -1
- package/dist-server/graphql/resolvers/outbound/find-loadable-release-good-by-bin.js +0 -148
- package/dist-server/graphql/resolvers/outbound/find-loadable-release-good-by-bin.js.map +0 -1
- package/dist-server/graphql/resolvers/outbound/find-loadable-release-good.js +0 -114
- package/dist-server/graphql/resolvers/outbound/find-loadable-release-good.js.map +0 -1
- package/dist-server/graphql/resolvers/outbound/get-delivery-orders.js +0 -46
- package/dist-server/graphql/resolvers/outbound/get-delivery-orders.js.map +0 -1
- package/dist-server/graphql/resolvers/outbound/get-loading-task.js +0 -100
- package/dist-server/graphql/resolvers/outbound/get-loading-task.js.map +0 -1
- package/dist-server/graphql/resolvers/outbound/index.js +0 -17
- package/dist-server/graphql/resolvers/outbound/index.js.map +0 -1
- package/dist-server/graphql/resolvers/outbound/load-by-qty.js +0 -121
- package/dist-server/graphql/resolvers/outbound/load-by-qty.js.map +0 -1
- package/dist-server/graphql/resolvers/outbound/loading-worksheet-v2.js +0 -158
- package/dist-server/graphql/resolvers/outbound/loading-worksheet-v2.js.map +0 -1
- package/dist-server/graphql/resolvers/outbound/my-loading-assignment-status.js +0 -32
- package/dist-server/graphql/resolvers/outbound/my-loading-assignment-status.js.map +0 -1
- package/dist-server/graphql/resolvers/outbound/sort-item.js +0 -66
- package/dist-server/graphql/resolvers/outbound/sort-item.js.map +0 -1
- package/dist-server/graphql/resolvers/outbound/undo-load.js +0 -72
- package/dist-server/graphql/resolvers/outbound/undo-load.js.map +0 -1
- package/dist-server/graphql/resolvers/outbound/warehouse-return.js +0 -101
- package/dist-server/graphql/resolvers/outbound/warehouse-return.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/analysis-picking-packing-report.js +0 -128
- package/dist-server/graphql/resolvers/reports/analysis-picking-packing-report.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/billing-module-report.js +0 -355
- package/dist-server/graphql/resolvers/reports/billing-module-report.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/costing-report.js +0 -166
- package/dist-server/graphql/resolvers/reports/costing-report.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/cycle-count-report.js +0 -311
- package/dist-server/graphql/resolvers/reports/cycle-count-report.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/inbound-order-details-report.js +0 -218
- package/dist-server/graphql/resolvers/reports/inbound-order-details-report.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/inbound-serial-number-report.js +0 -140
- package/dist-server/graphql/resolvers/reports/inbound-serial-number-report.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/index.js +0 -21
- package/dist-server/graphql/resolvers/reports/index.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/manifest-report.js +0 -98
- package/dist-server/graphql/resolvers/reports/manifest-report.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/non-loaded-inventory-report.js +0 -143
- package/dist-server/graphql/resolvers/reports/non-loaded-inventory-report.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/outbound-order-details-report.js +0 -290
- package/dist-server/graphql/resolvers/reports/outbound-order-details-report.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/outbound-serial-number-report.js +0 -143
- package/dist-server/graphql/resolvers/reports/outbound-serial-number-report.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/pg-udf-query.js +0 -70
- package/dist-server/graphql/resolvers/reports/pg-udf-query.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/product-label-report.js +0 -57
- package/dist-server/graphql/resolvers/reports/product-label-report.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/release-inventory-report.js +0 -180
- package/dist-server/graphql/resolvers/reports/release-inventory-report.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/shortage-report.js +0 -165
- package/dist-server/graphql/resolvers/reports/shortage-report.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/tote-loading-qc-report.js +0 -129
- package/dist-server/graphql/resolvers/reports/tote-loading-qc-report.js.map +0 -1
- package/dist-server/graphql/resolvers/reports/vas-report.js +0 -386
- package/dist-server/graphql/resolvers/reports/vas-report.js.map +0 -1
- package/dist-server/graphql/resolvers/shipping-provider/index.js +0 -6
- package/dist-server/graphql/resolvers/shipping-provider/index.js.map +0 -1
- package/dist-server/graphql/resolvers/shipping-provider/shipping-providers.js +0 -24
- package/dist-server/graphql/resolvers/shipping-provider/shipping-providers.js.map +0 -1
- package/dist-server/graphql/resolvers/warehouse-inventory-adjustment/index.js +0 -6
- package/dist-server/graphql/resolvers/warehouse-inventory-adjustment/index.js.map +0 -1
- package/dist-server/graphql/resolvers/warehouse-inventory-adjustment/warehouse-intentory-adjustment.js +0 -97
- package/dist-server/graphql/resolvers/warehouse-inventory-adjustment/warehouse-intentory-adjustment.js.map +0 -1
- package/dist-server/graphql/resolvers/zone-worksheet/activate-zone-worksheet.js +0 -91
- package/dist-server/graphql/resolvers/zone-worksheet/activate-zone-worksheet.js.map +0 -1
- package/dist-server/graphql/resolvers/zone-worksheet/assign-sorter.js +0 -36
- package/dist-server/graphql/resolvers/zone-worksheet/assign-sorter.js.map +0 -1
- package/dist-server/graphql/resolvers/zone-worksheet/generate-zone-worksheet.js +0 -106
- package/dist-server/graphql/resolvers/zone-worksheet/generate-zone-worksheet.js.map +0 -1
- package/dist-server/graphql/resolvers/zone-worksheet/get-zone-picking-task.js +0 -108
- package/dist-server/graphql/resolvers/zone-worksheet/get-zone-picking-task.js.map +0 -1
- package/dist-server/graphql/resolvers/zone-worksheet/index.js +0 -12
- package/dist-server/graphql/resolvers/zone-worksheet/index.js.map +0 -1
- package/dist-server/graphql/resolvers/zone-worksheet/zone-picking.js +0 -346
- package/dist-server/graphql/resolvers/zone-worksheet/zone-picking.js.map +0 -1
- package/dist-server/graphql/resolvers/zone-worksheet/zone-worksheet.js +0 -146
- package/dist-server/graphql/resolvers/zone-worksheet/zone-worksheet.js.map +0 -1
- package/dist-server/graphql/types/board-setting/board-setting.js +0 -16
- package/dist-server/graphql/types/board-setting/board-setting.js.map +0 -1
- package/dist-server/graphql/types/board-setting/index.js +0 -9
- package/dist-server/graphql/types/board-setting/index.js.map +0 -1
- package/dist-server/graphql/types/custom/elccl/elccl-daily-collection-report-list.js +0 -14
- package/dist-server/graphql/types/custom/elccl/elccl-daily-collection-report-list.js.map +0 -1
- package/dist-server/graphql/types/custom/elccl/elccl-daily-collection-report.js +0 -30
- package/dist-server/graphql/types/custom/elccl/elccl-daily-collection-report.js.map +0 -1
- package/dist-server/graphql/types/custom/elccl/elccl-daily-order-inventory-report-list.js +0 -14
- package/dist-server/graphql/types/custom/elccl/elccl-daily-order-inventory-report-list.js.map +0 -1
- package/dist-server/graphql/types/custom/elccl/elccl-daily-order-inventory-report.js +0 -25
- package/dist-server/graphql/types/custom/elccl/elccl-daily-order-inventory-report.js.map +0 -1
- package/dist-server/graphql/types/custom/elccl/elccl-inventory-report.js +0 -22
- package/dist-server/graphql/types/custom/elccl/elccl-inventory-report.js.map +0 -1
- package/dist-server/graphql/types/custom/elccl/elccl-inventory-summary-report-list.js +0 -14
- package/dist-server/graphql/types/custom/elccl/elccl-inventory-summary-report-list.js.map +0 -1
- package/dist-server/graphql/types/custom/elccl/elccl-inventory-summary-report.js +0 -23
- package/dist-server/graphql/types/custom/elccl/elccl-inventory-summary-report.js.map +0 -1
- package/dist-server/graphql/types/custom/elccl/elccl-pallet-detail-report.js +0 -22
- package/dist-server/graphql/types/custom/elccl/elccl-pallet-detail-report.js.map +0 -1
- package/dist-server/graphql/types/custom/elccl/index.js +0 -30
- package/dist-server/graphql/types/custom/elccl/index.js.map +0 -1
- package/dist-server/graphql/types/custom/kimeda/index.js +0 -7
- package/dist-server/graphql/types/custom/kimeda/index.js.map +0 -1
- package/dist-server/graphql/types/dashboard/index.js +0 -17
- package/dist-server/graphql/types/dashboard/index.js.map +0 -1
- package/dist-server/graphql/types/dashboard/inventory-expiry-counter.js +0 -16
- package/dist-server/graphql/types/dashboard/inventory-expiry-counter.js.map +0 -1
- package/dist-server/graphql/types/dashboard/inventory-expiry-status.js +0 -14
- package/dist-server/graphql/types/dashboard/inventory-expiry-status.js.map +0 -1
- package/dist-server/graphql/types/dashboard/order-status-counter.js +0 -14
- package/dist-server/graphql/types/dashboard/order-status-counter.js.map +0 -1
- package/dist-server/graphql/types/index.js +0 -70
- package/dist-server/graphql/types/index.js.map +0 -1
- package/dist-server/graphql/types/inventory-comparison/index.js +0 -13
- package/dist-server/graphql/types/inventory-comparison/index.js.map +0 -1
- package/dist-server/graphql/types/inventory-comparison/inventory-comparison-list.js +0 -14
- package/dist-server/graphql/types/inventory-comparison/inventory-comparison-list.js.map +0 -1
- package/dist-server/graphql/types/inventory-comparison/inventory-comparison.js +0 -18
- package/dist-server/graphql/types/inventory-comparison/inventory-comparison.js.map +0 -1
- package/dist-server/graphql/types/opa-menu/index.js +0 -9
- package/dist-server/graphql/types/opa-menu/index.js.map +0 -1
- package/dist-server/graphql/types/opa-menu/opa-menu.js +0 -45
- package/dist-server/graphql/types/opa-menu/opa-menu.js.map +0 -1
- package/dist-server/graphql/types/other/index.js +0 -21
- package/dist-server/graphql/types/other/index.js.map +0 -1
- package/dist-server/graphql/types/other/page-setting.js +0 -37
- package/dist-server/graphql/types/other/page-setting.js.map +0 -1
- package/dist-server/graphql/types/outbound/delivery-order-info-list.js +0 -14
- package/dist-server/graphql/types/outbound/delivery-order-info-list.js.map +0 -1
- package/dist-server/graphql/types/outbound/index.js +0 -24
- package/dist-server/graphql/types/outbound/index.js.map +0 -1
- package/dist-server/graphql/types/outbound/loading-assignment.js +0 -15
- package/dist-server/graphql/types/outbound/loading-assignment.js.map +0 -1
- package/dist-server/graphql/types/outbound/loading-worksheet-type.js +0 -25
- package/dist-server/graphql/types/outbound/loading-worksheet-type.js.map +0 -1
- package/dist-server/graphql/types/reports/analysis-picking-packing-report-list.js +0 -14
- package/dist-server/graphql/types/reports/analysis-picking-packing-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/analysis-picking-packing-report.js +0 -18
- package/dist-server/graphql/types/reports/analysis-picking-packing-report.js.map +0 -1
- package/dist-server/graphql/types/reports/billing-module-report-list.js +0 -14
- package/dist-server/graphql/types/reports/billing-module-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/billing-module-report.js +0 -15
- package/dist-server/graphql/types/reports/billing-module-report.js.map +0 -1
- package/dist-server/graphql/types/reports/costing-report-list.js +0 -14
- package/dist-server/graphql/types/reports/costing-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/costing-report.js +0 -19
- package/dist-server/graphql/types/reports/costing-report.js.map +0 -1
- package/dist-server/graphql/types/reports/cycle-count-report-list.js +0 -14
- package/dist-server/graphql/types/reports/cycle-count-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/cycle-count-report.js +0 -35
- package/dist-server/graphql/types/reports/cycle-count-report.js.map +0 -1
- package/dist-server/graphql/types/reports/inbound-order-details-report-list.js +0 -14
- package/dist-server/graphql/types/reports/inbound-order-details-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/inbound-order-details-report.js +0 -60
- package/dist-server/graphql/types/reports/inbound-order-details-report.js.map +0 -1
- package/dist-server/graphql/types/reports/inbound-serial-number-report-list.js +0 -14
- package/dist-server/graphql/types/reports/inbound-serial-number-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/inbound-serial-number-report.js +0 -23
- package/dist-server/graphql/types/reports/inbound-serial-number-report.js.map +0 -1
- package/dist-server/graphql/types/reports/index.js +0 -89
- package/dist-server/graphql/types/reports/index.js.map +0 -1
- package/dist-server/graphql/types/reports/loading-qc-report-list.js +0 -14
- package/dist-server/graphql/types/reports/loading-qc-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/loading-qc-report.js +0 -24
- package/dist-server/graphql/types/reports/loading-qc-report.js.map +0 -1
- package/dist-server/graphql/types/reports/manifest-report-list.js +0 -14
- package/dist-server/graphql/types/reports/manifest-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/manifest-report-type.js +0 -23
- package/dist-server/graphql/types/reports/manifest-report-type.js.map +0 -1
- package/dist-server/graphql/types/reports/non-loaded-inventory-report-list.js +0 -14
- package/dist-server/graphql/types/reports/non-loaded-inventory-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/non-loaded-inventory-report.js +0 -23
- package/dist-server/graphql/types/reports/non-loaded-inventory-report.js.map +0 -1
- package/dist-server/graphql/types/reports/outbound-order-details-report-list.js +0 -14
- package/dist-server/graphql/types/reports/outbound-order-details-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/outbound-order-details-report.js +0 -79
- package/dist-server/graphql/types/reports/outbound-order-details-report.js.map +0 -1
- package/dist-server/graphql/types/reports/outbound-serial-number-report-list.js +0 -14
- package/dist-server/graphql/types/reports/outbound-serial-number-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/outbound-serial-number-report.js +0 -25
- package/dist-server/graphql/types/reports/outbound-serial-number-report.js.map +0 -1
- package/dist-server/graphql/types/reports/pg-udf-query-list.js +0 -13
- package/dist-server/graphql/types/reports/pg-udf-query-list.js.map +0 -1
- package/dist-server/graphql/types/reports/product-label-report-list.js +0 -14
- package/dist-server/graphql/types/reports/product-label-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/product-label-report.js +0 -16
- package/dist-server/graphql/types/reports/product-label-report.js.map +0 -1
- package/dist-server/graphql/types/reports/release-inventory-report-list.js +0 -14
- package/dist-server/graphql/types/reports/release-inventory-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/release-inventory-report.js +0 -29
- package/dist-server/graphql/types/reports/release-inventory-report.js.map +0 -1
- package/dist-server/graphql/types/reports/shortage-report-list.js +0 -14
- package/dist-server/graphql/types/reports/shortage-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/shortage-report-type.js +0 -26
- package/dist-server/graphql/types/reports/shortage-report-type.js.map +0 -1
- package/dist-server/graphql/types/reports/vas-report-list.js +0 -20
- package/dist-server/graphql/types/reports/vas-report-list.js.map +0 -1
- package/dist-server/graphql/types/reports/vas-report.js +0 -29
- package/dist-server/graphql/types/reports/vas-report.js.map +0 -1
- package/dist-server/graphql/types/shipping-provider/index.js +0 -10
- package/dist-server/graphql/types/shipping-provider/index.js.map +0 -1
- package/dist-server/graphql/types/shipping-provider/shipping-provider-list.js +0 -13
- package/dist-server/graphql/types/shipping-provider/shipping-provider-list.js.map +0 -1
- package/dist-server/graphql/types/shipping-provider/shipping-provider.js +0 -13
- package/dist-server/graphql/types/shipping-provider/shipping-provider.js.map +0 -1
- package/dist-server/graphql/types/warehouse-inventory-adjustment/index.js +0 -9
- package/dist-server/graphql/types/warehouse-inventory-adjustment/index.js.map +0 -1
- package/dist-server/graphql/types/zone-worksheet/index.js +0 -22
- package/dist-server/graphql/types/zone-worksheet/index.js.map +0 -1
- package/dist-server/graphql/types/zone-worksheet/zone-picking-worksheet.js +0 -18
- package/dist-server/graphql/types/zone-worksheet/zone-picking-worksheet.js.map +0 -1
- package/dist-server/graphql/types/zone-worksheet/zone-worksheet-overview-list.js +0 -13
- package/dist-server/graphql/types/zone-worksheet/zone-worksheet-overview-list.js.map +0 -1
- package/dist-server/graphql/types/zone-worksheet/zone-worksheet-overview.js +0 -16
- package/dist-server/graphql/types/zone-worksheet/zone-worksheet-overview.js.map +0 -1
- package/dist-server/index.js +0 -20
- package/dist-server/index.js.map +0 -1
- package/dist-server/migrations/1568858861188-SeedSetting.js +0 -51
- package/dist-server/migrations/1568858861188-SeedSetting.js.map +0 -1
- package/dist-server/migrations/1623308919899-SeedLocationRecommendSetting.js +0 -35
- package/dist-server/migrations/1623308919899-SeedLocationRecommendSetting.js.map +0 -1
- package/dist-server/migrations/1623381200659-SeedStoringRule.js +0 -33
- package/dist-server/migrations/1623381200659-SeedStoringRule.js.map +0 -1
- package/dist-server/migrations/1687413760311-UpdateProductDetailStockQty.js +0 -36
- package/dist-server/migrations/1687413760311-UpdateProductDetailStockQty.js.map +0 -1
- package/dist-server/migrations/1687415141200-InsertNewProductDetailStock.js +0 -32
- package/dist-server/migrations/1687415141200-InsertNewProductDetailStock.js.map +0 -1
- package/dist-server/migrations/index.js +0 -12
- package/dist-server/migrations/index.js.map +0 -1
- package/dist-server/opa-app-setting-constants.js +0 -15
- package/dist-server/opa-app-setting-constants.js.map +0 -1
- package/dist-server/routes.js +0 -3
- package/dist-server/routes.js.map +0 -1
- package/dist-server/utils/index.js +0 -18
- package/dist-server/utils/index.js.map +0 -1
- package/dist-server/utils/report-query-util.js +0 -42
- package/dist-server/utils/report-query-util.js.map +0 -1
|
@@ -1,311 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.cycleCountReport = void 0;
|
|
4
|
-
const sales_base_1 = require("@things-factory/sales-base");
|
|
5
|
-
exports.cycleCountReport = {
|
|
6
|
-
async cycleCountReport(_, { filters, name }, context) {
|
|
7
|
-
try {
|
|
8
|
-
const { domain, tx } = context.state;
|
|
9
|
-
const batchNoVarianceFilter = filters === null || filters === void 0 ? void 0 : filters.find(e => e.name === 'batchNoVariance');
|
|
10
|
-
const expirationDateVarianceFilter = filters === null || filters === void 0 ? void 0 : filters.find(e => e.name === 'expirationDateVariance');
|
|
11
|
-
const locationVarianceFilter = filters === null || filters === void 0 ? void 0 : filters.find(e => e.name === 'locationVariance');
|
|
12
|
-
const cycleCount = await tx.getRepository(sales_base_1.InventoryCheck).findOne({
|
|
13
|
-
where: { domain, name },
|
|
14
|
-
relations: ['domain']
|
|
15
|
-
});
|
|
16
|
-
await tx.query(`CREATE EXTENSION IF NOT EXISTS tablefunc`);
|
|
17
|
-
// Step 1: Create the temp_fixed_columns table
|
|
18
|
-
await tx.query(`
|
|
19
|
-
CREATE TEMP TABLE temp_fixed_columns ON COMMIT DROP AS (
|
|
20
|
-
SELECT
|
|
21
|
-
d.id as "partner_domain_id",
|
|
22
|
-
w.check_count as "check_count",
|
|
23
|
-
ic.id as "inventory_check_id",
|
|
24
|
-
ici.inventory_id as "inventory_id",
|
|
25
|
-
ic.name as "name",
|
|
26
|
-
ici.product_id as "product_id",
|
|
27
|
-
ici.count_no as "count_no",
|
|
28
|
-
ici.product_detail_id as "product_detail_id",
|
|
29
|
-
ici.status as "invCheckItemStatus",
|
|
30
|
-
b.name as "company",
|
|
31
|
-
ic.name as "cycle_count_no",
|
|
32
|
-
ic.execution_date as "execution_date",
|
|
33
|
-
ic.status as "status",
|
|
34
|
-
i.carton_id as "carton_id",
|
|
35
|
-
i.pallet_id as "pallet_id",
|
|
36
|
-
i.packing_type as "i_packing_type",
|
|
37
|
-
i.uom as "i_uom",
|
|
38
|
-
p.sku as "product_sku",
|
|
39
|
-
p.name as "product_name",
|
|
40
|
-
p.brand as "product_brand",
|
|
41
|
-
p.description as "product_description",
|
|
42
|
-
pd.packing_type as "pd_packing_type",
|
|
43
|
-
pd.uom as "pd_uom",
|
|
44
|
-
ici.origin_batch_no as "origin_batch_no",
|
|
45
|
-
ici.inspected_batch_no as "inspected_batch_no",
|
|
46
|
-
ici.origin_uom_value as "origin_uom_value",
|
|
47
|
-
ici.origin_location_id as "origin_location_id",
|
|
48
|
-
ici.origin_expiration_date as "origin_expiration_date",
|
|
49
|
-
ici.inspected_expiration_date as "inspected_expiration_date",
|
|
50
|
-
l.name as "origin_location_name",
|
|
51
|
-
ici.inspected_location_id as "inspected_location_id",
|
|
52
|
-
l2.name as "inspected_location_name",
|
|
53
|
-
COALESCE(ici.origin_qty, 0) as "origin_qty",
|
|
54
|
-
COALESCE(ici.inspected_qty, 0) as "inspected_qty",
|
|
55
|
-
COALESCE(ici.inspected_uom_value, 0) as "inspected_uom_value"
|
|
56
|
-
FROM
|
|
57
|
-
inventory_checks ic
|
|
58
|
-
INNER JOIN
|
|
59
|
-
inventory_check_items ici on ici.inventory_check_id = ic.id
|
|
60
|
-
LEFT JOIN
|
|
61
|
-
inventories i on i.id = ici.inventory_id
|
|
62
|
-
INNER JOIN
|
|
63
|
-
products p ON p.id = ici.product_id
|
|
64
|
-
INNER JOIN
|
|
65
|
-
product_details pd ON pd.id = ici.product_detail_id
|
|
66
|
-
INNER JOIN
|
|
67
|
-
worksheets w on w.inventory_check_id = ic.id
|
|
68
|
-
INNER JOIN
|
|
69
|
-
worksheet_details wd on wd.worksheet_id = w.id and wd.target_inventory_check_item_id = ici.id
|
|
70
|
-
LEFT JOIN
|
|
71
|
-
locations l on l.id = ici.origin_location_id
|
|
72
|
-
LEFT JOIN
|
|
73
|
-
locations l2 on l2.id = ici.inspected_location_id
|
|
74
|
-
INNER JOIN
|
|
75
|
-
bizplaces b on b.id = ic.bizplace_id
|
|
76
|
-
INNER JOIN
|
|
77
|
-
domains d on d.id = b.domain_id
|
|
78
|
-
WHERE
|
|
79
|
-
ic.id = $1
|
|
80
|
-
)`, [cycleCount.id]);
|
|
81
|
-
// Step 2: Create the temp_dynamic_columns table
|
|
82
|
-
await tx.query(`
|
|
83
|
-
CREATE TEMP TABLE temp_dynamic_columns ON COMMIT DROP AS (
|
|
84
|
-
SELECT ic.id as "inventory_check_id",
|
|
85
|
-
w.check_count as "check_count"
|
|
86
|
-
FROM inventory_checks ic
|
|
87
|
-
INNER JOIN worksheets w ON ic.id = w.inventory_check_id
|
|
88
|
-
WHERE ic.id = $1
|
|
89
|
-
)`, [cycleCount.id]);
|
|
90
|
-
// Step 3: Generate definedCrossColumn for dynamic columns
|
|
91
|
-
const definedCrossColumn = await tx.query(`
|
|
92
|
-
SELECT string_agg(DISTINCT 'count ' || check_count::text, ',') as count_columns,
|
|
93
|
-
string_agg(DISTINCT 'uom count ' || check_count::text, ',') as uom_columns
|
|
94
|
-
FROM temp_dynamic_columns
|
|
95
|
-
`);
|
|
96
|
-
const countColumns = definedCrossColumn[0].count_columns
|
|
97
|
-
.split(',')
|
|
98
|
-
.map(column => `"${column.trim()}" varchar`)
|
|
99
|
-
.join(', ');
|
|
100
|
-
const uomColumns = definedCrossColumn[0].uom_columns
|
|
101
|
-
.split(',')
|
|
102
|
-
.map(column => `"${column.trim()}" varchar`)
|
|
103
|
-
.join(', ');
|
|
104
|
-
// Step 4: Pivot data and create the pivot tables
|
|
105
|
-
await tx.query(`
|
|
106
|
-
CREATE TEMP TABLE temp_pivoted_data ON COMMIT DROP AS (
|
|
107
|
-
SELECT *
|
|
108
|
-
FROM crosstab(
|
|
109
|
-
$$
|
|
110
|
-
SELECT inventory_id, 'count ' || check_count, inspected_qty
|
|
111
|
-
FROM temp_fixed_columns ORDER BY 1,2,3
|
|
112
|
-
$$,
|
|
113
|
-
$$
|
|
114
|
-
SELECT DISTINCT 'count ' || check_count FROM temp_dynamic_columns ORDER BY 1
|
|
115
|
-
$$
|
|
116
|
-
) AS ct (inventory_id varchar, ${countColumns})
|
|
117
|
-
)
|
|
118
|
-
`);
|
|
119
|
-
await tx.query(`
|
|
120
|
-
CREATE TEMP TABLE temp_pivoted_uom_data ON COMMIT DROP AS (
|
|
121
|
-
SELECT *
|
|
122
|
-
FROM crosstab(
|
|
123
|
-
$$
|
|
124
|
-
SELECT inventory_id, 'uom count ' || check_count, inspected_uom_value
|
|
125
|
-
FROM temp_fixed_columns ORDER BY 1,2,3
|
|
126
|
-
$$,
|
|
127
|
-
$$
|
|
128
|
-
SELECT DISTINCT 'uom count ' || check_count FROM temp_dynamic_columns ORDER BY 1
|
|
129
|
-
$$
|
|
130
|
-
) AS ct (inventory_id varchar, ${uomColumns})
|
|
131
|
-
)
|
|
132
|
-
`);
|
|
133
|
-
// Step 5: Create the temp_final_count table
|
|
134
|
-
await tx.query(`
|
|
135
|
-
CREATE TEMP TABLE temp_final_count ON COMMIT DROP AS (
|
|
136
|
-
SELECT
|
|
137
|
-
inventory_id,
|
|
138
|
-
count_no,
|
|
139
|
-
MAX(inspected_qty) as "final_count",
|
|
140
|
-
MAX(inspected_uom_value) as "final_uom"
|
|
141
|
-
FROM
|
|
142
|
-
inventory_check_items ici
|
|
143
|
-
WHERE
|
|
144
|
-
inventory_check_id = $1
|
|
145
|
-
GROUP BY inventory_id, count_no
|
|
146
|
-
)`, [cycleCount.id]);
|
|
147
|
-
// Step 6: Create the final temp table with combined data
|
|
148
|
-
const jsonColumnNames = definedCrossColumn[0].count_columns
|
|
149
|
-
.split(',')
|
|
150
|
-
.map(column => `p."${column.trim()}" as "${column.trim()}"`)
|
|
151
|
-
.join(',');
|
|
152
|
-
const uomJsonColumnNames = definedCrossColumn[0].uom_columns
|
|
153
|
-
.split(',')
|
|
154
|
-
.map(column => `puom."${column.trim()}" as "${column.trim()}"`)
|
|
155
|
-
.join(',');
|
|
156
|
-
await tx.query(`
|
|
157
|
-
CREATE TEMP TABLE temp_final_data ON COMMIT DROP AS (
|
|
158
|
-
SELECT
|
|
159
|
-
f.*,
|
|
160
|
-
fc.final_count,
|
|
161
|
-
fc.final_uom,
|
|
162
|
-
first_count.origin_qty as "system_qty",
|
|
163
|
-
first_count.origin_batch_no as "system_batch_no",
|
|
164
|
-
first_count.origin_location_name as "system_location_name",
|
|
165
|
-
first_count.origin_uom_value as "system_uom_value",
|
|
166
|
-
row_to_json((SELECT cn FROM (SELECT ${jsonColumnNames}) cn))::varchar as "count_data",
|
|
167
|
-
row_to_json((SELECT cn FROM (SELECT ${uomJsonColumnNames}) cn))::varchar as "count_uom_data",
|
|
168
|
-
ROUND(CAST(fc.final_count - first_count.origin_qty AS NUMERIC), 3) as "count_variance",
|
|
169
|
-
CASE
|
|
170
|
-
WHEN (COALESCE(first_count.origin_batch_no, '') <> COALESCE(f.inspected_batch_no, ''))
|
|
171
|
-
THEN true
|
|
172
|
-
ELSE false
|
|
173
|
-
END AS "BatchNoVariance",
|
|
174
|
-
CASE
|
|
175
|
-
WHEN (COALESCE(first_count.origin_location_id::text, '') <> COALESCE(f.inspected_location_id::text, ''))
|
|
176
|
-
THEN true
|
|
177
|
-
ELSE false
|
|
178
|
-
END AS "LocationVariance",
|
|
179
|
-
CASE
|
|
180
|
-
WHEN (COALESCE(first_count.origin_uom_value, 0) <> COALESCE(f.inspected_uom_value, 0))
|
|
181
|
-
THEN true
|
|
182
|
-
ELSE false
|
|
183
|
-
END AS "UomValueVariance",
|
|
184
|
-
CASE
|
|
185
|
-
WHEN (COALESCE(first_count.origin_expiration_date, '1900-01-01') <> COALESCE(f.inspected_expiration_date, '1900-01-01'))
|
|
186
|
-
THEN true
|
|
187
|
-
ELSE false
|
|
188
|
-
END AS "ExpirationDateVariance"
|
|
189
|
-
FROM temp_fixed_columns f
|
|
190
|
-
INNER JOIN (
|
|
191
|
-
SELECT
|
|
192
|
-
inventory_id,
|
|
193
|
-
count_no,
|
|
194
|
-
origin_qty,
|
|
195
|
-
origin_batch_no,
|
|
196
|
-
origin_location_id,
|
|
197
|
-
origin_location_name,
|
|
198
|
-
origin_uom_value,
|
|
199
|
-
origin_expiration_date
|
|
200
|
-
FROM temp_fixed_columns
|
|
201
|
-
WHERE count_no = 1
|
|
202
|
-
) first_count ON f.inventory_id = first_count.inventory_id
|
|
203
|
-
INNER JOIN temp_pivoted_data p ON f.inventory_id::uuid = p.inventory_id::uuid
|
|
204
|
-
INNER JOIN temp_pivoted_uom_data puom ON f.inventory_id::uuid = puom.inventory_id::uuid
|
|
205
|
-
INNER JOIN temp_final_count fc ON f.inventory_id = fc.inventory_id and f.count_no = fc.count_no
|
|
206
|
-
)
|
|
207
|
-
`);
|
|
208
|
-
const whereConditions = [];
|
|
209
|
-
if ((batchNoVarianceFilter === null || batchNoVarianceFilter === void 0 ? void 0 : batchNoVarianceFilter.value) === true) {
|
|
210
|
-
whereConditions.push('"BatchNoVariance" = true');
|
|
211
|
-
}
|
|
212
|
-
if ((expirationDateVarianceFilter === null || expirationDateVarianceFilter === void 0 ? void 0 : expirationDateVarianceFilter.value) === true) {
|
|
213
|
-
whereConditions.push('"ExpirationDateVariance" = true');
|
|
214
|
-
}
|
|
215
|
-
if ((locationVarianceFilter === null || locationVarianceFilter === void 0 ? void 0 : locationVarianceFilter.value) === true) {
|
|
216
|
-
whereConditions.push('"LocationVariance" = true');
|
|
217
|
-
}
|
|
218
|
-
// Step 7: Select final result
|
|
219
|
-
const result = await tx.query(`
|
|
220
|
-
SELECT * FROM temp_final_data
|
|
221
|
-
${whereConditions.length > 0 ? 'WHERE ' + whereConditions.join(' OR ') : ''}
|
|
222
|
-
`);
|
|
223
|
-
// Step 8: Group inventory id and prepare final response
|
|
224
|
-
const inventoryIds = new Set();
|
|
225
|
-
const items = [];
|
|
226
|
-
result.forEach(itm => {
|
|
227
|
-
if (!inventoryIds.has(itm.inventory_id)) {
|
|
228
|
-
inventoryIds.add(itm.inventory_id);
|
|
229
|
-
let countStatus;
|
|
230
|
-
if (itm.final_count === itm.system_qty) {
|
|
231
|
-
countStatus = 'HIT';
|
|
232
|
-
}
|
|
233
|
-
else if (itm.final_count < itm.system_qty) {
|
|
234
|
-
countStatus = 'SHORT';
|
|
235
|
-
}
|
|
236
|
-
else {
|
|
237
|
-
countStatus = 'EXCESS';
|
|
238
|
-
}
|
|
239
|
-
let data = {
|
|
240
|
-
inventoryCheck: {
|
|
241
|
-
name: itm.name,
|
|
242
|
-
executionDate: itm.execution_date,
|
|
243
|
-
status: itm.status
|
|
244
|
-
},
|
|
245
|
-
inventoryCheckItem: {
|
|
246
|
-
status: itm.invCheckItemStatus,
|
|
247
|
-
originBatchNo: itm.origin_batch_no,
|
|
248
|
-
inspectedBatchNo: itm.inspected_batch_no,
|
|
249
|
-
originUomValue: itm.origin_uom_value,
|
|
250
|
-
inspectedUomValue: itm.inspected_uom_value,
|
|
251
|
-
originQty: itm.origin_qty,
|
|
252
|
-
inspectedQty: itm.inspected_qty,
|
|
253
|
-
originLocation: {
|
|
254
|
-
name: itm.origin_location_name
|
|
255
|
-
},
|
|
256
|
-
inspectedLocation: {
|
|
257
|
-
name: itm.inspected_location_name
|
|
258
|
-
}
|
|
259
|
-
},
|
|
260
|
-
inventory: {
|
|
261
|
-
id: itm.inventory_id,
|
|
262
|
-
cartonId: itm.carton_id,
|
|
263
|
-
palletId: itm.pallet_id,
|
|
264
|
-
packingType: itm.i_packing_type,
|
|
265
|
-
uom: itm.i_uom
|
|
266
|
-
},
|
|
267
|
-
product: {
|
|
268
|
-
sku: itm.product_sku,
|
|
269
|
-
name: itm.product_name,
|
|
270
|
-
brand: itm.product_brand,
|
|
271
|
-
description: itm.product_description
|
|
272
|
-
},
|
|
273
|
-
productDetail: {
|
|
274
|
-
packingType: itm.pd_packing_type,
|
|
275
|
-
uom: itm.pd_uom
|
|
276
|
-
},
|
|
277
|
-
systemQty: itm.system_qty,
|
|
278
|
-
systemBatchNo: itm.system_batch_no,
|
|
279
|
-
systemLocationName: itm.system_location_name,
|
|
280
|
-
systemUomValue: itm.system_uom_value,
|
|
281
|
-
originLocationId: itm.origin_location_id,
|
|
282
|
-
inspectedLocationId: itm.inspected_location_id,
|
|
283
|
-
countData: itm.count_data,
|
|
284
|
-
countUomData: itm.count_uom_data,
|
|
285
|
-
batchNoVariance: itm.BatchNoVariance,
|
|
286
|
-
locationVariance: itm.LocationVariance,
|
|
287
|
-
uomValueVariance: itm.UomValueVariance,
|
|
288
|
-
expirationDateVariance: itm.ExpirationDateVariance,
|
|
289
|
-
finalCount: itm.final_count,
|
|
290
|
-
finalUom: itm.final_uom,
|
|
291
|
-
countVariance: itm.count_variance,
|
|
292
|
-
countStatus,
|
|
293
|
-
company: itm.company,
|
|
294
|
-
partnerDomainId: itm.partner_domain_id
|
|
295
|
-
};
|
|
296
|
-
items.push(data);
|
|
297
|
-
}
|
|
298
|
-
});
|
|
299
|
-
// Step 9: Count total and return the final object
|
|
300
|
-
const finalTotal = inventoryIds.size;
|
|
301
|
-
return {
|
|
302
|
-
items,
|
|
303
|
-
total: finalTotal
|
|
304
|
-
};
|
|
305
|
-
}
|
|
306
|
-
catch (error) {
|
|
307
|
-
throw error;
|
|
308
|
-
}
|
|
309
|
-
}
|
|
310
|
-
};
|
|
311
|
-
//# sourceMappingURL=cycle-count-report.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cycle-count-report.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/reports/cycle-count-report.ts"],"names":[],"mappings":";;;AAEA,2DAA2D;AAG9C,QAAA,gBAAgB,GAAG;IAC9B,KAAK,CAAC,gBAAgB,CAAC,CAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAoC,EAAE,OAAY;QAC9F,IAAI;YACF,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAA0C,OAAO,CAAC,KAAK,CAAA;YAE3E,MAAM,qBAAqB,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAA;YAC9E,MAAM,4BAA4B,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,wBAAwB,CAAC,CAAA;YAC5F,MAAM,sBAAsB,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,kBAAkB,CAAC,CAAA;YAEhF,MAAM,UAAU,GAAmB,MAAM,EAAE,CAAC,aAAa,CAAC,2BAAc,CAAC,CAAC,OAAO,CAAC;gBAChF,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBACvB,SAAS,EAAE,CAAC,QAAQ,CAAC;aACtB,CAAC,CAAA;YAEF,MAAM,EAAE,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAA;YAE1D,8CAA8C;YAC9C,MAAM,EAAE,CAAC,KAAK,CACZ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UA8DE,EACF,CAAC,UAAU,CAAC,EAAE,CAAC,CAChB,CAAA;YAED,gDAAgD;YAChD,MAAM,EAAE,CAAC,KAAK,CACZ;;;;;;;UAOE,EACF,CAAC,UAAU,CAAC,EAAE,CAAC,CAChB,CAAA;YAED,0DAA0D;YAC1D,MAAM,kBAAkB,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC;;;;OAIzC,CAAC,CAAA;YAEF,MAAM,YAAY,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,aAAa;iBACrD,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC;iBAC3C,IAAI,CAAC,IAAI,CAAC,CAAA;YAEb,MAAM,UAAU,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,WAAW;iBACjD,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC;iBAC3C,IAAI,CAAC,IAAI,CAAC,CAAA;YAEb,iDAAiD;YACjD,MAAM,EAAE,CAAC,KAAK,CAAC;;;;;;;;;;;2CAWsB,YAAY;;OAEhD,CAAC,CAAA;YAEF,MAAM,EAAE,CAAC,KAAK,CAAC;;;;;;;;;;;2CAWsB,UAAU;;OAE9C,CAAC,CAAA;YAEF,4CAA4C;YAC5C,MAAM,EAAE,CAAC,KAAK,CACZ;;;;;;;;;;;;UAYE,EACF,CAAC,UAAU,CAAC,EAAE,CAAC,CAChB,CAAA;YAED,yDAAyD;YACzD,MAAM,eAAe,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,aAAa;iBACxD,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,SAAS,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC;iBAC3D,IAAI,CAAC,GAAG,CAAC,CAAA;YAEZ,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,WAAW;iBACzD,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,EAAE,SAAS,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC;iBAC9D,IAAI,CAAC,GAAG,CAAC,CAAA;YAEZ,MAAM,EAAE,CAAC,KAAK,CAAC;;;;;;;;;;kDAU6B,eAAe;kDACf,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwC7D,CAAC,CAAA;YAEF,MAAM,eAAe,GAAG,EAAE,CAAA;YAE1B,IAAI,CAAA,qBAAqB,aAArB,qBAAqB,uBAArB,qBAAqB,CAAE,KAAK,MAAK,IAAI,EAAE;gBACzC,eAAe,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;aACjD;YACD,IAAI,CAAA,4BAA4B,aAA5B,4BAA4B,uBAA5B,4BAA4B,CAAE,KAAK,MAAK,IAAI,EAAE;gBAChD,eAAe,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAA;aACxD;YACD,IAAI,CAAA,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,KAAK,MAAK,IAAI,EAAE;gBAC1C,eAAe,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAA;aAClD;YAED,8BAA8B;YAC9B,MAAM,MAAM,GAAQ,MAAM,EAAE,CAAC,KAAK,CAAC;;UAE/B,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;SAC1E,CAAC,CAAA;YAEJ,wDAAwD;YACxD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAE,CAAA;YAC9B,MAAM,KAAK,GAAG,EAAE,CAAA;YAChB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBACnB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;oBACvC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;oBAElC,IAAI,WAAW,CAAA;oBAEf,IAAI,GAAG,CAAC,WAAW,KAAK,GAAG,CAAC,UAAU,EAAE;wBACtC,WAAW,GAAG,KAAK,CAAA;qBACpB;yBAAM,IAAI,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC,UAAU,EAAE;wBAC3C,WAAW,GAAG,OAAO,CAAA;qBACtB;yBAAM;wBACL,WAAW,GAAG,QAAQ,CAAA;qBACvB;oBAED,IAAI,IAAI,GAAG;wBACT,cAAc,EAAE;4BACd,IAAI,EAAE,GAAG,CAAC,IAAI;4BACd,aAAa,EAAE,GAAG,CAAC,cAAc;4BACjC,MAAM,EAAE,GAAG,CAAC,MAAM;yBACnB;wBACD,kBAAkB,EAAE;4BAClB,MAAM,EAAE,GAAG,CAAC,kBAAkB;4BAC9B,aAAa,EAAE,GAAG,CAAC,eAAe;4BAClC,gBAAgB,EAAE,GAAG,CAAC,kBAAkB;4BACxC,cAAc,EAAE,GAAG,CAAC,gBAAgB;4BACpC,iBAAiB,EAAE,GAAG,CAAC,mBAAmB;4BAC1C,SAAS,EAAE,GAAG,CAAC,UAAU;4BACzB,YAAY,EAAE,GAAG,CAAC,aAAa;4BAC/B,cAAc,EAAE;gCACd,IAAI,EAAE,GAAG,CAAC,oBAAoB;6BAC/B;4BACD,iBAAiB,EAAE;gCACjB,IAAI,EAAE,GAAG,CAAC,uBAAuB;6BAClC;yBACF;wBACD,SAAS,EAAE;4BACT,EAAE,EAAE,GAAG,CAAC,YAAY;4BACpB,QAAQ,EAAE,GAAG,CAAC,SAAS;4BACvB,QAAQ,EAAE,GAAG,CAAC,SAAS;4BACvB,WAAW,EAAE,GAAG,CAAC,cAAc;4BAC/B,GAAG,EAAE,GAAG,CAAC,KAAK;yBACf;wBACD,OAAO,EAAE;4BACP,GAAG,EAAE,GAAG,CAAC,WAAW;4BACpB,IAAI,EAAE,GAAG,CAAC,YAAY;4BACtB,KAAK,EAAE,GAAG,CAAC,aAAa;4BACxB,WAAW,EAAE,GAAG,CAAC,mBAAmB;yBACrC;wBACD,aAAa,EAAE;4BACb,WAAW,EAAE,GAAG,CAAC,eAAe;4BAChC,GAAG,EAAE,GAAG,CAAC,MAAM;yBAChB;wBACD,SAAS,EAAE,GAAG,CAAC,UAAU;wBACzB,aAAa,EAAE,GAAG,CAAC,eAAe;wBAClC,kBAAkB,EAAE,GAAG,CAAC,oBAAoB;wBAC5C,cAAc,EAAE,GAAG,CAAC,gBAAgB;wBACpC,gBAAgB,EAAE,GAAG,CAAC,kBAAkB;wBACxC,mBAAmB,EAAE,GAAG,CAAC,qBAAqB;wBAC9C,SAAS,EAAE,GAAG,CAAC,UAAU;wBACzB,YAAY,EAAE,GAAG,CAAC,cAAc;wBAChC,eAAe,EAAE,GAAG,CAAC,eAAe;wBACpC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;wBACtC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;wBACtC,sBAAsB,EAAE,GAAG,CAAC,sBAAsB;wBAClD,UAAU,EAAE,GAAG,CAAC,WAAW;wBAC3B,QAAQ,EAAE,GAAG,CAAC,SAAS;wBACvB,aAAa,EAAE,GAAG,CAAC,cAAc;wBACjC,WAAW;wBACX,OAAO,EAAE,GAAG,CAAC,OAAO;wBACpB,eAAe,EAAE,GAAG,CAAC,iBAAiB;qBACvC,CAAA;oBACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;iBACjB;YACH,CAAC,CAAC,CAAA;YAEF,kDAAkD;YAClD,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAA;YACpC,OAAO;gBACL,KAAK;gBACL,KAAK,EAAE,UAAU;aAClB,CAAA;SACF;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;CACF,CAAA"}
|
|
@@ -1,218 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.inboundOrderDetailsReport = void 0;
|
|
4
|
-
const auth_base_1 = require("@things-factory/auth-base");
|
|
5
|
-
const biz_base_1 = require("@things-factory/biz-base");
|
|
6
|
-
const utils_1 = require("../../../utils");
|
|
7
|
-
exports.inboundOrderDetailsReport = {
|
|
8
|
-
async inboundOrderDetailsReport(_, params, context) {
|
|
9
|
-
try {
|
|
10
|
-
const { tx } = context.state;
|
|
11
|
-
let bizplaceFilter = { name: '', operator: '', value: '' };
|
|
12
|
-
let userFilter = params.filters.find(data => data.name === 'user');
|
|
13
|
-
let fromDate = params.filters.find(data => data.name === 'fromDate');
|
|
14
|
-
let toDate = params.filters.find(data => data.name === 'toDate');
|
|
15
|
-
let ganNo = params.filters.find(data => data.name === 'ganNo');
|
|
16
|
-
let grnNo = params.filters.find(data => data.name === 'grnNo');
|
|
17
|
-
let poNo = params.filters.find(data => data.name === 'poNo');
|
|
18
|
-
let doNo = params.filters.find(data => data.name === 'doNo');
|
|
19
|
-
let cartonId = params.filters.find(data => data.name === 'cartonId');
|
|
20
|
-
let lotId = params.filters.find(data => data.name == 'palletId');
|
|
21
|
-
let byUnloadComplete = params.filters.find(data => data.name == 'byUnloadComplete');
|
|
22
|
-
if (userFilter) {
|
|
23
|
-
const user = await tx.getRepository(auth_base_1.User).findOne({
|
|
24
|
-
where: { id: userFilter.value },
|
|
25
|
-
relations: ['bizplaces']
|
|
26
|
-
});
|
|
27
|
-
const bizplace = user.bizplaces[0];
|
|
28
|
-
if (!bizplace)
|
|
29
|
-
throw 'Invalid input';
|
|
30
|
-
bizplaceFilter = { name: 'bizplace', operator: 'eq', value: bizplace.id };
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
bizplaceFilter = params.filters.find(data => data.name === 'bizplace');
|
|
34
|
-
}
|
|
35
|
-
if (!bizplaceFilter || !fromDate || !toDate)
|
|
36
|
-
throw 'Invalid input';
|
|
37
|
-
const bizplace = await tx.getRepository(biz_base_1.Bizplace).findOne({
|
|
38
|
-
id: bizplaceFilter.value
|
|
39
|
-
});
|
|
40
|
-
await (0, utils_1.rawProductsQuery)(tx, params, bizplace);
|
|
41
|
-
let extraQueryFilters = '';
|
|
42
|
-
if (ganNo) {
|
|
43
|
-
extraQueryFilters = `${extraQueryFilters} and gan_no like '%${ganNo.value}%' `;
|
|
44
|
-
}
|
|
45
|
-
if (grnNo) {
|
|
46
|
-
extraQueryFilters = `${extraQueryFilters} and grn_no like '%${grnNo.value}%' `;
|
|
47
|
-
}
|
|
48
|
-
if (poNo) {
|
|
49
|
-
extraQueryFilters = `${extraQueryFilters} and purchase_order_name like '%${poNo.value}%' `;
|
|
50
|
-
}
|
|
51
|
-
if (doNo) {
|
|
52
|
-
extraQueryFilters = `${extraQueryFilters} and delivery_order_no like '%${doNo.value}%' `;
|
|
53
|
-
}
|
|
54
|
-
if (lotId) {
|
|
55
|
-
extraQueryFilters = `${extraQueryFilters} and pallet_id like '%${lotId.value}%' `;
|
|
56
|
-
}
|
|
57
|
-
if (cartonId) {
|
|
58
|
-
extraQueryFilters = `${extraQueryFilters} and carton_id like '%${cartonId.value}%' `;
|
|
59
|
-
}
|
|
60
|
-
await tx.query(`
|
|
61
|
-
create temp table temp_inbound_order_report on commit drop as (
|
|
62
|
-
select src2.*,
|
|
63
|
-
w.started_at as "unload_start", w.ended_at as "unload_complete",
|
|
64
|
-
w2.started_at as "putaway_start", w2.ended_at as "putaway_complete",
|
|
65
|
-
cp.id as "supplier_id", cp.company_name as "supplier_name",
|
|
66
|
-
u.name as "accepted_by", u2.name as "unloaded_by", u3.name as "putaway_by"
|
|
67
|
-
from (
|
|
68
|
-
select * from (
|
|
69
|
-
select an.id, an.accepted_by_id, an.name as "gan_no", an.ref_no as "ref_no_1", an.ref_no_2 as "ref_no_2", an.ref_no_3 as "ref_no_3",
|
|
70
|
-
an.loose_item, an.import_cargo, an.container_no, an.container_size, an.own_transport,
|
|
71
|
-
an.accepted_at, u1.name as "order_created_by", an.created_at as "order_created_at", an.delivery_order_no,
|
|
72
|
-
b2.id as "bizplace_id", b2.name as "bizplace_name", b2.description as "bizplace_description",
|
|
73
|
-
grn.name as "grn_no",
|
|
74
|
-
po.id as "purchase_order_id", po.name as "purchase_order_name", po.supplier_id as "po_supplier_id",
|
|
75
|
-
row_number() over(partition by an.name order by an.name, p.sku, oi.batch_id) as "order_line_item",
|
|
76
|
-
p.id as "product_id", p.sku as "product_sku", p.name as "product_name", p.description as "product_description", p.type as "product_type",
|
|
77
|
-
oi.packing_size as "pack_size", oi.packing_type as "pack_type", oi.actual_pack_qty, oi.actual_pack_uom_value, oi.uom, oi.batch_id, oi.batch_id_ref,
|
|
78
|
-
oi.unloaded_at as "unloaded_at", oi.putaway_at as "putaway_at", oi.unloaded_by_id as "oi_unloaded_by_id", oi.putaway_by_id as "oi_putaway_by_id",
|
|
79
|
-
i.pallet_id, i.carton_id, i.expiration_date, i.manufacture_date, i.unit_cost,
|
|
80
|
-
pd.volume as "unit_volume", pd.nett_weight as "unit_nett_weight", pd.gross_weight as "unit_gross_weight", pd.weight_unit as "weight_unit"
|
|
81
|
-
from (
|
|
82
|
-
select * from arrival_notices
|
|
83
|
-
where domain_id = $1 and bizplace_id = $2 and status ='DONE'
|
|
84
|
-
${!byUnloadComplete.value ? `and created_at >= $3 and created_at <= $4` : ``}
|
|
85
|
-
) an
|
|
86
|
-
left join users u1 on u1.id = an.creator_id
|
|
87
|
-
left join purchase_orders po on po.id = an.purchase_order_id
|
|
88
|
-
left join goods_receival_notes grn on grn.arrival_notice_id = an.id
|
|
89
|
-
inner join order_inventories oi on oi.arrival_notice_id = an.id
|
|
90
|
-
inner join bizplaces b2 on b2.id = an.bizplace_id
|
|
91
|
-
inner join inventories i on i.id = oi.inventory_id
|
|
92
|
-
inner join temp_products p on p.id = oi.product_id
|
|
93
|
-
inner join product_details pd on pd.id = oi.product_detail_id
|
|
94
|
-
inner join (
|
|
95
|
-
select
|
|
96
|
-
distinct on (
|
|
97
|
-
arrival_notice_id, product_detail_id,
|
|
98
|
-
batch_id
|
|
99
|
-
) arrival_notice_id, product_detail_id,
|
|
100
|
-
batch_id
|
|
101
|
-
from
|
|
102
|
-
order_products
|
|
103
|
-
where
|
|
104
|
-
actual_pack_qty is not null
|
|
105
|
-
and domain_id = $1
|
|
106
|
-
and bizplace_id = $2
|
|
107
|
-
order by
|
|
108
|
-
arrival_notice_id,
|
|
109
|
-
product_detail_id,
|
|
110
|
-
batch_id,
|
|
111
|
-
created_at
|
|
112
|
-
) op on op.arrival_notice_id = an.id
|
|
113
|
-
and op.product_detail_id = oi.product_detail_id
|
|
114
|
-
and op.batch_id = oi.batch_id
|
|
115
|
-
) src
|
|
116
|
-
where 1=1
|
|
117
|
-
${extraQueryFilters}
|
|
118
|
-
) src2
|
|
119
|
-
left join contact_points cp on cp.id = src2.po_supplier_id
|
|
120
|
-
left join users u on u.id = src2.accepted_by_id
|
|
121
|
-
left join users u2 on u2.id = src2.oi_unloaded_by_id
|
|
122
|
-
left join users u3 on u3.id = src2.oi_putaway_by_id
|
|
123
|
-
left join worksheets w on w.arrival_notice_id = src2.id and w."type" ='UNLOADING'
|
|
124
|
-
left join worksheets w2 on w2.arrival_notice_id = src2.id and w2."type" ='PUTAWAY'
|
|
125
|
-
${byUnloadComplete.value
|
|
126
|
-
? `where w.ended_at >= $3 and w.ended_at <= $4 and w."type" ='UNLOADING' ORDER BY w.ended_at DESC`
|
|
127
|
-
: `ORDER BY order_created_at DESC`}
|
|
128
|
-
)
|
|
129
|
-
`, [context.state.domain.id, bizplace.id, fromDate.value, toDate.value]);
|
|
130
|
-
const total = await tx.query(`
|
|
131
|
-
select count(*) from temp_inbound_order_report
|
|
132
|
-
`);
|
|
133
|
-
const result = await tx.query(`
|
|
134
|
-
select src2.*,
|
|
135
|
-
round((src2.actual_pack_qty * src2.unit_volume)::numeric ,4) as total_volume,
|
|
136
|
-
round((src2.actual_pack_qty * src2.unit_nett_weight)::numeric ,4) as total_unit_nett_weight,
|
|
137
|
-
round((src2.actual_pack_qty * src2.unit_gross_weight)::numeric ,4) as total_unit_gross_weight
|
|
138
|
-
from temp_inbound_order_report src2
|
|
139
|
-
offset $1 limit $2
|
|
140
|
-
`, [(params.pagination.page - 1) * params.pagination.limit, params.pagination.limit]);
|
|
141
|
-
let items = result.map(itm => {
|
|
142
|
-
let data = {
|
|
143
|
-
bizplace: {
|
|
144
|
-
description: itm.bizplace_description,
|
|
145
|
-
name: itm.bizplace_name
|
|
146
|
-
},
|
|
147
|
-
grnNo: itm.grn_no,
|
|
148
|
-
ganNo: itm.gan_no,
|
|
149
|
-
deliveryOrderNo: itm.delivery_order_no,
|
|
150
|
-
refNo1: itm.ref_no_1,
|
|
151
|
-
refNo2: itm.ref_no_2,
|
|
152
|
-
refNo3: itm.ref_no_3,
|
|
153
|
-
looseItem: itm.loose_item,
|
|
154
|
-
importCargo: itm.import_cargo,
|
|
155
|
-
containerNo: itm.container_no,
|
|
156
|
-
containerSize: itm.container_size,
|
|
157
|
-
ownTransport: itm.own_transport,
|
|
158
|
-
acceptedBy: itm.accepted_by,
|
|
159
|
-
acceptedAt: itm.accepted_at,
|
|
160
|
-
orderCreatedBy: itm.order_created_by,
|
|
161
|
-
orderCreatedAt: itm.order_created_at,
|
|
162
|
-
unloadStart: itm.unload_start,
|
|
163
|
-
unloadComplete: itm.unload_complete,
|
|
164
|
-
putawayStart: itm.putaway_start,
|
|
165
|
-
putawayComplete: itm.putaway_complete,
|
|
166
|
-
orderLineItem: itm.order_line_item,
|
|
167
|
-
product: {
|
|
168
|
-
id: itm.product_id,
|
|
169
|
-
sku: itm.product_sku,
|
|
170
|
-
name: itm.product_name,
|
|
171
|
-
description: itm.product_description,
|
|
172
|
-
type: itm.product_type
|
|
173
|
-
},
|
|
174
|
-
purchaseOrderId: itm.purchase_order_id,
|
|
175
|
-
purchaseOrderNo: itm.purchase_order_name,
|
|
176
|
-
packType: itm.pack_type,
|
|
177
|
-
packSize: itm.pack_size,
|
|
178
|
-
actualPackQty: itm.actual_pack_qty,
|
|
179
|
-
actualPackUomValue: itm.actual_pack_uom_value,
|
|
180
|
-
uom: itm.uom,
|
|
181
|
-
unitVolume: itm.unit_volume,
|
|
182
|
-
unitCost: itm.unit_cost,
|
|
183
|
-
totalVolume: itm.total_volume,
|
|
184
|
-
unitNettWeight: itm.unit_nett_weight,
|
|
185
|
-
totalUnitNettWeight: itm.total_unit_nett_weight,
|
|
186
|
-
unitGrossWeight: itm.unit_gross_weight,
|
|
187
|
-
totalUnitGrossWeight: itm.total_unit_gross_weight,
|
|
188
|
-
weightUnit: itm.weight_unit,
|
|
189
|
-
palletId: itm.pallet_id,
|
|
190
|
-
cartonId: itm.carton_id,
|
|
191
|
-
batchId: itm.batch_id,
|
|
192
|
-
batchIdRef: itm.batch_id_ref,
|
|
193
|
-
expirationDate: itm.expiration_date,
|
|
194
|
-
manufactureDate: itm.manufacture_date,
|
|
195
|
-
unloadedAt: itm.unloaded_at,
|
|
196
|
-
unloadedBy: itm.unloaded_by,
|
|
197
|
-
putawayAt: itm.putaway_at,
|
|
198
|
-
putawayBy: itm.putaway_by
|
|
199
|
-
};
|
|
200
|
-
if (itm.supplier_id) {
|
|
201
|
-
data['supplier'] = {
|
|
202
|
-
id: itm.supplier_id,
|
|
203
|
-
name: itm.supplier_name
|
|
204
|
-
};
|
|
205
|
-
}
|
|
206
|
-
return data;
|
|
207
|
-
});
|
|
208
|
-
return {
|
|
209
|
-
items,
|
|
210
|
-
total: total[0].count
|
|
211
|
-
};
|
|
212
|
-
}
|
|
213
|
-
catch (error) {
|
|
214
|
-
throw error;
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
};
|
|
218
|
-
//# sourceMappingURL=inbound-order-details-report.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"inbound-order-details-report.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/reports/inbound-order-details-report.ts"],"names":[],"mappings":"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"}
|