@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shipping-order-types.js","sourceRoot":"","sources":["../../../server/service/shipping-order/shipping-order-types.ts"],"names":[],"mappings":";;;;AAAA,+CAAgE;AAChE,qDAAgD;AAGhD,IAAa,iBAAiB,GAA9B,MAAa,iBAAiB;CAM7B,CAAA;AAJC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,8BAAa,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDAC7B;AAGtB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,kBAAG,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDAC1B;AALF,iBAAiB;IAD7B,IAAA,yBAAU,GAAE;GACA,iBAAiB,CAM7B;AANY,8CAAiB;AAS9B,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;CA2B5B,CAAA;AAzBC;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACd;AAGZ;IADC,IAAA,oBAAK,GAAE;;kDACQ;AAGhB;IADC,IAAA,oBAAK,GAAE;;qDACW;AAGnB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8DACE;AAG5B;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8DACE;AAG5B;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kEACM;AAGhC;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kEACM;AAGhC;IADC,IAAA,oBAAK,GAAE;;gDACM;AAGd;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACP;AA1BR,gBAAgB;IAD5B,IAAA,wBAAS,GAAE;GACC,gBAAgB,CA2B5B;AA3BY,4CAAgB;AA8B7B,IAAa,kBAAkB,GAA/B,MAAa,kBAAkB;
|
|
1
|
+
{"version":3,"file":"shipping-order-types.js","sourceRoot":"","sources":["../../../server/service/shipping-order/shipping-order-types.ts"],"names":[],"mappings":"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","sourcesContent":["import { Field, InputType, Int, ObjectType } from 'type-graphql'\nimport { ShippingOrder } from './shipping-order'\n\n@ObjectType()\nexport class ShippingOrderList {\n @Field(type => [ShippingOrder], { nullable: true })\n items: ShippingOrder[]\n\n @Field(type => Int, { nullable: true })\n total: number\n}\n\n@InputType()\nexport class NewShippingOrder {\n @Field({ nullable: true })\n name: string\n\n @Field()\n shipName: string\n\n @Field()\n containerNo: string\n\n @Field({ nullable: true })\n containerArrivalDate: string\n\n @Field({ nullable: true })\n containerLeavingDate: string\n\n @Field({ nullable: true })\n containerArrivalDateTime: string\n\n @Field({ nullable: true })\n containerLeavingDateTime: string\n\n @Field()\n status: string\n\n @Field({ nullable: true })\n description: string\n}\n\n@InputType()\nexport class ShippingOrderPatch {\n @Field({ nullable: true })\n name: string\n\n @Field({ nullable: true })\n description: string\n\n @Field({ nullable: true })\n shipName: string\n\n @Field({ nullable: true })\n containerNo: string\n\n @Field({ nullable: true })\n containerSize: string\n\n @Field({ nullable: true })\n containerArrivalDate: string\n\n @Field({ nullable: true })\n containerLeavingDate: string\n\n @Field({ nullable: true })\n containerClosureDate: string\n\n @Field({ nullable: true })\n containerArrivalDateTime: string\n\n @Field({ nullable: true })\n containerLeavingDateTime: Date\n\n @Field({ nullable: true })\n containerClosureDateTime: Date\n\n @Field({ nullable: true })\n remark: string\n\n @Field({ nullable: true })\n exportRemark: string\n\n @Field({ nullable: true })\n status: string\n\n @Field({ nullable: true })\n remindContainerDeparture: boolean\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var _a
|
|
2
|
+
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.ShippingOrder = void 0;
|
|
5
5
|
const tslib_1 = require("tslib");
|
|
@@ -18,7 +18,7 @@ tslib_1.__decorate([
|
|
|
18
18
|
tslib_1.__decorate([
|
|
19
19
|
(0, typeorm_1.ManyToOne)(type => shell_1.Domain),
|
|
20
20
|
(0, type_graphql_1.Field)(type => shell_1.Domain, { nullable: true }),
|
|
21
|
-
tslib_1.__metadata("design:type",
|
|
21
|
+
tslib_1.__metadata("design:type", shell_1.Domain)
|
|
22
22
|
], ShippingOrder.prototype, "domain", void 0);
|
|
23
23
|
tslib_1.__decorate([
|
|
24
24
|
(0, typeorm_1.RelationId)((shippingOrder) => shippingOrder.domain),
|
|
@@ -27,7 +27,7 @@ tslib_1.__decorate([
|
|
|
27
27
|
tslib_1.__decorate([
|
|
28
28
|
(0, typeorm_1.ManyToOne)(type => biz_base_1.Bizplace),
|
|
29
29
|
(0, type_graphql_1.Field)(type => biz_base_1.Bizplace, { nullable: true }),
|
|
30
|
-
tslib_1.__metadata("design:type", typeof (
|
|
30
|
+
tslib_1.__metadata("design:type", typeof (_a = typeof biz_base_1.Bizplace !== "undefined" && biz_base_1.Bizplace) === "function" ? _a : Object)
|
|
31
31
|
], ShippingOrder.prototype, "bizplace", void 0);
|
|
32
32
|
tslib_1.__decorate([
|
|
33
33
|
(0, typeorm_1.RelationId)((shippingOrder) => shippingOrder.bizplace),
|
|
@@ -39,8 +39,8 @@ tslib_1.__decorate([
|
|
|
39
39
|
tslib_1.__metadata("design:type", String)
|
|
40
40
|
], ShippingOrder.prototype, "name", void 0);
|
|
41
41
|
tslib_1.__decorate([
|
|
42
|
-
(0, typeorm_1.Column)(),
|
|
43
|
-
(0, type_graphql_1.Field)(),
|
|
42
|
+
(0, typeorm_1.Column)({ nullable: true }),
|
|
43
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
44
44
|
tslib_1.__metadata("design:type", String)
|
|
45
45
|
], ShippingOrder.prototype, "shipName", void 0);
|
|
46
46
|
tslib_1.__decorate([
|
|
@@ -48,6 +48,11 @@ tslib_1.__decorate([
|
|
|
48
48
|
(0, type_graphql_1.Field)(),
|
|
49
49
|
tslib_1.__metadata("design:type", String)
|
|
50
50
|
], ShippingOrder.prototype, "containerNo", void 0);
|
|
51
|
+
tslib_1.__decorate([
|
|
52
|
+
(0, typeorm_1.Column)({ nullable: true }),
|
|
53
|
+
(0, type_graphql_1.Field)(),
|
|
54
|
+
tslib_1.__metadata("design:type", String)
|
|
55
|
+
], ShippingOrder.prototype, "containerSize", void 0);
|
|
51
56
|
tslib_1.__decorate([
|
|
52
57
|
(0, typeorm_1.Column)({ nullable: true }),
|
|
53
58
|
(0, type_graphql_1.Field)({ nullable: true }),
|
|
@@ -68,6 +73,21 @@ tslib_1.__decorate([
|
|
|
68
73
|
(0, type_graphql_1.Field)({ nullable: true }),
|
|
69
74
|
tslib_1.__metadata("design:type", Date)
|
|
70
75
|
], ShippingOrder.prototype, "containerLeavingDateTime", void 0);
|
|
76
|
+
tslib_1.__decorate([
|
|
77
|
+
(0, typeorm_1.Column)({ nullable: true }),
|
|
78
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
79
|
+
tslib_1.__metadata("design:type", String)
|
|
80
|
+
], ShippingOrder.prototype, "containerClosureDate", void 0);
|
|
81
|
+
tslib_1.__decorate([
|
|
82
|
+
(0, typeorm_1.Column)({ nullable: true }),
|
|
83
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
84
|
+
tslib_1.__metadata("design:type", Date)
|
|
85
|
+
], ShippingOrder.prototype, "containerClosureDateTime", void 0);
|
|
86
|
+
tslib_1.__decorate([
|
|
87
|
+
(0, typeorm_1.Column)({ nullable: true }),
|
|
88
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
89
|
+
tslib_1.__metadata("design:type", Boolean)
|
|
90
|
+
], ShippingOrder.prototype, "remindContainerDeparture", void 0);
|
|
71
91
|
tslib_1.__decorate([
|
|
72
92
|
(0, typeorm_1.Column)({ nullable: true }),
|
|
73
93
|
(0, type_graphql_1.Field)({ nullable: true }),
|
|
@@ -111,7 +131,7 @@ tslib_1.__decorate([
|
|
|
111
131
|
tslib_1.__decorate([
|
|
112
132
|
(0, typeorm_1.ManyToOne)(type => auth_base_1.User),
|
|
113
133
|
(0, type_graphql_1.Field)(type => auth_base_1.User, { nullable: true }),
|
|
114
|
-
tslib_1.__metadata("design:type",
|
|
134
|
+
tslib_1.__metadata("design:type", auth_base_1.User)
|
|
115
135
|
], ShippingOrder.prototype, "creator", void 0);
|
|
116
136
|
tslib_1.__decorate([
|
|
117
137
|
(0, typeorm_1.RelationId)((shippingOrder) => shippingOrder.creator),
|
|
@@ -120,7 +140,7 @@ tslib_1.__decorate([
|
|
|
120
140
|
tslib_1.__decorate([
|
|
121
141
|
(0, typeorm_1.ManyToOne)(type => auth_base_1.User),
|
|
122
142
|
(0, type_graphql_1.Field)(type => auth_base_1.User, { nullable: true }),
|
|
123
|
-
tslib_1.__metadata("design:type",
|
|
143
|
+
tslib_1.__metadata("design:type", auth_base_1.User)
|
|
124
144
|
], ShippingOrder.prototype, "updater", void 0);
|
|
125
145
|
tslib_1.__decorate([
|
|
126
146
|
(0, typeorm_1.RelationId)((shippingOrder) => shippingOrder.updater),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shipping-order.js","sourceRoot":"","sources":["../../../server/service/shipping-order/shipping-order.ts"],"names":[],"mappings":";;;;;AAAA,yDAAgD;AAChD,uDAAmD;AACnD,iDAA8C;AAC9C,+CAAoD;AACpD,qCASgB;AAOhB,IAAa,aAAa,GAA1B,MAAa,aAAa;
|
|
1
|
+
{"version":3,"file":"shipping-order.js","sourceRoot":"","sources":["../../../server/service/shipping-order/shipping-order.ts"],"names":[],"mappings":"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","sourcesContent":["import { User } from '@things-factory/auth-base'\nimport { Bizplace } from '@things-factory/biz-base'\nimport { Domain } from '@things-factory/shell'\nimport { Field, ID, ObjectType } from 'type-graphql'\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n ManyToOne,\n PrimaryGeneratedColumn,\n RelationId,\n UpdateDateColumn\n} from 'typeorm'\n\n@Entity()\n@Index('ix_shipping-order_0', (shippingOrder: ShippingOrder) => [shippingOrder.domain, shippingOrder.name], {\n unique: true\n})\n@ObjectType()\nexport class ShippingOrder {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @ManyToOne(type => Domain)\n @Field(type => Domain, { nullable: true })\n domain: Domain\n\n @RelationId((shippingOrder: ShippingOrder) => shippingOrder.domain)\n domainId: string\n\n @ManyToOne(type => Bizplace)\n @Field(type => Bizplace, { nullable: true })\n bizplace: Bizplace\n\n @RelationId((shippingOrder: ShippingOrder) => shippingOrder.bizplace)\n bizplaceId: string\n\n @Column()\n @Field()\n name: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n shipName: string\n\n @Column()\n @Field()\n containerNo: string\n\n @Column({ nullable: true })\n @Field()\n containerSize: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n containerArrivalDate: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n containerArrivalDateTime: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n containerLeavingDate: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n containerLeavingDateTime: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n containerClosureDate: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n containerClosureDateTime: Date\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n remindContainerDeparture: boolean\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n from: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n to: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n remark: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n loadType: string\n\n @Column()\n @Field()\n status: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n description: string\n\n @CreateDateColumn()\n @Field()\n createdAt: Date\n\n @UpdateDateColumn()\n @Field()\n updatedAt: Date\n\n @ManyToOne(type => User)\n @Field(type => User, { nullable: true })\n creator: User\n\n @RelationId((shippingOrder: ShippingOrder) => shippingOrder.creator)\n creatorId: string\n\n @ManyToOne(type => User)\n @Field(type => User, { nullable: true })\n updater: User\n\n @RelationId((shippingOrder: ShippingOrder) => shippingOrder.updater)\n updaterId: string\n}\n"]}
|
|
@@ -2,12 +2,13 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.generateTransferOrder = exports.addTransferOrderInventories = exports.TransferOrderMutation = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
+
const type_graphql_1 = require("type-graphql");
|
|
6
|
+
const typeorm_1 = require("typeorm");
|
|
5
7
|
const biz_base_1 = require("@things-factory/biz-base");
|
|
6
8
|
const id_rule_base_1 = require("@things-factory/id-rule-base");
|
|
7
9
|
const product_base_1 = require("@things-factory/product-base");
|
|
8
10
|
const setting_base_1 = require("@things-factory/setting-base");
|
|
9
|
-
const
|
|
10
|
-
const typeorm_1 = require("typeorm");
|
|
11
|
+
const shell_1 = require("@things-factory/shell");
|
|
11
12
|
const __1 = require("../");
|
|
12
13
|
const constants_1 = require("../../constants");
|
|
13
14
|
const utils_1 = require("../../utils");
|
|
@@ -26,7 +27,7 @@ let TransferOrderMutation = class TransferOrderMutation {
|
|
|
26
27
|
const { tx, domain, user } = context.state;
|
|
27
28
|
const bizplace = await (0, biz_base_1.getOutletBizplace)(patch.warehouseId);
|
|
28
29
|
const transferOrder = await tx.getRepository(transfer_order_1.TransferOrder).findOne({
|
|
29
|
-
where: { domain, bizplace, name: patch.name },
|
|
30
|
+
where: { domain: { id: domain.id }, bizplace, name: patch.name },
|
|
30
31
|
relations: ['bizplace', 'orderInventories']
|
|
31
32
|
});
|
|
32
33
|
if (!transferOrder)
|
|
@@ -56,7 +57,7 @@ let TransferOrderMutation = class TransferOrderMutation {
|
|
|
56
57
|
const retailReplenishmentOrder = await tx
|
|
57
58
|
.getRepository(__1.RetailReplenishmentOrder)
|
|
58
59
|
.findOne({
|
|
59
|
-
where: { domain, bizplace: myBizplace, refNo: transferOrder.refNo },
|
|
60
|
+
where: { domain: { id: domain.id }, bizplace: myBizplace, refNo: transferOrder.refNo },
|
|
60
61
|
relations: ['domain', 'bizplace']
|
|
61
62
|
});
|
|
62
63
|
// #2 Create Transfer Order
|
|
@@ -79,7 +80,7 @@ let TransferOrderMutation = class TransferOrderMutation {
|
|
|
79
80
|
let partialReceived = false;
|
|
80
81
|
// #1 Find Transfer Order
|
|
81
82
|
const foundTO = await tx.getRepository(transfer_order_1.TransferOrder).findOne({
|
|
82
|
-
where: { domain, name: patch.name, bizplace: myBizplace },
|
|
83
|
+
where: { domain: { id: domain.id }, name: patch.name, bizplace: myBizplace },
|
|
83
84
|
relations: ['bizplace', 'orderInventories']
|
|
84
85
|
});
|
|
85
86
|
if (!foundTO)
|
|
@@ -88,7 +89,7 @@ let TransferOrderMutation = class TransferOrderMutation {
|
|
|
88
89
|
throw new Error(`Transfer order is already completed.`);
|
|
89
90
|
// #2 Find related order inventories
|
|
90
91
|
let foundOIs = await tx.getRepository(__1.OrderInventory).find({
|
|
91
|
-
where: { domain, transferOrder: foundTO }
|
|
92
|
+
where: { domain: { id: domain.id }, transferOrder: { id: foundTO.id } }
|
|
92
93
|
});
|
|
93
94
|
if (!foundOIs)
|
|
94
95
|
throw new Error(`Order inventories were not found.`);
|
|
@@ -110,7 +111,7 @@ let TransferOrderMutation = class TransferOrderMutation {
|
|
|
110
111
|
});
|
|
111
112
|
await tx.getRepository(__1.OrderInventory).save(foundOIs);
|
|
112
113
|
// #3 Update status of stock replenishment order (RECEIVED / PARTIALLY_RECEIVED)
|
|
113
|
-
return await (0,
|
|
114
|
+
return await (0, shell_1.getRepository)(transfer_order_1.TransferOrder).save(Object.assign(Object.assign({}, foundTO), { status: partialReceived ? constants_1.ORDER_STATUS.PARTIAL_RECEIVED : constants_1.ORDER_STATUS.RECEIVED, updater: user }));
|
|
114
115
|
}
|
|
115
116
|
async deleteTransferOrder(name, context) {
|
|
116
117
|
const { tx, domain } = context.state;
|
|
@@ -120,7 +121,7 @@ let TransferOrderMutation = class TransferOrderMutation {
|
|
|
120
121
|
async deleteTransferOrders(names, context) {
|
|
121
122
|
const { tx, domain } = context.state;
|
|
122
123
|
await tx.getRepository(transfer_order_1.TransferOrder).delete({
|
|
123
|
-
domain,
|
|
124
|
+
domain: { id: domain.id },
|
|
124
125
|
name: (0, typeorm_1.In)(names)
|
|
125
126
|
});
|
|
126
127
|
return true;
|
|
@@ -196,16 +197,20 @@ TransferOrderMutation = tslib_1.__decorate([
|
|
|
196
197
|
exports.TransferOrderMutation = TransferOrderMutation;
|
|
197
198
|
async function addTransferOrderInventories(domain, transferOrder, orderInventories, user, tx) {
|
|
198
199
|
var _a;
|
|
199
|
-
const productRepo = (tx === null || tx === void 0 ? void 0 : tx.getRepository(product_base_1.Product)) || (0,
|
|
200
|
-
const orderInventoryRepo = (tx === null || tx === void 0 ? void 0 : tx.getRepository(__1.OrderInventory)) || (0,
|
|
200
|
+
const productRepo = (tx === null || tx === void 0 ? void 0 : tx.getRepository(product_base_1.Product)) || (0, shell_1.getRepository)(product_base_1.Product);
|
|
201
|
+
const orderInventoryRepo = (tx === null || tx === void 0 ? void 0 : tx.getRepository(__1.OrderInventory)) || (0, shell_1.getRepository)(__1.OrderInventory);
|
|
201
202
|
if (!(transferOrder === null || transferOrder === void 0 ? void 0 : transferOrder.bizplace) || !((_a = transferOrder === null || transferOrder === void 0 ? void 0 : transferOrder.orderInventories) === null || _a === void 0 ? void 0 : _a.length)) {
|
|
202
203
|
transferOrder = await tx.getRepository(transfer_order_1.TransferOrder).findOne({
|
|
203
|
-
where:
|
|
204
|
+
where: { id: transferOrder.id } /* CONFIRMME regarding TYPEORM */,
|
|
204
205
|
relations: ['bizplace', 'orderInventories']
|
|
205
206
|
});
|
|
206
207
|
}
|
|
207
208
|
orderInventories = await Promise.all(orderInventories.map(async (oi) => {
|
|
208
|
-
const foundProduct = await productRepo.
|
|
209
|
+
const foundProduct = await productRepo.findOneBy({
|
|
210
|
+
domain: { id: domain.id },
|
|
211
|
+
sku: oi.product.sku,
|
|
212
|
+
name: oi.product.name
|
|
213
|
+
});
|
|
209
214
|
return Object.assign(Object.assign({}, oi), { domain, bizplace: transferOrder.bizplace, name: utils_1.OrderNoGenerator.orderInventory(), product: foundProduct, productName: foundProduct.name, releaseWeight: foundProduct.weight * oi.releaseQty, packingType: foundProduct.packingType, type: constants_1.ORDER_TYPES.TRANSFER_ORDER, transferOrder, creator: user, updater: user });
|
|
210
215
|
}));
|
|
211
216
|
//add lock qty
|
|
@@ -213,13 +218,13 @@ async function addTransferOrderInventories(domain, transferOrder, orderInventori
|
|
|
213
218
|
}
|
|
214
219
|
exports.addTransferOrderInventories = addTransferOrderInventories;
|
|
215
220
|
async function generateTransferOrder(transferOrder, domain, user, tx) {
|
|
216
|
-
const settingRepo = (tx === null || tx === void 0 ? void 0 : tx.getRepository(setting_base_1.Setting)) || (0,
|
|
221
|
+
const settingRepo = (tx === null || tx === void 0 ? void 0 : tx.getRepository(setting_base_1.Setting)) || (0, shell_1.getRepository)(setting_base_1.Setting);
|
|
217
222
|
let orderInventories = transferOrder.orderInventories;
|
|
218
223
|
let orderNo = '';
|
|
219
224
|
// find TO number rule setting
|
|
220
225
|
const toNoSetting = await settingRepo.findOne({
|
|
221
226
|
where: {
|
|
222
|
-
domain,
|
|
227
|
+
domain: { id: domain.id },
|
|
223
228
|
name: constants_1.ORDER_NUMBER_SETTING_KEY.TO_NUMBER_RULE
|
|
224
229
|
}
|
|
225
230
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transfer-order-mutation.js","sourceRoot":"","sources":["../../../server/service/transfer-order/transfer-order-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { User } from '@things-factory/auth-base'\nimport { Bizplace, getOutletBizplace } from '@things-factory/biz-base'\nimport { generateId } from '@things-factory/id-rule-base'\nimport { Product } from '@things-factory/product-base'\nimport { Setting } from '@things-factory/setting-base'\nimport { Domain } from '@things-factory/shell'\nimport { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { EntityManager, getRepository, In, Repository } from 'typeorm'\nimport { NewOrderInventory, NewTransferOrder, OrderInventory, RetailReplenishmentOrder, TransferOrderPatch } from '../'\nimport {\n ORDER_INVENTORY_STATUS,\n ORDER_NUMBER_RULE_TYPE,\n ORDER_NUMBER_SETTING_KEY,\n ORDER_STATUS,\n ORDER_TYPES\n} from '../../constants'\nimport { OrderNoGenerator } from '../../utils'\nimport { TransferOrder } from './transfer-order'\n\n@Resolver(TransferOrder)\nexport class TransferOrderMutation {\n @Directive('@transaction')\n @Mutation(returns => Boolean)\n async addTransferOrderInventories(\n @Arg('toNo') toNo: string,\n @Arg('orderInventories', type => [NewOrderInventory]) orderInventories: NewOrderInventory[],\n @Ctx() context: any\n ): Promise<boolean> {\n const { tx, domain, user }: { tx: EntityManager; domain: Domain; user: User } = context.state\n\n const transferOrder: TransferOrder = await tx.getRepository(TransferOrder).findOne({\n where: { name: toNo },\n relations: ['bizplace', 'orderInventory']\n })\n\n await addTransferOrderInventories(domain, transferOrder, orderInventories, user, tx)\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => TransferOrder)\n async cancelTransferOrder(\n @Arg('patch', type => TransferOrderPatch) patch: TransferOrderPatch,\n @Ctx() context: any\n ): Promise<TransferOrder> {\n const { tx, domain, user }: { tx: EntityManager; domain: Domain; user: User } = context.state\n\n const bizplace: Bizplace = await getOutletBizplace(patch.warehouseId)\n\n const transferOrder: TransferOrder = await tx.getRepository(TransferOrder).findOne({\n where: { domain, bizplace, name: patch.name },\n relations: ['bizplace', 'orderInventories']\n })\n\n if (!transferOrder) throw new Error(`Transfer order does not exist.`)\n if (!patch.status) throw new Error('Status was not specified.')\n // if (patch.status && (patch.status !== ORDER_STATUS.PENDING_CANCEL || patch.status !== ORDER_STATUS.CANCELLED))\n // throw new Error(`Status provided was invalid.`)\n\n let foundOIs: OrderInventory[] = transferOrder.orderInventories\n\n // 1. Update status of order inventories based on status (to PENDING_CANCEL or CANCELLED)\n if (foundOIs && foundOIs.length) {\n foundOIs = foundOIs.map((oi: OrderInventory) => {\n ;(oi.status = patch.status), (oi.updater = user)\n return oi\n })\n }\n await tx.getRepository(OrderInventory).save(foundOIs)\n\n // 2. Update transfer order status\n return await tx.getRepository(TransferOrder).save({\n ...transferOrder,\n remark: patch.remark, //think another way if warehouse confirm cancellation > no need to overwrite remark\n status: patch.status,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => TransferOrder)\n async createTransferOrder(\n @Arg('transferOrder', type => NewTransferOrder) transferOrder: NewTransferOrder,\n @Ctx() context: any\n ): Promise<TransferOrder> {\n const { tx, domain, user }: { tx: EntityManager; domain: Domain; user: User } = context.state\n\n let orderInventories: NewOrderInventory[] = transferOrder.orderInventories\n const myBizplace: Bizplace = await getOutletBizplace(transferOrder.warehouseId)\n\n // #1 Find the related retail replenishment order\n const retailReplenishmentOrder: RetailReplenishmentOrder = await tx\n .getRepository(RetailReplenishmentOrder)\n .findOne({\n where: { domain, bizplace: myBizplace, refNo: transferOrder.refNo },\n relations: ['domain', 'bizplace']\n })\n\n // #2 Create Transfer Order\n const createdTransferOrder: TransferOrder = await tx.getRepository(TransferOrder).save({\n ...(transferOrder as any),\n name: OrderNoGenerator.transferOrder(),\n bizplace: myBizplace,\n retailReplenishmentOrder: retailReplenishmentOrder ? retailReplenishmentOrder.id : null,\n status: ORDER_STATUS.PENDING_RECEIVE,\n domain,\n creator: user,\n updater: user\n })\n\n // #3 Create Transfer Order inventories\n await addTransferOrderInventories(\n domain,\n createdTransferOrder,\n orderInventories.map((oi: NewOrderInventory) => {\n return { ...oi, status: ORDER_INVENTORY_STATUS.PENDING_RECEIVE }\n }),\n user,\n tx\n )\n\n return createdTransferOrder\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean)\n async generateTransferOrder(\n @Arg('transferOrder', type => NewTransferOrder) transferOrder: NewTransferOrder,\n @Ctx() context: any\n ): Promise<boolean> {\n const { tx, domain, user }: { tx: EntityManager; domain: Domain; user: User } = context.state\n\n await generateTransferOrder(transferOrder, domain, user, tx)\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => TransferOrder)\n async completeTransferOrder(\n @Arg('patch', type => TransferOrderPatch) patch: TransferOrderPatch,\n @Ctx() context: any\n ): Promise<TransferOrder> {\n const { tx, domain, user }: { tx: EntityManager; domain: Domain; user: User } = context.state\n\n const myBizplace: Bizplace = await getOutletBizplace(patch.warehouseId)\n let targetOIs: NewOrderInventory[] = patch.orderInventories\n let partialReceived = false\n\n // #1 Find Transfer Order\n const foundTO: TransferOrder = await tx.getRepository(TransferOrder).findOne({\n where: { domain, name: patch.name, bizplace: myBizplace },\n relations: ['bizplace', 'orderInventories']\n })\n\n if (!foundTO) throw new Error(`Transfer order does not exist.`)\n if (foundTO && foundTO.status && foundTO.status === ORDER_STATUS.RECEIVED)\n throw new Error(`Transfer order is already completed.`)\n\n // #2 Find related order inventories\n let foundOIs: OrderInventory[] = await tx.getRepository(OrderInventory).find({\n where: { domain, transferOrder: foundTO }\n })\n\n if (!foundOIs) throw new Error(`Order inventories were not found.`)\n\n foundOIs = foundOIs.map((oi: OrderInventory) => {\n targetOIs.forEach((toi: NewOrderInventory) => {\n // #2.1 Update the status of order inventories accordingly\n if (oi.name === toi.name && oi.batchId === toi.batchId) {\n //need to add appropriate condition in future\n oi.status = toi.status\n if (toi.remark) oi.remark = toi.remark\n }\n // #2.2 Check the status of order inventories if there is unreceived item\n if (toi.status.includes(ORDER_INVENTORY_STATUS.NOT_RECEIVED)) partialReceived = true\n })\n oi.updater = user\n return oi\n })\n await tx.getRepository(OrderInventory).save(foundOIs)\n\n // #3 Update status of stock replenishment order (RECEIVED / PARTIALLY_RECEIVED)\n return await getRepository(TransferOrder).save({\n ...foundTO,\n status: partialReceived ? ORDER_STATUS.PARTIAL_RECEIVED : ORDER_STATUS.RECEIVED,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean)\n async deleteTransferOrder(@Arg('name') name: string, @Ctx() context: any): Promise<boolean> {\n const { tx, domain }: { tx: EntityManager; domain: Domain } = context.state\n\n await tx.getRepository(TransferOrder).delete({ domain, name })\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean)\n async deleteTransferOrders(@Arg('names', type => [String]) names: string[], @Ctx() context: any): Promise<boolean> {\n const { tx, domain }: { tx: EntityManager; domain: Domain } = context.state\n await tx.getRepository(TransferOrder).delete({\n domain,\n name: In(names)\n })\n return true\n }\n}\n\nexport async function addTransferOrderInventories(\n domain: Domain,\n transferOrder: TransferOrder,\n orderInventories: (OrderInventory | NewOrderInventory)[],\n user: User,\n tx?: EntityManager\n): Promise<void> {\n const productRepo: Repository<Product> = tx?.getRepository(Product) || getRepository(Product)\n const orderInventoryRepo: Repository<OrderInventory> =\n tx?.getRepository(OrderInventory) || getRepository(OrderInventory)\n\n if (!transferOrder?.bizplace || !transferOrder?.orderInventories?.length) {\n transferOrder = await tx.getRepository(TransferOrder).findOne({\n where: { ...transferOrder },\n relations: ['bizplace', 'orderInventories']\n })\n }\n\n orderInventories = await Promise.all(\n orderInventories.map(async (oi: OrderInventory) => {\n const foundProduct: Product = await productRepo.findOne({ domain, sku: oi.product.sku, name: oi.product.name })\n return {\n ...oi,\n domain,\n bizplace: transferOrder.bizplace,\n name: OrderNoGenerator.orderInventory(),\n product: foundProduct,\n productName: foundProduct.name,\n releaseWeight: foundProduct.weight * oi.releaseQty,\n packingType: foundProduct.packingType,\n type: ORDER_TYPES.TRANSFER_ORDER,\n transferOrder,\n creator: user,\n updater: user\n }\n })\n )\n\n //add lock qty\n\n await orderInventoryRepo.save(orderInventories)\n}\n\nexport async function generateTransferOrder(\n transferOrder: NewTransferOrder,\n domain: Domain,\n user: User,\n tx?: EntityManager\n): Promise<TransferOrder> {\n const settingRepo: Repository<Setting> = tx?.getRepository(Setting) || getRepository(Setting)\n let orderInventories: NewOrderInventory[] = transferOrder.orderInventories\n let orderNo: string = ''\n\n // find TO number rule setting\n const toNoSetting: Setting = await settingRepo.findOne({\n where: {\n domain,\n name: ORDER_NUMBER_SETTING_KEY.TO_NUMBER_RULE\n }\n })\n\n if (toNoSetting) {\n orderNo = await generateId({ domain, type: ORDER_NUMBER_RULE_TYPE.TO_NUMBER, seed: {} })\n } else {\n orderNo = OrderNoGenerator.transferOrder()\n }\n\n // #1 Create Transfer Order\n const createdTransferOrder: TransferOrder = await tx.getRepository(TransferOrder).save({\n ...transferOrder,\n name: orderNo,\n status: ORDER_STATUS.PENDING_RECEIVE,\n domain: domain,\n creator: user,\n updater: user\n })\n\n // #2 Create Transfer Order inventories\n await addTransferOrderInventories(\n domain,\n createdTransferOrder,\n orderInventories.map((oi: NewOrderInventory) => {\n return { ...oi, status: ORDER_INVENTORY_STATUS.PENDING_SPLIT }\n }),\n user,\n tx\n )\n\n return createdTransferOrder\n}\n"]}
|
|
1
|
+
{"version":3,"file":"transfer-order-mutation.js","sourceRoot":"","sources":["../../../server/service/transfer-order/transfer-order-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { EntityManager, In, Repository } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Bizplace, getOutletBizplace } from '@things-factory/biz-base'\nimport { generateId } from '@things-factory/id-rule-base'\nimport { Product } from '@things-factory/product-base'\nimport { Setting } from '@things-factory/setting-base'\nimport { Domain, getRepository } from '@things-factory/shell'\n\nimport { NewOrderInventory, NewTransferOrder, OrderInventory, RetailReplenishmentOrder, TransferOrderPatch } from '../'\nimport {\n ORDER_INVENTORY_STATUS,\n ORDER_NUMBER_RULE_TYPE,\n ORDER_NUMBER_SETTING_KEY,\n ORDER_STATUS,\n ORDER_TYPES\n} from '../../constants'\nimport { OrderNoGenerator } from '../../utils'\nimport { TransferOrder } from './transfer-order'\n\n@Resolver(TransferOrder)\nexport class TransferOrderMutation {\n @Directive('@transaction')\n @Mutation(returns => Boolean)\n async addTransferOrderInventories(\n @Arg('toNo') toNo: string,\n @Arg('orderInventories', type => [NewOrderInventory]) orderInventories: NewOrderInventory[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { tx, domain, user } = context.state\n\n const transferOrder: TransferOrder = await tx.getRepository(TransferOrder).findOne({\n where: { name: toNo },\n relations: ['bizplace', 'orderInventory']\n })\n\n await addTransferOrderInventories(domain, transferOrder, orderInventories, user, tx)\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => TransferOrder)\n async cancelTransferOrder(\n @Arg('patch', type => TransferOrderPatch) patch: TransferOrderPatch,\n @Ctx() context: ResolverContext\n ): Promise<TransferOrder> {\n const { tx, domain, user } = context.state\n\n const bizplace: Bizplace = await getOutletBizplace(patch.warehouseId)\n\n const transferOrder: TransferOrder = await tx.getRepository(TransferOrder).findOne({\n where: { domain: { id: domain.id }, bizplace, name: patch.name },\n relations: ['bizplace', 'orderInventories']\n })\n\n if (!transferOrder) throw new Error(`Transfer order does not exist.`)\n if (!patch.status) throw new Error('Status was not specified.')\n // if (patch.status && (patch.status !== ORDER_STATUS.PENDING_CANCEL || patch.status !== ORDER_STATUS.CANCELLED))\n // throw new Error(`Status provided was invalid.`)\n\n let foundOIs: OrderInventory[] = transferOrder.orderInventories\n\n // 1. Update status of order inventories based on status (to PENDING_CANCEL or CANCELLED)\n if (foundOIs && foundOIs.length) {\n foundOIs = foundOIs.map((oi: OrderInventory) => {\n ;(oi.status = patch.status), (oi.updater = user)\n return oi\n })\n }\n await tx.getRepository(OrderInventory).save(foundOIs)\n\n // 2. Update transfer order status\n return await tx.getRepository(TransferOrder).save({\n ...transferOrder,\n remark: patch.remark, //think another way if warehouse confirm cancellation > no need to overwrite remark\n status: patch.status,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => TransferOrder)\n async createTransferOrder(\n @Arg('transferOrder', type => NewTransferOrder) transferOrder: NewTransferOrder,\n @Ctx() context: ResolverContext\n ): Promise<TransferOrder> {\n const { tx, domain, user } = context.state\n\n let orderInventories: NewOrderInventory[] = transferOrder.orderInventories\n const myBizplace: Bizplace = await getOutletBizplace(transferOrder.warehouseId)\n\n // #1 Find the related retail replenishment order\n const retailReplenishmentOrder: RetailReplenishmentOrder = await tx\n .getRepository(RetailReplenishmentOrder)\n .findOne({\n where: { domain: { id: domain.id }, bizplace: myBizplace, refNo: transferOrder.refNo },\n relations: ['domain', 'bizplace']\n })\n\n // #2 Create Transfer Order\n const createdTransferOrder: TransferOrder = await tx.getRepository(TransferOrder).save({\n ...(transferOrder as any),\n name: OrderNoGenerator.transferOrder(),\n bizplace: myBizplace,\n retailReplenishmentOrder: retailReplenishmentOrder ? retailReplenishmentOrder.id : null,\n status: ORDER_STATUS.PENDING_RECEIVE,\n domain,\n creator: user,\n updater: user\n })\n\n // #3 Create Transfer Order inventories\n await addTransferOrderInventories(\n domain,\n createdTransferOrder,\n orderInventories.map((oi: NewOrderInventory) => {\n return { ...oi, status: ORDER_INVENTORY_STATUS.PENDING_RECEIVE }\n }),\n user,\n tx\n )\n\n return createdTransferOrder\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean)\n async generateTransferOrder(\n @Arg('transferOrder', type => NewTransferOrder) transferOrder: NewTransferOrder,\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { tx, domain, user } = context.state\n\n await generateTransferOrder(transferOrder, domain, user, tx)\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => TransferOrder)\n async completeTransferOrder(\n @Arg('patch', type => TransferOrderPatch) patch: TransferOrderPatch,\n @Ctx() context: ResolverContext\n ): Promise<TransferOrder> {\n const { tx, domain, user } = context.state\n\n const myBizplace: Bizplace = await getOutletBizplace(patch.warehouseId)\n let targetOIs: NewOrderInventory[] = patch.orderInventories\n let partialReceived = false\n\n // #1 Find Transfer Order\n const foundTO: TransferOrder = await tx.getRepository(TransferOrder).findOne({\n where: { domain: { id: domain.id }, name: patch.name, bizplace: myBizplace },\n relations: ['bizplace', 'orderInventories']\n })\n\n if (!foundTO) throw new Error(`Transfer order does not exist.`)\n if (foundTO && foundTO.status && foundTO.status === ORDER_STATUS.RECEIVED)\n throw new Error(`Transfer order is already completed.`)\n\n // #2 Find related order inventories\n let foundOIs: OrderInventory[] = await tx.getRepository(OrderInventory).find({\n where: { domain: { id: domain.id }, transferOrder: { id: foundTO.id } }\n })\n\n if (!foundOIs) throw new Error(`Order inventories were not found.`)\n\n foundOIs = foundOIs.map((oi: OrderInventory) => {\n targetOIs.forEach((toi: NewOrderInventory) => {\n // #2.1 Update the status of order inventories accordingly\n if (oi.name === toi.name && oi.batchId === toi.batchId) {\n //need to add appropriate condition in future\n oi.status = toi.status\n if (toi.remark) oi.remark = toi.remark\n }\n // #2.2 Check the status of order inventories if there is unreceived item\n if (toi.status.includes(ORDER_INVENTORY_STATUS.NOT_RECEIVED)) partialReceived = true\n })\n oi.updater = user\n return oi\n })\n await tx.getRepository(OrderInventory).save(foundOIs)\n\n // #3 Update status of stock replenishment order (RECEIVED / PARTIALLY_RECEIVED)\n return await getRepository(TransferOrder).save({\n ...foundTO,\n status: partialReceived ? ORDER_STATUS.PARTIAL_RECEIVED : ORDER_STATUS.RECEIVED,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean)\n async deleteTransferOrder(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<boolean> {\n const { tx, domain } = context.state\n\n await tx.getRepository(TransferOrder).delete({ domain, name })\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean)\n async deleteTransferOrders(\n @Arg('names', type => [String]) names: string[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { tx, domain } = context.state\n await tx.getRepository(TransferOrder).delete({\n domain: { id: domain.id },\n name: In(names)\n })\n return true\n }\n}\n\nexport async function addTransferOrderInventories(\n domain: Domain,\n transferOrder: TransferOrder,\n orderInventories: (OrderInventory | NewOrderInventory)[],\n user: User,\n tx?: EntityManager\n): Promise<void> {\n const productRepo: Repository<Product> = tx?.getRepository(Product) || getRepository(Product)\n const orderInventoryRepo: Repository<OrderInventory> =\n tx?.getRepository(OrderInventory) || getRepository(OrderInventory)\n\n if (!transferOrder?.bizplace || !transferOrder?.orderInventories?.length) {\n transferOrder = await tx.getRepository(TransferOrder).findOne({\n where: { id: transferOrder.id } /* CONFIRMME regarding TYPEORM */,\n relations: ['bizplace', 'orderInventories']\n })\n }\n\n orderInventories = await Promise.all(\n orderInventories.map(async (oi: OrderInventory) => {\n const foundProduct: Product = await productRepo.findOneBy({\n domain: { id: domain.id },\n sku: oi.product.sku,\n name: oi.product.name\n })\n return {\n ...oi,\n domain,\n bizplace: transferOrder.bizplace,\n name: OrderNoGenerator.orderInventory(),\n product: foundProduct,\n productName: foundProduct.name,\n releaseWeight: foundProduct.weight * oi.releaseQty,\n packingType: foundProduct.packingType,\n type: ORDER_TYPES.TRANSFER_ORDER,\n transferOrder,\n creator: user,\n updater: user\n }\n })\n )\n\n //add lock qty\n\n await orderInventoryRepo.save(orderInventories)\n}\n\nexport async function generateTransferOrder(\n transferOrder: NewTransferOrder,\n domain: Domain,\n user: User,\n tx?: EntityManager\n): Promise<TransferOrder> {\n const settingRepo: Repository<Setting> = tx?.getRepository(Setting) || getRepository(Setting)\n let orderInventories: NewOrderInventory[] = transferOrder.orderInventories\n let orderNo: string = ''\n\n // find TO number rule setting\n const toNoSetting: Setting = await settingRepo.findOne({\n where: {\n domain: { id: domain.id },\n name: ORDER_NUMBER_SETTING_KEY.TO_NUMBER_RULE\n }\n })\n\n if (toNoSetting) {\n orderNo = await generateId({ domain, type: ORDER_NUMBER_RULE_TYPE.TO_NUMBER, seed: {} })\n } else {\n orderNo = OrderNoGenerator.transferOrder()\n }\n\n // #1 Create Transfer Order\n const createdTransferOrder: TransferOrder = await tx.getRepository(TransferOrder).save({\n ...transferOrder,\n name: orderNo,\n status: ORDER_STATUS.PENDING_RECEIVE,\n domain: domain,\n creator: user,\n updater: user\n })\n\n // #2 Create Transfer Order inventories\n await addTransferOrderInventories(\n domain,\n createdTransferOrder,\n orderInventories.map((oi: NewOrderInventory) => {\n return { ...oi, status: ORDER_INVENTORY_STATUS.PENDING_SPLIT }\n }),\n user,\n tx\n )\n\n return createdTransferOrder\n}\n"]}
|
|
@@ -1,18 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var _a;
|
|
3
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
3
|
exports.TransferOrderQuery = void 0;
|
|
5
4
|
const tslib_1 = require("tslib");
|
|
5
|
+
const type_graphql_1 = require("type-graphql");
|
|
6
6
|
const auth_base_1 = require("@things-factory/auth-base");
|
|
7
7
|
const shell_1 = require("@things-factory/shell");
|
|
8
|
-
const type_graphql_1 = require("type-graphql");
|
|
9
|
-
const typeorm_1 = require("typeorm");
|
|
10
8
|
const __1 = require("../");
|
|
11
9
|
const transfer_order_1 = require("./transfer-order");
|
|
12
10
|
let TransferOrderQuery = class TransferOrderQuery {
|
|
13
11
|
async transferOrders(context, filters, pagination, sortings) {
|
|
14
12
|
const convertedParams = (0, shell_1.convertListParams)({ filters, pagination, sortings });
|
|
15
|
-
const [items, total] = await (0,
|
|
13
|
+
const [items, total] = await (0, shell_1.getRepository)(transfer_order_1.TransferOrder).findAndCount(Object.assign(Object.assign({}, convertedParams), { relations: [
|
|
16
14
|
'domain',
|
|
17
15
|
'orderInventories',
|
|
18
16
|
'orderInventories.inventory',
|
|
@@ -24,9 +22,9 @@ let TransferOrderQuery = class TransferOrderQuery {
|
|
|
24
22
|
}
|
|
25
23
|
async transferOrder(name, context) {
|
|
26
24
|
const { domain } = context.state;
|
|
27
|
-
const repository = (0,
|
|
25
|
+
const repository = (0, shell_1.getRepository)(transfer_order_1.TransferOrder);
|
|
28
26
|
return await repository.findOne({
|
|
29
|
-
where: { domain, name },
|
|
27
|
+
where: { domain: { id: domain.id }, name },
|
|
30
28
|
relations: [
|
|
31
29
|
'domain',
|
|
32
30
|
'orderInventories',
|
|
@@ -38,13 +36,13 @@ let TransferOrderQuery = class TransferOrderQuery {
|
|
|
38
36
|
});
|
|
39
37
|
}
|
|
40
38
|
async domain(transferOrder) {
|
|
41
|
-
return await (0,
|
|
39
|
+
return await (0, shell_1.getRepository)(shell_1.Domain).findOneBy({ id: transferOrder.domainId });
|
|
42
40
|
}
|
|
43
41
|
async creator(transferOrder) {
|
|
44
|
-
return await (0,
|
|
42
|
+
return await (0, shell_1.getRepository)(auth_base_1.User).findOneBy({ id: transferOrder.creatorId });
|
|
45
43
|
}
|
|
46
44
|
async updater(transferOrder) {
|
|
47
|
-
return await (0,
|
|
45
|
+
return await (0, shell_1.getRepository)(auth_base_1.User).findOneBy({ id: transferOrder.updaterId });
|
|
48
46
|
}
|
|
49
47
|
};
|
|
50
48
|
tslib_1.__decorate([
|
|
@@ -54,7 +52,7 @@ tslib_1.__decorate([
|
|
|
54
52
|
tslib_1.__param(2, (0, type_graphql_1.Arg)('pagination', type => shell_1.Pagination, { nullable: true })),
|
|
55
53
|
tslib_1.__param(3, (0, type_graphql_1.Arg)('sortings', type => [shell_1.Sorting], { nullable: true })),
|
|
56
54
|
tslib_1.__metadata("design:type", Function),
|
|
57
|
-
tslib_1.__metadata("design:paramtypes", [Object, Array,
|
|
55
|
+
tslib_1.__metadata("design:paramtypes", [Object, Array, shell_1.Pagination, Array]),
|
|
58
56
|
tslib_1.__metadata("design:returntype", Promise)
|
|
59
57
|
], TransferOrderQuery.prototype, "transferOrders", null);
|
|
60
58
|
tslib_1.__decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transfer-order-query.js","sourceRoot":"","sources":["../../../server/service/transfer-order/transfer-order-query.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"transfer-order-query.js","sourceRoot":"","sources":["../../../server/service/transfer-order/transfer-order-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'\n\nimport { User } from '@things-factory/auth-base'\nimport { convertListParams, Domain, Filter, getRepository, Pagination, Sorting } from '@things-factory/shell'\n\nimport { TransferOrderList } from '../'\nimport { TransferOrder } from './transfer-order'\n\n@Resolver(TransferOrder)\nexport class TransferOrderQuery {\n @Query(returns => TransferOrderList)\n async transferOrders(\n @Ctx() context: ResolverContext,\n @Arg('filters', type => [Filter], { nullable: true }) filters?: Filter[],\n @Arg('pagination', type => Pagination, { nullable: true }) pagination?: Pagination,\n @Arg('sortings', type => [Sorting], { nullable: true }) sortings?: Sorting[]\n ): Promise<TransferOrderList> {\n const convertedParams = convertListParams({ filters, pagination, sortings })\n const [items, total] = await getRepository(TransferOrder).findAndCount({\n ...convertedParams,\n relations: [\n 'domain',\n 'orderInventories',\n 'orderInventories.inventory',\n 'orderInventories.product',\n 'creator',\n 'updater'\n ]\n })\n return { items, total }\n }\n\n @Query(returns => TransferOrder)\n async transferOrder(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<TransferOrder> {\n const { domain } = context.state\n\n const repository = getRepository(TransferOrder)\n\n return await repository.findOne({\n where: { domain: { id: domain.id }, name },\n relations: [\n 'domain',\n 'orderInventories',\n 'orderInventories.inventory',\n 'orderInventories.product',\n 'creator',\n 'updater'\n ]\n })\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() transferOrder: TransferOrder): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: transferOrder.domainId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() transferOrder: TransferOrder): Promise<User> {\n return await getRepository(User).findOneBy({ id: transferOrder.creatorId })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() transferOrder: TransferOrder): Promise<User> {\n return await getRepository(User).findOneBy({ id: transferOrder.updaterId })\n }\n}\n"]}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var _a;
|
|
3
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
3
|
exports.TransferOrderPatch = exports.NewTransferOrder = exports.TransferOrderList = void 0;
|
|
5
4
|
const tslib_1 = require("tslib");
|
|
@@ -61,7 +60,7 @@ tslib_1.__decorate([
|
|
|
61
60
|
], NewTransferOrder.prototype, "orderInventories", void 0);
|
|
62
61
|
tslib_1.__decorate([
|
|
63
62
|
(0, type_graphql_1.Field)(type => shell_1.ObjectRef, { nullable: true }),
|
|
64
|
-
tslib_1.__metadata("design:type",
|
|
63
|
+
tslib_1.__metadata("design:type", shell_1.ObjectRef)
|
|
65
64
|
], NewTransferOrder.prototype, "deliveryOrder", void 0);
|
|
66
65
|
tslib_1.__decorate([
|
|
67
66
|
(0, type_graphql_1.Field)({ nullable: true }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transfer-order-types.js","sourceRoot":"","sources":["../../../server/service/transfer-order/transfer-order-types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"transfer-order-types.js","sourceRoot":"","sources":["../../../server/service/transfer-order/transfer-order-types.ts"],"names":[],"mappings":";;;;AAAA,iDAAiD;AACjD,+CAAgE;AAChE,oFAA4E;AAC5E,qDAAgD;AAGhD,IAAa,iBAAiB,GAA9B,MAAa,iBAAiB;CAM7B,CAAA;AAJC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,8BAAa,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDAC7B;AAGtB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,kBAAG,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDAC1B;AALF,iBAAiB;IAD7B,IAAA,yBAAU,GAAE;GACA,iBAAiB,CAM7B;AANY,8CAAiB;AAS9B,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;CAoC5B,CAAA;AAlCC;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACd;AAGZ;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACP;AAGnB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;+CACb;AAGb;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDACZ;AAGd;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCACZ,OAAO;sDAAA;AAGrB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACd;AAGZ;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDACZ;AAGd;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,iBAAS,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDAC1B;AAGrB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,yCAAiB,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;0DAClB;AAGrC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCAC9B,iBAAS;uDAAA;AAGxB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDACR;AAGlB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACP;AAnCR,gBAAgB;IAD5B,IAAA,wBAAS,GAAE;GACC,gBAAgB,CAoC5B;AApCY,4CAAgB;AAuC7B,IAAa,kBAAkB,GAA/B,MAAa,kBAAkB;CA0C9B,CAAA;AAxCC;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CAChB;AAGV;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDACd;AAGZ;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;uDACP;AAGnB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;uDACP;AAGnB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;iDACb;AAGb;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACZ;AAGd;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCACZ,OAAO;wDAAA;AAGrB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDACd;AAGZ;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACZ;AAGd;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,iBAAS,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDAC1B;AAGrB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,yCAAiB,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;4DAClB;AAGrC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,iBAAS,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yDACrB;AAG1B;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;sDACR;AAGlB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACZ;AAzCH,kBAAkB;IAD9B,IAAA,wBAAS,GAAE;GACC,kBAAkB,CA0C9B;AA1CY,gDAAkB","sourcesContent":["import { ObjectRef } from '@things-factory/shell'\nimport { Field, InputType, Int, ObjectType } from 'type-graphql'\nimport { NewOrderInventory } from '../order-inventory/order-inventory-types'\nimport { TransferOrder } from './transfer-order'\n\n@ObjectType()\nexport class TransferOrderList {\n @Field(type => [TransferOrder], { nullable: true })\n items: TransferOrder[]\n\n @Field(type => Int, { nullable: true })\n total: number\n}\n\n@InputType()\nexport class NewTransferOrder {\n @Field({ nullable: true })\n name: string\n\n @Field({ nullable: true })\n description: string\n\n @Field({ nullable: true })\n refNo: string\n\n @Field({ nullable: true })\n remark: string\n\n @Field({ nullable: true })\n ownTransport: Boolean\n\n @Field({ nullable: true })\n type: string\n\n @Field({ nullable: true })\n status: string\n\n @Field(type => [ObjectRef], { nullable: true })\n orderVas: [ObjectRef]\n\n @Field(type => [NewOrderInventory], { nullable: true })\n orderInventories: [NewOrderInventory]\n\n @Field(type => ObjectRef, { nullable: true })\n deliveryOrder: ObjectRef\n\n @Field({ nullable: true })\n issuedDate: string\n\n @Field({ nullable: true })\n warehouseId: string // outletID\n}\n\n@InputType()\nexport class TransferOrderPatch {\n @Field({ nullable: true })\n id: string\n\n @Field({ nullable: true })\n name: string\n\n @Field({ nullable: true })\n warehouseId: string // outletID\n\n @Field({ nullable: true })\n description: string\n\n @Field({ nullable: true })\n refNo: string\n\n @Field({ nullable: true })\n remark: string\n\n @Field({ nullable: true })\n ownTransport: Boolean\n\n @Field({ nullable: true })\n type: string\n\n @Field({ nullable: true })\n status: string\n\n @Field(type => [ObjectRef], { nullable: true })\n orderVas: [ObjectRef]\n\n @Field(type => [NewOrderInventory], { nullable: true })\n orderInventories: [NewOrderInventory]\n\n @Field(type => [ObjectRef], { nullable: true })\n deliveryOrder: [ObjectRef]\n\n @Field({ nullable: true })\n issuedDate: string\n\n @Field({ nullable: true })\n cuFlag: string\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var _a
|
|
2
|
+
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.TransferOrder = void 0;
|
|
5
5
|
const tslib_1 = require("tslib");
|
|
@@ -19,7 +19,7 @@ tslib_1.__decorate([
|
|
|
19
19
|
tslib_1.__decorate([
|
|
20
20
|
(0, typeorm_1.ManyToOne)(type => shell_1.Domain),
|
|
21
21
|
(0, type_graphql_1.Field)(type => shell_1.Domain, { nullable: true }),
|
|
22
|
-
tslib_1.__metadata("design:type",
|
|
22
|
+
tslib_1.__metadata("design:type", shell_1.Domain)
|
|
23
23
|
], TransferOrder.prototype, "domain", void 0);
|
|
24
24
|
tslib_1.__decorate([
|
|
25
25
|
(0, typeorm_1.RelationId)((transferOrder) => transferOrder.domain),
|
|
@@ -28,7 +28,7 @@ tslib_1.__decorate([
|
|
|
28
28
|
tslib_1.__decorate([
|
|
29
29
|
(0, typeorm_1.ManyToOne)(type => biz_base_1.Bizplace),
|
|
30
30
|
(0, type_graphql_1.Field)(type => biz_base_1.Bizplace, { nullable: true }),
|
|
31
|
-
tslib_1.__metadata("design:type", typeof (
|
|
31
|
+
tslib_1.__metadata("design:type", typeof (_a = typeof biz_base_1.Bizplace !== "undefined" && biz_base_1.Bizplace) === "function" ? _a : Object)
|
|
32
32
|
], TransferOrder.prototype, "bizplace", void 0);
|
|
33
33
|
tslib_1.__decorate([
|
|
34
34
|
(0, typeorm_1.RelationId)((transferOrder) => transferOrder.bizplace),
|
|
@@ -112,7 +112,7 @@ tslib_1.__decorate([
|
|
|
112
112
|
tslib_1.__decorate([
|
|
113
113
|
(0, typeorm_1.ManyToOne)(type => auth_base_1.User),
|
|
114
114
|
(0, type_graphql_1.Field)(type => auth_base_1.User, { nullable: true }),
|
|
115
|
-
tslib_1.__metadata("design:type",
|
|
115
|
+
tslib_1.__metadata("design:type", auth_base_1.User)
|
|
116
116
|
], TransferOrder.prototype, "creator", void 0);
|
|
117
117
|
tslib_1.__decorate([
|
|
118
118
|
(0, typeorm_1.RelationId)((transferOrder) => transferOrder.creator),
|
|
@@ -121,7 +121,7 @@ tslib_1.__decorate([
|
|
|
121
121
|
tslib_1.__decorate([
|
|
122
122
|
(0, typeorm_1.ManyToOne)(type => auth_base_1.User),
|
|
123
123
|
(0, type_graphql_1.Field)(type => auth_base_1.User, { nullable: true }),
|
|
124
|
-
tslib_1.__metadata("design:type",
|
|
124
|
+
tslib_1.__metadata("design:type", auth_base_1.User)
|
|
125
125
|
], TransferOrder.prototype, "updater", void 0);
|
|
126
126
|
tslib_1.__decorate([
|
|
127
127
|
(0, typeorm_1.RelationId)((transferOrder) => transferOrder.updater),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transfer-order.js","sourceRoot":"","sources":["../../../server/service/transfer-order/transfer-order.ts"],"names":[],"mappings":";;;;;AAAA,yDAAgD;AAChD,uDAAmD;AACnD,iDAA8C;AAC9C,+CAAoD;AACpD,qCAYgB;AAChB,2BAAuF;AAOvF,IAAa,aAAa,GAA1B,MAAa,aAAa;CA4FzB,CAAA;AAzFC;IAFC,IAAA,gCAAsB,EAAC,MAAM,CAAC;IAC9B,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAE,CAAC;;yCACC;AAInB;IAFC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,cAAM,CAAC;IACzB,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,cAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"transfer-order.js","sourceRoot":"","sources":["../../../server/service/transfer-order/transfer-order.ts"],"names":[],"mappings":"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","sourcesContent":["import { User } from '@things-factory/auth-base'\nimport { Bizplace } from '@things-factory/biz-base'\nimport { Domain } from '@things-factory/shell'\nimport { Field, ID, ObjectType } from 'type-graphql'\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n JoinColumn,\n ManyToOne,\n OneToMany,\n OneToOne,\n PrimaryGeneratedColumn,\n RelationId,\n UpdateDateColumn\n} from 'typeorm'\nimport { DeliveryOrder, OrderInventory, OrderVas, RetailReplenishmentOrder } from '../'\n\n@Entity()\n@Index('ix_transfer_order_0', (transferOrder: TransferOrder) => [transferOrder.domain, transferOrder.name], {\n unique: true\n})\n@ObjectType()\nexport class TransferOrder {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @ManyToOne(type => Domain)\n @Field(type => Domain, { nullable: true })\n domain: Domain\n\n @RelationId((transferOrder: TransferOrder) => transferOrder.domain)\n domainId: string\n\n @ManyToOne(type => Bizplace)\n @Field(type => Bizplace, { nullable: true })\n bizplace: Bizplace\n\n @RelationId((transferOrder: TransferOrder) => transferOrder.bizplace)\n bizplaceId: string\n\n @Column()\n @Field()\n name: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n description: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n refNo: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n remark: string\n\n @Column()\n @Field()\n ownTransport: Boolean\n\n @Column()\n @Field()\n type: string\n\n @Column()\n @Field()\n status: string\n\n @OneToMany(type => OrderVas, orderVas => orderVas.transferOrder)\n @Field(type => [OrderVas], { nullable: true })\n orderVass: OrderVas[]\n\n @OneToMany(type => OrderInventory, orderInventory => orderInventory.transferOrder)\n @Field(type => [OrderInventory], { nullable: true })\n orderInventories: OrderInventory[]\n\n @OneToMany(type => DeliveryOrder, deliveryOrder => deliveryOrder.transferOrder)\n @Field(type => [DeliveryOrder], { nullable: true })\n deliveryOrders: DeliveryOrder[]\n\n @OneToOne(type => RetailReplenishmentOrder)\n @JoinColumn()\n @Field(type => RetailReplenishmentOrder, { nullable: true })\n retailReplenishmentOrder: RetailReplenishmentOrder\n\n @RelationId((transferOrder: TransferOrder) => transferOrder.retailReplenishmentOrder)\n retailReplenishmentOrderId: string\n\n @Column({ type: 'date' })\n @Field()\n issuedDate: Date\n\n @CreateDateColumn()\n @Field()\n createdAt: Date\n\n @UpdateDateColumn()\n @Field()\n updatedAt: Date\n\n @ManyToOne(type => User)\n @Field(type => User, { nullable: true })\n creator: User\n\n @RelationId((transferOrder: TransferOrder) => transferOrder.creator)\n creatorId: string\n\n @ManyToOne(type => User)\n @Field(type => User, { nullable: true })\n updater: User\n\n @RelationId((transferOrder: TransferOrder) => transferOrder.updater)\n updaterId: string\n}\n"]}
|
|
@@ -12,7 +12,7 @@ let VasMutation = class VasMutation {
|
|
|
12
12
|
}
|
|
13
13
|
async updateVas(name, patch, context) {
|
|
14
14
|
const { tx, domain, user } = context.state;
|
|
15
|
-
const vas = await tx.getRepository(vas_1.Vas).
|
|
15
|
+
const vas = await tx.getRepository(vas_1.Vas).findOneBy({ domain: { id: domain.id }, name });
|
|
16
16
|
return await tx.getRepository(vas_1.Vas).save(Object.assign(Object.assign(Object.assign({}, vas), patch), { updater: user }));
|
|
17
17
|
}
|
|
18
18
|
async updateMultipleVas(patches, context) {
|
|
@@ -31,7 +31,7 @@ let VasMutation = class VasMutation {
|
|
|
31
31
|
if (_updateRecords.length > 0) {
|
|
32
32
|
for (let i = 0; i < _updateRecords.length; i++) {
|
|
33
33
|
const newRecord = _updateRecords[i];
|
|
34
|
-
const vas = await vasRepo.
|
|
34
|
+
const vas = await vasRepo.findOneBy({ id: newRecord.id });
|
|
35
35
|
const result = await vasRepo.save(Object.assign(Object.assign(Object.assign({}, vas), newRecord), { updater: user }));
|
|
36
36
|
results.push(Object.assign(Object.assign({}, result), { cuFlag: 'M' }));
|
|
37
37
|
}
|