@things-factory/operato-mms 4.3.174 → 4.3.176

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.
@@ -8,8 +8,10 @@ const marketplace_base_1 = require("@things-factory/marketplace-base");
8
8
  const product_base_1 = require("@things-factory/product-base");
9
9
  const shell_1 = require("@things-factory/shell");
10
10
  const auth_base_1 = require("@things-factory/auth-base");
11
+ const env_1 = require("@things-factory/env");
11
12
  exports.addReleaseOrderResolver = {
12
13
  async addReleaseOrder(_, { marketplaceOrderIds, warehouseId }, context) {
14
+ var _a;
13
15
  const { domain } = context.state;
14
16
  const fulfilmentCenter = await integration_fulfillment_1.FulfillmentAPI.getFulfillmentCenter(warehouseId);
15
17
  const centerId = fulfilmentCenter.centerId;
@@ -92,6 +94,15 @@ exports.addReleaseOrderResolver = {
92
94
  customerBizplaceId,
93
95
  releaseOrder: newReleaseOrder
94
96
  });
97
+ // deduct reserve qty
98
+ if ((_a = marketplaceOrder === null || marketplaceOrder === void 0 ? void 0 : marketplaceOrder.marketplaceStore) === null || _a === void 0 ? void 0 : _a.reserveEnabled) {
99
+ try {
100
+ await deductReservedQty(marketplaceOrderItems, domain);
101
+ }
102
+ catch (e) {
103
+ env_1.logger.error(`[add-release-order] failed to deduct reserved qty (${marketplaceOrder.orderNo})`);
104
+ }
105
+ }
95
106
  marketplaceOrderShipping.releaseOrderId = releaseOrder.id;
96
107
  marketplaceOrderShipping.fulfillmentCenter = fulfilmentCenter;
97
108
  await (0, typeorm_1.getRepository)(marketplace_base_1.MarketplaceOrderShipping).save(marketplaceOrderShipping);
@@ -175,4 +186,30 @@ exports.addReleaseOrderResolver = {
175
186
  }
176
187
  }
177
188
  };
189
+ async function deductReservedQty(marketplaceOrderItems, domain) {
190
+ for (let item of marketplaceOrderItems) {
191
+ let variations = await (0, typeorm_1.getRepository)(marketplace_base_1.MarketplaceProductVariation).find({
192
+ where: { sku: item.marketplaceProductVariation.sku, domain }
193
+ });
194
+ for (let variation of variations) {
195
+ let newReserve = variation.reserveQty - item.qty;
196
+ await (0, typeorm_1.getRepository)(marketplace_base_1.MarketplaceProductVariation).update({ id: variation.id }, { reserveQty: newReserve > 0 ? newReserve : 0 });
197
+ }
198
+ let bundle = await (0, typeorm_1.getRepository)(product_base_1.ProductBundle).findOne({
199
+ where: { sku: item.marketplaceProductVariation.sku, domain },
200
+ relations: ['productBundleSettings', 'productBundleSettings.product']
201
+ });
202
+ if (bundle) {
203
+ for (let setting of bundle.productBundleSettings) {
204
+ let bundleVariations = await (0, typeorm_1.getRepository)(marketplace_base_1.MarketplaceProductVariation).find({
205
+ where: { sku: setting.product.sku, domain }
206
+ });
207
+ for (let bundleVariation of bundleVariations) {
208
+ let newReserve = bundleVariation.reserveQty - item.qty * setting.bundleQty;
209
+ await (0, typeorm_1.getRepository)(marketplace_base_1.MarketplaceProductVariation).update({ id: bundleVariation.id }, { reserveQty: newReserve > 0 ? newReserve : 0 });
210
+ }
211
+ }
212
+ }
213
+ }
214
+ }
178
215
  //# sourceMappingURL=add-release-order.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"add-release-order.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/interface-with-hub/add-release-order.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add-release-order.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/interface-with-hub/add-release-order.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/operato-mms",
3
- "version": "4.3.174",
3
+ "version": "4.3.176",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -59,50 +59,50 @@
59
59
  "@operato/scene-table": "^0.1.8",
60
60
  "@operato/scene-timer": "^0.1.8",
61
61
  "@operato/scene-wheel-sorter": "^0.1.8",
62
- "@things-factory/apptool-ui": "^4.3.159",
63
- "@things-factory/attachment-base": "^4.3.163",
64
- "@things-factory/auth-ui": "^4.3.163",
65
- "@things-factory/biz-base": "^4.3.163",
66
- "@things-factory/board-service": "^4.3.163",
67
- "@things-factory/board-ui": "^4.3.163",
68
- "@things-factory/code-ui": "^4.3.163",
69
- "@things-factory/context-ui": "^4.3.159",
70
- "@things-factory/dashboard": "^4.3.163",
71
- "@things-factory/export-ui": "^4.3.159",
72
- "@things-factory/export-ui-csv": "^4.3.159",
73
- "@things-factory/export-ui-excel": "^4.3.159",
74
- "@things-factory/geography": "^4.3.163",
75
- "@things-factory/grist-ui": "^4.3.159",
76
- "@things-factory/help": "^4.3.159",
77
- "@things-factory/i18n-base": "^4.3.159",
78
- "@things-factory/integration-fulfillment": "^4.3.163",
79
- "@things-factory/integration-lmd": "^4.3.163",
80
- "@things-factory/lite-menu": "^4.3.163",
81
- "@things-factory/marketplace-base": "^4.3.172",
82
- "@things-factory/more-ui": "^4.3.159",
83
- "@things-factory/notification": "^4.3.163",
84
- "@things-factory/oauth2-client": "^4.3.163",
62
+ "@things-factory/apptool-ui": "^4.3.176",
63
+ "@things-factory/attachment-base": "^4.3.176",
64
+ "@things-factory/auth-ui": "^4.3.176",
65
+ "@things-factory/biz-base": "^4.3.176",
66
+ "@things-factory/board-service": "^4.3.176",
67
+ "@things-factory/board-ui": "^4.3.176",
68
+ "@things-factory/code-ui": "^4.3.176",
69
+ "@things-factory/context-ui": "^4.3.176",
70
+ "@things-factory/dashboard": "^4.3.176",
71
+ "@things-factory/export-ui": "^4.3.176",
72
+ "@things-factory/export-ui-csv": "^4.3.176",
73
+ "@things-factory/export-ui-excel": "^4.3.176",
74
+ "@things-factory/geography": "^4.3.176",
75
+ "@things-factory/grist-ui": "^4.3.176",
76
+ "@things-factory/help": "^4.3.176",
77
+ "@things-factory/i18n-base": "^4.3.176",
78
+ "@things-factory/integration-fulfillment": "^4.3.176",
79
+ "@things-factory/integration-lmd": "^4.3.176",
80
+ "@things-factory/lite-menu": "^4.3.176",
81
+ "@things-factory/marketplace-base": "^4.3.176",
82
+ "@things-factory/more-ui": "^4.3.176",
83
+ "@things-factory/notification": "^4.3.176",
84
+ "@things-factory/oauth2-client": "^4.3.176",
85
85
  "@things-factory/pdf": "^4.3.159",
86
- "@things-factory/product-base": "^4.3.172",
87
- "@things-factory/resource-ui": "^4.3.163",
86
+ "@things-factory/product-base": "^4.3.176",
87
+ "@things-factory/resource-ui": "^4.3.176",
88
88
  "@things-factory/scene-data-transform": "^4.3.159",
89
89
  "@things-factory/scene-excel": "^4.3.159",
90
90
  "@things-factory/scene-firebase": "^4.3.159",
91
91
  "@things-factory/scene-form": "^4.3.159",
92
92
  "@things-factory/scene-google-map": "^4.3.159",
93
93
  "@things-factory/scene-graphql": "^4.3.159",
94
- "@things-factory/scene-label": "^4.3.159",
94
+ "@things-factory/scene-label": "^4.3.176",
95
95
  "@things-factory/scene-marker": "^4.3.159",
96
96
  "@things-factory/scene-mqtt": "^4.3.159",
97
97
  "@things-factory/scene-restful": "^4.3.159",
98
98
  "@things-factory/scene-visualizer": "^4.3.159",
99
- "@things-factory/setting-ui": "^4.3.163",
100
- "@things-factory/system-ui": "^4.3.159",
101
- "@things-factory/warehouse-base": "^4.3.174"
99
+ "@things-factory/setting-ui": "^4.3.176",
100
+ "@things-factory/system-ui": "^4.3.176",
101
+ "@things-factory/warehouse-base": "^4.3.176"
102
102
  },
103
103
  "devDependencies": {
104
104
  "@things-factory/builder": "^4.3.159",
105
105
  "@types/node-fetch": "^2.5.7"
106
106
  },
107
- "gitHead": "bdc29b349e14a5814af888d8e0a72aa7347b4cf1"
107
+ "gitHead": "03fcdfd5ec9fa6f0f3f6b85004428239359d8efb"
108
108
  }
@@ -6,11 +6,13 @@ import {
6
6
  MarketplaceOrder,
7
7
  MarketplaceOrderItem,
8
8
  MarketplaceOrderShipping,
9
- MarketplaceOrderShippingItem
9
+ MarketplaceOrderShippingItem,
10
+ MarketplaceProductVariation
10
11
  } from '@things-factory/marketplace-base'
11
12
  import { Product, ProductBundle } from '@things-factory/product-base'
12
13
  import { Domain } from '@things-factory/shell'
13
14
  import { ApplicationType } from '@things-factory/auth-base'
15
+ import { logger } from '@things-factory/env'
14
16
 
15
17
  export const addReleaseOrderResolver = {
16
18
  async addReleaseOrder(
@@ -116,6 +118,15 @@ export const addReleaseOrderResolver = {
116
118
  releaseOrder: newReleaseOrder
117
119
  })
118
120
 
121
+ // deduct reserve qty
122
+ if (marketplaceOrder?.marketplaceStore?.reserveEnabled) {
123
+ try {
124
+ await deductReservedQty(marketplaceOrderItems, domain)
125
+ } catch (e) {
126
+ logger.error(`[add-release-order] failed to deduct reserved qty (${marketplaceOrder.orderNo})`)
127
+ }
128
+ }
129
+
119
130
  marketplaceOrderShipping.releaseOrderId = releaseOrder.id
120
131
  marketplaceOrderShipping.fulfillmentCenter = fulfilmentCenter
121
132
  await getRepository(MarketplaceOrderShipping).save(marketplaceOrderShipping)
@@ -205,3 +216,36 @@ export const addReleaseOrderResolver = {
205
216
  }
206
217
  }
207
218
  }
219
+
220
+ async function deductReservedQty(marketplaceOrderItems, domain) {
221
+ for (let item of marketplaceOrderItems) {
222
+ let variations: MarketplaceProductVariation[] = await getRepository(MarketplaceProductVariation).find({
223
+ where: { sku: item.marketplaceProductVariation.sku, domain }
224
+ })
225
+ for (let variation of variations) {
226
+ let newReserve = variation.reserveQty - item.qty
227
+ await getRepository(MarketplaceProductVariation).update(
228
+ { id: variation.id },
229
+ { reserveQty: newReserve > 0 ? newReserve : 0 }
230
+ )
231
+ }
232
+ let bundle: ProductBundle = await getRepository(ProductBundle).findOne({
233
+ where: { sku: item.marketplaceProductVariation.sku, domain },
234
+ relations: ['productBundleSettings', 'productBundleSettings.product']
235
+ })
236
+ if (bundle) {
237
+ for (let setting of bundle.productBundleSettings) {
238
+ let bundleVariations: MarketplaceProductVariation[] = await getRepository(MarketplaceProductVariation).find({
239
+ where: { sku: setting.product.sku, domain }
240
+ })
241
+ for (let bundleVariation of bundleVariations) {
242
+ let newReserve = bundleVariation.reserveQty - item.qty * setting.bundleQty
243
+ await getRepository(MarketplaceProductVariation).update(
244
+ { id: bundleVariation.id },
245
+ { reserveQty: newReserve > 0 ? newReserve : 0 }
246
+ )
247
+ }
248
+ }
249
+ }
250
+ }
251
+ }