@things-factory/worksheet-base 4.3.289 → 4.3.291

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.
@@ -239,11 +239,14 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
239
239
  try {
240
240
  let packedQty = 1;
241
241
  let orderPackageItem = await this.trxMgr.getRepository(sales_base_1.OrderPackageItem).findOne({
242
- where: { id: orderPackageItemId }, relations: ['orderProduct', 'orderProduct.releaseGood']
242
+ where: { id: orderPackageItemId },
243
+ relations: ['orderProduct', 'orderProduct.releaseGood']
243
244
  });
244
245
  const orderProduct = orderPackageItem.orderProduct;
245
246
  const releaseGood = orderProduct.releaseGood;
246
- let orderInventory = await this.trxMgr.getRepository(sales_base_1.OrderInventory).createQueryBuilder('oi')
247
+ let orderInventory = await this.trxMgr
248
+ .getRepository(sales_base_1.OrderInventory)
249
+ .createQueryBuilder('oi')
247
250
  .innerJoinAndSelect('oi.product', 'prd')
248
251
  .innerJoinAndSelect('oi.productDetail', 'pd')
249
252
  .innerJoinAndSelect('oi.inventory', 'inv')
@@ -263,7 +266,7 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
263
266
  const matchingProduct = await this.getDirectQty(Object.assign(Object.assign({}, productDetail), { product: product }), productBarcode, packedQty);
264
267
  packedQty = matchingProduct.qty;
265
268
  // Validation: PackQty cannot be more than ReleaseQty
266
- if ((packedQty + orderInventory.packedQty) > orderInventory.releaseQty) {
269
+ if (packedQty + orderInventory.packedQty > orderInventory.releaseQty) {
267
270
  throw new Error(this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('packing', `packed quantity can't exceed release qty`));
268
271
  }
269
272
  // Validation: Serial Number scanning for batch picking
@@ -294,13 +297,14 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
294
297
  product: product,
295
298
  productDetail: productDetail,
296
299
  inventory: inventory,
297
- domain: this.domain,
300
+ domain: this.domain
298
301
  };
299
302
  }
300
303
  }
304
+ const updateDateTime = new Date();
301
305
  // set orderInventory Value
302
306
  orderInventory.packedQty = ((orderInventory === null || orderInventory === void 0 ? void 0 : orderInventory.packedQty) || 0) + packedQty;
303
- orderInventory.packedAt = new Date();
307
+ orderInventory.packedAt = updateDateTime;
304
308
  let packedBy = orderInventory.packedBy ? orderInventory.packedBy.split(',') : [];
305
309
  if (!packedBy.find(x => x == this.user.name)) {
306
310
  packedBy.push(this.user.name);
@@ -309,7 +313,7 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
309
313
  // set orderPackageItem Value
310
314
  let updateOrderPackageItem = {
311
315
  packedQty: ((orderPackageItem === null || orderPackageItem === void 0 ? void 0 : orderPackageItem.packedQty) || 0) + packedQty,
312
- updatedAt: new Date(),
316
+ updatedAt: updateDateTime,
313
317
  updater: this.user
314
318
  };
315
319
  if (updateOrderPackageItem.packedQty === orderPackageItem.releaseQty) {
@@ -318,25 +322,29 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
318
322
  if (inventoryItem) {
319
323
  await this.trxMgr.getRepository(warehouse_base_1.InventoryItem).save(inventoryItem);
320
324
  }
321
- orderInventory = (await this.updateOrderTargets([orderInventory]))[0];
322
325
  await this.trxMgr.getRepository(sales_base_1.OrderPackageItem).update({ id: orderPackageItem.id }, updateOrderPackageItem);
323
- updateOrderPackageItem = await this.trxMgr.getRepository(sales_base_1.OrderPackageItem).findOne({ where: { id: orderPackageItem.id } });
324
- await this.trxMgr.getRepository(sales_base_1.OrderPackage).update({ id: orderPackageItem.orderPackageId }, { updatedAt: new Date(), updater: this.user });
326
+ updateOrderPackageItem = await this.trxMgr
327
+ .getRepository(sales_base_1.OrderPackageItem)
328
+ .findOne({ where: { id: orderPackageItem.id } });
329
+ await this.trxMgr
330
+ .getRepository(sales_base_1.OrderPackage)
331
+ .update({ id: orderPackageItem.orderPackageId }, { updatedAt: updateDateTime, updater: this.user });
325
332
  if (orderInventory.packedQty === releaseQty) {
326
333
  orderInventory.status = sales_base_1.ORDER_INVENTORY_STATUS.PACKED;
327
334
  await this.transactionInventory(inventory, releaseGood, 0, 0, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.PACKING);
328
335
  await this.trxMgr.getRepository(entities_1.WorksheetDetail).update({ targetInventory: { id: orderInventory.id }, type: 'PACKING' }, {
329
336
  status: constants_1.WORKSHEET_STATUS.DONE,
330
337
  updater: this.user,
331
- updatedAt: new Date()
338
+ updatedAt: updateDateTime
332
339
  });
333
340
  //// update related inventoryItems related with the releaseOrder
334
341
  await this.trxMgr.getRepository(warehouse_base_1.InventoryItem).update({ outboundOrderId: releaseGood.id }, {
335
342
  status: warehouse_base_1.INVENTORY_STATUS.PACKED,
336
343
  updater: this.user,
337
- updatedAt: new Date()
344
+ updatedAt: updateDateTime
338
345
  });
339
346
  }
347
+ orderInventory = (await this.updateOrderTargets([orderInventory]))[0];
340
348
  return {
341
349
  worksheetDetailInfos: [
342
350
  {
@@ -356,7 +364,9 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
356
364
  let orderPackage = await this.trxMgr
357
365
  .getRepository(sales_base_1.OrderPackage)
358
366
  .findOne({ where: { id: orderPackageId } });
359
- await this.trxMgr.getRepository(sales_base_1.OrderPackage).update({ id: orderPackage.id }, { status: sales_base_1.ORDER_STATUS.DONE, updater: this.user, updatedAt: new Date() });
367
+ await this.trxMgr
368
+ .getRepository(sales_base_1.OrderPackage)
369
+ .update({ id: orderPackage.id }, { status: sales_base_1.ORDER_STATUS.DONE, updater: this.user, updatedAt: new Date() });
360
370
  let releaseGood = await this.findRefOrder(sales_base_1.ReleaseGood, {
361
371
  domain: this.domain,
362
372
  name: releaseGoodNo,
@@ -367,9 +377,13 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
367
377
  'worksheetDetails.targetInventory'
368
378
  ]);
369
379
  this.checkRecordValidity(worksheet, { status: constants_1.WORKSHEET_STATUS.EXECUTING });
370
- let orderPackages = await this.trxMgr.getRepository(sales_base_1.OrderPackage).find({ where: { releaseGood, domain: this.domain, bizplace: releaseGood.bizplace } });
380
+ let orderPackages = await this.trxMgr
381
+ .getRepository(sales_base_1.OrderPackage)
382
+ .find({ where: { releaseGood, domain: this.domain, bizplace: releaseGood.bizplace } });
371
383
  if (orderPackages.every(op => op.status == sales_base_1.ORDER_STATUS.DONE)) {
372
- let inventoryItems = await this.trxMgr.getRepository(warehouse_base_1.InventoryItem).find({ where: { outboundOrderId: releaseGood.id } });
384
+ let inventoryItems = await this.trxMgr
385
+ .getRepository(warehouse_base_1.InventoryItem)
386
+ .find({ where: { outboundOrderId: releaseGood.id } });
373
387
  if (inventoryItems.length > 0) {
374
388
  inventoryItems.forEach((itm) => {
375
389
  itm.status = warehouse_base_1.INVENTORY_STATUS.TERMINATED;
@@ -456,7 +470,12 @@ class PackingWorksheetController extends vas_worksheet_controller_1.VasWorksheet
456
470
  let worksheets = await Promise.all(releaseGoods.map(async (releaseGood) => {
457
471
  try {
458
472
  const existingPackingWorksheet = await this.trxMgr.getRepository(entities_1.Worksheet).findOne({
459
- where: { domain: this.domain, releaseGood, type: constants_1.WORKSHEET_TYPE.PACKING, status: constants_1.WORKSHEET_STATUS.DEACTIVATED }
473
+ where: {
474
+ domain: this.domain,
475
+ releaseGood,
476
+ type: constants_1.WORKSHEET_TYPE.PACKING,
477
+ status: constants_1.WORKSHEET_STATUS.DEACTIVATED
478
+ }
460
479
  });
461
480
  if (existingPackingWorksheet)
462
481
  throw new Error('There is existing packing worksheet that has been generated');
@@ -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":"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"}
@@ -509,6 +509,7 @@ class VasWorksheetController extends worksheet_controller_1.WorksheetController
509
509
  [sales_base_1.ORDER_TYPES.RELEASE_OF_GOODS]: sales_base_1.ReleaseGood,
510
510
  [sales_base_1.ORDER_TYPES.VAS_ORDER]: sales_base_1.VasOrder
511
511
  };
512
+ let saveOrderInventory = [];
512
513
  let refOrder = await this.findRefOrder(ENTITY_MAP[orderType], {
513
514
  domain: this.domain,
514
515
  name: orderNo
@@ -656,7 +657,6 @@ class VasWorksheetController extends worksheet_controller_1.WorksheetController
656
657
  let orderInventoryOrderVas = await qbOrderInventories.getMany();
657
658
  let updateOrderInventory = [];
658
659
  let orderInventory = {};
659
- let saveOrderInventory = [];
660
660
  // for saving oi
661
661
  let newTargetInventory = new sales_base_1.OrderInventory();
662
662
  let newOi;
@@ -671,7 +671,7 @@ class VasWorksheetController extends worksheet_controller_1.WorksheetController
671
671
  });
672
672
  let qtyVas = ov.qty;
673
673
  try {
674
- for (let i = 0; qtyVas !== 0; i++) {
674
+ for (let i = 0; qtyVas > 0; i++) {
675
675
  const oi = orderInventory[i];
676
676
  //update old OI
677
677
  const updatedReleaseQty = qtyVas <= oi.releaseQty ? oi.releaseQty - qtyVas : 0;
@@ -710,6 +710,59 @@ class VasWorksheetController extends worksheet_controller_1.WorksheetController
710
710
  });
711
711
  // complete VAS worksheet
712
712
  worksheet = await this.completeWorksheet(worksheet, orderStatus);
713
+ // generate inventory histories
714
+ let inventoriesForVas = [];
715
+ let orderVasWithoutNewSku = await (0, typeorm_1.getRepository)(sales_base_1.OrderVas).find({
716
+ where: { releaseGood: releaseGood.id, newProduct: null, newProductDetail: null },
717
+ relations: ['product', 'productDetail']
718
+ });
719
+ // invenotries for without newSKu
720
+ if (orderVasWithoutNewSku.length > 0) {
721
+ let qbOrderInventoriesWithoutNewSku = await (0, typeorm_1.getRepository)(sales_base_1.OrderInventory)
722
+ .createQueryBuilder('oi')
723
+ .leftJoinAndSelect('oi.inventory', 'i')
724
+ .leftJoinAndSelect('oi.product', 'p')
725
+ .leftJoinAndSelect('oi.productDetail', 'pd')
726
+ .leftJoin(sales_base_1.OrderVas, 'ov', 'oi.batch_id = ov.batch_id and oi.product_id = ov.product_id and oi.product_detail_id = ov.product_detail_id')
727
+ .innerJoin('oi.releaseGood', 'rg')
728
+ .andWhere('oi.release_good_id = :releaseGood')
729
+ .andWhere('ov.new_product_id isnull')
730
+ .andWhere('ov.new_product_detail_id isnull')
731
+ .setParameters({ releaseGood: releaseGood.id });
732
+ const orderInventoryVasWithoutNewSku = await qbOrderInventoriesWithoutNewSku.getMany();
733
+ orderVasWithoutNewSku.forEach(ov => {
734
+ let orderInventory = orderInventoryVasWithoutNewSku.filter(oi => oi.product.id == ov.product.id &&
735
+ oi.productDetail.id == ov.productDetail.id &&
736
+ oi.releaseQty > 0 &&
737
+ oi.batchId == ov.batchId);
738
+ let qtyVas = ov.qty;
739
+ for (let i = 0; qtyVas > 0; i++) {
740
+ inventoriesForVas.push(orderInventory[i].inventory);
741
+ qtyVas = qtyVas - orderInventory[i].releaseQty;
742
+ }
743
+ });
744
+ }
745
+ // inventories for new SKU
746
+ if (orderVasWithNewSku.length > 0) {
747
+ let qbInventoriesWithNewSku = await (0, typeorm_1.getRepository)(warehouse_base_1.Inventory)
748
+ .createQueryBuilder('i')
749
+ .innerJoin(sales_base_1.OrderInventory, 'oi', 'oi.inventory_id = i.id and oi.product_id = i.product_id and oi.product_detail_id = i.product_detail_id and i.batch_id = oi.batch_id ')
750
+ .innerJoin('i.domain', 'domain')
751
+ .andWhere('i.domain_id = :domain')
752
+ .andWhere('oi.id IN (:...oiId)')
753
+ // .andWhere('inventory.batch_id IN (:...batchId)')
754
+ .setParameters({
755
+ domain: domain.id,
756
+ oiId: saveOrderInventory.map(ov => {
757
+ return ov.id;
758
+ })
759
+ });
760
+ let inventoryVasWithNewSku = await qbInventoriesWithNewSku.getMany();
761
+ inventoriesForVas.push(...inventoryVasWithNewSku);
762
+ }
763
+ for (let i = 0; i < inventoriesForVas.length; i++) {
764
+ await (0, warehouse_base_1.generateInventoryHistory)(inventoriesForVas[i], releaseGood, warehouse_base_1.INVENTORY_TRANSACTION_TYPE.VAS_ORDER, 0, 0, this.user, this.trxMgr);
765
+ }
713
766
  //generate and activate loading worksheet
714
767
  if (releaseGood) {
715
768
  const loadingWSCtrl = new controllers_1.LoadingWorksheetController(tx, domain, user);
@@ -758,7 +811,7 @@ class VasWorksheetController extends worksheet_controller_1.WorksheetController
758
811
  if (_createRecords.length > 0) {
759
812
  for (let i = 0; i < _createRecords.length; i++) {
760
813
  const newRecord = _createRecords[i];
761
- const result = await orderVasRepo.save(Object.assign(Object.assign({}, newRecord), { id: (0, uuid_1.v4)(), domain: domain, creator: user, updater: user }));
814
+ const result = await orderVasRepo.save(Object.assign(Object.assign({}, newRecord), { id: (0, uuid_1.v4)(), name: `${_createRecords[i].product.name} - ${new Date()}`, domain: domain, creator: user, updater: user }));
762
815
  results.push(Object.assign(Object.assign({}, result), { cuFlag: '+' }));
763
816
  // create wds if worksheet is available
764
817
  if (vasWorksheet) {
@@ -773,7 +826,7 @@ class VasWorksheetController extends worksheet_controller_1.WorksheetController
773
826
  for (let ii = 0; ii < newRecord.orderVasItemsPatch.length; ii++) {
774
827
  await orderVasItemRepo.save({
775
828
  orderVas: result.id,
776
- name: `${newRecord.orderVasItemsPatch[ii].vas.name}- ${result.id}`,
829
+ name: `${newRecord.orderVasItemsPatch[ii].vas.name} (${newRecord.orderVasItemsPatch[ii].vas.description})- ${result.id}`,
777
830
  vas: newRecord.orderVasItemsPatch[ii].vas,
778
831
  vasQty: newRecord.orderVasItemsPatch[ii].vasQty,
779
832
  domain: domain,
@@ -792,11 +845,22 @@ class VasWorksheetController extends worksheet_controller_1.WorksheetController
792
845
  });
793
846
  const result = await orderVasRepo.save(Object.assign(Object.assign(Object.assign({}, orderVas), newRecord), { updater: user }));
794
847
  results.push(Object.assign(Object.assign({}, result), { cuFlag: 'M' }));
848
+ for (let ii = 0; ii < newRecord.orderVasItemsPatch.length; ii++) {
849
+ await orderVasItemRepo.update({ id: newRecord.orderVasItemsPatch[ii].id }, {
850
+ orderVas: result.id,
851
+ name: `${newRecord.orderVasItemsPatch[ii].vas.name}- ${result.id}`,
852
+ vas: newRecord.orderVasItemsPatch[ii].vas,
853
+ vasQty: newRecord.orderVasItemsPatch[ii].vasQty,
854
+ domain: domain,
855
+ creator: user,
856
+ createdAt: new Date()
857
+ });
858
+ }
795
859
  }
796
860
  }
797
861
  }
798
862
  // order Vas Item
799
- if (orderVasItemPatch.length > 0) {
863
+ if ((orderVasItemPatch === null || orderVasItemPatch === void 0 ? void 0 : orderVasItemPatch.length) > 0) {
800
864
  const _deleteRecords = orderVasItemPatch.filter((patch) => patch.cuFlag.toUpperCase() === '-');
801
865
  const _createRecords = orderVasItemPatch.filter((patch) => patch.cuFlag.toUpperCase() === '+');
802
866
  const _updateRecords = orderVasItemPatch.filter((patch) => patch.cuFlag.toUpperCase() === 'M');
@@ -1 +1 @@
1
- {"version":3,"file":"vas-worksheet-controller.js","sourceRoot":"","sources":["../../../server/controllers/vas/vas-worksheet-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vas-worksheet-controller.js","sourceRoot":"","sources":["../../../server/controllers/vas/vas-worksheet-controller.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.289",
3
+ "version": "4.3.291",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -27,21 +27,21 @@
27
27
  "@things-factory/biz-base": "^4.3.281",
28
28
  "@things-factory/document-template-base": "^4.3.281",
29
29
  "@things-factory/id-rule-base": "^4.3.281",
30
- "@things-factory/integration-accounting": "^4.3.281",
30
+ "@things-factory/integration-accounting": "^4.3.291",
31
31
  "@things-factory/integration-base": "^4.3.281",
32
32
  "@things-factory/integration-lmd": "^4.3.286",
33
33
  "@things-factory/integration-marketplace": "^4.3.286",
34
34
  "@things-factory/integration-powrup": "^4.3.286",
35
35
  "@things-factory/integration-sellercraft": "^4.3.286",
36
36
  "@things-factory/integration-sftp": "^4.3.281",
37
- "@things-factory/marketplace-base": "^4.3.286",
37
+ "@things-factory/marketplace-base": "^4.3.291",
38
38
  "@things-factory/notification": "^4.3.281",
39
- "@things-factory/sales-base": "^4.3.286",
39
+ "@things-factory/sales-base": "^4.3.291",
40
40
  "@things-factory/setting-base": "^4.3.281",
41
41
  "@things-factory/shell": "^4.3.281",
42
42
  "@things-factory/transport-base": "^4.3.281",
43
- "@things-factory/warehouse-base": "^4.3.286",
43
+ "@things-factory/warehouse-base": "^4.3.291",
44
44
  "uuid": "^9.0.0"
45
45
  },
46
- "gitHead": "401525346cab135983a8a90fd842f61343f72dae"
46
+ "gitHead": "9c051f9164b7068f75f386f3c013c24193c6ca5c"
47
47
  }
@@ -1,10 +1,10 @@
1
- import { Equal, Not, In } from 'typeorm'
1
+ import { Equal, In, Not } from 'typeorm'
2
2
 
3
3
  import { ApplicationType } from '@things-factory/auth-base'
4
4
  import { logger } from '@things-factory/env'
5
5
  import { Powrup } from '@things-factory/integration-powrup'
6
6
  import { Sellercraft, SellercraftStatus } from '@things-factory/integration-sellercraft'
7
- import { Product, ProductBarcode, ProductDetail } from '@things-factory/product-base'
7
+ import { Product, ProductDetail } from '@things-factory/product-base'
8
8
  import {
9
9
  ORDER_INVENTORY_STATUS,
10
10
  ORDER_STATUS,
@@ -12,8 +12,8 @@ import {
12
12
  OrderPackage,
13
13
  OrderPackageItem,
14
14
  OrderProduct,
15
- ReleaseGood,
16
- PowrupController
15
+ PowrupController,
16
+ ReleaseGood
17
17
  } from '@things-factory/sales-base'
18
18
  import {
19
19
  Inventory,
@@ -309,12 +309,15 @@ export class PackingWorksheetController extends VasWorksheetController {
309
309
  try {
310
310
  let packedQty: number = 1
311
311
  let orderPackageItem: OrderPackageItem = await this.trxMgr.getRepository(OrderPackageItem).findOne({
312
- where: { id: orderPackageItemId }, relations: ['orderProduct', 'orderProduct.releaseGood']
312
+ where: { id: orderPackageItemId },
313
+ relations: ['orderProduct', 'orderProduct.releaseGood']
313
314
  })
314
315
  const orderProduct: OrderProduct = orderPackageItem.orderProduct
315
316
  const releaseGood: ReleaseGood = orderProduct.releaseGood
316
317
 
317
- let orderInventory: OrderInventory = await this.trxMgr.getRepository(OrderInventory).createQueryBuilder('oi')
318
+ let orderInventory: OrderInventory = await this.trxMgr
319
+ .getRepository(OrderInventory)
320
+ .createQueryBuilder('oi')
318
321
  .innerJoinAndSelect('oi.product', 'prd')
319
322
  .innerJoinAndSelect('oi.productDetail', 'pd')
320
323
  .innerJoinAndSelect('oi.inventory', 'inv')
@@ -324,7 +327,6 @@ export class PackingWorksheetController extends VasWorksheetController {
324
327
  .addOrderBy('oi.name')
325
328
  .getOne()
326
329
 
327
-
328
330
  // Validation: PackQty cannot be more than ReleaseQty
329
331
  if (orderPackageItem !== null && orderInventory == null) {
330
332
  throw new Error(this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('packing', `unable to find suitable item`))
@@ -346,8 +348,10 @@ export class PackingWorksheetController extends VasWorksheetController {
346
348
  packedQty = matchingProduct.qty
347
349
 
348
350
  // Validation: PackQty cannot be more than ReleaseQty
349
- if ((packedQty + orderInventory.packedQty) > orderInventory.releaseQty) {
350
- throw new Error(this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('packing', `packed quantity can't exceed release qty`))
351
+ if (packedQty + orderInventory.packedQty > orderInventory.releaseQty) {
352
+ throw new Error(
353
+ this.ERROR_MSG.VALIDITY.CANT_PROCEED_STEP_BY('packing', `packed quantity can't exceed release qty`)
354
+ )
351
355
  }
352
356
 
353
357
  // Validation: Serial Number scanning for batch picking
@@ -373,7 +377,7 @@ export class PackingWorksheetController extends VasWorksheetController {
373
377
  inventoryItem = {
374
378
  ...inventoryItem,
375
379
  status: INVENTORY_STATUS.PACKING,
376
- updater: this.user,
380
+ updater: this.user
377
381
  }
378
382
  } else {
379
383
  inventoryItem = {
@@ -385,15 +389,15 @@ export class PackingWorksheetController extends VasWorksheetController {
385
389
  product: product,
386
390
  productDetail: productDetail,
387
391
  inventory: inventory,
388
- domain: this.domain,
392
+ domain: this.domain
389
393
  }
390
-
391
394
  }
392
395
  }
393
396
 
397
+ const updateDateTime = new Date()
394
398
  // set orderInventory Value
395
399
  orderInventory.packedQty = (orderInventory?.packedQty || 0) + packedQty
396
- orderInventory.packedAt = new Date()
400
+ orderInventory.packedAt = updateDateTime
397
401
  let packedBy: string[] = orderInventory.packedBy ? orderInventory.packedBy.split(',') : []
398
402
  if (!packedBy.find(x => x == this.user.name)) {
399
403
  packedBy.push(this.user.name)
@@ -403,7 +407,7 @@ export class PackingWorksheetController extends VasWorksheetController {
403
407
  // set orderPackageItem Value
404
408
  let updateOrderPackageItem: Partial<OrderPackageItem> = {
405
409
  packedQty: (orderPackageItem?.packedQty || 0) + packedQty,
406
- updatedAt: new Date(),
410
+ updatedAt: updateDateTime,
407
411
  updater: this.user
408
412
  }
409
413
  if (updateOrderPackageItem.packedQty === orderPackageItem.releaseQty) {
@@ -413,34 +417,40 @@ export class PackingWorksheetController extends VasWorksheetController {
413
417
  if (inventoryItem) {
414
418
  await this.trxMgr.getRepository(InventoryItem).save(inventoryItem)
415
419
  }
416
- orderInventory = (await this.updateOrderTargets([orderInventory]))[0]
417
420
 
418
421
  await this.trxMgr.getRepository(OrderPackageItem).update({ id: orderPackageItem.id }, updateOrderPackageItem)
419
- updateOrderPackageItem = await this.trxMgr.getRepository(OrderPackageItem).findOne({ where: { id: orderPackageItem.id } })
422
+ updateOrderPackageItem = await this.trxMgr
423
+ .getRepository(OrderPackageItem)
424
+ .findOne({ where: { id: orderPackageItem.id } })
420
425
 
421
- await this.trxMgr.getRepository(OrderPackage).update({ id: orderPackageItem.orderPackageId }, { updatedAt: new Date(), updater: this.user })
426
+ await this.trxMgr
427
+ .getRepository(OrderPackage)
428
+ .update({ id: orderPackageItem.orderPackageId }, { updatedAt: updateDateTime, updater: this.user })
422
429
 
423
430
  if (orderInventory.packedQty === releaseQty) {
424
431
  orderInventory.status = ORDER_INVENTORY_STATUS.PACKED
425
432
  await this.transactionInventory(inventory, releaseGood, 0, 0, INVENTORY_TRANSACTION_TYPE.PACKING)
426
- await this.trxMgr.getRepository(WorksheetDetail).update({ targetInventory: { id: orderInventory.id }, type: 'PACKING' },
433
+ await this.trxMgr.getRepository(WorksheetDetail).update(
434
+ { targetInventory: { id: orderInventory.id }, type: 'PACKING' },
427
435
  {
428
436
  status: WORKSHEET_STATUS.DONE,
429
437
  updater: this.user,
430
- updatedAt: new Date()
438
+ updatedAt: updateDateTime
431
439
  }
432
440
  )
433
441
 
434
442
  //// update related inventoryItems related with the releaseOrder
435
- await this.trxMgr.getRepository(InventoryItem).update({ outboundOrderId: releaseGood.id },
443
+ await this.trxMgr.getRepository(InventoryItem).update(
444
+ { outboundOrderId: releaseGood.id },
436
445
  {
437
446
  status: INVENTORY_STATUS.PACKED,
438
447
  updater: this.user,
439
- updatedAt: new Date()
448
+ updatedAt: updateDateTime
440
449
  }
441
450
  )
442
451
  }
443
452
 
453
+ orderInventory = (await this.updateOrderTargets([orderInventory]))[0]
444
454
 
445
455
  return {
446
456
  worksheetDetailInfos: [
@@ -462,7 +472,9 @@ export class PackingWorksheetController extends VasWorksheetController {
462
472
  .getRepository(OrderPackage)
463
473
  .findOne({ where: { id: orderPackageId } })
464
474
 
465
- await this.trxMgr.getRepository(OrderPackage).update({ id: orderPackage.id }, { status: ORDER_STATUS.DONE, updater: this.user, updatedAt: new Date() })
475
+ await this.trxMgr
476
+ .getRepository(OrderPackage)
477
+ .update({ id: orderPackage.id }, { status: ORDER_STATUS.DONE, updater: this.user, updatedAt: new Date() })
466
478
 
467
479
  let releaseGood: ReleaseGood = await this.findRefOrder(
468
480
  ReleaseGood,
@@ -480,10 +492,14 @@ export class PackingWorksheetController extends VasWorksheetController {
480
492
  ])
481
493
  this.checkRecordValidity(worksheet, { status: WORKSHEET_STATUS.EXECUTING })
482
494
 
483
- let orderPackages: OrderPackage[] = await this.trxMgr.getRepository(OrderPackage).find({ where: { releaseGood, domain: this.domain, bizplace: releaseGood.bizplace } })
495
+ let orderPackages: OrderPackage[] = await this.trxMgr
496
+ .getRepository(OrderPackage)
497
+ .find({ where: { releaseGood, domain: this.domain, bizplace: releaseGood.bizplace } })
484
498
 
485
499
  if (orderPackages.every(op => op.status == ORDER_STATUS.DONE)) {
486
- let inventoryItems: InventoryItem = await this.trxMgr.getRepository(InventoryItem).find({ where: { outboundOrderId: releaseGood.id } })
500
+ let inventoryItems: InventoryItem = await this.trxMgr
501
+ .getRepository(InventoryItem)
502
+ .find({ where: { outboundOrderId: releaseGood.id } })
487
503
 
488
504
  if (inventoryItems.length > 0) {
489
505
  inventoryItems.forEach((itm: InventoryItem) => {
@@ -576,7 +592,6 @@ export class PackingWorksheetController extends VasWorksheetController {
576
592
  await this.updateOrderTargets([targetInventory])
577
593
  }
578
594
 
579
-
580
595
  async generatePackingWorksheetByBulk(releaseGoodNos: string[]): Promise<Worksheet[]> {
581
596
  let releaseGoods: ReleaseGood[] = await this.trxMgr.getRepository(ReleaseGood).find({
582
597
  where: {
@@ -590,7 +605,12 @@ export class PackingWorksheetController extends VasWorksheetController {
590
605
  releaseGoods.map(async releaseGood => {
591
606
  try {
592
607
  const existingPackingWorksheet: Worksheet = await this.trxMgr.getRepository(Worksheet).findOne({
593
- where: { domain: this.domain, releaseGood, type: WORKSHEET_TYPE.PACKING, status: WORKSHEET_STATUS.DEACTIVATED }
608
+ where: {
609
+ domain: this.domain,
610
+ releaseGood,
611
+ type: WORKSHEET_TYPE.PACKING,
612
+ status: WORKSHEET_STATUS.DEACTIVATED
613
+ }
594
614
  })
595
615
  if (existingPackingWorksheet) throw new Error('There is existing packing worksheet that has been generated')
596
616
 
@@ -615,9 +635,10 @@ export class PackingWorksheetController extends VasWorksheetController {
615
635
  await this.updateOrderTargets(orderInventories)
616
636
 
617
637
  return worksheet
618
-
619
638
  } catch (error) {
620
- logger.error(`packing-worksheet-controller[generatePackingWorksheetByBulk]: ${releaseGood.name + ':' + error}`)
639
+ logger.error(
640
+ `packing-worksheet-controller[generatePackingWorksheetByBulk]: ${releaseGood.name + ':' + error}`
641
+ )
621
642
  }
622
643
  })
623
644
  )
@@ -702,6 +702,9 @@ export class VasWorksheetController extends WorksheetController {
702
702
  [ORDER_TYPES.RELEASE_OF_GOODS]: ReleaseGood,
703
703
  [ORDER_TYPES.VAS_ORDER]: VasOrder
704
704
  }
705
+
706
+ let saveOrderInventory: OrderInventory[] = []
707
+
705
708
  let refOrder: ReferenceOrderType = await this.findRefOrder(ENTITY_MAP[orderType], {
706
709
  domain: this.domain,
707
710
  name: orderNo
@@ -895,8 +898,6 @@ export class VasWorksheetController extends WorksheetController {
895
898
 
896
899
  let orderInventory: OrderInventory = {}
897
900
 
898
- let saveOrderInventory: OrderInventory[] = []
899
-
900
901
  // for saving oi
901
902
  let newTargetInventory: OrderInventory = new OrderInventory()
902
903
 
@@ -913,7 +914,7 @@ export class VasWorksheetController extends WorksheetController {
913
914
  let qtyVas: number = ov.qty
914
915
 
915
916
  try {
916
- for (let i = 0; qtyVas !== 0; i++) {
917
+ for (let i = 0; qtyVas > 0; i++) {
917
918
  const oi = orderInventory[i]
918
919
  //update old OI
919
920
  const updatedReleaseQty: number = qtyVas <= oi.releaseQty ? oi.releaseQty - qtyVas : 0
@@ -988,6 +989,88 @@ export class VasWorksheetController extends WorksheetController {
988
989
  // complete VAS worksheet
989
990
  worksheet = await this.completeWorksheet(worksheet, orderStatus)
990
991
 
992
+ // generate inventory histories
993
+
994
+ let inventoriesForVas: Inventory[] = []
995
+
996
+ let orderVasWithoutNewSku: OrderVas[] = await getRepository(OrderVas).find({
997
+ where: { releaseGood: releaseGood.id, newProduct: null, newProductDetail: null },
998
+ relations: ['product', 'productDetail']
999
+ })
1000
+
1001
+ // invenotries for without newSKu
1002
+ if (orderVasWithoutNewSku.length > 0) {
1003
+ let qbOrderInventoriesWithoutNewSku = await getRepository(OrderInventory)
1004
+ .createQueryBuilder('oi')
1005
+ .leftJoinAndSelect('oi.inventory', 'i')
1006
+ .leftJoinAndSelect('oi.product', 'p')
1007
+ .leftJoinAndSelect('oi.productDetail', 'pd')
1008
+ .leftJoin(
1009
+ OrderVas,
1010
+ 'ov',
1011
+ 'oi.batch_id = ov.batch_id and oi.product_id = ov.product_id and oi.product_detail_id = ov.product_detail_id'
1012
+ )
1013
+ .innerJoin('oi.releaseGood', 'rg')
1014
+ .andWhere('oi.release_good_id = :releaseGood')
1015
+ .andWhere('ov.new_product_id isnull')
1016
+ .andWhere('ov.new_product_detail_id isnull')
1017
+ .setParameters({ releaseGood: releaseGood.id })
1018
+
1019
+ const orderInventoryVasWithoutNewSku: OrderInventory[] = await qbOrderInventoriesWithoutNewSku.getMany()
1020
+
1021
+ orderVasWithoutNewSku.forEach(ov => {
1022
+ let orderInventory = orderInventoryVasWithoutNewSku.filter(
1023
+ oi =>
1024
+ oi.product.id == ov.product.id &&
1025
+ oi.productDetail.id == ov.productDetail.id &&
1026
+ oi.releaseQty > 0 &&
1027
+ oi.batchId == ov.batchId
1028
+ )
1029
+ let qtyVas: number = ov.qty
1030
+
1031
+ for (let i = 0; qtyVas > 0; i++) {
1032
+ inventoriesForVas.push(orderInventory[i].inventory)
1033
+ qtyVas = qtyVas - orderInventory[i].releaseQty
1034
+ }
1035
+ })
1036
+ }
1037
+
1038
+ // inventories for new SKU
1039
+ if (orderVasWithNewSku.length > 0) {
1040
+ let qbInventoriesWithNewSku = await getRepository(Inventory)
1041
+ .createQueryBuilder('i')
1042
+ .innerJoin(
1043
+ OrderInventory,
1044
+ 'oi',
1045
+ 'oi.inventory_id = i.id and oi.product_id = i.product_id and oi.product_detail_id = i.product_detail_id and i.batch_id = oi.batch_id '
1046
+ )
1047
+ .innerJoin('i.domain', 'domain')
1048
+ .andWhere('i.domain_id = :domain')
1049
+ .andWhere('oi.id IN (:...oiId)')
1050
+ // .andWhere('inventory.batch_id IN (:...batchId)')
1051
+ .setParameters({
1052
+ domain: domain.id,
1053
+ oiId: saveOrderInventory.map(ov => {
1054
+ return ov.id
1055
+ })
1056
+ })
1057
+
1058
+ let inventoryVasWithNewSku: Inventory[] = await qbInventoriesWithNewSku.getMany()
1059
+
1060
+ inventoriesForVas.push(...inventoryVasWithNewSku)
1061
+ }
1062
+
1063
+ for (let i = 0; i < inventoriesForVas.length; i++) {
1064
+ await generateInventoryHistory(
1065
+ inventoriesForVas[i],
1066
+ releaseGood,
1067
+ INVENTORY_TRANSACTION_TYPE.VAS_ORDER,
1068
+ 0,
1069
+ 0,
1070
+ this.user,
1071
+ this.trxMgr
1072
+ )
1073
+ }
991
1074
  //generate and activate loading worksheet
992
1075
  if (releaseGood) {
993
1076
  const loadingWSCtrl: LoadingWorksheetController = new LoadingWorksheetController(tx, domain, user)
@@ -1057,6 +1140,7 @@ export class VasWorksheetController extends WorksheetController {
1057
1140
  const result = await orderVasRepo.save({
1058
1141
  ...newRecord,
1059
1142
  id: uuidv4(),
1143
+ name: `${_createRecords[i].product.name} - ${new Date()}`,
1060
1144
  domain: domain,
1061
1145
  creator: user,
1062
1146
  updater: user
@@ -1068,8 +1152,7 @@ export class VasWorksheetController extends WorksheetController {
1068
1152
  if (vasWorksheet) {
1069
1153
  const orderVas: OrderVas[] = await getRepository(OrderVas).find({ where: { id: result.id } })
1070
1154
  await this.createWorksheetDetails(vasWorksheet, WORKSHEET_TYPE.VAS, orderVas)
1071
- }
1072
- else if (releaseGood.status === 'READY_TO_PICK' && !vasWorksheet){
1155
+ } else if (releaseGood.status === 'READY_TO_PICK' && !vasWorksheet) {
1073
1156
  const orderVas: OrderVas[] = await getRepository(OrderVas).find({ where: { id: result.id } })
1074
1157
  vasWorksheet = await this.generateWorksheet(
1075
1158
  WORKSHEET_TYPE.VAS,
@@ -1084,7 +1167,7 @@ export class VasWorksheetController extends WorksheetController {
1084
1167
  for (let ii = 0; ii < newRecord.orderVasItemsPatch.length; ii++) {
1085
1168
  await orderVasItemRepo.save({
1086
1169
  orderVas: result.id,
1087
- name: `${newRecord.orderVasItemsPatch[ii].vas.name}- ${result.id}`,
1170
+ name: `${newRecord.orderVasItemsPatch[ii].vas.name} (${newRecord.orderVasItemsPatch[ii].vas.description})- ${result.id}`,
1088
1171
  vas: newRecord.orderVasItemsPatch[ii].vas,
1089
1172
  vasQty: newRecord.orderVasItemsPatch[ii].vasQty,
1090
1173
  domain: domain,
@@ -1110,12 +1193,27 @@ export class VasWorksheetController extends WorksheetController {
1110
1193
  })
1111
1194
 
1112
1195
  results.push({ ...result, cuFlag: 'M' })
1196
+
1197
+ for (let ii = 0; ii < newRecord.orderVasItemsPatch.length; ii++) {
1198
+ await orderVasItemRepo.update(
1199
+ { id: newRecord.orderVasItemsPatch[ii].id },
1200
+ {
1201
+ orderVas: result.id,
1202
+ name: `${newRecord.orderVasItemsPatch[ii].vas.name}- ${result.id}`,
1203
+ vas: newRecord.orderVasItemsPatch[ii].vas,
1204
+ vasQty: newRecord.orderVasItemsPatch[ii].vasQty,
1205
+ domain: domain,
1206
+ creator: user,
1207
+ createdAt: new Date()
1208
+ }
1209
+ )
1210
+ }
1113
1211
  }
1114
1212
  }
1115
1213
  }
1116
1214
 
1117
1215
  // order Vas Item
1118
- if (orderVasItemPatch.length > 0) {
1216
+ if (orderVasItemPatch?.length > 0) {
1119
1217
  const _deleteRecords = orderVasItemPatch.filter((patch: any) => patch.cuFlag.toUpperCase() === '-')
1120
1218
  const _createRecords = orderVasItemPatch.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')
1121
1219
  const _updateRecords = orderVasItemPatch.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')