@things-factory/worksheet-base 4.3.776 → 4.3.778

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.
@@ -135,7 +135,6 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
135
135
  where: { id: orderPackageItemId },
136
136
  relations: [
137
137
  'orderProduct',
138
- 'orderProduct.orderInventories',
139
138
  'orderPackage',
140
139
  'orderPackage.bizplace',
141
140
  'orderPackage.bizplace.domain',
@@ -143,7 +142,15 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
143
142
  ]
144
143
  });
145
144
  const orderProduct = orderPackageItem.orderProduct;
146
- const orderInventories = orderProduct.orderInventories.filter(oi => oi.packedQty != oi.pickedQty);
145
+ const orderInventories = await this.trxMgr
146
+ .getRepository(sales_base_1.OrderInventory)
147
+ .createQueryBuilder('oi')
148
+ .where('oi.order_product_id = :opId', { opId: orderProduct.id })
149
+ .andWhere('oi.release_good_id = :rgId', { rgId: orderPackageItem.orderPackage.releaseGood.id })
150
+ .andWhere('oi.packed_qty <> oi.picked_qty')
151
+ .orderBy('oi.created_at')
152
+ .addOrderBy('oi.name')
153
+ .getMany();
147
154
  let remainingPackQty = packedQty;
148
155
  let qtyToPack = 0;
149
156
  for (let orderInventory of orderInventories) {
@@ -271,22 +278,22 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
271
278
  let orderInventory = await this.trxMgr
272
279
  .getRepository(sales_base_1.OrderInventory)
273
280
  .createQueryBuilder('oi')
274
- .innerJoinAndSelect('oi.product', 'prd')
275
- .innerJoinAndSelect('oi.productDetail', 'pd')
276
- .innerJoinAndSelect('oi.inventory', 'inv')
277
- .innerJoinAndSelect('oi.orderProduct', 'op')
278
- .where('oi.order_product_id = :id', { id: orderProduct.id })
281
+ .where('oi.release_good_id = :rgId', { rgId: releaseGood.id })
282
+ .andWhere('oi.order_product_id = :id', { id: orderProduct.id })
279
283
  .andWhere('oi.product_detail_id = :productDetailId', { productDetailId: orderPackageItem.productDetail.id })
280
284
  .andWhere('oi.packed_qty <> oi.picked_qty')
281
285
  .orderBy('oi.created_at')
282
286
  .addOrderBy('oi.name')
283
287
  .getOne();
288
+ if (orderInventory) {
289
+ orderInventory.inventory = { id: orderInventory.inventoryId };
290
+ }
284
291
  // Validation: PackQty cannot be more than ReleaseQty
285
292
  if (orderPackageItem !== null && orderInventory == null) {
286
293
  throw new Error(this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('packing', `unable to find suitable item`));
287
294
  }
288
- const product = orderInventory.product;
289
- const productDetail = orderInventory.productDetail;
295
+ const product = orderPackageItem.productDetail.product;
296
+ const productDetail = orderPackageItem.productDetail;
290
297
  const inventory = orderInventory.inventory;
291
298
  const releaseQty = orderInventory.releaseQty;
292
299
  if (product.isInventoryDecimal) {
@@ -393,6 +400,7 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
393
400
  INNER JOIN (
394
401
  SELECT oi.order_product_id, SUM(oi.packed_qty) AS sum_pack_qty
395
402
  FROM order_inventories oi
403
+ WHERE oi.release_good_id = $2
396
404
  GROUP BY oi.order_product_id
397
405
  ) src ON src.order_product_id = opi.order_product_id
398
406
  where opi.status = 'PROCESSING'
@@ -401,7 +409,7 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
401
409
  having SUM(opi.packed_qty) <> src.sum_pack_qty
402
410
  ) src where src.id = tgt.id
403
411
  returning *;
404
- `, [updateOrderPackageItem.id]))[0];
412
+ `, [orderPackageItem.orderPackageId, releaseGood.id]))[0];
405
413
  if (clearData.length > 0) {
406
414
  console.info('ProcessingOrderPackageItemData: ', JSON.stringify(clearData));
407
415
  }
@@ -1 +1 @@
1
- {"version":3,"file":"packing-worksheet-controller.js","sourceRoot":"","sources":["../../../server/controllers/outbound/packing-worksheet-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"packing-worksheet-controller.js","sourceRoot":"","sources":["../../../server/controllers/outbound/packing-worksheet-controller.ts"],"names":[],"mappings":";;;AAAA,qCAAuD;AAEvD,yDAA2D;AAC3D,6CAA4C;AAC5C,2EAA2D;AAC3D,qFAAwF;AAExF,2DAUmC;AACnC,uEAAoF;AACpF,mEAQuC;AAEvC,+CAAkE;AAClE,6CAA2D;AAC3D,oCAAgD;AAChD,8EAAwE;AAExE,MAAa,0BAA2B,SAAQ,iDAAsB;IACpE,KAAK,CAAC,wBAAwB,CAAC,aAAqB;QAClD,IAAI,WAAW,GAAgB,MAAM,IAAI,CAAC,YAAY,CACpD,wBAAW,EACX;YACE,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,aAAa;SACpB,EACD,CAAC,kBAAkB,EAAE,4BAA4B,CAAC,CACnD,CAAA;QACD,IAAI,gBAAgB,GAAqB,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;YAChF,OAAO,EAAE,CAAC,SAAS,CAAC,MAAM,KAAK,SAAS,CAAA;QAC1C,CAAC,CAAC,CAAA;QAEF,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE;YACjC,MAAM,IAAI,KAAK,CACb,sGAAsG,CACvG,CAAA;SACF;QAED,MAAM,wBAAwB,GAAc,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,oBAAS,CAAC,CAAC,OAAO,CAAC;YAC7F,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,0BAAc,CAAC,OAAO,EAAE,MAAM,EAAE,4BAAgB,CAAC,WAAW,EAAE;SAChH,CAAC,CAAA;QAEF,IAAI,wBAAwB;YAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAA;QAC5G,IAAI,SAAS,GAAc,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,0BAAc,CAAC,OAAO,CAAC,CAAA;QAE1F,IAAI,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAkB,EAAE,EAAE,WAAC,OAAA,MAAA,EAAE,CAAC,SAAS,0CAAE,EAAE,CAAA,EAAA,CAAC,IAAI,WAAW,CAAC,YAAY,EAAE;YAChG,SAAS,CAAC,gBAAgB,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAC5D,SAAS,EACT,0BAAc,CAAC,OAAO,EACtB,gBAAgB,CACjB,CAAA;SACF;QAED,gBAAgB,CAAC,OAAO,CAAC,CAAC,EAAkB,EAAE,EAAE;YAC9C,EAAE,CAAC,MAAM,GAAG,mCAAsB,CAAC,aAAa,CAAA;YAChD,EAAE,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;QACxB,CAAC,CAAC,CAAA;QACF,MAAM,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAA;QAE/C,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,WAAmB;;QACvC,IAAI,SAAS,GAAc,MAAM,IAAI,CAAC,wBAAwB,CAAC,WAAW,EAAE,0BAAc,CAAC,OAAO,EAAE;YAClG,aAAa;YACb,sBAAsB;YACtB,6BAA6B;YAC7B,kBAAkB;YAClB,kCAAkC;SACnC,CAAC,CAAA;QAEF,IACE,CAAC,mCAAsB,CAAC,cAAc,EAAE,mCAAsB,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,WAAW,0CAAE,MAAM,CAAC,EAClH;YACA,MAAM,IAAI,KAAK,CAAC,oBAAoB,SAAS,CAAC,WAAW,CAAC,IAAI,IAAI,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,WAAW,0CAAE,MAAM,EAAE,CAAC,CAAA;SACpG;QAED,MAAM,gBAAgB,GAAsB,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,aAAa,CAAC,CAAA;QAC7G,MAAM,iBAAiB,GAAqB,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAoB,EAAE,EAAE;YACxF,IAAI,eAAe,GAAmB,GAAG,CAAC,eAAe,CAAA;YACzD,eAAe,CAAC,MAAM,GAAG,mCAAsB,CAAC,OAAO,CAAA;YACvD,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;YACnC,OAAO,eAAe,CAAA;QACxB,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAA;QAE1C,IAAI,WAAW,GAAgB,SAAS,CAAC,WAAW,CAAA;QACpD,WAAW,CAAC,MAAM,GAAG,yBAAY,CAAC,OAAO,CAAA;QACzC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;QAC/B,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;QAEhC,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAA;QAEzE,MAAM,WAAW,GAAW,SAAS,CAAC,WAAW,CAAC,MAAM,CAAA;QACxD,QAAQ,WAAW,EAAE;YACnB,KAAK,2BAAe,CAAC,WAAW;gBAC9B,MAAM,WAAW,GAAgB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,qCAAW,CAAC,CAAC,OAAO,CAAC;oBACpF,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,MAAM;oBACnC,MAAM,EAAE,2CAAiB,CAAC,MAAM;iBACjC,CAAC,CAAA;gBAEF,IAAI,WAAW,EAAE;oBACf,MAAM,eAAe,GAA0B,IAAI,6BAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;oBAE7G,IAAI,WAAW,GAAG,KAAK,EAAE,WAAgB,EAAE,WAAgB,EAAE,MAAW,EAAE,IAAS,EAAE,EAAE;wBACrF,IAAI;4BACF,cAAc;4BACd,MAAM,eAAe,CAAC,qBAAqB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;4BAErE,MAAM,eAAe,CAAC,qBAAqB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;yBACtE;wBAAC,OAAO,KAAK,EAAE;4BACd,YAAM,CAAC,KAAK,CACV,uDAAuD,IAAI,CAAC,SAAS,CAAC;gCACpE,WAAW;gCACX,WAAW;gCACX,MAAM;gCACN,IAAI;6BACL,CAAC,KAAK,KAAK,GAAG,CAChB,CAAA;yBACF;oBACH,CAAC,CAAA;oBAED,6BAA6B;oBAC7B,WAAW,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;iBAC9D;gBACD,MAAK;YAEP,KAAK,2BAAe,CAAC,MAAM;gBACzB,MAAM,MAAM,GAAW,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,2BAAM,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAA;gBAE5G,IAAI,MAAM,EAAE;oBACV,MAAM,UAAU,GAAqB,IAAI,6BAAgB,EAAE,CAAA;oBAE3D,IAAI,WAAW,GAAG,KAAK,EAAE,MAAW,EAAE,WAAgB,EAAE,MAAW,EAAE,IAAS,EAAE,EAAE;wBAChF,IAAI;4BACF,cAAc;4BACd,MAAM,UAAU,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;yBAClF;wBAAC,OAAO,KAAK,EAAE;4BACd,YAAM,CAAC,KAAK,CACV,uDAAuD,IAAI,CAAC,SAAS,CAAC;gCACpE,MAAM;gCACN,WAAW;gCACX,MAAM;gCACN,IAAI;6BACL,CAAC,KAAK,KAAK,GAAG,CAChB,CAAA;yBACF;oBACH,CAAC,CAAA;oBAED,6BAA6B;oBAC7B,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;iBACzD;gBACD,MAAK;YAEP,KAAK,2BAAe,CAAC,QAAQ;gBAC3B,4BAA4B;gBAC5B,iCAAiC;gBACjC,kBAAkB;gBAClB,cAAc;gBACd,MAAM,+BAAkB,CAAC,gBAAgB,CAAC,WAAW,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;gBAClF,MAAK;YACP;gBACE,MAAK;SACR;QAED,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QAEhC,IAAA,iCAAc,EAAC,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE,oCAAiB,CAAC,cAAc,CAAC,CAAA;QAEnF,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,kBAA0B,EAAE,SAAiB,EAAE,YAAoB;QAC/E,IAAI,gBAAgB,GAAqB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,6BAAgB,CAAC,CAAC,OAAO,CAAC;YACjG,KAAK,EAAE,EAAE,EAAE,EAAE,kBAAkB,EAAE;YACjC,SAAS,EAAE;gBACT,cAAc;gBACd,cAAc;gBACd,uBAAuB;gBACvB,8BAA8B;gBAC9B,0BAA0B;aAC3B;SACF,CAAC,CAAA;QAEF,MAAM,YAAY,GAAiB,gBAAgB,CAAC,YAAY,CAAA;QAEhE,MAAM,gBAAgB,GAAqB,MAAM,IAAI,CAAC,MAAM;aACzD,aAAa,CAAC,2BAAc,CAAC;aAC7B,kBAAkB,CAAC,IAAI,CAAC;aACxB,KAAK,CAAC,6BAA6B,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC;aAC/D,QAAQ,CAAC,4BAA4B,EAAE,EAAE,IAAI,EAAE,gBAAgB,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC;aAC9F,QAAQ,CAAC,gCAAgC,CAAC;aAC1C,OAAO,CAAC,eAAe,CAAC;aACxB,UAAU,CAAC,SAAS,CAAC;aACrB,OAAO,EAAE,CAAA;QAEZ,IAAI,gBAAgB,GAAW,SAAS,CAAA;QACxC,IAAI,SAAS,GAAW,CAAC,CAAA;QACzB,KAAK,IAAI,cAAc,IAAI,gBAAgB,EAAE;YAC3C,MAAM,eAAe,GAAW,cAAc,CAAC,SAAS,GAAG,cAAc,CAAC,SAAS,CAAA;YACnF,IAAI,eAAe,GAAoB,MAAM,IAAI,CAAC,MAAM;iBACrD,aAAa,CAAC,0BAAe,CAAC;iBAC9B,kBAAkB,CAAC,IAAI,CAAC;iBACxB,kBAAkB,CAAC,aAAa,EAAE,GAAG,CAAC;iBACtC,kBAAkB,CAAC,oBAAoB,EAAE,IAAI,CAAC;iBAC9C,kBAAkB,CAAC,gBAAgB,EAAE,IAAI,CAAC;iBAC1C,kBAAkB,CAAC,cAAc,EAAE,KAAK,CAAC;iBACzC,kBAAkB,CAAC,YAAY,EAAE,KAAK,CAAC;iBACvC,kBAAkB,CAAC,kBAAkB,EAAE,IAAI,CAAC;iBAC5C,KAAK,CAAC,aAAa,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,CAAC;iBAC/C,QAAQ,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,0BAAc,CAAC,OAAO,EAAE,CAAC;iBAC7D,MAAM,EAAE,CAAA;YAEX,IAAI,eAAe,GAAmB,eAAe,CAAC,eAAe,CAAA;YACrE,IAAI,SAAS,GAAc,eAAe,CAAC,SAAS,CAAA;YACpD,MAAM,WAAW,GAAgB,eAAe,CAAC,eAAe,CAAC,WAAW,CAAA;YAC5E,MAAM,OAAO,GAAY,eAAe,CAAC,OAAO,CAAA;YAChD,MAAM,aAAa,GAAkB,eAAe,CAAC,aAAa,CAAA;YAClE,MAAM,SAAS,GAAW,eAAe,CAAC,UAAU,CAAA;YACpD,IAAI,eAAe,IAAI,SAAS,EAAE;gBAChC,SAAS,GAAG,SAAS,CAAA;gBACrB,gBAAgB,GAAG,CAAC,CAAA;aACrB;iBAAM;gBACL,SAAS,GAAG,eAAe,CAAA;gBAC3B,gBAAgB,IAAI,eAAe,CAAA;aACpC;YAED,IAAI,SAAS,GAAG,SAAS,EAAE;gBACzB,MAAM,IAAI,KAAK,CACb,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,MAAM,EAAE,0CAA0C,CAAC,CACjG,CAAA;aACF;YAED,2CAA2C;YAC3C,IAAI,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,cAAc,EAAE;gBACnC,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,qCAAqC,EAAE;oBAClD,IAAI,CAAC,YAAY,IAAI,YAAY,IAAI,EAAE,EAAE;wBACvC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC,CAAA;qBAClG;oBAED,IAAI,iBAAiB,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,8BAAa,CAAC,CAAC,OAAO,CAAC;wBAC5F,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE;qBAC1E,CAAC,CAAA;oBAEF,IAAI,iBAAiB,EAAE;wBACrB,IAAI,iBAAiB,CAAC,eAAe,EAAE;4BACrC,IAAI,WAAW,GAAgB,MAAM,IAAI,CAAC,MAAM;iCAC7C,aAAa,CAAC,wBAAW,CAAC;iCAC1B,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,iBAAiB,CAAC,eAAe,EAAE,EAAE,CAAC,CAAA;4BAChE,MAAM,IAAI,KAAK,CAAC,8CAA8C,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;yBAClF;wBAED,iBAAiB,CAAC,MAAM,GAAG,iCAAgB,CAAC,OAAO,CAAA;wBACnD,iBAAiB,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;wBACrC,iBAAiB,CAAC,eAAe,GAAG,WAAW,CAAC,EAAE,CAAA;wBAElD,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,8BAAa,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;qBACvE;yBAAM;wBACL,IAAI,aAAa,GAAkB,IAAI,8BAAa,EAAE,CAAA;wBACtD,aAAa,CAAC,IAAI,GAAG,qCAAoB,CAAC,iBAAiB,EAAE,CAAA;wBAC7D,aAAa,CAAC,YAAY,GAAG,YAAY,CAAA;wBACzC,aAAa,CAAC,MAAM,GAAG,iCAAgB,CAAC,OAAO,CAAA;wBAC/C,aAAa,CAAC,MAAM,GAAG,sCAAqB,CAAC,QAAQ,CAAA;wBACrD,aAAa,CAAC,eAAe,GAAG,WAAW,CAAC,EAAE,CAAA;wBAC9C,aAAa,CAAC,OAAO,GAAG,OAAO,CAAA;wBAC/B,aAAa,CAAC,aAAa,GAAG,aAAa,CAAA;wBAC3C,aAAa,CAAC,SAAS,GAAG,SAAS,CAAA;wBACnC,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;wBAElC,iBAAiB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,8BAAa,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;qBACvF;iBACF;aACF;YAED,eAAe,CAAC,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;YAClH,IAAI,eAAe,CAAC,SAAS,IAAI,eAAe,CAAC,UAAU,EAAE;gBAC3D,eAAe,CAAC,MAAM,GAAG,mCAAsB,CAAC,MAAM,CAAA;gBAEtD,IAAI,cAAc,GAAkB,MAAM,IAAI,CAAC,MAAM;qBAClD,aAAa,CAAC,8BAAa,CAAC;qBAC5B,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,eAAe,EAAE,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBAEvD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC7B,cAAc,CAAC,OAAO,CAAC,CAAC,GAAkB,EAAE,EAAE;wBAC5C,GAAG,CAAC,MAAM,GAAG,iCAAgB,CAAC,MAAM,CAAA;wBACpC,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;oBACzB,CAAC,CAAC,CAAA;oBAEF,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,8BAAa,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;iBACpE;gBAED,MAAM,IAAA,yCAAwB,EAAC,SAAS,EAAE,WAAW,EAAE,2CAA0B,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;gBAExH,eAAe,CAAC,MAAM,GAAG,4BAAgB,CAAC,IAAI,CAAA;aAC/C;YAED,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAA;YAEhD,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;YACnC,eAAe,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAe,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;YAExF,IAAI,CAAC,gBAAgB,EAAE;gBACrB,MAAK;aACN;SACF;QAED,gBAAgB,CAAC,SAAS,GAAG,OAAO,CAAC,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,SAAS,CAAC;YAC/D,CAAC,CAAC,gBAAgB,CAAC,SAAS,GAAG,SAAS;YACxC,CAAC,CAAC,SAAS,CAAA;QAEb,IAAI,gBAAgB,CAAC,SAAS,IAAI,gBAAgB,CAAC,UAAU,EAAE;YAC7D,gBAAgB,CAAC,MAAM,GAAG,yBAAY,CAAC,IAAI,CAAA;SAC5C;aAAM,IAAI,gBAAgB,CAAC,SAAS,GAAG,gBAAgB,CAAC,UAAU,EAAE;YACnE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,MAAM,EAAE,0CAA0C,CAAC,CAAC,CAAA;SAClH;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,6BAAgB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QAExE,OAAO;YACL,WAAW,EAAE,gBAAgB,CAAC,YAAY,CAAC,WAAW;YACtD,QAAQ,EAAE,gBAAgB,CAAC,YAAY,CAAC,QAAQ;YAChD,cAAc,EAAE,gBAAgB,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM;SAC9D,CAAA;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,kBAA0B,EAAE,cAAsB,EAAE,YAAqB;QAChG,IAAI;YACF,IAAI,SAAS,GAAW,CAAC,CAAA;YAEzB,IAAI,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;YAEnE,IAAI,gBAAgB,GAAqB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,6BAAgB,CAAC,CAAC,IAAI,CAAC;gBAC9F,KAAK,EAAE,EAAE,EAAE,EAAE,IAAA,YAAE,EAAC,MAAM,CAAC,EAAE;gBACzB,SAAS,EAAE,CAAC,cAAc,EAAE,0BAA0B,EAAE,eAAe,EAAE,uBAAuB,CAAC;aAClG,CAAC,CAAA;YAEF,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC/B,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,CAAA;aACtE;iBAAM;gBACL,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;aACvC;YAED,MAAM,YAAY,GAAiB,gBAAgB,CAAC,YAAY,CAAA;YAChE,MAAM,WAAW,GAAgB,YAAY,CAAC,WAAW,CAAA;YAEzD,IAAI,cAAc,GAAmB,MAAM,IAAI,CAAC,MAAM;iBACnD,aAAa,CAAC,2BAAc,CAAC;iBAC7B,kBAAkB,CAAC,IAAI,CAAC;iBACxB,KAAK,CAAC,4BAA4B,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC;iBAC7D,QAAQ,CAAC,2BAA2B,EAAE,EAAE,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC;iBAC9D,QAAQ,CAAC,yCAAyC,EAAE,EAAE,eAAe,EAAE,gBAAgB,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC;iBAC3G,QAAQ,CAAC,gCAAgC,CAAC;iBAC1C,OAAO,CAAC,eAAe,CAAC;iBACxB,UAAU,CAAC,SAAS,CAAC;iBACrB,MAAM,EAAE,CAAA;YAEX,IAAI,cAAc,EAAE;gBAClB,cAAc,CAAC,SAAS,GAAG,EAAE,EAAE,EAAE,cAAc,CAAC,WAAW,EAAe,CAAA;aAC3E;YAED,qDAAqD;YACrD,IAAI,gBAAgB,KAAK,IAAI,IAAI,cAAc,IAAI,IAAI,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,SAAS,EAAE,8BAA8B,CAAC,CAAC,CAAA;aACzG;YAED,MAAM,OAAO,GAAY,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAA;YAC/D,MAAM,aAAa,GAAkB,gBAAgB,CAAC,aAAa,CAAA;YACnE,MAAM,SAAS,GAAc,cAAc,CAAC,SAAS,CAAA;YACrD,MAAM,UAAU,GAAW,cAAc,CAAC,UAAU,CAAA;YAEpD,IAAI,OAAO,CAAC,kBAAkB,EAAE;gBAC9B,SAAS,GAAG,cAAc,CAAC,UAAU,CAAA;aACtC;iBAAM;gBACL,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,YAAY,iCAExC,aAAa,KAChB,OAAO,EAAE,OAAO,KAElB,cAAc,EACd,SAAS,CACV,CAAA;gBACD,SAAS,GAAG,eAAe,CAAC,GAAG,CAAA;aAChC;YAED,qDAAqD;YACrD,IAAI,SAAS,GAAG,cAAc,CAAC,SAAS,GAAG,cAAc,CAAC,UAAU,EAAE;gBACpE,MAAM,IAAI,KAAK,CACb,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,SAAS,EAAE,0CAA0C,CAAC,CACpG,CAAA;aACF;YAED,uDAAuD;YACvD,IAAI,aAAqC,CAAA;YACzC,IAAI,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,cAAc,MAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,qCAAqC,CAAA,EAAE;gBACpF,IAAI,CAAC,YAAY,IAAI,YAAY,IAAI,EAAE,EAAE;oBACvC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC,CAAA;iBAClG;gBAED,aAAa,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,8BAAa,CAAC,CAAC,OAAO,CAAC;oBACrE,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,YAAY,EAAE,YAAY;wBAC1B,aAAa;wBACb,cAAc,EAAE,gBAAgB,CAAC,cAAc;qBAChD;iBACF,CAAC,CAAA;gBAEF,IAAI,aAAa,EAAE;oBACjB,IAAI,aAAa,CAAC,WAAW,KAAK,SAAS,CAAC,EAAE,EAAE;wBAC9C,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;qBACjE;oBAED,IAAI,aAAa,CAAC,eAAe,KAAK,WAAW,CAAC,EAAE,EAAE;wBACpD,MAAM,IAAI,KAAK,CAAC,8CAA8C,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;qBAClF;oBAED,aAAa,mCACR,aAAa,KAChB,MAAM,EAAE,iCAAgB,CAAC,OAAO,EAChC,OAAO,EAAE,IAAI,CAAC,IAAI,GACnB,CAAA;iBACF;qBAAM;oBACL,aAAa,GAAG;wBACd,IAAI,EAAE,qCAAoB,CAAC,iBAAiB,EAAE;wBAC9C,YAAY,EAAE,YAAY;wBAC1B,MAAM,EAAE,iCAAgB,CAAC,OAAO;wBAChC,eAAe,EAAE,WAAW,CAAC,EAAE;wBAC/B,MAAM,EAAE,sCAAqB,CAAC,QAAQ;wBACtC,OAAO,EAAE,OAAO;wBAChB,aAAa,EAAE,aAAa;wBAC5B,SAAS,EAAE,SAAS;wBACpB,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,cAAc,EAAE,gBAAgB,CAAC,cAAc;qBAChD,CAAA;iBACF;aACF;YAED,MAAM,cAAc,GAAG,IAAI,IAAI,EAAE,CAAA;YACjC,2BAA2B;YAC3B,cAAc,CAAC,SAAS,GAAG,CAAC,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,SAAS,KAAI,CAAC,CAAC,GAAG,SAAS,CAAA;YACvE,cAAc,CAAC,QAAQ,GAAG,cAAc,CAAA;YACxC,IAAI,QAAQ,GAAa,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YAC1F,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAC5C,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC7B,cAAc,CAAC,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;aAC7C;YAED,IAAI,aAAa,EAAE;gBACjB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,8BAAa,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;aACnE;YAED,IAAI,sBAAsB,GAAG,CAC3B,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,6BAAgB,CAAC,CAAC,KAAK,CACrD;;;;;;;;;;;;;;;;WAgBC,EACD,CAAC,gBAAgB,CAAC,EAAE,EAAE,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAC3F,CACF,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAEP,MAAM,IAAI,CAAC,MAAM;iBACd,aAAa,CAAC,yBAAY,CAAC;iBAC3B,MAAM,CAAC,EAAE,EAAE,EAAE,gBAAgB,CAAC,cAAc,EAAE,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;YAErG,IAAI,cAAc,CAAC,SAAS,KAAK,UAAU,EAAE;gBAC3C,cAAc,CAAC,MAAM,GAAG,mCAAsB,CAAC,MAAM,CAAA;gBACrD,MAAM,IAAA,yCAAwB,EAAC,SAAS,EAAE,WAAW,EAAE,2CAA0B,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;gBACxH,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAe,CAAC,CAAC,MAAM,CACrD,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAC/D;oBACE,MAAM,EAAE,4BAAgB,CAAC,IAAI;oBAC7B,OAAO,EAAE,IAAI,CAAC,IAAI;oBAClB,SAAS,EAAE,cAAc;iBAC1B,CACF,CAAA;gBAED,gEAAgE;gBAChE,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,8BAAa,CAAC,CAAC,MAAM,CACnD,EAAE,eAAe,EAAE,WAAW,CAAC,EAAE,EAAE,EACnC;oBACE,MAAM,EAAE,iCAAgB,CAAC,MAAM;oBAC/B,OAAO,EAAE,IAAI,CAAC,IAAI;oBAClB,SAAS,EAAE,cAAc;iBAC1B,CACF,CAAA;gBAED,uEAAuE;gBACvE,IAAI,SAAS,GAAG,CACd,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CACrB;;;;;;;;;;;;;;;;;SAiBH,EACG,CAAC,gBAAgB,CAAC,cAAc,EAAE,WAAW,CAAC,EAAE,CAAC,CAClD,CACF,CAAC,CAAC,CAAC,CAAA;gBAEJ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;oBACxB,OAAO,CAAC,IAAI,CAAC,kCAAkC,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAA;iBAC5E;aACF;YAED,cAAc,GAAG,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAErE,OAAO;gBACL,oBAAoB,EAAE;oBACpB;wBACE,EAAE,EAAE,sBAAsB,CAAC,EAAE;wBAC7B,UAAU,EAAE,sBAAsB,CAAC,WAAW;wBAC9C,SAAS,EAAE,sBAAsB,CAAC,UAAU;wBAC5C,MAAM,EAAE,sBAAsB,CAAC,MAAM;qBACtC;iBACF;aACF,CAAA;SACF;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,aAAqB,EAAE,cAAsB,EAAE,WAAoB;QACvF,IAAI,YAAY,GAAiB,MAAM,IAAI,CAAC,MAAM;aAC/C,aAAa,CAAC,yBAAY,CAAC;aAC3B,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,CAAC,CAAA;QAE7C,MAAM,IAAI,CAAC,MAAM;aACd,aAAa,CAAC,yBAAY,CAAC;aAC3B,MAAM,CACL,EAAE,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,EACvB,EAAE,MAAM,EAAE,yBAAY,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,CACnG,CAAA;QAEH,IAAI,WAAW,GAAgB,MAAM,IAAI,CAAC,YAAY,CACpD,wBAAW,EACX;YACE,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,yBAAY,CAAC,OAAO;SAC7B,EACD,CAAC,UAAU,CAAC,CACb,CAAA;QAED,MAAM,SAAS,GAAc,MAAM,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,0BAAc,CAAC,OAAO,EAAE;YACnG,kBAAkB;YAClB,kCAAkC;SACnC,CAAC,CAAA;QACF,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,4BAAgB,CAAC,SAAS,EAAE,CAAC,CAAA;QAE3E,IAAI,aAAa,GAAmB,MAAM,IAAI,CAAC,MAAM;aAClD,aAAa,CAAC,yBAAY,CAAC;aAC3B,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QAExF,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,IAAI,yBAAY,CAAC,IAAI,CAAC,EAAE;YAC7D,IAAI,cAAc,GAAkB,MAAM,IAAI,CAAC,MAAM;iBAClD,aAAa,CAAC,8BAAa,CAAC;iBAC5B,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,eAAe,EAAE,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;YAEvD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7B,cAAc,CAAC,OAAO,CAAC,CAAC,GAAkB,EAAE,EAAE;oBAC5C,GAAG,CAAC,MAAM,GAAG,iCAAgB,CAAC,UAAU,CAAA;oBACxC,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;gBACzB,CAAC,CAAC,CAAA;gBAEF,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,8BAAa,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;aACpE;YAED,IAAI,WAAmB,CAAA;YACvB,IAAI,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,aAAa;gBAAE,WAAW,GAAG,yBAAY,CAAC,IAAI,CAAA;;gBAC1D,WAAW,GAAG,yBAAY,CAAC,OAAO,CAAA;YAEvC,+BAA+B;YAC/B,0CAA0C;YAC1C,gDAAgD;YAChD,yDAAyD;YACzD,8BAA8B;YAC9B,0JAA0J;YAC1J,MAAM;YACN,IAAI;YACJ,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;YAEhC,IAAA,iCAAc,EAAC,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE,oCAAiB,CAAC,gBAAgB,CAAC,CAAA;YAErF,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;SAC5D;aAAM;YACL,OAAO,SAAS,CAAA;SACjB;IACH,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,aAAqB,EAAE,cAAsB,EAAE,eAAuB;QAClG,MAAM,YAAY,GAAiB,MAAM,IAAI,CAAC,MAAM;aACjD,aAAa,CAAC,yBAAY,CAAC;aAC3B,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAA;QAE3G,MAAM,aAAa,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,8BAAa,CAAC,CAAC,OAAO,CAAC;YAC1F,KAAK,EAAE;gBACL,EAAE,EAAE,eAAe;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,eAAe,EAAE,aAAa;gBAC9B,cAAc,EAAE,YAAY,CAAC,EAAE;aAChC;YACD,SAAS,EAAE,CAAC,WAAW,CAAC;SACzB,CAAC,CAAA;QAEF,IAAI,SAAS,GAAc,aAAa,CAAC,SAAS,CAAA;QAElD,MAAM,cAAc,GAAmB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,2BAAc,CAAC,CAAC,OAAO,CAAC;YAC7F,KAAK,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE;SACpF,CAAC,CAAA;QAEF,MAAM,eAAe,GAAoB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,0BAAe,CAAC,CAAC,OAAO,CAAC;YAChG,KAAK,EAAE;gBACL,eAAe,EAAE,cAAc,CAAC,EAAE;gBAClC,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAA,aAAG,EAAC,IAAA,eAAK,EAAC,4BAAgB,CAAC,WAAW,CAAC,CAAC;aACjD;SACF,CAAC,CAAA;QAEF,IACE,cAAc,CAAC,UAAU,IAAI,cAAc,CAAC,SAAS;YACrD,cAAc,CAAC,MAAM,IAAI,mCAAsB,CAAC,MAAM,EACtD;YACA,cAAc,CAAC,MAAM,GAAG,iCAAgB,CAAC,OAAO,CAAA;YAEhD,MAAM,IAAI,CAAC,MAAM;iBACd,aAAa,CAAC,0BAAe,CAAC;iBAC9B,MAAM,CAAC,EAAE,EAAE,EAAE,eAAe,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,4BAAgB,CAAC,SAAS,EAAE,CAAC,CAAA;SAC9E;QAED,IAAI,mBAAmB,GAAkB,MAAM,IAAI,CAAC,MAAM;aACvD,aAAa,CAAC,8BAAa,CAAC;aAC5B,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,CAAC,CAAA;QAE9C,IAAI,mBAAmB,CAAC,MAAM,IAAI,sCAAqB,CAAC,QAAQ,EAAE;YAChE,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,8BAAa,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAA;SAC9E;aAAM;YACL,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,8BAAa,CAAC,CAAC,MAAM,CACnD;gBACE,EAAE,EAAE,eAAe;aACpB,EACD;gBACE,MAAM,EAAE,iCAAgB,CAAC,MAAM;gBAC/B,eAAe,EAAE,IAAI;gBACrB,OAAO,EAAE,IAAI,CAAC,IAAI;aACnB,CACF,CAAA;SACF;QAED,MAAM,gBAAgB,GAAG,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAC1D,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,KAAK,aAAa,CAAC,eAAe,CAC/D,CAAA;QACD,IAAI,gBAAgB,EAAE;YACpB,gBAAgB,CAAC,SAAS,EAAE,CAAA;YAC5B,MAAM,IAAI,CAAC,MAAM;iBACd,aAAa,CAAC,6BAAgB,CAAC;iBAC/B,MAAM,CAAC,EAAE,EAAE,EAAE,gBAAgB,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAA;SAClF;QAED,cAAc,CAAC,SAAS,EAAE,CAAA;QAC1B,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;QAClC,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,cAAc,CAAC,CAAC,CAAA;IACjD,CAAC;IAED,KAAK,CAAC,8BAA8B,CAAC,cAAwB;QAC3D,IAAI,YAAY,GAAkB,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,wBAAW,CAAC,CAAC,IAAI,CAAC;YAClF,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,IAAA,YAAE,EAAC,cAAc,CAAC;aACzB;YACD,SAAS,EAAE,CAAC,kBAAkB,EAAE,4BAA4B,CAAC;SAC9D,CAAC,CAAA;QAEF,IAAI,UAAU,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAC,WAAW,EAAC,EAAE;YACnC,IAAI;gBACF,MAAM,wBAAwB,GAAc,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,oBAAS,CAAC,CAAC,OAAO,CAAC;oBAC7F,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,WAAW;wBACX,IAAI,EAAE,0BAAc,CAAC,OAAO;wBAC5B,MAAM,EAAE,4BAAgB,CAAC,WAAW;qBACrC;iBACF,CAAC,CAAA;gBACF,IAAI,wBAAwB;oBAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAA;gBAE5G,IAAI,gBAAgB,GAAqB,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;oBAChF,OAAO,EAAE,CAAC,SAAS,CAAC,MAAM,KAAK,SAAS,CAAA;gBAC1C,CAAC,CAAC,CAAA;gBAEF,IAAI,SAAS,GAAc,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,0BAAc,CAAC,OAAO,CAAC,CAAA;gBAE1F,IAAI,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAkB,EAAE,EAAE,WAAC,OAAA,MAAA,EAAE,CAAC,SAAS,0CAAE,EAAE,CAAA,EAAA,CAAC,IAAI,WAAW,CAAC,YAAY,EAAE;oBAChG,SAAS,CAAC,gBAAgB,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAC5D,SAAS,EACT,0BAAc,CAAC,OAAO,EACtB,gBAAgB,CACjB,CAAA;iBACF;gBAED,gBAAgB,CAAC,OAAO,CAAC,CAAC,EAAkB,EAAE,EAAE;oBAC9C,EAAE,CAAC,MAAM,GAAG,mCAAsB,CAAC,aAAa,CAAA;oBAChD,EAAE,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAA;gBACxB,CAAC,CAAC,CAAA;gBACF,MAAM,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAA;gBAE/C,OAAO,SAAS,CAAA;aACjB;YAAC,OAAO,KAAK,EAAE;gBACd,YAAM,CAAC,KAAK,CACV,iEAAiE,WAAW,CAAC,IAAI,GAAG,GAAG,GAAG,KAAK,EAAE,CAClG,CAAA;aACF;QACH,CAAC,CAAC,CACH,CAAA;QAED,OAAO,UAAU,CAAA;IACnB,CAAC;CACF;AAptBD,gEAotBC"}
@@ -892,22 +892,22 @@ class WorksheetController {
892
892
  WITH RECURSIVE cte as (
893
893
  select * from (
894
894
  select pd2.product_id as "productId", pd2.id, pd2.packing_size as "packingSize",
895
- pd2.packing_type as "packingType", pd2.uom as "uom", (pd2.uom_value * $2::float) as "uomValue", $2::float as "qty", pb.gtin
896
- from product_details pd
895
+ pd2.packing_type as "packingType", pd2.uom as "uom", (pd2.uom_value * $2::float) as "uomValue", $2::float as "qty"
896
+ from product_details pd
897
897
  inner join product_details pd2 on pd.product_id = pd2.product_id and pd.packing_type = pd2.packing_type and pd.packing_size = pd2.packing_size and pd.uom = pd2.uom
898
- inner join product_barcodes pb on pb.product_detail_id = pd2.id
899
898
  where pd.id = $1
900
899
  ) as dt
901
900
  union all
902
901
  select pd.product_id as "productId", pd.id, pd.packing_size as "packingSize",
903
902
  pd.packing_type as "packingType", pd.uom,
904
- dt1.qty * pd.uom_value as "uomValue", dt1.qty * pd.packing_size as "qty", pb.gtin
903
+ dt1.qty * pd.uom_value as "uomValue", dt1.qty * pd.packing_size as "qty"
905
904
  from product_details pd
906
- inner join product_barcodes pb on pb.product_detail_id = pd.id
907
- inner join cte dt1 on dt1.id = pd.child_product_detail_id
905
+ inner join cte dt1 on dt1.id = pd.child_product_detail_id
908
906
  where pd.deleted_at is null
909
907
  )
910
- select * from cte where gtin = $3
908
+ select cte.*, pb.gtin
909
+ from cte
910
+ inner join product_barcodes pb on pb.product_detail_id = cte.id and pb.gtin = $3
911
911
  `, [productDetail.id, qty, productBarcode]);
912
912
  if (results.length <= 0)
913
913
  throw new Error(this.ERROR_MSG.FIND.NO_RESULT(productBarcode));
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.proceedExtraProductsResolver = void 0;
4
+ const typeorm_1 = require("typeorm");
4
5
  const auth_base_1 = require("@things-factory/auth-base");
5
6
  const biz_base_1 = require("@things-factory/biz-base");
6
7
  const integration_base_1 = require("@things-factory/integration-base");
@@ -42,6 +43,83 @@ exports.proceedExtraProductsResolver = {
42
43
  type: constants_1.WORKSHEET_TYPE.UNLOADING
43
44
  }
44
45
  });
46
+ const targetProdCnt = arrivalNotice.orderProducts.filter((op) => op.status === sales_base_1.ORDER_PRODUCT_STATUS.ADDED || op.status === sales_base_1.ORDER_PRODUCT_STATUS.EDITED).length;
47
+ const storedOrderProducts = arrivalNotice.orderProducts.filter((op) => op.status !== sales_base_1.ORDER_PRODUCT_STATUS.TERMINATED);
48
+ if (approvedProducts.length + rejectedProducts.length != targetProdCnt)
49
+ throw new Error(`Invalid numbers of extra products`);
50
+ // Validation: Prevent deleting all orders
51
+ let potentialDeleteCount = 0;
52
+ if (approvedProducts === null || approvedProducts === void 0 ? void 0 : approvedProducts.length) {
53
+ approvedProducts.forEach((approvedProd) => {
54
+ var _a, _b;
55
+ const selectedOrderProduct = storedOrderProducts.find((op) => op.id === approvedProd.id);
56
+ if (selectedOrderProduct) {
57
+ const packQty = (_a = selectedOrderProduct.adjustedPackQty) !== null && _a !== void 0 ? _a : selectedOrderProduct.packQty;
58
+ const palletQty = (_b = selectedOrderProduct.adjustedPalletQty) !== null && _b !== void 0 ? _b : selectedOrderProduct.palletQty;
59
+ // Condition: BOTH packQty AND palletQty must be 0 (or null/undefined)
60
+ if ((packQty === 0 || packQty === null || packQty === undefined) &&
61
+ (palletQty === 0 || palletQty === null || palletQty === undefined)) {
62
+ potentialDeleteCount++;
63
+ }
64
+ }
65
+ });
66
+ }
67
+ if (rejectedProducts === null || rejectedProducts === void 0 ? void 0 : rejectedProducts.length) {
68
+ rejectedProducts.forEach((rejectedProd) => {
69
+ if (rejectedProd.status === sales_base_1.ORDER_PRODUCT_STATUS.ADDED) {
70
+ potentialDeleteCount++;
71
+ }
72
+ });
73
+ }
74
+ if (potentialDeleteCount === storedOrderProducts.length) {
75
+ // 1. Cancel Arrival Notice
76
+ arrivalNotice.status = sales_base_1.ORDER_STATUS.CANCELLED;
77
+ arrivalNotice.updater = user;
78
+ await tx.getRepository(sales_base_1.ArrivalNotice).save(arrivalNotice);
79
+ // 2. Cancel Worksheet
80
+ if (worksheet) {
81
+ worksheet.status = constants_1.WORKSHEET_STATUS.CANCELLED;
82
+ worksheet.updater = user;
83
+ await tx.getRepository(entities_1.Worksheet).save(worksheet);
84
+ // 3. Cancel Worksheet Details
85
+ const worksheetDetails = await tx.getRepository(entities_1.WorksheetDetail).find({
86
+ where: {
87
+ worksheet: worksheet,
88
+ type: constants_1.WORKSHEET_TYPE.UNLOADING
89
+ }
90
+ });
91
+ if (worksheetDetails === null || worksheetDetails === void 0 ? void 0 : worksheetDetails.length) {
92
+ await tx.getRepository(entities_1.WorksheetDetail).save(worksheetDetails.map(wsd => {
93
+ wsd.status = constants_1.WORKSHEET_STATUS.CANCELLED;
94
+ wsd.updater = user;
95
+ return wsd;
96
+ }));
97
+ }
98
+ }
99
+ // 4. Terminate Order Products
100
+ if (storedOrderProducts === null || storedOrderProducts === void 0 ? void 0 : storedOrderProducts.length) {
101
+ await tx.getRepository(sales_base_1.OrderProduct).save(storedOrderProducts.map(op => {
102
+ op.status = sales_base_1.ORDER_PRODUCT_STATUS.CANCELLED;
103
+ op.adjustedBatchId = null;
104
+ op.adjustedBatchIdRef = null;
105
+ op.adjustedPackingType = null;
106
+ op.adjustedPackQty = null;
107
+ op.adjustedPalletQty = null;
108
+ op.adjustedUom = null;
109
+ op.adjustedUomValue = null;
110
+ op.adjustedTotalUomValue = null;
111
+ op.adjustedUnitPrice = null;
112
+ op.adjustedLocation = null;
113
+ op.adjustedLocationId = null;
114
+ op.adjustedWarehouse = null;
115
+ op.adjustedWarehouseId = null;
116
+ op.adjustedExpDate = null;
117
+ op.updater = user;
118
+ return op;
119
+ }));
120
+ }
121
+ return;
122
+ }
45
123
  if (isDirectInboundEnabled) {
46
124
  arrivalNotice.status = sales_base_1.ORDER_STATUS.PENDING;
47
125
  arrivalNotice.updater = user;
@@ -53,60 +131,93 @@ exports.proceedExtraProductsResolver = {
53
131
  arrivalNotice.updater = user;
54
132
  await tx.getRepository(sales_base_1.ArrivalNotice).save(arrivalNotice);
55
133
  }
56
- const targetProdCnt = arrivalNotice.orderProducts.filter((op) => op.status === sales_base_1.ORDER_PRODUCT_STATUS.ADDED || op.status === sales_base_1.ORDER_PRODUCT_STATUS.EDITED).length;
57
- const storedOrderProducts = arrivalNotice.orderProducts;
58
- if (approvedProducts.length + rejectedProducts.length != targetProdCnt)
59
- throw new Error(`Invalid numbers of extra products`);
134
+ let deleteOrderProducts = [];
60
135
  if (approvedProducts === null || approvedProducts === void 0 ? void 0 : approvedProducts.length) {
61
136
  let updatedOrderProducts = [];
62
137
  const editedApprovedProducts = approvedProducts.filter((approvedProd) => approvedProd.status === sales_base_1.ORDER_PRODUCT_STATUS.EDITED);
63
138
  const addedApprovedProducts = approvedProducts.filter((approvedProd) => approvedProd.status === sales_base_1.ORDER_PRODUCT_STATUS.ADDED);
64
139
  if ((editedApprovedProducts === null || editedApprovedProducts === void 0 ? void 0 : editedApprovedProducts.length) > 0) {
65
140
  await Promise.all(editedApprovedProducts.map(async (editedApprovedProd) => {
141
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
66
142
  const selectedOrderProduct = storedOrderProducts.find((op) => op.id === editedApprovedProd.id);
67
- updatedOrderProducts.push(Object.assign(Object.assign({}, selectedOrderProduct), { batchId: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedBatchId)
68
- ? selectedOrderProduct.adjustedBatchId
69
- : selectedOrderProduct.batchId, batchIdRef: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedBatchIdRef)
70
- ? selectedOrderProduct.adjustedBatchIdRef
71
- : selectedOrderProduct.batchIdRef, packingType: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedPackingType)
72
- ? selectedOrderProduct.adjustedPackingType
73
- : selectedOrderProduct.packingType, packQty: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedPackQty)
74
- ? selectedOrderProduct.adjustedPackQty
75
- : selectedOrderProduct.packQty, uom: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedUom) ? selectedOrderProduct.adjustedUom : selectedOrderProduct.uom, uomValue: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedUomValue)
76
- ? selectedOrderProduct.adjustedUomValue
77
- : selectedOrderProduct.uomValue, totalUomValue: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedTotalUomValue) || (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedTotalUomValue) === ''
78
- ? selectedOrderProduct.adjustedTotalUomValue
79
- : selectedOrderProduct.totalUomValue, palletQty: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedPalletQty)
80
- ? selectedOrderProduct.adjustedPalletQty
81
- : selectedOrderProduct.palletQty, unitPrice: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedUnitPrice)
82
- ? selectedOrderProduct.adjustedUnitPrice
83
- : selectedOrderProduct.unitPrice, location: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedLocationId)
84
- ? selectedOrderProduct.adjustedLocationId
85
- : selectedOrderProduct.location, warehouse: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedWarehouseId)
86
- ? selectedOrderProduct.adjustedWarehouseId
87
- : selectedOrderProduct.warehouse, expDate: (selectedOrderProduct === null || selectedOrderProduct === void 0 ? void 0 : selectedOrderProduct.adjustedExpDate)
88
- ? selectedOrderProduct.adjustedExpDate
89
- : selectedOrderProduct.expDate, status: isDirectInboundEnabled
90
- ? sales_base_1.ORDER_PRODUCT_STATUS.PENDING
91
- : worksheet.status === constants_1.WORKSHEET_STATUS.DEACTIVATED
92
- ? sales_base_1.ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
93
- : sales_base_1.ORDER_PRODUCT_STATUS.UNLOADING, updater: user }));
143
+ if (!selectedOrderProduct) {
144
+ throw new Error(`Order product not found: ${editedApprovedProd.id}`);
145
+ }
146
+ const batchId = (_a = selectedOrderProduct.adjustedBatchId) !== null && _a !== void 0 ? _a : selectedOrderProduct.batchId;
147
+ const batchIdRef = (_b = selectedOrderProduct.adjustedBatchIdRef) !== null && _b !== void 0 ? _b : selectedOrderProduct.batchIdRef;
148
+ const packingType = (_c = selectedOrderProduct.adjustedPackingType) !== null && _c !== void 0 ? _c : selectedOrderProduct.packingType;
149
+ const packQty = (_d = selectedOrderProduct.adjustedPackQty) !== null && _d !== void 0 ? _d : selectedOrderProduct.packQty;
150
+ const uom = (_e = selectedOrderProduct.adjustedUom) !== null && _e !== void 0 ? _e : selectedOrderProduct.uom;
151
+ const uomValue = (_f = selectedOrderProduct.adjustedUomValue) !== null && _f !== void 0 ? _f : selectedOrderProduct.uomValue;
152
+ const totalUomValue = (_g = selectedOrderProduct.adjustedTotalUomValue) !== null && _g !== void 0 ? _g : selectedOrderProduct.totalUomValue;
153
+ const palletQty = (_h = selectedOrderProduct.adjustedPalletQty) !== null && _h !== void 0 ? _h : selectedOrderProduct.palletQty;
154
+ const unitPrice = (_j = selectedOrderProduct.adjustedUnitPrice) !== null && _j !== void 0 ? _j : selectedOrderProduct.unitPrice;
155
+ const location = (_k = selectedOrderProduct.adjustedLocationId) !== null && _k !== void 0 ? _k : selectedOrderProduct.location;
156
+ const warehouse = (_l = selectedOrderProduct.adjustedWarehouseId) !== null && _l !== void 0 ? _l : selectedOrderProduct.warehouse;
157
+ const expDate = (_m = selectedOrderProduct.adjustedExpDate) !== null && _m !== void 0 ? _m : selectedOrderProduct.expDate;
158
+ if ((packQty === 0 || packQty === null || packQty === undefined) &&
159
+ (palletQty === 0 || palletQty === null || palletQty === undefined)) {
160
+ deleteOrderProducts.push(selectedOrderProduct);
161
+ }
162
+ else {
163
+ updatedOrderProducts.push(Object.assign(Object.assign({}, selectedOrderProduct), { batchId,
164
+ batchIdRef,
165
+ packingType,
166
+ packQty,
167
+ uom,
168
+ uomValue,
169
+ totalUomValue,
170
+ palletQty,
171
+ unitPrice,
172
+ location,
173
+ warehouse,
174
+ expDate, status: isDirectInboundEnabled
175
+ ? sales_base_1.ORDER_PRODUCT_STATUS.PENDING
176
+ : worksheet.status === constants_1.WORKSHEET_STATUS.DEACTIVATED
177
+ ? sales_base_1.ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
178
+ : sales_base_1.ORDER_PRODUCT_STATUS.UNLOADING, updater: user }));
179
+ }
94
180
  }));
95
181
  }
96
182
  if ((addedApprovedProducts === null || addedApprovedProducts === void 0 ? void 0 : addedApprovedProducts.length) > 0) {
97
183
  await Promise.all(addedApprovedProducts.map(async (addedApprovedProd) => {
98
184
  const selectedOrderProduct = storedOrderProducts.find((op) => op.id === addedApprovedProd.id);
99
- updatedOrderProducts.push(Object.assign(Object.assign({}, selectedOrderProduct), { batchId: selectedOrderProduct.adjustedBatchId, batchIdRef: selectedOrderProduct.adjustedBatchIdRef, packingType: selectedOrderProduct.adjustedPackingType, packQty: selectedOrderProduct.adjustedPackQty, uom: selectedOrderProduct.adjustedUom, uomValue: selectedOrderProduct.adjustedUomValue, totalUomValue: selectedOrderProduct.adjustedTotalUomValue, palletQty: selectedOrderProduct.adjustedPalletQty, unitPrice: selectedOrderProduct.adjustedUnitPrice, location: selectedOrderProduct.locationId, warehouse: selectedOrderProduct.warehouseId, expDate: selectedOrderProduct.expDate, status: isDirectInboundEnabled
100
- ? sales_base_1.ORDER_PRODUCT_STATUS.PENDING
101
- : worksheet.status === constants_1.WORKSHEET_STATUS.DEACTIVATED
102
- ? sales_base_1.ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
103
- : sales_base_1.ORDER_PRODUCT_STATUS.UNLOADING, updater: user }));
185
+ if (!selectedOrderProduct) {
186
+ throw new Error(`Order product not found: ${addedApprovedProd.id}`);
187
+ }
188
+ const adjustedPackQty = selectedOrderProduct.adjustedPackQty;
189
+ const adjustedPalletQty = selectedOrderProduct.adjustedPalletQty;
190
+ if ((adjustedPackQty === 0 || adjustedPackQty === null || adjustedPackQty === undefined) &&
191
+ (adjustedPalletQty === 0 || adjustedPalletQty === null || adjustedPalletQty === undefined)) {
192
+ deleteOrderProducts.push(selectedOrderProduct);
193
+ }
194
+ else {
195
+ updatedOrderProducts.push(Object.assign(Object.assign({}, selectedOrderProduct), { batchId: selectedOrderProduct.adjustedBatchId, batchIdRef: selectedOrderProduct.adjustedBatchIdRef, packingType: selectedOrderProduct.adjustedPackingType, packQty: selectedOrderProduct.adjustedPackQty, uom: selectedOrderProduct.adjustedUom, uomValue: selectedOrderProduct.adjustedUomValue, totalUomValue: selectedOrderProduct.adjustedTotalUomValue, palletQty: selectedOrderProduct.adjustedPalletQty, unitPrice: selectedOrderProduct.adjustedUnitPrice, location: selectedOrderProduct.locationId, warehouse: selectedOrderProduct.warehouseId, expDate: selectedOrderProduct.expDate, status: isDirectInboundEnabled
196
+ ? sales_base_1.ORDER_PRODUCT_STATUS.PENDING
197
+ : worksheet.status === constants_1.WORKSHEET_STATUS.DEACTIVATED
198
+ ? sales_base_1.ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
199
+ : sales_base_1.ORDER_PRODUCT_STATUS.UNLOADING, updater: user }));
200
+ }
104
201
  }));
105
202
  }
106
203
  debug('approved and updated order product', updatedOrderProducts);
107
- await tx.getRepository(sales_base_1.OrderProduct).save(updatedOrderProducts);
204
+ if (updatedOrderProducts.length) {
205
+ await tx.getRepository(sales_base_1.OrderProduct).save(updatedOrderProducts);
206
+ }
207
+ if (deleteOrderProducts.length) {
208
+ const relatedWorksheetDetails = await tx.getRepository(entities_1.WorksheetDetail).find({
209
+ where: {
210
+ targetProduct: (0, typeorm_1.In)(deleteOrderProducts.map(op => op.id))
211
+ }
212
+ });
213
+ if (relatedWorksheetDetails.length) {
214
+ await tx.getRepository(entities_1.WorksheetDetail).delete(relatedWorksheetDetails.map(wsd => wsd.id));
215
+ }
216
+ await tx.getRepository(sales_base_1.OrderProduct).delete(deleteOrderProducts.map(op => op.id));
217
+ }
108
218
  if (!isDirectInboundEnabled) {
109
- const unloadingWSDs = await Promise.all(addedApprovedProducts.map(async (targetProduct) => {
219
+ const survivingAddedProducts = addedApprovedProducts.filter(added => !deleteOrderProducts.some(deleted => deleted.id === added.id));
220
+ const unloadingWSDs = await Promise.all(survivingAddedProducts.map(async (targetProduct) => {
110
221
  return {
111
222
  domain,
112
223
  bizplace: customerBizplace,
@@ -131,6 +242,9 @@ exports.proceedExtraProductsResolver = {
131
242
  if ((editedRejectedProducts === null || editedRejectedProducts === void 0 ? void 0 : editedRejectedProducts.length) > 0) {
132
243
  editedRejectedProducts = editedRejectedProducts.map((editedRejectProduct) => {
133
244
  const selectedOrderProduct = storedOrderProducts.find((op) => op.id === editedRejectProduct.id);
245
+ if (!selectedOrderProduct) {
246
+ throw new Error(`Order product not found: ${editedRejectProduct.id}`);
247
+ }
134
248
  return Object.assign(Object.assign({}, selectedOrderProduct), { status: isDirectInboundEnabled
135
249
  ? sales_base_1.ORDER_PRODUCT_STATUS.PENDING
136
250
  : worksheet.status === constants_1.WORKSHEET_STATUS.DEACTIVATED
@@ -142,12 +256,24 @@ exports.proceedExtraProductsResolver = {
142
256
  }
143
257
  debug('rejected added order product', addedRejectedProducts);
144
258
  if ((addedRejectedProducts === null || addedRejectedProducts === void 0 ? void 0 : addedRejectedProducts.length) > 0) {
145
- let deleteOrderProducts = [];
259
+ let rejectedDeleteOrderProducts = [];
146
260
  addedRejectedProducts.map(rejectedOp => {
147
261
  const selectedOrderProduct = storedOrderProducts.find((op) => op.id === rejectedOp.id);
148
- deleteOrderProducts.push(selectedOrderProduct);
262
+ if (selectedOrderProduct) {
263
+ rejectedDeleteOrderProducts.push(selectedOrderProduct);
264
+ }
149
265
  });
150
- await tx.getRepository(sales_base_1.OrderProduct).delete(deleteOrderProducts);
266
+ if (rejectedDeleteOrderProducts.length) {
267
+ const relatedWorksheetDetails = await tx.getRepository(entities_1.WorksheetDetail).find({
268
+ where: {
269
+ targetProduct: (0, typeorm_1.In)(rejectedDeleteOrderProducts.map(op => op.id))
270
+ }
271
+ });
272
+ if (relatedWorksheetDetails.length) {
273
+ await tx.getRepository(entities_1.WorksheetDetail).delete(relatedWorksheetDetails.map(wsd => wsd.id));
274
+ }
275
+ await tx.getRepository(sales_base_1.OrderProduct).delete(rejectedDeleteOrderProducts.map(op => op.id));
276
+ }
151
277
  }
152
278
  }
153
279
  (0, integration_base_1.webhookHandler)(arrivalNotice, arrivalNotice.bizplace, integration_base_1.WebhookEventsEnum.ArrivalNoticeUpdated);
@@ -1 +1 @@
1
- {"version":3,"file":"proceed-extra-products.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/proceed-extra-products.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proceed-extra-products.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/worksheet/proceed-extra-products.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/worksheet-base",
3
- "version": "4.3.776",
3
+ "version": "4.3.778",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -36,15 +36,15 @@
36
36
  "@things-factory/integration-sftp": "^4.3.776",
37
37
  "@things-factory/marketplace-base": "^4.3.776",
38
38
  "@things-factory/notification": "^4.3.767",
39
- "@things-factory/sales-base": "^4.3.776",
39
+ "@things-factory/sales-base": "^4.3.778",
40
40
  "@things-factory/setting-base": "^4.3.767",
41
41
  "@things-factory/shell": "^4.3.767",
42
42
  "@things-factory/transport-base": "^4.3.767",
43
- "@things-factory/warehouse-base": "^4.3.776",
43
+ "@things-factory/warehouse-base": "^4.3.778",
44
44
  "@things-factory/worksheet-ui": "^4.3.767",
45
45
  "jspdf": "2.5.1",
46
46
  "puppeteer": "21.0.3",
47
47
  "uuid": "^9.0.0"
48
48
  },
49
- "gitHead": "a2ad3248858837746d6c4f477bce580c604d1991"
49
+ "gitHead": "ea6776f60dc2c0fd0c1d8b87536215ff183a8cef"
50
50
  }
@@ -191,7 +191,6 @@ export class PackingWorksheetController extends VasWorksheetController {
191
191
  where: { id: orderPackageItemId },
192
192
  relations: [
193
193
  'orderProduct',
194
- 'orderProduct.orderInventories',
195
194
  'orderPackage',
196
195
  'orderPackage.bizplace',
197
196
  'orderPackage.bizplace.domain',
@@ -200,7 +199,16 @@ export class PackingWorksheetController extends VasWorksheetController {
200
199
  })
201
200
 
202
201
  const orderProduct: OrderProduct = orderPackageItem.orderProduct
203
- const orderInventories: OrderInventory[] = orderProduct.orderInventories.filter(oi => oi.packedQty != oi.pickedQty)
202
+
203
+ const orderInventories: OrderInventory[] = await this.trxMgr
204
+ .getRepository(OrderInventory)
205
+ .createQueryBuilder('oi')
206
+ .where('oi.order_product_id = :opId', { opId: orderProduct.id })
207
+ .andWhere('oi.release_good_id = :rgId', { rgId: orderPackageItem.orderPackage.releaseGood.id })
208
+ .andWhere('oi.packed_qty <> oi.picked_qty')
209
+ .orderBy('oi.created_at')
210
+ .addOrderBy('oi.name')
211
+ .getMany()
204
212
 
205
213
  let remainingPackQty: number = packedQty
206
214
  let qtyToPack: number = 0
@@ -354,24 +362,25 @@ export class PackingWorksheetController extends VasWorksheetController {
354
362
  let orderInventory: OrderInventory = await this.trxMgr
355
363
  .getRepository(OrderInventory)
356
364
  .createQueryBuilder('oi')
357
- .innerJoinAndSelect('oi.product', 'prd')
358
- .innerJoinAndSelect('oi.productDetail', 'pd')
359
- .innerJoinAndSelect('oi.inventory', 'inv')
360
- .innerJoinAndSelect('oi.orderProduct', 'op')
361
- .where('oi.order_product_id = :id', { id: orderProduct.id })
365
+ .where('oi.release_good_id = :rgId', { rgId: releaseGood.id })
366
+ .andWhere('oi.order_product_id = :id', { id: orderProduct.id })
362
367
  .andWhere('oi.product_detail_id = :productDetailId', { productDetailId: orderPackageItem.productDetail.id })
363
368
  .andWhere('oi.packed_qty <> oi.picked_qty')
364
369
  .orderBy('oi.created_at')
365
370
  .addOrderBy('oi.name')
366
371
  .getOne()
367
372
 
373
+ if (orderInventory) {
374
+ orderInventory.inventory = { id: orderInventory.inventoryId } as Inventory
375
+ }
376
+
368
377
  // Validation: PackQty cannot be more than ReleaseQty
369
378
  if (orderPackageItem !== null && orderInventory == null) {
370
379
  throw new Error(this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('packing', `unable to find suitable item`))
371
380
  }
372
381
 
373
- const product: Product = orderInventory.product
374
- const productDetail: ProductDetail = orderInventory.productDetail
382
+ const product: Product = orderPackageItem.productDetail.product
383
+ const productDetail: ProductDetail = orderPackageItem.productDetail
375
384
  const inventory: Inventory = orderInventory.inventory
376
385
  const releaseQty: number = orderInventory.releaseQty
377
386
 
@@ -516,6 +525,7 @@ export class PackingWorksheetController extends VasWorksheetController {
516
525
  INNER JOIN (
517
526
  SELECT oi.order_product_id, SUM(oi.packed_qty) AS sum_pack_qty
518
527
  FROM order_inventories oi
528
+ WHERE oi.release_good_id = $2
519
529
  GROUP BY oi.order_product_id
520
530
  ) src ON src.order_product_id = opi.order_product_id
521
531
  where opi.status = 'PROCESSING'
@@ -525,7 +535,7 @@ export class PackingWorksheetController extends VasWorksheetController {
525
535
  ) src where src.id = tgt.id
526
536
  returning *;
527
537
  `,
528
- [updateOrderPackageItem.id]
538
+ [orderPackageItem.orderPackageId, releaseGood.id]
529
539
  )
530
540
  )[0]
531
541
 
@@ -1181,22 +1181,22 @@ export class WorksheetController {
1181
1181
  WITH RECURSIVE cte as (
1182
1182
  select * from (
1183
1183
  select pd2.product_id as "productId", pd2.id, pd2.packing_size as "packingSize",
1184
- pd2.packing_type as "packingType", pd2.uom as "uom", (pd2.uom_value * $2::float) as "uomValue", $2::float as "qty", pb.gtin
1185
- from product_details pd
1184
+ pd2.packing_type as "packingType", pd2.uom as "uom", (pd2.uom_value * $2::float) as "uomValue", $2::float as "qty"
1185
+ from product_details pd
1186
1186
  inner join product_details pd2 on pd.product_id = pd2.product_id and pd.packing_type = pd2.packing_type and pd.packing_size = pd2.packing_size and pd.uom = pd2.uom
1187
- inner join product_barcodes pb on pb.product_detail_id = pd2.id
1188
1187
  where pd.id = $1
1189
1188
  ) as dt
1190
1189
  union all
1191
1190
  select pd.product_id as "productId", pd.id, pd.packing_size as "packingSize",
1192
1191
  pd.packing_type as "packingType", pd.uom,
1193
- dt1.qty * pd.uom_value as "uomValue", dt1.qty * pd.packing_size as "qty", pb.gtin
1192
+ dt1.qty * pd.uom_value as "uomValue", dt1.qty * pd.packing_size as "qty"
1194
1193
  from product_details pd
1195
- inner join product_barcodes pb on pb.product_detail_id = pd.id
1196
- inner join cte dt1 on dt1.id = pd.child_product_detail_id
1194
+ inner join cte dt1 on dt1.id = pd.child_product_detail_id
1197
1195
  where pd.deleted_at is null
1198
1196
  )
1199
- select * from cte where gtin = $3
1197
+ select cte.*, pb.gtin
1198
+ from cte
1199
+ inner join product_barcodes pb on pb.product_detail_id = cte.id and pb.gtin = $3
1200
1200
  `,
1201
1201
  [productDetail.id, qty, productBarcode]
1202
1202
  )
@@ -1,4 +1,4 @@
1
- import { EntityManager } from 'typeorm'
1
+ import { EntityManager, In } from 'typeorm'
2
2
 
3
3
  import { Role, User } from '@things-factory/auth-base'
4
4
  import { Bizplace } from '@things-factory/biz-base'
@@ -55,6 +55,108 @@ export const proceedExtraProductsResolver = {
55
55
  }
56
56
  })
57
57
 
58
+ const targetProdCnt: number = arrivalNotice.orderProducts.filter(
59
+ (op: OrderProduct) => op.status === ORDER_PRODUCT_STATUS.ADDED || op.status === ORDER_PRODUCT_STATUS.EDITED
60
+ ).length
61
+
62
+ const storedOrderProducts: OrderProduct[] = arrivalNotice.orderProducts.filter(
63
+ (op: OrderProduct) => op.status !== ORDER_PRODUCT_STATUS.TERMINATED
64
+ )
65
+
66
+ if (approvedProducts.length + rejectedProducts.length != targetProdCnt)
67
+ throw new Error(`Invalid numbers of extra products`)
68
+
69
+ // Validation: Prevent deleting all orders
70
+ let potentialDeleteCount = 0
71
+
72
+ if (approvedProducts?.length) {
73
+ approvedProducts.forEach((approvedProd: OrderProduct) => {
74
+ const selectedOrderProduct: OrderProduct = storedOrderProducts.find(
75
+ (op: OrderProduct) => op.id === approvedProd.id
76
+ )
77
+
78
+ if (selectedOrderProduct) {
79
+ const packQty = selectedOrderProduct.adjustedPackQty ?? selectedOrderProduct.packQty
80
+ const palletQty = selectedOrderProduct.adjustedPalletQty ?? selectedOrderProduct.palletQty
81
+
82
+ // Condition: BOTH packQty AND palletQty must be 0 (or null/undefined)
83
+ if (
84
+ (packQty === 0 || packQty === null || packQty === undefined) &&
85
+ (palletQty === 0 || palletQty === null || palletQty === undefined)
86
+ ) {
87
+ potentialDeleteCount++
88
+ }
89
+ }
90
+ })
91
+ }
92
+
93
+ if (rejectedProducts?.length) {
94
+ rejectedProducts.forEach((rejectedProd: OrderProduct) => {
95
+ if (rejectedProd.status === ORDER_PRODUCT_STATUS.ADDED) {
96
+ potentialDeleteCount++
97
+ }
98
+ })
99
+ }
100
+
101
+ if (potentialDeleteCount === storedOrderProducts.length) {
102
+ // 1. Cancel Arrival Notice
103
+ arrivalNotice.status = ORDER_STATUS.CANCELLED
104
+ arrivalNotice.updater = user
105
+ await tx.getRepository(ArrivalNotice).save(arrivalNotice)
106
+
107
+ // 2. Cancel Worksheet
108
+ if (worksheet) {
109
+ worksheet.status = WORKSHEET_STATUS.CANCELLED
110
+ worksheet.updater = user
111
+ await tx.getRepository(Worksheet).save(worksheet)
112
+
113
+ // 3. Cancel Worksheet Details
114
+ const worksheetDetails = await tx.getRepository(WorksheetDetail).find({
115
+ where: {
116
+ worksheet: worksheet,
117
+ type: WORKSHEET_TYPE.UNLOADING
118
+ }
119
+ })
120
+
121
+ if (worksheetDetails?.length) {
122
+ await tx.getRepository(WorksheetDetail).save(
123
+ worksheetDetails.map(wsd => {
124
+ wsd.status = WORKSHEET_STATUS.CANCELLED
125
+ wsd.updater = user
126
+ return wsd
127
+ })
128
+ )
129
+ }
130
+ }
131
+
132
+ // 4. Terminate Order Products
133
+ if (storedOrderProducts?.length) {
134
+ await tx.getRepository(OrderProduct).save(
135
+ storedOrderProducts.map(op => {
136
+ op.status = ORDER_PRODUCT_STATUS.CANCELLED
137
+ op.adjustedBatchId = null
138
+ op.adjustedBatchIdRef = null
139
+ op.adjustedPackingType = null
140
+ op.adjustedPackQty = null
141
+ op.adjustedPalletQty = null
142
+ op.adjustedUom = null
143
+ op.adjustedUomValue = null
144
+ op.adjustedTotalUomValue = null
145
+ op.adjustedUnitPrice = null
146
+ op.adjustedLocation = null
147
+ op.adjustedLocationId = null
148
+ op.adjustedWarehouse = null
149
+ op.adjustedWarehouseId = null
150
+ op.adjustedExpDate = null
151
+ op.updater = user
152
+ return op
153
+ })
154
+ )
155
+ }
156
+
157
+ return
158
+ }
159
+
58
160
  if (isDirectInboundEnabled) {
59
161
  arrivalNotice.status = ORDER_STATUS.PENDING
60
162
  arrivalNotice.updater = user
@@ -66,14 +168,7 @@ export const proceedExtraProductsResolver = {
66
168
  await tx.getRepository(ArrivalNotice).save(arrivalNotice)
67
169
  }
68
170
 
69
- const targetProdCnt: number = arrivalNotice.orderProducts.filter(
70
- (op: OrderProduct) => op.status === ORDER_PRODUCT_STATUS.ADDED || op.status === ORDER_PRODUCT_STATUS.EDITED
71
- ).length
72
-
73
- const storedOrderProducts: OrderProduct[] = arrivalNotice.orderProducts
74
-
75
- if (approvedProducts.length + rejectedProducts.length != targetProdCnt)
76
- throw new Error(`Invalid numbers of extra products`)
171
+ let deleteOrderProducts: OrderProduct[] = []
77
172
 
78
173
  if (approvedProducts?.length) {
79
174
  let updatedOrderProducts: OrderProduct[] = []
@@ -91,50 +186,51 @@ export const proceedExtraProductsResolver = {
91
186
  (op: OrderProduct) => op.id === editedApprovedProd.id
92
187
  )
93
188
 
94
- updatedOrderProducts.push({
95
- ...selectedOrderProduct,
96
- batchId: selectedOrderProduct?.adjustedBatchId
97
- ? selectedOrderProduct.adjustedBatchId
98
- : selectedOrderProduct.batchId,
99
- batchIdRef: selectedOrderProduct?.adjustedBatchIdRef
100
- ? selectedOrderProduct.adjustedBatchIdRef
101
- : selectedOrderProduct.batchIdRef,
102
- packingType: selectedOrderProduct?.adjustedPackingType
103
- ? selectedOrderProduct.adjustedPackingType
104
- : selectedOrderProduct.packingType,
105
- packQty: selectedOrderProduct?.adjustedPackQty
106
- ? selectedOrderProduct.adjustedPackQty
107
- : selectedOrderProduct.packQty,
108
- uom: selectedOrderProduct?.adjustedUom ? selectedOrderProduct.adjustedUom : selectedOrderProduct.uom,
109
- uomValue: selectedOrderProduct?.adjustedUomValue
110
- ? selectedOrderProduct.adjustedUomValue
111
- : selectedOrderProduct.uomValue,
112
- totalUomValue:
113
- selectedOrderProduct?.adjustedTotalUomValue || selectedOrderProduct?.adjustedTotalUomValue === ''
114
- ? selectedOrderProduct.adjustedTotalUomValue
115
- : selectedOrderProduct.totalUomValue,
116
- palletQty: selectedOrderProduct?.adjustedPalletQty
117
- ? selectedOrderProduct.adjustedPalletQty
118
- : selectedOrderProduct.palletQty,
119
- unitPrice: selectedOrderProduct?.adjustedUnitPrice
120
- ? selectedOrderProduct.adjustedUnitPrice
121
- : selectedOrderProduct.unitPrice,
122
- location: selectedOrderProduct?.adjustedLocationId
123
- ? selectedOrderProduct.adjustedLocationId
124
- : selectedOrderProduct.location,
125
- warehouse: selectedOrderProduct?.adjustedWarehouseId
126
- ? selectedOrderProduct.adjustedWarehouseId
127
- : selectedOrderProduct.warehouse,
128
- expDate: selectedOrderProduct?.adjustedExpDate
129
- ? selectedOrderProduct.adjustedExpDate
130
- : selectedOrderProduct.expDate,
131
- status: isDirectInboundEnabled
132
- ? ORDER_PRODUCT_STATUS.PENDING
133
- : worksheet.status === WORKSHEET_STATUS.DEACTIVATED
134
- ? ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
135
- : ORDER_PRODUCT_STATUS.UNLOADING,
136
- updater: user
137
- })
189
+ if (!selectedOrderProduct) {
190
+ throw new Error(`Order product not found: ${editedApprovedProd.id}`)
191
+ }
192
+
193
+ const batchId = selectedOrderProduct.adjustedBatchId ?? selectedOrderProduct.batchId
194
+ const batchIdRef = selectedOrderProduct.adjustedBatchIdRef ?? selectedOrderProduct.batchIdRef
195
+ const packingType = selectedOrderProduct.adjustedPackingType ?? selectedOrderProduct.packingType
196
+ const packQty = selectedOrderProduct.adjustedPackQty ?? selectedOrderProduct.packQty
197
+ const uom = selectedOrderProduct.adjustedUom ?? selectedOrderProduct.uom
198
+ const uomValue = selectedOrderProduct.adjustedUomValue ?? selectedOrderProduct.uomValue
199
+ const totalUomValue = selectedOrderProduct.adjustedTotalUomValue ?? selectedOrderProduct.totalUomValue
200
+ const palletQty = selectedOrderProduct.adjustedPalletQty ?? selectedOrderProduct.palletQty
201
+ const unitPrice = selectedOrderProduct.adjustedUnitPrice ?? selectedOrderProduct.unitPrice
202
+ const location = selectedOrderProduct.adjustedLocationId ?? selectedOrderProduct.location
203
+ const warehouse = selectedOrderProduct.adjustedWarehouseId ?? selectedOrderProduct.warehouse
204
+ const expDate = selectedOrderProduct.adjustedExpDate ?? selectedOrderProduct.expDate
205
+
206
+ if (
207
+ (packQty === 0 || packQty === null || packQty === undefined) &&
208
+ (palletQty === 0 || palletQty === null || palletQty === undefined)
209
+ ) {
210
+ deleteOrderProducts.push(selectedOrderProduct)
211
+ } else {
212
+ updatedOrderProducts.push({
213
+ ...selectedOrderProduct,
214
+ batchId,
215
+ batchIdRef,
216
+ packingType,
217
+ packQty,
218
+ uom,
219
+ uomValue,
220
+ totalUomValue,
221
+ palletQty,
222
+ unitPrice,
223
+ location,
224
+ warehouse,
225
+ expDate,
226
+ status: isDirectInboundEnabled
227
+ ? ORDER_PRODUCT_STATUS.PENDING
228
+ : worksheet.status === WORKSHEET_STATUS.DEACTIVATED
229
+ ? ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
230
+ : ORDER_PRODUCT_STATUS.UNLOADING,
231
+ updater: user
232
+ })
233
+ }
138
234
  })
139
235
  )
140
236
  }
@@ -146,37 +242,71 @@ export const proceedExtraProductsResolver = {
146
242
  (op: OrderProduct) => op.id === addedApprovedProd.id
147
243
  )
148
244
 
149
- updatedOrderProducts.push({
150
- ...selectedOrderProduct,
151
- batchId: selectedOrderProduct.adjustedBatchId,
152
- batchIdRef: selectedOrderProduct.adjustedBatchIdRef,
153
- packingType: selectedOrderProduct.adjustedPackingType,
154
- packQty: selectedOrderProduct.adjustedPackQty,
155
- uom: selectedOrderProduct.adjustedUom,
156
- uomValue: selectedOrderProduct.adjustedUomValue,
157
- totalUomValue: selectedOrderProduct.adjustedTotalUomValue,
158
- palletQty: selectedOrderProduct.adjustedPalletQty,
159
- unitPrice: selectedOrderProduct.adjustedUnitPrice,
160
- location: selectedOrderProduct.locationId,
161
- warehouse: selectedOrderProduct.warehouseId,
162
- expDate: selectedOrderProduct.expDate,
163
- status: isDirectInboundEnabled
164
- ? ORDER_PRODUCT_STATUS.PENDING
165
- : worksheet.status === WORKSHEET_STATUS.DEACTIVATED
166
- ? ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
167
- : ORDER_PRODUCT_STATUS.UNLOADING,
168
- updater: user
169
- })
245
+ if (!selectedOrderProduct) {
246
+ throw new Error(`Order product not found: ${addedApprovedProd.id}`)
247
+ }
248
+
249
+ const adjustedPackQty = selectedOrderProduct.adjustedPackQty
250
+ const adjustedPalletQty = selectedOrderProduct.adjustedPalletQty
251
+
252
+ if (
253
+ (adjustedPackQty === 0 || adjustedPackQty === null || adjustedPackQty === undefined) &&
254
+ (adjustedPalletQty === 0 || adjustedPalletQty === null || adjustedPalletQty === undefined)
255
+ ) {
256
+ deleteOrderProducts.push(selectedOrderProduct)
257
+ } else {
258
+ updatedOrderProducts.push({
259
+ ...selectedOrderProduct,
260
+ batchId: selectedOrderProduct.adjustedBatchId,
261
+ batchIdRef: selectedOrderProduct.adjustedBatchIdRef,
262
+ packingType: selectedOrderProduct.adjustedPackingType,
263
+ packQty: selectedOrderProduct.adjustedPackQty,
264
+ uom: selectedOrderProduct.adjustedUom,
265
+ uomValue: selectedOrderProduct.adjustedUomValue,
266
+ totalUomValue: selectedOrderProduct.adjustedTotalUomValue,
267
+ palletQty: selectedOrderProduct.adjustedPalletQty,
268
+ unitPrice: selectedOrderProduct.adjustedUnitPrice,
269
+ location: selectedOrderProduct.locationId,
270
+ warehouse: selectedOrderProduct.warehouseId,
271
+ expDate: selectedOrderProduct.expDate,
272
+ status: isDirectInboundEnabled
273
+ ? ORDER_PRODUCT_STATUS.PENDING
274
+ : worksheet.status === WORKSHEET_STATUS.DEACTIVATED
275
+ ? ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
276
+ : ORDER_PRODUCT_STATUS.UNLOADING,
277
+ updater: user
278
+ })
279
+ }
170
280
  })
171
281
  )
172
282
  }
173
283
 
174
284
  debug('approved and updated order product', updatedOrderProducts)
175
- await tx.getRepository(OrderProduct).save(updatedOrderProducts)
285
+ if (updatedOrderProducts.length) {
286
+ await tx.getRepository(OrderProduct).save(updatedOrderProducts)
287
+ }
288
+
289
+ if (deleteOrderProducts.length) {
290
+ const relatedWorksheetDetails = await tx.getRepository(WorksheetDetail).find({
291
+ where: {
292
+ targetProduct: In(deleteOrderProducts.map(op => op.id))
293
+ }
294
+ })
295
+
296
+ if (relatedWorksheetDetails.length) {
297
+ await tx.getRepository(WorksheetDetail).delete(relatedWorksheetDetails.map(wsd => wsd.id))
298
+ }
299
+
300
+ await tx.getRepository(OrderProduct).delete(deleteOrderProducts.map(op => op.id))
301
+ }
176
302
 
177
303
  if (!isDirectInboundEnabled) {
304
+ const survivingAddedProducts = addedApprovedProducts.filter(
305
+ added => !deleteOrderProducts.some(deleted => deleted.id === added.id)
306
+ )
307
+
178
308
  const unloadingWSDs: any[] = await Promise.all(
179
- addedApprovedProducts.map(async (targetProduct: OrderProduct) => {
309
+ survivingAddedProducts.map(async (targetProduct: OrderProduct) => {
180
310
  return {
181
311
  domain,
182
312
  bizplace: customerBizplace,
@@ -212,13 +342,17 @@ export const proceedExtraProductsResolver = {
212
342
  (op: OrderProduct) => op.id === editedRejectProduct.id
213
343
  )
214
344
 
345
+ if (!selectedOrderProduct) {
346
+ throw new Error(`Order product not found: ${editedRejectProduct.id}`)
347
+ }
348
+
215
349
  return {
216
350
  ...selectedOrderProduct,
217
351
  status: isDirectInboundEnabled
218
352
  ? ORDER_PRODUCT_STATUS.PENDING
219
353
  : worksheet.status === WORKSHEET_STATUS.DEACTIVATED
220
- ? ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
221
- : ORDER_PRODUCT_STATUS.UNLOADING,
354
+ ? ORDER_PRODUCT_STATUS.READY_TO_UNLOAD
355
+ : ORDER_PRODUCT_STATUS.UNLOADING,
222
356
  updater: user
223
357
  }
224
358
  })
@@ -228,15 +362,30 @@ export const proceedExtraProductsResolver = {
228
362
 
229
363
  debug('rejected added order product', addedRejectedProducts)
230
364
  if (addedRejectedProducts?.length > 0) {
231
- let deleteOrderProducts: OrderProduct[] = []
365
+ let rejectedDeleteOrderProducts: OrderProduct[] = []
232
366
  addedRejectedProducts.map(rejectedOp => {
233
- const selectedOrderProduct: OrderProduct[] = storedOrderProducts.find(
367
+ const selectedOrderProduct: OrderProduct = storedOrderProducts.find(
234
368
  (op: OrderProduct) => op.id === rejectedOp.id
235
369
  )
236
- deleteOrderProducts.push(selectedOrderProduct)
370
+
371
+ if (selectedOrderProduct) {
372
+ rejectedDeleteOrderProducts.push(selectedOrderProduct)
373
+ }
237
374
  })
238
375
 
239
- await tx.getRepository(OrderProduct).delete(deleteOrderProducts)
376
+ if (rejectedDeleteOrderProducts.length) {
377
+ const relatedWorksheetDetails = await tx.getRepository(WorksheetDetail).find({
378
+ where: {
379
+ targetProduct: In(rejectedDeleteOrderProducts.map(op => op.id))
380
+ }
381
+ })
382
+
383
+ if (relatedWorksheetDetails.length) {
384
+ await tx.getRepository(WorksheetDetail).delete(relatedWorksheetDetails.map(wsd => wsd.id))
385
+ }
386
+
387
+ await tx.getRepository(OrderProduct).delete(rejectedDeleteOrderProducts.map(op => op.id))
388
+ }
240
389
  }
241
390
  }
242
391