@things-factory/worksheet-base 4.3.289 → 4.3.290

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.
@@ -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.290",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -36,12 +36,12 @@
36
36
  "@things-factory/integration-sftp": "^4.3.281",
37
37
  "@things-factory/marketplace-base": "^4.3.286",
38
38
  "@things-factory/notification": "^4.3.281",
39
- "@things-factory/sales-base": "^4.3.286",
39
+ "@things-factory/sales-base": "^4.3.290",
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.290",
44
44
  "uuid": "^9.0.0"
45
45
  },
46
- "gitHead": "401525346cab135983a8a90fd842f61343f72dae"
46
+ "gitHead": "345e8a252ebc6b013b2927dca0e9e3bce749f031"
47
47
  }
@@ -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')