@things-factory/sales-base 3.8.3 → 3.8.9

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,10 +8,12 @@ const id_rule_base_1 = require("@things-factory/id-rule-base");
8
8
  const notification_1 = require("@things-factory/notification");
9
9
  const product_base_1 = require("@things-factory/product-base");
10
10
  const setting_base_1 = require("@things-factory/setting-base");
11
+ const warehouse_base_1 = require("@things-factory/warehouse-base");
11
12
  const constants_1 = require("../../../constants");
12
13
  const order_1 = require("../../../constants/order");
13
14
  const entities_1 = require("../../../entities");
14
15
  const errors_1 = require("../../../errors");
16
+ const utils_1 = require("../../../utils");
15
17
  const order_no_generator_1 = require("../../../utils/order-no-generator");
16
18
  const bulk_release_goods_available_items_1 = require("./bulk-release-goods-available-items");
17
19
  exports.bulkAddReleaseGoods = {
@@ -28,40 +30,99 @@ exports.bulkAddReleaseGoods = {
28
30
  }
29
31
  });
30
32
  let releaseGoods = extractRawReleaseGoods(rawReleaseGoods);
33
+ let errorsFound = [];
31
34
  for (let i = 0, l = releaseGoods.length; i < l; i++) {
32
35
  // generate release good by group to avoid duplication
33
36
  // if this function is called simultaneously by different users
34
- let availableItems = await (0, bulk_release_goods_available_items_1.bulkReleaseGoodsAvailableItemsFunction)(_, [...releaseGoods[i].orderInventories], bizplaceId, context, tx);
35
- if (availableItems.some(item => !item.releaseQty || item.releaseQty > item.assignedQty))
36
- throw new errors_1.ValidationError(Object.assign(Object.assign({}, errors_1.ValidationError.ERROR_CODES.INSUFFICIENT_STOCK), { detail: { data: JSON.stringify(availableItems) } }));
37
- // update orderInventories if availableItems are valid
38
- releaseGoods[i].orderInventories = availableItems;
39
- const createdReleaseGood = await bulkGenerateReleaseGoods(_, releaseGoods[i], bizplaceId, roNoSetting, domain, user, tx);
40
- createdReleaseGoods.push(createdReleaseGood);
37
+ try {
38
+ await (0, typeorm_1.getConnection)().transaction(async (childTx) => {
39
+ const existingReleaseGood = await childTx.getRepository(entities_1.ReleaseGood).findOne({
40
+ where: Object.assign(Object.assign({}, Object.fromEntries(Object.entries(releaseGoods[i]).filter(([_, val]) => !/^\s*$/.test(val) && _ != 'orderInventories'))), { domain })
41
+ });
42
+ if (existingReleaseGood)
43
+ throw new Error('release good order is already exist in the system');
44
+ let availableItems = await (0, bulk_release_goods_available_items_1.bulkReleaseGoodsAvailableItemsFunction)(_, [...releaseGoods[i].orderInventories], bizplaceId, context, childTx);
45
+ if (availableItems.some(item => !item.releaseQty || item.releaseQty > item.assignedQty))
46
+ throw new errors_1.ValidationError(Object.assign(Object.assign({}, errors_1.ValidationError.ERROR_CODES.INSUFFICIENT_STOCK), { detail: { data: JSON.stringify(availableItems) } }));
47
+ // update orderInventories if availableItems are valid
48
+ releaseGoods[i].orderInventories = availableItems;
49
+ const createdReleaseGood = await bulkGenerateReleaseGoods(_, releaseGoods[i], bizplaceId, roNoSetting, domain, user, childTx);
50
+ createdReleaseGoods.push(createdReleaseGood);
51
+ });
52
+ }
53
+ catch (e) {
54
+ errorsFound.push(e);
55
+ }
41
56
  }
42
- let confirmedReleaseGoods = await bulkConfirmReleaseGoods(createdReleaseGoods.map(rg => rg.name), domain, user, context, tx);
57
+ let confirmedReleaseGoods = [];
58
+ try {
59
+ confirmedReleaseGoods = await bulkConfirmReleaseGoods(createdReleaseGoods.map(rg => rg.name), domain, user, context, tx);
60
+ }
61
+ catch (e) {
62
+ errorsFound.push(e);
63
+ }
64
+ // if (errorsFound.length) { then ?? }
43
65
  return confirmedReleaseGoods;
44
66
  }
45
67
  };
46
68
  async function bulkGenerateReleaseGoods(_, releaseGood, bizplaceId, roNoSetting, domain, user, tx) {
69
+ var _a, _b;
47
70
  try {
48
71
  let warehouseDomain = domain;
49
72
  let { orderInventories } = releaseGood;
50
73
  let bizplace = await tx.getRepository(biz_base_1.Bizplace).findOne(bizplaceId);
51
74
  let newReleaseGood = Object.assign(Object.assign({}, releaseGood), { name: roNoSetting
52
75
  ? await (0, id_rule_base_1.generateId)({ domain, type: order_1.ORDER_NUMBER_RULE_TYPE.RO_NUMBER, seed: {} })
53
- : order_no_generator_1.OrderNoGenerator.releaseGood(), domain: warehouseDomain, bizplace: bizplace, deliveryAddress1: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress1) || null, deliveryAddress2: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress2) || null, deliveryAddress3: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress3) || null, deliveryAddress4: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress4) || null, deliveryAddress5: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress5) || null, attentionTo: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.attentionTo) || null, attentionCompany: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.attentionCompany) || null, city: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.city) || null, state: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.state) || null, postalCode: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.postalCode) || null, country: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.country) || null, phone1: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.phone1) || null, phone2: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.phone2) || null, email: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.email) || null, airwayBill: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.airwayBill, refNo: releaseGood.refNo, refNo2: releaseGood.refNo2, refNo3: releaseGood.refNo3, releaseDate: releaseGood.releaseDate, ownTransport: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.ownTransport) || false, status: constants_1.ORDER_STATUS.PENDING, creator: user, updater: user });
76
+ : order_no_generator_1.OrderNoGenerator.releaseGood(), domain: warehouseDomain, bizplace: bizplace, deliveryAddress1: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress1) || null, deliveryAddress2: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress2) || null, deliveryAddress3: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress3) || null, deliveryAddress4: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.deliveryAddress4) || null, attentionTo: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.attentionTo) || null, attentionCompany: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.attentionCompany) || null, city: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.city) || null, state: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.state) || null, postalCode: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.postalCode) || null, country: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.country) || null, phone1: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.phone1) || null, phone2: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.phone2) || null, email: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.email) || null, airwayBill: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.airwayBill, refNo: releaseGood.refNo, refNo2: releaseGood.refNo2, refNo3: releaseGood.refNo3, releaseDate: releaseGood.releaseDate, ownTransport: (releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.ownTransport) || false, status: constants_1.ORDER_STATUS.PENDING, creator: user, updater: user });
54
77
  newReleaseGood = await tx.getRepository(entities_1.ReleaseGood).save(newReleaseGood);
78
+ let finalOrderInventories = [];
79
+ // pre assign inventory to orderInventories
55
80
  for (let oi of orderInventories) {
56
- delete oi.sku;
57
- let newOrderInv = Object.assign(new entities_1.OrderInventory(), oi);
58
- newOrderInv = Object.assign(Object.assign({}, newOrderInv), { domain: warehouseDomain, bizplace: bizplace, status: order_1.ORDER_INVENTORY_STATUS.PENDING, name: order_no_generator_1.OrderNoGenerator.orderInventory(), batchId: (oi === null || oi === void 0 ? void 0 : oi.batchId) || '', releaseGood: newReleaseGood, product: await tx.getRepository(product_base_1.Product).findOne(oi.productId), creator: user, updater: user });
59
- let newOrderProduct = Object.assign(new entities_1.OrderProduct(), newOrderInv);
60
- newOrderProduct = Object.assign(Object.assign({}, newOrderProduct), { packQty: 0, actualPackQty: 0, palletQty: 0, actualPalletQty: 0, status: order_1.ORDER_PRODUCT_STATUS.PENDING_ASSIGN });
81
+ const pickingProductSetting = await tx.getRepository(setting_base_1.Setting).findOne({
82
+ where: { domain, name: 'rule-for-picking-product' }
83
+ });
84
+ let locationSortingRules = [];
85
+ if (pickingProductSetting) {
86
+ let locationSetting = JSON.parse(pickingProductSetting.value);
87
+ for (const key in locationSetting) {
88
+ locationSortingRules.push({ name: key, desc: locationSetting[key] == 'ASC' ? false : true });
89
+ }
90
+ }
91
+ const product = await tx.getRepository(product_base_1.Product).findOne(oi.productId);
92
+ finalOrderInventories.push(...(await utils_1.InventoryUtil.autoAssignInventoryForRelease(product, oi, oi.packingType, locationSortingRules, bizplace, warehouseDomain, tx)));
93
+ }
94
+ for (let oi of finalOrderInventories) {
95
+ let generatedOI = Object.assign(new entities_1.OrderInventory(), oi);
96
+ generatedOI = Object.assign(Object.assign({}, generatedOI), { domain: warehouseDomain, bizplace, status: order_1.ORDER_INVENTORY_STATUS.PENDING, name: order_no_generator_1.OrderNoGenerator.orderInventory(), releaseGood: newReleaseGood, creator: user, updater: user });
97
+ let newOrderProduct = {
98
+ name: generatedOI.name,
99
+ product: generatedOI.product,
100
+ batchId: generatedOI.batchId,
101
+ packingType: generatedOI.packingType,
102
+ packingSize: generatedOI.packingSize,
103
+ uom: generatedOI.uom,
104
+ domain: warehouseDomain,
105
+ bizplace,
106
+ releaseQty: generatedOI.releaseQty,
107
+ releaseUomValue: generatedOI.releaseUomValue,
108
+ packQty: 0,
109
+ actualPackQty: 0,
110
+ palletQty: 0,
111
+ actualPalletQty: 0,
112
+ status: order_1.ORDER_PRODUCT_STATUS.PENDING_ASSIGN,
113
+ releaseGood: newReleaseGood,
114
+ creator: user,
115
+ updater: user
116
+ };
61
117
  newOrderProduct = await tx.getRepository(entities_1.OrderProduct).save(newOrderProduct);
62
- await tx.getRepository(entities_1.OrderInventory).save(Object.assign(Object.assign({}, newOrderInv), { orderProduct: newOrderProduct }));
118
+ await tx.getRepository(entities_1.OrderInventory).save(Object.assign(Object.assign({}, generatedOI), { orderProduct: newOrderProduct }));
119
+ // update inventory locked qty and uom value
120
+ await tx.getRepository(warehouse_base_1.Inventory).update(oi.inventory.id, {
121
+ lockedQty: (((_a = oi.inventory) === null || _a === void 0 ? void 0 : _a.lockedQty) || 0) + generatedOI.releaseQty,
122
+ lockedUomValue: (((_b = oi.inventory) === null || _b === void 0 ? void 0 : _b.lockedUomValue) || 0) + generatedOI.releaseUomValue,
123
+ updater: user
124
+ });
63
125
  }
64
- // Change the status to PENDING_RECEIVE
65
126
  return newReleaseGood;
66
127
  }
67
128
  catch (error) {
@@ -86,7 +147,7 @@ async function bulkConfirmReleaseGoods(releaseGoodsNo, domain, user, context, tx
86
147
  ]
87
148
  });
88
149
  if (!foundReleaseGoods.length)
89
- throw new Error(`Release good order doesn't exists.`);
150
+ throw new Error(`release good order doesn't exists.`);
90
151
  let customerBizplace = foundReleaseGoods[0].bizplace;
91
152
  let foundOrderInventories = foundReleaseGoods
92
153
  .map((releaseGood) => releaseGood.orderInventories)
@@ -163,6 +224,7 @@ function extractRawReleaseGoods(rawReleaseGoods) {
163
224
  });
164
225
  if (idx >= 0) {
165
226
  const duplicateSkuIdx = releaseGoods[idx].orderInventories.findIndex(oi => oi.sku === item.sku && oi.packingType === item.packingType && oi.packingSize === item.packingSize);
227
+ // if there is duplicated SKU, merge them and sum up the releaseQty
166
228
  if (duplicateSkuIdx >= 0) {
167
229
  releaseGoods[idx].orderInventories[duplicateSkuIdx].releaseQty += item.releaseQty;
168
230
  }
@@ -1 +1 @@
1
- {"version":3,"file":"bulk-add-release-goods.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/release-good/bulk-add-release-goods.ts"],"names":[],"mappings":";;;AAAA,qCAAsE;AAEtE,yDAAsD;AACtD,uDAAmD;AACnD,+DAAyD;AACzD,+DAA+D;AAC/D,+DAAsD;AACtD,+DAAsD;AAGtD,kDAAiD;AACjD,oDAKiC;AACjC,gDAA6E;AAC7E,4CAAiD;AACjD,0EAAoE;AACpE,6FAA6F;AAEhF,QAAA,mBAAmB,GAAG;IACjC,KAAK,CAAC,mBAAmB,CAAC,CAAM,EAAE,EAAE,eAAe,EAAE,UAAU,EAAE,EAAE,OAAY;QAC7E,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAsD,OAAO,CAAC,KAAK,CAAA;QAE7F,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;QAE9D,IAAI,mBAAmB,GAAkB,EAAE,CAAA;QAC3C,MAAM,WAAW,GAAwB,CAAA,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,aAAa,CAAC,sBAAO,CAAC,KAAI,IAAA,uBAAa,EAAC,sBAAO,CAAC,CAAA;QAE7F,MAAM,WAAW,GAAY,MAAM,WAAW,CAAC,OAAO,CAAC;YACrD,KAAK,EAAE;gBACL,MAAM;gBACN,IAAI,EAAE,gCAAwB,CAAC,cAAc;aAC9C;SACF,CAAC,CAAA;QAEF,IAAI,YAAY,GAA2B,sBAAsB,CAAC,eAAe,CAAC,CAAA;QAElF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YACnD,sDAAsD;YACtD,+DAA+D;YAC/D,IAAI,cAAc,GAAU,MAAM,IAAA,2EAAsC,EACtE,CAAC,EACD,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,EACrC,UAAU,EACV,OAAO,EACP,EAAE,CACH,CAAA;YAED,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;gBACrF,MAAM,IAAI,wBAAe,iCACpB,wBAAe,CAAC,WAAW,CAAC,kBAAkB,KACjD,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,IAChD,CAAA;YAEJ,sDAAsD;YACtD,YAAY,CAAC,CAAC,CAAC,CAAC,gBAAgB,GAAG,cAAc,CAAA;YAEjD,MAAM,kBAAkB,GAAgB,MAAM,wBAAwB,CACpE,CAAC,EACD,YAAY,CAAC,CAAC,CAAC,EACf,UAAU,EACV,WAAW,EACX,MAAM,EACN,IAAI,EACJ,EAAE,CACH,CAAA;YAED,mBAAmB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;SAC7C;QAED,IAAI,qBAAqB,GAAkB,MAAM,uBAAuB,CACtE,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EACtC,MAAM,EACN,IAAI,EACJ,OAAO,EACP,EAAE,CACH,CAAA;QAED,OAAO,qBAAqB,CAAA;IAC9B,CAAC;CACF,CAAA;AAED,KAAK,UAAU,wBAAwB,CACrC,CAAM,EACN,WAAgB,EAChB,UAAkB,EAClB,WAAgB,EAChB,MAAc,EACd,IAAU,EACV,EAAkB;IAElB,IAAI;QACF,IAAI,eAAe,GAAW,MAAM,CAAA;QACpC,IAAI,EAAE,gBAAgB,EAAE,GAAG,WAAW,CAAA;QAEtC,IAAI,QAAQ,GAAa,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAQ,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QAE7E,IAAI,cAAc,mCACb,WAAW,KACd,IAAI,EAAE,WAAW;gBACf,CAAC,CAAC,MAAM,IAAA,yBAAU,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,8BAAsB,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;gBAChF,CAAC,CAAC,qCAAgB,CAAC,WAAW,EAAE,EAClC,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,KAAI,IAAI,EACvD,gBAAgB,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,KAAI,IAAI,EACvD,gBAAgB,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,KAAI,IAAI,EACvD,gBAAgB,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,KAAI,IAAI,EACvD,gBAAgB,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,KAAI,IAAI,EACvD,WAAW,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,WAAW,KAAI,IAAI,EAC7C,gBAAgB,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,KAAI,IAAI,EACvD,IAAI,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,KAAI,IAAI,EAC/B,KAAK,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,KAAI,IAAI,EACjC,UAAU,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,UAAU,KAAI,IAAI,EAC3C,OAAO,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,KAAI,IAAI,EACrC,MAAM,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,KAAI,IAAI,EACnC,MAAM,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,KAAI,IAAI,EACnC,KAAK,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,KAAI,IAAI,EACjC,UAAU,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,UAAU,EACnC,KAAK,EAAE,WAAW,CAAC,KAAK,EACxB,MAAM,EAAE,WAAW,CAAC,MAAM,EAC1B,MAAM,EAAE,WAAW,CAAC,MAAM,EAC1B,WAAW,EAAE,WAAW,CAAC,WAAW,EACpC,YAAY,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,YAAY,KAAI,KAAK,EAChD,MAAM,EAAE,wBAAY,CAAC,OAAO,EAC5B,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,GACd,CAAA;QAED,cAAc,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,sBAAW,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QAEzE,KAAK,IAAI,EAAE,IAAI,gBAAgB,EAAE;YAC/B,OAAO,EAAE,CAAC,GAAG,CAAA;YAEb,IAAI,WAAW,GAAmB,MAAM,CAAC,MAAM,CAAC,IAAI,yBAAc,EAAE,EAAE,EAAE,CAAC,CAAA;YACzE,WAAW,mCACN,WAAW,KACd,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,8BAAsB,CAAC,OAAO,EACtC,IAAI,EAAE,qCAAgB,CAAC,cAAc,EAAE,EACvC,OAAO,EAAE,CAAA,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,OAAO,KAAI,EAAE,EAC1B,WAAW,EAAE,cAAc,EAC3B,OAAO,EAAE,MAAM,EAAE,CAAC,aAAa,CAAC,sBAAO,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,EAC9D,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,GACd,CAAA;YAED,IAAI,eAAe,GAAiB,MAAM,CAAC,MAAM,CAAC,IAAI,uBAAY,EAAE,EAAE,WAAW,CAAC,CAAA;YAClF,eAAe,mCACV,eAAe,KAClB,OAAO,EAAE,CAAC,EACV,aAAa,EAAE,CAAC,EAChB,SAAS,EAAE,CAAC,EACZ,eAAe,EAAE,CAAC,EAClB,MAAM,EAAE,4BAAoB,CAAC,cAAc,GAC5C,CAAA;YAED,eAAe,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,uBAAY,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;YAE5E,MAAM,EAAE,CAAC,aAAa,CAAC,yBAAc,CAAC,CAAC,IAAI,iCAAM,WAAW,KAAE,YAAY,EAAE,eAAe,IAAG,CAAA;SAC/F;QAED,uCAAuC;QAEvC,OAAO,cAAc,CAAA;KACtB;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,KAAK,CAAA;KACZ;AACH,CAAC;AAED,KAAK,UAAU,uBAAuB,CACpC,cAAwB,EACxB,MAAc,EACd,IAAU,EACV,OAAY,EACZ,EAAkB;;IAElB,IAAI,iBAAiB,GAAkB,MAAM,EAAE,CAAC,aAAa,CAAC,sBAAW,CAAC,CAAC,IAAI,CAAC;QAC9E,KAAK,EAAE,EAAE,IAAI,EAAE,IAAA,YAAE,EAAC,cAAc,CAAC,EAAE,MAAM,EAAE,wBAAY,CAAC,OAAO,EAAE;QACjE,SAAS,EAAE;YACT,QAAQ;YACR,UAAU;YACV,iBAAiB;YACjB,kBAAkB;YAClB,yBAAyB;YACzB,eAAe;YACf,uBAAuB;YACvB,kBAAkB;YAClB,0BAA0B;YAC1B,WAAW;SACZ;KACF,CAAC,CAAA;IAEF,IAAI,CAAC,iBAAiB,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;IACpF,IAAI,gBAAgB,GAAa,iBAAiB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;IAE9D,IAAI,qBAAqB,GAAqB,iBAAiB;SAC5D,GAAG,CAAC,CAAC,WAAwB,EAAE,EAAE,CAAC,WAAW,CAAC,gBAAgB,CAAC;SAC/D,MAAM,CAAC,CAAC,gBAAgB,EAAE,OAAO,EAAE,EAAE;QACpC,gBAAgB,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAA;QACjC,OAAO,gBAAgB,CAAA;IACzB,CAAC,EAAE,EAAE,CAAC,CAAA;IAER,MAAM,EAAE;SACL,aAAa,CAAC,sBAAW,CAAC;SAC1B,MAAM,CAAC,EAAE,EAAE,EAAE,IAAA,YAAE,EAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,wBAAY,CAAC,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;IAElH,MAAM,EAAE;SACL,aAAa,CAAC,yBAAc,CAAC;SAC7B,MAAM,CACL,EAAE,EAAE,EAAE,IAAA,YAAE,EAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAClD,EAAE,MAAM,EAAE,8BAAsB,CAAC,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,CAClE,CAAA;IAEH,IAAI,CAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,0CAAE,IAAI,KAAI,KAAK,EAAE;QACjC,MAAM,KAAK,GAAU,MAAM,EAAE;aAC1B,aAAa,CAAC,aAAa,CAAC;aAC5B,kBAAkB,CAAC,IAAI,CAAC;aACxB,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC;aAC3B,KAAK,CAAC,EAAE,CAAC,EAAE;YACV,MAAM,QAAQ,GAAG,EAAE;iBAChB,QAAQ,EAAE;iBACV,MAAM,CAAC,SAAS,CAAC;iBACjB,IAAI,CAAC,gBAAI,EAAE,MAAM,CAAC;iBAClB,KAAK,CAAC,4BAA4B,CAAC;iBACnC,QAAQ,CAAC,0BAA0B,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;iBAC3D,QAAQ,EAAE,CAAA;YACb,OAAO,iBAAiB,GAAG,QAAQ,CAAA;QACrC,CAAC,CAAC;aACD,UAAU,EAAE,CAAA;QAEf,0CAA0C;QAC1C,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,EAAE;YACjB,MAAM,SAAS,GAAU,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACnD,MAAM,GAAG,GAAG;gBACV,KAAK,EAAE,0BAA0B,gBAAgB,CAAC,IAAI,EAAE;gBACxD,IAAI,EAAE,4DAA4D;gBAClE,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO;gBAC3B,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE;aACtC,CAAA;YACD,MAAM,IAAA,+BAAgB,EAAC;gBACrB,SAAS;gBACT,OAAO,oBAAO,GAAG,CAAE;aACpB,CAAC,CAAA;SACH;KACF;IAED,OAAO,iBAAiB,CAAC,GAAG,CAAC,CAAC,WAAwB,EAAE,EAAE;QACxD,uCACK,WAAW,KACd,MAAM,EAAE,wBAAY,CAAC,eAAe,EACpC,OAAO,EAAE,IAAI,IACd;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,eAAe;IAC7C,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,IAAI,EAAE,EAAE;QACnD,MAAM,GAAG,GAAW,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE;YAC9C,wDAAwD;YACxD,MAAM,UAAU,GAAG;gBACjB,QAAQ;gBACR,QAAQ;gBACR,aAAa;gBACb,QAAQ;gBACR,kBAAkB;gBAClB,kBAAkB;gBAClB,kBAAkB;gBAClB,kBAAkB;gBAClB,YAAY;aACb,CAAA;YAED,IAAI,CAAC,GAAQ,EAAE,EACb,CAAC,GAAQ,EAAE,CAAA;YAEb,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;gBACtB,IAAI,IAAI,CAAC,EAAE,CAAC,EAAE;oBACZ,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;oBAChB,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;iBACf;YACH,CAAC,CAAC,CAAA;YAEF,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;YAChE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;YAEhE,OAAO,EAAE,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,CAAA;QAChF,CAAC,CAAC,CAAA;QAEF,IAAI,GAAG,IAAI,CAAC,EAAE;YACZ,MAAM,eAAe,GAAW,YAAY,CAAC,GAAG,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAC1E,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,CACxG,CAAA;YAED,IAAI,eAAe,IAAI,CAAC,EAAE;gBACxB,YAAY,CAAC,GAAG,CAAC,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAA;aAClF;iBAAM;gBACL,YAAY,CAAC,GAAG,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC;oBACtC,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,eAAe,EAAE,IAAI,CAAC,eAAe;iBACtC,CAAC,CAAA;aACH;SACF;aAAM;YACL,YAAY,CAAC,IAAI,CAAC;gBAChB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,gBAAgB,EAAE;oBAChB;wBACE,GAAG,EAAE,IAAI,CAAC,GAAG;wBACb,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,WAAW,EAAE,IAAI,CAAC,WAAW;wBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;wBAC7B,GAAG,EAAE,IAAI,CAAC,GAAG;wBACb,UAAU,EAAE,IAAI,CAAC,UAAU;wBAC3B,eAAe,EAAE,IAAI,CAAC,eAAe;qBACtC;iBACF;aACF,CAAC,CAAA;SACH;QAED,OAAO,YAAY,CAAA;IACrB,CAAC,EAAE,EAAE,CAAC,CAAA;AACR,CAAC"}
1
+ {"version":3,"file":"bulk-add-release-goods.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/release-good/bulk-add-release-goods.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.bulkReleaseGoodsAvailableItemsFunction = exports.bulkReleaseGoodsAvailableItems = void 0;
4
4
  const biz_base_1 = require("@things-factory/biz-base");
5
+ const warehouse_base_1 = require("@things-factory/warehouse-base");
5
6
  exports.bulkReleaseGoodsAvailableItems = {
6
7
  async bulkReleaseGoodsAvailableItems(_, { rawReleaseGoods, bizplaceId }, context) {
7
8
  const { tx } = context.state;
@@ -27,6 +28,7 @@ async function bulkReleaseGoodsAvailableItemsFunction(_, rawReleaseGoods, bizpla
27
28
  CREATE TEMP TABLE temp_order_products(
28
29
  product_id VARCHAR(50),
29
30
  sku VARCHAR(150),
31
+ product_info VARCHAR(250),
30
32
  packing_type VARCHAR(50),
31
33
  packing_size INT,
32
34
  uom VARCHAR(10),
@@ -36,6 +38,8 @@ async function bulkReleaseGoodsAvailableItemsFunction(_, rawReleaseGoods, bizpla
36
38
  await tx.query(`
37
39
  INSERT INTO temp_order_products
38
40
  SELECT p.id AS product_id, js.sku,
41
+ CASE WHEN p.description NOT IN (NULL, '', '-') THEN CONCAT(p.name, '(', p.description, ')')
42
+ ELSE p.name END AS product_info,
39
43
  CASE WHEN js.packing_type NOTNULL AND js.packing_size NOTNULL THEN js.packing_type ELSE pd.packing_type END,
40
44
  CASE WHEN js.packing_type NOTNULL AND js.packing_size NOTNULL THEN js.packing_size ELSE pd.packing_size END,
41
45
  CASE WHEN js.uom NOTNULL THEN js.uom ELSE pd.uom END,
@@ -45,16 +49,12 @@ async function bulkReleaseGoodsAvailableItemsFunction(_, rawReleaseGoods, bizpla
45
49
  LEFT JOIN product_details pd ON p.id = pd.product_id AND pd.is_default = TRUE;
46
50
  `, [companyBizplaceId.id]);
47
51
  let availableItems = await tx.query(`
48
- SELECT i.product_id, foo.sku, i.batch_id, i.packing_type, i.packing_size, i.uom,
52
+ WITH inv AS (
53
+ SELECT i.product_id, foo.sku, foo.product_info, i.batch_id, i.packing_type, i.packing_size, i.uom,
49
54
  SUM(i.qty - COALESCE(i.locked_qty, 0)) - COALESCE(
50
55
  (
51
56
  SELECT SUM(oi.release_qty) FROM order_inventories oi
52
- WHERE (
53
- oi.status = 'PENDING'
54
- OR oi.status = 'PENDING_RECEIVE'
55
- OR oi.status = 'PENDING_WORKSHEET'
56
- OR oi.status = 'PENDING_SPLIT'
57
- )
57
+ WHERE oi.status IN ('PENDING', 'PENDING_RECEIVE', 'PENDING_WORKSHEET', 'PENDING_SPLIT')
58
58
  AND oi.inventory_id IS null
59
59
  AND oi.product_id = i.product_id::uuid
60
60
  AND oi.packing_type = i.packing_type
@@ -65,12 +65,7 @@ async function bulkReleaseGoodsAvailableItemsFunction(_, rawReleaseGoods, bizpla
65
65
  SUM(i.uom_value - COALESCE(i.locked_uom_value, 0)) - COALESCE(
66
66
  (
67
67
  SELECT SUM(oi.release_uom_value) FROM order_inventories oi
68
- WHERE (
69
- oi.status = 'PENDING'
70
- OR oi.status = 'PENDING_RECEIVE'
71
- OR oi.status = 'PENDING_WORKSHEET'
72
- OR oi.status = 'PENDING_SPLIT'
73
- )
68
+ WHERE oi.status IN ('PENDING', 'PENDING_RECEIVE', 'PENDING_WORKSHEET', 'PENDING_SPLIT')
74
69
  AND oi.inventory_id IS null
75
70
  AND oi.product_id = i.product_id::uuid
76
71
  AND oi.packing_type = i.packing_type
@@ -79,10 +74,12 @@ async function bulkReleaseGoodsAvailableItemsFunction(_, rawReleaseGoods, bizpla
79
74
  AND oi.bizplace_id = $2
80
75
  ), 0) as "remain_uom_value"
81
76
  FROM inventories i
77
+ LEFT JOIN locations l
78
+ ON i.location_id = l.id
82
79
  INNER JOIN (
83
- SELECT top.product_id, top.sku, top.packing_type, top.packing_size, top.uom
80
+ SELECT top.product_id, top.sku, top.product_info, top.packing_type, top.packing_size, top.uom
84
81
  FROM temp_order_products top
85
- GROUP BY top.product_id, top.sku, top.packing_type, top.packing_size, top.uom
82
+ GROUP BY top.product_id, top.sku, top.product_info, top.packing_type, top.packing_size, top.uom
86
83
  ) AS foo
87
84
  ON i.product_id = foo.product_id::uuid
88
85
  AND i.packing_type = foo.packing_type
@@ -90,13 +87,16 @@ async function bulkReleaseGoodsAvailableItemsFunction(_, rawReleaseGoods, bizpla
90
87
  AND i.uom = foo.uom
91
88
  AND i.domain_id = $1
92
89
  AND i.bizplace_id = $2
93
- GROUP BY i.product_id, foo.sku, i.batch_id, i.packing_type, i.packing_size, i.uom
90
+ WHERE l.type NOT IN ($3, $4)
91
+ GROUP BY i.product_id, foo.sku,foo.product_info, i.batch_id, i.packing_type, i.packing_size, i.uom
94
92
  ORDER BY foo.sku, remain_qty
95
- `, [domain.id, bizplaceId]);
93
+ ) SELECT * FROM inv WHERE remain_qty > 0
94
+ `, [domain.id, bizplaceId, warehouse_base_1.LOCATION_TYPE.QUARANTINE, warehouse_base_1.LOCATION_TYPE.RESERVE]);
96
95
  await tx.query('DROP TABLE temp_order_products');
97
96
  availableItems = availableItems.map(item => {
98
97
  return {
99
98
  productId: item.product_id,
99
+ productInfo: item.product_info,
100
100
  sku: item.sku,
101
101
  batchId: item.batch_id,
102
102
  packingType: item.packing_type,
@@ -111,7 +111,6 @@ async function bulkReleaseGoodsAvailableItemsFunction(_, rawReleaseGoods, bizpla
111
111
  exports.bulkReleaseGoodsAvailableItemsFunction = bulkReleaseGoodsAvailableItemsFunction;
112
112
  function _extractData(rawData, validatedData) {
113
113
  return rawData.map(raw => {
114
- var _a, _b;
115
114
  const idx = validatedData.findIndex(val => {
116
115
  const comparison = ['packingType', 'packingSize', 'uom'];
117
116
  let a = {}, b = {};
@@ -128,25 +127,31 @@ function _extractData(rawData, validatedData) {
128
127
  let releaseUomValue = 0;
129
128
  // if sku is matched, assign qty and product id
130
129
  if (idx >= 0) {
130
+ const uomValuePerQty = Math.round((validatedData[idx].remainUomValue / validatedData[idx].remainQty) * 100) / 100;
131
+ // use Math.round again because 4.2 * 6 = 25.200000000000003
132
+ releaseUomValue = Math.round(uomValuePerQty * raw.releaseQty * 100) / 100;
131
133
  // assign qty to rawData as much as possible
132
- releaseUomValue =
133
- (Math.round((((_a = validatedData[idx]) === null || _a === void 0 ? void 0 : _a.remainUomValue) / ((_b = validatedData[idx]) === null || _b === void 0 ? void 0 : _b.remainQty)) * 100) / 100) * raw.releaseQty;
134
134
  raw.assignedQty =
135
135
  validatedData[idx].remainQty >= raw.releaseQty
136
136
  ? raw.releaseQty > 0
137
137
  ? raw.releaseQty
138
138
  : 0
139
- : validatedData[idx].remainQty;
139
+ : validatedData[idx].remainQty > 0
140
+ ? validatedData[idx].remainQty
141
+ : 0;
140
142
  raw.assignedUomValue =
141
143
  validatedData[idx].remainUomValue >= releaseUomValue
142
144
  ? releaseUomValue > 0
143
145
  ? releaseUomValue
144
146
  : 0
145
- : validatedData[idx].remainUomValue;
147
+ : validatedData[idx].remainUomValue > 0
148
+ ? validatedData[idx].remainUomValue
149
+ : 0;
146
150
  // deduct qty & uomValue from validateData
147
151
  validatedData[idx].remainQty -= raw.assignedQty;
148
152
  validatedData[idx].remainUomValue -= raw.assignedUomValue;
149
153
  raw.productId = validatedData[idx].productId;
154
+ raw.productInfo = validatedData[idx].productInfo;
150
155
  raw.packingType = validatedData[idx].packingType;
151
156
  raw.packingSize = validatedData[idx].packingSize;
152
157
  raw.uom = validatedData[idx].uom;
@@ -1 +1 @@
1
- {"version":3,"file":"bulk-release-goods-available-items.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/release-good/bulk-release-goods-available-items.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bulk-release-goods-available-items.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/release-good/bulk-release-goods-available-items.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ const auth_base_1 = require("@things-factory/auth-base");
7
7
  const biz_base_1 = require("@things-factory/biz-base");
8
8
  const id_rule_base_1 = require("@things-factory/id-rule-base");
9
9
  const integration_sellercraft_1 = require("@things-factory/integration-sellercraft");
10
+ const marketplace_base_1 = require("@things-factory/marketplace-base");
10
11
  const product_base_1 = require("@things-factory/product-base");
11
12
  const setting_base_1 = require("@things-factory/setting-base");
12
13
  const warehouse_base_1 = require("@things-factory/warehouse-base");
@@ -91,10 +92,32 @@ async function generateReleaseGoodFunction(_, releaseGood, shippingOrder, attach
91
92
  domain: warehouseDomain,
92
93
  refNo,
93
94
  status: (0, typeorm_1.Not)((0, typeorm_1.In)([constants_1.ORDER_STATUS.CANCELLED, constants_1.ORDER_STATUS.PENDING_CANCEL]))
94
- }
95
+ },
96
+ relations: ['bizplace', 'bizplace.domain', 'bizplace.company', 'bizplace.company.domain']
95
97
  });
96
- if (foundReleaseGood)
97
- throw new Error('Existing release order found');
98
+ if (foundReleaseGood) {
99
+ const customerCompanyDomain = foundReleaseGood.bizplace.company.domain;
100
+ const marketplaceOrder = await tx.getRepository(marketplace_base_1.MarketplaceOrder).findOne({
101
+ where: { orderNo: refNo, domain: customerCompanyDomain }
102
+ });
103
+ // Need to restructure the validation
104
+ if (marketplaceOrder.isSplitted) {
105
+ const refNo2 = releaseGood.refNo2;
106
+ const foundSplittedReleaseGood = await tx.getRepository(entities_1.ReleaseGood).findOne({
107
+ where: {
108
+ domain: warehouseDomain,
109
+ refNo2,
110
+ status: (0, typeorm_1.Not)((0, typeorm_1.In)([constants_1.ORDER_STATUS.CANCELLED, constants_1.ORDER_STATUS.PENDING_CANCEL]))
111
+ },
112
+ relations: ['bizplace', 'bizplace.domain', 'bizplace.company', 'bizplace.company.domain']
113
+ });
114
+ if (foundSplittedReleaseGood)
115
+ throw new Error('Existing release order found');
116
+ }
117
+ else {
118
+ throw new Error('Existing release order found');
119
+ }
120
+ }
98
121
  }
99
122
  }
100
123
  let newReleaseGood = new entities_1.ReleaseGood();
@@ -1 +1 @@
1
- {"version":3,"file":"generate-release-good.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/release-good/generate-release-good.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-release-good.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/release-good/generate-release-good.ts"],"names":[],"mappings":"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"}
@@ -55,6 +55,7 @@ exports.RawReleaseGood = (0, graphql_tag_1.default) `
55
55
  packingSize: Int
56
56
  uom: String
57
57
  productId: String
58
+ productInfo: String
58
59
  sku: String
59
60
  releaseQty: Int
60
61
  releaseUomValue: Float
@@ -1 +1 @@
1
- {"version":3,"file":"raw-release-good.js","sourceRoot":"","sources":["../../../../server/graphql/types/release-good/raw-release-good.ts"],"names":[],"mappings":";;;;;;AAAA,8DAA6B;AAEhB,QAAA,cAAc,GAAG,IAAA,qBAAG,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwDhC,CAAA"}
1
+ {"version":3,"file":"raw-release-good.js","sourceRoot":"","sources":["../../../../server/graphql/types/release-good/raw-release-good.ts"],"names":[],"mappings":";;;;;;AAAA,8DAA6B;AAEhB,QAAA,cAAc,GAAG,IAAA,qBAAG,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDhC,CAAA"}
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.switchLocationStatus = exports.InventoryUtil = void 0;
3
+ exports._composeTargetInventories = exports.switchLocationStatus = exports.InventoryUtil = void 0;
4
4
  const typeorm_1 = require("typeorm");
5
5
  const product_base_1 = require("@things-factory/product-base");
6
6
  const warehouse_base_1 = require("@things-factory/warehouse-base");
7
+ const constants_1 = require("../constants");
8
+ const entities_1 = require("../entities");
7
9
  const errors_1 = require("../errors");
8
10
  exports.InventoryUtil = {
9
11
  /**
@@ -210,6 +212,53 @@ exports.InventoryUtil = {
210
212
  if (duplicatedReusablePalletCnt)
211
213
  throw new Error(palletId + ` exists`);
212
214
  },
215
+ /**
216
+ * To pre-assign inventories automatically for orderInventories in Release Goods
217
+ * @param product
218
+ * @param orderInventory
219
+ * @param packingType
220
+ * @param locationSortingRules
221
+ * @param customerBizplace
222
+ * @param domain
223
+ * @param trxMgr
224
+ * @returns orderInventories
225
+ */
226
+ async autoAssignInventoryForRelease(product, orderInventory, packingType, locationSortingRules = [], customerBizplace, domain, trxMgr) {
227
+ let qb = trxMgr.getRepository(warehouse_base_1.Inventory).createQueryBuilder('iv');
228
+ qb.leftJoinAndSelect('iv.location', 'loc')
229
+ .andWhere('"iv"."domain_id" = :domainId')
230
+ .andWhere('"iv"."bizplace_id" = :bizplaceId')
231
+ .andWhere('"iv"."packing_type" = :packingType')
232
+ .andWhere('"iv"."product_id" = :productId')
233
+ .andWhere('"iv"."status" = :status')
234
+ .andWhere('"iv"."qty" - COALESCE("iv"."locked_qty", 0) > 0')
235
+ .andWhere('"loc"."type" NOT IN (:...locationTypes)')
236
+ .setParameters({
237
+ domainId: domain.id,
238
+ bizplaceId: customerBizplace.id,
239
+ packingType: packingType,
240
+ productId: product.id,
241
+ status: warehouse_base_1.INVENTORY_STATUS.STORED,
242
+ locationTypes: [warehouse_base_1.LOCATION_TYPE.QUARANTINE, warehouse_base_1.LOCATION_TYPE.RESERVE]
243
+ });
244
+ if (locationSortingRules === null || locationSortingRules === void 0 ? void 0 : locationSortingRules.length) {
245
+ locationSortingRules.forEach((rule, idx) => {
246
+ idx === 0
247
+ ? qb.addOrderBy(`loc.${rule.name}`, rule.desc ? 'DESC' : 'ASC')
248
+ : qb.addOrderBy(`loc.${rule.name}`, rule.desc ? 'DESC' : 'ASC');
249
+ });
250
+ }
251
+ else {
252
+ qb.addOrderBy('"iv"."created_at"', 'ASC');
253
+ }
254
+ let inventories = await qb.getMany();
255
+ if (!(inventories === null || inventories === void 0 ? void 0 : inventories.length))
256
+ throw new Error(`no inventories found for ${product.sku}`);
257
+ inventories = inventories.map(inventory => {
258
+ return Object.assign(Object.assign({}, inventory), { remainQty: inventory.qty - ((inventory === null || inventory === void 0 ? void 0 : inventory.lockedQty) || 0), remainUomValue: inventory.uomValue - ((inventory === null || inventory === void 0 ? void 0 : inventory.lockedUomValue) || 0) });
259
+ });
260
+ return _composeTargetInventories(product, orderInventory, inventories);
261
+ },
213
262
  /**
214
263
  * @summary Do transaction on inventory record
215
264
  * @description It will update inventory after set a temp (domain, updater)
@@ -457,4 +506,43 @@ async function switchLocationStatus(domain, location, updater, trxMgr) {
457
506
  return location;
458
507
  }
459
508
  exports.switchLocationStatus = switchLocationStatus;
509
+ function _composeTargetInventories(product, record, inventories) {
510
+ let leftReleaseQty = record.releaseQty;
511
+ let leftReleaseUomValue = record.releaseUomValue;
512
+ let compReleaseQty = 0;
513
+ let compReleaseUomValue = 0;
514
+ let totalInventoryQty = inventories.reduce((total, inventory) => total + inventory.remainQty, 0);
515
+ if (totalInventoryQty < record.releaseQty) {
516
+ throw new Error(`invalid release qty for ${product === null || product === void 0 ? void 0 : product.sku}`);
517
+ }
518
+ let orderInventories = [];
519
+ let idx = 0;
520
+ while (compReleaseQty < record.releaseQty) {
521
+ const inventory = inventories[idx];
522
+ const { packingType, packingSize, batchId, uom } = inventory;
523
+ let orderInventory = new entities_1.OrderInventory();
524
+ if (inventory.remainQty > leftReleaseQty) {
525
+ const uomValuePerQty = Math.round((inventory.remainUomValue / inventory.remainQty) * 100) / 100;
526
+ compReleaseQty += leftReleaseQty;
527
+ compReleaseUomValue += leftReleaseUomValue;
528
+ orderInventory = Object.assign(Object.assign({}, orderInventory), { releaseQty: leftReleaseQty, releaseUomValue: Math.round(leftReleaseQty * uomValuePerQty * 100) / 100 });
529
+ }
530
+ else {
531
+ compReleaseQty += inventory.remainQty;
532
+ compReleaseUomValue += inventory.remainUomValue;
533
+ leftReleaseQty -= inventory.remainQty;
534
+ leftReleaseUomValue -= inventory.remainUomValue;
535
+ orderInventory = Object.assign(Object.assign({}, orderInventory), { releaseQty: inventory.remainQty, releaseUomValue: inventory.remainUomValue });
536
+ }
537
+ orderInventories.push(Object.assign(Object.assign({}, orderInventory), { inventory,
538
+ packingType,
539
+ packingSize,
540
+ batchId,
541
+ uom,
542
+ product, type: constants_1.ORDER_TYPES.RELEASE_OF_GOODS }));
543
+ idx++;
544
+ }
545
+ return orderInventories;
546
+ }
547
+ exports._composeTargetInventories = _composeTargetInventories;
460
548
  //# sourceMappingURL=inventory-util.js.map