@things-factory/sales-base 5.0.13 → 6.0.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist-server/constants/order.js +4 -1
- package/dist-server/constants/order.js.map +1 -1
- package/dist-server/constants/release-good.js +5 -1
- package/dist-server/constants/release-good.js.map +1 -1
- package/dist-server/controllers/ecommerce/ecommerce-controller.js +1 -1
- package/dist-server/controllers/ecommerce/ecommerce-controller.js.map +1 -1
- package/dist-server/controllers/ecommerce/sellercraft-controller.js +102 -94
- package/dist-server/controllers/ecommerce/sellercraft-controller.js.map +1 -1
- package/dist-server/controllers/order-controller.js +7 -5
- package/dist-server/controllers/order-controller.js.map +1 -1
- package/dist-server/service/arrival-notice/arrival-notice-mutation.js +152 -65
- package/dist-server/service/arrival-notice/arrival-notice-mutation.js.map +1 -1
- package/dist-server/service/arrival-notice/arrival-notice-query.js +15 -16
- package/dist-server/service/arrival-notice/arrival-notice-query.js.map +1 -1
- package/dist-server/service/arrival-notice/arrival-notice-types.js +1 -2
- package/dist-server/service/arrival-notice/arrival-notice-types.js.map +1 -1
- package/dist-server/service/arrival-notice/arrival-notice.js +7 -7
- package/dist-server/service/arrival-notice/arrival-notice.js.map +1 -1
- package/dist-server/service/claim/claim-mutation.js +15 -14
- package/dist-server/service/claim/claim-mutation.js.map +1 -1
- package/dist-server/service/claim/claim-query.js +8 -10
- package/dist-server/service/claim/claim-query.js.map +1 -1
- package/dist-server/service/claim/claim.js +7 -7
- package/dist-server/service/claim/claim.js.map +1 -1
- package/dist-server/service/claim-detail/claim-detail-mutation.js +9 -8
- package/dist-server/service/claim-detail/claim-detail-mutation.js.map +1 -1
- package/dist-server/service/claim-detail/claim-detail-query.js +9 -10
- package/dist-server/service/claim-detail/claim-detail-query.js.map +1 -1
- package/dist-server/service/claim-detail/claim-detail.js +3 -4
- package/dist-server/service/claim-detail/claim-detail.js.map +1 -1
- package/dist-server/service/claim-order/claim-order-mutation.js +9 -8
- package/dist-server/service/claim-order/claim-order-mutation.js.map +1 -1
- package/dist-server/service/claim-order/claim-order-query.js +9 -10
- package/dist-server/service/claim-order/claim-order-query.js.map +1 -1
- package/dist-server/service/claim-order/claim-order.js +3 -4
- package/dist-server/service/claim-order/claim-order.js.map +1 -1
- package/dist-server/service/collection-order/collection-order-mutation.js +15 -14
- package/dist-server/service/collection-order/collection-order-mutation.js.map +1 -1
- package/dist-server/service/collection-order/collection-order-query.js +14 -14
- package/dist-server/service/collection-order/collection-order-query.js.map +1 -1
- package/dist-server/service/collection-order/collection-order-types.js +4 -5
- package/dist-server/service/collection-order/collection-order-types.js.map +1 -1
- package/dist-server/service/collection-order/collection-order.js +7 -7
- package/dist-server/service/collection-order/collection-order.js.map +1 -1
- package/dist-server/service/delivery-order/delivery-order-mutation.js +138 -51
- package/dist-server/service/delivery-order/delivery-order-mutation.js.map +1 -1
- package/dist-server/service/delivery-order/delivery-order-query.js +51 -38
- package/dist-server/service/delivery-order/delivery-order-query.js.map +1 -1
- package/dist-server/service/delivery-order/delivery-order-types.js +22 -3
- package/dist-server/service/delivery-order/delivery-order-types.js.map +1 -1
- package/dist-server/service/delivery-order/delivery-order.js +92 -7
- package/dist-server/service/delivery-order/delivery-order.js.map +1 -1
- package/dist-server/service/draft-release-good/draft-release-good-mutation.js +157 -143
- package/dist-server/service/draft-release-good/draft-release-good-mutation.js.map +1 -1
- package/dist-server/service/draft-release-good/draft-release-good-query.js +54 -24
- package/dist-server/service/draft-release-good/draft-release-good-query.js.map +1 -1
- package/dist-server/service/draft-release-good/draft-release-good-type.js +3 -4
- package/dist-server/service/draft-release-good/draft-release-good-type.js.map +1 -1
- package/dist-server/service/draft-release-good/draft-release-good.js +11 -6
- package/dist-server/service/draft-release-good/draft-release-good.js.map +1 -1
- package/dist-server/service/goods-receival-note/goods-receival-note-mutation.js +12 -11
- package/dist-server/service/goods-receival-note/goods-receival-note-mutation.js.map +1 -1
- package/dist-server/service/goods-receival-note/goods-receival-note-query.js +104 -12
- package/dist-server/service/goods-receival-note/goods-receival-note-query.js.map +1 -1
- package/dist-server/service/goods-receival-note/goods-receival-note-types.js +67 -4
- package/dist-server/service/goods-receival-note/goods-receival-note-types.js.map +1 -1
- package/dist-server/service/goods-receival-note/goods-receival-note.js +46 -5
- package/dist-server/service/goods-receival-note/goods-receival-note.js.map +1 -1
- package/dist-server/service/inventory-check/inventory-check-mutation.js +6 -6
- package/dist-server/service/inventory-check/inventory-check-mutation.js.map +1 -1
- package/dist-server/service/inventory-check/inventory-check-query.js +8 -10
- package/dist-server/service/inventory-check/inventory-check-query.js.map +1 -1
- package/dist-server/service/inventory-check/inventory-check.js +5 -5
- package/dist-server/service/inventory-check/inventory-check.js.map +1 -1
- package/dist-server/service/invoice/invoice-mutation.js +5 -5
- package/dist-server/service/invoice/invoice-mutation.js.map +1 -1
- package/dist-server/service/invoice/invoice-query.js +7 -9
- package/dist-server/service/invoice/invoice-query.js.map +1 -1
- package/dist-server/service/invoice/invoice-types.js +2 -3
- package/dist-server/service/invoice/invoice-types.js.map +1 -1
- package/dist-server/service/invoice/invoice.js +3 -4
- package/dist-server/service/invoice/invoice.js.map +1 -1
- package/dist-server/service/invoice-product/invoice-product-mutation.js +1 -1
- package/dist-server/service/invoice-product/invoice-product-mutation.js.map +1 -1
- package/dist-server/service/invoice-product/invoice-product-query.js +7 -9
- package/dist-server/service/invoice-product/invoice-product-query.js.map +1 -1
- package/dist-server/service/invoice-product/invoice-product.js +5 -5
- package/dist-server/service/invoice-product/invoice-product.js.map +1 -1
- package/dist-server/service/job-sheet/job-sheet-mutation.js +5 -5
- package/dist-server/service/job-sheet/job-sheet-mutation.js.map +1 -1
- package/dist-server/service/job-sheet/job-sheet-query.js +6 -8
- package/dist-server/service/job-sheet/job-sheet-query.js.map +1 -1
- package/dist-server/service/job-sheet/job-sheet.js +5 -5
- package/dist-server/service/job-sheet/job-sheet.js.map +1 -1
- package/dist-server/service/manifest/manifest-mutation.js +84 -4
- package/dist-server/service/manifest/manifest-mutation.js.map +1 -1
- package/dist-server/service/manifest/manifest-query.js +52 -19
- package/dist-server/service/manifest/manifest-query.js.map +1 -1
- package/dist-server/service/manifest/manifest-type.js +8 -0
- package/dist-server/service/manifest/manifest-type.js.map +1 -1
- package/dist-server/service/manifest/manifest.js +8 -4
- package/dist-server/service/manifest/manifest.js.map +1 -1
- package/dist-server/service/order-inventory/order-inventory-mutation.js +3 -3
- package/dist-server/service/order-inventory/order-inventory-mutation.js.map +1 -1
- package/dist-server/service/order-inventory/order-inventory-query.js +202 -221
- package/dist-server/service/order-inventory/order-inventory-query.js.map +1 -1
- package/dist-server/service/order-inventory/order-inventory-types.js +15 -15
- package/dist-server/service/order-inventory/order-inventory-types.js.map +1 -1
- package/dist-server/service/order-inventory/order-inventory.js +45 -15
- package/dist-server/service/order-inventory/order-inventory.js.map +1 -1
- package/dist-server/service/order-product/order-product-mutation.js +2 -2
- package/dist-server/service/order-product/order-product-mutation.js.map +1 -1
- package/dist-server/service/order-product/order-product-query.js +44 -14
- package/dist-server/service/order-product/order-product-query.js.map +1 -1
- package/dist-server/service/order-product/order-product-types.js +18 -19
- package/dist-server/service/order-product/order-product-types.js.map +1 -1
- package/dist-server/service/order-product/order-product.js +14 -11
- package/dist-server/service/order-product/order-product.js.map +1 -1
- package/dist-server/service/order-tote/order-tote-mutation.js +2 -2
- package/dist-server/service/order-tote/order-tote-mutation.js.map +1 -1
- package/dist-server/service/order-tote/order-tote-query.js +13 -14
- package/dist-server/service/order-tote/order-tote-query.js.map +1 -1
- package/dist-server/service/order-tote/order-tote-types.js +4 -5
- package/dist-server/service/order-tote/order-tote-types.js.map +1 -1
- package/dist-server/service/order-tote/order-tote.js +6 -5
- package/dist-server/service/order-tote/order-tote.js.map +1 -1
- package/dist-server/service/order-tote-item/order-tote-item-mutation.js +2 -2
- package/dist-server/service/order-tote-item/order-tote-item-mutation.js.map +1 -1
- package/dist-server/service/order-tote-item/order-tote-item-query.js +7 -9
- package/dist-server/service/order-tote-item/order-tote-item-query.js.map +1 -1
- package/dist-server/service/order-tote-item/order-tote-item-types.js +5 -6
- package/dist-server/service/order-tote-item/order-tote-item-types.js.map +1 -1
- package/dist-server/service/order-tote-item/order-tote-item.js +2 -3
- package/dist-server/service/order-tote-item/order-tote-item.js.map +1 -1
- package/dist-server/service/order-tote-seal/order-tote-seal-mutation.js +2 -2
- package/dist-server/service/order-tote-seal/order-tote-seal-mutation.js.map +1 -1
- package/dist-server/service/order-tote-seal/order-tote-seal-query.js +8 -10
- package/dist-server/service/order-tote-seal/order-tote-seal-query.js.map +1 -1
- package/dist-server/service/order-tote-seal/order-tote-seal-types.js +2 -3
- package/dist-server/service/order-tote-seal/order-tote-seal-types.js.map +1 -1
- package/dist-server/service/order-tote-seal/order-tote-seal.js +2 -3
- package/dist-server/service/order-tote-seal/order-tote-seal.js.map +1 -1
- package/dist-server/service/order-vas/order-vas-mutation.js +1 -1
- package/dist-server/service/order-vas/order-vas-mutation.js.map +1 -1
- package/dist-server/service/order-vas/order-vas-query.js +8 -10
- package/dist-server/service/order-vas/order-vas-query.js.map +1 -1
- package/dist-server/service/order-vas/order-vas-types.js +16 -17
- package/dist-server/service/order-vas/order-vas-types.js.map +1 -1
- package/dist-server/service/order-vas/order-vas.js +7 -7
- package/dist-server/service/order-vas/order-vas.js.map +1 -1
- package/dist-server/service/others/other-query.js +48 -30
- package/dist-server/service/others/other-query.js.map +1 -1
- package/dist-server/service/purchase-order/purchase-order-mutation.js +36 -34
- package/dist-server/service/purchase-order/purchase-order-mutation.js.map +1 -1
- package/dist-server/service/purchase-order/purchase-order-query.js +11 -12
- package/dist-server/service/purchase-order/purchase-order-query.js.map +1 -1
- package/dist-server/service/purchase-order/purchase-order-types.js +8 -9
- package/dist-server/service/purchase-order/purchase-order-types.js.map +1 -1
- package/dist-server/service/purchase-order/purchase-order.js +8 -8
- package/dist-server/service/purchase-order/purchase-order.js.map +1 -1
- package/dist-server/service/purchase-order-other-charge/purchase-order-other-charge-mutation.js +1 -1
- package/dist-server/service/purchase-order-other-charge/purchase-order-other-charge-mutation.js.map +1 -1
- package/dist-server/service/purchase-order-other-charge/purchase-order-other-charge-query.js +9 -10
- package/dist-server/service/purchase-order-other-charge/purchase-order-other-charge-query.js.map +1 -1
- package/dist-server/service/purchase-order-other-charge/purchase-order-other-charge.js +3 -4
- package/dist-server/service/purchase-order-other-charge/purchase-order-other-charge.js.map +1 -1
- package/dist-server/service/release-good/release-good-mutation.js +182 -94
- package/dist-server/service/release-good/release-good-mutation.js.map +1 -1
- package/dist-server/service/release-good/release-good-query.js +251 -172
- package/dist-server/service/release-good/release-good-query.js.map +1 -1
- package/dist-server/service/release-good/release-good-types.js +181 -9
- package/dist-server/service/release-good/release-good-types.js.map +1 -1
- package/dist-server/service/release-good/release-good.js +64 -13
- package/dist-server/service/release-good/release-good.js.map +1 -1
- package/dist-server/service/retail-replenishment-order/retail-replenishment-order-mutation.js +19 -14
- package/dist-server/service/retail-replenishment-order/retail-replenishment-order-mutation.js.map +1 -1
- package/dist-server/service/retail-replenishment-order/retail-replenishment-order-query.js +8 -10
- package/dist-server/service/retail-replenishment-order/retail-replenishment-order-query.js.map +1 -1
- package/dist-server/service/retail-replenishment-order/retail-replenishment-order-types.js +6 -7
- package/dist-server/service/retail-replenishment-order/retail-replenishment-order-types.js.map +1 -1
- package/dist-server/service/retail-replenishment-order/retail-replenishment-order.js +5 -5
- package/dist-server/service/retail-replenishment-order/retail-replenishment-order.js.map +1 -1
- package/dist-server/service/return-order/return-order-mutation.js +38 -27
- package/dist-server/service/return-order/return-order-mutation.js.map +1 -1
- package/dist-server/service/return-order/return-order-query.js +14 -16
- package/dist-server/service/return-order/return-order-query.js.map +1 -1
- package/dist-server/service/return-order/return-order-types.js +9 -9
- package/dist-server/service/return-order/return-order-types.js.map +1 -1
- package/dist-server/service/return-order/return-order.js +6 -6
- package/dist-server/service/return-order/return-order.js.map +1 -1
- package/dist-server/service/reverse-kitting-order/reverse-kitting-order-mutation.js +17 -13
- package/dist-server/service/reverse-kitting-order/reverse-kitting-order-mutation.js.map +1 -1
- package/dist-server/service/reverse-kitting-order/reverse-kitting-order-query.js +13 -14
- package/dist-server/service/reverse-kitting-order/reverse-kitting-order-query.js.map +1 -1
- package/dist-server/service/reverse-kitting-order/reverse-kitting-order-type.js +9 -9
- package/dist-server/service/reverse-kitting-order/reverse-kitting-order-type.js.map +1 -1
- package/dist-server/service/reverse-kitting-order/reverse-kitting-order.js +8 -8
- package/dist-server/service/reverse-kitting-order/reverse-kitting-order.js.map +1 -1
- package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-mutation.js +4 -4
- package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-mutation.js.map +1 -1
- package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-query.js +7 -9
- package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-query.js.map +1 -1
- package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-type.js +4 -5
- package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-type.js.map +1 -1
- package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory.js +7 -7
- package/dist-server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory.js.map +1 -1
- package/dist-server/service/shipping-order/shipping-order-mutation.js +2 -2
- package/dist-server/service/shipping-order/shipping-order-mutation.js.map +1 -1
- package/dist-server/service/shipping-order/shipping-order-query.js +9 -10
- package/dist-server/service/shipping-order/shipping-order-query.js.map +1 -1
- package/dist-server/service/shipping-order/shipping-order-types.js +21 -1
- package/dist-server/service/shipping-order/shipping-order-types.js.map +1 -1
- package/dist-server/service/shipping-order/shipping-order.js +27 -7
- package/dist-server/service/shipping-order/shipping-order.js.map +1 -1
- package/dist-server/service/transfer-order/transfer-order-mutation.js +19 -14
- package/dist-server/service/transfer-order/transfer-order-mutation.js.map +1 -1
- package/dist-server/service/transfer-order/transfer-order-query.js +8 -10
- package/dist-server/service/transfer-order/transfer-order-query.js.map +1 -1
- package/dist-server/service/transfer-order/transfer-order-types.js +1 -2
- package/dist-server/service/transfer-order/transfer-order-types.js.map +1 -1
- package/dist-server/service/transfer-order/transfer-order.js +5 -5
- package/dist-server/service/transfer-order/transfer-order.js.map +1 -1
- package/dist-server/service/vas/vas-mutation.js +2 -2
- package/dist-server/service/vas/vas-mutation.js.map +1 -1
- package/dist-server/service/vas/vas-query.js +8 -10
- package/dist-server/service/vas/vas-query.js.map +1 -1
- package/dist-server/service/vas/vas.js +3 -4
- package/dist-server/service/vas/vas.js.map +1 -1
- package/dist-server/service/vas-order/vas-order-mutation.js +20 -15
- package/dist-server/service/vas-order/vas-order-mutation.js.map +1 -1
- package/dist-server/service/vas-order/vas-order-query.js +11 -12
- package/dist-server/service/vas-order/vas-order-query.js.map +1 -1
- package/dist-server/service/vas-order/vas-order.js +5 -5
- package/dist-server/service/vas-order/vas-order.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/dist-server/utils/datetime-util.js +49 -0
- package/dist-server/utils/datetime-util.js.map +1 -0
- package/dist-server/utils/index.js +1 -0
- package/dist-server/utils/index.js.map +1 -1
- package/dist-server/utils/inventory-util.js +89 -29
- package/dist-server/utils/inventory-util.js.map +1 -1
- package/package.json +13 -13
- package/server/constants/order.ts +4 -1
- package/server/constants/release-good.ts +6 -3
- package/server/controllers/ecommerce/ecommerce-controller.ts +1 -1
- package/server/controllers/ecommerce/sellercraft-controller.ts +124 -107
- package/server/controllers/order-controller.ts +7 -5
- package/server/service/arrival-notice/arrival-notice-mutation.ts +204 -91
- package/server/service/arrival-notice/arrival-notice-query.ts +17 -17
- package/server/service/claim/claim-mutation.ts +20 -14
- package/server/service/claim/claim-query.ts +10 -9
- package/server/service/claim-detail/claim-detail-mutation.ts +16 -10
- package/server/service/claim-detail/claim-detail-query.ts +13 -8
- package/server/service/claim-order/claim-order-mutation.ts +16 -10
- package/server/service/claim-order/claim-order-query.ts +10 -8
- package/server/service/collection-order/collection-order-mutation.ts +31 -32
- package/server/service/collection-order/collection-order-query.ts +18 -15
- package/server/service/delivery-order/delivery-order-mutation.ts +206 -73
- package/server/service/delivery-order/delivery-order-query.ts +90 -53
- package/server/service/delivery-order/delivery-order-types.ts +15 -0
- package/server/service/delivery-order/delivery-order.ts +68 -0
- package/server/service/draft-release-good/draft-release-good-mutation.ts +208 -183
- package/server/service/draft-release-good/draft-release-good-query.ts +81 -44
- package/server/service/draft-release-good/draft-release-good.ts +7 -3
- package/server/service/goods-receival-note/goods-receival-note-mutation.ts +23 -18
- package/server/service/goods-receival-note/goods-receival-note-query.ts +126 -15
- package/server/service/goods-receival-note/goods-receival-note-types.ts +48 -0
- package/server/service/goods-receival-note/goods-receival-note.ts +32 -0
- package/server/service/inventory-check/inventory-check-mutation.ts +24 -19
- package/server/service/inventory-check/inventory-check-query.ts +10 -9
- package/server/service/invoice/invoice-mutation.ts +14 -11
- package/server/service/invoice/invoice-query.ts +8 -9
- package/server/service/invoice-product/invoice-product-mutation.ts +4 -4
- package/server/service/invoice-product/invoice-product-query.ts +8 -9
- package/server/service/job-sheet/job-sheet-mutation.ts +12 -10
- package/server/service/job-sheet/job-sheet-query.ts +16 -11
- package/server/service/manifest/manifest-mutation.ts +93 -8
- package/server/service/manifest/manifest-query.ts +73 -23
- package/server/service/manifest/manifest-type.ts +6 -0
- package/server/service/manifest/manifest.ts +6 -2
- package/server/service/order-inventory/order-inventory-mutation.ts +13 -12
- package/server/service/order-inventory/order-inventory-query.ts +226 -253
- package/server/service/order-inventory/order-inventory.ts +26 -2
- package/server/service/order-product/order-product-mutation.ts +11 -10
- package/server/service/order-product/order-product-query.ts +55 -18
- package/server/service/order-product/order-product.ts +7 -0
- package/server/service/order-tote/order-tote-mutation.ts +10 -9
- package/server/service/order-tote/order-tote-query.ts +13 -15
- package/server/service/order-tote/order-tote.ts +13 -2
- package/server/service/order-tote-item/order-tote-item-mutation.ts +10 -9
- package/server/service/order-tote-item/order-tote-item-query.ts +12 -18
- package/server/service/order-tote-seal/order-tote-seal-mutation.ts +10 -9
- package/server/service/order-tote-seal/order-tote-seal-query.ts +10 -11
- package/server/service/order-vas/order-vas-mutation.ts +4 -5
- package/server/service/order-vas/order-vas-query.ts +10 -9
- package/server/service/others/other-query.ts +76 -54
- package/server/service/purchase-order/purchase-order-mutation.ts +46 -46
- package/server/service/purchase-order/purchase-order-query.ts +13 -11
- package/server/service/purchase-order-other-charge/purchase-order-other-charge-mutation.ts +7 -7
- package/server/service/purchase-order-other-charge/purchase-order-other-charge-query.ts +14 -9
- package/server/service/release-good/release-good-mutation.ts +297 -134
- package/server/service/release-good/release-good-query.ts +268 -186
- package/server/service/release-good/release-good-types.ts +132 -4
- package/server/service/release-good/release-good.ts +55 -24
- package/server/service/retail-replenishment-order/retail-replenishment-order-mutation.ts +35 -29
- package/server/service/retail-replenishment-order/retail-replenishment-order-query.ts +13 -9
- package/server/service/retail-replenishment-order/retail-replenishment-order-types.ts +7 -5
- package/server/service/return-order/return-order-mutation.ts +82 -54
- package/server/service/return-order/return-order-query.ts +21 -19
- package/server/service/reverse-kitting-order/reverse-kitting-order-mutation.ts +38 -23
- package/server/service/reverse-kitting-order/reverse-kitting-order-query.ts +19 -16
- package/server/service/reverse-kitting-order/reverse-kitting-order.ts +2 -2
- package/server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-mutation.ts +9 -9
- package/server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-query.ts +7 -8
- package/server/service/shipping-order/shipping-order-mutation.ts +11 -11
- package/server/service/shipping-order/shipping-order-query.ts +13 -11
- package/server/service/shipping-order/shipping-order-types.ts +16 -1
- package/server/service/shipping-order/shipping-order.ts +18 -2
- package/server/service/transfer-order/transfer-order-mutation.ts +34 -25
- package/server/service/transfer-order/transfer-order-query.ts +11 -10
- package/server/service/vas/vas-mutation.ts +13 -15
- package/server/service/vas/vas-query.ts +12 -10
- package/server/service/vas-order/vas-order-mutation.ts +38 -28
- package/server/service/vas-order/vas-order-query.ts +15 -13
- package/server/utils/datetime-util.ts +54 -0
- package/server/utils/index.ts +1 -0
- package/server/utils/inventory-util.ts +128 -34
- package/translations/en.json +4 -0
- package/translations/ko.json +6 -2
- package/translations/ms.json +5 -1
|
@@ -13,10 +13,11 @@ const integration_marketplace_1 = require("@things-factory/integration-marketpla
|
|
|
13
13
|
const integration_sellercraft_1 = require("@things-factory/integration-sellercraft");
|
|
14
14
|
const integration_sftp_1 = require("@things-factory/integration-sftp");
|
|
15
15
|
const marketplace_base_1 = require("@things-factory/marketplace-base");
|
|
16
|
-
const notification_1 = require("@things-factory/notification");
|
|
17
16
|
const product_base_1 = require("@things-factory/product-base");
|
|
18
17
|
const setting_base_1 = require("@things-factory/setting-base");
|
|
18
|
+
const shell_1 = require("@things-factory/shell");
|
|
19
19
|
const warehouse_base_1 = require("@things-factory/warehouse-base");
|
|
20
|
+
// import { NewOrderProduct } from '../order-product/order-product-types'
|
|
20
21
|
const constants_1 = require("../../constants");
|
|
21
22
|
const controllers_1 = require("../../controllers");
|
|
22
23
|
const errors_1 = require("../../errors");
|
|
@@ -38,10 +39,10 @@ let ReleaseGoodMutation = class ReleaseGoodMutation {
|
|
|
38
39
|
if (!bizplaceId)
|
|
39
40
|
throw new Error('company ID is not provided');
|
|
40
41
|
let createdReleaseGoods = [];
|
|
41
|
-
const settingRepo = (tx === null || tx === void 0 ? void 0 : tx.getRepository(setting_base_1.Setting)) || (0,
|
|
42
|
+
const settingRepo = (tx === null || tx === void 0 ? void 0 : tx.getRepository(setting_base_1.Setting)) || (0, shell_1.getRepository)(setting_base_1.Setting);
|
|
42
43
|
const roNoSetting = await settingRepo.findOne({
|
|
43
44
|
where: {
|
|
44
|
-
domain,
|
|
45
|
+
domain: { id: domain.id },
|
|
45
46
|
name: constants_1.ORDER_NUMBER_SETTING_KEY.RO_NUMBER_RULE
|
|
46
47
|
}
|
|
47
48
|
});
|
|
@@ -88,17 +89,17 @@ let ReleaseGoodMutation = class ReleaseGoodMutation {
|
|
|
88
89
|
async deleteReleaseGoods(names, context) {
|
|
89
90
|
const { tx } = context.state;
|
|
90
91
|
await tx.getRepository(release_good_1.ReleaseGood).delete({
|
|
91
|
-
domain: context.state.domain,
|
|
92
|
+
domain: { id: context.state.domain.id },
|
|
92
93
|
name: (0, typeorm_1.In)(names)
|
|
93
94
|
});
|
|
94
95
|
return true;
|
|
95
96
|
}
|
|
96
|
-
async generateReleaseGood(context, attachments, releaseGood, shippingOrder) {
|
|
97
|
+
async generateReleaseGood(context, attachments, releaseGood, shippingOrder, shippingOrderInfo) {
|
|
97
98
|
const { tx } = context.state;
|
|
98
|
-
const createdReleaseGood = await generateReleaseGoodFunction(null, releaseGood, shippingOrder, attachments, context, tx);
|
|
99
|
+
const createdReleaseGood = await generateReleaseGoodFunction(null, releaseGood, shippingOrder, shippingOrderInfo, attachments, context, tx);
|
|
99
100
|
return createdReleaseGood;
|
|
100
101
|
}
|
|
101
|
-
async updateReleaseGoodDetails(context, releaseGood, shippingOrder) {
|
|
102
|
+
async updateReleaseGoodDetails(context, releaseGood, shippingOrder, shippingOrderInfo) {
|
|
102
103
|
const { tx, domain, user } = context.state;
|
|
103
104
|
let foundReleaseGood = await tx.getRepository(release_good_1.ReleaseGood).findOne({
|
|
104
105
|
where: { id: releaseGood.id, domain },
|
|
@@ -108,6 +109,11 @@ let ReleaseGoodMutation = class ReleaseGoodMutation {
|
|
|
108
109
|
throw new Error(`Release order ${releaseGood.id} is not found.`);
|
|
109
110
|
}
|
|
110
111
|
// case to update existing shippingOrder
|
|
112
|
+
if (shippingOrder !== null) {
|
|
113
|
+
shippingOrder.remark = shippingOrder.exportRemark;
|
|
114
|
+
shippingOrder.containerClosureDateTime = new Date(shippingOrder.containerClosureDate);
|
|
115
|
+
delete shippingOrder.exportRemark;
|
|
116
|
+
}
|
|
111
117
|
if (foundReleaseGood.shippingOrder && shippingOrder) {
|
|
112
118
|
await tx.getRepository(shipping_order_1.ShippingOrder).update(foundReleaseGood.shippingOrder.id, shippingOrder);
|
|
113
119
|
}
|
|
@@ -116,7 +122,7 @@ let ReleaseGoodMutation = class ReleaseGoodMutation {
|
|
|
116
122
|
let newShippingOrder = await tx.getRepository(shipping_order_1.ShippingOrder).save(Object.assign(Object.assign({}, shippingOrder), { name: utils_1.OrderNoGenerator.shippingOrder(), domain, bizplace: await (0, biz_base_1.getMyBizplace)(domain, user), status: constants_1.ORDER_STATUS.PENDING, creator: user, updater: user }));
|
|
117
123
|
releaseGood.shippingOrder = newShippingOrder;
|
|
118
124
|
}
|
|
119
|
-
foundReleaseGood = await tx.getRepository(release_good_1.ReleaseGood).save(Object.assign(Object.assign(Object.assign({}, foundReleaseGood), releaseGood), { remark: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.remark) ? releaseGood.remark : null }));
|
|
125
|
+
foundReleaseGood = await tx.getRepository(release_good_1.ReleaseGood).save(Object.assign(Object.assign(Object.assign(Object.assign({}, foundReleaseGood), releaseGood), shippingOrderInfo), { remark: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.remark) ? releaseGood.remark : null }));
|
|
120
126
|
return foundReleaseGood;
|
|
121
127
|
}
|
|
122
128
|
async confirmReleaseGood(name, context) {
|
|
@@ -124,7 +130,8 @@ let ReleaseGoodMutation = class ReleaseGoodMutation {
|
|
|
124
130
|
const releaseGood = await confirmReleaseGood(name, context, tx);
|
|
125
131
|
// If current RO has cross docking
|
|
126
132
|
if (releaseGood.crossDocking) {
|
|
127
|
-
const { arrivalNotice } = await tx.getRepository(release_good_1.ReleaseGood).findOne(
|
|
133
|
+
const { arrivalNotice } = await tx.getRepository(release_good_1.ReleaseGood).findOne({
|
|
134
|
+
where: { id: releaseGood.id },
|
|
128
135
|
relations: ['arrivalNotice']
|
|
129
136
|
});
|
|
130
137
|
// If status of related GAN is not equal to PENDING_RECEIVE (i.e. Wasn't confirmed yet.)
|
|
@@ -145,7 +152,7 @@ let ReleaseGoodMutation = class ReleaseGoodMutation {
|
|
|
145
152
|
}
|
|
146
153
|
async addReleaseGood(context, releaseGood, shippingOrder, file) {
|
|
147
154
|
const { tx } = context.state;
|
|
148
|
-
const createdRO = await generateReleaseGoodFunction(null, releaseGood, shippingOrder, file, context, tx);
|
|
155
|
+
const createdRO = await generateReleaseGoodFunction(null, releaseGood, shippingOrder, null, file, context, tx);
|
|
149
156
|
const confirmedRO = await confirmReleaseGood(createdRO.name, context, tx);
|
|
150
157
|
const receivedRO = await receiveReleaseGood(confirmedRO.name, context, tx);
|
|
151
158
|
return receivedRO;
|
|
@@ -153,7 +160,7 @@ let ReleaseGoodMutation = class ReleaseGoodMutation {
|
|
|
153
160
|
async executeOrderRemark(releaseGoodNo, context) {
|
|
154
161
|
const { domain, tx, user } = context.state;
|
|
155
162
|
await tx.getRepository(release_good_1.ReleaseGood).update({
|
|
156
|
-
domain,
|
|
163
|
+
domain: { id: domain.id },
|
|
157
164
|
name: releaseGoodNo
|
|
158
165
|
}, {
|
|
159
166
|
checkedRemarkAt: new Date(),
|
|
@@ -202,9 +209,11 @@ tslib_1.__decorate([
|
|
|
202
209
|
tslib_1.__param(1, (0, type_graphql_1.Arg)('attachments', type => [GraphQLUpload_js_1.default], { nullable: true })),
|
|
203
210
|
tslib_1.__param(2, (0, type_graphql_1.Arg)('releaseGood', type => release_good_types_1.NewReleaseGood, { nullable: true })),
|
|
204
211
|
tslib_1.__param(3, (0, type_graphql_1.Arg)('shippingOrder', type => shipping_order_types_1.ShippingOrderPatch, { nullable: true })),
|
|
212
|
+
tslib_1.__param(4, (0, type_graphql_1.Arg)('shippingOrderInfo', type => release_good_types_1.ShippingOrderInfoPatch, { nullable: true })),
|
|
205
213
|
tslib_1.__metadata("design:type", Function),
|
|
206
214
|
tslib_1.__metadata("design:paramtypes", [Object, Array, release_good_types_1.NewReleaseGood,
|
|
207
|
-
shipping_order_types_1.ShippingOrderPatch
|
|
215
|
+
shipping_order_types_1.ShippingOrderPatch,
|
|
216
|
+
release_good_types_1.ShippingOrderInfoPatch]),
|
|
208
217
|
tslib_1.__metadata("design:returntype", Promise)
|
|
209
218
|
], ReleaseGoodMutation.prototype, "generateReleaseGood", null);
|
|
210
219
|
tslib_1.__decorate([
|
|
@@ -214,9 +223,11 @@ tslib_1.__decorate([
|
|
|
214
223
|
tslib_1.__param(0, (0, type_graphql_1.Ctx)()),
|
|
215
224
|
tslib_1.__param(1, (0, type_graphql_1.Arg)('releaseGood', type => release_good_types_1.ReleaseGoodPatch, { nullable: true })),
|
|
216
225
|
tslib_1.__param(2, (0, type_graphql_1.Arg)('shippingOrder', type => shipping_order_types_1.ShippingOrderPatch, { nullable: true })),
|
|
226
|
+
tslib_1.__param(3, (0, type_graphql_1.Arg)('shippingOrderInfo', type => release_good_types_1.ShippingOrderInfoPatch, { nullable: true })),
|
|
217
227
|
tslib_1.__metadata("design:type", Function),
|
|
218
228
|
tslib_1.__metadata("design:paramtypes", [Object, release_good_types_1.ReleaseGoodPatch,
|
|
219
|
-
shipping_order_types_1.ShippingOrderPatch
|
|
229
|
+
shipping_order_types_1.ShippingOrderPatch,
|
|
230
|
+
release_good_types_1.ShippingOrderInfoPatch]),
|
|
220
231
|
tslib_1.__metadata("design:returntype", Promise)
|
|
221
232
|
], ReleaseGoodMutation.prototype, "updateReleaseGoodDetails", null);
|
|
222
233
|
tslib_1.__decorate([
|
|
@@ -279,7 +290,7 @@ exports.ReleaseGoodMutation = ReleaseGoodMutation;
|
|
|
279
290
|
async function deleteReleaseGood(tx, name, user, domain) {
|
|
280
291
|
var _a;
|
|
281
292
|
let foundReleaseOrder = await tx.getRepository(release_good_1.ReleaseGood).findOne({
|
|
282
|
-
where: { domain, name },
|
|
293
|
+
where: { domain: { id: domain.id }, name },
|
|
283
294
|
relations: [
|
|
284
295
|
'arrivalNotice',
|
|
285
296
|
'orderInventories',
|
|
@@ -292,7 +303,7 @@ async function deleteReleaseGood(tx, name, user, domain) {
|
|
|
292
303
|
]
|
|
293
304
|
});
|
|
294
305
|
if (!foundReleaseOrder)
|
|
295
|
-
throw new Error(`
|
|
306
|
+
throw new Error(`Release order doesn't exists.`);
|
|
296
307
|
const foundOIs = foundReleaseOrder.orderInventories;
|
|
297
308
|
const foundOVs = foundReleaseOrder.orderVass;
|
|
298
309
|
const foundSO = foundReleaseOrder.shippingOrder;
|
|
@@ -300,7 +311,7 @@ async function deleteReleaseGood(tx, name, user, domain) {
|
|
|
300
311
|
if (foundReleaseOrder === null || foundReleaseOrder === void 0 ? void 0 : foundReleaseOrder.ownTransport) {
|
|
301
312
|
foundAttachment = await tx.getRepository(attachment_base_1.Attachment).findOne({
|
|
302
313
|
where: {
|
|
303
|
-
domain,
|
|
314
|
+
domain: { id: domain.id },
|
|
304
315
|
refBy: foundReleaseOrder.id,
|
|
305
316
|
category: constants_1.ATTACHMENT_TYPE.DELIVERY_ORDER
|
|
306
317
|
}
|
|
@@ -310,7 +321,7 @@ async function deleteReleaseGood(tx, name, user, domain) {
|
|
|
310
321
|
await Promise.all(foundOIs.map(async (oi) => {
|
|
311
322
|
var _a, _b;
|
|
312
323
|
if ((_a = oi === null || oi === void 0 ? void 0 : oi.inventory) === null || _a === void 0 ? void 0 : _a.id) {
|
|
313
|
-
oi.inventory = await tx.getRepository(warehouse_base_1.Inventory).
|
|
324
|
+
oi.inventory = await tx.getRepository(warehouse_base_1.Inventory).findOneBy({ id: oi.inventory.id });
|
|
314
325
|
await tx.getRepository(warehouse_base_1.Inventory).save(Object.assign(Object.assign({}, oi.inventory), { lockedQty: oi.inventory.lockedQty - oi.releaseQty, lockedUomValue: oi.inventory.lockedUomValue - oi.releaseUomValue, updater: user }));
|
|
315
326
|
}
|
|
316
327
|
await tx.getRepository(order_inventory_1.OrderInventory).delete({ id: oi.id });
|
|
@@ -345,20 +356,21 @@ async function deleteReleaseGood(tx, name, user, domain) {
|
|
|
345
356
|
return true;
|
|
346
357
|
}
|
|
347
358
|
exports.deleteReleaseGood = deleteReleaseGood;
|
|
348
|
-
async function generateReleaseGoodFunction(_, releaseGood, shippingOrder, attachments, context, tx) {
|
|
349
|
-
var _a, _b;
|
|
359
|
+
async function generateReleaseGoodFunction(_, releaseGood, shippingOrder, shippingOrderInfo, attachments, context, tx) {
|
|
360
|
+
var _a, _b, _c, _d, _e;
|
|
350
361
|
try {
|
|
351
362
|
const { domain, user } = context.state;
|
|
352
|
-
const settingRepo = (tx === null || tx === void 0 ? void 0 : tx.getRepository(setting_base_1.Setting)) || (0,
|
|
363
|
+
const settingRepo = (tx === null || tx === void 0 ? void 0 : tx.getRepository(setting_base_1.Setting)) || (0, shell_1.getRepository)(setting_base_1.Setting);
|
|
353
364
|
// let orderInventories: OrderInventory[] = releaseGood.orderInventories
|
|
354
365
|
// let orderVass: OrderVas[] = releaseGood.orderVass
|
|
355
366
|
let { orderInventories, orderVass } = releaseGood;
|
|
356
367
|
let bizplace;
|
|
357
368
|
let warehouseDomain = domain;
|
|
369
|
+
let finalOrderInventories = [];
|
|
358
370
|
if (releaseGood.deliverTo) {
|
|
359
371
|
const deliverTo = await tx
|
|
360
372
|
.getRepository(biz_base_1.ContactPoint)
|
|
361
|
-
.findOne({ where: { bizplace: releaseGood.deliverTo, domain },
|
|
373
|
+
.findOne({ where: { bizplace: releaseGood.deliverTo, domain }, relations: ['bizplace'] });
|
|
362
374
|
if (!deliverTo)
|
|
363
375
|
throw new Error('contact point does not exist');
|
|
364
376
|
releaseGood.deliverTo = deliverTo;
|
|
@@ -406,7 +418,7 @@ async function generateReleaseGoodFunction(_, releaseGood, shippingOrder, attach
|
|
|
406
418
|
if (releaseGood.type == 'b2c') {
|
|
407
419
|
const sellercraft = await tx
|
|
408
420
|
.getRepository(integration_sellercraft_1.Sellercraft)
|
|
409
|
-
.
|
|
421
|
+
.findOneBy({ domain: bizplace.domain, status: integration_sellercraft_1.SellercraftStatus.ACTIVE });
|
|
410
422
|
let customerAvailableSftp = await tx.getRepository(integration_sftp_1.Sftp).findOne({
|
|
411
423
|
where: { domain: bizplace.domain }
|
|
412
424
|
});
|
|
@@ -420,7 +432,7 @@ async function generateReleaseGoodFunction(_, releaseGood, shippingOrder, attach
|
|
|
420
432
|
const refNo = releaseGood.refNo;
|
|
421
433
|
const foundReleaseGood = await tx.getRepository(release_good_1.ReleaseGood).findOne({
|
|
422
434
|
where: {
|
|
423
|
-
domain: warehouseDomain,
|
|
435
|
+
domain: { id: warehouseDomain.id },
|
|
424
436
|
refNo,
|
|
425
437
|
status: (0, typeorm_1.Not)((0, typeorm_1.In)([constants_1.ORDER_STATUS.CANCELLED, constants_1.ORDER_STATUS.PENDING_CANCEL]))
|
|
426
438
|
},
|
|
@@ -436,7 +448,7 @@ async function generateReleaseGoodFunction(_, releaseGood, shippingOrder, attach
|
|
|
436
448
|
const refNo2 = releaseGood.refNo2;
|
|
437
449
|
const foundSplittedReleaseGood = await tx.getRepository(release_good_1.ReleaseGood).findOne({
|
|
438
450
|
where: {
|
|
439
|
-
domain: warehouseDomain,
|
|
451
|
+
domain: { id: warehouseDomain.id },
|
|
440
452
|
refNo2,
|
|
441
453
|
status: (0, typeorm_1.Not)((0, typeorm_1.In)([constants_1.ORDER_STATUS.CANCELLED, constants_1.ORDER_STATUS.PENDING_CANCEL]))
|
|
442
454
|
},
|
|
@@ -454,6 +466,11 @@ async function generateReleaseGoodFunction(_, releaseGood, shippingOrder, attach
|
|
|
454
466
|
let newReleaseGood = new release_good_1.ReleaseGood();
|
|
455
467
|
/** Generate Shipping Order */
|
|
456
468
|
if (shippingOrder) {
|
|
469
|
+
shippingOrder.remark = shippingOrder.exportRemark;
|
|
470
|
+
if (shippingOrder.containerClosureDate !== undefined) {
|
|
471
|
+
shippingOrder.containerClosureDateTime = new Date(shippingOrder.containerClosureDate);
|
|
472
|
+
}
|
|
473
|
+
delete shippingOrder.exportRemark;
|
|
457
474
|
const createdSO = await tx.getRepository(shipping_order_1.ShippingOrder).save(Object.assign(Object.assign({}, shippingOrder), { name: utils_1.OrderNoGenerator.shippingOrder(), domain,
|
|
458
475
|
bizplace, status: constants_1.ORDER_STATUS.PENDING, creator: user, updater: user }));
|
|
459
476
|
newReleaseGood.shippingOrder = createdSO;
|
|
@@ -462,18 +479,24 @@ async function generateReleaseGoodFunction(_, releaseGood, shippingOrder, attach
|
|
|
462
479
|
// find RO number rule setting
|
|
463
480
|
const roNoSetting = await settingRepo.findOne({
|
|
464
481
|
where: {
|
|
465
|
-
domain,
|
|
482
|
+
domain: { id: domain.id },
|
|
466
483
|
name: constants_1.ORDER_NUMBER_SETTING_KEY.RO_NUMBER_RULE
|
|
467
484
|
}
|
|
468
485
|
});
|
|
469
486
|
newReleaseGood = Object.assign(Object.assign({}, newReleaseGood), { name: roNoSetting
|
|
470
487
|
? await (0, id_rule_base_1.generateId)({ domain, type: constants_1.ORDER_NUMBER_RULE_TYPE.RO_NUMBER, seed: {} })
|
|
471
|
-
: utils_1.OrderNoGenerator.releaseGood(), domain: warehouseDomain, bizplace: bizplace, collectionOrderNo: releaseGood.collectionOrderNo, courierOption: releaseGood.courierOption, exportOption: releaseGood.exportOption, ownTransport: releaseGood.ownTransport, packingOption: releaseGood.packingOption, marketplaceOrderStatus: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.marketplaceOrderStatus) || null, billingAddress: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.billingAddress) || null
|
|
488
|
+
: utils_1.OrderNoGenerator.releaseGood(), domain: warehouseDomain, bizplace: bizplace, collectionOrderNo: releaseGood.collectionOrderNo, courierOption: releaseGood.courierOption, exportOption: releaseGood.exportOption, ownTransport: releaseGood.ownTransport, packingOption: releaseGood.packingOption, recall: releaseGood.recall, marketplaceOrderStatus: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.marketplaceOrderStatus) || null, billingAddress: releaseGood.type == 'b2c' ? (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.billingAddress) || null : shippingOrderInfo.billingAddress || null, deliveryAddress1: releaseGood.type == 'b2c' ? (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress1) || null : shippingOrderInfo.deliveryAddress1 || null, deliveryAddress2: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress2) || null, deliveryAddress3: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress3) || null, deliveryAddress4: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress4) || null, deliveryAddress5: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress5) || null, attentionTo: releaseGood.type == 'b2c' ? (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.attentionTo) || null : shippingOrderInfo.attentionTo || null, attentionCompany: releaseGood.type == 'b2c' ? (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.companyName) || null : shippingOrderInfo.attentionCompany || null, city: releaseGood.type == 'b2c' ? (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.city) || null : shippingOrderInfo.city || null, state: releaseGood.type == 'b2c' ? (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.state) || null : shippingOrderInfo.state || null, postalCode: releaseGood.type == 'b2c' ? (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.postalCode) || null : shippingOrderInfo.postalCode || null, country: releaseGood.type == 'b2c' ? (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.country) || null : shippingOrderInfo.country || null, phone1: releaseGood.type == 'b2c' ? (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.phone1) || null : shippingOrderInfo.phone1 || null, phone2: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.phone2) || null, email: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.email) || null, billingCity: releaseGood.type == 'b2c' ? (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.billingCity) || null : shippingOrderInfo.billingCity || null, billingCountry: releaseGood.type == 'b2c' ? (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.billingCountry) || null : shippingOrderInfo.billingCountry || null, billingPostalCode: releaseGood.type == 'b2c'
|
|
489
|
+
? (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.billingPostalCode) || null
|
|
490
|
+
: shippingOrderInfo.billingPostalCode || null, billingState: releaseGood.type == 'b2c' ? (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.billingState) || null : shippingOrderInfo.billingState || null, transporter: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.transporter, trackingNo: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.trackingNo, airwayBill: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.airwayBill, invoice: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.invoice, refNo: releaseGood.refNo, refNo2: releaseGood.refNo2, refNo3: releaseGood.refNo3, remark: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.remark) || null, releaseDate: releaseGood.releaseDate, truckNo: releaseGood.truckNo, bundleInfo: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.bundleInfo) || [], orderInventories: releaseGood.orderInventories, type: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.type) ? releaseGood.type : 'b2b', orderMethod: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.orderMethod)
|
|
491
|
+
? releaseGood.orderMethod
|
|
492
|
+
: ((_b = (_a = releaseGood.orderInventories[0]) === null || _a === void 0 ? void 0 : _a.inventory) === null || _b === void 0 ? void 0 : _b.id)
|
|
493
|
+
? constants_1.ORDER_METHOD.SELECT_BY_PALLET
|
|
494
|
+
: constants_1.ORDER_METHOD.SELECT_BY_PRODUCT, status: constants_1.ORDER_STATUS.PENDING, packageId: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.packageId, storeName: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.storeName, storeId: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.storeId, routeId: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.routeId, stopId: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.stopId, creator: user, updater: user });
|
|
472
495
|
// Make relation with GAN for cross docking
|
|
473
496
|
let crossDockingGAN = undefined;
|
|
474
497
|
if (releaseGood.crossDocking && releaseGood.ganNo) {
|
|
475
498
|
crossDockingGAN = await tx.getRepository(arrival_notice_1.ArrivalNotice).findOne({
|
|
476
|
-
where: { domain, bizplace, name: releaseGood.ganNo, status: constants_1.ORDER_STATUS.PENDING }
|
|
499
|
+
where: { domain: { id: domain.id }, bizplace, name: releaseGood.ganNo, status: constants_1.ORDER_STATUS.PENDING }
|
|
477
500
|
});
|
|
478
501
|
if (!crossDockingGAN)
|
|
479
502
|
throw new Error(`Failed to find GAN (${releaseGood.ganNo}) for cross docking`);
|
|
@@ -511,29 +534,55 @@ async function generateReleaseGoodFunction(_, releaseGood, shippingOrder, attach
|
|
|
511
534
|
newReleaseGood = await tx.getRepository(release_good_1.ReleaseGood).save(newReleaseGood);
|
|
512
535
|
for (let oi of orderInventories) {
|
|
513
536
|
let newOrderInv = Object.assign({}, oi);
|
|
514
|
-
newOrderInv = Object.assign(Object.assign({}, newOrderInv), { domain: warehouseDomain, bizplace: bizplace, status: constants_1.ORDER_INVENTORY_STATUS.PENDING, name: utils_1.OrderNoGenerator.orderInventory(), releaseGood: newReleaseGood, product: await tx.getRepository(product_base_1.Product).
|
|
515
|
-
if ((_a = newOrderInv.inventory) === null || _a === void 0 ? void 0 : _a.id) {
|
|
516
|
-
const foundInv = await tx.getRepository(warehouse_base_1.Inventory).findOne(newOrderInv.inventory.id);
|
|
517
|
-
newOrderInv.inventory = foundInv;
|
|
518
|
-
foundInv.lockedQty = Number(foundInv.lockedQty) + newOrderInv.releaseQty;
|
|
519
|
-
foundInv.lockedUomValue = Number(foundInv.lockedUomValue) + newOrderInv.releaseUomValue;
|
|
520
|
-
foundInv.updater = user;
|
|
521
|
-
await tx.getRepository(warehouse_base_1.Inventory).save(foundInv);
|
|
522
|
-
}
|
|
537
|
+
newOrderInv = Object.assign(Object.assign({}, newOrderInv), { domain: warehouseDomain, bizplace: bizplace, status: constants_1.ORDER_INVENTORY_STATUS.PENDING, name: utils_1.OrderNoGenerator.orderInventory(), releaseGood: newReleaseGood, product: await tx.getRepository(product_base_1.Product).findOneBy({ id: oi.product.id }), creator: user, updater: user });
|
|
523
538
|
let newOrderProduct = Object.assign(new order_product_1.OrderProduct(), newOrderInv);
|
|
524
|
-
newOrderProduct = Object.assign(Object.assign({}, newOrderProduct), { packQty: 0, actualPackQty: 0, palletQty: 0, actualPalletQty: 0, status:
|
|
539
|
+
newOrderProduct = Object.assign(Object.assign({}, newOrderProduct), { packQty: 0, actualPackQty: 0, palletQty: 0, actualPalletQty: 0, status: constants_1.ORDER_PRODUCT_STATUS.ASSIGNED });
|
|
525
540
|
newOrderProduct = await tx.getRepository(order_product_1.OrderProduct).save(newOrderProduct);
|
|
526
|
-
|
|
541
|
+
if ((_c = newOrderInv.inventory) === null || _c === void 0 ? void 0 : _c.id) {
|
|
542
|
+
const foundInv = await tx.getRepository(warehouse_base_1.Inventory).findOneBy({ id: newOrderInv.inventory.id });
|
|
543
|
+
newOrderInv.inventory = foundInv;
|
|
544
|
+
newOrderInv.orderProduct = newOrderProduct;
|
|
545
|
+
finalOrderInventories.push(newOrderInv);
|
|
546
|
+
}
|
|
547
|
+
else {
|
|
548
|
+
// Preassign Inventories
|
|
549
|
+
const inventoryAssignmentSetting = await tx.getRepository(setting_base_1.Setting).findOne({
|
|
550
|
+
where: { domain: { id: domain.id }, name: 'rule-for-inventory-assignment' }
|
|
551
|
+
});
|
|
552
|
+
let locationSortingRules = [];
|
|
553
|
+
if (inventoryAssignmentSetting) {
|
|
554
|
+
let locationSetting = JSON.parse(inventoryAssignmentSetting.value);
|
|
555
|
+
for (const key in locationSetting) {
|
|
556
|
+
locationSortingRules.push({ name: key, desc: locationSetting[key] == 'ASC' ? false : true });
|
|
557
|
+
}
|
|
558
|
+
}
|
|
559
|
+
let assignedOrderInventories = await utils_1.InventoryUtil.autoAssignInventoryForRelease(newOrderInv.product, oi, oi.packingType, locationSortingRules, bizplace, warehouseDomain, tx, oi.batchId);
|
|
560
|
+
assignedOrderInventories = assignedOrderInventories.map(aoi => {
|
|
561
|
+
return Object.assign(Object.assign({}, aoi), { orderProduct: newOrderProduct });
|
|
562
|
+
});
|
|
563
|
+
finalOrderInventories.push(...assignedOrderInventories);
|
|
564
|
+
}
|
|
565
|
+
}
|
|
566
|
+
for (let oi of finalOrderInventories) {
|
|
567
|
+
let generatedOI = Object.assign(new order_inventory_1.OrderInventory(), oi);
|
|
568
|
+
generatedOI = Object.assign(Object.assign({}, generatedOI), { domain: warehouseDomain, bizplace, status: constants_1.ORDER_INVENTORY_STATUS.PENDING, name: utils_1.OrderNoGenerator.orderInventory(), releaseGood: newReleaseGood, creator: user, updater: user });
|
|
569
|
+
await tx.getRepository(order_inventory_1.OrderInventory).save(Object.assign({}, generatedOI));
|
|
570
|
+
// update inventory locked qty and uom value
|
|
571
|
+
await tx.getRepository(warehouse_base_1.Inventory).update({ id: oi.inventory.id }, {
|
|
572
|
+
lockedQty: (((_d = oi.inventory) === null || _d === void 0 ? void 0 : _d.lockedQty) || 0) + generatedOI.releaseQty,
|
|
573
|
+
lockedUomValue: (((_e = oi.inventory) === null || _e === void 0 ? void 0 : _e.lockedUomValue) || 0) + generatedOI.releaseUomValue,
|
|
574
|
+
updater: user
|
|
575
|
+
});
|
|
527
576
|
}
|
|
528
577
|
if (orderVass === null || orderVass === void 0 ? void 0 : orderVass.length) {
|
|
529
578
|
orderVass = await Promise.all(orderVass.map(async (orderVas) => {
|
|
530
579
|
var _a, _b;
|
|
531
580
|
if ((_a = orderVas === null || orderVas === void 0 ? void 0 : orderVas.targetProduct) === null || _a === void 0 ? void 0 : _a.id) {
|
|
532
|
-
orderVas.targetProduct = await tx.getRepository(product_base_1.Product).
|
|
581
|
+
orderVas.targetProduct = await tx.getRepository(product_base_1.Product).findOneBy({ id: orderVas.targetProduct.id });
|
|
533
582
|
}
|
|
534
|
-
let newOrderVas = Object.assign(Object.assign({}, orderVas), { domain: warehouseDomain, bizplace, name: utils_1.OrderNoGenerator.releaseVas(), vas: await tx.getRepository(vas_1.Vas).
|
|
583
|
+
let newOrderVas = Object.assign(Object.assign({}, orderVas), { domain: warehouseDomain, bizplace, name: utils_1.OrderNoGenerator.releaseVas(), vas: await tx.getRepository(vas_1.Vas).findOneBy({ id: orderVas.vas.id }), type: constants_1.ORDER_TYPES.RELEASE_OF_GOODS, releaseGood: newReleaseGood, status: constants_1.ORDER_VAS_STATUS.PENDING, creator: user, updater: user });
|
|
535
584
|
if ((_b = orderVas === null || orderVas === void 0 ? void 0 : orderVas.inventory) === null || _b === void 0 ? void 0 : _b.id) {
|
|
536
|
-
newOrderVas.inventory = await tx.getRepository(warehouse_base_1.Inventory).
|
|
585
|
+
newOrderVas.inventory = await tx.getRepository(warehouse_base_1.Inventory).findOneBy({ id: orderVas.inventory.id });
|
|
537
586
|
}
|
|
538
587
|
return newOrderVas;
|
|
539
588
|
}));
|
|
@@ -551,7 +600,7 @@ async function generateReleaseGoodFunction(_, releaseGood, shippingOrder, attach
|
|
|
551
600
|
await (0, attachment_base_1.createAttachments)(_, { attachments: files }, context);
|
|
552
601
|
}
|
|
553
602
|
const directReceiveSetting = await tx.getRepository(setting_base_1.Setting).findOne({
|
|
554
|
-
where: { domain, category: 'id-rule', name: 'enable-direct-receive-release-order' }
|
|
603
|
+
where: { domain: { id: domain.id }, category: 'id-rule', name: 'enable-direct-receive-release-order' }
|
|
555
604
|
});
|
|
556
605
|
const partnerDirectReceiveSetting = await tx.getRepository(setting_base_1.PartnerSetting).findOne({
|
|
557
606
|
where: { setting: directReceiveSetting, domain, partnerDomain: bizplace === null || bizplace === void 0 ? void 0 : bizplace.domain }
|
|
@@ -586,12 +635,12 @@ async function confirmReleaseGood(name, context, tx) {
|
|
|
586
635
|
throw new Error(`Release good order doesn't exists.`);
|
|
587
636
|
// query orderInventories separately from releaseGood to reduce resource usage
|
|
588
637
|
let foundOIs = await tx.getRepository(order_inventory_1.OrderInventory).find({
|
|
589
|
-
where: { domain, releaseGood: foundReleaseGood },
|
|
638
|
+
where: { domain: { id: domain.id }, releaseGood: { id: foundReleaseGood.id } },
|
|
590
639
|
relations: ['product']
|
|
591
640
|
});
|
|
592
641
|
// query orderProducts separately from releaseGood to reduce resource usage
|
|
593
642
|
let foundOPs = await tx.getRepository(order_product_1.OrderProduct).find({
|
|
594
|
-
where: { domain, releaseGood: foundReleaseGood },
|
|
643
|
+
where: { domain: { id: domain.id }, releaseGood: { id: foundReleaseGood.id } },
|
|
595
644
|
relations: ['bizplace', 'product', 'product.productDetails']
|
|
596
645
|
});
|
|
597
646
|
let foundBundleInfo = JSON.parse(foundReleaseGood.bundleInfo);
|
|
@@ -707,10 +756,13 @@ async function confirmReleaseGood(name, context, tx) {
|
|
|
707
756
|
url: context.header.referer,
|
|
708
757
|
data: { url: context.header.referer }
|
|
709
758
|
};
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
759
|
+
/**
|
|
760
|
+
* @notes Temporary off sendNotification due to suspect of causing wms down
|
|
761
|
+
*/
|
|
762
|
+
// await sendNotification({
|
|
763
|
+
// receivers,
|
|
764
|
+
// message: { ...msg }
|
|
765
|
+
// })
|
|
714
766
|
}
|
|
715
767
|
}
|
|
716
768
|
return releaseGood;
|
|
@@ -720,7 +772,7 @@ async function receiveReleaseGood(name, context, tx) {
|
|
|
720
772
|
var _a, _b;
|
|
721
773
|
const { domain, user } = context.state;
|
|
722
774
|
const foundReleaseGood = await tx.getRepository(release_good_1.ReleaseGood).findOne({
|
|
723
|
-
where: { domain, name, status: constants_1.ORDER_STATUS.PENDING_RECEIVE },
|
|
775
|
+
where: { domain: { id: domain.id }, name, status: constants_1.ORDER_STATUS.PENDING_RECEIVE },
|
|
724
776
|
relations: ['bizplace', 'orderInventories', 'orderVass']
|
|
725
777
|
});
|
|
726
778
|
if (!foundReleaseGood)
|
|
@@ -769,10 +821,13 @@ async function receiveReleaseGood(name, context, tx) {
|
|
|
769
821
|
url: context.header.referer,
|
|
770
822
|
data: { url: context.header.referer }
|
|
771
823
|
};
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
824
|
+
/**
|
|
825
|
+
* @notes Temporary off sendNotification due to suspect of causing wms down
|
|
826
|
+
*/
|
|
827
|
+
// await sendNotification({
|
|
828
|
+
// receivers,
|
|
829
|
+
// message: { ...msg }
|
|
830
|
+
// })
|
|
776
831
|
}
|
|
777
832
|
}
|
|
778
833
|
return releaseGood;
|
|
@@ -782,7 +837,7 @@ async function rejectReleaseGood(tx, context, name, remark) {
|
|
|
782
837
|
var _a;
|
|
783
838
|
const { domain, user } = context.state;
|
|
784
839
|
const releaseGood = await tx.getRepository(release_good_1.ReleaseGood).findOne({
|
|
785
|
-
where: { domain, name, status: constants_1.ORDER_STATUS.PENDING_RECEIVE },
|
|
840
|
+
where: { domain: { id: domain.id }, name, status: constants_1.ORDER_STATUS.PENDING_RECEIVE },
|
|
786
841
|
relations: [
|
|
787
842
|
'bizplace',
|
|
788
843
|
'bizplace.domain',
|
|
@@ -807,7 +862,7 @@ async function rejectReleaseGood(tx, context, name, remark) {
|
|
|
807
862
|
await tx.getRepository(order_inventory_1.OrderInventory).save(await Promise.all(foundOIs.map(async (oi) => {
|
|
808
863
|
var _a;
|
|
809
864
|
if ((_a = oi === null || oi === void 0 ? void 0 : oi.inventory) === null || _a === void 0 ? void 0 : _a.id) {
|
|
810
|
-
oi.inventory = await tx.getRepository(warehouse_base_1.Inventory).
|
|
865
|
+
oi.inventory = await tx.getRepository(warehouse_base_1.Inventory).findOneBy({ id: oi.inventory.id });
|
|
811
866
|
await tx.getRepository(warehouse_base_1.Inventory).save(Object.assign(Object.assign({}, oi.inventory), { lockedQty: oi.inventory.lockedQty - oi.releaseQty, lockedUomValue: oi.inventory.lockedUomValue - oi.releaseUomValue, updater: user }));
|
|
812
867
|
}
|
|
813
868
|
oi.status = constants_1.ORDER_INVENTORY_STATUS.REJECTED;
|
|
@@ -818,7 +873,7 @@ async function rejectReleaseGood(tx, context, name, remark) {
|
|
|
818
873
|
if (foundOPs && foundOPs.length) {
|
|
819
874
|
const sellercraft = await tx
|
|
820
875
|
.getRepository(integration_sellercraft_1.Sellercraft)
|
|
821
|
-
.
|
|
876
|
+
.findOneBy({ domain: releaseGood.bizplace.domain, status: integration_sellercraft_1.SellercraftStatus.ACTIVE });
|
|
822
877
|
if (sellercraft) {
|
|
823
878
|
const sellercraftCtrl = new controllers_1.SellercraftController(tx, domain, user);
|
|
824
879
|
await sellercraftCtrl.updateSellercraftStock(sellercraft, foundOPs, 'REJECT_ORDER');
|
|
@@ -841,7 +896,7 @@ async function rejectReleaseGood(tx, context, name, remark) {
|
|
|
841
896
|
if (releaseGood.shippingOrder) {
|
|
842
897
|
// 2. 1) if it's yes update status of collection order
|
|
843
898
|
const shippingOrder = await tx.getRepository(shipping_order_1.ShippingOrder).findOne({
|
|
844
|
-
where: { domain, name: releaseGood.shippingOrder.name }
|
|
899
|
+
where: { domain: { id: domain.id }, name: releaseGood.shippingOrder.name }
|
|
845
900
|
});
|
|
846
901
|
shippingOrder.status = constants_1.ORDER_STATUS.REJECTED;
|
|
847
902
|
shippingOrder.updater = user;
|
|
@@ -861,10 +916,13 @@ async function rejectReleaseGood(tx, context, name, remark) {
|
|
|
861
916
|
url: context.header.referer,
|
|
862
917
|
data: { url: context.header.referer }
|
|
863
918
|
};
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
919
|
+
/**
|
|
920
|
+
* @notes Temporary off sendNotification due to suspect of causing wms down
|
|
921
|
+
*/
|
|
922
|
+
// await sendNotification({
|
|
923
|
+
// receivers,
|
|
924
|
+
// message: { ...msg }
|
|
925
|
+
// })
|
|
868
926
|
}
|
|
869
927
|
return releaseGood;
|
|
870
928
|
}
|
|
@@ -873,17 +931,28 @@ async function bulkGenerateReleaseGood(releaseGood, bizplaceId, roNoSetting, dom
|
|
|
873
931
|
var _a, _b;
|
|
874
932
|
try {
|
|
875
933
|
let warehouseDomain = domain;
|
|
876
|
-
let { orderInventories } = releaseGood;
|
|
877
|
-
let bizplace = await tx.getRepository(biz_base_1.Bizplace).
|
|
934
|
+
let { orderInventories, shippingOrder } = releaseGood;
|
|
935
|
+
let bizplace = await tx.getRepository(biz_base_1.Bizplace).findOneBy({ id: bizplaceId });
|
|
878
936
|
let newReleaseGood = Object.assign(Object.assign({}, releaseGood), { name: roNoSetting
|
|
879
937
|
? await (0, id_rule_base_1.generateId)({ domain, type: constants_1.ORDER_NUMBER_RULE_TYPE.RO_NUMBER, seed: {} })
|
|
880
|
-
: utils_1.OrderNoGenerator.releaseGood(), domain: warehouseDomain, bizplace: bizplace, deliveryAddress1: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress1) || null, deliveryAddress2: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress2) || null, deliveryAddress3: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress3) || null, deliveryAddress4: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress4) || null, attentionTo: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.attentionTo) || null, attentionCompany: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.attentionCompany) || null, city: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.city) || null, state: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.state) || null, postalCode: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.postalCode) || null, country: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.country) || null, phone1: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.phone1) || null, phone2: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.phone2) || null, email: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.email) || null, airwayBill: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.airwayBill, refNo: releaseGood.refNo, refNo2: releaseGood.refNo2, refNo3: releaseGood.refNo3, releaseDate: releaseGood.releaseDate, ownTransport: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.ownTransport) || false, status: constants_1.ORDER_STATUS.PENDING, creator: user, updater: user });
|
|
938
|
+
: utils_1.OrderNoGenerator.releaseGood(), domain: warehouseDomain, bizplace: bizplace, deliveryAddress1: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress1) || null, deliveryAddress2: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress2) || null, deliveryAddress3: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress3) || null, deliveryAddress4: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress4) || null, attentionTo: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.attentionTo) || null, attentionCompany: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.attentionCompany) || null, city: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.city) || null, state: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.state) || null, postalCode: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.postalCode) || null, country: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.country) || null, phone1: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.phone1) || null, phone2: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.phone2) || null, email: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.email) || null, airwayBill: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.airwayBill, refNo: releaseGood.refNo, refNo2: releaseGood.refNo2, refNo3: releaseGood.refNo3, releaseDate: releaseGood.releaseDate, ownTransport: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.ownTransport) || false, orderMethod: constants_1.ORDER_METHOD.SELECT_BY_PRODUCT, status: constants_1.ORDER_STATUS.PENDING, creator: user, updater: user });
|
|
881
939
|
newReleaseGood = await tx.getRepository(release_good_1.ReleaseGood).save(newReleaseGood);
|
|
940
|
+
/** Generate Shipping Order */
|
|
941
|
+
if (shippingOrder) {
|
|
942
|
+
shippingOrder.remark = shippingOrder.exportRemark;
|
|
943
|
+
if (shippingOrder.containerClosureDate !== undefined) {
|
|
944
|
+
shippingOrder.containerClosureDateTime = new Date(shippingOrder.containerClosureDate);
|
|
945
|
+
}
|
|
946
|
+
delete shippingOrder.exportRemark;
|
|
947
|
+
const createdSO = await tx.getRepository(shipping_order_1.ShippingOrder).save(Object.assign(Object.assign({}, shippingOrder), { name: utils_1.OrderNoGenerator.shippingOrder(), domain,
|
|
948
|
+
bizplace, status: constants_1.ORDER_STATUS.PENDING, creator: user, updater: user }));
|
|
949
|
+
newReleaseGood.shippingOrder = createdSO;
|
|
950
|
+
}
|
|
882
951
|
let finalOrderInventories = [];
|
|
883
952
|
// pre assign inventory to orderInventories
|
|
884
953
|
for (let oi of orderInventories) {
|
|
885
954
|
const pickingProductSetting = await tx.getRepository(setting_base_1.Setting).findOne({
|
|
886
|
-
where: { domain, name: 'rule-for-picking-product' }
|
|
955
|
+
where: { domain: { id: domain.id }, name: 'rule-for-picking-product' }
|
|
887
956
|
});
|
|
888
957
|
let locationSortingRules = [];
|
|
889
958
|
if (pickingProductSetting) {
|
|
@@ -892,33 +961,42 @@ async function bulkGenerateReleaseGood(releaseGood, bizplaceId, roNoSetting, dom
|
|
|
892
961
|
locationSortingRules.push({ name: key, desc: locationSetting[key] == 'ASC' ? false : true });
|
|
893
962
|
}
|
|
894
963
|
}
|
|
895
|
-
const product = await tx.getRepository(product_base_1.Product).
|
|
896
|
-
|
|
964
|
+
const product = await tx.getRepository(product_base_1.Product).findOneBy({ id: oi.productId });
|
|
965
|
+
let assignedResult = await utils_1.InventoryUtil.autoAssignInventoryForRelease(product, oi, oi.packingType, locationSortingRules, bizplace, warehouseDomain, tx);
|
|
966
|
+
finalOrderInventories.push(...assignedResult.map(itm => {
|
|
967
|
+
return Object.assign(Object.assign({}, itm), { orderProduct: oi === null || oi === void 0 ? void 0 : oi.orderProduct });
|
|
968
|
+
}));
|
|
897
969
|
}
|
|
898
970
|
for (let oi of finalOrderInventories) {
|
|
899
971
|
let generatedOI = Object.assign(new order_inventory_1.OrderInventory(), oi);
|
|
900
972
|
generatedOI = Object.assign(Object.assign({}, generatedOI), { domain: warehouseDomain, bizplace, status: constants_1.ORDER_INVENTORY_STATUS.PENDING, name: utils_1.OrderNoGenerator.orderInventory(), releaseGood: newReleaseGood, creator: user, updater: user });
|
|
901
|
-
let newOrderProduct
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
973
|
+
let newOrderProduct;
|
|
974
|
+
if (!(oi === null || oi === void 0 ? void 0 : oi.orderProduct)) {
|
|
975
|
+
newOrderProduct = {
|
|
976
|
+
name: generatedOI.name,
|
|
977
|
+
product: generatedOI.product,
|
|
978
|
+
batchId: generatedOI.batchId,
|
|
979
|
+
packingType: generatedOI.packingType,
|
|
980
|
+
packingSize: generatedOI.packingSize,
|
|
981
|
+
uom: generatedOI.uom,
|
|
982
|
+
domain: warehouseDomain,
|
|
983
|
+
bizplace,
|
|
984
|
+
releaseQty: generatedOI.releaseQty,
|
|
985
|
+
releaseUomValue: generatedOI.releaseUomValue,
|
|
986
|
+
packQty: 0,
|
|
987
|
+
actualPackQty: 0,
|
|
988
|
+
palletQty: 0,
|
|
989
|
+
actualPalletQty: 0,
|
|
990
|
+
status: constants_1.ORDER_PRODUCT_STATUS.ASSIGNED,
|
|
991
|
+
releaseGood: newReleaseGood,
|
|
992
|
+
creator: user,
|
|
993
|
+
updater: user
|
|
994
|
+
};
|
|
995
|
+
newOrderProduct = await tx.getRepository(order_product_1.OrderProduct).save(newOrderProduct);
|
|
996
|
+
}
|
|
997
|
+
else {
|
|
998
|
+
newOrderProduct = await tx.getRepository(order_product_1.OrderProduct).save(Object.assign(Object.assign({}, oi.orderProduct), { totalUomValue: `${oi.orderProduct.releaseUomValue} ${oi.orderProduct.uom}`, status: constants_1.ORDER_PRODUCT_STATUS.ASSIGNED, updater: user }));
|
|
999
|
+
}
|
|
922
1000
|
await tx.getRepository(order_inventory_1.OrderInventory).save(Object.assign(Object.assign({}, generatedOI), { orderProduct: newOrderProduct }));
|
|
923
1001
|
// update inventory locked qty and uom value
|
|
924
1002
|
await tx.getRepository(warehouse_base_1.Inventory).update(oi.inventory.id, {
|
|
@@ -944,7 +1022,7 @@ async function bulkConfirmReleaseGoods(releaseGoodsNo, domain, user, context, tx
|
|
|
944
1022
|
throw new Error(`release good order doesn't exists.`);
|
|
945
1023
|
let customerBizplace = foundReleaseGoods[0].bizplace;
|
|
946
1024
|
let foundOrderInventories = await tx.getRepository(order_inventory_1.OrderInventory).find({
|
|
947
|
-
where: { domain, releaseGood: (0, typeorm_1.In)(foundReleaseGoods.map((rg) => rg.id)) }
|
|
1025
|
+
where: { domain: { id: domain.id }, releaseGood: (0, typeorm_1.In)(foundReleaseGoods.map((rg) => rg.id)) }
|
|
948
1026
|
});
|
|
949
1027
|
await tx
|
|
950
1028
|
.getRepository(release_good_1.ReleaseGood)
|
|
@@ -977,14 +1055,19 @@ async function bulkConfirmReleaseGoods(releaseGoodsNo, domain, user, context, tx
|
|
|
977
1055
|
url: context.header.referer,
|
|
978
1056
|
data: { url: context.header.referer }
|
|
979
1057
|
};
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
1058
|
+
/**
|
|
1059
|
+
* @notes Temporary off sendNotification due to suspect of causing wms down
|
|
1060
|
+
*/
|
|
1061
|
+
// await sendNotification({
|
|
1062
|
+
// receivers,
|
|
1063
|
+
// message
|
|
1064
|
+
// })
|
|
984
1065
|
}
|
|
985
1066
|
}
|
|
986
1067
|
return Promise.all(foundReleaseGoods.map(async (releaseGood) => {
|
|
987
|
-
return Object.assign(Object.assign({}, releaseGood), { orderInventories: await tx
|
|
1068
|
+
return Object.assign(Object.assign({}, releaseGood), { orderInventories: await tx
|
|
1069
|
+
.getRepository(order_inventory_1.OrderInventory)
|
|
1070
|
+
.find({ where: { releaseGood: { id: releaseGood.id } } }) /* CONFIRMME regarding TYPEORM */, status: constants_1.ORDER_STATUS.PENDING_RECEIVE, updater: user });
|
|
988
1071
|
}));
|
|
989
1072
|
}
|
|
990
1073
|
exports.bulkConfirmReleaseGoods = bulkConfirmReleaseGoods;
|
|
@@ -1044,6 +1127,11 @@ function extractRawReleaseGoods(rawReleaseGoods) {
|
|
|
1044
1127
|
deliveryAddress2: item.deliveryAddress2,
|
|
1045
1128
|
deliveryAddress3: item.deliveryAddress3,
|
|
1046
1129
|
deliveryAddress4: item.deliveryAddress4,
|
|
1130
|
+
billingAddress: item.billingAddress,
|
|
1131
|
+
billingCity: item.billingPostalCode,
|
|
1132
|
+
billingState: item.billingState,
|
|
1133
|
+
billingCountry: item.billingCountry,
|
|
1134
|
+
billingPostalCode: item.billingPostalCode,
|
|
1047
1135
|
city: item.city,
|
|
1048
1136
|
postalCode: item.postalCode,
|
|
1049
1137
|
state: item.state,
|