@optimiser/common 1.0.305 → 1.0.307

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.
@@ -405,8 +405,8 @@ var GetDateRangeFromOperatorValue = function (operator, fiscalMonth, fiscalFrom)
405
405
  var momentObj = moment_1.default();
406
406
  var getFiscalMonthIndex = moment_1.default.monthsShort().findIndex(function (month) { return month === fiscalMonth; });
407
407
  // GET FISCAL MONTH INDEX
408
- if (operator.includes("Fiscal")) {
409
- // if (operator.toLowerCase().includes("fiscal") || ["Year to Date","year-to-date"].includes(operator)) {
408
+ // if (operator.includes("Fiscal")) {
409
+ if (operator.toLowerCase().includes("fiscal") || ["Year to Date", "year-to-date"].includes(operator)) {
410
410
  if (fiscalFrom === "End") {
411
411
  fiscalMonth = momentObj.clone().month(fiscalMonth).add(1, "months").format('MMM'); // Modify FiscalMonth in FiscalFrom - End
412
412
  }
@@ -659,25 +659,27 @@ var GetDateRangeFromOperatorValue = function (operator, fiscalMonth, fiscalFrom)
659
659
  case "year-to-date":
660
660
  endDate = momentObj.clone().format(requiredDateFormat);
661
661
  // Commented Below Hanisha's Code - Implemented following as per QPC-6370
662
- if (parseInt(momentObj.format('M')) > 3) {
663
- startDate = momentObj.clone().startOf('month').month("Apr").format(requiredDateFormat);
662
+ // if (parseInt(momentObj.format('M')) > 3) {
663
+ // startDate = momentObj.clone().startOf('month').month("Apr").format(requiredDateFormat);
664
+ // } else {
665
+ // startDate = momentObj.clone().subtract(1, "years").startOf('month').month("Apr").format(requiredDateFormat);
666
+ // }
667
+ if (fiscalFrom === "Start") {
668
+ if (getFiscalMonthIndex == 0 || getFiscalMonthIndex && getFiscalMonthIndex <= momentObj.clone().month()) {
669
+ startDate = moment_1.default(startDate, currentDateFormat).clone().month(fiscalMonth).startOf('month').format(requiredDateFormat);
670
+ }
671
+ else {
672
+ startDate = moment_1.default(startDate, currentDateFormat).clone().month(fiscalMonth).subtract(12, "months").startOf('month').format(requiredDateFormat);
673
+ }
664
674
  }
665
675
  else {
666
- startDate = momentObj.clone().subtract(1, "years").startOf('month').month("Apr").format(requiredDateFormat);
676
+ if (getFiscalMonthIndex == 0 || getFiscalMonthIndex && getFiscalMonthIndex < momentObj.clone().month() || getFiscalMonthIndex == 11) {
677
+ startDate = moment_1.default(startDate, currentDateFormat).clone().month(fiscalMonth).startOf('month').format(requiredDateFormat);
678
+ }
679
+ else {
680
+ startDate = moment_1.default(startDate, currentDateFormat).clone().month(fiscalMonth).subtract(12, "months").startOf('month').format(requiredDateFormat);
681
+ }
667
682
  }
668
- // if (fiscalFrom === "Start") {
669
- // if (getFiscalMonthIndex == 0 || getFiscalMonthIndex && getFiscalMonthIndex <= momentObj.clone().month()) {
670
- // startDate = moment(startDate, currentDateFormat).clone().month(fiscalMonth).startOf('month').format(requiredDateFormat);
671
- // } else {
672
- // startDate = moment(startDate, currentDateFormat).clone().month(fiscalMonth).subtract(12, "months").startOf('month').format(requiredDateFormat);
673
- // }
674
- // } else {
675
- // if (getFiscalMonthIndex == 0 || getFiscalMonthIndex && getFiscalMonthIndex < momentObj.clone().month() || getFiscalMonthIndex == 11) {
676
- // startDate = moment(startDate, currentDateFormat).clone().month(fiscalMonth).startOf('month').format(requiredDateFormat);
677
- // } else {
678
- // startDate = moment(startDate, currentDateFormat).clone().month(fiscalMonth).subtract(12, "months").startOf('month').format(requiredDateFormat);
679
- // }
680
- // }
681
683
  break;
682
684
  default:
683
685
  break;
@@ -110,7 +110,7 @@ function GetObjectByKeyValueFromList(list, key, val) {
110
110
  }
111
111
  exports.GetObjectByKeyValueFromList = GetObjectByKeyValueFromList;
112
112
  function IsEqualArrays(a, b) {
113
- if ((a === b) || (a == null && b == null) || (a == [] && b == []))
113
+ if ((a === b) || (a == null && b == null) || (Array.isArray(a) && a.length == 0 && Array.isArray(b) && b.length == 0))
114
114
  return true;
115
115
  if (a == null || b == null)
116
116
  return false;
@@ -1021,7 +1021,7 @@ function SyncFieldInSameCollection(objectName, objectIDs, db) {
1021
1021
  }
1022
1022
  db.collection(objectName).find(findObj).forEach(function (objectData) {
1023
1023
  return __awaiter(this, void 0, void 0, function () {
1024
- var updateObj, i, fieldSchema, lookupData, ex_1;
1024
+ var updateObj, i, fieldSchema, lookupData, searchValue, ex_1;
1025
1025
  return __generator(this, function (_a) {
1026
1026
  switch (_a.label) {
1027
1027
  case 0:
@@ -1042,6 +1042,10 @@ function SyncFieldInSameCollection(objectName, objectIDs, db) {
1042
1042
  if (lookupData !== undefined) {
1043
1043
  updateObj[fieldSchema.Name + constants_1.default.LookupAlias] = lookupData;
1044
1044
  }
1045
+ searchValue = objectData[fieldSchema.Name + constants_1.default.SearchValueAlias];
1046
+ if (searchValue !== undefined) {
1047
+ updateObj[fieldSchema.Name + constants_1.default.SearchValueAlias] = searchValue;
1048
+ }
1045
1049
  _a.label = 4;
1046
1050
  case 4:
1047
1051
  i++;
@@ -1097,7 +1101,7 @@ function SyncFieldInSameCollectionByObjectID(objectName, objectID, db) {
1097
1101
  if (fieldArr_2) {
1098
1102
  db.collection(objectName).findOne({ '_id': objectID }, function (err, objectData) {
1099
1103
  return __awaiter(this, void 0, void 0, function () {
1100
- var updateObj, i, fieldSchema, lookupData;
1104
+ var updateObj, i, fieldSchema, lookupData, searchValue;
1101
1105
  return __generator(this, function (_a) {
1102
1106
  switch (_a.label) {
1103
1107
  case 0:
@@ -1115,6 +1119,10 @@ function SyncFieldInSameCollectionByObjectID(objectName, objectID, db) {
1115
1119
  if (lookupData !== undefined) {
1116
1120
  updateObj[fieldSchema.Name + constants_1.default.LookupAlias] = lookupData;
1117
1121
  }
1122
+ searchValue = objectData[fieldSchema.Name + constants_1.default.SearchValueAlias];
1123
+ if (searchValue !== undefined) {
1124
+ updateObj[fieldSchema.Name + constants_1.default.SearchValueAlias] = searchValue;
1125
+ }
1118
1126
  _a.label = 3;
1119
1127
  case 3:
1120
1128
  i++;
@@ -1143,7 +1151,7 @@ function SyncFieldInSameCollectionByObjectIDWithPromise(objectName, objectID, db
1143
1151
  if (fieldArr_3) {
1144
1152
  db.collection(objectName).findOne({ '_id': objectID }, function (err, objectData) {
1145
1153
  return __awaiter(this, void 0, void 0, function () {
1146
- var updateObj, i, fieldSchema, lookupData;
1154
+ var updateObj, i, fieldSchema, lookupData, searchValue;
1147
1155
  return __generator(this, function (_a) {
1148
1156
  switch (_a.label) {
1149
1157
  case 0:
@@ -1161,6 +1169,10 @@ function SyncFieldInSameCollectionByObjectIDWithPromise(objectName, objectID, db
1161
1169
  if (lookupData !== undefined) {
1162
1170
  updateObj[fieldSchema.Name + constants_1.default.LookupAlias] = lookupData;
1163
1171
  }
1172
+ searchValue = objectData[fieldSchema.Name + constants_1.default.SearchValueAlias];
1173
+ if (searchValue !== undefined) {
1174
+ updateObj[fieldSchema.Name + constants_1.default.SearchValueAlias] = searchValue;
1175
+ }
1164
1176
  _a.label = 3;
1165
1177
  case 3:
1166
1178
  i++;
@@ -1462,7 +1474,7 @@ function BuildLookupDataField(fieldSchema, updateObj, db) {
1462
1474
  var fldName = fieldSchema.Name;
1463
1475
  var fldValue_1 = updateObj[fldName];
1464
1476
  var alias_1 = fldName + constants_1.default.LookupAlias;
1465
- var searchAlias = fldName + constants_1.default.SearchValueAlias;
1477
+ var searchAlias_1 = fldName + constants_1.default.SearchValueAlias;
1466
1478
  var fldLookupData_1 = null;
1467
1479
  if (fldValue_1) {
1468
1480
  var aggregateArry = [];
@@ -1505,17 +1517,20 @@ function BuildLookupDataField(fieldSchema, updateObj, db) {
1505
1517
  fldLookupData_1 = data[0];
1506
1518
  updateObj[alias_1] = fldLookupData_1;
1507
1519
  //** Below code is added by Shahzaib on 05/09/2022 to create SearchValue */
1508
- // let result = '';
1509
- // if (fieldSchema.LookupFields != undefined) {
1510
- // for (let j = 0; j < fieldSchema.LookupFields.length; j++) {
1511
- // if (fieldSchema.ExcludeLookupFieldsOnSearch && fieldSchema.ExcludeLookupFieldsOnSearch.filter((x: AnyObjectInterface) => x == fieldSchema.LookupFields[j]).length != 0) {
1512
- // continue;
1513
- // }
1514
- // if (fldLookupData[fieldSchema.LookupFields[j]] != undefined)
1515
- // result += fldLookupData[fieldSchema.LookupFields[j]].toString() + ' ';
1516
- // }
1517
- // }
1518
- // updateObj[searchAlias] = result?.trim();
1520
+ var result = '';
1521
+ if (fieldSchema.LookupFields != undefined) {
1522
+ var _loop_10 = function (j) {
1523
+ if (fieldSchema.ExcludeLookupFieldsOnSearch && fieldSchema.ExcludeLookupFieldsOnSearch.filter(function (x) { return x == fieldSchema.LookupFields[j]; }).length != 0) {
1524
+ return "continue";
1525
+ }
1526
+ if (fldLookupData_1[fieldSchema.LookupFields[j]] != undefined)
1527
+ result += fldLookupData_1[fieldSchema.LookupFields[j]].toString() + ' ';
1528
+ };
1529
+ for (var j = 0; j < fieldSchema.LookupFields.length; j++) {
1530
+ _loop_10(j);
1531
+ }
1532
+ }
1533
+ updateObj[searchAlias_1] = result === null || result === void 0 ? void 0 : result.trim();
1519
1534
  //** Ends here */
1520
1535
  }
1521
1536
  resolve();
@@ -1547,17 +1562,17 @@ function BuildLookupDataField(fieldSchema, updateObj, db) {
1547
1562
  fldLookupData_1 = data;
1548
1563
  updateObj[alias_1] = fldLookupData_1;
1549
1564
  //** Below code is added by Shahzaib on 05/09/2022 to create SearchValue */
1550
- // let result = '';
1551
- // for (let i = 0; i < data.length; i++) {
1552
- // let lookupRecord = data[i];
1553
- // if (fieldSchema.LookupFields != undefined) {
1554
- // for (let j = 0; j < fieldSchema.LookupFields.length; j++) {
1555
- // if (lookupRecord[fieldSchema.LookupFields[j]] != undefined)
1556
- // result += lookupRecord[fieldSchema.LookupFields[j]].toString() + ' ';
1557
- // }
1558
- // }
1559
- // }
1560
- // updateObj[searchAlias] = result?.trim();
1565
+ var result = '';
1566
+ for (var i = 0; i < data.length; i++) {
1567
+ var lookupRecord = data[i];
1568
+ if (fieldSchema.LookupFields != undefined) {
1569
+ for (var j = 0; j < fieldSchema.LookupFields.length; j++) {
1570
+ if (lookupRecord[fieldSchema.LookupFields[j]] != undefined)
1571
+ result += lookupRecord[fieldSchema.LookupFields[j]].toString() + ' ';
1572
+ }
1573
+ }
1574
+ }
1575
+ updateObj[searchAlias_1] = result === null || result === void 0 ? void 0 : result.trim();
1561
1576
  //** Ends here */
1562
1577
  }
1563
1578
  resolve();
@@ -1575,14 +1590,14 @@ function BuildLookupDataField(fieldSchema, updateObj, db) {
1575
1590
  fldLookupData_1 = data[0];
1576
1591
  updateObj[alias_1] = fldLookupData_1;
1577
1592
  //** Below code is added by Shahzaib on 05/09/2022 to create SearchValue */
1578
- // let result = '';
1579
- // if (fieldSchema.LookupFields != undefined) {
1580
- // for (let j = 0; j < fieldSchema.LookupFields.length; j++) {
1581
- // if (fldLookupData[fieldSchema.LookupFields[j]] != undefined)
1582
- // result += fldLookupData[fieldSchema.LookupFields[j]].toString() + ' ';
1583
- // }
1584
- // }
1585
- // updateObj[searchAlias] = result?.trim();
1593
+ var result = '';
1594
+ if (fieldSchema.LookupFields != undefined) {
1595
+ for (var j = 0; j < fieldSchema.LookupFields.length; j++) {
1596
+ if (fldLookupData_1[fieldSchema.LookupFields[j]] != undefined)
1597
+ result += fldLookupData_1[fieldSchema.LookupFields[j]].toString() + ' ';
1598
+ }
1599
+ }
1600
+ updateObj[searchAlias_1] = result === null || result === void 0 ? void 0 : result.trim();
1586
1601
  //** Ends here */
1587
1602
  }
1588
1603
  resolve();
@@ -1599,6 +1614,7 @@ function BuildLookupDataField(fieldSchema, updateObj, db) {
1599
1614
  aggregateArry.push({ $project: { _id: 0, Key: '$Data.Key', Value: '$Data.Value', IsActive: '$Data.IsActive' } });
1600
1615
  aggregateArry.push({ $match: { 'Key': fldValue_1 } });
1601
1616
  db.collection('ListSchema').aggregate(aggregateArry).toArray(function (err, data) {
1617
+ var _a;
1602
1618
  if (err) {
1603
1619
  errorHandler(fldValue_1, err);
1604
1620
  }
@@ -1606,7 +1622,7 @@ function BuildLookupDataField(fieldSchema, updateObj, db) {
1606
1622
  fldLookupData_1 = data[0];
1607
1623
  updateObj[alias_1] = fldLookupData_1;
1608
1624
  //** Below code is added by Shahzaib on 05/09/2022 to create SearchValue */
1609
- // updateObj[searchAlias] = fldLookupData.Value?.trim();
1625
+ updateObj[searchAlias_1] = (_a = fldLookupData_1.Value) === null || _a === void 0 ? void 0 : _a.trim();
1610
1626
  //** Ends here */
1611
1627
  }
1612
1628
  resolve();
@@ -1625,17 +1641,17 @@ function BuildLookupDataField(fieldSchema, updateObj, db) {
1625
1641
  fldLookupData_1 = data;
1626
1642
  updateObj[alias_1] = fldLookupData_1;
1627
1643
  //** Below code is added by Shahzaib on 05/09/2022 to create SearchValue */
1628
- // let result = '';
1629
- // for (let i = 0; i < data.length; i++) {
1630
- // let lookupRecord = data[i];
1631
- // if (fieldSchema.LookupFields != undefined) {
1632
- // for (let j = 0; j < fieldSchema.LookupFields.length; j++) {
1633
- // if (lookupRecord[fieldSchema.LookupFields[j]] != undefined)
1634
- // result += lookupRecord[fieldSchema.LookupFields[j]].toString() + ' ';
1635
- // }
1636
- // }
1637
- // }
1638
- // updateObj[searchAlias] = result?.trim();
1644
+ var result = '';
1645
+ for (var i = 0; i < data.length; i++) {
1646
+ var lookupRecord = data[i];
1647
+ if (fieldSchema.LookupFields != undefined) {
1648
+ for (var j = 0; j < fieldSchema.LookupFields.length; j++) {
1649
+ if (lookupRecord[fieldSchema.LookupFields[j]] != undefined)
1650
+ result += lookupRecord[fieldSchema.LookupFields[j]].toString() + ' ';
1651
+ }
1652
+ }
1653
+ }
1654
+ updateObj[searchAlias_1] = result === null || result === void 0 ? void 0 : result.trim();
1639
1655
  //** Ends here */
1640
1656
  }
1641
1657
  resolve();
@@ -1647,6 +1663,7 @@ function BuildLookupDataField(fieldSchema, updateObj, db) {
1647
1663
  aggregateArry.push({ $project: { _id: 0, Key: '$Data.Key', Value: '$Data.Value', IsActive: '$Data.IsActive' } });
1648
1664
  aggregateArry.push({ $match: { 'Key': { $in: fldValue_1 } } });
1649
1665
  db.collection('ListSchema').aggregate(aggregateArry).toArray(function (err, data) {
1666
+ var _a;
1650
1667
  if (err) {
1651
1668
  errorHandler(fldValue_1, err);
1652
1669
  }
@@ -1654,12 +1671,12 @@ function BuildLookupDataField(fieldSchema, updateObj, db) {
1654
1671
  fldLookupData_1 = data;
1655
1672
  updateObj[alias_1] = fldLookupData_1;
1656
1673
  //** Below code is added by Shahzaib on 05/09/2022 to create SearchValue */
1657
- // let result = '';
1658
- // for (let i = 0; i < data.length; i++) {
1659
- // let lookupRecord = data[i];
1660
- // result += lookupRecord.Value?.toString() + ' ';
1661
- // }
1662
- // updateObj[searchAlias] = result?.trim();
1674
+ var result = '';
1675
+ for (var i = 0; i < data.length; i++) {
1676
+ var lookupRecord = data[i];
1677
+ result += ((_a = lookupRecord.Value) === null || _a === void 0 ? void 0 : _a.toString()) + ' ';
1678
+ }
1679
+ updateObj[searchAlias_1] = result === null || result === void 0 ? void 0 : result.trim();
1663
1680
  //** Ends here */
1664
1681
  }
1665
1682
  resolve();
@@ -1695,9 +1712,9 @@ function BuildLookupDataField(fieldSchema, updateObj, db) {
1695
1712
  else {
1696
1713
  updateObj[alias_1] = fldLookupData_1;
1697
1714
  // Below if cond was added by Shahzaib on 05/09/2022
1698
- // if (['dropdown', 'lookup', 'multilookup', 'multiselect'].includes(fieldSchema.UIDataType)) {
1699
- // updateObj[searchAlias] = fldLookupData;
1700
- // }
1715
+ if (['dropdown', 'lookup', 'multilookup', 'multiselect'].includes(fieldSchema.UIDataType)) {
1716
+ updateObj[searchAlias_1] = fldLookupData_1;
1717
+ }
1701
1718
  resolve();
1702
1719
  }
1703
1720
  }
@@ -1710,11 +1727,11 @@ exports.BuildLookupDataField = BuildLookupDataField;
1710
1727
  //CheckDataBeforeAdd it sync object before add
1711
1728
  function CheckDataBeforeAdd(updateObj, objectSchema, db) {
1712
1729
  return __awaiter(this, void 0, void 0, function () {
1713
- var _loop_10, _i, _a, fldName;
1730
+ var _loop_11, _i, _a, fldName;
1714
1731
  return __generator(this, function (_b) {
1715
1732
  switch (_b.label) {
1716
1733
  case 0:
1717
- _loop_10 = function (fldName) {
1734
+ _loop_11 = function (fldName) {
1718
1735
  var fieldSchema, sequenceDocument, val, j, item, num;
1719
1736
  return __generator(this, function (_a) {
1720
1737
  switch (_a.label) {
@@ -1760,7 +1777,7 @@ function CheckDataBeforeAdd(updateObj, objectSchema, db) {
1760
1777
  case 1:
1761
1778
  if (!(_i < _a.length)) return [3 /*break*/, 4];
1762
1779
  fldName = _a[_i];
1763
- return [5 /*yield**/, _loop_10(fldName)];
1780
+ return [5 /*yield**/, _loop_11(fldName)];
1764
1781
  case 2:
1765
1782
  _b.sent();
1766
1783
  _b.label = 3;
@@ -1776,11 +1793,11 @@ exports.CheckDataBeforeAdd = CheckDataBeforeAdd;
1776
1793
  //CheckDataBeforeAdd it sync object before update
1777
1794
  function CheckDataBeforeUpdate(updateObj, objectData, objectSchema, db) {
1778
1795
  return __awaiter(this, void 0, void 0, function () {
1779
- var _loop_11, _i, _a, fldName;
1796
+ var _loop_12, _i, _a, fldName;
1780
1797
  return __generator(this, function (_b) {
1781
1798
  switch (_b.label) {
1782
1799
  case 0:
1783
- _loop_11 = function (fldName) {
1800
+ _loop_12 = function (fldName) {
1784
1801
  var fieldSchema, oldValue, newValue, isSame;
1785
1802
  return __generator(this, function (_a) {
1786
1803
  switch (_a.label) {
@@ -1823,7 +1840,7 @@ function CheckDataBeforeUpdate(updateObj, objectData, objectSchema, db) {
1823
1840
  case 1:
1824
1841
  if (!(_i < _a.length)) return [3 /*break*/, 4];
1825
1842
  fldName = _a[_i];
1826
- return [5 /*yield**/, _loop_11(fldName)];
1843
+ return [5 /*yield**/, _loop_12(fldName)];
1827
1844
  case 2:
1828
1845
  _b.sent();
1829
1846
  _b.label = 3;
@@ -1846,97 +1863,88 @@ function BuildGridFieldProjection(project, field, group) {
1846
1863
  var searchConcatArry = [];
1847
1864
  switch (field.Schema.UIDataType) {
1848
1865
  // below code was added by Shahzaib on 05/09/2022
1849
- // case "lookup":
1850
- // case "multilookup":
1851
- // case "dropdown":
1852
- // case "multiselect":
1853
- // alias = fldName + constants.LookupAlias;
1854
- // project[fldName] = 1;
1855
- // project[alias] = 1;
1856
- // project[searchAlias] = 1;
1857
- // break;
1858
- // Below code was commented by Shahzaib on 05/09/2022, searchAlias was added instead of it.
1859
1866
  case "lookup":
1860
- alias = fldName + constants_1.default.LookupAlias;
1861
- project[fldName] = 1;
1862
- project[alias] = 1;
1863
- var _loop_12 = function (i) {
1864
- if (field.Schema.ExcludeLookupFieldsOnSearch && field.Schema.ExcludeLookupFieldsOnSearch.filter(function (x) { return x == field.Schema.LookupFields[i]; }).length != 0) {
1865
- return "continue";
1866
- }
1867
- // searchConcatArry.push({ "$ifNull": ['$' + alias + '.' + field.Schema.LookupFields[i], ""] });
1868
- // added by Shahzaib, make int to string and concat
1869
- searchConcatArry.push({ "$ifNull": [{ $toString: '$' + alias + '.' + field.Schema.LookupFields[i] }, ""] });
1870
- if (i < field.Schema.LookupFields.length - 1) {
1871
- searchConcatArry.push(" ");
1872
- }
1873
- };
1874
- for (var i = 0; i < field.Schema.LookupFields.length; i++) {
1875
- _loop_12(i);
1876
- }
1877
- ;
1878
- project[fldName + '_SearchValue'] = { $concat: searchConcatArry };
1879
- break;
1880
1867
  case "multilookup":
1881
- alias = fldName + constants_1.default.LookupAlias;
1882
- project[fldName] = 1;
1883
- project[alias] = 1;
1884
- for (var i = 0; i < field.Schema.LookupFields.length; i++) {
1885
- searchConcatArry.push({ "$ifNull": ['$' + alias + '.' + field.Schema.LookupFields[i], [" "]] });
1886
- if (i < field.Schema.LookupFields.length - 1) {
1887
- searchConcatArry.push([" "]);
1888
- }
1889
- }
1890
- ;
1891
- //project[fldName + '_SearchValue'] = { $concatArrays: searchConcatArry };
1892
- project[fldName + '_SearchValue'] = {
1893
- $reduce: {
1894
- input: { $concatArrays: searchConcatArry },
1895
- initialValue: "",
1896
- //in: { $concat: ["$$value", "$$this"] } // Commented by and below line was added by Shahzaib, make int to string
1897
- in: { $concat: ["$$value", { $toString: "$$this" }] }
1898
- }
1899
- };
1900
- break;
1901
1868
  case "dropdown":
1902
- alias = fldName + constants_1.default.LookupAlias;
1903
- project[fldName] = 1;
1904
- project[alias] = 1;
1905
- if (field.Schema.LookupObject) {
1906
- for (var i = 0; i < field.Schema.LookupFields.length; i++) {
1907
- //searchConcatArry.push({ "$ifNull": ['$' + alias + '.' + field.Schema.LookupFields[i], ""] });
1908
- // added by Mohan, make int to string and concat
1909
- searchConcatArry.push({ "$ifNull": [{ $toString: '$' + alias + '.' + field.Schema.LookupFields[i] }, ""] });
1910
- if (i < field.Schema.LookupFields.length - 1) {
1911
- searchConcatArry.push(" ");
1912
- }
1913
- }
1914
- ;
1915
- project[fldName + '_SearchValue'] = { $concat: searchConcatArry };
1916
- }
1917
- else {
1918
- project[fldName + '_SearchValue'] = '$' + alias + '.Value';
1919
- }
1920
- break;
1921
1869
  case "multiselect":
1922
1870
  alias = fldName + constants_1.default.LookupAlias;
1923
1871
  project[fldName] = 1;
1924
1872
  project[alias] = 1;
1925
- if (field.Schema.LookupObject) {
1926
- for (var i = 0; i < field.Schema.LookupFields.length; i++) {
1927
- searchConcatArry.push({ "$ifNull": ['$' + alias + '.' + field.Schema.LookupFields[i], [" "]] });
1928
- if (i < field.Schema.LookupFields.length - 1) {
1929
- searchConcatArry.push([" "]);
1930
- }
1931
- }
1932
- ;
1933
- project[fldName + '_SearchValue'] = { $concatArrays: searchConcatArry };
1934
- }
1935
- else {
1936
- searchConcatArry.push('$' + alias + '.Value');
1937
- project[fldName + '_SearchValue'] = { $concatArrays: searchConcatArry };
1938
- }
1873
+ project[searchAlias] = 1;
1939
1874
  break;
1875
+ // Below code was commented by Shahzaib on 05/09/2022, searchAlias was added instead of it.
1876
+ // case "lookup":
1877
+ // alias = fldName + constants.LookupAlias;
1878
+ // project[fldName] = 1;
1879
+ // project[alias] = 1;
1880
+ // for (let i = 0; i < field.Schema.LookupFields.length; i++) {
1881
+ // if (field.Schema.ExcludeLookupFieldsOnSearch && field.Schema.ExcludeLookupFieldsOnSearch.filter((x: AnyObjectInterface) => x == field.Schema.LookupFields[i]).length != 0) {
1882
+ // continue;
1883
+ // }
1884
+ // // searchConcatArry.push({ "$ifNull": ['$' + alias + '.' + field.Schema.LookupFields[i], ""] });
1885
+ // // added by Shahzaib, make int to string and concat
1886
+ // searchConcatArry.push({ "$ifNull": [{$toString : '$' + alias + '.' + field.Schema.LookupFields[i]}, ""] });
1887
+ // if (i < field.Schema.LookupFields.length - 1) {
1888
+ // searchConcatArry.push(" ");
1889
+ // }
1890
+ // };
1891
+ // project[fldName + '_SearchValue'] = { $concat: searchConcatArry };
1892
+ // break;
1893
+ // case "multilookup":
1894
+ // alias = fldName + constants.LookupAlias;
1895
+ // project[fldName] = 1;
1896
+ // project[alias] = 1;
1897
+ // for (let i = 0; i < field.Schema.LookupFields.length; i++) {
1898
+ // searchConcatArry.push({ "$ifNull": ['$' + alias + '.' + field.Schema.LookupFields[i], [" "]] });
1899
+ // if (i < field.Schema.LookupFields.length - 1) {
1900
+ // searchConcatArry.push([" "]);
1901
+ // }
1902
+ // };
1903
+ // //project[fldName + '_SearchValue'] = { $concatArrays: searchConcatArry };
1904
+ // project[fldName + '_SearchValue'] = {
1905
+ // $reduce: {
1906
+ // input: { $concatArrays: searchConcatArry },
1907
+ // initialValue: "",
1908
+ // //in: { $concat: ["$$value", "$$this"] } // Commented by and below line was added by Shahzaib, make int to string
1909
+ // in: { $concat: ["$$value", { $toString : "$$this" }] }
1910
+ // }
1911
+ // };
1912
+ // break;
1913
+ // case "dropdown":
1914
+ // alias = fldName + constants.LookupAlias;
1915
+ // project[fldName] = 1;
1916
+ // project[alias] = 1;
1917
+ // if (field.Schema.LookupObject) {
1918
+ // for (let i = 0; i < field.Schema.LookupFields.length; i++) {
1919
+ // //searchConcatArry.push({ "$ifNull": ['$' + alias + '.' + field.Schema.LookupFields[i], ""] });
1920
+ // // added by Mohan, make int to string and concat
1921
+ // searchConcatArry.push({ "$ifNull": [{$toString : '$' + alias + '.' + field.Schema.LookupFields[i]}, ""] });
1922
+ // if (i < field.Schema.LookupFields.length - 1) {
1923
+ // searchConcatArry.push(" ");
1924
+ // }
1925
+ // };
1926
+ // project[fldName + '_SearchValue'] = { $concat: searchConcatArry };
1927
+ // } else {
1928
+ // project[fldName + '_SearchValue'] = '$' + alias + '.Value';
1929
+ // }
1930
+ // break;
1931
+ // case "multiselect":
1932
+ // alias = fldName + constants.LookupAlias;
1933
+ // project[fldName] = 1;
1934
+ // project[alias] = 1;
1935
+ // if (field.Schema.LookupObject) {
1936
+ // for (let i = 0; i < field.Schema.LookupFields.length; i++) {
1937
+ // searchConcatArry.push({ "$ifNull": ['$' + alias + '.' + field.Schema.LookupFields[i], [" "] ] });
1938
+ // if (i < field.Schema.LookupFields.length - 1) {
1939
+ // searchConcatArry.push([" "]);
1940
+ // }
1941
+ // };
1942
+ // project[fldName + '_SearchValue'] = { $concatArrays: searchConcatArry };
1943
+ // } else {
1944
+ // searchConcatArry.push('$' + alias + '.Value');
1945
+ // project[fldName + '_SearchValue'] = { $concatArrays: searchConcatArry };
1946
+ // }
1947
+ // break;
1940
1948
  case "file":
1941
1949
  case "image":
1942
1950
  alias = fldName + constants_1.default.LookupAlias;
@@ -3440,7 +3448,7 @@ function SyncListSchemaFieldInOtherCollection(syncFields, db, msp_d) {
3440
3448
  return __generator(this, function (_g) {
3441
3449
  switch (_g.label) {
3442
3450
  case 0:
3443
- if (!(data.length > 0)) return [3 /*break*/, 9];
3451
+ if (!(data.length > 0)) return [3 /*break*/, 11];
3444
3452
  modifiedObj = {
3445
3453
  ModifiedBy: new mongodb_1.ObjectId(msp_d.ui),
3446
3454
  ModifiedDate: new Date()
@@ -3448,7 +3456,7 @@ function SyncListSchemaFieldInOtherCollection(syncFields, db, msp_d) {
3448
3456
  _i = 0, data_1 = data;
3449
3457
  _g.label = 1;
3450
3458
  case 1:
3451
- if (!(_i < data_1.length)) return [3 /*break*/, 5];
3459
+ if (!(_i < data_1.length)) return [3 /*break*/, 7];
3452
3460
  obj = data_1[_i];
3453
3461
  query = {
3454
3462
  ObjectName: obj.Name
@@ -3460,44 +3468,46 @@ function SyncListSchemaFieldInOtherCollection(syncFields, db, msp_d) {
3460
3468
  return [4 /*yield*/, BuildLookupDataField(fieldSchema, modifiedObj, db)];
3461
3469
  case 3:
3462
3470
  _g.sent();
3463
- if (obj.Fields.ListSchemaName == syncFields.ListSchemaName || (obj.Fields.IsMultipleListSchemaName && obj.Fields.ListSchemaName.includes(syncFields.ListSchemaName))) {
3464
- alias = obj.Fields.Name + constants_1.default.LookupAlias;
3465
- query.match = (_a = {},
3466
- _a[obj.Fields.Name] = syncFields.ListKey,
3467
- _a);
3468
- if (obj.Fields.UIDataType == 'multiselect') {
3469
- if (syncFields.IsDeleteValue)
3470
- query.set = (_b = {}, _b[obj.Fields.Name + constants_1.default.LookupAlias + '.$[e].IsActive'] = false, _b);
3471
- else
3472
- query.set = (_c = {}, _c[obj.Fields.Name + constants_1.default.LookupAlias + '.$[e].Value'] = syncFields.Value, _c);
3473
- query.arrayFilters = (_d = {},
3474
- _d['e.Key'] = syncFields.ListKey,
3475
- _d);
3476
- }
3477
- else {
3478
- if (syncFields.IsDeleteValue)
3479
- query.set = (_e = {}, _e[alias + '.IsActive'] = false, _e);
3480
- else
3481
- query.set = (_f = {}, _f[alias + '.Value'] = syncFields.Value, _f);
3482
- }
3483
- query.set = __assign(__assign({}, query.set), modifiedObj);
3484
- // Below code was added by Shahzaib on 05/09/2022
3485
- // if (!syncFields.IsDeleteValue)
3486
- // await BuildSearchValueQuery(syncFields, obj, query, db);
3471
+ if (!(obj.Fields.ListSchemaName == syncFields.ListSchemaName || (obj.Fields.IsMultipleListSchemaName && obj.Fields.ListSchemaName.includes(syncFields.ListSchemaName)))) return [3 /*break*/, 5];
3472
+ alias = obj.Fields.Name + constants_1.default.LookupAlias;
3473
+ query.match = (_a = {},
3474
+ _a[obj.Fields.Name] = syncFields.ListKey,
3475
+ _a);
3476
+ if (obj.Fields.UIDataType == 'multiselect') {
3477
+ if (syncFields.IsDeleteValue)
3478
+ query.set = (_b = {}, _b[obj.Fields.Name + constants_1.default.LookupAlias + '.$[e].IsActive'] = false, _b);
3479
+ else
3480
+ query.set = (_c = {}, _c[obj.Fields.Name + constants_1.default.LookupAlias + '.$[e].Value'] = syncFields.Value, _c);
3481
+ query.arrayFilters = (_d = {},
3482
+ _d['e.Key'] = syncFields.ListKey,
3483
+ _d);
3487
3484
  }
3485
+ else {
3486
+ if (syncFields.IsDeleteValue)
3487
+ query.set = (_e = {}, _e[alias + '.IsActive'] = false, _e);
3488
+ else
3489
+ query.set = (_f = {}, _f[alias + '.Value'] = syncFields.Value, _f);
3490
+ }
3491
+ query.set = __assign(__assign({}, query.set), modifiedObj);
3492
+ if (!!syncFields.IsDeleteValue) return [3 /*break*/, 5];
3493
+ return [4 /*yield*/, BuildSearchValueQuery(syncFields, obj, query, db)];
3494
+ case 4:
3495
+ _g.sent();
3496
+ _g.label = 5;
3497
+ case 5:
3488
3498
  if (query.set && query.match) {
3489
3499
  querys.push(query);
3490
3500
  }
3491
- _g.label = 4;
3492
- case 4:
3501
+ _g.label = 6;
3502
+ case 6:
3493
3503
  _i++;
3494
3504
  return [3 /*break*/, 1];
3495
- case 5:
3496
- if (!(querys.length > 0)) return [3 /*break*/, 9];
3505
+ case 7:
3506
+ if (!(querys.length > 0)) return [3 /*break*/, 11];
3497
3507
  i = 0;
3498
- _g.label = 6;
3499
- case 6:
3500
- if (!(i < querys.length)) return [3 /*break*/, 9];
3508
+ _g.label = 8;
3509
+ case 8:
3510
+ if (!(i < querys.length)) return [3 /*break*/, 11];
3501
3511
  query = querys[i];
3502
3512
  bulkOps = [];
3503
3513
  if (query.arrayFilters !== undefined) {
@@ -3512,13 +3522,13 @@ function SyncListSchemaFieldInOtherCollection(syncFields, db, msp_d) {
3512
3522
  bulkOps.push.apply(bulkOps, query.setSearchValue);
3513
3523
  }
3514
3524
  return [4 /*yield*/, db.collection(query.ObjectName).bulkWrite(bulkOps)];
3515
- case 7:
3525
+ case 9:
3516
3526
  _g.sent();
3517
- _g.label = 8;
3518
- case 8:
3527
+ _g.label = 10;
3528
+ case 10:
3519
3529
  i++;
3520
- return [3 /*break*/, 6];
3521
- case 9:
3530
+ return [3 /*break*/, 8];
3531
+ case 11:
3522
3532
  resolve();
3523
3533
  return [2 /*return*/];
3524
3534
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@optimiser/common",
3
- "version": "1.0.305",
3
+ "version": "1.0.307",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {